Μετάβαση στο περιεχόμενο

Χάρτης διαδρομών

Το κέλυφος της εφαρμογής (ControlCenterLayout) περιβάλλει κάθε διαδρομή εντός χώρου εργασίας μέσω ενός ShellRoute. Κάθε προορισμός εντός του κελύφους φέρει πρόθεμα χώρου εργασίας — /workspaces/:workspaceId/… — και το αναγνωριστικό χώρου εργασίας στο URL είναι η μοναδική πηγή αλήθειας για τον ενεργό χώρο εργασίας. Μόνο οι επιφάνειες πριν από το πλαίσιο δεν έχουν πρόθεμα: το /splash, το /onboarding, το /signed-out και ο σκέτος επιλογέας /workspaces, όλα σε πλήρη οθόνη και έξω από το κέλυφος.

Η πύλη είναι πλήρης όταν τουλάχιστον ένα forge είναι συνδεδεμένο για τον συνδεδεμένο χρήστη και υπάρχει τουλάχιστον ένας χώρος εργασίας.

Ένα διαπιστευτήριο που λείπει και μια ρύθμιση που λείπει είναι διαφορετικές οθόνες, και ο διακριτής είναι το users.onboarding_finished_at που διαβάζεται από το δικό του identity.me του καλούντος — ποτέ το «υπάρχουν χώροι εργασίας», που είναι λάθος τη στιγμή που κάποιος προσκαλείται σε έναν χώρο εργασίας που δεν δημιούργησε ποτέ. Χωρίς συνδεδεμένο forge, ένας λογαριασμός που έχει περάσει την εισαγωγή πηγαίνει στο /signed-out για εκ νέου ταυτοποίηση· ένας που δεν έχει περάσει πηγαίνει στο /onboarding. Όσο η σημαία είναι ακόμη άγνωστη, ο φύλακας κρατά την αρχική οθόνη αντί να μαντέψει, επειδή δεν ανακατευθύνει ποτέ πίσω έξω από την εισαγωγή.

Διαδρομή Οθόνη
/splash Αρχική οθόνη εκκίνησης που επιλύει την πύλη εισαγωγής
/onboarding Σύνδεση forge, δημιουργία ή ένταξη σε χώρο εργασίας, sandbox, προεπιλεγμένος προσαρμογέας και μετά φωνή. Το βήμα του χώρου εργασίας παραλείπεται όταν ο λογαριασμός ανήκει ήδη σε έναν
/signed-out Εκ νέου ταυτοποίηση: η ίδια κάρτα συνδέσεων forge που αποδίδουν οι Ρυθμίσεις, χωρίς γραμμή βημάτων και χωρίς κουμπί συνέχειας — ο δρομολογητής φεύγει μόνος του μόλις αναφερθεί ένα forge
/workspaces Λίστα και επιλογέας χώρων εργασίας
/workspaces/:workspaceId Ανακατευθύνει στο /workspaces/:workspaceId/inbox

Οι παρακάτω διαδρομές παραλείπουν το πρόθεμα /workspaces/:workspaceId.

Διαδρομή Παράμετροι query Οθόνη
/inbox — Ενοποιημένα εισερχόμενα: PR ταξινομημένα κατά κύκλο ζωής ανασκόπησης, συν εργασία εκτός PR που μπλοκάρει τον χειριστή. Η διαδρομή προσγείωσης μετά τον φύλακα· ένα σκέτο /workspaces/:workspaceId ανακατευθύνεται εδώ
/spaces — Επιφάνεια χώρου, χωρίς επιλεγμένο χώρο
/spaces/:spaceId ?m=<messageId>, ?tab=<key> Ένας χώρος· το m κάνει απευθείας σύνδεσμο προς ένα μήνυμα και καταναλώνεται μία φορά στο άνοιγμα
/tickets — Πίνακας εισιτηρίων
/tickets/:ticketId — Κύρια προβολή και λεπτομέρειες εισιτηρίου
/projects/:projectId — Επισκόπηση έργου
/pull-requests ?repo=<owner/name> Λίστα PR· το repo επιλέγει αυτό το αποθετήριο στην αριστερή λωρίδα
/pull-requests/compose ?space=<spaceId> Σύνταξη νέου pull request· το space ονομάζει τον χώρο του οποίου το απομονωμένο worktree παρέχει τον κλάδο
/pull-requests/:owner/:repo/:prNumber ?tab=<key>, ?comment=<id> Λεπτομέρειες PR με προβολή diff· το comment είναι το αριθμητικό αναγνωριστικό REST ενός σχολίου
/pipelines — Λίστα εκτελέσεων pipeline
/pipelines/run ?templateId=<id> Εκκινητής χειροκίνητης εκτέλεσης
/pipelines/:runId — Λεπτομέρειες εκτέλεσης pipeline (χρονογραμμή βημάτων)
/plans — Κέντρο του Plan Studio: ενεργά σχέδια, έγγραφα σχεδίων, playbooks
/plans/:kind/:id — Plan Studio για ένα σχέδιο· το kind είναι orchestration ή document
/meetings — Λίστα συσκέψεων
/meetings/record — Οθόνη ζωντανής καταγραφής σύσκεψης
/meetings/:meetingId — Λεπτομέρειες σύσκεψης: σημειώσεις, μεταγραφή, στοιχεία ενέργειας, αποφάσεις
/calendar — Ημερολόγιο: προβολές μήνα, εβδομάδας και ατζέντας
/calendar/:eventId — Λεπτομέρειες συμβάντος ημερολογίου (παράλληλη διαδρομή· μοιράζεται το κλειδί σελίδας του ημερολογίου)
/newsfeed — Λίστα ροής ειδήσεων
/newsfeed/article/:articleId — Αναγνώστης άρθρων
/observability — Κέντρο παρατηρησιμότητας: καρτέλες Χρήση, Στοιχεία, Ζωντανά και Ποιότητα πάνω από τη ροή αρχείου καταγραφής εκτελέσεων του χώρου εργασίας. Προεπιλέγεται η καρτέλα Χρήση
/users/:login — Προφίλ χρήστη GitHub
/teams/:organization/:slug — Προφίλ ομάδας οργανισμού GitHub
/api-keys — Διαχείριση κλειδιών API. Κανένα σημείο εισόδου στην πλοήγηση — προσβάσιμο μόνο μέσω URL
/settings/… — Οθόνες ρυθμίσεων (παρακάτω)

Οι συνομιλίες και τα νήματα δεν έχουν δική τους διαδρομή — ένα νήμα είναι μια συνομιλία μέσα στο /spaces/:spaceId, που ανοίγει ως καρτέλα επεξεργαστή αντί να διευθυνσιοδοτείται μέσω URL.

Δεν υπάρχει διαδρομή /dashboard και καμία οθόνη πίνακα ελέγχου. Η επιφάνεια αναλυτικών στοιχείων είναι το /observability, προσβάσιμο από το υποσέλιδο της πλαϊνής στήλης.

Δεν υπάρχει στοιχείο «Σχέδια» στην πλαϊνή στήλη. Το Plan Studio ανοίγει ως καρτέλα επεξεργαστή από τη γραμμή του σχεδίου στη συνομιλία που το παρήγαγε· τα /plans και /plans/:kind/:id είναι απευθείας σύνδεσμοι.

Τα /observability και /pull-requests/compose δεν έχουν καταχώριση στα μητρώα τίτλων διαδρομών ή ψωμιού, οπότε και τα δύο εμφανίζουν το σκέτο όνομα της εφαρμογής στον τίτλο του παραθύρου και κανένα ψωμί διαδρομής.

Το /settings ανακατευθύνει στο /settings/you/appearance. Το κουμπί ρυθμίσεων στην πλαϊνή στήλη και το Cmd/Ctrl + , οδηγούν και τα δύο στο /settings/you/appearance.

Οι διαδρομές ρυθμίσεων χωρίζονται σε χώρους ονομάτων κατά πεδίο — you/, workspace/, server/ — επειδή το τμήμα δηλώνει ποιον επηρεάζει μια αλλαγή. Δύο διαδρομές προϋπάρχουν αυτής της διάκρισης και δεν έχουν πεδίο στο URL: /settings/memory και /settings/pipelines.

Διαδρομή Οθόνη
/settings/you/appearance Θέμα, γλώσσα, τυπογραφία, θέμα επεξεργαστή (η αρχική σελίδα των ρυθμίσεων)
/settings/you/notifications Διακόπτες ανά γεγονός, Quiet hours
/settings/you/keybindings Αναφορά συντομεύσεων πληκτρολογίου (μόνο για ανάγνωση)
/settings/you/audio Μικρόφωνο, υπαγόρευση, ανίχνευση συσκέψεων και έξοδος ηχοτοπίου
/settings/you/devices Συζευγμένα τηλέφωνα και απομακρυσμένος έλεγχος
/settings/you/newsfeed Διαχείριση ροών: πηγές, ανανέωση, κατάσταση ανάγνωσης
Διαδρομή Οθόνη
/settings/workspace/profile Προφίλ και ταυτότητα σε αυτόν τον χώρο εργασίας: όνομα, συντάκτης git, φιλοξενία κώδικα, ημερολόγιο
/settings/workspace/general Όνομα, λογότυπο, εξαιρέσεις διαδρομών μυστικών, διασπορά ανασκόπησης, ονοματοδοσία κλάδων, υγεία συγχρονισμού, γέφυρες συνομιλίας, ζώνη κινδύνου
/settings/workspace/meetings Πρότυπα σημειώσεων σύσκεψης και αποθηκευμένα προφίλ φωνής
/settings/workspace/members Κατάλογος μελών, προσκλήσεις, ίχνος ελέγχου. Το ίχνος ελέγχου σελιδοποιείται με προαιρετικό ?cursor=
/settings/workspace/repositories Αποθετήρια καταχωρισμένα σε αυτόν τον χώρο εργασίας
/settings/workspace/agents Καταχωρισμένες ταυτότητες πρακτόρων
/settings/workspace/skills Διαμόρφωση δεξιοτήτων
/settings/memory Μνήμη χώρου εργασίας: γεγονότα, πολιτικές, γράφος γνώσης
/settings/workspace/permissions Δικαιώματα πρακτόρων: μήτρα περιορισμών και δοκιμή υποθετικού σεναρίου
/settings/pipelines Πρότυπα pipeline
/settings/pipelines/:templateId Επεξεργαστής προτύπου pipeline (καμβάς μεταφοράς και απόθεσης)
Διαδρομή Οθόνη
/settings/server/connection Σύνδεση και κατάσταση
/settings/server/sso Ενιαία σύνδεση (SAML, OIDC, παροχή SCIM)
/settings/server/providers Πάροχοι μοντέλων και προσαρμογείς
/settings/server/mcp Ενσωματωμένοι και εξωτερικοί διακομιστές MCP
/settings/server/voice Μοντέλα φωνής και συσκέψεων (ASR, διαχωρισμός ομιλητών)
/settings/server/rigs Σταθμοί: τι μπορεί να εκκινήσει αυτός ο ξενιστής, βασικές εικόνες, προσαρμοσμένες εικόνες, εκτελούμενες μηχανές
/settings/server/sandbox Παραχωρήσεις εκτέλεσης sandbox: προγράμματα που μπορούν να εκτελέσουν οι πράκτορες από το αντίγραφο εργασίας των αποθετηρίων σας
/settings/server/diagnostics Διαγνωστικά και απόρρητο: απομόνωση, ενσωμάτωση, καταγραφή, αναφορά σφαλμάτων
/settings/server/backup Αντίγραφα ασφαλείας και επαναφορά: στιγμιότυπα εγκατάστασης, εξαγωγή ανά χώρο εργασίας, εισαγωγή και διαγραφή
/settings/server/about Πληροφορίες και ενημερώσεις

Το kSettingsNav στο lib/features/settings/settings_nav.dart είναι η μοναδική πηγή αλήθειας για αυτή τη λίστα. Το settings_nav_test.dart καθηλώνει μοναδικά αναγνωριστικά, μοναδικές διαδρομές, πεπλατυσμένη σειρά J/K και τα τρία πεδία. Δεν διατρέχει κάθε καταχωρισμένο GoRoute.

Θέμα Αρχείο
Δρομολογητής lib/router/app_router.dart
Κατασκευαστές διαδρομών lib/router/routes.dart
Φύλακες ταυτοποίησης lib/router/guards.dart
Πύλη εισαγωγής lib/features/auth/providers/onboarding_providers.dart
Πλοήγηση ρυθμίσεων lib/features/settings/settings_nav.dart