@iowarp/clio-coder 0.3.2 → 0.3.3

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 (115) hide show
  1. package/CHANGELOG.md +229 -457
  2. package/README.md +2 -2
  3. package/dist/{acp-BIYHVZIM.js → acp-P2AQILE2.js} +2 -2
  4. package/dist/{agents-YT6SSRIT.js → agents-72W3BI7I.js} +8 -8
  5. package/dist/assets/codewiki.json +1 -1
  6. package/dist/{chunk-WMSVI4G2.js → chunk-2DJ2KNFG.js} +3 -3
  7. package/dist/{chunk-2EHAIA3X.js → chunk-2TLUCQVG.js} +2 -2
  8. package/dist/{chunk-WVO7V2QY.js → chunk-4XUGQOHA.js} +2 -2
  9. package/dist/{chunk-IGLFWIYI.js → chunk-5UFT4SUX.js} +2 -2
  10. package/dist/{chunk-AO4RKG4M.js → chunk-6SGHMWE3.js} +3 -3
  11. package/dist/{chunk-X75S7HFS.js → chunk-COU2UHX6.js} +45 -19
  12. package/dist/{chunk-KJ5LWLOE.js → chunk-DSELYM6W.js} +2 -2
  13. package/dist/{chunk-G2DE3C7R.js → chunk-DUYJ5IO6.js} +2 -2
  14. package/dist/{chunk-EPVUXGXG.js → chunk-FNTMWMX5.js} +9 -9
  15. package/dist/{chunk-MNA4JGU4.js → chunk-J7CWMCQD.js} +2 -2
  16. package/dist/{chunk-MBS4V7ZP.js → chunk-KZWTDYJF.js} +4 -4
  17. package/dist/{chunk-LBNRH5WM.js → chunk-LM5TQCJZ.js} +3 -3
  18. package/dist/{chunk-OHHN2SO4.js → chunk-LW6DSM3M.js} +7 -7
  19. package/dist/{chunk-MQSRRFWA.js → chunk-LWLEKMDQ.js} +56 -2
  20. package/dist/{chunk-V4RXGQ5Q.js → chunk-OC7FIQPC.js} +2 -2
  21. package/dist/{chunk-3ZXDFGR5.js → chunk-PAJK6MAQ.js} +2 -2
  22. package/dist/{chunk-7EYHLWU7.js → chunk-PIWWS5BL.js} +3 -3
  23. package/dist/{chunk-6EJV5X2W.js → chunk-SRDMMSEP.js} +3 -3
  24. package/dist/{chunk-ARBGF5F7.js → chunk-TZK7PACC.js} +2 -2
  25. package/dist/{chunk-QTYWRVRA.js → chunk-UFIIWP2H.js} +2 -2
  26. package/dist/{chunk-J5HN4RYU.js → chunk-V6RTAOC2.js} +2 -2
  27. package/dist/{chunk-SRF2PJNW.js → chunk-VPAYEGVX.js} +2 -2
  28. package/dist/{chunk-77VKQEHF.js → chunk-X6IAEBZR.js} +2 -2
  29. package/dist/{chunk-4KLWL3UC.js → chunk-XBXAASKX.js} +2 -2
  30. package/dist/{chunk-MAW544W2.js → chunk-ZWMF7253.js} +4 -4
  31. package/dist/cli/index.js +17 -17
  32. package/dist/{clio-4LY5K2AC.js → clio-JOU4FXVA.js} +2 -2
  33. package/dist/{config-GTLUW2PR.js → config-XCDVKR23.js} +7 -7
  34. package/dist/{configure-R6A64DHX.js → configure-4GAP54ZW.js} +5 -5
  35. package/dist/{context-RW5HC47S.js → context-4UOGGLQ5.js} +6 -6
  36. package/dist/{context-JFZEJ7W5.js → context-77FM5DV5.js} +9 -9
  37. package/dist/{context-clear-6ZHBAZZT.js → context-clear-XXJRLCJJ.js} +6 -6
  38. package/dist/{dispatch-runner-VKBRCWQC.js → dispatch-runner-QPRDDBDX.js} +7 -7
  39. package/dist/{doctor-KI767GSN.js → doctor-HR46URBJ.js} +5 -5
  40. package/dist/{evidence-UA6AWDQQ.js → evidence-6HG2PY2B.js} +4 -4
  41. package/dist/{evolve-QNTFGV6Z.js → evolve-K7YU3NCY.js} +4 -4
  42. package/dist/{fleet-Q7UOMUSG.js → fleet-VY3HHKN6.js} +15 -15
  43. package/dist/{init-WBB65ZHQ.js → init-JYGXI3FK.js} +12 -12
  44. package/dist/{memory-MD3O64RI.js → memory-WFZMGYHX.js} +5 -5
  45. package/dist/{models-BZU34YWD.js → models-I5QWSEOM.js} +7 -7
  46. package/dist/{monitor-MEQA5C3I.js → monitor-GE4ID3IA.js} +5 -5
  47. package/dist/{orchestrator-CGFKEP27.js → orchestrator-EM5MC3HM.js} +1482 -1055
  48. package/dist/{run-IV4Q6RLN.js → run-ZU3QMZPZ.js} +18 -18
  49. package/dist/{skills-LQEKRDTN.js → skills-X5VXCRNQ.js} +2 -2
  50. package/dist/{skills-eval-3DC4HEWS.js → skills-eval-WKIHWTHR.js} +5 -5
  51. package/dist/{targets-C4SSGQOB.js → targets-SNCPI2NR.js} +8 -8
  52. package/dist/{terminal-lease-IT5JW2NR.js → terminal-lease-BNAHVHBS.js} +2 -2
  53. package/dist/{upgrade-7TT7SQ3G.js → upgrade-JQHHPQ4K.js} +7 -7
  54. package/dist/{usage-GV4PKT3M.js → usage-OR4O5SMZ.js} +5 -5
  55. package/dist/{verify-G6V4D2G7.js → verify-375KUB3Y.js} +4 -4
  56. package/dist/{wiki-generate-DQF6Z66B.js → wiki-generate-UEXP2ARI.js} +11 -11
  57. package/dist/worker/entry.js +8 -8
  58. package/docs/README.md +3 -3
  59. package/docs/acp.md +1 -1
  60. package/docs/alcf-provider.md +1 -1
  61. package/docs/architecture.md +2 -2
  62. package/docs/artifact-versions.md +1 -1
  63. package/docs/built-in-agents.md +1 -1
  64. package/docs/capacity-and-scheduling.md +1 -1
  65. package/docs/commands-and-modes.md +1 -1
  66. package/docs/configuration-and-targets.md +1 -1
  67. package/docs/context-engine.md +1 -1
  68. package/docs/development-pipeline.md +1 -1
  69. package/docs/documentation-coverage.md +2 -2
  70. package/docs/documentation-guide.md +1 -1
  71. package/docs/eval-runner.md +1 -1
  72. package/docs/evals-internal.md +1 -1
  73. package/docs/evidence-and-memory.md +2 -2
  74. package/docs/evolution.md +1 -1
  75. package/docs/exit-codes-and-output.md +1 -1
  76. package/docs/extensions-and-sharing.md +2 -2
  77. package/docs/fleet-dispatch.md +1 -1
  78. package/docs/installation-and-lifecycle.md +6 -6
  79. package/docs/middleware-and-components.md +1 -1
  80. package/docs/model-catalog.md +1 -1
  81. package/docs/observability.md +3 -3
  82. package/docs/performance-methodology.md +2 -2
  83. package/docs/proactive-memory.md +1 -1
  84. package/docs/prompt-envelope-and-tools.md +1 -1
  85. package/docs/provider-adapter-cookbook.md +1 -1
  86. package/docs/release-cut-checklist.md +30 -30
  87. package/docs/safety-model.md +2 -2
  88. package/docs/scientific-validation.md +3 -3
  89. package/docs/session-lifecycle.md +2 -2
  90. package/docs/skills-marketplace.md +1 -1
  91. package/docs/tool-usage.md +2 -2
  92. package/docs/trace-store.md +1 -1
  93. package/docs/troubleshooting.md +1 -1
  94. package/docs/tui-design.md +2 -2
  95. package/docs/worker-dispatch-mechanics.md +1 -1
  96. package/package.json +1 -1
  97. package/src/core/git-commit-attribution.ts +46 -21
  98. package/src/domains/config/keybindings.ts +3 -3
  99. package/src/interactive/chat-panel.ts +555 -244
  100. package/src/interactive/chat-renderer.ts +50 -19
  101. package/src/interactive/editor-submit.ts +26 -1
  102. package/src/interactive/footer/widgets.ts +22 -20
  103. package/src/interactive/footer-panel.ts +6 -1
  104. package/src/interactive/interactive-application.ts +2 -0
  105. package/src/interactive/interactive-event-projection.ts +12 -0
  106. package/src/interactive/interactive-slash-runtime.ts +12 -7
  107. package/src/interactive/overlays/ask-user.ts +146 -24
  108. package/src/interactive/renderers/tool-execution.ts +151 -56
  109. package/src/interactive/status/index.ts +12 -1
  110. package/src/interactive/status/reasoning.ts +87 -0
  111. package/src/interactive/status/summary.ts +13 -2
  112. package/src/interactive/transcript-detail.ts +120 -0
  113. package/src/tools/builtin-tool-catalog.ts +7 -1
  114. package/src/tools/presentation.ts +107 -0
  115. package/src/tools/registry.ts +6 -0
@@ -11,7 +11,7 @@ import {
11
11
  import {
12
12
  isTerminalRunEnvelope,
13
13
  taskBoardCounts
14
- } from "./chunk-MQSRRFWA.js";
14
+ } from "./chunk-LWLEKMDQ.js";
15
15
  import {
16
16
  SKILL_SUGGESTION_ANCHOR
17
17
  } from "./chunk-T6YILFSB.js";
@@ -24,7 +24,7 @@ import {
24
24
  import {
25
25
  reportCommitAttributionDiagnostic,
26
26
  withManagedGitCommitAttributionEnvironment
27
- } from "./chunk-X75S7HFS.js";
27
+ } from "./chunk-COU2UHX6.js";
28
28
  import {
29
29
  require_dist
30
30
  } from "./chunk-APJ265NV.js";
@@ -2092,4 +2092,4 @@ export {
2092
2092
  createMiddlewareToolChoiceControl,
2093
2093
  MiddlewareDomainModule
2094
2094
  };
2095
- //# sourceMappingURL=chunk-WMSVI4G2.js.map
2095
+ //# sourceMappingURL=chunk-2DJ2KNFG.js.map
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-A3CYT5EX.js";
6
6
  import {
7
7
  runCommandVector
8
- } from "./chunk-SRF2PJNW.js";
8
+ } from "./chunk-VPAYEGVX.js";
9
9
  import {
10
10
  withStateFileLockSync
11
11
  } from "./chunk-IKCO5N3L.js";
@@ -478,4 +478,4 @@ export {
478
478
  detectInteropAgents,
479
479
  InteropDomainModule
480
480
  };
481
- //# sourceMappingURL=chunk-2EHAIA3X.js.map
481
+ //# sourceMappingURL=chunk-2TLUCQVG.js.map
@@ -10,7 +10,7 @@ import {
10
10
  import {
11
11
  FAILURE_CAUSE_TAGS,
12
12
  buildEvidence
13
- } from "./chunk-6EJV5X2W.js";
13
+ } from "./chunk-SRDMMSEP.js";
14
14
  import {
15
15
  normalizeCostProvenance
16
16
  } from "./chunk-LZSJBIVT.js";
@@ -794,4 +794,4 @@ export {
794
794
  ObservabilityDomainModule,
795
795
  createObservabilityDomainModule
796
796
  };
797
- //# sourceMappingURL=chunk-WVO7V2QY.js.map
797
+ //# sourceMappingURL=chunk-4XUGQOHA.js.map
@@ -2,7 +2,7 @@ import { createRequire as __clioCreateRequire } from "node:module"; const requir
2
2
  import {
3
3
  readStateInfo,
4
4
  runDoctor
5
- } from "./chunk-QTYWRVRA.js";
5
+ } from "./chunk-UFIIWP2H.js";
6
6
  import {
7
7
  getVersionInfo
8
8
  } from "./chunk-XPLRXC72.js";
@@ -158,4 +158,4 @@ export {
158
158
  describeUpgradeNotice,
159
159
  LifecycleDomainModule
160
160
  };
161
- //# sourceMappingURL=chunk-IGLFWIYI.js.map
161
+ //# sourceMappingURL=chunk-5UFT4SUX.js.map
@@ -1,11 +1,11 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
2
  import {
3
3
  assistantTextFromEvent
4
- } from "./chunk-4KLWL3UC.js";
4
+ } from "./chunk-XBXAASKX.js";
5
5
  import {
6
6
  compileExecutionPlan,
7
7
  durableAssistantTextFromEvent
8
- } from "./chunk-6EJV5X2W.js";
8
+ } from "./chunk-SRDMMSEP.js";
9
9
  import {
10
10
  deriveExecutionRole
11
11
  } from "./chunk-GGXXDWE4.js";
@@ -274,4 +274,4 @@ export {
274
274
  compileScoutTransition,
275
275
  createDispatchRunEventRegistry
276
276
  };
277
- //# sourceMappingURL=chunk-AO4RKG4M.js.map
277
+ //# sourceMappingURL=chunk-6SGHMWE3.js.map
@@ -95,7 +95,17 @@ function attributeCommitMessage(originalMessage, evidence, enabled = true) {
95
95
  // src/core/git-commit-attribution.ts
96
96
  init_esm_shims();
97
97
  import { execFileSync } from "node:child_process";
98
- import { chmodSync, existsSync, mkdirSync, readFileSync, renameSync, rmSync, writeFileSync } from "node:fs";
98
+ import {
99
+ accessSync,
100
+ chmodSync,
101
+ existsSync,
102
+ constants as fsConstants,
103
+ mkdirSync,
104
+ readFileSync,
105
+ renameSync,
106
+ rmSync,
107
+ writeFileSync
108
+ } from "node:fs";
99
109
  import { join, resolve } from "node:path";
100
110
  var CLIO_GIT_COMMITS_ENABLED_ENV = "CLIO_CODER_GIT_COMMITS_ENABLED";
101
111
  var ASSISTED_ENV = "CLIO_CODER_COMMIT_ASSISTED";
@@ -200,27 +210,29 @@ case "$base_count" in
200
210
  ;;
201
211
  esac
202
212
 
203
- # A command may have moved into a different repository after Clio prepared the
204
- # environment. A repository with its own core.hooksPath gets its hook run and
205
- # is never attributed; composing an unknown setup is not attempted.
206
- if [ "$${DEFAULT_HOOKS_EQUIVALENT_ENV}" != '1' ] && git config --get core.hooksPath >/dev/null 2>&1; then
207
- custom_hooks=$(git config --path --get core.hooksPath 2>/dev/null || true)
213
+ # Resolve the current repository's default hooks directory before interpreting
214
+ # the environment prepared for the originating repository. A command may have
215
+ # moved into a different repository in between; an explicit default path is
216
+ # composable only while it still names this same repository's default.
217
+ common_dir=$(git rev-parse --git-common-dir 2>/dev/null || true)
218
+ common_dir_absolute=$(cd "$common_dir" 2>/dev/null && pwd -P || true)
219
+ case "$common_dir_absolute" in
220
+ '') default_hooks_directory=; default_hook= ;;
221
+ *) default_hooks_directory=$common_dir_absolute/hooks; default_hook=$default_hooks_directory/$hook_name ;;
222
+ esac
223
+
224
+ if git config --get core.hooksPath >/dev/null 2>&1 &&
225
+ [ "$${DEFAULT_HOOKS_EQUIVALENT_ENV}" != "$default_hooks_directory" ]; then
226
+ custom_hooks=$(git config --path --get core.hooksPath 2>/dev/null || true)
208
227
  case "$custom_hooks" in
209
228
  '') ;;
210
229
  /*) custom_hook=$custom_hooks/$hook_name ;;
211
230
  *) custom_hook=$PWD/$custom_hooks/$hook_name ;;
212
231
  esac
213
232
  if [ -n "$custom_hooks" ] && [ -x "$custom_hook" ]; then exec "$custom_hook" "$@"; fi
214
- exit 0
233
+ exit 0
215
234
  fi
216
235
 
217
- common_dir=$(git rev-parse --git-common-dir 2>/dev/null || true)
218
- case "$common_dir" in
219
- '') default_hook= ;;
220
- /*) default_hook=$common_dir/hooks/$hook_name ;;
221
- *) default_hook=$PWD/$common_dir/hooks/$hook_name ;;
222
- esac
223
-
224
236
  if [ "$hook_name" != 'prepare-commit-msg' ]; then
225
237
  if [ -n "$default_hook" ] && [ -x "$default_hook" ]; then exec "$default_hook" "$@"; fi
226
238
  exit 0
@@ -284,9 +296,21 @@ function installManagedHook(directory, name) {
284
296
  rmSync(temporary, { force: true });
285
297
  }
286
298
  }
299
+ function managedHooksDirectoryIsIntact(directory) {
300
+ try {
301
+ for (const name of MANAGED_HOOK_NAMES) {
302
+ const hook = join(directory, name);
303
+ if (readFileSync(hook, "utf8") !== MANAGED_HOOK_SCRIPT) return false;
304
+ accessSync(hook, fsConstants.X_OK);
305
+ }
306
+ return true;
307
+ } catch {
308
+ return false;
309
+ }
310
+ }
287
311
  function managedHooksDirectory() {
288
312
  const directory = join(clioStateDir(), "git-hooks", `v${MANAGED_HOOK_VERSION}`);
289
- if (installedHooksDirectory === directory && existsSync(join(directory, "prepare-commit-msg"))) return directory;
313
+ if (installedHooksDirectory === directory && managedHooksDirectoryIsIntact(directory)) return directory;
290
314
  mkdirSync(directory, { recursive: true, mode: 448 });
291
315
  for (const name of MANAGED_HOOK_NAMES) installManagedHook(directory, name);
292
316
  installedHooksDirectory = directory;
@@ -302,13 +326,13 @@ function gitEnvironmentFingerprint(env) {
302
326
  function probeRepositoryUncached(cwd, env) {
303
327
  if (gitOutput(cwd, env, ["rev-parse", "--is-inside-work-tree"]) !== "true") return { kind: "outside" };
304
328
  const customHooksPath = gitOutput(cwd, env, ["config", "--path", "--get", "core.hooksPath"]);
305
- if (customHooksPath === null) return { kind: "default", declaredDefault: false };
329
+ if (customHooksPath === null) return { kind: "default", declaredDefaultHooksPath: null };
306
330
  const commonDirectory = gitOutput(cwd, env, ["rev-parse", "--git-common-dir"]);
307
331
  const defaultHooksPath = commonDirectory === null ? null : resolve(cwd, commonDirectory, "hooks");
308
332
  if (customHooksPath.length === 0 || resolve(cwd, customHooksPath) !== defaultHooksPath) {
309
333
  return { kind: "custom", hooksPath: customHooksPath };
310
334
  }
311
- return { kind: "default", declaredDefault: true };
335
+ return { kind: "default", declaredDefaultHooksPath: defaultHooksPath };
312
336
  }
313
337
  function probeRepository(cwd, env, now = Date.now()) {
314
338
  const key = `${cwd}\0${gitEnvironmentFingerprint(env)}`;
@@ -346,7 +370,9 @@ function withManagedGitCommitAttributionEnvironment(source, options = {}) {
346
370
  diagnostic: boundedDiagnostic(`core.hooksPath is set to '${probe.hooksPath}'; Clio commit attribution skipped`)
347
371
  };
348
372
  }
349
- if (probe.declaredDefault) env[DEFAULT_HOOKS_EQUIVALENT_ENV] = "1";
373
+ if (probe.declaredDefaultHooksPath !== null) {
374
+ env[DEFAULT_HOOKS_EQUIVALENT_ENV] = probe.declaredDefaultHooksPath;
375
+ }
350
376
  let hooksDirectory;
351
377
  try {
352
378
  hooksDirectory = managedHooksDirectory();
@@ -371,4 +397,4 @@ export {
371
397
  gitCommitAttributionEnabled,
372
398
  withManagedGitCommitAttributionEnvironment
373
399
  };
374
- //# sourceMappingURL=chunk-X75S7HFS.js.map
400
+ //# sourceMappingURL=chunk-COU2UHX6.js.map
@@ -2,7 +2,7 @@ import { createRequire as __clioCreateRequire } from "node:module"; const requir
2
2
  import {
3
3
  canonicalJson,
4
4
  sha256
5
- } from "./chunk-6EJV5X2W.js";
5
+ } from "./chunk-SRDMMSEP.js";
6
6
  import {
7
7
  ToolNames
8
8
  } from "./chunk-CGKSTWHD.js";
@@ -1074,4 +1074,4 @@ export {
1074
1074
  readFileArgsAsync,
1075
1075
  expandInlineFileReferencesAsync
1076
1076
  };
1077
- //# sourceMappingURL=chunk-KJ5LWLOE.js.map
1077
+ //# sourceMappingURL=chunk-DSELYM6W.js.map
@@ -6,7 +6,7 @@ import {
6
6
  cloneApprovedAssignmentRoute,
7
7
  isApprovedAssignmentRoute,
8
8
  isToolProfileName
9
- } from "./chunk-MQSRRFWA.js";
9
+ } from "./chunk-LWLEKMDQ.js";
10
10
  import {
11
11
  ROUTE_POLICY_VERSION,
12
12
  isExecutionRole,
@@ -641,4 +641,4 @@ export {
641
641
  withResolvedDispatchPlan,
642
642
  describeDispatchPlan
643
643
  };
644
- //# sourceMappingURL=chunk-G2DE3C7R.js.map
644
+ //# sourceMappingURL=chunk-DUYJ5IO6.js.map
@@ -5,38 +5,38 @@ import {
5
5
  import {
6
6
  SchedulingDomainModule,
7
7
  createPromptsDomainModule
8
- } from "./chunk-LBNRH5WM.js";
8
+ } from "./chunk-LM5TQCJZ.js";
9
9
  import {
10
10
  AgentsDomainModule,
11
11
  SafetyDomainModule
12
- } from "./chunk-3ZXDFGR5.js";
12
+ } from "./chunk-PAJK6MAQ.js";
13
13
  import {
14
14
  ConfigDomainModule,
15
15
  loadDomains
16
- } from "./chunk-V4RXGQ5Q.js";
16
+ } from "./chunk-OC7FIQPC.js";
17
17
  import {
18
18
  createObservabilityDomainModule
19
- } from "./chunk-WVO7V2QY.js";
19
+ } from "./chunk-4XUGQOHA.js";
20
20
  import {
21
21
  fallbackBootstrapOutput
22
- } from "./chunk-7EYHLWU7.js";
22
+ } from "./chunk-PIWWS5BL.js";
23
23
  import {
24
24
  renderCodewikiDigest
25
25
  } from "./chunk-5WIGXA4T.js";
26
26
  import {
27
27
  DispatchDomainModule,
28
28
  SessionDomainModule
29
- } from "./chunk-6EJV5X2W.js";
29
+ } from "./chunk-SRDMMSEP.js";
30
30
  import {
31
31
  ResourcesDomainModule
32
32
  } from "./chunk-MFFY33HR.js";
33
33
  import {
34
34
  MiddlewareDomainModule
35
- } from "./chunk-WMSVI4G2.js";
35
+ } from "./chunk-2DJ2KNFG.js";
36
36
  import {
37
37
  UnsupportedResponseSchemaError,
38
38
  isResponseSchemaRejection
39
- } from "./chunk-MQSRRFWA.js";
39
+ } from "./chunk-LWLEKMDQ.js";
40
40
  import {
41
41
  parseJsonObjectPayload
42
42
  } from "./chunk-STBPMHSX.js";
@@ -671,4 +671,4 @@ export {
671
671
  validateInitOptions,
672
672
  bootstrapInputFromInitOptions
673
673
  };
674
- //# sourceMappingURL=chunk-EPVUXGXG.js.map
674
+ //# sourceMappingURL=chunk-FNTMWMX5.js.map
@@ -3,7 +3,7 @@ import {
3
3
  gitCommitAttributionEnabled,
4
4
  reportCommitAttributionDiagnostic,
5
5
  withManagedGitCommitAttributionEnvironment
6
- } from "./chunk-X75S7HFS.js";
6
+ } from "./chunk-COU2UHX6.js";
7
7
  import {
8
8
  clampTimerDelayMs
9
9
  } from "./chunk-FQ4SKYE4.js";
@@ -252,4 +252,4 @@ export {
252
252
  combineBashOutput,
253
253
  runBashCommand
254
254
  };
255
- //# sourceMappingURL=chunk-MNA4JGU4.js.map
255
+ //# sourceMappingURL=chunk-J7CWMCQD.js.map
@@ -158,7 +158,7 @@ Run \`clio-coder auth login ${verdict.store}\` if the endpoint requires one; loc
158
158
  } else if (verdict.kind !== "usable") {
159
159
  process.stdout.write(`${describeVerdict(verdict)} Starting \`clio-coder configure\`.
160
160
  `);
161
- const { runConfigureCommand } = await import("./configure-R6A64DHX.js");
161
+ const { runConfigureCommand } = await import("./configure-4GAP54ZW.js");
162
162
  const configured = await runConfigureCommand([]);
163
163
  if (configured !== 0) return configured;
164
164
  startupSettings = readStrictLayeredSettings(process.cwd()).settings;
@@ -167,7 +167,7 @@ Run \`clio-coder auth login ${verdict.store}\` if the endpoint requires one; loc
167
167
  let terminalLease;
168
168
  try {
169
169
  if (terminalLeaseEligible(options)) {
170
- const { createProcessTerminalLease, instantShellEnabled } = await import("./terminal-lease-IT5JW2NR.js");
170
+ const { createProcessTerminalLease, instantShellEnabled } = await import("./terminal-lease-BNAHVHBS.js");
171
171
  if (instantShellEnabled()) {
172
172
  let stage0FrameId = null;
173
173
  terminalLease = createProcessTerminalLease({
@@ -190,7 +190,7 @@ Run \`clio-coder auth login ${verdict.store}\` if the endpoint requires one; loc
190
190
  throw new Error("injected Stage 1 hydration failure");
191
191
  }
192
192
  }
193
- const { bootOrchestrator } = await import("./orchestrator-CGFKEP27.js");
193
+ const { bootOrchestrator } = await import("./orchestrator-EM5MC3HM.js");
194
194
  const result = await bootOrchestrator({
195
195
  ...options,
196
196
  ...startupSettings ? { startupSettings } : {},
@@ -214,4 +214,4 @@ export {
214
214
  terminalLeaseEligible,
215
215
  runClioCommand
216
216
  };
217
- //# sourceMappingURL=chunk-MBS4V7ZP.js.map
217
+ //# sourceMappingURL=chunk-KZWTDYJF.js.map
@@ -5,12 +5,12 @@ import {
5
5
  loadProjectRules,
6
6
  renderOperatorProfile,
7
7
  selectActiveRules
8
- } from "./chunk-7EYHLWU7.js";
8
+ } from "./chunk-PIWWS5BL.js";
9
9
  import {
10
10
  compile,
11
11
  compileWorker,
12
12
  sha256
13
- } from "./chunk-6EJV5X2W.js";
13
+ } from "./chunk-SRDMMSEP.js";
14
14
  import {
15
15
  isUserVisibleAgent
16
16
  } from "./chunk-5UUP6MWO.js";
@@ -653,4 +653,4 @@ export {
653
653
  createPromptsDomainModule,
654
654
  SchedulingDomainModule
655
655
  };
656
- //# sourceMappingURL=chunk-LBNRH5WM.js.map
656
+ //# sourceMappingURL=chunk-LM5TQCJZ.js.map
@@ -4,13 +4,13 @@ import {
4
4
  HEADLESS_PERMISSION_DENIED_MARKER,
5
5
  combineBashOutput,
6
6
  runBashCommand
7
- } from "./chunk-MNA4JGU4.js";
7
+ } from "./chunk-J7CWMCQD.js";
8
8
  import {
9
9
  hashToolCall
10
10
  } from "./chunk-UOV2BYIW.js";
11
11
  import {
12
12
  describeDispatchPlan
13
- } from "./chunk-G2DE3C7R.js";
13
+ } from "./chunk-DUYJ5IO6.js";
14
14
  import {
15
15
  RESPONSE_SCHEMA_RUNTIME_ID,
16
16
  applyToolProfile,
@@ -21,7 +21,7 @@ import {
21
21
  readTool,
22
22
  renderAgentLedger,
23
23
  taskBoardCounts
24
- } from "./chunk-MQSRRFWA.js";
24
+ } from "./chunk-LWLEKMDQ.js";
25
25
  import {
26
26
  DEFAULT_AUTONOMY_EXPOSURE,
27
27
  DEFAULT_AUTONOMY_LEVEL,
@@ -47,7 +47,7 @@ import {
47
47
  import {
48
48
  gitTool,
49
49
  verifyToolSurface
50
- } from "./chunk-ARBGF5F7.js";
50
+ } from "./chunk-TZK7PACC.js";
51
51
  import {
52
52
  codeNavToolSurface
53
53
  } from "./chunk-XN3L4EYL.js";
@@ -104,7 +104,7 @@ import {
104
104
  import {
105
105
  buildSafeToolEnv,
106
106
  resolveSafeCwd
107
- } from "./chunk-SRF2PJNW.js";
107
+ } from "./chunk-VPAYEGVX.js";
108
108
  import {
109
109
  GUARDRAIL_DEFAULTS,
110
110
  isWorkerToolCallCapExceededReason,
@@ -5019,7 +5019,7 @@ function registerCoreTools(registry, deps = {}) {
5019
5019
  });
5020
5020
  registry.register({
5021
5021
  ...builtin(
5022
- lazyTool(verifyToolSurface, async () => (await import("./verify-G6V4D2G7.js")).verifyTool),
5022
+ lazyTool(verifyToolSurface, async () => (await import("./verify-375KUB3Y.js")).verifyTool),
5023
5023
  { path: "src/tools/verify/index.ts", scope: "core" }
5024
5024
  )
5025
5025
  });
@@ -5132,4 +5132,4 @@ export {
5132
5132
  assertRegisteredBuiltinTools,
5133
5133
  createRegistry
5134
5134
  };
5135
- //# sourceMappingURL=chunk-OHHN2SO4.js.map
5135
+ //# sourceMappingURL=chunk-LW6DSM3M.js.map
@@ -1775,6 +1775,58 @@ function startClaudeCodeWorkerRun(input, emit) {
1775
1775
  init_esm_shims();
1776
1776
  var WORKER_RUNTIME_MEDIATES_CLIO_DISPATCH = false;
1777
1777
 
1778
+ // src/tools/presentation.ts
1779
+ init_esm_shims();
1780
+ var FOLDED = { foldDefault: "folded", showDiffWhenFolded: false, failureExcerpt: true };
1781
+ var FOLDED_WITH_DIFF = {
1782
+ foldDefault: "folded",
1783
+ showDiffWhenFolded: true,
1784
+ failureExcerpt: true
1785
+ };
1786
+ var TOOL_PRESENTATION = {
1787
+ [ToolNames.Read]: FOLDED,
1788
+ [ToolNames.Grep]: FOLDED,
1789
+ [ToolNames.Find]: FOLDED,
1790
+ [ToolNames.Ls]: FOLDED,
1791
+ [ToolNames.CodeNav]: FOLDED,
1792
+ [ToolNames.Context]: FOLDED,
1793
+ [ToolNames.CredentialPresent]: FOLDED,
1794
+ [ToolNames.Write]: FOLDED_WITH_DIFF,
1795
+ [ToolNames.Edit]: FOLDED_WITH_DIFF,
1796
+ [ToolNames.Bash]: FOLDED,
1797
+ [ToolNames.Git]: FOLDED,
1798
+ [ToolNames.Verify]: FOLDED,
1799
+ [ToolNames.Dispatch]: FOLDED,
1800
+ [ToolNames.Monitor]: FOLDED,
1801
+ [ToolNames.Steer]: FOLDED,
1802
+ [ToolNames.Tasks]: FOLDED,
1803
+ [ToolNames.Ledger]: FOLDED,
1804
+ [ToolNames.WebFetch]: FOLDED,
1805
+ [ToolNames.AskUser]: FOLDED,
1806
+ [ToolNames.Artifact]: FOLDED
1807
+ };
1808
+ function readStringField(args, key) {
1809
+ if (typeof args !== "object" || args === null || Array.isArray(args)) return null;
1810
+ const value = args[key];
1811
+ return typeof value === "string" && value.length > 0 ? value : null;
1812
+ }
1813
+ function classifyResourceRead(toolName, args) {
1814
+ if (toolName !== ToolNames.Read) return null;
1815
+ const path3 = readStringField(args, "path");
1816
+ if (path3 === null) return null;
1817
+ const normalized = path3.replace(/\\/g, "/");
1818
+ const base = normalized.split("/").pop() ?? "";
1819
+ if (base === "SKILL.md") return "skill";
1820
+ if (base === "CLIO-CODER.md") return "handbook";
1821
+ if (base === "AGENTS.md") return "agents";
1822
+ if (/(^|\/)docs\//.test(normalized)) return "docs";
1823
+ return null;
1824
+ }
1825
+ function toolPresentationPolicy(toolName, args) {
1826
+ if (classifyResourceRead(toolName, args) !== null) return FOLDED;
1827
+ return TOOL_PRESENTATION[toolName] ?? FOLDED;
1828
+ }
1829
+
1778
1830
  // src/tools/builtin-tool-catalog.ts
1779
1831
  init_esm_shims();
1780
1832
 
@@ -2136,7 +2188,7 @@ function toolPromptHintsForNames(names) {
2136
2188
  }
2137
2189
  function withBuiltinMetadata(spec) {
2138
2190
  const metadata = TOOL_METADATA[spec.name];
2139
- return metadata ? withMetadata(spec, metadata) : spec;
2191
+ return metadata ? withMetadata(spec, { ...metadata, presentation: toolPresentationPolicy(spec.name, void 0) }) : spec;
2140
2192
  }
2141
2193
  function builtin(spec, sourceInfo) {
2142
2194
  return withBuiltinMetadata(withSourceInfo(spec, sourceInfo));
@@ -3381,6 +3433,8 @@ export {
3381
3433
  emitClaudeToolPermissionDecision,
3382
3434
  coerceToolInput,
3383
3435
  WORKER_RUNTIME_MEDIATES_CLIO_DISPATCH,
3436
+ classifyResourceRead,
3437
+ toolPresentationPolicy,
3384
3438
  readMaxBytes,
3385
3439
  readTool,
3386
3440
  toolPromptHintsForNames,
@@ -3425,4 +3479,4 @@ export {
3425
3479
  foldSessionTaskHistory,
3426
3480
  createTaskBoardStore
3427
3481
  };
3428
- //# sourceMappingURL=chunk-MQSRRFWA.js.map
3482
+ //# sourceMappingURL=chunk-LWLEKMDQ.js.map
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-A3CYT5EX.js";
10
10
  import {
11
11
  setGitCommitAttributionEnabled
12
- } from "./chunk-X75S7HFS.js";
12
+ } from "./chunk-COU2UHX6.js";
13
13
  import {
14
14
  resolveShutdownHookBudgetMs,
15
15
  runWithBudget,
@@ -381,4 +381,4 @@ export {
381
381
  ConfigDomainModule,
382
382
  createConfigDomainModule
383
383
  };
384
- //# sourceMappingURL=chunk-V4RXGQ5Q.js.map
384
+ //# sourceMappingURL=chunk-OC7FIQPC.js.map
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
2
  import {
3
3
  assertAgentIdNamespace
4
- } from "./chunk-V4RXGQ5Q.js";
4
+ } from "./chunk-OC7FIQPC.js";
5
5
  import {
6
6
  parseFrontmatter
7
7
  } from "./chunk-QKMUKYO7.js";
@@ -1036,4 +1036,4 @@ export {
1036
1036
  AgentsDomainModule,
1037
1037
  SafetyDomainModule
1038
1038
  };
1039
- //# sourceMappingURL=chunk-3ZXDFGR5.js.map
1039
+ //# sourceMappingURL=chunk-PAJK6MAQ.js.map
@@ -4,10 +4,10 @@ import {
4
4
  } from "./chunk-5WIGXA4T.js";
5
5
  import {
6
6
  loadMemoryRecordsSync
7
- } from "./chunk-J5HN4RYU.js";
7
+ } from "./chunk-V6RTAOC2.js";
8
8
  import {
9
9
  sha256
10
- } from "./chunk-6EJV5X2W.js";
10
+ } from "./chunk-SRDMMSEP.js";
11
11
  import {
12
12
  WIKI_INDEX,
13
13
  WIKI_PLAN_FILE,
@@ -4172,4 +4172,4 @@ export {
4172
4172
  buildWikiPlanPrompt,
4173
4173
  buildWikiPagePrompt
4174
4174
  };
4175
- //# sourceMappingURL=chunk-7EYHLWU7.js.map
4175
+ //# sourceMappingURL=chunk-PIWWS5BL.js.map
@@ -74,7 +74,7 @@ import {
74
74
  serializeWorkerRuntimeDescriptor,
75
75
  toolPromptHintsForNames,
76
76
  validateJobSpec
77
- } from "./chunk-MQSRRFWA.js";
77
+ } from "./chunk-LWLEKMDQ.js";
78
78
  import {
79
79
  DEFAULT_AUTONOMY_LEVEL,
80
80
  WRITE_ROOT_REFUSED_TOOLS,
@@ -179,7 +179,7 @@ import {
179
179
  gitCommitAttributionEnabled,
180
180
  reportCommitAttributionDiagnostic,
181
181
  withManagedGitCommitAttributionEnvironment
182
- } from "./chunk-X75S7HFS.js";
182
+ } from "./chunk-COU2UHX6.js";
183
183
  import {
184
184
  MAX_TIMER_DELAY_MS,
185
185
  rawDurationMs
@@ -16402,4 +16402,4 @@ export {
16402
16402
  summarizeEvalResults,
16403
16403
  buildEvalEvidence
16404
16404
  };
16405
- //# sourceMappingURL=chunk-6EJV5X2W.js.map
16405
+ //# sourceMappingURL=chunk-SRDMMSEP.js.map
@@ -16,7 +16,7 @@ import {
16
16
  SAFE_EXEC_DEFAULT_TIMEOUT_MS,
17
17
  combineSafeOutput,
18
18
  runCommandVector
19
- } from "./chunk-SRF2PJNW.js";
19
+ } from "./chunk-VPAYEGVX.js";
20
20
  import {
21
21
  StringEnum
22
22
  } from "./chunk-FCSXB6T2.js";
@@ -171,4 +171,4 @@ export {
171
171
  prepareVerifyArguments,
172
172
  verifyToolSurface
173
173
  };
174
- //# sourceMappingURL=chunk-ARBGF5F7.js.map
174
+ //# sourceMappingURL=chunk-TZK7PACC.js.map
@@ -9,7 +9,7 @@ import {
9
9
  detectInteropAgents,
10
10
  fingerprintNativeRuntime,
11
11
  resolveOnPath
12
- } from "./chunk-2EHAIA3X.js";
12
+ } from "./chunk-2TLUCQVG.js";
13
13
  import {
14
14
  initializeClioHome
15
15
  } from "./chunk-BMEMKKIT.js";
@@ -437,4 +437,4 @@ export {
437
437
  runDoctorInteropChecks,
438
438
  runDoctorRuntimeChecks
439
439
  };
440
- //# sourceMappingURL=chunk-QTYWRVRA.js.map
440
+ //# sourceMappingURL=chunk-UFIIWP2H.js.map
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
2
  import {
3
3
  inspectEvidence
4
- } from "./chunk-6EJV5X2W.js";
4
+ } from "./chunk-SRDMMSEP.js";
5
5
  import {
6
6
  createRedactionTally,
7
7
  redactSecretsText
@@ -929,4 +929,4 @@ export {
929
929
  taskMemoryTracePath,
930
930
  createTaskMemoryTrace
931
931
  };
932
- //# sourceMappingURL=chunk-J5HN4RYU.js.map
932
+ //# sourceMappingURL=chunk-V6RTAOC2.js.map
@@ -3,7 +3,7 @@ import {
3
3
  gitCommitAttributionEnabled,
4
4
  reportCommitAttributionDiagnostic,
5
5
  withManagedGitCommitAttributionEnvironment
6
- } from "./chunk-X75S7HFS.js";
6
+ } from "./chunk-COU2UHX6.js";
7
7
  import {
8
8
  clampTimerDelayMs
9
9
  } from "./chunk-FQ4SKYE4.js";
@@ -181,4 +181,4 @@ export {
181
181
  runCommandVector,
182
182
  combineSafeOutput
183
183
  };
184
- //# sourceMappingURL=chunk-SRF2PJNW.js.map
184
+ //# sourceMappingURL=chunk-VPAYEGVX.js.map
@@ -7,7 +7,7 @@ import {
7
7
  fingerprintNativeRuntime,
8
8
  interopProposals,
9
9
  renderProposalEntry
10
- } from "./chunk-2EHAIA3X.js";
10
+ } from "./chunk-2TLUCQVG.js";
11
11
  import {
12
12
  initializeClioHome
13
13
  } from "./chunk-BMEMKKIT.js";
@@ -1489,4 +1489,4 @@ export {
1489
1489
  runTargetRename,
1490
1490
  runConfigureCommand
1491
1491
  };
1492
- //# sourceMappingURL=chunk-77VKQEHF.js.map
1492
+ //# sourceMappingURL=chunk-X6IAEBZR.js.map