g1t/services/runner/wrangler.jsonc

41 lines1,888 bytesCodeBlame
1{
2 "$schema": "../../node_modules/wrangler/config-schema.json",
3 "name": "g1t-runner",
4 "account_id": "1e6f2cffa3f445920836e8ebe446bb58",
5 "compatibility_date": "2026-09-26",
6 "main": "./src/index.ts",
7 "workers_dev": false,
8 "containers": [
9 {
10 "class_name": "AttemptSandbox",
11 // Built from the repository root so the image can compile the
12 // runner crate.
13 "image": "./Dockerfile",
14 "image_build_context": "../..",
15 "instance_type": "standard-1",
16 "max_instances": 10
17 }
18 ],
19 "durable_objects": {
20 "bindings": [{ "name": "SANDBOX", "class_name": "AttemptSandbox" }]
21 },
22 "migrations": [{ "tag": "v1", "new_sqlite_classes": ["AttemptSandbox"] }],
23 "services": [
24 { "binding": "IDENTITY", "service": "g1t-identity" },
25 { "binding": "WORK", "service": "g1t-work" }
26 ],
27 // Events it reacts to: a pull request ready for review, or its head moving.
28 "queues": {
29 "consumers": [{ "queue": "g1t-events-runner", "max_batch_size": 20, "max_batch_timeout": 1 }]
30 },
31 "vars": {
32 "HOSTED_AGENT_USERS": "syntaqx",
33 // What a person can choose when starting g1t agents. The first is the
34 // default. "modelName" is shown to people; "model" is sent to the provider.
35 "AGENT_MODELS": "[{\"id\":\"balanced\",\"label\":\"Balanced\",\"description\":\"Good at most tasks.\",\"modelName\":\"Claude Sonnet 5.5\",\"model\":\"claude-sonnet-5-5\"},{\"id\":\"deep\",\"label\":\"Deep\",\"description\":\"Strongest reasoning; slower and costlier.\",\"modelName\":\"Claude Opus 5.5\",\"model\":\"claude-opus-5-5\"},{\"id\":\"fast\",\"label\":\"Fast\",\"description\":\"Quick and cheap, for small changes.\",\"modelName\":\"Claude Haiku 4.5\",\"model\":\"claude-haiku-4-5-20251001\"}]",
36 // Set to a Cloudflare AI Gateway id to route model traffic through it.
37 "AI_GATEWAY_ID": "",
38 "CLOUDFLARE_ACCOUNT_ID": "1e6f2cffa3f445920836e8ebe446bb58"
39 },
40 "observability": { "enabled": true }
41}