@tokenfactory/acc-runner 0.43.0 → 0.44.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/README.md +75 -3
  2. package/dist/companion-run.d.ts.map +1 -1
  3. package/dist/companion-run.js +20 -0
  4. package/dist/companion-run.js.map +1 -1
  5. package/dist/config.d.ts +72 -0
  6. package/dist/config.d.ts.map +1 -1
  7. package/dist/config.js +117 -3
  8. package/dist/config.js.map +1 -1
  9. package/dist/cost-pricing.d.ts +45 -0
  10. package/dist/cost-pricing.d.ts.map +1 -1
  11. package/dist/cost-pricing.js +57 -0
  12. package/dist/cost-pricing.js.map +1 -1
  13. package/dist/doctor.d.ts +4 -0
  14. package/dist/doctor.d.ts.map +1 -1
  15. package/dist/doctor.js +32 -3
  16. package/dist/doctor.js.map +1 -1
  17. package/dist/engines/registry.d.ts +17 -6
  18. package/dist/engines/registry.d.ts.map +1 -1
  19. package/dist/engines/registry.js +38 -13
  20. package/dist/engines/registry.js.map +1 -1
  21. package/dist/git-auth/github-token-source.d.ts +54 -0
  22. package/dist/git-auth/github-token-source.d.ts.map +1 -0
  23. package/dist/git-auth/github-token-source.js +44 -0
  24. package/dist/git-auth/github-token-source.js.map +1 -0
  25. package/dist/git-auth/index.d.ts +4 -0
  26. package/dist/git-auth/index.d.ts.map +1 -1
  27. package/dist/git-auth/index.js +4 -0
  28. package/dist/git-auth/index.js.map +1 -1
  29. package/dist/git-auth/installation-token.d.ts +95 -0
  30. package/dist/git-auth/installation-token.d.ts.map +1 -0
  31. package/dist/git-auth/installation-token.js +192 -0
  32. package/dist/git-auth/installation-token.js.map +1 -0
  33. package/dist/instance.d.ts +30 -0
  34. package/dist/instance.d.ts.map +1 -0
  35. package/dist/instance.js +51 -0
  36. package/dist/instance.js.map +1 -0
  37. package/dist/keychain.d.ts +4 -8
  38. package/dist/keychain.d.ts.map +1 -1
  39. package/dist/keychain.js +10 -4
  40. package/dist/keychain.js.map +1 -1
  41. package/dist/local-repo/command.d.ts +28 -0
  42. package/dist/local-repo/command.d.ts.map +1 -0
  43. package/dist/local-repo/command.js +178 -0
  44. package/dist/local-repo/command.js.map +1 -0
  45. package/dist/local-repo/index.d.ts +119 -0
  46. package/dist/local-repo/index.d.ts.map +1 -0
  47. package/dist/local-repo/index.js +141 -0
  48. package/dist/local-repo/index.js.map +1 -0
  49. package/dist/login.d.ts +4 -0
  50. package/dist/login.d.ts.map +1 -1
  51. package/dist/login.js +6 -1
  52. package/dist/login.js.map +1 -1
  53. package/dist/mcp-spawn.d.ts +19 -0
  54. package/dist/mcp-spawn.d.ts.map +1 -1
  55. package/dist/mcp-spawn.js +52 -26
  56. package/dist/mcp-spawn.js.map +1 -1
  57. package/dist/memory-context.d.ts +106 -0
  58. package/dist/memory-context.d.ts.map +1 -0
  59. package/dist/memory-context.js +220 -0
  60. package/dist/memory-context.js.map +1 -0
  61. package/dist/memory-curation.d.ts +172 -0
  62. package/dist/memory-curation.d.ts.map +1 -0
  63. package/dist/memory-curation.js +277 -0
  64. package/dist/memory-curation.js.map +1 -0
  65. package/dist/program.d.ts.map +1 -1
  66. package/dist/program.js +34 -0
  67. package/dist/program.js.map +1 -1
  68. package/dist/provider-auth.d.ts +70 -1
  69. package/dist/provider-auth.d.ts.map +1 -1
  70. package/dist/provider-auth.js +106 -2
  71. package/dist/provider-auth.js.map +1 -1
  72. package/dist/runtime/cache-dir.d.ts.map +1 -1
  73. package/dist/runtime/cache-dir.js +8 -3
  74. package/dist/runtime/cache-dir.js.map +1 -1
  75. package/dist/runtime/decision-provenance.d.ts +63 -0
  76. package/dist/runtime/decision-provenance.d.ts.map +1 -0
  77. package/dist/runtime/decision-provenance.js +107 -0
  78. package/dist/runtime/decision-provenance.js.map +1 -0
  79. package/dist/runtime/prompt-substitute.d.ts +100 -0
  80. package/dist/runtime/prompt-substitute.d.ts.map +1 -0
  81. package/dist/runtime/prompt-substitute.js +124 -0
  82. package/dist/runtime/prompt-substitute.js.map +1 -0
  83. package/dist/runtime/review-cost-cap.d.ts +167 -0
  84. package/dist/runtime/review-cost-cap.d.ts.map +1 -0
  85. package/dist/runtime/review-cost-cap.js +182 -0
  86. package/dist/runtime/review-cost-cap.js.map +1 -0
  87. package/dist/runtime/reviewer-abstain.d.ts +101 -0
  88. package/dist/runtime/reviewer-abstain.d.ts.map +1 -0
  89. package/dist/runtime/reviewer-abstain.js +138 -0
  90. package/dist/runtime/reviewer-abstain.js.map +1 -0
  91. package/dist/runtime/reviewer.d.ts +75 -0
  92. package/dist/runtime/reviewer.d.ts.map +1 -1
  93. package/dist/runtime/reviewer.js +235 -81
  94. package/dist/runtime/reviewer.js.map +1 -1
  95. package/dist/runtime/singleton.d.ts.map +1 -1
  96. package/dist/runtime/singleton.js +9 -1
  97. package/dist/runtime/singleton.js.map +1 -1
  98. package/dist/serving-auth/index.d.ts +79 -0
  99. package/dist/serving-auth/index.d.ts.map +1 -0
  100. package/dist/serving-auth/index.js +169 -0
  101. package/dist/serving-auth/index.js.map +1 -0
  102. package/dist/task-runner.d.ts +19 -2
  103. package/dist/task-runner.d.ts.map +1 -1
  104. package/dist/task-runner.js +110 -28
  105. package/dist/task-runner.js.map +1 -1
  106. package/dist/watch.d.ts +13 -0
  107. package/dist/watch.d.ts.map +1 -1
  108. package/dist/watch.js +128 -20
  109. package/dist/watch.js.map +1 -1
  110. package/package.json +3 -2
package/README.md CHANGED
@@ -66,6 +66,34 @@ acc task list --repo owner/name --json
66
66
  acc task show T-1234
67
67
  ```
68
68
 
69
+ ## Attaching a local repo (no GitHub App)
70
+
71
+ The other way to give ACC a repo. Instead of installing the GitHub App on it,
72
+ point the CLI at a git working copy on this machine:
73
+
74
+ ```sh
75
+ acc repo add-local ~/code/my-app # register it
76
+ acc repo add-local ~/code/my-app --project my-project # …and attach to a project
77
+ acc repo add-local ~/code/scratch-2 --name pricing-service
78
+ acc repo list-local # what this machine serves
79
+ ```
80
+
81
+ The server records three things — a write grant for **you** (nobody else), a
82
+ binding from the repo to **this machine**, and optionally the project attach. It
83
+ does **not** record the path: that stays in this machine's `config.json` under
84
+ `local-repos`, and the runner resolves it at task time.
85
+
86
+ Consequences worth knowing before you run it:
87
+
88
+ - only your own runner can serve the repo, and only while it is online;
89
+ - the slug the server mints is `local.<fragment>/<name>` — a reserved namespace
90
+ derived from your user id, so it can never collide with (or grant access to) a
91
+ real GitHub repo;
92
+ - PRs need a push remote you set up yourself. Without one, tasks run and commit
93
+ in the working copy and the push step fails; `add-local` warns at registration.
94
+
95
+ Full walkthrough: `docs/acc/LOCAL_REPO_CLI_SETUP.md`.
96
+
69
97
  ## Asking ACC
70
98
 
71
99
  Hits the same `/api/chat/stream` endpoint the browser uses, so the same tools,
@@ -156,6 +184,7 @@ environment), drop a JSON file at
156
184
  | `repo-path` | Local clone path. Overrides the `~/work/TechArch` default; `ACC_REPO_PATH` overrides this. |
157
185
  | `capabilities` | Array of capability tags. Overridden by `ACC_RUNNER_CAPABILITIES` when set. |
158
186
  | `runner-profile` | Profile slug; overridden by `ACC_RUNNER_PROFILE` when set. |
187
+ | `local-repos` | `{ "local.<frag>/<name>": "/abs/path" }` — written by `acc repo add-local`. No env form. Edit by hand only if you have moved a working copy. |
159
188
 
160
189
  The file is read at process startup. Missing file or malformed JSON
161
190
  falls back to the next layer silently — the runner never crashes on a
@@ -168,9 +197,12 @@ non-empty value wins:
168
197
 
169
198
  1. The task row's `repo_path_hint` (set by the operator when assigning
170
199
  the task) — lets a single runner span repos.
171
- 2. `ACC_REPO_PATH` environment variable.
172
- 3. `repo-path` field in `~/.config/acc-runner/config.json`.
173
- 4. `~/work/TechArch` the built-in default.
200
+ 2. `local-repos[task.repo]` in `~/.config/acc-runner/config.json`, for a
201
+ `local.…` slug registered by `acc repo add-local`. A local repo has no remote
202
+ to clone from, so this also suppresses the clone cache below.
203
+ 3. `ACC_REPO_PATH` environment variable.
204
+ 4. `repo-path` field in `~/.config/acc-runner/config.json`.
205
+ 5. `~/work/TechArch` — the built-in default.
174
206
 
175
207
  Until v0.8.1, only steps 1, 2, and 4 were consulted: a `repo-path` in
176
208
  config.json was silently ignored, and a runner launched by `launchd`
@@ -281,6 +313,29 @@ serving the same repo are still caught by the singleton lock. `acc-runner
281
313
  doctor` prints the resolved token mode and cache dir in its **Runtime**
282
314
  block, and names the holding identity if a duplicate is detected.
283
315
 
316
+ #### Named instances (keychain mode)
317
+
318
+ The `ACC_RUNNER_ID` recipe above suits env-token runners. A keychain-mode
319
+ runner cannot use it: the keychain holds one runner session per OS user, and
320
+ the server dedups runner identity on *(user, machine)* — a second `login` on
321
+ one Mac resolves back to the first runner's id. Name the instance instead:
322
+ `--instance <name>` (env `ACC_RUNNER_INSTANCE`, `^[a-z0-9][a-z0-9-]{0,31}$`)
323
+ on `login`, `watch`, `logout` and `doctor`:
324
+
325
+ ```sh
326
+ acc-runner login --instance dev2 # own keychain slot, own runner row
327
+ acc-runner watch --instance dev2 &
328
+ ```
329
+
330
+ The name folds into all four identity surfaces at once: the keychain account
331
+ (`instance:dev2`), the `machine` string sent to the server (`…#dev2`, so the
332
+ dedup mints each name its own **stable** runner id — re-login reuses it), the
333
+ cache root (`…/acc-runner/runners/instance-dev2`) and the singleton lock key.
334
+ `logout --instance dev2` clears only that slot; a second `watch` under the
335
+ *same* name is still refused; `doctor` reports the instance, its slot and the
336
+ resolved id. Unnamed, every surface keeps its historic value byte-for-byte,
337
+ and `ACC_RUNNER_ID` / an explicit `ACC_RUNNER_CACHE_DIR` still win where set.
338
+
284
339
  ### `PATH` under launchd
285
340
 
286
341
  `launchd` resets `PATH` to `/usr/bin:/bin:/usr/sbin:/sbin`, which omits
@@ -290,6 +345,14 @@ own `PATH` before spawning these binaries — no `launchd` plist edits
290
345
  required. If `acc-runner doctor` reports `git` or `gh` as missing under
291
346
  launchd, install them via Homebrew and re-run.
292
347
 
348
+ `node` itself is the exception: the repo pins node 22 and `launchd` sources
349
+ neither `~/.zshrc` nor `~/.zprofile`, so the LaunchAgent bakes node@22's bin
350
+ dir onto `PATH` (and the ACC_* config vars into `EnvironmentVariables`)
351
+ instead of inheriting them. Install it with
352
+ `packages/acc-runner/scripts/install-launchd.sh`; see
353
+ `docs/acc/RUNNER_LAUNCHD.md` for the install, reboot-survival check and
354
+ rollback.
355
+
293
356
  ## Quickstart
294
357
 
295
358
  ```sh
@@ -328,6 +391,15 @@ Subscribes to a Realtime broadcast channel scoped to your runner. Sends
328
391
  a heartbeat every 4s. Cancellation is honored via `task_cancelled`
329
392
  broadcasts (sends `SIGTERM` to the in-flight `claude` child).
330
393
 
394
+ ### `acc repo add-local <path>` · `acc repo list-local`
395
+
396
+ Register a git working copy on this machine as a repo ACC can run tasks against,
397
+ with no GitHub App installed anywhere. `--project <slug>` also attaches it to a
398
+ project; `--name <name>` overrides the name derived from the directory.
399
+ `list-local` prints what this machine has registered and flags entries the server
400
+ no longer grants. Both run in the **person** lane (`acc login`), not the machine
401
+ lane — the grant being written is yours. See "Attaching a local repo" above.
402
+
331
403
  ### `acc-runner doctor`
332
404
 
333
405
  Runs every environment check (binaries, keychain access, env-token config,
@@ -1 +1 @@
1
- {"version":3,"file":"companion-run.d.ts","sourceRoot":"","sources":["../src/companion-run.ts"],"names":[],"mappings":"AAmBA,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAC;AAiCxB,gFAAgF;AAChF,MAAM,WAAW,eAAe;IAC9B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AAED;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,QAAS,CAAC;AAElD,MAAM,WAAW,uBAAuB;IACtC,wEAAwE;IACxE,SAAS,EAAE,iBAAiB,CAAC;IAC7B,+EAA+E;IAC/E,IAAI,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,4BAA4B;IAC5B,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB;IAClC,uEAAuE;IACvE,SAAS,EAAE,iBAAiB,CAAC;IAC7B,iFAAiF;IACjF,cAAc,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC5D;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,uBAAuB,GAAG,mBAAmB,CAyDtF;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,eAAe,CAAC,CAiZjE;AAED,+DAA+D;AAC/D,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAmB5D;AAED,8DAA8D;AAC9D,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC,CAK7D;AAED,wCAAwC;AACxC,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC,CAK/D"}
1
+ {"version":3,"file":"companion-run.d.ts","sourceRoot":"","sources":["../src/companion-run.ts"],"names":[],"mappings":"AAmBA,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAC;AAoCxB,gFAAgF;AAChF,MAAM,WAAW,eAAe;IAC9B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AAED;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,kCAAkC,CAAC;AAEtE;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,QAAS,CAAC;AAElD,MAAM,WAAW,uBAAuB;IACtC,wEAAwE;IACxE,SAAS,EAAE,iBAAiB,CAAC;IAC7B,+EAA+E;IAC/E,IAAI,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,4BAA4B;IAC5B,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB;IAClC,uEAAuE;IACvE,SAAS,EAAE,iBAAiB,CAAC;IAC7B,iFAAiF;IACjF,cAAc,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC5D;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,uBAAuB,GAAG,mBAAmB,CAyDtF;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,eAAe,CAAC,CAsajE;AAED,+DAA+D;AAC/D,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAmB5D;AAED,8DAA8D;AAC9D,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC,CAK7D;AAED,wCAAwC;AACxC,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC,CAK/D"}
@@ -16,6 +16,9 @@ import { CHAT_WALL_CLOCK_MS_ENV, resolveChatWallClockMs, } from "./chat-lane.js"
16
16
  import { createSupabaseChatTransport } from "./chat-transport.js";
17
17
  import { getChatEngine } from "./engines/registry.js";
18
18
  import { writeMcpConfig } from "./mcp-spawn.js";
19
+ // NS RUN-3: ANTHROPIC_API_KEY sourced from the vault secret store.
20
+ import { hydrateAnthropicApiKey } from "./provider-auth.js";
21
+ import { makeHttpSecretFetcher } from "./secrets/inject.js";
19
22
  import { ChatCircuitBreaker, getChatCircuit } from "./runtime/chat-circuit-breaker.js";
20
23
  import { CompanionMirrorSocket } from "./companion-mirror-socket.js";
21
24
  import { CompanionRunner, OwnerConversationSource, backfillActiveConversations, createConversationListener, createIdentityBroadcaster, deriveMirrorToken, resolveCompanionConfig, } from "./companion.js";
@@ -149,6 +152,23 @@ export async function companionCommand() {
149
152
  console.log(chalk.yellow(`[acc-runner] companion startup refresh failed: ${err.message}`));
150
153
  }
151
154
  }
155
+ // NS RUN-3: hydrate ANTHROPIC_API_KEY from the vault secret store, BEFORE
156
+ // the chat engine (below) can spawn anything that reads it. Defaults to a
157
+ // no-op (source "env") so existing companions are byte-identical until an
158
+ // operator opts in via ACC_RUNNER_ANTHROPIC_KEY_SOURCE=secret-store. The
159
+ // resolved key is cached inside provider-auth.ts (anthropicApiKey()'s
160
+ // fallback) — the return value here is intentionally discarded rather than
161
+ // written to process.env.ANTHROPIC_API_KEY, which the ambient-key guard
162
+ // (scripts/ci/no-ambient-anthropic-key.mjs) strictly forbids in this tree.
163
+ try {
164
+ await hydrateAnthropicApiKey(process.env, {
165
+ fetcher: makeHttpSecretFetcher({ publicUrl: cfg.publicUrl, jwt: session.access_token }),
166
+ agentId: session.runner_id,
167
+ });
168
+ }
169
+ catch (err) {
170
+ throw new Error(`ANTHROPIC_API_KEY secret-store hydration failed: ${err instanceof Error ? err.message : String(err)}`);
171
+ }
152
172
  let supabase = createRunnerClient(cfg, session.access_token, session.realtime_config);
153
173
  const breaker = new ChatCircuitBreaker();
154
174
  await breaker.load();
@@ -1 +1 @@
1
- {"version":3,"file":"companion-run.js","sourceRoot":"","sources":["../src/companion-run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"companion-run.js","sourceRoot":"","sources":["../src/companion-run.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -65,6 +65,25 @@ export interface RunnerConfig {
65
65
  * keep compiling; a missing value is treated as off.
66
66
  */
67
67
  selfUpdateOn426?: boolean;
68
+ /**
69
+ * LOCAL-REPO-CLI: local repos registered on THIS machine, as
70
+ * `{ "local.<frag>/<name>": "/abs/path/to/working/copy" }`.
71
+ *
72
+ * A local repo is the second way to attach a repo to a project (the first
73
+ * being the GitHub App). It is a working copy that exists on one machine and
74
+ * nowhere else, so the absolute path is deliberately a MACHINE-LOCAL fact:
75
+ * `acc repo add-local` writes it to the `local-repos` object in
76
+ * ~/.config/acc-runner/config.json and the server never learns it. The server
77
+ * only records the coarser "repo X is served by machine Y" binding
78
+ * (acc.repo_machine_assignments), and this map is how the runner turns that
79
+ * back into a directory at task time.
80
+ *
81
+ * Resolution: config.json `local-repos` only — there is no env override,
82
+ * because a set of repo→path pairs does not fit a scalar var and the CLI that
83
+ * writes the file is the only sanctioned author. Absent ⇒ {} ⇒ byte-identical
84
+ * to pre-LOCAL-REPO-CLI behaviour (no task carries a local.* slug).
85
+ */
86
+ localRepos?: Record<string, string>;
68
87
  }
69
88
  export type ConfigSource = "env" | "file" | "bootstrap" | "default";
70
89
  /**
@@ -206,6 +225,59 @@ export type RunnerCapability = (typeof RUNNER_CAPABILITY_VOCABULARY)[number];
206
225
  * CLI startup, not after a task assignment fires.
207
226
  */
208
227
  export declare function assertRunnerCapabilityArray(arr: readonly string[], context: string): asserts arr is RunnerCapability[];
228
+ /**
229
+ * Absolute path of the runner's user config file — $XDG_CONFIG_HOME/acc-runner/
230
+ * config.json, else ~/.config/acc-runner/config.json. Exported because
231
+ * LOCAL-REPO-CLI is the first feature that WRITES this file (every other
232
+ * consumer only reads it), and both the writer and the "edit this file by hand
233
+ * instead" guidance in `acc repo add-local` need to name it.
234
+ */
235
+ export declare function userConfigFilePath(): string;
236
+ /**
237
+ * LOCAL-REPO-CLI: normalize a raw `local-repos` value into a slug→path map.
238
+ * Slugs are lower-cased (repoKey semantics — the task's repo arrives folded);
239
+ * paths are kept verbatim beyond a trim, because `~` expansion happens at use
240
+ * time via expandHomePath and a path is not ours to rewrite. Anything that is
241
+ * not a string→non-empty-string pair is dropped, so a hand-edited config with
242
+ * one junk entry still resolves the rest.
243
+ */
244
+ export declare function parseLocalRepos(raw: unknown): Record<string, string>;
245
+ /**
246
+ * Read the `local-repos` map from config.json. Missing file, malformed JSON or
247
+ * an absent field returns {} — best-effort, never throws: a runner that cannot
248
+ * read its config file should still serve GitHub-backed tasks.
249
+ */
250
+ export declare function loadLocalReposFromConfigFile(): Record<string, string>;
251
+ /**
252
+ * LOCAL-REPO-CLI: the working-copy path for a task's repo, or null when the
253
+ * repo is not a local one on this machine.
254
+ *
255
+ * Case-insensitive because the server folds slugs to lower case and a task row
256
+ * may carry either form. Returns null (rather than throwing) for an unknown
257
+ * slug so the caller falls through to its normal GitHub resolution — a runner
258
+ * that serves both lanes is the expected shape.
259
+ */
260
+ export declare function localRepoPathFor(cfg: Pick<RunnerConfig, "localRepos">, repo: string | null | undefined): string | null;
261
+ /**
262
+ * LOCAL-REPO-CLI: record a local repo in config.json, preserving every other
263
+ * key the operator (or a previous version) put there.
264
+ *
265
+ * Two fields move together on purpose. `local-repos[slug]` is how the runner
266
+ * finds the working copy, and `repos` is what the register_runner caps payload
267
+ * advertises as this machine's served set — and a non-empty `repos` that omits
268
+ * the new slug would make the runner silently decline the very tasks the
269
+ * registration exists to serve (canServeRepo / servedReposFromCaps intersect
270
+ * against it, and so does acc.runner_effective_repos). An EMPTY `repos` means
271
+ * "serve everything", which already covers the new slug, so it is left empty
272
+ * rather than being narrowed to a one-element list.
273
+ *
274
+ * Returns what changed so the command can tell the operator whether their
275
+ * runner needs a restart to re-advertise its caps.
276
+ */
277
+ export declare function writeLocalRepoToConfigFile(slug: string, repoDir: string, configPath?: string): {
278
+ path: string;
279
+ addedToServedRepos: boolean;
280
+ };
209
281
  /**
210
282
  * v0.8.2: Scan a list of absolute candidate paths and return the first
211
283
  * that exists on disk. Returns null when none exist so loadConfig() can
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/config.js CHANGED
@@ -341,18 +341,128 @@ function loadWorktreeRepoPathFromConfigFile() {
341
341
  return value.trim();
342
342
  return null;
343
343
  }
344
- function readUserConfigFile() {
344
+ /**
345
+ * Absolute path of the runner's user config file — $XDG_CONFIG_HOME/acc-runner/
346
+ * config.json, else ~/.config/acc-runner/config.json. Exported because
347
+ * LOCAL-REPO-CLI is the first feature that WRITES this file (every other
348
+ * consumer only reads it), and both the writer and the "edit this file by hand
349
+ * instead" guidance in `acc repo add-local` need to name it.
350
+ */
351
+ export function userConfigFilePath() {
345
352
  const base = process.env.XDG_CONFIG_HOME?.trim() ||
346
353
  path.resolve(os.homedir(), ".config");
347
- const file = path.resolve(base, "acc-runner", "config.json");
354
+ return path.resolve(base, "acc-runner", "config.json");
355
+ }
356
+ function readUserConfigFile() {
348
357
  try {
349
- const raw = fs.readFileSync(file, "utf8");
358
+ const raw = fs.readFileSync(userConfigFilePath(), "utf8");
350
359
  return JSON.parse(raw);
351
360
  }
352
361
  catch {
353
362
  return null;
354
363
  }
355
364
  }
365
+ /**
366
+ * LOCAL-REPO-CLI: normalize a raw `local-repos` value into a slug→path map.
367
+ * Slugs are lower-cased (repoKey semantics — the task's repo arrives folded);
368
+ * paths are kept verbatim beyond a trim, because `~` expansion happens at use
369
+ * time via expandHomePath and a path is not ours to rewrite. Anything that is
370
+ * not a string→non-empty-string pair is dropped, so a hand-edited config with
371
+ * one junk entry still resolves the rest.
372
+ */
373
+ export function parseLocalRepos(raw) {
374
+ if (!raw || typeof raw !== "object" || Array.isArray(raw))
375
+ return {};
376
+ const out = {};
377
+ for (const [slug, value] of Object.entries(raw)) {
378
+ if (typeof value !== "string")
379
+ continue;
380
+ const key = slug.trim().toLowerCase();
381
+ const dir = value.trim();
382
+ if (!key || !dir)
383
+ continue;
384
+ out[key] = dir;
385
+ }
386
+ return out;
387
+ }
388
+ /**
389
+ * Read the `local-repos` map from config.json. Missing file, malformed JSON or
390
+ * an absent field returns {} — best-effort, never throws: a runner that cannot
391
+ * read its config file should still serve GitHub-backed tasks.
392
+ */
393
+ export function loadLocalReposFromConfigFile() {
394
+ return parseLocalRepos(readUserConfigFile()?.["local-repos"]);
395
+ }
396
+ /**
397
+ * LOCAL-REPO-CLI: the working-copy path for a task's repo, or null when the
398
+ * repo is not a local one on this machine.
399
+ *
400
+ * Case-insensitive because the server folds slugs to lower case and a task row
401
+ * may carry either form. Returns null (rather than throwing) for an unknown
402
+ * slug so the caller falls through to its normal GitHub resolution — a runner
403
+ * that serves both lanes is the expected shape.
404
+ */
405
+ export function localRepoPathFor(cfg, repo) {
406
+ const key = (repo ?? "").trim().toLowerCase();
407
+ if (!key)
408
+ return null;
409
+ return cfg.localRepos?.[key] ?? null;
410
+ }
411
+ /**
412
+ * LOCAL-REPO-CLI: record a local repo in config.json, preserving every other
413
+ * key the operator (or a previous version) put there.
414
+ *
415
+ * Two fields move together on purpose. `local-repos[slug]` is how the runner
416
+ * finds the working copy, and `repos` is what the register_runner caps payload
417
+ * advertises as this machine's served set — and a non-empty `repos` that omits
418
+ * the new slug would make the runner silently decline the very tasks the
419
+ * registration exists to serve (canServeRepo / servedReposFromCaps intersect
420
+ * against it, and so does acc.runner_effective_repos). An EMPTY `repos` means
421
+ * "serve everything", which already covers the new slug, so it is left empty
422
+ * rather than being narrowed to a one-element list.
423
+ *
424
+ * Returns what changed so the command can tell the operator whether their
425
+ * runner needs a restart to re-advertise its caps.
426
+ */
427
+ export function writeLocalRepoToConfigFile(slug, repoDir, configPath = userConfigFilePath()) {
428
+ const key = slug.trim().toLowerCase();
429
+ const dir = repoDir.trim();
430
+ if (!key || !dir) {
431
+ throw new Error("writeLocalRepoToConfigFile needs a non-empty slug and path");
432
+ }
433
+ let existing = {};
434
+ try {
435
+ const parsed = JSON.parse(fs.readFileSync(configPath, "utf8"));
436
+ if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) {
437
+ existing = parsed;
438
+ }
439
+ }
440
+ catch {
441
+ // Missing or unreadable file: start from {}. A MALFORMED file is the one
442
+ // case worth refusing — silently replacing an operator's broken-but-real
443
+ // config would lose their repo-path / capabilities settings.
444
+ if (fs.existsSync(configPath)) {
445
+ const raw = fs.readFileSync(configPath, "utf8");
446
+ if (raw.trim()) {
447
+ throw new Error(`${configPath} is not valid JSON — fix or move it, then re-run (refusing to overwrite it)`);
448
+ }
449
+ }
450
+ }
451
+ const localRepos = parseLocalRepos(existing["local-repos"]);
452
+ localRepos[key] = dir;
453
+ existing["local-repos"] = localRepos;
454
+ const served = Array.isArray(existing.repos)
455
+ ? existing.repos.filter((r) => typeof r === "string")
456
+ : [];
457
+ let addedToServedRepos = false;
458
+ if (served.length > 0 && !served.some((r) => r.trim().toLowerCase() === key)) {
459
+ existing.repos = [...served, key];
460
+ addedToServedRepos = true;
461
+ }
462
+ fs.mkdirSync(path.dirname(configPath), { recursive: true });
463
+ fs.writeFileSync(configPath, `${JSON.stringify(existing, null, 2)}\n`, "utf8");
464
+ return { path: configPath, addedToServedRepos };
465
+ }
356
466
  /**
357
467
  * v0.8.2: Scan a list of absolute candidate paths and return the first
358
468
  * that exists on disk. Returns null when none exist so loadConfig() can
@@ -648,6 +758,7 @@ export function loadConfig() {
648
758
  worktreeRepoPath,
649
759
  cloneOnDemand: loadCloneOnDemand(),
650
760
  selfUpdateOn426: loadSelfUpdateOn426(),
761
+ localRepos: loadLocalReposFromConfigFile(),
651
762
  };
652
763
  }
653
764
  /**
@@ -692,6 +803,9 @@ export function configSources(bootstrap) {
692
803
  : readUserConfigFile()?.["self-update-on-426"] !== undefined
693
804
  ? "file"
694
805
  : "default",
806
+ // LOCAL-REPO-CLI: config.json is the ONLY author (no env form), so the
807
+ // source is "file" whenever an entry exists and "default" ({}) otherwise.
808
+ localRepos: Object.keys(loadLocalReposFromConfigFile()).length > 0 ? "file" : "default",
695
809
  };
696
810
  }
697
811
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,21 @@ export interface ClaudeUsage {
29
29
  cache_creation_input_tokens?: number;
30
30
  cache_read_input_tokens?: number;
31
31
  }
32
+ /**
33
+ * COST-ATTR-1: one entry of the `modelUsage` map Claude Code emits in its
34
+ * `--output-format=json` envelope, keyed by the CONCRETE model id that served
35
+ * the turn (e.g. `claude-sonnet-4-6`). Field names are camelCase there, unlike
36
+ * the snake_case top-level `usage` block. Every field is optional because the
37
+ * shape varies across CLI builds — only the KEY is load-bearing for
38
+ * attribution.
39
+ */
40
+ export interface ClaudeModelUsage {
41
+ inputTokens?: number;
42
+ outputTokens?: number;
43
+ cacheReadInputTokens?: number;
44
+ cacheCreationInputTokens?: number;
45
+ costUSD?: number;
46
+ }
32
47
  export interface NormalizedUsage {
33
48
  input_tokens: number;
34
49
  output_tokens: number;
@@ -75,9 +90,39 @@ export declare function priceUsdCents(model: string, usage: NormalizedUsage): nu
75
90
  export interface ClaudeJsonOutput {
76
91
  result?: string;
77
92
  model?: string;
93
+ /** COST-ATTR-1: per-model usage map; its keys are the concrete model ids. */
94
+ modelUsage?: Record<string, ClaudeModelUsage>;
78
95
  usage?: ClaudeUsage;
79
96
  }
80
97
  export declare function parseClaudeJson(stdout: string): ClaudeJsonOutput | null;
98
+ /**
99
+ * COST-ATTR-1 — the token written to `acc.cost_events.model` when NOTHING
100
+ * names the model that produced the spend: neither the engine envelope nor
101
+ * the task's model pin. Deliberately NOT `unknown` (the value 1,303/1,303
102
+ * historical rows carry, which conflated "nobody looked" with "nothing to
103
+ * find") and deliberately specific, so an operator can tell an unattributable
104
+ * row from an attributed one at a glance. `acc.record_cost_event` treats it as
105
+ * a request to resolve the binding server-side (task pin -> project -> org,
106
+ * DEC-P9) and only persists it when that chain is empty too.
107
+ */
108
+ export declare const UNRESOLVED_MODEL = "unresolved";
109
+ /** True when a model string carries no attribution information. */
110
+ export declare function isPlaceholderModel(model: string | null | undefined): boolean;
111
+ /**
112
+ * COST-ATTR-1 — the concrete model id an engine result actually names, or null.
113
+ *
114
+ * WHY THIS IS NOT JUST `parsed.model`. Claude Code's `--output-format=json`
115
+ * envelope does not always carry a top-level `model` key; recent CLI builds
116
+ * report the model(s) that served the run in `modelUsage`, keyed by model id.
117
+ * `buildCostEvent` read `parsed?.model` only, so on those builds the whole
118
+ * chain fell through to the `unknown` literal and every by-model / by-agent
119
+ * rollup on the Cost surface came back empty.
120
+ *
121
+ * When more than one model served one run (a fallback hop mid-session) the key
122
+ * with the most tokens wins — that is the model the spend is mostly FOR. Ties
123
+ * keep the first key, so the result is deterministic for a given envelope.
124
+ */
125
+ export declare function engineResultModel(parsed: ClaudeJsonOutput | null | undefined): string | null;
81
126
  /**
82
127
  * v0.12-MODEL-ALIAS — wire-format translation for the ACC model
83
128
  * registry. `acc.models.id` is the short alias the rest of ACC uses