@garuda-agent/garuda 0.18.2 → 0.19.0

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 (42) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +1 -1
  3. package/dist/{acpCommand-PUJHFWYU.js → acpCommand-SIFV5XBS.js} +6 -6
  4. package/dist/{advise-C777SZ5M.js → advise-EA7OIYSV.js} +12 -12
  5. package/dist/{anthropic-NQIZLD64.js → anthropic-6DKONNQG.js} +4 -2
  6. package/dist/{buildCheck-HB46NWLX.js → buildCheck-JNWGER5R.js} +4 -4
  7. package/dist/buildInfo-APQVLWI7.js +8 -0
  8. package/dist/{chunk-TWQ7V2L6.js → chunk-2THG7PEC.js} +2 -2
  9. package/dist/{chunk-6JQTPW3P.js → chunk-2TX3KY4M.js} +5 -5
  10. package/dist/{chunk-QXTHEFKP.js → chunk-5GF2VINR.js} +2 -2
  11. package/dist/{chunk-WK5NE6RY.js → chunk-A4SSBJ2P.js} +2 -2
  12. package/dist/{chunk-STVFWSIL.js → chunk-BFK432BK.js} +10 -10
  13. package/dist/{chunk-LWNMEGDF.js → chunk-CHAWBYB4.js} +2 -2
  14. package/dist/{chunk-A5DLAXB4.js → chunk-CKVF67VJ.js} +5 -5
  15. package/dist/{chunk-YEH2OONM.js → chunk-DRAZNXNP.js} +3 -3
  16. package/dist/{chunk-ZKT4P2PC.js → chunk-FALYVAFB.js} +2 -2
  17. package/dist/chunk-FBCVU2P2.js +9 -0
  18. package/dist/{chunk-LMKGSYJC.js → chunk-L5TZTKUV.js} +3 -1
  19. package/dist/{chunk-HP6EGFHV.js → chunk-MTJT3D3X.js} +3 -3
  20. package/dist/{chunk-2FIV2VZP.js → chunk-QE7E77IR.js} +3 -3
  21. package/dist/chunk-U6Z4WH3B.js +9 -0
  22. package/dist/{chunk-R7RCW4BQ.js → chunk-WXNIMQOA.js} +5 -5
  23. package/dist/{chunk-YAQ6QLKB.js → chunk-YIU5QGMV.js} +3 -3
  24. package/dist/cli/index.js +23 -23
  25. package/dist/{create-OACSGJ37.js → create-GHGJR3AY.js} +5 -5
  26. package/dist/{evalCommand-MRO6ENCA.js → evalCommand-GQWNI2YJ.js} +14 -14
  27. package/dist/{evalTune-VL5RHYOG.js → evalTune-LKEIFX7F.js} +13 -13
  28. package/dist/{inkChat-UDFX6GH6.js → inkChat-3YNJC7KE.js} +5 -5
  29. package/dist/{install-4ST5BNRG.js → install-BQVAOQHD.js} +3 -3
  30. package/dist/{jobCommand-ILOTYOX3.js → jobCommand-WPHZYBXM.js} +6 -6
  31. package/dist/{launchd-QG6R5RAK.js → launchd-JZ6Y6JIH.js} +4 -4
  32. package/dist/{lspCommand-X4FTTONR.js → lspCommand-4LYQRYXL.js} +3 -3
  33. package/dist/{manager-YH7722C2.js → manager-7MA6APCK.js} +3 -3
  34. package/dist/{nightCommand-XPWT6CQZ.js → nightCommand-RQKQGDTB.js} +6 -6
  35. package/dist/{remove-STX5UO7X.js → remove-S45S7ICN.js} +3 -3
  36. package/dist/{runner-EBF6EOYM.js → runner-EUXA5UCH.js} +7 -7
  37. package/dist/{setupCommand-YMF6I3MD.js → setupCommand-YHDRJTPZ.js} +2 -2
  38. package/dist/{tune-KSNKBPNJ.js → tune-XPBOEWU6.js} +11 -11
  39. package/package.json +5 -5
  40. package/dist/buildInfo-Z4P7QAQL.js +0 -8
  41. package/dist/chunk-CFDRP6XW.js +0 -9
  42. package/dist/chunk-E6YRCDSF.js +0 -9
package/CHANGELOG.md CHANGED
@@ -1,5 +1,28 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.19.0 (2026-11-06)
4
+
5
+ A security fix and the dependency majors. Sandboxed commands can no longer read the keys that the
6
+ `ant` CLI stores. The Anthropic SDK 1.x moves Garuda's requests to API version `2026-10-21` and
7
+ sends the key as `Authorization: Bearer` instead of `X-Api-Key`. Most setups notice nothing. If
8
+ your requests go through a gateway or proxy (for example with `ANTHROPIC_BASE_URL`) that reads
9
+ `X-Api-Key`, change it to read `Authorization`: the API takes either. This change is why the
10
+ version is 0.19.0, not 0.18.3.
11
+
12
+ - Security: sandboxed commands can no longer read `~/.config/anthropic/credentials`, where the `ant`
13
+ CLI stores keys. The SDK 1.x reads them too when it has no key.
14
+ - The Homebrew formula in the repository names 0.18.2 and its tarball hash.
15
+ - The Anthropic SDK is 1.6 (was 0.128). It uses API version `2026-10-21` and sends the key as
16
+ `Authorization: Bearer`. Garuda's requests needed no change: they send no `temperature`,
17
+ `top_p` or `top_k`, which that version refuses. A proxy in front of the API that reads
18
+ `X-Api-Key` must read `Authorization` now.
19
+ - undici is 8.12 (was 7.30). Its HTTP/2 default stays off for model requests: Garuda's
20
+ 20-minute wait for quiet streams was checked on HTTP/1.1. undici 8 needs Node.js 22.19 or newer;
21
+ Garuda already needs 22.23.4.
22
+ - The ACP SDK is 2.4 (was 1.7). Garuda speaks the same protocol, ACP version 1, and uses only its
23
+ stable parts. The SDK now refuses `session/new` before `initialize`, as the protocol says;
24
+ editors always send `initialize` first.
25
+
3
26
  ## 0.18.2 (2026-11-06)
4
27
 
5
28
  A fix release for repo evals (`garuda eval -s repo`, `garuda advise`). On macOS, 0.18.1 failed
package/README.md CHANGED
@@ -7,7 +7,7 @@ Website and docs: https://madhu-sv.github.io/garuda/
7
7
  Garuda is a coding agent for the terminal, and for editors over the Agent Client Protocol. It reads
8
8
  and edits your code, runs commands in an OS sandbox, and keeps an audit log of its permission
9
9
  decisions. It works with Claude and with OpenAI-compatible models, local ones too. This is version
10
- 0.18.2. Release notes: [CHANGELOG.md](CHANGELOG.md).
10
+ 0.19.0. Release notes: [CHANGELOG.md](CHANGELOG.md).
11
11
 
12
12
  ## What Garuda does on your machine
13
13
 
@@ -5,11 +5,11 @@ import {
5
5
  loadModelsConfig,
6
6
  providerKeySource,
7
7
  resolveModel
8
- } from "./chunk-2FIV2VZP.js";
8
+ } from "./chunk-QE7E77IR.js";
9
9
  import {
10
10
  Runtime,
11
11
  auditDirFor
12
- } from "./chunk-STVFWSIL.js";
12
+ } from "./chunk-BFK432BK.js";
13
13
  import "./chunk-G2AX7MGS.js";
14
14
  import "./chunk-ULAJPMY7.js";
15
15
  import "./chunk-65NUEOI7.js";
@@ -25,13 +25,13 @@ import {
25
25
  import "./chunk-MNE7HHX2.js";
26
26
  import {
27
27
  VERSION
28
- } from "./chunk-CFDRP6XW.js";
28
+ } from "./chunk-U6Z4WH3B.js";
29
29
  import "./chunk-5DEWP3YX.js";
30
30
  import "./chunk-PZS3V6P3.js";
31
31
  import "./chunk-QANRZW7W.js";
32
32
  import "./chunk-ATW7BNIG.js";
33
33
  import "./chunk-AOGFYUKG.js";
34
- import "./chunk-LMKGSYJC.js";
34
+ import "./chunk-L5TZTKUV.js";
35
35
  import "./chunk-BHZ6G65V.js";
36
36
  import "./chunk-P6XWWIEK.js";
37
37
  import "./chunk-UIRJOQQS.js";
@@ -49,7 +49,7 @@ async function acpCommand(options) {
49
49
  `);
50
50
  return 1;
51
51
  }
52
- const { setupCommand, terminalIO } = await import("./setupCommand-YMF6I3MD.js");
52
+ const { setupCommand, terminalIO } = await import("./setupCommand-YHDRJTPZ.js");
53
53
  return setupCommand({}, { io: await terminalIO() });
54
54
  }
55
55
  const output = protocolOutput(process.stdout, process.stderr);
@@ -192,4 +192,4 @@ export {
192
192
  prepare,
193
193
  protocolOutput
194
194
  };
195
- //# sourceMappingURL=acpCommand-PUJHFWYU.js.map
195
+ //# sourceMappingURL=acpCommand-SIFV5XBS.js.map
@@ -1,31 +1,31 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  taskHash
4
- } from "./chunk-6JQTPW3P.js";
4
+ } from "./chunk-2TX3KY4M.js";
5
5
  import {
6
6
  garudaCommit
7
- } from "./chunk-YAQ6QLKB.js";
7
+ } from "./chunk-YIU5QGMV.js";
8
8
  import {
9
9
  escapeHtml
10
10
  } from "./chunk-4BELTWP4.js";
11
11
  import {
12
12
  BUILD_COMMIT
13
- } from "./chunk-E6YRCDSF.js";
13
+ } from "./chunk-FBCVU2P2.js";
14
14
  import {
15
15
  compareReports,
16
16
  costPerPass,
17
17
  formatComparison,
18
18
  loadReport,
19
19
  repoEvalTasks
20
- } from "./chunk-A5DLAXB4.js";
20
+ } from "./chunk-CKVF67VJ.js";
21
21
  import {
22
22
  loadModelsConfig,
23
23
  resolveModel
24
- } from "./chunk-2FIV2VZP.js";
24
+ } from "./chunk-QE7E77IR.js";
25
25
  import "./chunk-AX3A5KPH.js";
26
26
  import "./chunk-2OYTNNUJ.js";
27
27
  import "./chunk-NXJ4XLB5.js";
28
- import "./chunk-STVFWSIL.js";
28
+ import "./chunk-BFK432BK.js";
29
29
  import "./chunk-G2AX7MGS.js";
30
30
  import "./chunk-ULAJPMY7.js";
31
31
  import "./chunk-65NUEOI7.js";
@@ -42,15 +42,15 @@ import "./chunk-B25VL4RU.js";
42
42
  import "./chunk-MNE7HHX2.js";
43
43
  import {
44
44
  VERSION
45
- } from "./chunk-CFDRP6XW.js";
45
+ } from "./chunk-U6Z4WH3B.js";
46
46
  import "./chunk-5DEWP3YX.js";
47
47
  import "./chunk-PZS3V6P3.js";
48
48
  import "./chunk-QANRZW7W.js";
49
49
  import "./chunk-ATW7BNIG.js";
50
- import "./chunk-WK5NE6RY.js";
50
+ import "./chunk-A4SSBJ2P.js";
51
51
  import "./chunk-AOGFYUKG.js";
52
- import "./chunk-QXTHEFKP.js";
53
- import "./chunk-LMKGSYJC.js";
52
+ import "./chunk-5GF2VINR.js";
53
+ import "./chunk-L5TZTKUV.js";
54
54
  import "./chunk-BHZ6G65V.js";
55
55
  import "./chunk-P6XWWIEK.js";
56
56
  import "./chunk-UIRJOQQS.js";
@@ -247,7 +247,7 @@ async function runAdvise(options) {
247
247
  );
248
248
  return 1;
249
249
  }
250
- const { repoSuite, runEvalCommand } = await import("./evalCommand-MRO6ENCA.js");
250
+ const { repoSuite, runEvalCommand } = await import("./evalCommand-GQWNI2YJ.js");
251
251
  const suite = await repoSuite();
252
252
  if (typeof suite === "string") {
253
253
  process.stderr.write(`${suite}
@@ -430,4 +430,4 @@ export {
430
430
  runAdvise,
431
431
  sumKnown
432
432
  };
433
- //# sourceMappingURL=advise-C777SZ5M.js.map
433
+ //# sourceMappingURL=advise-EA7OIYSV.js.map
@@ -42,11 +42,12 @@ function withHiddenThinking(response) {
42
42
  };
43
43
  }
44
44
  var STREAM_IDLE_MS = 20 * 6e4;
45
+ var STREAM_ALLOW_H2 = false;
45
46
  var dispatchers = /* @__PURE__ */ new Map();
46
47
  function streamFetch(idleMs = STREAM_IDLE_MS) {
47
48
  let agent = dispatchers.get(idleMs);
48
49
  if (agent === void 0) {
49
- agent = new Agent({ bodyTimeout: idleMs });
50
+ agent = new Agent({ bodyTimeout: idleMs, allowH2: STREAM_ALLOW_H2 });
50
51
  dispatchers.set(idleMs, agent);
51
52
  }
52
53
  const dispatcher = agent;
@@ -320,6 +321,7 @@ export {
320
321
  AnthropicClient,
321
322
  BATCH_CHECK_TIMEOUT_MS,
322
323
  BATCH_POLL_MS,
324
+ STREAM_ALLOW_H2,
323
325
  STREAM_IDLE_MS,
324
326
  WEB_SEARCH_TOOL,
325
327
  clientOptions,
@@ -330,4 +332,4 @@ export {
330
332
  toWireTools,
331
333
  withHiddenThinking
332
334
  };
333
- //# sourceMappingURL=anthropic-NQIZLD64.js.map
335
+ //# sourceMappingURL=anthropic-6DKONNQG.js.map
@@ -3,9 +3,9 @@ import {
3
3
  CHAT_STALE,
4
4
  garudaCommit,
5
5
  staleBuildNote
6
- } from "./chunk-YAQ6QLKB.js";
7
- import "./chunk-QXTHEFKP.js";
8
- import "./chunk-LMKGSYJC.js";
6
+ } from "./chunk-YIU5QGMV.js";
7
+ import "./chunk-5GF2VINR.js";
8
+ import "./chunk-L5TZTKUV.js";
9
9
  import "./chunk-BHZ6G65V.js";
10
10
  import "./chunk-P6XWWIEK.js";
11
11
  import "./chunk-UIRJOQQS.js";
@@ -16,4 +16,4 @@ export {
16
16
  garudaCommit,
17
17
  staleBuildNote
18
18
  };
19
- //# sourceMappingURL=buildCheck-HB46NWLX.js.map
19
+ //# sourceMappingURL=buildCheck-JNWGER5R.js.map
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ BUILD_COMMIT
4
+ } from "./chunk-FBCVU2P2.js";
5
+ export {
6
+ BUILD_COMMIT
7
+ };
8
+ //# sourceMappingURL=buildInfo-APQVLWI7.js.map
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  hostCommand,
4
4
  shellWord
5
- } from "./chunk-QXTHEFKP.js";
5
+ } from "./chunk-5GF2VINR.js";
6
6
  import {
7
7
  JOBS_DIR
8
8
  } from "./chunk-VTMD5IHD.js";
@@ -154,4 +154,4 @@ export {
154
154
  nightAgentTime,
155
155
  removeAgent
156
156
  };
157
- //# sourceMappingURL=chunk-TWQ7V2L6.js.map
157
+ //# sourceMappingURL=chunk-2THG7PEC.js.map
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  garudaCommit
4
- } from "./chunk-YAQ6QLKB.js";
4
+ } from "./chunk-YIU5QGMV.js";
5
5
  import {
6
6
  BUILD_COMMIT
7
- } from "./chunk-E6YRCDSF.js";
7
+ } from "./chunk-FBCVU2P2.js";
8
8
  import {
9
9
  byTask,
10
10
  consistency,
@@ -14,10 +14,10 @@ import {
14
14
  spread,
15
15
  stepsSd,
16
16
  unexpectedChanges
17
- } from "./chunk-A5DLAXB4.js";
17
+ } from "./chunk-CKVF67VJ.js";
18
18
  import {
19
19
  VERSION
20
- } from "./chunk-CFDRP6XW.js";
20
+ } from "./chunk-U6Z4WH3B.js";
21
21
 
22
22
  // src/evals/report.ts
23
23
  import { createHash } from "crypto";
@@ -85,4 +85,4 @@ export {
85
85
  taskHash,
86
86
  reportV2
87
87
  };
88
- //# sourceMappingURL=chunk-6JQTPW3P.js.map
88
+ //# sourceMappingURL=chunk-2TX3KY4M.js.map
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  DEFAULT_ENV_ALLOWLIST
4
- } from "./chunk-LMKGSYJC.js";
4
+ } from "./chunk-L5TZTKUV.js";
5
5
 
6
6
  // src/jobs/git.ts
7
7
  var GIT_TIMEOUT_MS = 12e4;
@@ -46,4 +46,4 @@ export {
46
46
  git,
47
47
  hostCommand
48
48
  };
49
- //# sourceMappingURL=chunk-QXTHEFKP.js.map
49
+ //# sourceMappingURL=chunk-5GF2VINR.js.map
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  JobGitError,
4
4
  git
5
- } from "./chunk-QXTHEFKP.js";
5
+ } from "./chunk-5GF2VINR.js";
6
6
  import {
7
7
  inWriteScope
8
8
  } from "./chunk-UIRJOQQS.js";
@@ -155,4 +155,4 @@ export {
155
155
  outsideScope,
156
156
  jobChanges
157
157
  };
158
- //# sourceMappingURL=chunk-WK5NE6RY.js.map
158
+ //# sourceMappingURL=chunk-A4SSBJ2P.js.map
@@ -66,7 +66,7 @@ import {
66
66
  } from "./chunk-MNE7HHX2.js";
67
67
  import {
68
68
  VERSION
69
- } from "./chunk-CFDRP6XW.js";
69
+ } from "./chunk-U6Z4WH3B.js";
70
70
  import {
71
71
  TrustStore
72
72
  } from "./chunk-5DEWP3YX.js";
@@ -99,7 +99,7 @@ import {
99
99
  isSensitive,
100
100
  loadSettings,
101
101
  presetFor
102
- } from "./chunk-LMKGSYJC.js";
102
+ } from "./chunk-L5TZTKUV.js";
103
103
  import {
104
104
  EFFORTS,
105
105
  ZERO_USAGE,
@@ -9684,7 +9684,7 @@ ${neutralizeTags(output)}`
9684
9684
  text: "There is no finished plan in this chat. Make one in plan mode (/plan), then type /schedule."
9685
9685
  };
9686
9686
  }
9687
- const { createJob } = await import("./create-OACSGJ37.js");
9687
+ const { createJob } = await import("./create-GHGJR3AY.js");
9688
9688
  const created = await createJob({
9689
9689
  root: this.root,
9690
9690
  executor: this.executor,
@@ -9767,7 +9767,7 @@ ${result.stderr.text}`)
9767
9767
  */
9768
9768
  async cancelJob(id2, agent = {}) {
9769
9769
  const { loadJob, saveJob } = await import("./job-7JOI4YIQ.js");
9770
- const { defaultAgentEnv, nightSpec, removeAgent, removeSpec } = await import("./launchd-QG6R5RAK.js");
9770
+ const { defaultAgentEnv, nightSpec, removeAgent, removeSpec } = await import("./launchd-JZ6Y6JIH.js");
9771
9771
  if (id2 === "night") {
9772
9772
  const removed = await removeSpec(
9773
9773
  agent.executor ?? this.executor,
@@ -9799,8 +9799,8 @@ ${result.stderr.text}`)
9799
9799
  */
9800
9800
  async deleteJob(id2, signal, agent = {}) {
9801
9801
  const { loadJob } = await import("./job-7JOI4YIQ.js");
9802
- const { defaultAgentEnv, removeAgent } = await import("./launchd-QG6R5RAK.js");
9803
- const { jobLeftovers, removeJob } = await import("./remove-STX5UO7X.js");
9802
+ const { defaultAgentEnv, removeAgent } = await import("./launchd-JZ6Y6JIH.js");
9803
+ const { jobLeftovers, removeJob } = await import("./remove-S45S7ICN.js");
9804
9804
  let job;
9805
9805
  try {
9806
9806
  job = await loadJob(this.root, id2);
@@ -10142,7 +10142,7 @@ ${result.stderr.text}`)
10142
10142
  }
10143
10143
  /** Install a language server into ~/.garuda/lsp (the user asked for it). */
10144
10144
  async installLsp(language, signal) {
10145
- const { installServer } = await import("./install-4ST5BNRG.js");
10145
+ const { installServer } = await import("./install-BQVAOQHD.js");
10146
10146
  const result = await installServer(language, {
10147
10147
  executor: this.executor,
10148
10148
  home: this.lspHome,
@@ -10153,7 +10153,7 @@ ${result.stderr.text}`)
10153
10153
  }
10154
10154
  /** autoInstall (~/.garuda/lsp.json): ask before a managed install. */
10155
10155
  async askInstall(language, signal) {
10156
- const { installCommand } = await import("./install-4ST5BNRG.js");
10156
+ const { installCommand } = await import("./install-BQVAOQHD.js");
10157
10157
  const { LANGUAGE_LABELS } = await import("./manager-4PMSXT47.js");
10158
10158
  const { managedLabel, managedDir } = await import("./servers-6YDGWOZ6.js");
10159
10159
  const dir = managedDir(language, this.lspHome);
@@ -10186,7 +10186,7 @@ ${result.stderr.text}`)
10186
10186
  async startMcp(signal) {
10187
10187
  if (this.mcpServers.length === 0) return;
10188
10188
  this.mcpStarted ??= (async () => {
10189
- const { McpManager } = await import("./manager-YH7722C2.js");
10189
+ const { McpManager } = await import("./manager-7MA6APCK.js");
10190
10190
  const { AuthStore } = await import("./oauth-W6OK6XXO.js");
10191
10191
  const manager = new McpManager({
10192
10192
  root: this.root,
@@ -10485,4 +10485,4 @@ export {
10485
10485
  modelFacts,
10486
10486
  Runtime
10487
10487
  };
10488
- //# sourceMappingURL=chunk-STVFWSIL.js.map
10488
+ //# sourceMappingURL=chunk-BFK432BK.js.map
@@ -5,7 +5,7 @@ import {
5
5
  PYPROJECT,
6
6
  PYTEST_CHECK,
7
7
  lines
8
- } from "./chunk-A5DLAXB4.js";
8
+ } from "./chunk-CKVF67VJ.js";
9
9
 
10
10
  // src/evals/taskKit.ts
11
11
  var NODE_PKG = lines("{", ' "type": "module",', ' "private": true', "}");
@@ -5255,4 +5255,4 @@ export {
5255
5255
  chooseTasks,
5256
5256
  requiredToolchains
5257
5257
  };
5258
- //# sourceMappingURL=chunk-LWNMEGDF.js.map
5258
+ //# sourceMappingURL=chunk-CHAWBYB4.js.map
@@ -5,7 +5,7 @@ import {
5
5
  import {
6
6
  DEFAULT_MAX_STEPS,
7
7
  Runtime
8
- } from "./chunk-STVFWSIL.js";
8
+ } from "./chunk-BFK432BK.js";
9
9
  import {
10
10
  FileSessionStore,
11
11
  isCostIncomplete
@@ -16,7 +16,7 @@ import {
16
16
  import {
17
17
  LINK_CANDIDATES,
18
18
  cleanArgs
19
- } from "./chunk-WK5NE6RY.js";
19
+ } from "./chunk-A4SSBJ2P.js";
20
20
  import {
21
21
  MANIFEST,
22
22
  TEST_PATH,
@@ -25,13 +25,13 @@ import {
25
25
  import {
26
26
  git,
27
27
  shellWord
28
- } from "./chunk-QXTHEFKP.js";
28
+ } from "./chunk-5GF2VINR.js";
29
29
  import {
30
30
  DEFAULT_ENV_ALLOWLIST,
31
31
  HostExecutor,
32
32
  denyAround,
33
33
  parseSettings
34
- } from "./chunk-LMKGSYJC.js";
34
+ } from "./chunk-L5TZTKUV.js";
35
35
  import {
36
36
  pathMatches
37
37
  } from "./chunk-3NJNVZTK.js";
@@ -1777,4 +1777,4 @@ export {
1777
1777
  EVAL_BIOME_CONFIG,
1778
1778
  formatProject
1779
1779
  };
1780
- //# sourceMappingURL=chunk-A5DLAXB4.js.map
1780
+ //# sourceMappingURL=chunk-CKVF67VJ.js.map
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  taskHash
4
- } from "./chunk-6JQTPW3P.js";
4
+ } from "./chunk-2TX3KY4M.js";
5
5
  import {
6
6
  compareReports,
7
7
  costPerPass,
8
8
  formatComparison
9
- } from "./chunk-A5DLAXB4.js";
9
+ } from "./chunk-CKVF67VJ.js";
10
10
 
11
11
  // src/evals/tune.ts
12
12
  import { readFile } from "fs/promises";
@@ -331,4 +331,4 @@ export {
331
331
  parseProposal,
332
332
  tune
333
333
  };
334
- //# sourceMappingURL=chunk-YEH2OONM.js.map
334
+ //# sourceMappingURL=chunk-DRAZNXNP.js.map
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-EU7PA45O.js";
7
7
  import {
8
8
  DEFAULT_ENV_ALLOWLIST
9
- } from "./chunk-LMKGSYJC.js";
9
+ } from "./chunk-L5TZTKUV.js";
10
10
 
11
11
  // src/lsp/install.ts
12
12
  import { mkdir } from "fs/promises";
@@ -70,4 +70,4 @@ export {
70
70
  installCommand,
71
71
  installServer
72
72
  };
73
- //# sourceMappingURL=chunk-ZKT4P2PC.js.map
73
+ //# sourceMappingURL=chunk-FALYVAFB.js.map
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env node
2
+
3
+ // src/buildInfo.ts
4
+ var BUILD_COMMIT = true ? "fae9b2fd66841847b814316ddf7e428e88fcdccc" : void 0;
5
+
6
+ export {
7
+ BUILD_COMMIT
8
+ };
9
+ //# sourceMappingURL=chunk-FBCVU2P2.js.map
@@ -91,6 +91,8 @@ var DENY_READ_IN_HOME = [
91
91
  ".docker",
92
92
  ".config/gcloud",
93
93
  ".config/gh",
94
+ // The `ant` CLI's and the Anthropic SDK's stored keys (SDK 1.x reads them too, 0.18.3).
95
+ ".config/anthropic/credentials",
94
96
  ".netrc",
95
97
  ".npmrc",
96
98
  ".pypirc",
@@ -1671,4 +1673,4 @@ export {
1671
1673
  JOB_DENIAL,
1672
1674
  PermissionEngine
1673
1675
  };
1674
- //# sourceMappingURL=chunk-LMKGSYJC.js.map
1676
+ //# sourceMappingURL=chunk-L5TZTKUV.js.map
@@ -29,7 +29,7 @@ import {
29
29
  repoMapText,
30
30
  repoMapTool,
31
31
  verifyAuditDir
32
- } from "./chunk-STVFWSIL.js";
32
+ } from "./chunk-BFK432BK.js";
33
33
  import {
34
34
  hasReceipt
35
35
  } from "./chunk-4QRTTRVK.js";
@@ -524,7 +524,7 @@ async function jobsCommand(runtime, renderer, id) {
524
524
  return;
525
525
  }
526
526
  const jobs = await listJobs2(runtime.root);
527
- const { defaultAgentEnv, nightAgentTime } = await import("./launchd-QG6R5RAK.js");
527
+ const { defaultAgentEnv, nightAgentTime } = await import("./launchd-JZ6Y6JIH.js");
528
528
  const night = nightAgentTime(runtime.root, defaultAgentEnv());
529
529
  const nightLine = night === void 0 ? [] : [
530
530
  `Night shift: launchd starts the queue at ${night.toTimeString().slice(0, 5)} on ${night.toDateString()} (/jobs cancel night removes it).`
@@ -1350,4 +1350,4 @@ export {
1350
1350
  statusOf,
1351
1351
  CommandArgs
1352
1352
  };
1353
- //# sourceMappingURL=chunk-HP6EGFHV.js.map
1353
+ //# sourceMappingURL=chunk-MTJT3D3X.js.map
@@ -272,7 +272,7 @@ function resolveModel(spec, config = { providers: {}, models: {} }) {
272
272
  ...def.type === "anthropic" ? {
273
273
  async createBatch(env = process.env, options = {}) {
274
274
  const apiKey = providerKey(env, def.apiKeyEnv ?? "ANTHROPIC_API_KEY");
275
- const { AnthropicBatchClient } = await import("./anthropic-NQIZLD64.js");
275
+ const { AnthropicBatchClient } = await import("./anthropic-6DKONNQG.js");
276
276
  return new AnthropicBatchClient({ model, ...apiKey ? { apiKey } : {}, ...options });
277
277
  }
278
278
  } : {},
@@ -285,7 +285,7 @@ function resolveModel(spec, config = { providers: {}, models: {} }) {
285
285
  }
286
286
  if (def.type === "anthropic") {
287
287
  const key = providerKey(env, def.apiKeyEnv ?? "ANTHROPIC_API_KEY");
288
- const { AnthropicClient } = await import("./anthropic-NQIZLD64.js");
288
+ const { AnthropicClient } = await import("./anthropic-6DKONNQG.js");
289
289
  return new AnthropicClient({ model, ...key ? { apiKey: key } : {} });
290
290
  }
291
291
  const { OpenAICompatibleClient } = await import("./openaiCompatible-6TLDDW5U.js");
@@ -332,4 +332,4 @@ export {
332
332
  providerKeyValue,
333
333
  resolveModel
334
334
  };
335
- //# sourceMappingURL=chunk-2FIV2VZP.js.map
335
+ //# sourceMappingURL=chunk-QE7E77IR.js.map
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env node
2
+
3
+ // src/version.ts
4
+ var VERSION = "0.19.0";
5
+
6
+ export {
7
+ VERSION
8
+ };
9
+ //# sourceMappingURL=chunk-U6Z4WH3B.js.map
@@ -21,11 +21,11 @@ import {
21
21
  jobChanges,
22
22
  outsideScope,
23
23
  prepareWorktree
24
- } from "./chunk-WK5NE6RY.js";
24
+ } from "./chunk-A4SSBJ2P.js";
25
25
  import {
26
26
  defaultAgentEnv,
27
27
  removeAgent
28
- } from "./chunk-TWQ7V2L6.js";
28
+ } from "./chunk-2THG7PEC.js";
29
29
  import {
30
30
  jobReport
31
31
  } from "./chunk-3MRQJKUO.js";
@@ -42,11 +42,11 @@ import {
42
42
  JobGitError,
43
43
  git,
44
44
  hostCommand
45
- } from "./chunk-QXTHEFKP.js";
45
+ } from "./chunk-5GF2VINR.js";
46
46
  import {
47
47
  createExecutor,
48
48
  loadSettings
49
- } from "./chunk-LMKGSYJC.js";
49
+ } from "./chunk-L5TZTKUV.js";
50
50
  import {
51
51
  JOBS_DIR,
52
52
  loadJob,
@@ -352,4 +352,4 @@ export {
352
352
  msUntil,
353
353
  finishJob
354
354
  };
355
- //# sourceMappingURL=chunk-R7RCW4BQ.js.map
355
+ //# sourceMappingURL=chunk-WXNIMQOA.js.map
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  git
4
- } from "./chunk-QXTHEFKP.js";
4
+ } from "./chunk-5GF2VINR.js";
5
5
  import {
6
6
  HostExecutor
7
- } from "./chunk-LMKGSYJC.js";
7
+ } from "./chunk-L5TZTKUV.js";
8
8
 
9
9
  // src/buildCheck.ts
10
10
  import { existsSync } from "fs";
@@ -37,4 +37,4 @@ export {
37
37
  staleBuildNote,
38
38
  CHAT_STALE
39
39
  };
40
- //# sourceMappingURL=chunk-YAQ6QLKB.js.map
40
+ //# sourceMappingURL=chunk-YIU5QGMV.js.map