Skip to content
99 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.

Put the stylesheet at the top of the head, before React Router's preloads1import { env } from "cloudflare:workers";
2
3import {
4 accountsClient,
5 actionsClient,
Merge remote-tracking branch 'origin/claude/cool-newton-7nm8r9' into claude/cool-newton-7nm8r96 advisoriesClient,
Put the stylesheet at the top of the head, before React Router's preloads7 agentsClient,
8 billingClient,
Chat and workspace agents: channels, DMs and named agents you talk to9 chatClient,
Put the stylesheet at the top of the head, before React Router's preloads10 contextClient,
11 deploymentsClient,
Docs: a workspace knowledge base people and agents write together12 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,
Put the stylesheet at the top of the head, before React Router's preloads14 memoryReviewClient,
Merge branch 'mirroring' into artifacts-mode15 mirrorsClient,
Packages, with a container registry on g1t.sh; workspaces deleted whole and kept 30 days; Members for every member16 packagesClient,
Put the stylesheet at the top of the head, before React Router's preloads17 projectsClient,
18 eventsClient,
19 guardrailsClient,
20 identityClient,
Inbox: a bell in the top bar opens it beside the page, and /inbox holds it all21 inboxClient,
Put the stylesheet at the top of the head, before React Router's preloads22 integrationsClient,
23 reposClient,
24 searchClient,
25 securityClient,
Teams and CODEOWNERS, labels and milestones, dependency updates, the security suite, and a clearer top bar26 securitySuiteClient,
Put the stylesheet at the top of the head, before React Router's preloads27 webhooksClient,
28 workClient,
Agents → Skills is the workspace's skill library in the open SKILL.md format: write a skill in g1t, import a SKILL.md or zip, link a repository whose .g1t/skills folders publish on every push, or save a finished session as a skill once a person reviews it; attach a skill to an agent, a team or the whole workspace, each attachment pinned to a version. Agents see each skill's name and when to use it, and read the rest with use_skill when a request needs it; a skill never adds a permission, and scripts wait for an agent's own computer. The agent skills guide says how.29 skillLibraryClient,
Chat and workspace agents: channels, DMs and named agents you talk to30 workspaceAgentsClient,
Put the stylesheet at the top of the head, before React Router's preloads31} from "@g1t/contracts";
32
33import { instrumented } from "./perf.server";
34
35/**
36 * Each binding the clients use, timed for `Server-Timing` and, for the
37 * services that read D1 with sessions, told where to read (lib/perf.ts).
38 */
39const IDENTITY = instrumented("identity", env.IDENTITY);
40const REPOS = instrumented("repos", env.REPOS);
41const WORK = instrumented("work", env.WORK);
42const BILLING = instrumented("billing", env.BILLING);
43const EVENTS = instrumented("events", env.EVENTS);
44const INTEGRATIONS = instrumented("integrations", env.INTEGRATIONS);
45const WEBHOOKS = instrumented("webhooks", env.WEBHOOKS);
46const ACTIONS = instrumented("actions", env.ACTIONS);
47const DEPLOYMENTS = instrumented("deployments", env.DEPLOYMENTS);
48const PROJECTS = instrumented("projects", env.PROJECTS);
49const SECURITY = instrumented("security", env.SECURITY);
50const CONTEXT = instrumented("context", env.CONTEXT);
51const SEARCH = instrumented("search", env.SEARCH);
Packages, with a container registry on g1t.sh; workspaces deleted whole and kept 30 days; Members for every member52const PACKAGES = instrumented("packages", env.PACKAGES);
Chat and workspace agents: channels, DMs and named agents you talk to53const CHAT = instrumented("chat", env.CHAT);
54const AGENTS = instrumented("agents", env.AGENTS);
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.55const ARTIFACTS = instrumented("artifacts", env.ARTIFACTS);
Put the stylesheet at the top of the head, before React Router's preloads56
57export const identity = identityClient(IDENTITY);
58/** A person's email addresses and account security: methods of identity. */
59export const accounts = accountsClient(IDENTITY);
60export const repos = reposClient(REPOS);
61export const work = workClient(WORK);
62export const billing = billingClient(BILLING);
63export const events = eventsClient(EVENTS);
Inbox: a bell in the top bar opens it beside the page, and /inbox holds it all64/** Each person's inbox, which the events service keeps. */
65export const inbox = inboxClient(EVENTS);
Put the stylesheet at the top of the head, before React Router's preloads66export const integrations = integrationsClient(INTEGRATIONS);
Merge branch 'mirroring' into artifacts-mode67/** Mirroring: a repository's remotes, takeovers and hand-backs, kept by integrations. */
68export const mirrors = mirrorsClient(INTEGRATIONS);
Put the stylesheet at the top of the head, before React Router's preloads69export const webhooks = webhooksClient(WEBHOOKS);
70export const actions = actionsClient(ACTIONS);
71export const deployments = deploymentsClient(DEPLOYMENTS);
72export const projects = projectsClient(PROJECTS);
73export const security = securityClient(SECURITY);
Teams and CODEOWNERS, labels and milestones, dependency updates, the security suite, and a clearer top bar74/** The security suite: patterns, bypasses, code scanning, the dependency graph, settings. */
75export const securitySuite = securitySuiteClient(SECURITY);
Merge remote-tracking branch 'origin/claude/cool-newton-7nm8r9' into claude/cool-newton-7nm8r976/** Security advisories and private vulnerability reports: methods of the security service. */
77export const advisories = advisoriesClient(SECURITY);
Put the stylesheet at the top of the head, before React Router's preloads78/** Agent runs, sessions and memory: methods of the work service. */
79export const agents = agentsClient(WORK);
80/** What agents may do in a sandbox: methods of the work service. */
81export const guardrails = guardrailsClient(WORK);
82/** The context hub: catalog, search and scorecards. */
83export const context = contextClient(CONTEXT);
84/** Search across all of g1t, and Explore. */
85export const search = searchClient(SEARCH);
Packages, with a container registry on g1t.sh; workspaces deleted whole and kept 30 days; Members for every member86/** The workspace's registries: container images, and more to come. */
87export const packages = packagesClient(PACKAGES);
Put the stylesheet at the top of the head, before React Router's preloads88/** Memory candidates and their review: methods of the work service. */
89export const memoryReview = memoryReviewClient(WORK);
Chat and workspace agents: channels, DMs and named agents you talk to90/** Channels, direct messages and threads, where people and agents talk. */
91export const chat = chatClient(CHAT);
92/** The workspace's own agents: who they are, their limits and their desks. */
93export const workspaceAgents = workspaceAgentsClient(AGENTS);
Agents → Skills is the workspace's skill library in the open SKILL.md format: write a skill in g1t, import a SKILL.md or zip, link a repository whose .g1t/skills folders publish on every push, or save a finished session as a skill once a person reviews it; attach a skill to an agent, a team or the whole workspace, each attachment pinned to a version. Agents see each skill's name and when to use it, and read the rest with use_skill when a request needs it; a skill never adds a permission, and scripts wait for an agent's own computer. The agent skills guide says how.94/** The workspace's skill library: skills, their versions and where they are attached (the agents service). */
95export const skillLibrary = skillLibraryClient(AGENTS);
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.96/** The artifacts service's spaces (Artifacts' spaces) and projects' docs. Its old pages are no longer read. */
97export const docs = docsClient(ARTIFACTS);
98/** Artifacts (folios): docs, and later slides, designs and dashboards, kept by the artifacts service. */
99export const folios = foliosClient(ARTIFACTS);

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