Pick any line to see why it is the way it is: the commit, the pull request and issue it came from, and what the agent was thinking.
| Docs as their own app; shared theme package | 1 | // @ts-check |
| 2 | import starlight from '@astrojs/starlight'; | |
| 3 | import { defineConfig } from 'astro/config'; | |
| 4 | ||
| Merge branch 'worktree-agent-ab2e39e11a6493412' | 5 | import { generateApiReference } from './scripts/api-reference.mjs'; |
| 6 | ||
| 7 | // A page per REST operation, written from the OpenAPI document. | |
| 8 | const apiGroups = generateApiReference(); | |
| 9 | ||
| Docs as their own app; shared theme package | 10 | export default defineConfig({ |
| 11 | site: 'https://docs.g1t.sh', | |
| g1t is one name: its agent's work, commits and comments show as @g1t, and nobody can claim g1t or g1t-agent | 12 | // Pages that moved, so links already shared still arrive. |
| 13 | redirects: { | |
| 14 | '/guides/g1t-agents/': '/guides/working-with-g1t/', | |
| 15 | }, | |
| Docs as their own app; shared theme package | 16 | integrations: [ |
| 17 | starlight({ | |
| 18 | title: 'g1t docs', | |
| status.g1t.sh with incident management, invites that land you in the workspace, settings as pages, usage without quotas | 19 | description: 'Guides and reference for g1t, where people and agents ship software together.', |
| Docs worth reading, and kept that way | 20 | components: { |
| Invite-only launch: sign in with GitHub, repository access and lifecycle, many emails, a new look | 21 | Footer: './src/components/Footer.astro', |
| 22 | Head: './src/components/Head.astro', | |
| Docs in the shape of docs.continue.dev | 23 | Header: './src/components/Header.astro', |
| 24 | PageTitle: './src/components/PageTitle.astro', | |
| Docs worth reading, and kept that way | 25 | SiteTitle: './src/components/SiteTitle.astro', |
| 26 | SocialIcons: './src/components/SocialIcons.astro', | |
| 27 | }, | |
| Docs in the shape of docs.continue.dev | 28 | // Each tab under the header shows its own part of the sidebar. |
| 29 | routeMiddleware: './src/route-data.ts', | |
| Docs worth reading, and kept that way | 30 | expressiveCode: { |
| 31 | themes: ['github-dark-default'], | |
| Docs in the shape of docs.continue.dev | 32 | // Plain panels with a copy button, without window chrome. |
| 33 | defaultProps: { frame: 'none' }, | |
| Docs worth reading, and kept that way | 34 | styleOverrides: { |
| 35 | borderRadius: '0.75rem', | |
| 36 | borderColor: 'var(--g1t-line)', | |
| 37 | codeBackground: 'var(--g1t-surface)', | |
| 38 | codeFontSize: '0.8125rem', | |
| 39 | frames: { | |
| 40 | editorBackground: 'var(--g1t-surface)', | |
| 41 | terminalBackground: 'var(--g1t-surface)', | |
| 42 | terminalTitlebarBackground: 'var(--g1t-raised)', | |
| 43 | terminalTitlebarBorderBottomColor: 'var(--g1t-line)', | |
| 44 | editorTabBarBackground: 'var(--g1t-raised)', | |
| 45 | shadowColor: 'transparent', | |
| 46 | }, | |
| 47 | }, | |
| 48 | }, | |
| Docs as their own app; shared theme package | 49 | logo: { src: '@g1t/theme/mark.svg', alt: '' }, |
| 50 | favicon: '/favicon.svg', | |
| Invite-only launch: sign in with GitHub, repository access and lifecycle, many emails, a new look | 51 | customCss: ['@g1t/theme/fonts.css', '@g1t/theme/tokens.css', './src/styles/g1t.css'], |
| Docs as their own app; shared theme package | 52 | editLink: { |
| Invite-only launch: sign in with GitHub, repository access and lifecycle, many emails, a new look | 53 | baseUrl: 'https://g1t.sh/flagon-io/g1t/blob/main/apps/docs/', |
| Docs as their own app; shared theme package | 54 | }, |
| 55 | lastUpdated: true, | |
| 56 | head: [ | |
| The fleet: g1t's new mark | 57 | { tag: 'link', attrs: { rel: 'icon', href: '/favicon.ico', sizes: '32x32' } }, |
| 58 | { tag: 'link', attrs: { rel: 'icon', type: 'image/png', sizes: '192x192', href: '/icon-192.png' } }, | |
| 59 | { tag: 'link', attrs: { rel: 'apple-touch-icon', href: '/apple-touch-icon.png' } }, | |
| Docs as their own app; shared theme package | 60 | ], |
| 61 | sidebar: [ | |
| 62 | { | |
| 63 | label: 'Get started', | |
| 64 | items: [ | |
| 65 | { label: 'Quickstart', slug: 'quickstart' }, | |
| Docs worth reading, and kept that way | 66 | { label: 'How g1t works', slug: 'concepts/overview' }, |
| Search across all of g1t, Explore, and a command palette | 67 | { label: 'Search and Explore', slug: 'guides/search' }, |
| status.g1t.sh with incident management, invites that land you in the workspace, settings as pages, usage without quotas | 68 | { label: 'Status and incidents', slug: 'guides/status' }, |
| Docs worth reading, and kept that way | 69 | ], |
| 70 | }, | |
| 71 | { | |
| Projects: what a workspace builds and runs, first on every page | 72 | label: 'Projects', |
| 73 | items: [ | |
| 74 | { label: 'Projects', slug: 'guides/projects' }, | |
| 75 | { label: 'Deployments', slug: 'guides/deployments' }, | |
| Packages, with a container registry on g1t.sh; workspaces deleted whole and kept 30 days; Members for every member | 76 | { label: 'Packages', slug: 'guides/packages' }, |
| 77 | { label: 'Container images', slug: 'guides/containers' }, | |
| Projects: what a workspace builds and runs, first on every page | 78 | { label: 'Secrets and variables', slug: 'guides/secrets-and-variables' }, |
| Agents get guardrails, run credentials, an audit log, a context hub, repository instructions and mentions; security upkeep; snake_case API | 79 | { label: 'Security', slug: 'guides/security' }, |
| Projects: what a workspace builds and runs, first on every page | 80 | ], |
| 81 | }, | |
| 82 | { | |
| Docs worth reading, and kept that way | 83 | label: 'Agents', |
| 84 | items: [ | |
| g1t is one name: its agent's work, commits and comments show as @g1t, and nobody can claim g1t or g1t-agent | 85 | { label: "g1t's agent", slug: 'guides/working-with-g1t' }, |
| Agents get guardrails, run credentials, an audit log, a context hub, repository instructions and mentions; security upkeep; snake_case API | 86 | { label: 'Guardrails', slug: 'guides/guardrails' }, |
| Docs worth reading, and kept that way | 87 | { label: 'Outcomes and plans', slug: 'guides/outcomes' }, |
| 88 | { label: 'Talking to agents', slug: 'guides/talking-to-agents' }, | |
| Agents and memory, checks and conflicts, profiles, slug renames, custom domains | 89 | { label: 'Agents, sessions and memory', slug: 'guides/agents-and-memory' }, |
| Agents get guardrails, run credentials, an audit log, a context hub, repository instructions and mentions; security upkeep; snake_case API | 90 | { label: 'Context hub', slug: 'guides/context-hub' }, |
| Docs worth reading, and kept that way | 91 | { label: 'Bring your own agent', slug: 'guides/bring-your-own-agent' }, |
| 92 | ], | |
| 93 | }, | |
| 94 | { | |
| Docs: integrations, and your own model provider | 95 | label: 'Connect your tools', |
| 96 | items: [ | |
| 97 | { label: 'Integrations', slug: 'guides/integrations' }, | |
| Model providers: gateway tokens for endpoints, tidier rows, and the docs | 98 | { label: 'Model providers', slug: 'guides/models' }, |
| Webhooks: every event, to your own addresses, signed and retried | 99 | { label: 'Webhooks', slug: 'guides/webhooks' }, |
| GitHub Actions on g1t, part three: .g1t/workflows, the pages, the docs | 100 | { label: 'GitHub Actions', slug: 'guides/actions' }, |
| Fast pages, required checks on the branch, self-hosted runners, honest incidents | 101 | { label: 'Self-hosted runners', slug: 'guides/self-hosted-runners' }, |
| Docs: integrations, and your own model provider | 102 | ], |
| 103 | }, | |
| 104 | { | |
| Docs worth reading, and kept that way | 105 | label: 'Landing changes', |
| 106 | items: [ | |
| Agents and memory, checks and conflicts, profiles, slug renames, custom domains | 107 | { label: 'Pull requests and checks', slug: 'guides/pull-requests' }, |
| Docs worth reading, and kept that way | 108 | { label: 'The merge queue', slug: 'guides/merge-queue' }, |
| 109 | { label: 'Sessions and why-blame', slug: 'guides/why-blame' }, | |
| Docs as their own app; shared theme package | 110 | { label: 'Forks and branches', slug: 'concepts/forks' }, |
| 111 | ], | |
| 112 | }, | |
| 113 | { | |
| Docs worth reading, and kept that way | 114 | label: 'Workspaces', |
| Docs as their own app; shared theme package | 115 | items: [ |
| Docs worth reading, and kept that way | 116 | { label: 'Accounts and sign-in', slug: 'guides/authentication' }, |
| Invite-only launch: sign in with GitHub, repository access and lifecycle, many emails, a new look | 117 | { label: 'GitHub', slug: 'guides/github' }, |
| Docs worth reading, and kept that way | 118 | { label: 'Workspaces and tokens', slug: 'guides/workspaces' }, |
| Invite-only launch: sign in with GitHub, repository access and lifecycle, many emails, a new look | 119 | { label: 'Access and roles', slug: 'guides/access-and-roles' }, |
| 120 | { label: 'Managing a repository', slug: 'guides/managing-repositories' }, | |
| 121 | { label: 'Transferring a repository', slug: 'guides/transferring-repositories' }, | |
| Agents get guardrails, run credentials, an audit log, a context hub, repository instructions and mentions; security upkeep; snake_case API | 122 | { label: 'Audit log', slug: 'guides/audit-log' }, |
| Docs worth reading, and kept that way | 123 | { label: 'Usage and billing', slug: 'guides/usage-and-billing' }, |
| Docs as their own app; shared theme package | 124 | { label: 'Git', slug: 'guides/git' }, |
| Running g1t yourself: the design, a docker compose proof, and a guide to what works today | 125 | { label: 'Run g1t yourself', slug: 'guides/self-hosting' }, |
| Docs as their own app; shared theme package | 126 | ], |
| 127 | }, | |
| 128 | { | |
| 129 | label: 'Reference', | |
| 130 | items: [ | |
| 131 | { label: 'API overview', slug: 'reference/api' }, | |
| Docs worth reading, and kept that way | 132 | { label: 'MCP tools', slug: 'reference/mcp' }, |
| Merge branch 'worktree-agent-ab2e39e11a6493412' | 133 | { label: 'Try it in the explorer', link: '/api/reference/', attrs: { target: '_self' } }, |
| Docs as their own app; shared theme package | 134 | { label: 'OpenAPI document', link: 'https://api.g1t.sh/openapi.json' }, |
| 135 | { label: 'llms.txt', link: 'https://g1t.sh/llms.txt' }, | |
| 136 | ], | |
| 137 | }, | |
| Fast pages, required checks on the branch, self-hosted runners, honest incidents | 138 | { |
| 139 | label: 'About', | |
| What g1t can't do yet, and an open letter to Cloudflare | 140 | items: [ |
| 141 | { label: "What g1t can't do yet", slug: 'about/limitations' }, | |
| 142 | { label: 'An open letter to Cloudflare', slug: 'about/open-letter-to-cloudflare' }, | |
| 143 | ], | |
| Fast pages, required checks on the branch, self-hosted runners, honest incidents | 144 | }, |
| Merge branch 'worktree-agent-ab2e39e11a6493412' | 145 | ...apiGroups, |
| Docs as their own app; shared theme package | 146 | ], |
| 147 | }), | |
| 148 | ], | |
| 149 | }); |
This file's history is long; its oldest lines are credited to the oldest commit read.