Route map
App shell
Section titled “App shell”The app shell (ControlCenterLayout) wraps every route via a ShellRoute. Every in-shell destination is workspace-prefixed — /workspaces/:workspaceId/… — and the workspace id in the URL is the single source of truth for the active workspace. Only the pre-context surfaces have no prefix: /splash, /onboarding, and the bare /workspaces picker (all full-screen).
The auth guard redirects to /onboarding until GitHub auth (PAT or gh CLI) and at least one workspace exist.
Routes
Section titled “Routes”Paths below omit the /workspaces/:workspaceId prefix for brevity.
| Path | Screen |
|---|---|
/splash |
Startup splash that resolves the onboarding gate (no prefix) |
/onboarding |
API keys + first workspace setup, full-screen (no prefix) |
/workspaces |
Workspace list / picker (no prefix) |
/dashboard |
Global dashboard with system metrics (the workspace root redirects here) |
/pull-requests |
PR list |
/pull-requests/compose |
Compose a new pull request |
/pull-requests/:owner/:repo/:number |
PR detail with diff viewer |
/channels |
Channels: agent chat across channels |
/channels/:channelId |
A specific channel (deep-linkable to a message via ?m=) |
/tickets |
Ticket board |
/tickets/:ticketId |
Ticket master-detail |
/projects/:projectId |
Project overview |
/observability |
Observability hub: live Agent Hub + cost/usage/quota/behavior analytics |
/analytics |
Analytics overview |
/analytics/agents/:agentId |
Agent analytics detail |
/meetings |
Meetings list with stats |
/meetings/record |
Live meeting recording HUD |
/meetings/:meetingId |
Meeting detail: notes, transcript, action items, decisions |
/calendar |
Calendar: month / week / agenda views |
/calendar/:eventId |
Calendar event detail (master-detail) |
/newsfeed |
Newsfeed list |
/newsfeed/settings |
Feed management |
/newsfeed/article/:articleId |
Article webview |
/pipelines |
Pipeline run list |
/pipelines/run |
Pipeline run launcher |
/pipelines/:runId |
Pipeline run detail |
/memory |
Workspace knowledge memory |
/users/:login |
GitHub user profile |
/api-keys |
API key management |
/settings/* |
Settings screens (see below) |
Settings sub-routes
Section titled “Settings sub-routes”| Path | Screen |
|---|---|
/settings/appearance |
Theme, font, density (the settings landing) |
/settings/notifications |
Notification preferences |
/settings/integrations |
GitHub, ticketing, MCP server |
/settings/advanced |
Advanced configuration (voice, semantic search, branch template, privacy, logging) |
/settings/devices |
Paired remote-control phones |
/settings/adapters |
Adapter detection and registration |
/settings/agents |
Agent defaults / registry |
/settings/repositories |
Global repo management |
/settings/skills |
Skill configuration |
/settings/keybindings |
Keyboard shortcut customization |
/settings/sandboxing |
Sandbox backend and policies |
/settings/pipelines |
Pipeline templates |
/settings/pipelines/:templateId |
Pipeline template editor (drag-and-drop canvas) |
/settings/teams |
Team management |
Route configuration
Section titled “Route configuration”- Router:
go_routerconfigured inlib/router/app_router.dart - Route constants:
lib/router/routes.dart - Auth guards:
lib/router/guards.dart - Onboarding gate:
lib/features/auth/providers/onboarding_providers.dart