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.
| Inbox: the events service tells people what needs them as events arrive | 1 | import { env } from "cloudflare:workers"; |
| 2 | ||
| 3 | import { | |
| 4 | accountsClient, | |
| 5 | actionsClient, | |
| Merge remote-tracking branch 'origin/claude/cool-newton-7nm8r9' into claude/cool-newton-7nm8r9 | 6 | advisoriesClient, |
| g1t coordinates the work and the person's own sessions do it: Ask g1t reads g1t with the same tools any agent gets, answers in one conversation shared with the @g1t direct message in Chat, and hands work to sessions in the person's own harness, whose subagents g1t records, ties to issues and pull requests, and lets see each other. | 7 | agentSessionsClient, |
| Inbox: the events service tells people what needs them as events arrive | 8 | agentsClient, |
| 9 | billingClient, | |
| Chat and workspace agents: channels, DMs and named agents you talk to | 10 | chatClient, |
| Inbox: the events service tells people what needs them as events arrive | 11 | deploymentsClient, |
| Docs: a workspace knowledge base people and agents write together | 12 | docsClient, |
| Artifacts is a mode in the rail, the shell and the phone's tab bar in place of Docs: its home lists everything you can open by day or as cards under All, Yours and Shared with you, with search, filters and tiles to start a doc (slides, designs and dashboards say they are coming soon), and its sidebar holds favorites, spaces, Private, Shared, projects' docs and the trash. | 13 | foliosClient, |
| Inbox: the events service tells people what needs them as events arrive | 14 | packagesClient, |
| 15 | projectsClient, | |
| 16 | eventsClient, | |
| 17 | guardrailsClient, | |
| 18 | identityClient, | |
| Inbox: a bell in the top bar opens it beside the page, and /inbox holds it all | 19 | inboxClient, |
| Inbox: the events service tells people what needs them as events arrive | 20 | integrationsClient, |
| 21 | reposClient, | |
| 22 | searchClient, | |
| 23 | securityClient, | |
| Teams and CODEOWNERS, labels and milestones, dependency updates, the security suite, and a clearer top bar | 24 | securitySuiteClient, |
| Inbox: the events service tells people what needs them as events arrive | 25 | webhooksClient, |
| 26 | workClient, | |
| 27 | } from "@g1t/contracts"; | |
| Projects have Observability: their requests, logs, traces, metrics and errors, from apps on g1t.page with nothing to set up, and from software anywhere else over OpenTelemetry. | 28 | import { telemetryClient } from "@g1t/contracts/telemetry"; |
| Inbox: the events service tells people what needs them as events arrive | 29 | |
| 30 | import { instrumented } from "./perf.server"; | |
| 31 | ||
| 32 | /** | |
| 33 | * Each binding the clients use, timed for `Server-Timing` and, for the | |
| 34 | * services that read D1 with sessions, told where to read (lib/perf.ts). | |
| 35 | */ | |
| 36 | const IDENTITY = instrumented("identity", env.IDENTITY); | |
| 37 | const REPOS = instrumented("repos", env.REPOS); | |
| 38 | const WORK = instrumented("work", env.WORK); | |
| 39 | const BILLING = instrumented("billing", env.BILLING); | |
| 40 | const EVENTS = instrumented("events", env.EVENTS); | |
| 41 | const INTEGRATIONS = instrumented("integrations", env.INTEGRATIONS); | |
| 42 | const WEBHOOKS = instrumented("webhooks", env.WEBHOOKS); | |
| 43 | const ACTIONS = instrumented("actions", env.ACTIONS); | |
| 44 | const DEPLOYMENTS = instrumented("deployments", env.DEPLOYMENTS); | |
| 45 | const PROJECTS = instrumented("projects", env.PROJECTS); | |
| 46 | const SECURITY = instrumented("security", env.SECURITY); | |
| 47 | const SEARCH = instrumented("search", env.SEARCH); | |
| 48 | const PACKAGES = instrumented("packages", env.PACKAGES); | |
| Chat and workspace agents: channels, DMs and named agents you talk to | 49 | const CHAT = instrumented("chat", env.CHAT); |
| The artifacts service is services/artifacts, the Worker g1t-artifacts, bound as ARTIFACTS by the API, the site and the agents; its live rooms move to it with a Durable Object transfer from g1t-docs-service, and its database, bucket, indexes and queue keep their names. The git store's binding and settings are GITSTORE, its ops scripts gitstore-*, and workflow run artifacts keep their compatible API under run_artifacts modules. The deploy tool puts a Worker that has never deployed before the Workers in its stage that bind to it, and the deploy guide gives the cutover runbook. | 50 | const ARTIFACTS = instrumented("artifacts", env.ARTIFACTS); |
| Projects have Observability: their requests, logs, traces, metrics and errors, from apps on g1t.page with nothing to set up, and from software anywhere else over OpenTelemetry. | 51 | const TELEMETRY = env.TELEMETRY ? instrumented("telemetry", env.TELEMETRY) : null; |
| Inbox: the events service tells people what needs them as events arrive | 52 | |
| 53 | export const identity = identityClient(IDENTITY); | |
| 54 | /** A person's email addresses and account security: methods of identity. */ | |
| 55 | export const accounts = accountsClient(IDENTITY); | |
| 56 | export const repos = reposClient(REPOS); | |
| 57 | export const work = workClient(WORK); | |
| 58 | export const billing = billingClient(BILLING); | |
| 59 | export const events = eventsClient(EVENTS); | |
| Inbox: a bell in the top bar opens it beside the page, and /inbox holds it all | 60 | /** Each person's inbox, which the events service keeps. */ |
| 61 | export const inbox = inboxClient(EVENTS); | |
| Inbox: the events service tells people what needs them as events arrive | 62 | export const integrations = integrationsClient(INTEGRATIONS); |
| g1t coordinates the work and the person's own sessions do it: Ask g1t reads g1t with the same tools any agent gets, answers in one conversation shared with the @g1t direct message in Chat, and hands work to sessions in the person's own harness, whose subagents g1t records, ties to issues and pull requests, and lets see each other. | 63 | /** Sessions on a workspace's own Anthropic account: the integrations service's agent_sessions.rs. */ |
| 64 | export const agentSessions = agentSessionsClient(INTEGRATIONS); | |
| Inbox: the events service tells people what needs them as events arrive | 65 | export const webhooks = webhooksClient(WEBHOOKS); |
| 66 | export const actions = actionsClient(ACTIONS); | |
| 67 | export const deployments = deploymentsClient(DEPLOYMENTS); | |
| 68 | export const projects = projectsClient(PROJECTS); | |
| 69 | export const security = securityClient(SECURITY); | |
| Teams and CODEOWNERS, labels and milestones, dependency updates, the security suite, and a clearer top bar | 70 | /** The security suite: patterns, bypasses, code scanning, the dependency graph, settings. */ |
| 71 | export const securitySuite = securitySuiteClient(SECURITY); | |
| Merge remote-tracking branch 'origin/claude/cool-newton-7nm8r9' into claude/cool-newton-7nm8r9 | 72 | /** Security advisories and private vulnerability reports: methods of the security service. */ |
| 73 | export const advisories = advisoriesClient(SECURITY); | |
| Memory is gone: people's own harnesses keep their own memory (CLAUDE.md, AGENTS.md, auto-memory), so g1t's project and workspace notes that agents recalled and remembered only duplicated them. The recall and remember operations, their /repos/{owner}/{name}/memory routes, the memory MCP tool and its lines in the MCP instructions, the Memory section of the API reference and OpenAPI document (and the CLI's table generated from it) are removed, as are the work service's memory methods, the Memory pages of a project and of a workspace with their sidebar links, Home's Decisions card (which read decisions out of workspace memory), the Memory guide (its address and the old agent-memory, agents-and-memory and context-hub ones now lead to Connect a coding agent) and every mention in the docs, README, llms.txt, the landing page, the privacy policy and the Ask bench. Decision records, g1t why and g1t work stay as they were. memory:read and memory:write are retired as agents:run and the models scopes were: tokens and OAuth grants that hold them still parse and keep working for their other scopes, but no preset (the Agent preset and the OAuth default included), token form, mobile sign-in or hosted session hands them out and nothing needs them; looking up a ticket (search ticket, get_context), which needed memory:read, needs issues:read. The memories table stays in work's D1 untouched and is no longer read or written, except that purging a repository or deleting a workspace still deletes its old rows. Checked: cargo test for g1t-contracts (308), g1t-api (201), g1t (102 and 41), g1t-work (103) and g1t-integrations (65), cargo check of the workspace, the OpenAPI document and ops table regenerated, every workspace's typecheck, the site's 901 tests and a production build, the contracts' 48 tests, the phone app's 11, the deploy tool's 92, and the docs' tests and build. | 74 | /** Runs and pull request sessions: methods of the work service. */ |
| Inbox: the events service tells people what needs them as events arrive | 75 | export const agents = agentsClient(WORK); |
| The site no longer has g1t's own agents. g1t is where the coding agents you already use do their work, so the Agents mode is gone from the rail, with every page under /<workspace>/-/agents: personas, faces, skills, abilities, routines, computers, sessions and agent spend. Customize (skills, connectors, plugins, marketplaces), the context hub, model providers, the AI Gateway page, the Spend page and pill, Ask g1t, and the repository's Agents, Plans and agent settings pages go too, and their addresses now answer 404. | 76 | /** The network a sandbox may reach: methods of the work service. */ |
| Inbox: the events service tells people what needs them as events arrive | 77 | export const guardrails = guardrailsClient(WORK); |
| 78 | /** Search across all of g1t, and Explore. */ | |
| 79 | export const search = searchClient(SEARCH); | |
| 80 | /** The workspace's registries: container images, and more to come. */ | |
| 81 | export const packages = packagesClient(PACKAGES); | |
| The site no longer has g1t's own agents. g1t is where the coding agents you already use do their work, so the Agents mode is gone from the rail, with every page under /<workspace>/-/agents: personas, faces, skills, abilities, routines, computers, sessions and agent spend. Customize (skills, connectors, plugins, marketplaces), the context hub, model providers, the AI Gateway page, the Spend page and pill, Ask g1t, and the repository's Agents, Plans and agent settings pages go too, and their addresses now answer 404. | 82 | /** Channels, direct messages and threads, where people talk. */ |
| Chat and workspace agents: channels, DMs and named agents you talk to | 83 | export const chat = chatClient(CHAT); |
| The artifacts service is services/artifacts, the Worker g1t-artifacts, bound as ARTIFACTS by the API, the site and the agents; its live rooms move to it with a Durable Object transfer from g1t-docs-service, and its database, bucket, indexes and queue keep their names. The git store's binding and settings are GITSTORE, its ops scripts gitstore-*, and workflow run artifacts keep their compatible API under run_artifacts modules. The deploy tool puts a Worker that has never deployed before the Workers in its stage that bind to it, and the deploy guide gives the cutover runbook. | 84 | /** The artifacts service's spaces (Artifacts' spaces) and projects' docs. Its old pages are no longer read. */ |
| 85 | export const docs = docsClient(ARTIFACTS); | |
| 86 | /** Artifacts (folios): docs, and later slides, designs and dashboards, kept by the artifacts service. */ | |
| 87 | export const folios = foliosClient(ARTIFACTS); | |
| Projects have Observability: their requests, logs, traces, metrics and errors, from apps on g1t.page with nothing to set up, and from software anywhere else over OpenTelemetry. | 88 | |
| 89 | /** | |
| 90 | * Observability (services/telemetry): a project's requests, logs, traces, | |
| 91 | * metrics and errors. Null where it is not deployed; the pages say so. | |
| 92 | */ | |
| 93 | export const telemetry = TELEMETRY ? telemetryClient(TELEMETRY) : null; |
This file's history is long; its oldest lines are credited to the oldest commit read.