Run dotnet watch, fix compile errors, and verify features in browser. Use when asked to "watch", "run and test", or "build and verify".
This skill runs dotnet watch to continuously build and run the MotoRent server, monitors for compile errors, fixes them, and uses Copilot in Chrome to verify features work correctly.
Trigger on requests like:
dotnet watch --project ./src/MotoRent.Server/MotoRent.Server.csproj
Run this in the background using run_in_background: true so you can continue working while it runs.
Check the background task output periodically:
TaskOutput tool with block: false to check current statuserror CS, Build FAILED, or exception messagesWhen errors are found:
Common error patterns:
error CS0103: The name 'X' does not exist - missing using or variableerror CS1061: 'X' does not contain a definition for 'Y' - wrong property/method nameerror CS0246: The type or namespace name 'X' could not be found - missing referenceOnce build succeeds:
tabs_context_mcptabs_create_mcpMOTO_BaseUrlread_page, find, and computer tools to interact with the appIf browser verification fails:
User: watch and verify the motorbike list page works
Copilot: Starting dotnet watch in background...
[Runs: dotnet watch --project ./src/MotoRent.Server/MotoRent.Server.csproj]
Checking build status...
Build succeeded! Server running on https://localhost:5001
Opening browser to verify...
[Opens Chrome, navigates to https://localhost:5001/motorbikes]
Checking the motorbike list page...
- Page loads correctly
- Table displays 5 motorbikes
- Status badges show correctly
- Edit button is clickable
Feature verified successfully!
Build output shows:
error CS1061: 'Motorbike' does not contain a definition for 'Plates'
Copilot: Found compile error. The property should be 'LicensePlate' not 'Plates'.
[Reads file, fixes the property name]
Waiting for rebuild...
Build succeeded! Verifying in browser...
When verifying a page, check:
When done or when user asks to stop:
KillShell tool with the background task IDWhen user asks to impersonate a user, or when testing features that require a specific role/tenant:
/super-admin/impersonateUser: watch and test the rental page as a shop manager
Copilot: Starting dotnet watch...
Build succeeded!
Navigating to /super-admin/impersonate...
Selecting user "John" with role "ShopManager" in tenant "Phuket Bikes"...
Impersonation successful!
Now navigating to /rentals to verify the page...