Gå til innholdet

Rutekart

Appskallet (ControlCenterLayout) omslutter hver rute inne i et arbeidsområde via en ShellRoute. Hvert mål inne i skallet har prefiks for arbeidsområdet — /workspaces/:workspaceId/… — og arbeidsområde-id-en i URL-en er den eneste kilden til sannhet for det aktive arbeidsområdet. Bare flatene før konteksten er etablert mangler prefiks: /splash, /onboarding, /signed-out og den bare /workspaces-velgeren, alle i fullskjerm og utenfor skallet.

Porten er oppfylt når minst én forge er tilkoblet for den påloggede brukeren, og minst ett arbeidsområde finnes.

Manglende påloggingsinformasjon og et manglende oppsett er forskjellige skjermer, og skillet går ved users.onboarding_finished_at lest fra kalleren sin egen identity.me — aldri «arbeidsområder finnes», som er feil i det øyeblikket noen blir invitert inn i et arbeidsområde de aldri har opprettet. Når ingen forge er tilkoblet, går en konto som har fullført onboarding, til /signed-out for å autentisere seg på nytt; en konto som ikke har det, går til /onboarding. Så lenge flagget fortsatt er ukjent, holder vakten splash-skjermen i stedet for å gjette, fordi den aldri omdirigerer tilbake ut av onboarding.

Sti Skjerm
/splash Oppstartssplash som avgjør onboarding-porten
/onboarding Koble til en forge, opprett eller bli med i et arbeidsområde, sandkasse, standardadapter og til slutt tale. Arbeidsområde-steget hoppes over når kontoen allerede tilhører ett
/signed-out Autentiser på nytt: det samme kortet for forge-tilkoblinger som Innstillinger viser, uten steglinje og uten fortsett-knapp — ruteren forlater skjermen av seg selv så snart en forge melder seg
/workspaces Arbeidsområdeliste og velger
/workspaces/:workspaceId Omdirigerer til /workspaces/:workspaceId/inbox

Stiene nedenfor utelater prefikset /workspaces/:workspaceId.

Sti Spørringsparametere Skjerm
/inbox — Samlet innboks: PR-er klassifisert etter gjennomgangslivssyklus, pluss arbeid som ikke er PR-er, og som blokkerer operatøren. Landingsruten etter vakten; en bar /workspaces/:workspaceId omdirigerer hit
/spaces — Områdeflate uten valgt område
/spaces/:spaceId ?m=<messageId>, ?tab=<key> Ett område; m dypelenker til en melding og forbrukes én gang ved åpning
/tickets — Sakstavle
/tickets/:ticketId — Sak i mester–detalj-visning
/projects/:projectId — Prosjektoversikt
/pull-requests ?repo=<owner/name> PR-liste; repo velger det repositoriet i venstre kolonne
/pull-requests/compose ?space=<spaceId> Skriv en ny pull request; space angir området hvis isolerte worktree leverer grenen
/pull-requests/:owner/:repo/:prNumber ?tab=<key>, ?comment=<id> PR-detaljer med diff-visning; comment er den numeriske REST-id-en til én kommentar
/pipelines — Liste over pipeline-kjøringer
/pipelines/run ?templateId=<id> Oppstarter for manuell kjøring
/pipelines/:runId — Detaljer for pipeline-kjøring (tidslinje for steg)
/plans — Plan Studio-samlingsside: aktive planer, plandokumenter, playbooks
/plans/:kind/:id — Plan Studio for én plan; kind er orchestration eller document
/meetings — Møteliste
/meetings/record — Skjerm for opptak av møte i sanntid
/meetings/:meetingId — Møtedetaljer: notater, transkript, tiltak, beslutninger
/calendar — Kalender: måneds-, ukes- og agendavisning
/calendar/:eventId — Kalenderhendelse i detalj (søsterrute; deler sidenøkkelen for kalender)
/newsfeed — Nyhetsstrømsliste
/newsfeed/article/:articleId — Artikkelleser
/observability — Observabilitet-samlingsside: fanene Bruk, Innsikt, Live og Kvalitet over kjøreloggstrømmen for arbeidsområdet. Standard er fanen Bruk
/users/:login — GitHub-brukerprofil
/teams/:organization/:slug — Profil for GitHub-organisasjonsteam
/api-keys — Administrasjon av API-nøkler. Ingen inngangspunkt i navigasjonen — bare tilgjengelig via URL
/settings/… — Innstillingsskjermer (nedenfor)

Samtaler og tråder har ingen egen rute — en tråd er en samtale inne i /spaces/:spaceId, åpnet som en editorfane i stedet for å adresseres med URL.

Det finnes ingen /dashboard-rute og ingen dashboardskjerm. Analyseflaten er /observability, som nås fra sidefeltets bunntekst.

Det finnes ingen «Planer»-oppføring i sidefeltet. Plan Studio åpnes som en editorfane fra planens rad i samtalen som produserte den; /plans og /plans/:kind/:id er dypelenker.

/observability og /pull-requests/compose har ingen oppføring i registrene for rutetitler eller brødsmulesti, så begge viser det bare appnavnet i vinduets tittel og ingen brødsmulesti.

/settings omdirigerer til /settings/you/appearance. Innstillingsknappen i sidefeltet og Cmd/Ctrl + , går begge til /settings/you/appearance.

Innstillingsstiene er inndelt i navnerom etter omfang — you/, workspace/, server/ — fordi segmentet sier hvem en endring påvirker. To stier er eldre enn navneromsinndelingen og har ikke omfang i URL-en: /settings/memory og /settings/pipelines.

Sti Skjerm
/settings/you/appearance Tema, språk, typografi, editortema (innstillingenes landingsside)
/settings/you/notifications Varsler per hendelse, stille timer
/settings/you/keybindings Referanse for tastatursnarveier (skrivebeskyttet)
/settings/you/audio Mikrofon, diktering, møtedeteksjon og lydlandskapsutdata
/settings/you/devices Parede telefoner og fjernkontroll
/settings/you/newsfeed Håndtering av strømmen: kilder, oppdatering, lesestatus
Sti Skjerm
/settings/workspace/profile Profil og identitet i dette arbeidsområdet: navn, git-forfatter, kodehosting, kalender
/settings/workspace/general Navn, logo, hemmelige glob-mønstre, samtidige gjennomganger, grennavngiving, synkroniseringshelse, chatbroer, faresone
/settings/workspace/meetings Møtenotatmaler og lagrede stemmeprofiler
/settings/workspace/members Medlemsliste, invitasjoner, revisjonslogg. Revisjonsloggen pagineres med valgfri ?cursor=
/settings/workspace/repositories Repoer registrert i dette arbeidsområdet
/settings/workspace/agents Registrerte agentidentiteter
/settings/workspace/skills Konfigurasjon av skills
/settings/memory Arbeidsområdets minne: fakta, policyer, kunnskapsgraf
/settings/workspace/permissions Agenttillatelser: regelmatrise og «Hva om?»-probe
/settings/pipelines Pipeline-maler
/settings/pipelines/:templateId Editor for pipeline-maler (lerret med dra og slipp)
Sti Skjerm
/settings/server/connection Tilkobling og status
/settings/server/sso Enkel pålogging (SAML, OIDC, SCIM-provisjonering)
/settings/server/providers Modellleverandører og adaptere
/settings/server/mcp Innebygde og eksterne MCP-servere
/settings/server/voice Stemme- og møtemodeller (ASR, diarisering)
/settings/server/rigs Stasjoner: hva denne verten kan starte, grunnavbilder, egendefinerte avbildninger, kjørende maskiner
/settings/server/sandbox Sandkasse-tillatelser: programmer agenter kan kjøre fra sin egen arbeidskopi av repoene dine
/settings/server/diagnostics Diagnostikk og personvern: sandkassing, embedding, logging, krasjrapportering
/settings/server/backup Sikkerhetskopi og gjenoppretting: installasjonssnapshots, eksport per arbeidsområde, import og sletting
/settings/server/about Om og oppdateringer

kSettingsNav i lib/features/settings/settings_nav.dart er den eneste kilden til sannhet for denne listen. settings_nav_test.dart fester unike id-er, unike ruter, flat J/K-rekkefølge og de tre omfangene. Den går ikke gjennom alle registrerte GoRoute.

Ansvar Fil
Ruter lib/router/app_router.dart
Rutebyggere lib/router/routes.dart
Autentiseringsvakter lib/router/guards.dart
Onboarding-port lib/features/auth/providers/onboarding_providers.dart
Innstillingsnavigasjon lib/features/settings/settings_nav.dart