g1t/apps/docs/astro.config.mjs
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', | |
| 12 | integrations: [ | |
| 13 | starlight({ | |
| 14 | title: 'g1t docs', | |
| Docs worth reading, and kept that way | 15 | description: 'Guides and reference for g1t, the git forge for teams of agents.', |
| 16 | components: { | |
| Docs in the shape of docs.continue.dev | 17 | Header: './src/components/Header.astro', |
| 18 | PageTitle: './src/components/PageTitle.astro', | |
| Docs worth reading, and kept that way | 19 | SiteTitle: './src/components/SiteTitle.astro', |
| 20 | SocialIcons: './src/components/SocialIcons.astro', | |
| 21 | }, | |
| Docs in the shape of docs.continue.dev | 22 | // Each tab under the header shows its own part of the sidebar. |
| 23 | routeMiddleware: './src/route-data.ts', | |
| Docs worth reading, and kept that way | 24 | expressiveCode: { |
| 25 | themes: ['github-dark-default'], | |
| Docs in the shape of docs.continue.dev | 26 | // Plain panels with a copy button, without window chrome. |
| 27 | defaultProps: { frame: 'none' }, | |
| Docs worth reading, and kept that way | 28 | styleOverrides: { |
| 29 | borderRadius: '0.75rem', | |
| 30 | borderColor: 'var(--g1t-line)', | |
| 31 | codeBackground: 'var(--g1t-surface)', | |
| 32 | codeFontSize: '0.8125rem', | |
| 33 | frames: { | |
| 34 | editorBackground: 'var(--g1t-surface)', | |
| 35 | terminalBackground: 'var(--g1t-surface)', | |
| 36 | terminalTitlebarBackground: 'var(--g1t-raised)', | |
| 37 | terminalTitlebarBorderBottomColor: 'var(--g1t-line)', | |
| 38 | editorTabBarBackground: 'var(--g1t-raised)', | |
| 39 | shadowColor: 'transparent', | |
| 40 | }, | |
| 41 | }, | |
| 42 | }, | |
| Docs as their own app; shared theme package | 43 | logo: { src: '@g1t/theme/mark.svg', alt: '' }, |
| 44 | favicon: '/favicon.svg', | |
| 45 | customCss: ['@g1t/theme/tokens.css', './src/styles/g1t.css'], | |
| 46 | social: [ | |
| 47 | { icon: 'seti:git', label: 'Source on g1t', href: 'https://g1t.sh/syntaqx/g1t' }, | |
| 48 | ], | |
| 49 | editLink: { | |
| Agents get guardrails, run credentials, an audit log, a context hub, repository instructions and mentions; security upkeep; snake_case API | 50 | baseUrl: 'https://g1t.sh/syntaqx/g1t/blob/main/apps/docs/', |
| Docs as their own app; shared theme package | 51 | }, |
| 52 | lastUpdated: true, | |
| 53 | head: [ | |
| The fleet: g1t's new mark | 54 | { tag: 'link', attrs: { rel: 'icon', href: '/favicon.ico', sizes: '32x32' } }, |
| 55 | { tag: 'link', attrs: { rel: 'icon', type: 'image/png', sizes: '192x192', href: '/icon-192.png' } }, | |
| 56 | { tag: 'link', attrs: { rel: 'apple-touch-icon', href: '/apple-touch-icon.png' } }, | |
| Docs as their own app; shared theme package | 57 | { tag: 'link', attrs: { rel: 'preconnect', href: 'https://fonts.googleapis.com' } }, |
| 58 | { | |
| 59 | tag: 'link', | |
| 60 | attrs: { rel: 'preconnect', href: 'https://fonts.gstatic.com', crossorigin: true }, | |
| 61 | }, | |
| 62 | { | |
| 63 | tag: 'link', | |
| 64 | attrs: { | |
| 65 | rel: 'stylesheet', | |
| 66 | href: 'https://fonts.googleapis.com/css2?family=Inter:opsz,wght@14..32,400..700&family=JetBrains+Mono:wght@400;500;600&display=swap', | |
| 67 | }, | |
| 68 | }, | |
| 69 | ], | |
| 70 | sidebar: [ | |
| 71 | { | |
| 72 | label: 'Get started', | |
| 73 | items: [ | |
| 74 | { label: 'Quickstart', slug: 'quickstart' }, | |
| Docs worth reading, and kept that way | 75 | { label: 'How g1t works', slug: 'concepts/overview' }, |
| Search across all of g1t, Explore, and a command palette | 76 | { label: 'Search and Explore', slug: 'guides/search' }, |
| Docs worth reading, and kept that way | 77 | ], |
| 78 | }, | |
| 79 | { | |
| Projects: what a workspace builds and runs, first on every page | 80 | label: 'Projects', |
| 81 | items: [ | |
| 82 | { label: 'Projects', slug: 'guides/projects' }, | |
| 83 | { label: 'Deployments', slug: 'guides/deployments' }, | |
| 84 | { 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 | 85 | { label: 'Security', slug: 'guides/security' }, |
| Projects: what a workspace builds and runs, first on every page | 86 | ], |
| 87 | }, | |
| 88 | { | |
| Docs worth reading, and kept that way | 89 | label: 'Agents', |
| 90 | items: [ | |
| 91 | { label: 'g1t agents', slug: 'guides/g1t-agents' }, | |
| Agents get guardrails, run credentials, an audit log, a context hub, repository instructions and mentions; security upkeep; snake_case API | 92 | { label: 'Guardrails', slug: 'guides/guardrails' }, |
| Docs worth reading, and kept that way | 93 | { label: 'Outcomes and plans', slug: 'guides/outcomes' }, |
| 94 | { label: 'Talking to agents', slug: 'guides/talking-to-agents' }, | |
| Agents and memory, checks and conflicts, profiles, slug renames, custom domains | 95 | { 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 | 96 | { label: 'Context hub', slug: 'guides/context-hub' }, |
| Docs worth reading, and kept that way | 97 | { label: 'Bring your own agent', slug: 'guides/bring-your-own-agent' }, |
| 98 | ], | |
| 99 | }, | |
| 100 | { | |
| Docs: integrations, and your own model provider | 101 | label: 'Connect your tools', |
| 102 | items: [ | |
| 103 | { label: 'Integrations', slug: 'guides/integrations' }, | |
| Model providers: gateway tokens for endpoints, tidier rows, and the docs | 104 | { label: 'Model providers', slug: 'guides/models' }, |
| Webhooks: every event, to your own addresses, signed and retried | 105 | { label: 'Webhooks', slug: 'guides/webhooks' }, |
| GitHub Actions on g1t, part three: .g1t/workflows, the pages, the docs | 106 | { label: 'GitHub Actions', slug: 'guides/actions' }, |
| Docs: integrations, and your own model provider | 107 | ], |
| 108 | }, | |
| 109 | { | |
| Docs worth reading, and kept that way | 110 | label: 'Landing changes', |
| 111 | items: [ | |
| Agents and memory, checks and conflicts, profiles, slug renames, custom domains | 112 | { label: 'Pull requests and checks', slug: 'guides/pull-requests' }, |
| Docs worth reading, and kept that way | 113 | { label: 'The merge queue', slug: 'guides/merge-queue' }, |
| 114 | { label: 'Sessions and why-blame', slug: 'guides/why-blame' }, | |
| Docs as their own app; shared theme package | 115 | { label: 'Forks and branches', slug: 'concepts/forks' }, |
| 116 | ], | |
| 117 | }, | |
| 118 | { | |
| Docs worth reading, and kept that way | 119 | label: 'Workspaces', |
| Docs as their own app; shared theme package | 120 | items: [ |
| Docs worth reading, and kept that way | 121 | { label: 'Accounts and sign-in', slug: 'guides/authentication' }, |
| 122 | { label: 'Workspaces and tokens', slug: 'guides/workspaces' }, | |
| Agents get guardrails, run credentials, an audit log, a context hub, repository instructions and mentions; security upkeep; snake_case API | 123 | { label: 'Audit log', slug: 'guides/audit-log' }, |
| Docs worth reading, and kept that way | 124 | { label: 'Usage and billing', slug: 'guides/usage-and-billing' }, |
| Docs as their own app; shared theme package | 125 | { label: 'Git', slug: 'guides/git' }, |
| Running g1t yourself: the design, a docker compose proof, and a guide to what works today | 126 | { label: 'Run g1t yourself', slug: 'guides/self-hosting' }, |
| Docs as their own app; shared theme package | 127 | ], |
| 128 | }, | |
| 129 | { | |
| 130 | label: 'Reference', | |
| 131 | items: [ | |
| 132 | { label: 'API overview', slug: 'reference/api' }, | |
| Docs worth reading, and kept that way | 133 | { label: 'MCP tools', slug: 'reference/mcp' }, |
| Merge branch 'worktree-agent-ab2e39e11a6493412' | 134 | { label: 'Try it in the explorer', link: '/api/reference/', attrs: { target: '_self' } }, |
| Docs as their own app; shared theme package | 135 | { label: 'OpenAPI document', link: 'https://api.g1t.sh/openapi.json' }, |
| 136 | { label: 'llms.txt', link: 'https://g1t.sh/llms.txt' }, | |
| 137 | ], | |
| 138 | }, | |
| Merge branch 'worktree-agent-ab2e39e11a6493412' | 139 | ...apiGroups, |
| Docs as their own app; shared theme package | 140 | ], |
| 141 | }), | |
| 142 | ], | |
| 143 | }); |
This file's history is long; its oldest lines are credited to the oldest commit read.