Skip to content
74 linesCodeBlameRaw

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: integrations, and your own model provider1{
2 "$schema": "../../node_modules/wrangler/config-schema.json",
3 "name": "g1t",
4 "account_id": "1e6f2cffa3f445920836e8ebe446bb58",
5 "compatibility_date": "2026-09-26",
Fast pages, required checks on the branch, self-hosted runners, honest incidents6 // AsyncLocalStorage, for per-request timings and D1 bookmarks
7 // (app/lib/perf.server.ts).
8 "compatibility_flags": ["nodejs_als"],
9 // Where it runs: docs/PERFORMANCE.md. Off runs it in the data centre
10 // nearest the visitor; scripts/perf/placement-probe.mjs measures the
11 // alternatives and `apply` changes every Worker's at once.
12 "placement": { "mode": "off" },
Docs: integrations, and your own model provider13 "main": "./workers/app.ts",
Merge g1tusercontent.com: registry answers run nothing in a browser, the site's pages run only their own scripts, repository files and avatars on their own origin, raw files rate limited per address14 // g1tusercontent.com: repository files and avatars, on an origin of
15 // their own that never sees g1t.sh's cookies (workers/usercontent.ts).
16 "routes": [
17 { "pattern": "g1t.sh", "custom_domain": true },
18 { "pattern": "g1tusercontent.com", "custom_domain": true }
19 ],
Docs: integrations, and your own model provider20 // The site holds no data of its own; everything goes through services.
Actions: workflow_run, workflow.completed, artifacts on the run page, Node 2421 // GitHub Actions artifacts, as the API keeps them, for download from a run.
Workspace names and icons, and a component kit for every control22 // Uploaded avatars (g1t-avatars), served at /avatars/<sha256>. Read
23 // only here: the identity service checks and writes them.
24 "kv_namespaces": [
25 { "binding": "BLOBS", "id": "16a4232cb746418db53782aa068be693" },
26 { "binding": "AVATARS", "id": "e627b571f07047e187c03e1fc2b3bbdd" }
27 ],
Fast pages, required checks on the branch, self-hosted runners, honest incidents28 // The self-hosted runner's releases, served at /downloads/runner/
29 // (routes/downloads-runner.ts); published by scripts/runner-release.mjs.
30 "r2_buckets": [{ "binding": "DOWNLOADS", "bucket_name": "g1t-downloads" }],
Docs: integrations, and your own model provider31 "services": [
32 { "binding": "IDENTITY", "service": "g1t-identity" },
33 { "binding": "REPOS", "service": "g1t-repos" },
Packages, with a container registry on g1t.sh; workspaces deleted whole and kept 30 days; Members for every member34 // The package registries, on g1t.sh/v2/ (workers/app.ts).
35 { "binding": "PACKAGES", "service": "g1t-packages" },
Docs: integrations, and your own model provider36 { "binding": "WORK", "service": "g1t-work" },
37 { "binding": "RUNNER", "service": "g1t-runner" },
38 { "binding": "BILLING", "service": "g1t-billing" },
39 { "binding": "EVENTS", "service": "g1t-events" },
Webhooks: every event, to your own addresses, signed and retried40 { "binding": "INTEGRATIONS", "service": "g1t-integrations" },
Automations: rules in .g1t/automations that act when something happens41 { "binding": "WEBHOOKS", "service": "g1t-webhooks" },
Deployments: a preview for every pull request, production on g1t.page42 { "binding": "ACTIONS", "service": "g1t-actions" },
Projects: what a workspace builds and runs, first on every page43 { "binding": "DEPLOYMENTS", "service": "g1t-deployments" },
Agents get guardrails, run credentials, an audit log, a context hub, repository instructions and mentions; security upkeep; snake_case API44 { "binding": "PROJECTS", "service": "g1t-projects" },
45 { "binding": "SECURITY", "service": "g1t-security" },
Search across all of g1t, Explore, and a command palette46 { "binding": "CONTEXT", "service": "g1t-context" },
Invite-only launch: sign in with GitHub, repository access and lifecycle, many emails, a new look47 { "binding": "SEARCH", "service": "g1t-search" },
Chat and workspace agents: channels, DMs and named agents you talk to48 // Chat: channels, direct messages and the live socket (services/chat).
49 { "binding": "CHAT", "service": "g1t-chat" },
Docs: a workspace knowledge base people and agents write together50 // Docs: spaces, pages, each page's live socket, and files in pages (services/docs).
51 { "binding": "DOCS", "service": "g1t-docs-service" },
Chat and workspace agents: channels, DMs and named agents you talk to52 // The workspace's own agents: definitions, templates, desks (services/agents).
53 { "binding": "AGENTS", "service": "g1t-agents" },
Merge the workspace shell: navigation and phone shell, g1t as orchestrator, agents in roles with audience-checked reads, reactions and custom emoji, live notifications and browser push, the homepage tour (agents 0002, chat 0002)54 // Live notifications, counts and browser push: each tab's feed socket (services/notify).
55 { "binding": "NOTIFY", "service": "g1t-notify" },
Invite-only launch: sign in with GitHub, repository access and lifecycle, many emails, a new look56 // Production screenshots for a project's overview (services/og).
57 { "binding": "SCREENSHOTS", "service": "g1t-og", "entrypoint": "Screenshots" }
Docs: integrations, and your own model provider58 ],
Merge branch 'worktree-agent-a8752162fea25f63f' into spend-guardrails59 // The front door's limits (app/lib/front-door-limits.ts). Every id and
60 // limit is in RATE_LIMITS (packages/contracts/src/rate-limits.ts), which
61 // the tests check this against. Self-hosted, without them, nothing is limited.
62 "ratelimits": [
63 { "name": "WEB_ANONYMOUS_LIMIT", "namespace_id": "4201", "simple": { "limit": 600, "period": 60 } },
64 { "name": "WEB_HEAVY_LIMIT", "namespace_id": "4202", "simple": { "limit": 30, "period": 60 } },
65 { "name": "WEB_SESSION_LIMIT", "namespace_id": "4203", "simple": { "limit": 1200, "period": 60 } },
66 { "name": "WEB_ADDRESS_LIMIT", "namespace_id": "4204", "simple": { "limit": 3000, "period": 60 } },
67 { "name": "GIT_ANONYMOUS_LIMIT", "namespace_id": "4205", "simple": { "limit": 120, "period": 60 } },
Merge main into Artifacts Phase 268 { "name": "GIT_SIGNED_LIMIT", "namespace_id": "4206", "simple": { "limit": 1200, "period": 60 } },
69 { "name": "WEB_TOKEN_LIMIT", "namespace_id": "4207", "simple": { "limit": 1000, "period": 60 } }
Merge branch 'worktree-agent-a8752162fea25f63f' into spend-guardrails70 ],
71 // Logs of a tenth of requests: every page view is one, too many to keep all.
72 "observability": { "enabled": true, "head_sampling_rate": 0.1 },
Docs: integrations, and your own model provider73 "upload_source_maps": true
74}

This file's history is long; its oldest lines are credited to the oldest commit read.