@prestyj/cli 5.28.1 → 5.29.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 (316) hide show
  1. package/assets/motion/bin/contact-sheet.mjs +9 -3
  2. package/assets/motion/bin/cues.mjs +337 -0
  3. package/assets/motion/bin/library.mjs +53 -10
  4. package/assets/motion/bin/motion-blur.mjs +943 -0
  5. package/assets/motion/bin/motion-check.mjs +354 -3
  6. package/assets/motion/bin/music-fit.mjs +436 -0
  7. package/assets/motion/bin/pdf-extract.mjs +22 -10
  8. package/assets/motion/bin/reference-study.mjs +346 -0
  9. package/assets/motion/bin/score-synth.mjs +1052 -93
  10. package/assets/motion/library/README.md +50 -14
  11. package/assets/motion/library/kit/moves.js +1981 -0
  12. package/assets/motion/library/library.json +232 -0
  13. package/assets/motion/library/pieces/camera-rig/meta.json +13 -0
  14. package/assets/motion/library/pieces/camera-rig/piece.html +153 -0
  15. package/assets/motion/library/pieces/camera-rig/preview.jpg +0 -0
  16. package/assets/motion/library/pieces/chain-knock/meta.json +13 -0
  17. package/assets/motion/library/pieces/chain-knock/piece.html +195 -0
  18. package/assets/motion/library/pieces/chain-knock/preview.jpg +0 -0
  19. package/assets/motion/library/pieces/gather-to-logo/meta.json +13 -0
  20. package/assets/motion/library/pieces/gather-to-logo/piece.html +159 -0
  21. package/assets/motion/library/pieces/gather-to-logo/preview.jpg +0 -0
  22. package/assets/motion/library/pieces/morph-carry/meta.json +13 -0
  23. package/assets/motion/library/pieces/morph-carry/piece.html +173 -0
  24. package/assets/motion/library/pieces/morph-carry/preview.jpg +0 -0
  25. package/assets/motion/library/pieces/one-shape-journey/meta.json +13 -0
  26. package/assets/motion/library/pieces/one-shape-journey/piece.html +195 -0
  27. package/assets/motion/library/pieces/one-shape-journey/preview.jpg +0 -0
  28. package/assets/motion/library/pieces/open-from-subject/meta.json +13 -0
  29. package/assets/motion/library/pieces/open-from-subject/piece.html +168 -0
  30. package/assets/motion/library/pieces/open-from-subject/preview.jpg +0 -0
  31. package/assets/motion/library/pieces/request-to-result/meta.json +13 -0
  32. package/assets/motion/library/pieces/request-to-result/piece.html +212 -0
  33. package/assets/motion/library/pieces/request-to-result/preview.jpg +0 -0
  34. package/assets/motion/library/pieces/scale-dive/meta.json +13 -0
  35. package/assets/motion/library/pieces/scale-dive/piece.html +321 -0
  36. package/assets/motion/library/pieces/scale-dive/preview.jpg +0 -0
  37. package/assets/motion/library/pieces/screen-replica-steps/meta.json +13 -0
  38. package/assets/motion/library/pieces/screen-replica-steps/piece.html +366 -0
  39. package/assets/motion/library/pieces/screen-replica-steps/preview.jpg +0 -0
  40. package/assets/motion/library/pieces/zoom-into-card/meta.json +13 -0
  41. package/assets/motion/library/pieces/zoom-into-card/piece.html +179 -0
  42. package/assets/motion/library/pieces/zoom-into-card/preview.jpg +0 -0
  43. package/assets/motion/library/sheets/diagram.jpg +0 -0
  44. package/assets/motion/library/sheets/frame.jpg +0 -0
  45. package/assets/motion/library/sheets/transition.jpg +0 -0
  46. package/assets/motion/library/sheets/ui.jpg +0 -0
  47. package/assets/motion/references/build-sheet.md +206 -0
  48. package/assets/motion/references/runtime/determinism-rules.md +1 -1
  49. package/assets/motion/references/runtime/gsap-easing-and-stagger.md +29 -29
  50. package/assets/motion/references/runtime/inputs-and-assets.md +7 -12
  51. package/assets/motion/references/runtime/lint-validate-inspect.md +3 -3
  52. package/assets/motion/references/runtime/minimal-composition.md +1 -1
  53. package/assets/motion/references/runtime/preview-render.md +3 -3
  54. package/assets/motion/skills/app-walkthrough/SKILL.md +66 -0
  55. package/assets/motion/skills/before-after/SKILL.md +53 -0
  56. package/assets/motion/skills/brand-kit/SKILL.md +3 -3
  57. package/assets/motion/skills/dev-tool-video/SKILL.md +57 -0
  58. package/assets/motion/skills/launch-video/SKILL.md +62 -0
  59. package/assets/motion/skills/match-reference/SKILL.md +58 -0
  60. package/assets/motion/skills/motion/SKILL.md +78 -85
  61. package/assets/motion/skills/source-ingest/SKILL.md +17 -6
  62. package/assets/motion/skills/website-video/SKILL.md +59 -0
  63. package/assets/skills/bulletproof/SKILL.md +36 -11
  64. package/assets/skills/bulletproof/references/agent-surface.md +19 -9
  65. package/assets/skills/bulletproof/references/audit-protocol.md +20 -5
  66. package/assets/skills/bulletproof/references/platform-playbooks.md +5 -4
  67. package/assets/skills/bulletproof/references/provenance.md +26 -1
  68. package/assets/skills/bulletproof/references/secure-defaults.md +6 -5
  69. package/assets/skills/bulletproof/references/supply-chain.md +21 -17
  70. package/assets/skills/bulletproof/references/threat-landscape.md +28 -26
  71. package/assets/skills/bulletproof/references/verification.md +2 -0
  72. package/assets/skills/clarify/SKILL.md +25 -16
  73. package/assets/skills/code-review/SKILL.md +71 -13
  74. package/assets/skills/code-review/references/agent-diffs.md +27 -0
  75. package/assets/skills/code-review/references/tests.md +19 -0
  76. package/assets/skills/compliance-guard/SKILL.md +20 -5
  77. package/assets/skills/compliance-guard/references/artifacts.md +1 -1
  78. package/assets/skills/compliance-guard/references/eu-uk.md +16 -16
  79. package/assets/skills/compliance-guard/references/lawsuit-vectors.md +5 -5
  80. package/assets/skills/compliance-guard/references/provenance.md +41 -2
  81. package/assets/skills/compliance-guard/references/sector-gates.md +3 -3
  82. package/assets/skills/compliance-guard/references/security-baseline.md +2 -2
  83. package/assets/skills/compliance-guard/references/trigger-map.md +5 -5
  84. package/assets/skills/compliance-guard/references/us.md +27 -21
  85. package/assets/skills/durable/SKILL.md +87 -79
  86. package/assets/skills/durable/references/agent-db-safety.md +69 -0
  87. package/assets/skills/durable/references/backups-and-runtime.md +19 -12
  88. package/assets/skills/durable/references/migrations-and-schema.md +13 -6
  89. package/assets/skills/evidence-led-ui/SKILL.md +69 -127
  90. package/assets/skills/evidence-led-ui/references/anti-defaults.md +107 -208
  91. package/assets/skills/evidence-led-ui/references/direction.md +124 -0
  92. package/assets/skills/evidence-led-ui/references/production-contract.md +8 -0
  93. package/assets/skills/evidence-led-ui/references/provenance.md +24 -1
  94. package/assets/skills/lean/SKILL.md +90 -71
  95. package/assets/skills/lean/references/memory-and-processes.md +3 -2
  96. package/assets/skills/lean/references/playbooks.md +37 -12
  97. package/assets/skills/refactoring/SKILL.md +24 -3
  98. package/assets/skills/refactoring/references/agent-pitfalls.md +4 -1
  99. package/assets/skills/refactoring/references/legacy.md +21 -0
  100. package/assets/skills/root-cause/SKILL.md +20 -10
  101. package/assets/skills/shared-language/SKILL.md +16 -14
  102. package/assets/skills/tdd/SKILL.md +27 -15
  103. package/dist/app-sidecar.js +203 -47
  104. package/dist/app-sidecar.js.map +1 -1
  105. package/dist/cli.js +17 -26
  106. package/dist/cli.js.map +1 -1
  107. package/dist/core/acceptance-checks.d.ts +48 -0
  108. package/dist/core/acceptance-checks.js +144 -0
  109. package/dist/core/acceptance-checks.js.map +1 -0
  110. package/dist/core/agent-session.d.ts +106 -72
  111. package/dist/core/agent-session.js +539 -399
  112. package/dist/core/agent-session.js.map +1 -1
  113. package/dist/core/agents.d.ts +6 -5
  114. package/dist/core/agents.js.map +1 -1
  115. package/dist/core/ask-user.d.ts +90 -8
  116. package/dist/core/ask-user.js +124 -13
  117. package/dist/core/ask-user.js.map +1 -1
  118. package/dist/core/bundled-agents.js +1 -3
  119. package/dist/core/bundled-agents.js.map +1 -1
  120. package/dist/core/cache-diagnostics.d.ts +68 -0
  121. package/dist/core/cache-diagnostics.js +196 -0
  122. package/dist/core/cache-diagnostics.js.map +1 -0
  123. package/dist/core/cache-expiry.d.ts +87 -0
  124. package/dist/core/cache-expiry.js +111 -0
  125. package/dist/core/cache-expiry.js.map +1 -0
  126. package/dist/core/compaction/compactor.js +78 -48
  127. package/dist/core/compaction/compactor.js.map +1 -1
  128. package/dist/core/compaction/plan-step-policy.d.ts +46 -0
  129. package/dist/core/compaction/plan-step-policy.js +57 -0
  130. package/dist/core/compaction/plan-step-policy.js.map +1 -0
  131. package/dist/core/destructive-git-guard.d.ts +90 -0
  132. package/dist/core/destructive-git-guard.js +871 -0
  133. package/dist/core/destructive-git-guard.js.map +1 -0
  134. package/dist/core/event-bus.d.ts +3 -0
  135. package/dist/core/event-bus.js +5 -0
  136. package/dist/core/event-bus.js.map +1 -1
  137. package/dist/core/injection-detect.d.ts +38 -0
  138. package/dist/core/injection-detect.js +232 -0
  139. package/dist/core/injection-detect.js.map +1 -0
  140. package/dist/core/keep-awake.d.ts +88 -0
  141. package/dist/core/keep-awake.js +251 -0
  142. package/dist/core/keep-awake.js.map +1 -0
  143. package/dist/core/mcp/client.d.ts +72 -0
  144. package/dist/core/mcp/client.js +264 -41
  145. package/dist/core/mcp/client.js.map +1 -1
  146. package/dist/core/mcp/content.js +6 -2
  147. package/dist/core/mcp/content.js.map +1 -1
  148. package/dist/core/mcp/store.d.ts +6 -1
  149. package/dist/core/mcp/store.js +12 -1
  150. package/dist/core/mcp/store.js.map +1 -1
  151. package/dist/core/mcp/types.d.ts +18 -0
  152. package/dist/core/model-unavailable.d.ts +14 -0
  153. package/dist/core/model-unavailable.js +23 -0
  154. package/dist/core/model-unavailable.js.map +1 -0
  155. package/dist/core/node-debugger.d.ts +148 -0
  156. package/dist/core/node-debugger.js +642 -0
  157. package/dist/core/node-debugger.js.map +1 -0
  158. package/dist/core/package-threats.d.ts +18 -0
  159. package/dist/core/package-threats.js +168 -0
  160. package/dist/core/package-threats.js.map +1 -0
  161. package/dist/core/persistent-shell.d.ts +58 -6
  162. package/dist/core/persistent-shell.js +331 -49
  163. package/dist/core/persistent-shell.js.map +1 -1
  164. package/dist/core/process-manager.d.ts +14 -0
  165. package/dist/core/process-manager.js +61 -0
  166. package/dist/core/process-manager.js.map +1 -1
  167. package/dist/core/progress/git-xp.js +8 -14
  168. package/dist/core/progress/git-xp.js.map +1 -1
  169. package/dist/core/session-history.d.ts +12 -0
  170. package/dist/core/session-history.js +27 -0
  171. package/dist/core/session-history.js.map +1 -1
  172. package/dist/core/session-manager.d.ts +13 -1
  173. package/dist/core/session-manager.js +38 -18
  174. package/dist/core/session-manager.js.map +1 -1
  175. package/dist/core/session-summary-index.d.ts +37 -0
  176. package/dist/core/session-summary-index.js +172 -0
  177. package/dist/core/session-summary-index.js.map +1 -0
  178. package/dist/core/settings-manager.d.ts +2 -0
  179. package/dist/core/settings-manager.js +10 -0
  180. package/dist/core/settings-manager.js.map +1 -1
  181. package/dist/core/shell-threats-popular-packages.d.ts +11 -0
  182. package/dist/core/shell-threats-popular-packages.js +675 -0
  183. package/dist/core/shell-threats-popular-packages.js.map +1 -0
  184. package/dist/core/shell-threats.d.ts +8 -0
  185. package/dist/core/shell-threats.js +186 -0
  186. package/dist/core/shell-threats.js.map +1 -0
  187. package/dist/core/skills.js +3 -1
  188. package/dist/core/skills.js.map +1 -1
  189. package/dist/core/stream-rules.d.ts +30 -0
  190. package/dist/core/stream-rules.js +151 -0
  191. package/dist/core/stream-rules.js.map +1 -0
  192. package/dist/core/subagent-manager.d.ts +20 -5
  193. package/dist/core/subagent-manager.js +22 -8
  194. package/dist/core/subagent-manager.js.map +1 -1
  195. package/dist/core/subagent-receipt.d.ts +54 -0
  196. package/dist/core/subagent-receipt.js +276 -0
  197. package/dist/core/subagent-receipt.js.map +1 -0
  198. package/dist/core/subagent-turn-record.d.ts +2 -0
  199. package/dist/core/subagent-turn-record.js.map +1 -1
  200. package/dist/core/test-impact.d.ts +73 -0
  201. package/dist/core/test-impact.js +467 -0
  202. package/dist/core/test-impact.js.map +1 -0
  203. package/dist/core/thinking-level.d.ts +1 -1
  204. package/dist/core/thinking-level.js +1 -1
  205. package/dist/core/thinking-level.js.map +1 -1
  206. package/dist/core/verification-gate.d.ts +2 -0
  207. package/dist/core/verification-gate.js +4 -0
  208. package/dist/core/verification-gate.js.map +1 -1
  209. package/dist/core/verification-snapshot.js +3 -5
  210. package/dist/core/verification-snapshot.js.map +1 -1
  211. package/dist/core/workspace-guard.d.ts +18 -7
  212. package/dist/core/workspace-guard.js +227 -60
  213. package/dist/core/workspace-guard.js.map +1 -1
  214. package/dist/interactive.js +2 -1
  215. package/dist/interactive.js.map +1 -1
  216. package/dist/modes/subagent-worker-mode.js +34 -6
  217. package/dist/modes/subagent-worker-mode.js.map +1 -1
  218. package/dist/motion-agent/motion-agent.d.ts +6 -2
  219. package/dist/motion-agent/motion-agent.js +5 -7
  220. package/dist/motion-agent/motion-agent.js.map +1 -1
  221. package/dist/motion-agent/motion-prompt.d.ts +1 -1
  222. package/dist/motion-agent/motion-prompt.js +14 -19
  223. package/dist/motion-agent/motion-prompt.js.map +1 -1
  224. package/dist/motion-agent/motion-review.d.ts +10 -3
  225. package/dist/motion-agent/motion-review.js +15 -7
  226. package/dist/motion-agent/motion-review.js.map +1 -1
  227. package/dist/motion-agent/motion-studio-context.js +1 -1
  228. package/dist/motion-agent/motion-studio-context.js.map +1 -1
  229. package/dist/system-prompt.js +3 -1
  230. package/dist/system-prompt.js.map +1 -1
  231. package/dist/test-support/keep-alive.d.ts +14 -0
  232. package/dist/test-support/keep-alive.js +17 -0
  233. package/dist/test-support/keep-alive.js.map +1 -0
  234. package/dist/tools/ask-user.js +3 -3
  235. package/dist/tools/ask-user.js.map +1 -1
  236. package/dist/tools/bash-read-evidence.d.ts +10 -0
  237. package/dist/tools/bash-read-evidence.js +133 -0
  238. package/dist/tools/bash-read-evidence.js.map +1 -0
  239. package/dist/tools/bash.d.ts +10 -1
  240. package/dist/tools/bash.js +115 -7
  241. package/dist/tools/bash.js.map +1 -1
  242. package/dist/tools/debug.d.ts +54 -0
  243. package/dist/tools/debug.js +233 -0
  244. package/dist/tools/debug.js.map +1 -0
  245. package/dist/tools/edit.js +12 -4
  246. package/dist/tools/edit.js.map +1 -1
  247. package/dist/tools/goals.d.ts +1 -1
  248. package/dist/tools/index.d.ts +19 -2
  249. package/dist/tools/index.js +47 -7
  250. package/dist/tools/index.js.map +1 -1
  251. package/dist/tools/prompt-hints.js +2 -0
  252. package/dist/tools/prompt-hints.js.map +1 -1
  253. package/dist/tools/read-tracker.d.ts +5 -0
  254. package/dist/tools/read-tracker.js +19 -9
  255. package/dist/tools/read-tracker.js.map +1 -1
  256. package/dist/tools/read.js +3 -2
  257. package/dist/tools/read.js.map +1 -1
  258. package/dist/tools/skill.js +5 -0
  259. package/dist/tools/skill.js.map +1 -1
  260. package/dist/tools/subagent-control.js +44 -8
  261. package/dist/tools/subagent-control.js.map +1 -1
  262. package/dist/tools/subagent-shared.d.ts +29 -8
  263. package/dist/tools/subagent-shared.js +45 -14
  264. package/dist/tools/subagent-shared.js.map +1 -1
  265. package/dist/tools/subagent.d.ts +8 -2
  266. package/dist/tools/subagent.js +28 -10
  267. package/dist/tools/subagent.js.map +1 -1
  268. package/dist/tools/task-output.js +3 -2
  269. package/dist/tools/task-output.js.map +1 -1
  270. package/dist/tools/task-send.d.ts +1 -1
  271. package/dist/tools/task-send.js +15 -1
  272. package/dist/tools/task-send.js.map +1 -1
  273. package/dist/tools/tool-tiers.d.ts +2 -2
  274. package/dist/tools/tool-tiers.js +3 -2
  275. package/dist/tools/tool-tiers.js.map +1 -1
  276. package/dist/tools/truncate.d.ts +21 -0
  277. package/dist/tools/truncate.js +187 -0
  278. package/dist/tools/truncate.js.map +1 -1
  279. package/dist/tools/ui-adopt.js +2 -0
  280. package/dist/tools/ui-adopt.js.map +1 -1
  281. package/dist/ui/App.d.ts +0 -4
  282. package/dist/ui/App.js +5 -28
  283. package/dist/ui/App.js.map +1 -1
  284. package/dist/ui/components/ActivityIndicator.js +1 -0
  285. package/dist/ui/components/ActivityIndicator.js.map +1 -1
  286. package/dist/ui/hooks/useAgentLoop.d.ts +1 -8
  287. package/dist/ui/hooks/useAgentLoop.js +1 -119
  288. package/dist/ui/hooks/useAgentLoop.js.map +1 -1
  289. package/dist/ui/render.d.ts +0 -4
  290. package/dist/ui/render.js +0 -2
  291. package/dist/ui/render.js.map +1 -1
  292. package/dist/utils/git.d.ts +77 -0
  293. package/dist/utils/git.js +285 -21
  294. package/dist/utils/git.js.map +1 -1
  295. package/dist/utils/github-ci.js +2 -1
  296. package/dist/utils/github-ci.js.map +1 -1
  297. package/dist/utils/github.js +11 -9
  298. package/dist/utils/github.js.map +1 -1
  299. package/dist/utils/image.d.ts +14 -0
  300. package/dist/utils/image.js +16 -0
  301. package/dist/utils/image.js.map +1 -1
  302. package/dist/utils/process.d.ts +20 -0
  303. package/dist/utils/process.js +98 -0
  304. package/dist/utils/process.js.map +1 -1
  305. package/package.json +5 -5
  306. package/assets/motion/references/motion-language.md +0 -128
  307. package/assets/motion/skills/video-qa/SKILL.md +0 -89
  308. package/dist/core/ideal-review-subagent.d.ts +0 -56
  309. package/dist/core/ideal-review-subagent.js +0 -112
  310. package/dist/core/ideal-review-subagent.js.map +0 -1
  311. package/dist/core/ideal-review.d.ts +0 -82
  312. package/dist/core/ideal-review.js +0 -242
  313. package/dist/core/ideal-review.js.map +0 -1
  314. package/dist/motion-agent/motion-check-tool.d.ts +0 -35
  315. package/dist/motion-agent/motion-check-tool.js +0 -514
  316. package/dist/motion-agent/motion-check-tool.js.map +0 -1
package/dist/cli.js CHANGED
@@ -67,8 +67,8 @@ import { PROMPT_COMMANDS } from "./core/prompt-commands.js";
67
67
  import { matchPromptCommand } from "./core/prompt-command-expansion.js";
68
68
  import { createTools } from "./tools/index.js";
69
69
  import { cleanupToolOutputs } from "./tools/overflow.js";
70
+ import { spawnedTasks } from "./tools/subagent-shared.js";
70
71
  import { CheckpointStore } from "./core/checkpoint-store.js";
71
- import { ReviewCoverageTracker } from "./core/ideal-review.js";
72
72
  import { shouldCompact, compact } from "./core/compaction/compactor.js";
73
73
  import { createCompactedSessionCheckpoint, formatRestoreInfoText, getRestoredMessagesForDisplay, sourceFingerprint, } from "./core/session-compaction.js";
74
74
  import { setEstimatorModel } from "./core/compaction/token-estimator.js";
@@ -537,12 +537,10 @@ async function runInkTUI(opts) {
537
537
  // Holder so the (cwd-bound) tools can snapshot pre-mutation file state for
538
538
  // /rewind. The store is created once the session id is known (below).
539
539
  const checkpointRef = { current: null };
540
- const reviewCoverageTracker = new ReviewCoverageTracker(cwd);
541
540
  const onPreFileMutation = (filePath) => checkpointRef.current?.recordPreMutation(filePath) ?? Promise.resolve();
542
541
  let activeProvider = provider;
543
542
  let activeModel = model;
544
- let activeThinking = opts.thinkingLevel;
545
- const { tools, processManager, rebuildReadTool, clearReadTracker, lspManager, subAgentManager } = await createTools(cwd, {
543
+ const { tools, processManager, rebuildReadTool, clearReadTracker, lspManager, debugManager, subAgentManager, } = await createTools(cwd, {
546
544
  agents,
547
545
  skills,
548
546
  provider,
@@ -550,8 +548,6 @@ async function runInkTUI(opts) {
550
548
  planModeRef,
551
549
  goalModeRef,
552
550
  onPreFileMutation,
553
- onFileRead: (filePath) => reviewCoverageTracker.recordRead(filePath),
554
- onFileMutated: (filePath) => reviewCoverageTracker.recordChanged(filePath),
555
551
  lspDiagnostics: opts.lspDiagnostics,
556
552
  getWriteGuardSettings: () => ({
557
553
  allowOutsideWorkspaceWrites: opts.allowOutsideWorkspaceWrites ?? false,
@@ -561,7 +557,6 @@ async function runInkTUI(opts) {
561
557
  onExitPlan: (planPath) => planToolCallbacks.onExitPlan?.(planPath) ?? Promise.resolve("Plan review is unavailable."),
562
558
  getProvider: () => activeProvider,
563
559
  getModel: () => activeModel,
564
- getThinkingLevel: () => activeThinking,
565
560
  getMaxPerModel: () => opts.subagentMaxPerModel,
566
561
  });
567
562
  // The active LSP pool follows the active tool set — rebuilds (pixel chdir)
@@ -586,7 +581,6 @@ async function runInkTUI(opts) {
586
581
  onExitPlan: (planPath) => planToolCallbacks.onExitPlan?.(planPath) ?? Promise.resolve("Plan review is unavailable."),
587
582
  getProvider: () => activeProvider,
588
583
  getModel: () => activeModel,
589
- getThinkingLevel: () => activeThinking,
590
584
  });
591
585
  activeLspManager = rebuiltLspManager;
592
586
  return rebuilt;
@@ -615,6 +609,7 @@ async function runInkTUI(opts) {
615
609
  subAgentManager?.shutdownAllNow();
616
610
  processManager.shutdownAll();
617
611
  activeLspManager?.shutdownAll();
612
+ debugManager?.shutdown();
618
613
  mcpManager.dispose().catch(() => { });
619
614
  });
620
615
  // Seed messages with system prompt
@@ -846,8 +841,6 @@ async function runInkTUI(opts) {
846
841
  sessionId,
847
842
  processManager,
848
843
  subAgentManager,
849
- lspManager,
850
- reviewCoverageTracker,
851
844
  settingsFile: paths.settingsFile,
852
845
  mcpManager,
853
846
  authStorage,
@@ -868,8 +861,6 @@ async function runInkTUI(opts) {
868
861
  activeProvider = updates.provider;
869
862
  if (updates.model)
870
863
  activeModel = updates.model;
871
- if ("thinking" in updates)
872
- activeThinking = updates.thinking;
873
864
  },
874
865
  });
875
866
  await subAgentManager?.shutdownAll();
@@ -1397,22 +1388,22 @@ export function messagesToHistoryItems(msgs) {
1397
1388
  flushText();
1398
1389
  const result = toolResults.get(block.id);
1399
1390
  if (block.name === "subagent" || block.name === "spawn_agent") {
1391
+ // One row per child: a batch spawn_agent call starts several.
1392
+ const spawned = block.name === "spawn_agent" ? spawnedTasks(block.args) : [{}];
1400
1393
  items.push({
1401
1394
  kind: "subagent_group",
1402
- agents: [
1403
- {
1404
- toolCallId: block.id,
1405
- task: String(block.name === "spawn_agent"
1406
- ? (block.args.task_name ?? block.args.task ?? "Async agent")
1407
- : (block.args.task ?? "Sub-agent")),
1408
- agentName: String(block.args.agent ?? "default"),
1409
- status: result?.isError ? "error" : "done",
1410
- toolUseCount: 0,
1411
- tokenUsage: { input: 0, output: 0 },
1412
- result: result?.content ?? "",
1413
- durationMs: 0,
1414
- },
1415
- ],
1395
+ agents: spawned.map((spawn, index) => ({
1396
+ toolCallId: spawned.length > 1 ? `${block.id}:${index}` : block.id,
1397
+ task: String(block.name === "spawn_agent"
1398
+ ? (spawn.task_name ?? spawn.task ?? "Async agent")
1399
+ : (block.args.task ?? "Sub-agent")),
1400
+ agentName: String((block.name === "spawn_agent" ? spawn.agent : block.args.agent) ?? "default"),
1401
+ status: result?.isError ? "error" : "done",
1402
+ toolUseCount: 0,
1403
+ tokenUsage: { input: 0, output: 0 },
1404
+ result: result?.content ?? "",
1405
+ durationMs: 0,
1406
+ })),
1416
1407
  id: `restore-${id++}`,
1417
1408
  });
1418
1409
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import { z } from "zod";
2
+ import type { ReceiptCall } from "./subagent-receipt.js";
3
+ /**
4
+ * Parent-set acceptance checks for a helper agent's task.
5
+ *
6
+ * A helper's report says "done, tests pass" in prose. The receipt shows what
7
+ * it really did, but the parent still has to read it and decide whether that
8
+ * meets the bar. Acceptance checks let the parent state the bar up front ("this
9
+ * file exists", "the helper changed this file", "this command passed") and
10
+ * have code decide each one from the filesystem and the helper's own recorded
11
+ * tool calls — no model call, nothing the helper can write or forge. A check
12
+ * the evidence cannot settle is reported UNVERIFIED, never guessed.
13
+ */
14
+ export declare const MAX_ACCEPTANCE_CHECKS = 10;
15
+ export declare const AcceptanceCheckSchema: z.ZodObject<{
16
+ type: z.ZodEnum<{
17
+ file_exists: "file_exists";
18
+ file_changed: "file_changed";
19
+ command_passed: "command_passed";
20
+ }>;
21
+ target: z.ZodString;
22
+ }, z.core.$strip>;
23
+ export declare const AcceptanceChecksParam: z.ZodOptional<z.ZodArray<z.ZodObject<{
24
+ type: z.ZodEnum<{
25
+ file_exists: "file_exists";
26
+ file_changed: "file_changed";
27
+ command_passed: "command_passed";
28
+ }>;
29
+ target: z.ZodString;
30
+ }, z.core.$strip>>>;
31
+ export type AcceptanceCheck = z.infer<typeof AcceptanceCheckSchema>;
32
+ export type CheckStatus = "PASS" | "FAIL" | "UNVERIFIED";
33
+ export interface CheckResult {
34
+ check: AcceptanceCheck;
35
+ status: CheckStatus;
36
+ reason: string;
37
+ }
38
+ /**
39
+ * Parse checks arriving over a process boundary (the worker's stdin). Invalid
40
+ * input yields no checks rather than failing the helper's whole turn.
41
+ */
42
+ export declare function parseAcceptanceChecks(value: unknown): AcceptanceCheck[];
43
+ /** Decide every check from the helper's recorded calls and the filesystem. */
44
+ export declare function verifyAcceptanceChecks(checks: readonly AcceptanceCheck[], calls: readonly ReceiptCall[], cwd: string): CheckResult[];
45
+ /** `2/3 passed, 1 unverified` — for the one-line completion notice. */
46
+ export declare function summarizeCheckResults(results: readonly CheckResult[]): string;
47
+ /** Block appended under the helper's receipt. Empty when no checks were set. */
48
+ export declare function formatCheckResults(results: readonly CheckResult[]): string;
@@ -0,0 +1,144 @@
1
+ import fs from "node:fs";
2
+ import path from "node:path";
3
+ import { z } from "zod";
4
+ /**
5
+ * Parent-set acceptance checks for a helper agent's task.
6
+ *
7
+ * A helper's report says "done, tests pass" in prose. The receipt shows what
8
+ * it really did, but the parent still has to read it and decide whether that
9
+ * meets the bar. Acceptance checks let the parent state the bar up front ("this
10
+ * file exists", "the helper changed this file", "this command passed") and
11
+ * have code decide each one from the filesystem and the helper's own recorded
12
+ * tool calls — no model call, nothing the helper can write or forge. A check
13
+ * the evidence cannot settle is reported UNVERIFIED, never guessed.
14
+ */
15
+ export const MAX_ACCEPTANCE_CHECKS = 10;
16
+ export const AcceptanceCheckSchema = z.object({
17
+ type: z
18
+ .enum(["file_exists", "file_changed", "command_passed"])
19
+ .describe("file_exists: the path exists when the helper finishes. file_changed: the helper " +
20
+ "wrote or edited the path. command_passed: the helper ran this exact command and " +
21
+ "its last run exited 0 with no file edits after it."),
22
+ target: z.string().min(1).max(500).describe("The file path or the exact shell command"),
23
+ });
24
+ export const AcceptanceChecksParam = z
25
+ .array(AcceptanceCheckSchema)
26
+ .max(MAX_ACCEPTANCE_CHECKS)
27
+ .optional()
28
+ .describe("Optional conditions the result must meet. Checked by code from the filesystem and the " +
29
+ "helper's real tool calls when it finishes, at no model cost, and reported as " +
30
+ "PASS / FAIL / UNVERIFIED alongside its answer.");
31
+ const MUTATING_TOOLS = new Set(["write", "edit"]);
32
+ /**
33
+ * Parse checks arriving over a process boundary (the worker's stdin). Invalid
34
+ * input yields no checks rather than failing the helper's whole turn.
35
+ */
36
+ export function parseAcceptanceChecks(value) {
37
+ const parsed = z.array(AcceptanceCheckSchema).max(MAX_ACCEPTANCE_CHECKS).safeParse(value);
38
+ return parsed.success ? parsed.data : [];
39
+ }
40
+ /** Whitespace-collapsed command with output-only plumbing stripped. */
41
+ function normalizeCommand(command) {
42
+ let text = command.trim().replace(/\s+/g, " ");
43
+ // `cmd 2>&1 | tail -20` reports cmd's own exit code (the bash tool runs with
44
+ // pipefail), so the limiter does not change what "it passed" means.
45
+ for (;;) {
46
+ const stripped = text
47
+ .replace(/\s*\|\s*(?:tail|head)(?:\s+-n)?(?:\s+-?\d+)?\s*$/, "")
48
+ .replace(/\s*2>&1\s*$/, "");
49
+ if (stripped === text)
50
+ return text;
51
+ text = stripped;
52
+ }
53
+ }
54
+ function verifyFileExists(target, cwd) {
55
+ return fs.existsSync(path.resolve(cwd, target)) ? "PASS" : "FAIL";
56
+ }
57
+ function verifyFileChanged(check, calls, cwd) {
58
+ const wanted = path.resolve(cwd, check.target);
59
+ const writes = calls.filter((call) => MUTATING_TOOLS.has(call.name) && path.resolve(cwd, call.target) === wanted);
60
+ if (writes.some((call) => call.outcome === "ok")) {
61
+ return { check, status: "PASS", reason: "the helper wrote or edited it" };
62
+ }
63
+ if (writes.length > 0) {
64
+ return { check, status: "FAIL", reason: "every write or edit of it failed" };
65
+ }
66
+ // A shell command can change a file (sed, codegen, git checkout) and the
67
+ // receipt cannot see which files it touched.
68
+ if (calls.some((call) => call.name === "bash")) {
69
+ return {
70
+ check,
71
+ status: "UNVERIFIED",
72
+ reason: "not written or edited directly; a shell command may have changed it",
73
+ };
74
+ }
75
+ return { check, status: "FAIL", reason: "the helper never wrote or edited it" };
76
+ }
77
+ function verifyCommandPassed(check, calls) {
78
+ const wanted = normalizeCommand(check.target);
79
+ let lastIndex = -1;
80
+ calls.forEach((call, index) => {
81
+ if (call.name === "bash" && normalizeCommand(call.target) === wanted)
82
+ lastIndex = index;
83
+ });
84
+ const last = calls[lastIndex];
85
+ if (!last)
86
+ return { check, status: "UNVERIFIED", reason: "the helper never ran it" };
87
+ if (last.exitCode === undefined) {
88
+ return {
89
+ check,
90
+ status: "UNVERIFIED",
91
+ reason: "its last run reported no exit code (still running, backgrounded or timed out)",
92
+ };
93
+ }
94
+ if (last.exitCode !== "0") {
95
+ return { check, status: "FAIL", reason: `its last run exited ${last.exitCode}` };
96
+ }
97
+ const editedAfter = calls
98
+ .slice(lastIndex + 1)
99
+ .some((call) => MUTATING_TOOLS.has(call.name) && call.outcome === "ok");
100
+ if (editedAfter) {
101
+ return {
102
+ check,
103
+ status: "UNVERIFIED",
104
+ reason: "it passed, but the helper changed files after that run",
105
+ };
106
+ }
107
+ return { check, status: "PASS", reason: "its last run exited 0" };
108
+ }
109
+ /** Decide every check from the helper's recorded calls and the filesystem. */
110
+ export function verifyAcceptanceChecks(checks, calls, cwd) {
111
+ return checks.map((check) => {
112
+ switch (check.type) {
113
+ case "file_exists": {
114
+ const status = verifyFileExists(check.target, cwd);
115
+ return { check, status, reason: status === "PASS" ? "it exists" : "it does not exist" };
116
+ }
117
+ case "file_changed":
118
+ return verifyFileChanged(check, calls, cwd);
119
+ case "command_passed":
120
+ return verifyCommandPassed(check, calls);
121
+ }
122
+ });
123
+ }
124
+ /** `2/3 passed, 1 unverified` — for the one-line completion notice. */
125
+ export function summarizeCheckResults(results) {
126
+ const count = (status) => results.filter((r) => r.status === status).length;
127
+ const parts = [`${count("PASS")}/${results.length} passed`];
128
+ if (count("FAIL") > 0)
129
+ parts.push(`${count("FAIL")} failed`);
130
+ if (count("UNVERIFIED") > 0)
131
+ parts.push(`${count("UNVERIFIED")} unverified`);
132
+ return parts.join(", ");
133
+ }
134
+ /** Block appended under the helper's receipt. Empty when no checks were set. */
135
+ export function formatCheckResults(results) {
136
+ if (results.length === 0)
137
+ return "";
138
+ const lines = results.map(({ check, status, reason }) => {
139
+ const target = check.type === "command_passed" ? `\`${check.target}\`` : check.target;
140
+ return `- ${status} ${check.type} ${target}: ${reason}`;
141
+ });
142
+ return [`Acceptance checks (${summarizeCheckResults(results)}):`, ...lines].join("\n");
143
+ }
144
+ //# sourceMappingURL=acceptance-checks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acceptance-checks.js","sourceRoot":"","sources":["../../src/core/acceptance-checks.ts"],"names":[],"mappings":"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"}