@phuetz/code-buddy 1.6.1 → 2.0.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 (2245) hide show
  1. package/LICENSE +90 -21
  2. package/README.md +145 -349
  3. package/codebuddy-runtime.json +24 -0
  4. package/dist/advanced/session-replay.js +3 -2
  5. package/dist/agent/agent-state.d.ts +4 -1
  6. package/dist/agent/agent-state.js +9 -3
  7. package/dist/agent/architect-mode.js +1 -1
  8. package/dist/agent/autonomous/agentic-coding-contract.d.ts +28 -28
  9. package/dist/agent/autonomous/agentic-coding-runner.d.ts +14 -4
  10. package/dist/agent/autonomous/agentic-coding-runner.js +176 -27
  11. package/dist/agent/autonomous/checkpoint-manager.js +3 -12
  12. package/dist/agent/autonomous/codex-autonomy-directive.d.ts +10 -0
  13. package/dist/agent/autonomous/codex-autonomy-directive.js +25 -0
  14. package/dist/agent/autonomous/edit-proposal-producer.js +2 -2
  15. package/dist/agent/autonomous/fleet-task-types.d.ts +2 -2
  16. package/dist/agent/autonomous/fleet-task-types.js +2 -2
  17. package/dist/agent/autonomous/fleet-tick-handler.d.ts +3 -3
  18. package/dist/agent/autonomous/fleet-tick-handler.js +14 -8
  19. package/dist/agent/autonomous/recursive-improvement.d.ts +23 -0
  20. package/dist/agent/autonomous/recursive-improvement.js +114 -0
  21. package/dist/agent/autonomous/verification-loop.js +4 -2
  22. package/dist/agent/codebuddy-agent.d.ts +93 -6
  23. package/dist/agent/codebuddy-agent.js +452 -58
  24. package/dist/agent/council-lesson-proposer.d.ts +80 -13
  25. package/dist/agent/council-lesson-proposer.js +201 -43
  26. package/dist/agent/deep-research-ckg.d.ts +176 -0
  27. package/dist/agent/deep-research-ckg.js +250 -0
  28. package/dist/agent/deep-research-storm.d.ts +222 -0
  29. package/dist/agent/deep-research-storm.js +689 -0
  30. package/dist/agent/deep-research.d.ts +329 -0
  31. package/dist/agent/deep-research.js +994 -0
  32. package/dist/agent/delegation/thread-delegation.d.ts +80 -0
  33. package/dist/agent/delegation/thread-delegation.js +472 -0
  34. package/dist/agent/delegation/thread-task-runner.d.ts +37 -0
  35. package/dist/agent/delegation/thread-task-runner.js +89 -0
  36. package/dist/agent/dev-loop/dev-loop.d.ts +120 -0
  37. package/dist/agent/dev-loop/dev-loop.js +404 -0
  38. package/dist/agent/dev-loop/structural-gate.d.ts +32 -0
  39. package/dist/agent/dev-loop/structural-gate.js +120 -0
  40. package/dist/agent/execution/agent-executor.d.ts +52 -31
  41. package/dist/agent/execution/agent-executor.js +1520 -547
  42. package/dist/agent/execution/context-pipeline.d.ts +54 -6
  43. package/dist/agent/execution/context-pipeline.js +285 -88
  44. package/dist/agent/execution/incremental-token-counter.d.ts +15 -0
  45. package/dist/agent/execution/incremental-token-counter.js +36 -0
  46. package/dist/agent/execution/ordered-tool-executor.d.ts +14 -0
  47. package/dist/agent/execution/ordered-tool-executor.js +54 -0
  48. package/dist/agent/execution/post-tool-handlers.d.ts +1 -1
  49. package/dist/agent/execution/post-tool-handlers.js +2 -2
  50. package/dist/agent/execution/query-classifier.d.ts +2 -0
  51. package/dist/agent/execution/query-classifier.js +2 -0
  52. package/dist/agent/execution/tool-dependency-graph.js +7 -0
  53. package/dist/agent/execution/tool-selection-strategy.d.ts +20 -0
  54. package/dist/agent/execution/tool-selection-strategy.js +145 -23
  55. package/dist/agent/facades/message-history-manager.d.ts +1 -1
  56. package/dist/agent/facades/message-history-manager.js +1 -1
  57. package/dist/agent/facades/model-routing-facade.d.ts +31 -1
  58. package/dist/agent/facades/model-routing-facade.js +86 -2
  59. package/dist/agent/facades/session-facade.d.ts +10 -2
  60. package/dist/agent/facades/session-facade.js +59 -1
  61. package/dist/agent/film/film-producer.d.ts +98 -0
  62. package/dist/agent/film/film-producer.js +289 -0
  63. package/dist/agent/film/scene-planner.d.ts +38 -0
  64. package/dist/agent/film/scene-planner.js +93 -0
  65. package/dist/agent/film/trailer-planner.d.ts +23 -0
  66. package/dist/agent/film/trailer-planner.js +242 -0
  67. package/dist/agent/film/video-studio.d.ts +72 -0
  68. package/dist/agent/film/video-studio.js +249 -0
  69. package/dist/agent/flow/planning-flow.d.ts +3 -0
  70. package/dist/agent/flow/planning-flow.js +70 -8
  71. package/dist/agent/hermes-claw-migrate.d.ts +62 -0
  72. package/dist/agent/hermes-claw-migrate.js +189 -15
  73. package/dist/agent/hermes-memory-providers.js +3 -3
  74. package/dist/agent/hermes-parity-manifest.js +69 -15
  75. package/dist/agent/infrastructure/agent-infrastructure.d.ts +1 -0
  76. package/dist/agent/infrastructure/agent-infrastructure.js +1 -1
  77. package/dist/agent/isolation/agent-workspace.js +5 -2
  78. package/dist/agent/learning/skill-background-writes.js +9 -4
  79. package/dist/agent/learning-agent.js +4 -4
  80. package/dist/agent/learning-background-writes.js +9 -5
  81. package/dist/agent/lesson-candidate-queue.d.ts +4 -0
  82. package/dist/agent/lesson-candidate-queue.js +9 -3
  83. package/dist/agent/lesson-provenance.js +9 -3
  84. package/dist/agent/lessons-tracker.d.ts +68 -1
  85. package/dist/agent/lessons-tracker.js +218 -36
  86. package/dist/agent/loop-detection-service.d.ts +56 -0
  87. package/dist/agent/loop-detection-service.js +207 -0
  88. package/dist/agent/middleware/auto-observation.d.ts +2 -0
  89. package/dist/agent/middleware/auto-observation.js +4 -2
  90. package/dist/agent/middleware/auto-repair-middleware.d.ts +2 -0
  91. package/dist/agent/middleware/auto-repair-middleware.js +27 -4
  92. package/dist/agent/middleware/changed-files.d.ts +19 -0
  93. package/dist/agent/middleware/changed-files.js +113 -0
  94. package/dist/agent/middleware/cost-limit.d.ts +0 -2
  95. package/dist/agent/middleware/cost-limit.js +0 -3
  96. package/dist/agent/middleware/index.d.ts +2 -0
  97. package/dist/agent/middleware/index.js +1 -0
  98. package/dist/agent/middleware/pipeline.d.ts +9 -0
  99. package/dist/agent/middleware/pipeline.js +18 -0
  100. package/dist/agent/middleware/plan-completion-audit.d.ts +76 -0
  101. package/dist/agent/middleware/plan-completion-audit.js +157 -0
  102. package/dist/agent/middleware/quality-gate-middleware.d.ts +43 -1
  103. package/dist/agent/middleware/quality-gate-middleware.js +198 -40
  104. package/dist/agent/middleware/types.d.ts +6 -0
  105. package/dist/agent/middleware/verification-enforcement.d.ts +10 -3
  106. package/dist/agent/middleware/verification-enforcement.js +43 -13
  107. package/dist/agent/middleware/workflow-guard.js +7 -0
  108. package/dist/agent/model-benchmark.js +11 -17
  109. package/dist/agent/model-tier.d.ts +2 -2
  110. package/dist/agent/model-tier.js +10 -7
  111. package/dist/agent/multi-agent/agent-memory-integration.js +3 -2
  112. package/dist/agent/multi-agent/base-agent.d.ts +12 -1
  113. package/dist/agent/multi-agent/base-agent.js +58 -10
  114. package/dist/agent/multi-agent/enhanced-coordination.js +1 -0
  115. package/dist/agent/multi-agent/metrics-persistence.js +28 -14
  116. package/dist/agent/multi-agent/multi-agent-system.d.ts +5 -0
  117. package/dist/agent/multi-agent/multi-agent-system.js +81 -4
  118. package/dist/agent/multi-agent/session-fleet-bridge.js +2 -1
  119. package/dist/agent/multi-agent/session-registry.js +9 -3
  120. package/dist/agent/multi-agent/team-manager.d.ts +11 -0
  121. package/dist/agent/multi-agent/team-manager.js +94 -5
  122. package/dist/agent/multi-agent/types.d.ts +10 -1
  123. package/dist/agent/multi-agent/workflow-multi-persistence.js +16 -8
  124. package/dist/agent/multi-agent/workflow-persistence.js +9 -6
  125. package/dist/agent/observer/trigger-registry.js +3 -5
  126. package/dist/agent/operating-modes.d.ts +3 -0
  127. package/dist/agent/operating-modes.js +15 -22
  128. package/dist/agent/pipelines.d.ts +2 -4
  129. package/dist/agent/pipelines.js +1 -1
  130. package/dist/agent/plan-mode.js +1 -1
  131. package/dist/agent/prompt-suggestions.js +2 -1
  132. package/dist/agent/prompt-tool-observation.d.ts +55 -0
  133. package/dist/agent/prompt-tool-observation.js +165 -0
  134. package/dist/agent/reasoning/tree-of-thought.js +1 -1
  135. package/dist/agent/repair/repair-engine.js +1 -1
  136. package/dist/agent/repo-profiler.d.ts +12 -1
  137. package/dist/agent/repo-profiler.js +21 -15
  138. package/dist/agent/repo-profiling/cache.js +6 -9
  139. package/dist/agent/research-worker-provider.d.ts +38 -0
  140. package/dist/agent/research-worker-provider.js +30 -0
  141. package/dist/agent/science/experiment-decision.d.ts +48 -0
  142. package/dist/agent/science/experiment-decision.js +65 -0
  143. package/dist/agent/science/experiment-empirical-gate.d.ts +83 -0
  144. package/dist/agent/science/experiment-empirical-gate.js +156 -0
  145. package/dist/agent/science/experiment-fitness.d.ts +112 -0
  146. package/dist/agent/science/experiment-fitness.js +188 -0
  147. package/dist/agent/science/experiment-loop.d.ts +196 -0
  148. package/dist/agent/science/experiment-loop.js +765 -0
  149. package/dist/agent/science/experiment-orchestrator.d.ts +203 -0
  150. package/dist/agent/science/experiment-orchestrator.js +454 -0
  151. package/dist/agent/science/experiment-sandbox-backends.d.ts +56 -0
  152. package/dist/agent/science/experiment-sandbox-backends.js +201 -0
  153. package/dist/agent/science/experiment-sandbox.d.ts +105 -0
  154. package/dist/agent/science/experiment-sandbox.js +196 -0
  155. package/dist/agent/science/experiment-variant-store.d.ts +108 -0
  156. package/dist/agent/science/experiment-variant-store.js +156 -0
  157. package/dist/agent/science/human-gate.d.ts +31 -0
  158. package/dist/agent/science/human-gate.js +32 -0
  159. package/dist/agent/self-improvement/authored-artifact-gate.js +28 -3
  160. package/dist/agent/self-improvement/authored-tool-runtime.d.ts +4 -2
  161. package/dist/agent/self-improvement/authored-tool-runtime.js +8 -3
  162. package/dist/agent/self-improvement/authored-tool-store.js +3 -2
  163. package/dist/agent/self-improvement/capability-benchmark.js +89 -2
  164. package/dist/agent/self-improvement/continuous-benchmark.d.ts +105 -0
  165. package/dist/agent/self-improvement/continuous-benchmark.js +355 -0
  166. package/dist/agent/self-improvement/delegation-facts.d.ts +105 -0
  167. package/dist/agent/self-improvement/delegation-facts.js +483 -0
  168. package/dist/agent/self-improvement/digest-sources.d.ts +56 -0
  169. package/dist/agent/self-improvement/digest-sources.js +294 -0
  170. package/dist/agent/self-improvement/digest.d.ts +169 -0
  171. package/dist/agent/self-improvement/digest.js +543 -0
  172. package/dist/agent/self-improvement/engine.d.ts +11 -6
  173. package/dist/agent/self-improvement/engine.js +13 -7
  174. package/dist/agent/self-improvement/evolution/ast-novelty.d.ts +20 -0
  175. package/dist/agent/self-improvement/evolution/ast-novelty.js +81 -0
  176. package/dist/agent/self-improvement/evolution/code-variant-store.d.ts +101 -0
  177. package/dist/agent/self-improvement/evolution/code-variant-store.js +229 -0
  178. package/dist/agent/self-improvement/evolution/evolution-engine.d.ts +199 -0
  179. package/dist/agent/self-improvement/evolution/evolution-engine.js +503 -0
  180. package/dist/agent/self-improvement/evolution/feature-map.d.ts +24 -0
  181. package/dist/agent/self-improvement/evolution/feature-map.js +88 -0
  182. package/dist/agent/self-improvement/evolution/model-bandit.d.ts +57 -0
  183. package/dist/agent/self-improvement/evolution/model-bandit.js +98 -0
  184. package/dist/agent/self-improvement/evolution/protected-paths.d.ts +31 -0
  185. package/dist/agent/self-improvement/evolution/protected-paths.js +105 -0
  186. package/dist/agent/self-improvement/evolution/research-weakness-source.d.ts +56 -0
  187. package/dist/agent/self-improvement/evolution/research-weakness-source.js +161 -0
  188. package/dist/agent/self-improvement/evolution/scrub-env.d.ts +22 -0
  189. package/dist/agent/self-improvement/evolution/scrub-env.js +40 -0
  190. package/dist/agent/self-improvement/evolution/variant-fitness.d.ts +86 -0
  191. package/dist/agent/self-improvement/evolution/variant-fitness.js +217 -0
  192. package/dist/agent/self-improvement/evolution/variant-planner.d.ts +41 -0
  193. package/dist/agent/self-improvement/evolution/variant-planner.js +156 -0
  194. package/dist/agent/self-improvement/evolution/weakness-selector.d.ts +38 -0
  195. package/dist/agent/self-improvement/evolution/weakness-selector.js +108 -0
  196. package/dist/agent/self-improvement/evolution/worktree-scorer.d.ts +44 -0
  197. package/dist/agent/self-improvement/evolution/worktree-scorer.js +99 -0
  198. package/dist/agent/self-improvement/evolutionary-archive.js +3 -2
  199. package/dist/agent/self-improvement/experience-source.d.ts +60 -7
  200. package/dist/agent/self-improvement/experience-source.js +78 -8
  201. package/dist/agent/self-improvement/index.d.ts +1 -0
  202. package/dist/agent/self-improvement/index.js +6 -3
  203. package/dist/agent/self-improvement/learning-store.d.ts +16 -0
  204. package/dist/agent/self-improvement/learning-store.js +83 -3
  205. package/dist/agent/self-improvement/llm-drafter.d.ts +3 -1
  206. package/dist/agent/self-improvement/llm-drafter.js +20 -2
  207. package/dist/agent/self-improvement/llm-tool-proposer.js +1 -1
  208. package/dist/agent/self-improvement/proposal-store.d.ts +46 -0
  209. package/dist/agent/self-improvement/proposal-store.js +87 -0
  210. package/dist/agent/self-improvement/proposer.d.ts +1 -1
  211. package/dist/agent/self-improvement/proposer.js +94 -2
  212. package/dist/agent/self-improvement/rule-store.js +5 -4
  213. package/dist/agent/self-improvement/sandbox-scorer.d.ts +1 -1
  214. package/dist/agent/self-improvement/sandbox-scorer.js +8 -4
  215. package/dist/agent/self-improvement/self-knowledge.d.ts +1 -1
  216. package/dist/agent/self-improvement/self-knowledge.js +8 -8
  217. package/dist/agent/self-improvement/skill-benchmark.js +27 -0
  218. package/dist/agent/self-improvement/skill-consolidator.js +16 -0
  219. package/dist/agent/self-improvement/skill-engine.d.ts +7 -0
  220. package/dist/agent/self-improvement/skill-engine.js +54 -28
  221. package/dist/agent/self-improvement/skill-gate.d.ts +4 -4
  222. package/dist/agent/self-improvement/skill-gate.js +38 -20
  223. package/dist/agent/self-improvement/skill-mutator.d.ts +20 -1
  224. package/dist/agent/self-improvement/skill-mutator.js +138 -19
  225. package/dist/agent/self-improvement/skill-proposer.js +2 -1
  226. package/dist/agent/self-improvement/skill-types.d.ts +4 -0
  227. package/dist/agent/self-improvement/strategy-engine.d.ts +54 -0
  228. package/dist/agent/self-improvement/strategy-engine.js +104 -0
  229. package/dist/agent/self-improvement/strategy-gate.d.ts +49 -0
  230. package/dist/agent/self-improvement/strategy-gate.js +243 -0
  231. package/dist/agent/self-improvement/strategy-live.d.ts +39 -0
  232. package/dist/agent/self-improvement/strategy-live.js +114 -0
  233. package/dist/agent/self-improvement/strategy-proposer.d.ts +30 -0
  234. package/dist/agent/self-improvement/strategy-proposer.js +114 -0
  235. package/dist/agent/self-improvement/strategy-replay.d.ts +40 -0
  236. package/dist/agent/self-improvement/strategy-replay.js +150 -0
  237. package/dist/agent/self-improvement/strategy-runtime.d.ts +43 -0
  238. package/dist/agent/self-improvement/strategy-runtime.js +56 -0
  239. package/dist/agent/self-improvement/strategy-store.d.ts +38 -0
  240. package/dist/agent/self-improvement/strategy-store.js +139 -0
  241. package/dist/agent/self-improvement/strategy-types.d.ts +229 -0
  242. package/dist/agent/self-improvement/strategy-types.js +90 -0
  243. package/dist/agent/self-improvement/tool-benchmark.js +164 -8
  244. package/dist/agent/self-improvement/tool-engine.d.ts +12 -3
  245. package/dist/agent/self-improvement/tool-engine.js +59 -31
  246. package/dist/agent/self-improvement/tool-gate.d.ts +2 -0
  247. package/dist/agent/self-improvement/tool-gate.js +26 -0
  248. package/dist/agent/self-improvement/tool-skill-mutator.d.ts +1 -1
  249. package/dist/agent/self-improvement/tool-skill-mutator.js +20 -2
  250. package/dist/agent/self-improvement/tool-types.d.ts +5 -3
  251. package/dist/agent/self-improvement/types.d.ts +7 -3
  252. package/dist/agent/session-end-flush.js +2 -1
  253. package/dist/agent/specialized/agent-registry.d.ts +1 -0
  254. package/dist/agent/specialized/agent-registry.js +118 -0
  255. package/dist/agent/specialized/excel-agent.js +15 -1
  256. package/dist/agent/specialized/index.d.ts +1 -0
  257. package/dist/agent/specialized/index.js +2 -0
  258. package/dist/agent/specialized/pdf-agent.js +4 -2
  259. package/dist/agent/specialized/swe-agent-adapter.js +8 -0
  260. package/dist/agent/specialized/swe-agent.d.ts +16 -1
  261. package/dist/agent/specialized/swe-agent.js +75 -7
  262. package/dist/agent/specialized/types.d.ts +31 -1
  263. package/dist/agent/specialized/types.js +26 -0
  264. package/dist/agent/specialized/verifier-agent.d.ts +53 -0
  265. package/dist/agent/specialized/verifier-agent.js +342 -0
  266. package/dist/agent/streaming/message-reducer.js +73 -19
  267. package/dist/agent/streaming/streaming-handler.d.ts +24 -0
  268. package/dist/agent/streaming/streaming-handler.js +136 -1
  269. package/dist/agent/subagents.d.ts +10 -4
  270. package/dist/agent/subagents.js +39 -6
  271. package/dist/agent/thinking/extended-thinking.js +1 -1
  272. package/dist/agent/todo-tracker.js +5 -4
  273. package/dist/agent/tool-executor.d.ts +10 -1
  274. package/dist/agent/tool-executor.js +29 -0
  275. package/dist/agent/tool-handler.d.ts +49 -2
  276. package/dist/agent/tool-handler.js +738 -181
  277. package/dist/agent/types.d.ts +3 -5
  278. package/dist/agent/wide-research-checkpoint.d.ts +77 -0
  279. package/dist/agent/wide-research-checkpoint.js +361 -0
  280. package/dist/agent/wide-research-files.d.ts +11 -0
  281. package/dist/agent/wide-research-files.js +189 -0
  282. package/dist/agent/wide-research.d.ts +148 -3
  283. package/dist/agent/wide-research.js +833 -56
  284. package/dist/analytics/code-evolution.js +20 -15
  285. package/dist/analytics/complexity-analyzer.js +2 -2
  286. package/dist/analytics/cost-report.d.ts +71 -0
  287. package/dist/analytics/cost-report.js +724 -0
  288. package/dist/analytics/dashboard.js +8 -7
  289. package/dist/analytics/index.d.ts +2 -0
  290. package/dist/analytics/index.js +2 -0
  291. package/dist/analytics/repo-explainer-collector.d.ts +13 -0
  292. package/dist/analytics/repo-explainer-collector.js +351 -0
  293. package/dist/analytics/repo-explainer.d.ts +224 -0
  294. package/dist/analytics/repo-explainer.js +605 -0
  295. package/dist/analytics/roi-tracker.js +11 -9
  296. package/dist/api/webhooks.js +9 -14
  297. package/dist/app/application-factory.d.ts +1 -1
  298. package/dist/app/application-factory.js +6 -5
  299. package/dist/auth/profile-manager.js +8 -4
  300. package/dist/avatar/avatar-event-bus.d.ts +16 -0
  301. package/dist/avatar/avatar-event-bus.js +53 -0
  302. package/dist/avatar/avatar-gateway-bridge.d.ts +26 -0
  303. package/dist/avatar/avatar-gateway-bridge.js +54 -0
  304. package/dist/avatar/avatar-protocol.d.ts +133 -0
  305. package/dist/avatar/avatar-protocol.js +241 -0
  306. package/dist/avatar/avatar-renderer-registry.d.ts +56 -0
  307. package/dist/avatar/avatar-renderer-registry.js +191 -0
  308. package/dist/avatar/avatar-renderer-simulator.d.ts +31 -0
  309. package/dist/avatar/avatar-renderer-simulator.js +160 -0
  310. package/dist/browser-automation/browser-manager.d.ts +15 -1
  311. package/dist/browser-automation/browser-manager.js +101 -0
  312. package/dist/browser-automation/browser-operator-executor.d.ts +89 -7
  313. package/dist/browser-automation/browser-operator-executor.js +1280 -58
  314. package/dist/browser-automation/browser-operator-runtime.d.ts +87 -0
  315. package/dist/browser-automation/browser-operator-runtime.js +441 -0
  316. package/dist/browser-automation/browser-operator-session.js +4 -3
  317. package/dist/browser-automation/browser-tool.d.ts +17 -2
  318. package/dist/browser-automation/browser-tool.js +101 -39
  319. package/dist/browser-automation/internet-scout-plan.d.ts +1 -0
  320. package/dist/browser-automation/internet-scout-plan.js +17 -0
  321. package/dist/browser-automation/profile-manager.js +5 -3
  322. package/dist/browser-automation/types.d.ts +25 -0
  323. package/dist/cache/advanced-lru-cache.js +4 -4
  324. package/dist/cache/cache-manager.js +9 -10
  325. package/dist/cache/embedding-cache.js +6 -5
  326. package/dist/cache/llm-response-cache.js +3 -4
  327. package/dist/capture/screen-recorder.d.ts +2 -0
  328. package/dist/capture/screen-recorder.js +6 -4
  329. package/dist/capture/screen-watcher.d.ts +6 -3
  330. package/dist/capture/screen-watcher.js +86 -9
  331. package/dist/channels/channel-cognitive-port.d.ts +46 -0
  332. package/dist/channels/channel-cognitive-port.js +182 -0
  333. package/dist/channels/channel-model-override.d.ts +47 -0
  334. package/dist/channels/channel-model-override.js +62 -0
  335. package/dist/channels/companion-channel-profile.d.ts +68 -0
  336. package/dist/channels/companion-channel-profile.js +142 -0
  337. package/dist/channels/companion-channel-turn.d.ts +30 -0
  338. package/dist/channels/companion-channel-turn.js +38 -0
  339. package/dist/channels/core.d.ts +37 -3
  340. package/dist/channels/core.js +63 -6
  341. package/dist/channels/discord/client.js +34 -14
  342. package/dist/channels/dm-pairing.d.ts +18 -4
  343. package/dist/channels/dm-pairing.js +199 -33
  344. package/dist/channels/gateway-lifecycle.d.ts +2 -0
  345. package/dist/channels/gateway-lifecycle.js +1 -0
  346. package/dist/channels/identity-links.d.ts +19 -1
  347. package/dist/channels/identity-links.js +68 -12
  348. package/dist/channels/matrix/index.js +6 -2
  349. package/dist/channels/pro/pro-features.js +17 -0
  350. package/dist/channels/pro/run-tracker.js +9 -4
  351. package/dist/channels/pro/scoped-auth.js +10 -8
  352. package/dist/channels/provider-failure-speech.d.ts +28 -0
  353. package/dist/channels/provider-failure-speech.js +128 -0
  354. package/dist/channels/reconnection-manager.d.ts +2 -0
  355. package/dist/channels/reconnection-manager.js +7 -2
  356. package/dist/channels/resolve-channel-secret.d.ts +43 -0
  357. package/dist/channels/resolve-channel-secret.js +82 -0
  358. package/dist/channels/slack/block-builder.d.ts +12 -0
  359. package/dist/channels/slack/block-builder.js +70 -2
  360. package/dist/channels/slack/client.js +62 -15
  361. package/dist/channels/slack/types.d.ts +20 -1
  362. package/dist/channels/telegram/client.d.ts +36 -3
  363. package/dist/channels/telegram/client.js +438 -84
  364. package/dist/channels/telegram/types.d.ts +2 -0
  365. package/dist/channels/webhook-server.js +8 -1
  366. package/dist/channels/whatsapp/index.js +2 -1
  367. package/dist/checkpoints/ghost-snapshot.js +15 -9
  368. package/dist/checkpoints/persistent-checkpoint-manager.js +15 -8
  369. package/dist/cli/command-routing.d.ts +22 -0
  370. package/dist/cli/command-routing.js +54 -0
  371. package/dist/cli/first-run.d.ts +17 -0
  372. package/dist/cli/first-run.js +40 -0
  373. package/dist/cli/headless-options.d.ts +22 -0
  374. package/dist/cli/headless-options.js +112 -0
  375. package/dist/cli/headless-prompt-progress.d.ts +22 -0
  376. package/dist/cli/headless-prompt-progress.js +35 -0
  377. package/dist/cli/headless.js +2 -2
  378. package/dist/cli/listen-port.d.ts +8 -0
  379. package/dist/cli/listen-port.js +20 -0
  380. package/dist/cli/permission-mode-option.d.ts +14 -0
  381. package/dist/cli/permission-mode-option.js +64 -0
  382. package/dist/cli/requested-profile.d.ts +15 -0
  383. package/dist/cli/requested-profile.js +27 -0
  384. package/dist/cli/unknown-option-hint.d.ts +16 -0
  385. package/dist/cli/unknown-option-hint.js +116 -0
  386. package/dist/cli/voice-command.d.ts +32 -0
  387. package/dist/cli/voice-command.js +96 -0
  388. package/dist/codebuddy/abort-signal.d.ts +7 -0
  389. package/dist/codebuddy/abort-signal.js +31 -0
  390. package/dist/codebuddy/client.d.ts +68 -0
  391. package/dist/codebuddy/client.js +460 -11
  392. package/dist/codebuddy/fleet-tool-defs.js +5 -0
  393. package/dist/codebuddy/llm-retry.d.ts +24 -0
  394. package/dist/codebuddy/llm-retry.js +124 -0
  395. package/dist/codebuddy/provider-error-classifier.d.ts +86 -0
  396. package/dist/codebuddy/provider-error-classifier.js +410 -0
  397. package/dist/codebuddy/provider-failover-error.d.ts +16 -0
  398. package/dist/codebuddy/provider-failover-error.js +50 -0
  399. package/dist/codebuddy/provider-failover-kind.d.ts +15 -0
  400. package/dist/codebuddy/provider-failover-kind.js +172 -0
  401. package/dist/codebuddy/provider-handoff.d.ts +35 -0
  402. package/dist/codebuddy/provider-handoff.js +294 -0
  403. package/dist/codebuddy/providers/ollama-native-transport.d.ts +130 -0
  404. package/dist/codebuddy/providers/ollama-native-transport.js +387 -0
  405. package/dist/codebuddy/providers/provider-agy-cli.d.ts +29 -0
  406. package/dist/codebuddy/providers/provider-agy-cli.js +264 -0
  407. package/dist/codebuddy/providers/provider-chatgpt-responses.d.ts +59 -7
  408. package/dist/codebuddy/providers/provider-chatgpt-responses.js +519 -164
  409. package/dist/codebuddy/providers/provider-gemini-cli.js +95 -13
  410. package/dist/codebuddy/providers/provider-gemini-native.d.ts +2 -0
  411. package/dist/codebuddy/providers/provider-gemini-native.js +199 -86
  412. package/dist/codebuddy/providers/provider-openai-compat.d.ts +82 -0
  413. package/dist/codebuddy/providers/provider-openai-compat.js +469 -45
  414. package/dist/codebuddy/stream-retry.d.ts +21 -8
  415. package/dist/codebuddy/stream-retry.js +44 -40
  416. package/dist/codebuddy/tool-definitions/advanced-tools.d.ts +4 -0
  417. package/dist/codebuddy/tool-definitions/advanced-tools.js +188 -0
  418. package/dist/codebuddy/tool-definitions/agent-tools.d.ts +5 -0
  419. package/dist/codebuddy/tool-definitions/agent-tools.js +195 -7
  420. package/dist/codebuddy/tool-definitions/browser-tools.d.ts +1 -0
  421. package/dist/codebuddy/tool-definitions/browser-tools.js +65 -1
  422. package/dist/codebuddy/tool-definitions/code-exec-tools.d.ts +8 -0
  423. package/dist/codebuddy/tool-definitions/code-exec-tools.js +29 -0
  424. package/dist/codebuddy/tool-definitions/code-explorer-tools.js +4 -0
  425. package/dist/codebuddy/tool-definitions/comfy-recipe-tools.d.ts +3 -0
  426. package/dist/codebuddy/tool-definitions/comfy-recipe-tools.js +37 -0
  427. package/dist/codebuddy/tool-definitions/core-tools.d.ts +2 -0
  428. package/dist/codebuddy/tool-definitions/core-tools.js +58 -2
  429. package/dist/codebuddy/tool-definitions/delegate-agent-tools.d.ts +11 -0
  430. package/dist/codebuddy/tool-definitions/delegate-agent-tools.js +50 -0
  431. package/dist/codebuddy/tool-definitions/design-tools.d.ts +6 -0
  432. package/dist/codebuddy/tool-definitions/design-tools.js +35 -0
  433. package/dist/codebuddy/tool-definitions/exit-plan-mode-tools.d.ts +1 -0
  434. package/dist/codebuddy/tool-definitions/exit-plan-mode-tools.js +23 -1
  435. package/dist/codebuddy/tool-definitions/index.d.ts +16 -7
  436. package/dist/codebuddy/tool-definitions/index.js +27 -8
  437. package/dist/codebuddy/tool-definitions/lsp-tools.d.ts +7 -1
  438. package/dist/codebuddy/tool-definitions/lsp-tools.js +104 -1
  439. package/dist/codebuddy/tool-definitions/meeting-tools.d.ts +4 -0
  440. package/dist/codebuddy/tool-definitions/meeting-tools.js +32 -0
  441. package/dist/codebuddy/tool-definitions/moa-tools.js +7 -2
  442. package/dist/codebuddy/tool-definitions/multimodal-tools.d.ts +14 -0
  443. package/dist/codebuddy/tool-definitions/multimodal-tools.js +615 -3
  444. package/dist/codebuddy/tool-definitions/research-tools.d.ts +20 -0
  445. package/dist/codebuddy/tool-definitions/research-tools.js +98 -0
  446. package/dist/codebuddy/tool-definitions/self-describe-tools.d.ts +4 -0
  447. package/dist/codebuddy/tool-definitions/self-describe-tools.js +28 -0
  448. package/dist/codebuddy/tool-definitions/self-evolution-tools.d.ts +4 -0
  449. package/dist/codebuddy/tool-definitions/self-evolution-tools.js +31 -0
  450. package/dist/codebuddy/tool-definitions/verify-tools.d.ts +14 -0
  451. package/dist/codebuddy/tool-definitions/verify-tools.js +36 -0
  452. package/dist/codebuddy/tool-definitions/web-tools.d.ts +4 -0
  453. package/dist/codebuddy/tool-definitions/web-tools.js +135 -0
  454. package/dist/codebuddy/tool-definitions/workspace-tools.d.ts +4 -0
  455. package/dist/codebuddy/tool-definitions/workspace-tools.js +43 -0
  456. package/dist/codebuddy/tools.d.ts +15 -17
  457. package/dist/codebuddy/tools.js +235 -55
  458. package/dist/cognition/budget-reservations.d.ts +27 -0
  459. package/dist/cognition/budget-reservations.js +70 -0
  460. package/dist/cognition/cognitive-bus-client.d.ts +94 -0
  461. package/dist/cognition/cognitive-bus-client.js +724 -0
  462. package/dist/cognition/cognitive-hub.d.ts +93 -0
  463. package/dist/cognition/cognitive-hub.js +366 -0
  464. package/dist/cognition/cognitive-mesh.d.ts +38 -0
  465. package/dist/cognition/cognitive-mesh.js +263 -0
  466. package/dist/cognition/cognitive-port.d.ts +35 -0
  467. package/dist/cognition/cognitive-port.js +80 -0
  468. package/dist/cognition/cognitive-wire-contract.d.ts +1542 -0
  469. package/dist/cognition/cognitive-wire-contract.js +164 -0
  470. package/dist/cognition/context-renderer.d.ts +52 -0
  471. package/dist/cognition/context-renderer.js +227 -0
  472. package/dist/cognition/global-workspace.d.ts +39 -0
  473. package/dist/cognition/global-workspace.js +181 -0
  474. package/dist/cognition/index.d.ts +9 -0
  475. package/dist/cognition/index.js +10 -0
  476. package/dist/cognition/llm-specialist.d.ts +40 -0
  477. package/dist/cognition/llm-specialist.js +93 -0
  478. package/dist/cognition/sensory-workspace.d.ts +57 -0
  479. package/dist/cognition/sensory-workspace.js +346 -0
  480. package/dist/cognition/types.d.ts +93 -0
  481. package/dist/cognition/types.js +7 -0
  482. package/dist/cognition/voice-specialists.d.ts +21 -0
  483. package/dist/cognition/voice-specialists.js +89 -0
  484. package/dist/cognition/world-model.d.ts +95 -0
  485. package/dist/cognition/world-model.js +228 -0
  486. package/dist/collaboration/ai-colab-manager.js +12 -13
  487. package/dist/collaboration/team-session.js +25 -11
  488. package/dist/commands/apply-permission-mode.d.ts +27 -0
  489. package/dist/commands/apply-permission-mode.js +35 -0
  490. package/dist/commands/assistant.d.ts +3 -0
  491. package/dist/commands/assistant.js +1022 -0
  492. package/dist/commands/campaign.d.ts +6 -0
  493. package/dist/commands/campaign.js +140 -0
  494. package/dist/commands/capsule.d.ts +2 -0
  495. package/dist/commands/capsule.js +104 -0
  496. package/dist/commands/changelog.d.ts +29 -0
  497. package/dist/commands/changelog.js +283 -0
  498. package/dist/commands/cli/acp-command.js +4 -1
  499. package/dist/commands/cli/backup-command.d.ts +9 -0
  500. package/dist/commands/cli/backup-command.js +47 -0
  501. package/dist/commands/cli/evolve-command.d.ts +26 -0
  502. package/dist/commands/cli/evolve-command.js +259 -0
  503. package/dist/commands/cli/fleet-commands.js +105 -0
  504. package/dist/commands/cli/improve-command.d.ts +2 -1
  505. package/dist/commands/cli/improve-command.js +309 -20
  506. package/dist/commands/cli/native-engine-commands.js +405 -28
  507. package/dist/commands/cli/sensory-command.d.ts +8 -0
  508. package/dist/commands/cli/sensory-command.js +27 -0
  509. package/dist/commands/cli/speak-command.js +87 -24
  510. package/dist/commands/cli/tools-commands.js +68 -36
  511. package/dist/commands/cli/utility-commands.js +34 -9
  512. package/dist/commands/client-dispatcher.d.ts +1 -0
  513. package/dist/commands/client-dispatcher.js +40 -21
  514. package/dist/commands/compress.js +3 -0
  515. package/dist/commands/cost.d.ts +33 -0
  516. package/dist/commands/cost.js +342 -0
  517. package/dist/commands/council-scoreboard.d.ts +8 -0
  518. package/dist/commands/council-scoreboard.js +68 -0
  519. package/dist/commands/council.d.ts +16 -24
  520. package/dist/commands/council.js +247 -255
  521. package/dist/commands/curator-cli.d.ts +14 -0
  522. package/dist/commands/curator-cli.js +57 -0
  523. package/dist/commands/delegate.js +82 -25
  524. package/dist/commands/dev/golden-path.d.ts +71 -0
  525. package/dist/commands/dev/golden-path.js +317 -0
  526. package/dist/commands/dev/index.d.ts +3 -0
  527. package/dist/commands/dev/index.js +151 -119
  528. package/dist/commands/dev/issue-pipeline.js +7 -7
  529. package/dist/commands/dev/workflows.d.ts +2 -0
  530. package/dist/commands/dev/workflows.js +39 -6
  531. package/dist/commands/enhanced-command-handler.d.ts +3 -0
  532. package/dist/commands/enhanced-command-handler.js +29 -12
  533. package/dist/commands/exchange.d.ts +2 -0
  534. package/dist/commands/exchange.js +193 -0
  535. package/dist/commands/explain.d.ts +12 -0
  536. package/dist/commands/explain.js +135 -0
  537. package/dist/commands/film.d.ts +18 -0
  538. package/dist/commands/film.js +239 -0
  539. package/dist/commands/flow.js +15 -5
  540. package/dist/commands/forge.d.ts +2 -0
  541. package/dist/commands/forge.js +102 -0
  542. package/dist/commands/goal-cli.d.ts +3 -0
  543. package/dist/commands/goal-cli.js +9 -4
  544. package/dist/commands/gpu-worker.d.ts +14 -0
  545. package/dist/commands/gpu-worker.js +135 -0
  546. package/dist/commands/handlers/agents-handler.d.ts +11 -2
  547. package/dist/commands/handlers/agents-handler.js +79 -13
  548. package/dist/commands/handlers/auth-handlers.js +12 -5
  549. package/dist/commands/handlers/backup-handlers.d.ts +40 -0
  550. package/dist/commands/handlers/backup-handlers.js +784 -57
  551. package/dist/commands/handlers/batch-handlers.d.ts +72 -2
  552. package/dist/commands/handlers/batch-handlers.js +443 -37
  553. package/dist/commands/handlers/branch-handlers.d.ts +1 -0
  554. package/dist/commands/handlers/channel-handlers.d.ts +7 -2
  555. package/dist/commands/handlers/channel-handlers.js +1665 -111
  556. package/dist/commands/handlers/companion-handler.js +130 -9
  557. package/dist/commands/handlers/daily-reset-handler.d.ts +1 -1
  558. package/dist/commands/handlers/daily-reset-handler.js +1 -1
  559. package/dist/commands/handlers/deepthink-handler.d.ts +2 -0
  560. package/dist/commands/handlers/deepthink-handler.js +49 -0
  561. package/dist/commands/handlers/extra-handlers.js +23 -24
  562. package/dist/commands/handlers/fleet-handler.d.ts +3 -4
  563. package/dist/commands/handlers/fleet-handler.js +82 -35
  564. package/dist/commands/handlers/goal-handler.d.ts +13 -0
  565. package/dist/commands/handlers/goal-handler.js +26 -7
  566. package/dist/commands/handlers/grill-me-handler.d.ts +2 -0
  567. package/dist/commands/handlers/grill-me-handler.js +41 -0
  568. package/dist/commands/handlers/heartbeat-handler.d.ts +2 -2
  569. package/dist/commands/handlers/heartbeat-handler.js +2 -2
  570. package/dist/commands/handlers/index.d.ts +3 -2
  571. package/dist/commands/handlers/index.js +4 -2
  572. package/dist/commands/handlers/memory-handlers.js +40 -0
  573. package/dist/commands/handlers/permissions-handlers.js +3 -2
  574. package/dist/commands/handlers/pr-handlers.js +15 -17
  575. package/dist/commands/handlers/security-handlers.d.ts +1 -1
  576. package/dist/commands/handlers/security-handlers.js +3 -3
  577. package/dist/commands/handlers/slash-session-handlers.d.ts +9 -0
  578. package/dist/commands/handlers/slash-session-handlers.js +134 -0
  579. package/dist/commands/handlers/swarm-handler.js +41 -2
  580. package/dist/commands/handlers/team-handlers.d.ts +28 -1
  581. package/dist/commands/handlers/team-handlers.js +243 -2
  582. package/dist/commands/handlers/think-handlers.js +2 -1
  583. package/dist/commands/handlers/vibe-handlers.js +8 -1
  584. package/dist/commands/handlers/worktree-handlers.js +23 -12
  585. package/dist/commands/headless-slash.d.ts +9 -0
  586. package/dist/commands/headless-slash.js +41 -3
  587. package/dist/commands/import.d.ts +34 -0
  588. package/dist/commands/import.js +478 -0
  589. package/dist/commands/index.d.ts +0 -1
  590. package/dist/commands/index.js +0 -1
  591. package/dist/commands/influencer.d.ts +2 -0
  592. package/dist/commands/influencer.js +87 -0
  593. package/dist/commands/intent.d.ts +6 -0
  594. package/dist/commands/intent.js +131 -0
  595. package/dist/commands/intents.d.ts +10 -0
  596. package/dist/commands/intents.js +163 -0
  597. package/dist/commands/lessons.js +91 -0
  598. package/dist/commands/llm-provider-resolution.d.ts +20 -0
  599. package/dist/commands/llm-provider-resolution.js +74 -13
  600. package/dist/commands/login-prerequisites.d.ts +11 -0
  601. package/dist/commands/login-prerequisites.js +23 -0
  602. package/dist/commands/loop-cli.d.ts +31 -0
  603. package/dist/commands/loop-cli.js +189 -0
  604. package/dist/commands/lora.d.ts +6 -0
  605. package/dist/commands/lora.js +445 -0
  606. package/dist/commands/maison-food.d.ts +10 -0
  607. package/dist/commands/maison-food.js +485 -0
  608. package/dist/commands/maison.d.ts +17 -0
  609. package/dist/commands/maison.js +236 -0
  610. package/dist/commands/mcp.d.ts +6 -0
  611. package/dist/commands/mcp.js +236 -7
  612. package/dist/commands/meeting.d.ts +8 -0
  613. package/dist/commands/meeting.js +31 -0
  614. package/dist/commands/pairing.js +7 -8
  615. package/dist/commands/papers/ask.d.ts +47 -0
  616. package/dist/commands/papers/ask.js +105 -0
  617. package/dist/commands/papers/index.d.ts +19 -0
  618. package/dist/commands/papers/index.js +54 -0
  619. package/dist/commands/provider.d.ts +9 -0
  620. package/dist/commands/provider.js +178 -10
  621. package/dist/commands/replay.d.ts +11 -0
  622. package/dist/commands/replay.js +131 -0
  623. package/dist/commands/research/deep.d.ts +66 -0
  624. package/dist/commands/research/deep.js +236 -0
  625. package/dist/commands/research/discover-searxng.d.ts +25 -0
  626. package/dist/commands/research/discover-searxng.js +62 -0
  627. package/dist/commands/research/index.d.ts +24 -2
  628. package/dist/commands/research/index.js +456 -79
  629. package/dist/commands/research/knowledge-ingest.d.ts +170 -0
  630. package/dist/commands/research/knowledge-ingest.js +449 -0
  631. package/dist/commands/research/wire-research-worker.d.ts +9 -0
  632. package/dist/commands/research/wire-research-worker.js +18 -0
  633. package/dist/commands/run-cli/index.d.ts +3 -1
  634. package/dist/commands/run-cli/index.js +53 -2
  635. package/dist/commands/science/deps.d.ts +95 -0
  636. package/dist/commands/science/deps.js +343 -0
  637. package/dist/commands/science/index.d.ts +31 -0
  638. package/dist/commands/science/index.js +285 -0
  639. package/dist/commands/science/loop-option.d.ts +40 -0
  640. package/dist/commands/science/loop-option.js +91 -0
  641. package/dist/commands/science/sandbox-option.d.ts +44 -0
  642. package/dist/commands/science/sandbox-option.js +42 -0
  643. package/dist/commands/scrape.d.ts +18 -0
  644. package/dist/commands/scrape.js +159 -0
  645. package/dist/commands/self.d.ts +9 -0
  646. package/dist/commands/self.js +56 -0
  647. package/dist/commands/shadow.d.ts +3 -0
  648. package/dist/commands/shadow.js +72 -0
  649. package/dist/commands/share.d.ts +13 -0
  650. package/dist/commands/share.js +71 -0
  651. package/dist/commands/shell-prefix.d.ts +4 -22
  652. package/dist/commands/shell-prefix.js +11 -73
  653. package/dist/commands/skills-cli/index.d.ts +2 -0
  654. package/dist/commands/skills-cli/index.js +190 -15
  655. package/dist/commands/slash/builtin-commands.js +41 -21
  656. package/dist/commands/slash-commands.js +4 -1
  657. package/dist/commands/token.d.ts +80 -0
  658. package/dist/commands/token.js +319 -0
  659. package/dist/commands/try.d.ts +72 -0
  660. package/dist/commands/try.js +357 -0
  661. package/dist/commands/update.d.ts +14 -1
  662. package/dist/commands/update.js +97 -15
  663. package/dist/commands/vision-train.d.ts +15 -0
  664. package/dist/commands/vision-train.js +214 -0
  665. package/dist/commands/whoami-status.d.ts +17 -0
  666. package/dist/commands/whoami-status.js +34 -0
  667. package/dist/commands/widgets.d.ts +2 -0
  668. package/dist/commands/widgets.js +179 -0
  669. package/dist/commands/ws.d.ts +7 -0
  670. package/dist/commands/ws.js +100 -0
  671. package/dist/companion/assistant-config.d.ts +79 -0
  672. package/dist/companion/assistant-config.js +1148 -0
  673. package/dist/companion/attached-image-grounding.d.ts +29 -0
  674. package/dist/companion/attached-image-grounding.js +285 -0
  675. package/dist/companion/away-mode.d.ts +80 -0
  676. package/dist/companion/away-mode.js +269 -0
  677. package/dist/companion/camera-share.d.ts +65 -0
  678. package/dist/companion/camera-share.js +321 -0
  679. package/dist/companion/camera.d.ts +8 -0
  680. package/dist/companion/camera.js +57 -31
  681. package/dist/companion/cards.js +7 -10
  682. package/dist/companion/check-in.js +23 -8
  683. package/dist/companion/companion-doctor.d.ts +58 -0
  684. package/dist/companion/companion-doctor.js +194 -0
  685. package/dist/companion/companion-history.d.ts +23 -0
  686. package/dist/companion/companion-history.js +22 -0
  687. package/dist/companion/companion-mode.d.ts +77 -1
  688. package/dist/companion/companion-mode.js +916 -6
  689. package/dist/companion/companion-photo-intake.d.ts +40 -0
  690. package/dist/companion/companion-photo-intake.js +112 -0
  691. package/dist/companion/companion-photo.d.ts +144 -0
  692. package/dist/companion/companion-photo.js +318 -0
  693. package/dist/companion/companion-turn.d.ts +88 -0
  694. package/dist/companion/companion-turn.js +223 -0
  695. package/dist/companion/companion-voice-character.d.ts +62 -0
  696. package/dist/companion/companion-voice-character.js +148 -0
  697. package/dist/companion/competitive-radar.js +14 -13
  698. package/dist/companion/continuity.d.ts +62 -0
  699. package/dist/companion/continuity.js +284 -0
  700. package/dist/companion/conversation-improvement-loop.d.ts +61 -0
  701. package/dist/companion/conversation-improvement-loop.js +317 -0
  702. package/dist/companion/conversation-quality-insights.d.ts +56 -0
  703. package/dist/companion/conversation-quality-insights.js +161 -0
  704. package/dist/companion/cooking-timer-runner.d.ts +20 -0
  705. package/dist/companion/cooking-timer-runner.js +98 -0
  706. package/dist/companion/core-adapter.d.ts +60 -0
  707. package/dist/companion/core-adapter.js +111 -0
  708. package/dist/companion/crisis-safety.d.ts +52 -0
  709. package/dist/companion/crisis-safety.js +150 -0
  710. package/dist/companion/daily-interaction-budget.d.ts +34 -0
  711. package/dist/companion/daily-interaction-budget.js +260 -0
  712. package/dist/companion/dialogue-percepts.d.ts +16 -0
  713. package/dist/companion/dialogue-percepts.js +50 -0
  714. package/dist/companion/event-followups.d.ts +58 -0
  715. package/dist/companion/event-followups.js +213 -0
  716. package/dist/companion/fashion-scene-catalog.d.ts +29 -0
  717. package/dist/companion/fashion-scene-catalog.js +141 -0
  718. package/dist/companion/gateway-inbox.js +25 -13
  719. package/dist/companion/gateway.d.ts +1 -0
  720. package/dist/companion/gateway.js +37 -17
  721. package/dist/companion/home-interaction-policy.d.ts +31 -0
  722. package/dist/companion/home-interaction-policy.js +89 -0
  723. package/dist/companion/household-time.d.ts +9 -0
  724. package/dist/companion/household-time.js +15 -0
  725. package/dist/companion/idle-loop.d.ts +53 -0
  726. package/dist/companion/idle-loop.js +254 -0
  727. package/dist/companion/impulses.js +148 -23
  728. package/dist/companion/inner-life.d.ts +60 -0
  729. package/dist/companion/inner-life.js +112 -0
  730. package/dist/companion/jokes.d.ts +21 -0
  731. package/dist/companion/jokes.js +175 -0
  732. package/dist/companion/lisa-selfie-cache.d.ts +36 -0
  733. package/dist/companion/lisa-selfie-cache.js +123 -0
  734. package/dist/companion/lisa-selfie-ingest.d.ts +36 -0
  735. package/dist/companion/lisa-selfie-ingest.js +205 -0
  736. package/dist/companion/lisa-selfie-refill.d.ts +32 -0
  737. package/dist/companion/lisa-selfie-refill.js +121 -0
  738. package/dist/companion/lisa-selfie-router.d.ts +40 -0
  739. package/dist/companion/lisa-selfie-router.js +156 -0
  740. package/dist/companion/lisa-selfie.d.ts +97 -0
  741. package/dist/companion/lisa-selfie.js +542 -0
  742. package/dist/companion/maison-voice-actions.d.ts +34 -0
  743. package/dist/companion/maison-voice-actions.js +192 -0
  744. package/dist/companion/migration.d.ts +63 -0
  745. package/dist/companion/migration.js +270 -0
  746. package/dist/companion/mission-board.js +7 -10
  747. package/dist/companion/mission-runner.js +2 -3
  748. package/dist/companion/mobile-conversation-log.d.ts +19 -0
  749. package/dist/companion/mobile-conversation-log.js +157 -0
  750. package/dist/companion/mobile-history.d.ts +34 -0
  751. package/dist/companion/mobile-history.js +123 -0
  752. package/dist/companion/mysoulmate-image-prompts.d.ts +26 -0
  753. package/dist/companion/mysoulmate-image-prompts.js +278 -0
  754. package/dist/companion/orchestrator.d.ts +32 -0
  755. package/dist/companion/orchestrator.js +49 -0
  756. package/dist/companion/percepts.d.ts +70 -0
  757. package/dist/companion/percepts.js +251 -18
  758. package/dist/companion/personas/copine.d.ts +8 -0
  759. package/dist/companion/personas/copine.js +195 -0
  760. package/dist/companion/personas/index.d.ts +19 -0
  761. package/dist/companion/personas/index.js +33 -0
  762. package/dist/companion/personas/types.d.ts +34 -0
  763. package/dist/companion/personas/types.js +8 -0
  764. package/dist/companion/photo-memory-fr.d.ts +36 -0
  765. package/dist/companion/photo-memory-fr.js +291 -0
  766. package/dist/companion/prefetch-config.d.ts +38 -0
  767. package/dist/companion/prefetch-config.js +119 -0
  768. package/dist/companion/prefetch-engine.d.ts +87 -0
  769. package/dist/companion/prefetch-engine.js +513 -0
  770. package/dist/companion/presence-loop.d.ts +85 -0
  771. package/dist/companion/presence-loop.js +297 -0
  772. package/dist/companion/privacy.js +3 -2
  773. package/dist/companion/proactive-engine.d.ts +97 -0
  774. package/dist/companion/proactive-engine.js +447 -0
  775. package/dist/companion/recent-said.d.ts +30 -0
  776. package/dist/companion/recent-said.js +98 -0
  777. package/dist/companion/relational-benchmark-scenarios.d.ts +191 -0
  778. package/dist/companion/relational-benchmark-scenarios.js +227 -0
  779. package/dist/companion/relational-context.d.ts +71 -0
  780. package/dist/companion/relational-context.js +302 -0
  781. package/dist/companion/relational-episode-evaluator.d.ts +117 -0
  782. package/dist/companion/relational-episode-evaluator.js +453 -0
  783. package/dist/companion/relationship-evolution.d.ts +2 -0
  784. package/dist/companion/relationship-evolution.js +30 -0
  785. package/dist/companion/relationship-state.d.ts +106 -0
  786. package/dist/companion/relationship-state.js +293 -0
  787. package/dist/companion/reminder-runner.d.ts +33 -0
  788. package/dist/companion/reminder-runner.js +183 -0
  789. package/dist/companion/reminders.d.ts +228 -0
  790. package/dist/companion/reminders.js +906 -0
  791. package/dist/companion/reply-augment.d.ts +87 -0
  792. package/dist/companion/reply-augment.js +464 -0
  793. package/dist/companion/safety-ledger.js +19 -12
  794. package/dist/companion/self-evaluation.js +22 -23
  795. package/dist/companion/shared-photo-memory.d.ts +65 -0
  796. package/dist/companion/shared-photo-memory.js +145 -0
  797. package/dist/companion/shared-photos.d.ts +88 -0
  798. package/dist/companion/shared-photos.js +321 -0
  799. package/dist/companion/signature-locations.d.ts +16 -0
  800. package/dist/companion/signature-locations.js +108 -0
  801. package/dist/companion/skill-curator.d.ts +9 -0
  802. package/dist/companion/skill-curator.js +147 -58
  803. package/dist/companion/untrusted-text.d.ts +22 -0
  804. package/dist/companion/untrusted-text.js +47 -0
  805. package/dist/companion/user-name.d.ts +18 -0
  806. package/dist/companion/user-name.js +22 -0
  807. package/dist/companion/visual-consent.d.ts +40 -0
  808. package/dist/companion/visual-consent.js +98 -0
  809. package/dist/companion/visual-grounding.d.ts +83 -0
  810. package/dist/companion/visual-grounding.js +474 -0
  811. package/dist/companion/voice-callbacks.d.ts +9 -0
  812. package/dist/companion/voice-callbacks.js +84 -0
  813. package/dist/companion/voice-guidance.d.ts +23 -0
  814. package/dist/companion/voice-guidance.js +85 -0
  815. package/dist/companion/voice-improvement-loop.d.ts +53 -0
  816. package/dist/companion/voice-improvement-loop.js +279 -0
  817. package/dist/companion/voice-incident-repair.d.ts +41 -0
  818. package/dist/companion/voice-incident-repair.js +214 -0
  819. package/dist/config/constants.d.ts +41 -0
  820. package/dist/config/constants.js +14 -0
  821. package/dist/config/env-schema.d.ts +2 -0
  822. package/dist/config/env-schema.js +714 -5
  823. package/dist/config/feature-flags.js +8 -12
  824. package/dist/config/feature-surface.d.ts +12 -0
  825. package/dist/config/feature-surface.js +86 -0
  826. package/dist/config/headless-local-prompt.d.ts +9 -0
  827. package/dist/config/headless-local-prompt.js +39 -0
  828. package/dist/config/local-runtime-context.d.ts +41 -0
  829. package/dist/config/local-runtime-context.js +430 -0
  830. package/dist/config/model-registry.js +4 -0
  831. package/dist/config/model-strengths.d.ts +14 -0
  832. package/dist/config/model-strengths.js +15 -0
  833. package/dist/config/model-tools.d.ts +56 -0
  834. package/dist/config/model-tools.js +819 -21
  835. package/dist/config/secret-ref.d.ts +22 -3
  836. package/dist/config/secret-ref.js +103 -41
  837. package/dist/config/toml-config.d.ts +20 -4
  838. package/dist/config/toml-config.js +40 -2
  839. package/dist/context/auto-compact-threshold.d.ts +1 -1
  840. package/dist/context/auto-compact-threshold.js +1 -1
  841. package/dist/context/codebase-map.js +9 -4
  842. package/dist/context/codebase-rag/codebase-rag.js +7 -6
  843. package/dist/context/codebase-rag/hnsw-store.js +9 -4
  844. package/dist/context/codebase-rag/vector-store.js +4 -4
  845. package/dist/context/compaction/parallel-summarizer.js +1 -0
  846. package/dist/context/compression.js +25 -29
  847. package/dist/context/context-manager-v2.d.ts +95 -7
  848. package/dist/context/context-manager-v2.js +442 -89
  849. package/dist/context/context-manager-v3.d.ts +4 -0
  850. package/dist/context/context-manager-v3.js +68 -9
  851. package/dist/context/cross-encoder-reranker.js +8 -3
  852. package/dist/context/default-context-engine.js +1 -1
  853. package/dist/context/enhanced-compression.d.ts +26 -2
  854. package/dist/context/enhanced-compression.js +81 -30
  855. package/dist/context/file-mentions.d.ts +46 -0
  856. package/dist/context/file-mentions.js +245 -0
  857. package/dist/context/importance-scorer.js +4 -3
  858. package/dist/context/jit-context.d.ts +7 -0
  859. package/dist/context/jit-context.js +22 -4
  860. package/dist/context/lm-resizer-compressor.d.ts +102 -0
  861. package/dist/context/lm-resizer-compressor.js +593 -0
  862. package/dist/context/precompaction-flush.js +1 -1
  863. package/dist/context/restorable-compression.d.ts +59 -14
  864. package/dist/context/restorable-compression.js +310 -60
  865. package/dist/context/segment-archive.d.ts +36 -0
  866. package/dist/context/segment-archive.js +220 -0
  867. package/dist/context/smart-compaction.d.ts +7 -0
  868. package/dist/context/smart-compaction.js +84 -15
  869. package/dist/context/token-counter.d.ts +6 -0
  870. package/dist/context/token-counter.js +41 -0
  871. package/dist/context/token-juice.d.ts +72 -0
  872. package/dist/context/token-juice.js +220 -0
  873. package/dist/context/tool-observation-optimizer.d.ts +90 -0
  874. package/dist/context/tool-observation-optimizer.js +231 -0
  875. package/dist/context/tool-pair-preserver.d.ts +1 -1
  876. package/dist/context/tool-pair-preserver.js +1 -1
  877. package/dist/context/transcript-repair.d.ts +16 -3
  878. package/dist/context/transcript-repair.js +72 -35
  879. package/dist/context/types.d.ts +2 -0
  880. package/dist/conversation/argument-obligations.d.ts +65 -0
  881. package/dist/conversation/argument-obligations.js +157 -0
  882. package/dist/conversation/companion-model-routing.d.ts +121 -0
  883. package/dist/conversation/companion-model-routing.js +810 -0
  884. package/dist/conversation/conversation-benchmark.d.ts +143 -0
  885. package/dist/conversation/conversation-benchmark.js +766 -0
  886. package/dist/conversation/conversation-blind-comparison.d.ts +135 -0
  887. package/dist/conversation/conversation-blind-comparison.js +451 -0
  888. package/dist/conversation/conversation-evaluator.d.ts +56 -0
  889. package/dist/conversation/conversation-evaluator.js +335 -0
  890. package/dist/conversation/conversation-orchestrator.d.ts +32 -0
  891. package/dist/conversation/conversation-orchestrator.js +59 -0
  892. package/dist/conversation/conversation-pilot-corpus.d.ts +33 -0
  893. package/dist/conversation/conversation-pilot-corpus.js +313 -0
  894. package/dist/conversation/conversation-quality.d.ts +31 -0
  895. package/dist/conversation/conversation-quality.js +280 -0
  896. package/dist/conversation/conversation-state.d.ts +23 -0
  897. package/dist/conversation/conversation-state.js +117 -0
  898. package/dist/conversation/cross-channel-bridge.d.ts +127 -0
  899. package/dist/conversation/cross-channel-bridge.js +785 -0
  900. package/dist/conversation/deliberation-thread.d.ts +18 -0
  901. package/dist/conversation/deliberation-thread.js +303 -0
  902. package/dist/conversation/dialogue-act.d.ts +11 -0
  903. package/dist/conversation/dialogue-act.js +132 -0
  904. package/dist/conversation/discourse-planner.d.ts +3 -0
  905. package/dist/conversation/discourse-planner.js +141 -0
  906. package/dist/conversation/fresh-context.d.ts +54 -0
  907. package/dist/conversation/fresh-context.js +258 -0
  908. package/dist/conversation/prefetched-turn-context.d.ts +45 -0
  909. package/dist/conversation/prefetched-turn-context.js +209 -0
  910. package/dist/conversation/relationship-safety.d.ts +37 -0
  911. package/dist/conversation/relationship-safety.js +407 -0
  912. package/dist/conversation/semantic-response-gate.d.ts +262 -0
  913. package/dist/conversation/semantic-response-gate.js +656 -0
  914. package/dist/conversation/semantic-response-runtime.d.ts +79 -0
  915. package/dist/conversation/semantic-response-runtime.js +419 -0
  916. package/dist/conversation/shared-relationship-state.d.ts +60 -0
  917. package/dist/conversation/shared-relationship-state.js +262 -0
  918. package/dist/conversation/types.d.ts +77 -0
  919. package/dist/conversation/types.js +3 -0
  920. package/dist/conversation/voice-continuity.d.ts +13 -0
  921. package/dist/conversation/voice-continuity.js +48 -0
  922. package/dist/council/conductor.d.ts +26 -0
  923. package/dist/council/conductor.js +292 -0
  924. package/dist/council/council-engine.d.ts +29 -0
  925. package/dist/council/council-engine.js +458 -0
  926. package/dist/council/deliberation-health.d.ts +58 -0
  927. package/dist/council/deliberation-health.js +108 -0
  928. package/dist/council/judge.d.ts +69 -0
  929. package/dist/council/judge.js +183 -0
  930. package/dist/council/peers.d.ts +19 -0
  931. package/dist/council/peers.js +47 -0
  932. package/dist/council/signals.d.ts +26 -0
  933. package/dist/council/signals.js +156 -0
  934. package/dist/council/task-types.d.ts +16 -0
  935. package/dist/council/task-types.js +58 -0
  936. package/dist/council/triage.d.ts +48 -0
  937. package/dist/council/triage.js +228 -0
  938. package/dist/council/types.d.ts +292 -0
  939. package/dist/council/types.js +20 -0
  940. package/dist/council/with-timeout.d.ts +10 -0
  941. package/dist/council/with-timeout.js +29 -0
  942. package/dist/curator/curator.d.ts +79 -0
  943. package/dist/curator/curator.js +317 -0
  944. package/dist/daemon/agent-task-executor.js +51 -0
  945. package/dist/daemon/autonomous-daemon.d.ts +2 -0
  946. package/dist/daemon/autonomous-daemon.js +4 -1
  947. package/dist/daemon/autonomous-loop.d.ts +9 -0
  948. package/dist/daemon/autonomous-loop.js +57 -1
  949. package/dist/daemon/autonomy-bench-candidates.d.ts +33 -0
  950. package/dist/daemon/autonomy-bench-candidates.js +68 -0
  951. package/dist/daemon/autonomy-briefing.d.ts +112 -0
  952. package/dist/daemon/autonomy-briefing.js +359 -0
  953. package/dist/daemon/autonomy-run-journal.d.ts +20 -0
  954. package/dist/daemon/autonomy-run-journal.js +41 -0
  955. package/dist/daemon/daily-reset.d.ts +2 -2
  956. package/dist/daemon/daily-reset.js +16 -15
  957. package/dist/daemon/ollama-task-executor.js +9 -1
  958. package/dist/database/database-manager.d.ts +1 -1
  959. package/dist/database/database-manager.js +6 -4
  960. package/dist/database/optional-sqlite.d.ts +20 -0
  961. package/dist/database/optional-sqlite.js +101 -0
  962. package/dist/design/design-system-registry.d.ts +21 -0
  963. package/dist/design/design-system-registry.js +106 -0
  964. package/dist/desktop/codebuddy-engine-adapter.d.ts +34 -0
  965. package/dist/desktop/codebuddy-engine-adapter.js +306 -21
  966. package/dist/desktop/electron-launch-args.d.ts +7 -0
  967. package/dist/desktop/electron-launch-args.js +13 -0
  968. package/dist/desktop/engine-adapter.d.ts +6 -0
  969. package/dist/desktop/launcher.js +2 -1
  970. package/dist/desktop/permission-bridge.d.ts +12 -1
  971. package/dist/desktop/permission-bridge.js +12 -5
  972. package/dist/desktop-automation/omniparser-runner.d.ts +1 -0
  973. package/dist/desktop-automation/omniparser-runner.js +12 -1
  974. package/dist/desktop-automation/smart-snapshot.js +7 -0
  975. package/dist/desktop-automation/windows-native-provider.js +1 -1
  976. package/dist/doctor/assistant-runtime.d.ts +90 -0
  977. package/dist/doctor/assistant-runtime.js +472 -0
  978. package/dist/doctor/env-sanity.d.ts +17 -0
  979. package/dist/doctor/env-sanity.js +74 -0
  980. package/dist/doctor/index.d.ts +37 -0
  981. package/dist/doctor/index.js +389 -37
  982. package/dist/doctor/llm-key-check.d.ts +17 -0
  983. package/dist/doctor/llm-key-check.js +100 -0
  984. package/dist/doctor/ollama-model-selection.d.ts +16 -0
  985. package/dist/doctor/ollama-model-selection.js +55 -0
  986. package/dist/embeddings/embedding-provider.d.ts +1 -0
  987. package/dist/embeddings/embedding-provider.js +21 -9
  988. package/dist/errors/crash-recovery.js +6 -4
  989. package/dist/events/index.d.ts +1 -1
  990. package/dist/events/types.d.ts +44 -0
  991. package/dist/export/repo-explanation.d.ts +10 -0
  992. package/dist/export/repo-explanation.js +334 -0
  993. package/dist/export/session-share.d.ts +34 -0
  994. package/dist/export/session-share.js +687 -0
  995. package/dist/fleet/autonomous-tick-broadcaster.d.ts +1 -1
  996. package/dist/fleet/capability-registry.d.ts +9 -0
  997. package/dist/fleet/capability-registry.js +268 -56
  998. package/dist/fleet/colab-store.d.ts +3 -4
  999. package/dist/fleet/colab-store.js +6 -26
  1000. package/dist/fleet/compatible-model.d.ts +39 -0
  1001. package/dist/fleet/compatible-model.js +148 -0
  1002. package/dist/fleet/consolidation/collecte.d.ts +31 -0
  1003. package/dist/fleet/consolidation/collecte.js +86 -0
  1004. package/dist/fleet/consolidation/digest-texte.d.ts +11 -0
  1005. package/dist/fleet/consolidation/digest-texte.js +52 -0
  1006. package/dist/fleet/consolidation/thalamus.d.ts +35 -0
  1007. package/dist/fleet/consolidation/thalamus.js +151 -0
  1008. package/dist/fleet/consolidation/types.d.ts +66 -0
  1009. package/dist/fleet/consolidation/types.js +22 -0
  1010. package/dist/fleet/cost-tracker.d.ts +11 -0
  1011. package/dist/fleet/cost-tracker.js +64 -17
  1012. package/dist/fleet/fleet-cost-cap.d.ts +36 -0
  1013. package/dist/fleet/fleet-cost-cap.js +175 -0
  1014. package/dist/fleet/fleet-http-surface.d.ts +24 -0
  1015. package/dist/fleet/fleet-http-surface.js +72 -0
  1016. package/dist/fleet/fleet-listener.d.ts +1 -1
  1017. package/dist/fleet/fleet-listener.js +4 -0
  1018. package/dist/fleet/model-capability-heuristics.d.ts +31 -0
  1019. package/dist/fleet/model-capability-heuristics.js +49 -0
  1020. package/dist/fleet/model-inventory.d.ts +46 -0
  1021. package/dist/fleet/model-inventory.js +242 -0
  1022. package/dist/fleet/model-scoreboard.d.ts +118 -13
  1023. package/dist/fleet/model-scoreboard.js +339 -27
  1024. package/dist/fleet/model-selector.d.ts +83 -0
  1025. package/dist/fleet/model-selector.js +218 -0
  1026. package/dist/fleet/peer-chat-bridge.d.ts +9 -2
  1027. package/dist/fleet/peer-chat-bridge.js +133 -19
  1028. package/dist/fleet/peer-chat-client-factory.d.ts +28 -2
  1029. package/dist/fleet/peer-chat-client-factory.js +195 -22
  1030. package/dist/fleet/peer-ckg-bridge.d.ts +67 -0
  1031. package/dist/fleet/peer-ckg-bridge.js +467 -0
  1032. package/dist/fleet/peer-mission-exchange-bridge.d.ts +8 -0
  1033. package/dist/fleet/peer-mission-exchange-bridge.js +127 -0
  1034. package/dist/fleet/peer-session-bridge.d.ts +7 -1
  1035. package/dist/fleet/peer-session-bridge.js +98 -17
  1036. package/dist/fleet/peer-session-store.d.ts +2 -0
  1037. package/dist/fleet/peer-session-store.js +6 -5
  1038. package/dist/fleet/peer-text-sanitizer.d.ts +59 -0
  1039. package/dist/fleet/peer-text-sanitizer.js +99 -0
  1040. package/dist/fleet/peer-tool-bridge.js +38 -10
  1041. package/dist/fleet/privacy-lint.js +80 -8
  1042. package/dist/fleet/saga-store.d.ts +25 -1
  1043. package/dist/fleet/saga-store.js +34 -6
  1044. package/dist/fleet/task-router.d.ts +17 -1
  1045. package/dist/fleet/task-router.js +65 -20
  1046. package/dist/fleet/types.d.ts +9 -5
  1047. package/dist/gateway/device-pairing.js +5 -11
  1048. package/dist/gateway/ws-transport.d.ts +1 -5
  1049. package/dist/gateway/ws-transport.js +2 -22
  1050. package/dist/git/changelog.d.ts +36 -0
  1051. package/dist/git/changelog.js +109 -0
  1052. package/dist/git/worktree-sessions.js +1 -1
  1053. package/dist/goals/counterfactual-forge.d.ts +70 -0
  1054. package/dist/goals/counterfactual-forge.js +184 -0
  1055. package/dist/goals/criterion-progress.d.ts +24 -0
  1056. package/dist/goals/criterion-progress.js +59 -0
  1057. package/dist/goals/evidence-artifact.d.ts +18 -0
  1058. package/dist/goals/evidence-artifact.js +76 -0
  1059. package/dist/goals/goal-decomposer.d.ts +15 -0
  1060. package/dist/goals/goal-decomposer.js +89 -4
  1061. package/dist/goals/goal-loop.d.ts +29 -0
  1062. package/dist/goals/goal-loop.js +92 -6
  1063. package/dist/goals/goal-manager.d.ts +1 -0
  1064. package/dist/goals/goal-manager.js +4 -1
  1065. package/dist/goals/goal-state.d.ts +10 -0
  1066. package/dist/goals/goal-state.js +21 -1
  1067. package/dist/goals/goal-store.js +4 -6
  1068. package/dist/goals/index.d.ts +11 -0
  1069. package/dist/goals/index.js +11 -0
  1070. package/dist/goals/intent-graph.d.ts +40 -0
  1071. package/dist/goals/intent-graph.js +133 -0
  1072. package/dist/goals/mission-constitution.d.ts +59 -0
  1073. package/dist/goals/mission-constitution.js +132 -0
  1074. package/dist/goals/mission-exchange.d.ts +86 -0
  1075. package/dist/goals/mission-exchange.js +216 -0
  1076. package/dist/goals/outcome-capsule.d.ts +80 -0
  1077. package/dist/goals/outcome-capsule.js +186 -0
  1078. package/dist/goals/proof-ledger.d.ts +79 -0
  1079. package/dist/goals/proof-ledger.js +181 -0
  1080. package/dist/goals/proven-outcome-lessons.d.ts +11 -0
  1081. package/dist/goals/proven-outcome-lessons.js +30 -0
  1082. package/dist/goals/proven-outcome-memory.d.ts +55 -0
  1083. package/dist/goals/proven-outcome-memory.js +125 -0
  1084. package/dist/goals/shadow-twin.d.ts +57 -0
  1085. package/dist/goals/shadow-twin.js +110 -0
  1086. package/dist/gpu-worker/gpu-media-worker-server.d.ts +49 -0
  1087. package/dist/gpu-worker/gpu-media-worker-server.js +637 -0
  1088. package/dist/harness/contract.d.ts +84 -84
  1089. package/dist/hooks/advanced-hooks.js +6 -4
  1090. package/dist/hooks/env-persistence.js +5 -6
  1091. package/dist/hooks/hook-manager.js +8 -7
  1092. package/dist/hooks/hook-system.js +6 -4
  1093. package/dist/hooks/lifecycle-hooks.js +6 -3
  1094. package/dist/hooks/moltbot/moltbot-hooks-manager.js +8 -3
  1095. package/dist/hooks/moltbot/session-persistence-manager.js +15 -7
  1096. package/dist/hooks/moltbot/setup-utilities.js +6 -4
  1097. package/dist/hooks/smart-hooks.js +6 -4
  1098. package/dist/hooks/use-input-handler.js +9 -63
  1099. package/dist/hooks/user-hooks.d.ts +10 -1
  1100. package/dist/hooks/user-hooks.js +77 -1
  1101. package/dist/identity/companion-identity.d.ts +4 -1
  1102. package/dist/identity/companion-identity.js +134 -4
  1103. package/dist/identity/identity-manager.d.ts +1 -1
  1104. package/dist/identity/identity-manager.js +7 -6
  1105. package/dist/identity/lisa-introspection.d.ts +36 -0
  1106. package/dist/identity/lisa-introspection.js +411 -0
  1107. package/dist/identity/operational-self-model.d.ts +143 -0
  1108. package/dist/identity/operational-self-model.js +974 -0
  1109. package/dist/index.d.ts +3 -1
  1110. package/dist/index.js +987 -223
  1111. package/dist/input/context-mentions.d.ts +7 -1
  1112. package/dist/input/context-mentions.js +18 -20
  1113. package/dist/input/text-to-speech.d.ts +3 -0
  1114. package/dist/input/text-to-speech.js +70 -27
  1115. package/dist/input/voice-control.d.ts +1 -0
  1116. package/dist/input/voice-control.js +24 -18
  1117. package/dist/input/voice-input-enhanced.d.ts +1 -0
  1118. package/dist/input/voice-input-enhanced.js +31 -16
  1119. package/dist/integrations/ci-autofix-pipeline.js +15 -20
  1120. package/dist/integrations/ide/server.js +3 -2
  1121. package/dist/integrations/json-rpc/server.js +4 -2
  1122. package/dist/integrations/mcp/mcp-server.js +4 -2
  1123. package/dist/integrations/opentelemetry-integration.js +6 -4
  1124. package/dist/integrations/pubcommander-bridge.d.ts +5 -0
  1125. package/dist/integrations/pubcommander-bridge.js +61 -0
  1126. package/dist/integrations/sentry-integration.js +9 -3
  1127. package/dist/intelligence/semantic-search.js +9 -12
  1128. package/dist/intelligence/user-preferences.js +8 -11
  1129. package/dist/intents/intent-checker.d.ts +34 -0
  1130. package/dist/intents/intent-checker.js +175 -0
  1131. package/dist/intents/intent-generator.d.ts +12 -0
  1132. package/dist/intents/intent-generator.js +86 -0
  1133. package/dist/intents/intent-store.d.ts +62 -0
  1134. package/dist/intents/intent-store.js +263 -0
  1135. package/dist/interpreter/computer/skills.js +3 -2
  1136. package/dist/interpreter/interpreter-service.js +18 -9
  1137. package/dist/kanban/kanban-board-registry.js +6 -4
  1138. package/dist/kanban/kanban-store.js +5 -7
  1139. package/dist/knowledge/code-graph-persistence.js +8 -16
  1140. package/dist/knowledge/graph-drift.js +14 -11
  1141. package/dist/knowledge/knowledge-manager.js +2 -1
  1142. package/dist/knowledge/scanners/index.d.ts +3 -0
  1143. package/dist/knowledge/scanners/index.js +57 -29
  1144. package/dist/knowledge/workspace-indexer.js +22 -15
  1145. package/dist/life-rhythm/cooking-timer-store.d.ts +50 -0
  1146. package/dist/life-rhythm/cooking-timer-store.js +240 -0
  1147. package/dist/life-rhythm/day-context.d.ts +30 -0
  1148. package/dist/life-rhythm/day-context.js +198 -0
  1149. package/dist/life-rhythm/etalab-holiday-provider.d.ts +40 -0
  1150. package/dist/life-rhythm/etalab-holiday-provider.js +318 -0
  1151. package/dist/life-rhythm/home-mode-store.d.ts +32 -0
  1152. package/dist/life-rhythm/home-mode-store.js +184 -0
  1153. package/dist/life-rhythm/index.d.ts +6 -0
  1154. package/dist/life-rhythm/index.js +7 -0
  1155. package/dist/life-rhythm/types.d.ts +88 -0
  1156. package/dist/life-rhythm/types.js +33 -0
  1157. package/dist/life-rhythm/zoned-minute.d.ts +24 -0
  1158. package/dist/life-rhythm/zoned-minute.js +113 -0
  1159. package/dist/location/index.d.ts +2 -12
  1160. package/dist/location/index.js +129 -56
  1161. package/dist/logging/interaction-logger.js +29 -46
  1162. package/dist/lora/dataset-v3-plan.d.ts +27 -0
  1163. package/dist/lora/dataset-v3-plan.js +121 -0
  1164. package/dist/lora/dataset.d.ts +26 -0
  1165. package/dist/lora/dataset.js +165 -0
  1166. package/dist/lora/fal-krea-trainer.d.ts +54 -0
  1167. package/dist/lora/fal-krea-trainer.js +197 -0
  1168. package/dist/lora/generate-training-set.d.ts +61 -0
  1169. package/dist/lora/generate-training-set.js +190 -0
  1170. package/dist/lora/identity-dataset-gate.d.ts +104 -0
  1171. package/dist/lora/identity-dataset-gate.js +204 -0
  1172. package/dist/lora/identity-dataset-promotion.d.ts +32 -0
  1173. package/dist/lora/identity-dataset-promotion.js +269 -0
  1174. package/dist/lora/index.d.ts +11 -0
  1175. package/dist/lora/index.js +12 -0
  1176. package/dist/lora/install-comfy.d.ts +14 -0
  1177. package/dist/lora/install-comfy.js +63 -0
  1178. package/dist/lora/lisa-avatar-bible.d.ts +85 -0
  1179. package/dist/lora/lisa-avatar-bible.js +275 -0
  1180. package/dist/lora/local-plan.d.ts +10 -0
  1181. package/dist/lora/local-plan.js +205 -0
  1182. package/dist/lora/pack-dataset.d.ts +7 -0
  1183. package/dist/lora/pack-dataset.js +39 -0
  1184. package/dist/lora/quality-gate.d.ts +31 -0
  1185. package/dist/lora/quality-gate.js +90 -0
  1186. package/dist/lora/types.d.ts +66 -0
  1187. package/dist/lora/types.js +5 -0
  1188. package/dist/lsp/lsp-client.d.ts +12 -0
  1189. package/dist/lsp/lsp-client.js +45 -9
  1190. package/dist/lsp/server.js +1 -1
  1191. package/dist/mcp/approval-elicitation.d.ts +1 -0
  1192. package/dist/mcp/approval-elicitation.js +2 -0
  1193. package/dist/mcp/client.d.ts +15 -1
  1194. package/dist/mcp/client.js +110 -24
  1195. package/dist/mcp/config.d.ts +12 -1
  1196. package/dist/mcp/config.js +55 -12
  1197. package/dist/mcp/index.d.ts +1 -1
  1198. package/dist/mcp/mcp-agent-tools.d.ts +1 -1
  1199. package/dist/mcp/mcp-agent-tools.js +76 -73
  1200. package/dist/mcp/mcp-ckg-tools.d.ts +31 -0
  1201. package/dist/mcp/mcp-ckg-tools.js +121 -0
  1202. package/dist/mcp/mcp-client.js +8 -5
  1203. package/dist/mcp/mcp-desktop-tools.d.ts +1 -1
  1204. package/dist/mcp/mcp-desktop-tools.js +105 -99
  1205. package/dist/mcp/mcp-memory-tools.d.ts +1 -1
  1206. package/dist/mcp/mcp-memory-tools.js +63 -61
  1207. package/dist/mcp/mcp-oauth.js +5 -2
  1208. package/dist/mcp/mcp-server.d.ts +48 -79
  1209. package/dist/mcp/mcp-server.js +445 -478
  1210. package/dist/mcp/mcp-session-tools.d.ts +1 -1
  1211. package/dist/mcp/mcp-session-tools.js +95 -92
  1212. package/dist/mcp/profiles.d.ts +18 -0
  1213. package/dist/mcp/profiles.js +65 -0
  1214. package/dist/mcp/prompt-footprint.d.ts +21 -0
  1215. package/dist/mcp/prompt-footprint.js +39 -0
  1216. package/dist/meals/allergens.d.ts +19 -0
  1217. package/dist/meals/allergens.js +122 -0
  1218. package/dist/meals/compatibility.d.ts +6 -0
  1219. package/dist/meals/compatibility.js +109 -0
  1220. package/dist/meals/food-inventory-store.d.ts +51 -0
  1221. package/dist/meals/food-inventory-store.js +257 -0
  1222. package/dist/meals/index.d.ts +10 -0
  1223. package/dist/meals/index.js +11 -0
  1224. package/dist/meals/meal-engine.d.ts +7 -0
  1225. package/dist/meals/meal-engine.js +206 -0
  1226. package/dist/meals/meal-plan-store.d.ts +73 -0
  1227. package/dist/meals/meal-plan-store.js +271 -0
  1228. package/dist/meals/private-json-store.d.ts +9 -0
  1229. package/dist/meals/private-json-store.js +92 -0
  1230. package/dist/meals/profile-store.d.ts +49 -0
  1231. package/dist/meals/profile-store.js +296 -0
  1232. package/dist/meals/profile-validator.d.ts +7 -0
  1233. package/dist/meals/profile-validator.js +124 -0
  1234. package/dist/meals/recipe-normalizer.d.ts +7 -0
  1235. package/dist/meals/recipe-normalizer.js +162 -0
  1236. package/dist/meals/store-validation.d.ts +21 -0
  1237. package/dist/meals/store-validation.js +101 -0
  1238. package/dist/meals/types.d.ts +170 -0
  1239. package/dist/meals/types.js +12 -0
  1240. package/dist/media/comfy-health-supervisor.d.ts +142 -0
  1241. package/dist/media/comfy-health-supervisor.js +608 -0
  1242. package/dist/media/comfyui-recipe-contract.d.ts +696 -0
  1243. package/dist/media/comfyui-recipe-contract.js +580 -0
  1244. package/dist/media/comfyui-recipe-engine.d.ts +3 -0
  1245. package/dist/media/comfyui-recipe-engine.js +4 -0
  1246. package/dist/media/comfyui-recipe-registry.d.ts +35 -0
  1247. package/dist/media/comfyui-recipe-registry.js +385 -0
  1248. package/dist/media/comfyui-recipe-runtime.d.ts +135 -0
  1249. package/dist/media/comfyui-recipe-runtime.js +942 -0
  1250. package/dist/media/content-tier.d.ts +25 -0
  1251. package/dist/media/content-tier.js +29 -0
  1252. package/dist/meeting/analyzer.d.ts +24 -0
  1253. package/dist/meeting/analyzer.js +402 -0
  1254. package/dist/meeting/index.d.ts +13 -0
  1255. package/dist/meeting/index.js +48 -0
  1256. package/dist/meeting/markdown.d.ts +3 -0
  1257. package/dist/meeting/markdown.js +51 -0
  1258. package/dist/meeting/output.d.ts +13 -0
  1259. package/dist/meeting/output.js +155 -0
  1260. package/dist/meeting/transcript.d.ts +25 -0
  1261. package/dist/meeting/transcript.js +292 -0
  1262. package/dist/meeting/types.d.ts +112 -0
  1263. package/dist/meeting/types.js +9 -0
  1264. package/dist/memory/adapters/network-memory-adapters.d.ts +19 -4
  1265. package/dist/memory/adapters/network-memory-adapters.js +4 -4
  1266. package/dist/memory/auto-memory.js +5 -2
  1267. package/dist/memory/background-extractor.d.ts +43 -0
  1268. package/dist/memory/background-extractor.js +368 -0
  1269. package/dist/memory/buddy-memory-client.d.ts +40 -0
  1270. package/dist/memory/buddy-memory-client.js +198 -0
  1271. package/dist/memory/ckg-engine-policy.d.ts +19 -0
  1272. package/dist/memory/ckg-engine-policy.js +45 -0
  1273. package/dist/memory/ckg-fact-reconciliation.d.ts +81 -0
  1274. package/dist/memory/ckg-fact-reconciliation.js +155 -0
  1275. package/dist/memory/ckg-redaction.d.ts +2 -0
  1276. package/dist/memory/ckg-redaction.js +25 -0
  1277. package/dist/memory/coding-style-analyzer.js +2 -2
  1278. package/dist/memory/collective-knowledge-graph.d.ts +380 -0
  1279. package/dist/memory/collective-knowledge-graph.js +1228 -0
  1280. package/dist/memory/enhanced-memory.d.ts +29 -0
  1281. package/dist/memory/enhanced-memory.js +153 -63
  1282. package/dist/memory/facts-memory.d.ts +9 -4
  1283. package/dist/memory/facts-memory.js +21 -4
  1284. package/dist/memory/hybrid-mmr.d.ts +71 -0
  1285. package/dist/memory/hybrid-mmr.js +127 -0
  1286. package/dist/memory/hybrid-search.js +4 -1
  1287. package/dist/memory/knowledge-graph.d.ts +23 -2
  1288. package/dist/memory/knowledge-graph.js +62 -47
  1289. package/dist/memory/memory-candidate-queue.js +9 -4
  1290. package/dist/memory/memory-consolidation.d.ts +8 -0
  1291. package/dist/memory/memory-consolidation.js +66 -17
  1292. package/dist/memory/memory-forgetting.d.ts +57 -0
  1293. package/dist/memory/memory-forgetting.js +87 -0
  1294. package/dist/memory/ocr-memory-pipeline.js +16 -10
  1295. package/dist/memory/persistent-memory.d.ts +98 -0
  1296. package/dist/memory/persistent-memory.js +711 -119
  1297. package/dist/memory/presence-injector.d.ts +1 -1
  1298. package/dist/memory/presence-injector.js +9 -4
  1299. package/dist/memory/semantic-memory-search.js +12 -9
  1300. package/dist/memory/subagent-memory.js +8 -8
  1301. package/dist/memory/user-model.js +9 -4
  1302. package/dist/metrics/metrics-collector.d.ts +1 -0
  1303. package/dist/metrics/metrics-collector.js +11 -2
  1304. package/dist/nodes/device-node.d.ts +5 -2
  1305. package/dist/nodes/device-node.js +65 -19
  1306. package/dist/nodes/index.d.ts +32 -2
  1307. package/dist/nodes/index.js +208 -7
  1308. package/dist/nodes/transports/adb-transport.d.ts +2 -6
  1309. package/dist/nodes/transports/adb-transport.js +29 -13
  1310. package/dist/nodes/transports/base-transport.d.ts +10 -0
  1311. package/dist/observability/run-store.d.ts +6 -1
  1312. package/dist/observability/run-store.js +89 -22
  1313. package/dist/observability/run-trajectory-load.d.ts +16 -0
  1314. package/dist/observability/run-trajectory-load.js +266 -0
  1315. package/dist/observability/run-trajectory.d.ts +168 -0
  1316. package/dist/observability/run-trajectory.js +468 -0
  1317. package/dist/observability/run-viewer.d.ts +5 -1
  1318. package/dist/observability/run-viewer.js +83 -9
  1319. package/dist/observability/turn-metrics.d.ts +86 -0
  1320. package/dist/observability/turn-metrics.js +201 -0
  1321. package/dist/offline/offline-mode.js +10 -9
  1322. package/dist/openclaw/gateway-bridge.js +3 -2
  1323. package/dist/optimization/latency-optimizer.d.ts +2 -1
  1324. package/dist/optimization/latency-optimizer.js +2 -2
  1325. package/dist/optimization/model-routing.d.ts +3 -0
  1326. package/dist/orchestration/orchestrator.js +4 -1
  1327. package/dist/orchestration/types.d.ts +2 -0
  1328. package/dist/performance/lazy-loader.js +2 -1
  1329. package/dist/performance/tool-cache.d.ts +4 -0
  1330. package/dist/performance/tool-cache.js +4 -2
  1331. package/dist/persistence/conversation-branches.js +9 -2
  1332. package/dist/persistence/session-store.d.ts +26 -0
  1333. package/dist/persistence/session-store.js +56 -17
  1334. package/dist/personas/persona-manager.d.ts +39 -1
  1335. package/dist/personas/persona-manager.js +276 -38
  1336. package/dist/plugins/bundled/groq-provider.js +10 -7
  1337. package/dist/plugins/bundled/openrouter-provider.js +2 -1
  1338. package/dist/plugins/code-explorer/CodeExplorerManager.d.ts +52 -4
  1339. package/dist/plugins/code-explorer/CodeExplorerManager.js +201 -31
  1340. package/dist/plugins/code-explorer/code-explorer-client.d.ts +36 -0
  1341. package/dist/plugins/code-explorer/code-explorer-client.js +86 -0
  1342. package/dist/plugins/code-explorer/index.d.ts +1 -3
  1343. package/dist/plugins/code-explorer/index.js +0 -1
  1344. package/dist/plugins/git-pinned-marketplace.js +3 -2
  1345. package/dist/plugins/plugin-manager.js +6 -9
  1346. package/dist/plugins/sandbox-worker.js +1 -1
  1347. package/dist/prompts/system-base.js +27 -3
  1348. package/dist/protocols/a2a/codebuddy-executor.d.ts +9 -0
  1349. package/dist/protocols/a2a/codebuddy-executor.js +25 -6
  1350. package/dist/protocols/a2a/index.d.ts +6 -0
  1351. package/dist/protocols/a2a/index.js +32 -3
  1352. package/dist/protocols/acp/acp-agentic-runner.d.ts +6 -2
  1353. package/dist/protocols/acp/acp-agentic-runner.js +91 -15
  1354. package/dist/protocols/acp/acp-session-store.js +28 -5
  1355. package/dist/protocols/acp/acp-stdio-server.d.ts +13 -0
  1356. package/dist/protocols/acp/acp-stdio-server.js +30 -3
  1357. package/dist/providers/active-llm-model-pool.d.ts +45 -0
  1358. package/dist/providers/active-llm-model-pool.js +139 -0
  1359. package/dist/providers/active-llm-registry.js +48 -8
  1360. package/dist/providers/auxiliary-provider.d.ts +1 -1
  1361. package/dist/providers/auxiliary-provider.js +23 -10
  1362. package/dist/providers/chatgpt-models.d.ts +71 -0
  1363. package/dist/providers/chatgpt-models.js +302 -0
  1364. package/dist/providers/codex-oauth.d.ts +8 -0
  1365. package/dist/providers/codex-oauth.js +47 -39
  1366. package/dist/providers/gemini-oauth.js +7 -6
  1367. package/dist/providers/grok-provider.js +1 -1
  1368. package/dist/providers/index.d.ts +3 -0
  1369. package/dist/providers/index.js +3 -0
  1370. package/dist/providers/local-model-resolver.d.ts +66 -0
  1371. package/dist/providers/local-model-resolver.js +128 -0
  1372. package/dist/providers/model-egress.d.ts +8 -0
  1373. package/dist/providers/model-egress.js +62 -0
  1374. package/dist/providers/model-provider-compat.d.ts +13 -0
  1375. package/dist/providers/model-provider-compat.js +48 -0
  1376. package/dist/providers/provider-catalog.d.ts +4 -1
  1377. package/dist/providers/provider-catalog.js +494 -28
  1378. package/dist/providers/provider-failover-notify.d.ts +15 -0
  1379. package/dist/providers/provider-failover-notify.js +93 -0
  1380. package/dist/providers/provider-failover-policy.d.ts +28 -0
  1381. package/dist/providers/provider-failover-policy.js +188 -0
  1382. package/dist/providers/provider-failover-user-notice.d.ts +13 -0
  1383. package/dist/providers/provider-failover-user-notice.js +49 -0
  1384. package/dist/providers/provider-fallback.d.ts +1 -0
  1385. package/dist/providers/provider-fallback.js +1 -1
  1386. package/dist/providers/provider-health.d.ts +46 -0
  1387. package/dist/providers/provider-health.js +249 -0
  1388. package/dist/providers/turboquant-provider.d.ts +1 -1
  1389. package/dist/providers/xai-oauth.js +7 -34
  1390. package/dist/queue/persistent-queue.js +9 -6
  1391. package/dist/renderers/charts/special-charts.d.ts +7 -1
  1392. package/dist/renderers/charts/special-charts.js +5 -0
  1393. package/dist/renderers/weather-conditions.d.ts +20 -0
  1394. package/dist/renderers/weather-conditions.js +74 -0
  1395. package/dist/renderers/weather-renderer.js +4 -18
  1396. package/dist/rendering/ansi.d.ts +4 -0
  1397. package/dist/rendering/ansi.js +149 -0
  1398. package/dist/rendering/index.d.ts +19 -0
  1399. package/dist/rendering/index.js +18 -0
  1400. package/dist/rendering/plain.d.ts +2 -0
  1401. package/dist/rendering/plain.js +91 -0
  1402. package/dist/rendering/telegram-html.d.ts +7 -0
  1403. package/dist/rendering/telegram-html.js +76 -16
  1404. package/dist/research/auto-ingest.d.ts +45 -0
  1405. package/dist/research/auto-ingest.js +85 -0
  1406. package/dist/research/code-explorer-source.d.ts +29 -0
  1407. package/dist/research/code-explorer-source.js +76 -0
  1408. package/dist/research/connector-source.d.ts +25 -0
  1409. package/dist/research/connector-source.js +314 -0
  1410. package/dist/research/paper-qa/answer.d.ts +72 -0
  1411. package/dist/research/paper-qa/answer.js +227 -0
  1412. package/dist/research/paper-qa/corpus.d.ts +36 -0
  1413. package/dist/research/paper-qa/corpus.js +102 -0
  1414. package/dist/research/paper-qa/disk-embedding-cache.d.ts +28 -0
  1415. package/dist/research/paper-qa/disk-embedding-cache.js +193 -0
  1416. package/dist/research/paper-qa/index.d.ts +31 -0
  1417. package/dist/research/paper-qa/index.js +24 -0
  1418. package/dist/research/paper-qa/paper-qa-pipeline.d.ts +107 -0
  1419. package/dist/research/paper-qa/paper-qa-pipeline.js +163 -0
  1420. package/dist/research/paper-qa/passage-index.d.ts +203 -0
  1421. package/dist/research/paper-qa/passage-index.js +405 -0
  1422. package/dist/research/paper-qa/pdf-structure.d.ts +37 -0
  1423. package/dist/research/paper-qa/pdf-structure.js +377 -0
  1424. package/dist/research/paper-qa/persistent-corpus-index.d.ts +23 -0
  1425. package/dist/research/paper-qa/persistent-corpus-index.js +122 -0
  1426. package/dist/research/paper-qa/prose-chunker.d.ts +19 -0
  1427. package/dist/research/paper-qa/prose-chunker.js +201 -0
  1428. package/dist/research/paper-qa/provenance.d.ts +24 -0
  1429. package/dist/research/paper-qa/provenance.js +40 -0
  1430. package/dist/research/paper-qa/rcs.d.ts +78 -0
  1431. package/dist/research/paper-qa/rcs.js +200 -0
  1432. package/dist/research/paper-qa/types.d.ts +124 -0
  1433. package/dist/research/paper-qa/types.js +13 -0
  1434. package/dist/research/publication-sources.d.ts +34 -0
  1435. package/dist/research/publication-sources.js +131 -0
  1436. package/dist/research/relation-classifier.d.ts +13 -0
  1437. package/dist/research/relation-classifier.js +58 -0
  1438. package/dist/research/research-topics.d.ts +13 -0
  1439. package/dist/research/research-topics.js +81 -0
  1440. package/dist/review/apply-transaction.d.ts +40 -0
  1441. package/dist/review/apply-transaction.js +112 -0
  1442. package/dist/review/diff-model.d.ts +39 -0
  1443. package/dist/review/diff-model.js +124 -0
  1444. package/dist/review/llm-client.d.ts +30 -0
  1445. package/dist/review/llm-client.js +98 -0
  1446. package/dist/review/llm-reviewer.d.ts +16 -0
  1447. package/dist/review/llm-reviewer.js +122 -0
  1448. package/dist/review/review-engine.d.ts +54 -0
  1449. package/dist/review/review-engine.js +0 -0
  1450. package/dist/review/revision-loop.d.ts +67 -0
  1451. package/dist/review/revision-loop.js +160 -0
  1452. package/dist/review/static-gate.d.ts +13 -0
  1453. package/dist/review/static-gate.js +110 -0
  1454. package/dist/review/types.d.ts +122 -0
  1455. package/dist/review/types.js +24 -0
  1456. package/dist/review/write-gate.d.ts +55 -0
  1457. package/dist/review/write-gate.js +121 -0
  1458. package/dist/sandbox/auto-sandbox.d.ts +4 -2
  1459. package/dist/sandbox/auto-sandbox.js +14 -1
  1460. package/dist/sandbox/docker-sandbox.d.ts +39 -0
  1461. package/dist/sandbox/docker-sandbox.js +292 -14
  1462. package/dist/sandbox/execpolicy.d.ts +36 -1
  1463. package/dist/sandbox/execpolicy.js +375 -40
  1464. package/dist/sandbox/os-sandbox.d.ts +53 -0
  1465. package/dist/sandbox/os-sandbox.js +315 -70
  1466. package/dist/sandbox/sandbox-backend.d.ts +2 -0
  1467. package/dist/scheduler/cron-scheduler.d.ts +1 -0
  1468. package/dist/scheduler/cron-scheduler.js +142 -41
  1469. package/dist/scripting/codebuddy-bindings.js +2 -1
  1470. package/dist/search/bm25.js +5 -2
  1471. package/dist/search/usearch-index.js +7 -5
  1472. package/dist/security/audit-logger.js +14 -7
  1473. package/dist/security/bash-allowlist/allowlist-store.d.ts +8 -2
  1474. package/dist/security/bash-allowlist/allowlist-store.js +52 -12
  1475. package/dist/security/bash-allowlist/approval-flow.d.ts +1 -1
  1476. package/dist/security/bash-allowlist/approval-flow.js +10 -8
  1477. package/dist/security/bash-allowlist/deny-guard.d.ts +14 -0
  1478. package/dist/security/bash-allowlist/deny-guard.js +61 -0
  1479. package/dist/security/bash-allowlist/types.d.ts +5 -0
  1480. package/dist/security/bash-parser.d.ts +32 -0
  1481. package/dist/security/bash-parser.js +129 -14
  1482. package/dist/security/dangerous-patterns.js +18 -3
  1483. package/dist/security/declarative-rules.d.ts +1 -1
  1484. package/dist/security/declarative-rules.js +242 -65
  1485. package/dist/security/dependency-vuln-scanner.js +4 -4
  1486. package/dist/security/dev-origins.d.ts +40 -0
  1487. package/dist/security/dev-origins.js +111 -0
  1488. package/dist/security/docker-sandbox/manager.js +1 -1
  1489. package/dist/security/env-blocklist.d.ts +7 -0
  1490. package/dist/security/env-blocklist.js +22 -2
  1491. package/dist/security/guardian-agent.d.ts +0 -5
  1492. package/dist/security/guardian-agent.js +17 -6
  1493. package/dist/security/index.d.ts +3 -0
  1494. package/dist/security/index.js +2 -0
  1495. package/dist/security/native-sandbox.d.ts +80 -0
  1496. package/dist/security/native-sandbox.js +455 -0
  1497. package/dist/security/pack-contents-policy.d.ts +49 -0
  1498. package/dist/security/pack-contents-policy.js +139 -0
  1499. package/dist/security/permission-config.js +2 -5
  1500. package/dist/security/permission-modes.d.ts +11 -0
  1501. package/dist/security/permission-modes.js +71 -7
  1502. package/dist/security/policy-amendments.js +40 -22
  1503. package/dist/security/policy-engine.js +39 -12
  1504. package/dist/security/powershell-parser.d.ts +40 -0
  1505. package/dist/security/powershell-parser.js +198 -0
  1506. package/dist/security/remote-approval.d.ts +0 -1
  1507. package/dist/security/remote-approval.js +3 -2
  1508. package/dist/security/safe-binaries.d.ts +13 -1
  1509. package/dist/security/safe-binaries.js +240 -32
  1510. package/dist/security/safe-fetch.d.ts +7 -0
  1511. package/dist/security/safe-fetch.js +101 -0
  1512. package/dist/security/sandbox.js +2 -2
  1513. package/dist/security/secret-patterns.d.ts +18 -0
  1514. package/dist/security/secret-patterns.js +232 -0
  1515. package/dist/security/secret-scrubber.d.ts +31 -0
  1516. package/dist/security/secret-scrubber.js +170 -0
  1517. package/dist/security/secrets-detector.d.ts +3 -1
  1518. package/dist/security/secrets-detector.js +3 -106
  1519. package/dist/security/security-modes.js +2 -1
  1520. package/dist/security/session-encryption.d.ts +7 -2
  1521. package/dist/security/session-encryption.js +28 -7
  1522. package/dist/security/shell-env-policy.js +11 -2
  1523. package/dist/security/skill-scanner.d.ts +2 -2
  1524. package/dist/security/skill-scanner.js +237 -11
  1525. package/dist/security/ssrf-guard.d.ts +13 -0
  1526. package/dist/security/ssrf-guard.js +27 -0
  1527. package/dist/security/text-deobfuscation.d.ts +41 -0
  1528. package/dist/security/text-deobfuscation.js +256 -0
  1529. package/dist/security/tool-permissions.js +2 -3
  1530. package/dist/security/tool-policy/approval-scope.d.ts +11 -0
  1531. package/dist/security/tool-policy/approval-scope.js +67 -0
  1532. package/dist/security/tool-policy/policy-manager.d.ts +9 -0
  1533. package/dist/security/tool-policy/policy-manager.js +28 -1
  1534. package/dist/security/tool-policy/profiles.js +24 -0
  1535. package/dist/security/tool-policy/tool-groups.js +26 -3
  1536. package/dist/security/tool-policy/types.d.ts +3 -1
  1537. package/dist/security/tool-policy/types.js +2 -0
  1538. package/dist/security/trust-folders.js +3 -2
  1539. package/dist/security/write-policy.d.ts +8 -0
  1540. package/dist/security/write-policy.js +63 -1
  1541. package/dist/self-model/evolution-notes.d.ts +51 -0
  1542. package/dist/self-model/evolution-notes.js +324 -0
  1543. package/dist/sensory/agent-reply.d.ts +136 -0
  1544. package/dist/sensory/agent-reply.js +682 -0
  1545. package/dist/sensory/alert.d.ts +18 -0
  1546. package/dist/sensory/alert.js +105 -0
  1547. package/dist/sensory/arrival-opener.d.ts +102 -0
  1548. package/dist/sensory/arrival-opener.js +292 -0
  1549. package/dist/sensory/audio-scene.d.ts +24 -0
  1550. package/dist/sensory/audio-scene.js +74 -0
  1551. package/dist/sensory/camera-keyframe-policy.d.ts +11 -0
  1552. package/dist/sensory/camera-keyframe-policy.js +43 -0
  1553. package/dist/sensory/conversation-cues.d.ts +55 -0
  1554. package/dist/sensory/conversation-cues.js +140 -0
  1555. package/dist/sensory/domain-event-bridge.d.ts +7 -0
  1556. package/dist/sensory/domain-event-bridge.js +134 -0
  1557. package/dist/sensory/dreaming.d.ts +17 -0
  1558. package/dist/sensory/dreaming.js +52 -2
  1559. package/dist/sensory/elevenlabs-library.d.ts +91 -0
  1560. package/dist/sensory/elevenlabs-library.js +303 -0
  1561. package/dist/sensory/episodic-journal.d.ts +69 -0
  1562. package/dist/sensory/episodic-journal.js +240 -0
  1563. package/dist/sensory/error-watch-reaction.d.ts +41 -0
  1564. package/dist/sensory/error-watch-reaction.js +312 -0
  1565. package/dist/sensory/heartbeat-fallback.d.ts +46 -0
  1566. package/dist/sensory/heartbeat-fallback.js +171 -0
  1567. package/dist/sensory/heartbeat-scheduler.d.ts +6 -0
  1568. package/dist/sensory/heartbeat-scheduler.js +27 -7
  1569. package/dist/sensory/hybrid-reply.d.ts +132 -0
  1570. package/dist/sensory/hybrid-reply.js +1217 -0
  1571. package/dist/sensory/reactions.d.ts +6 -0
  1572. package/dist/sensory/reactions.js +10 -1
  1573. package/dist/sensory/respond-decider.d.ts +124 -0
  1574. package/dist/sensory/respond-decider.js +608 -0
  1575. package/dist/sensory/rule-templates.d.ts +30 -0
  1576. package/dist/sensory/rule-templates.js +100 -0
  1577. package/dist/sensory/schedule-emitter.d.ts +24 -0
  1578. package/dist/sensory/schedule-emitter.js +57 -0
  1579. package/dist/sensory/screen-reaction.js +15 -1
  1580. package/dist/sensory/semantic-vision-reaction.d.ts +36 -0
  1581. package/dist/sensory/semantic-vision-reaction.js +342 -0
  1582. package/dist/sensory/sensory-action-executor.d.ts +98 -0
  1583. package/dist/sensory/sensory-action-executor.js +473 -0
  1584. package/dist/sensory/sensory-bridge.d.ts +11 -1
  1585. package/dist/sensory/sensory-bridge.js +59 -7
  1586. package/dist/sensory/sensory-rules-engine.d.ts +81 -0
  1587. package/dist/sensory/sensory-rules-engine.js +434 -0
  1588. package/dist/sensory/sensory-status.d.ts +102 -0
  1589. package/dist/sensory/sensory-status.js +291 -0
  1590. package/dist/sensory/speech-engine-config.d.ts +68 -0
  1591. package/dist/sensory/speech-engine-config.js +157 -0
  1592. package/dist/sensory/speech-reaction.d.ts +183 -7
  1593. package/dist/sensory/speech-reaction.js +2141 -35
  1594. package/dist/sensory/speech-sanitizer.d.ts +12 -0
  1595. package/dist/sensory/speech-sanitizer.js +143 -0
  1596. package/dist/sensory/system-vitals-emitter.d.ts +130 -0
  1597. package/dist/sensory/system-vitals-emitter.js +514 -0
  1598. package/dist/sensory/tts-cache.d.ts +76 -0
  1599. package/dist/sensory/tts-cache.js +0 -0
  1600. package/dist/sensory/turn-detector.d.ts +28 -0
  1601. package/dist/sensory/turn-detector.js +57 -0
  1602. package/dist/sensory/vision-description-safety.d.ts +4 -0
  1603. package/dist/sensory/vision-description-safety.js +25 -0
  1604. package/dist/sensory/vision-reaction.d.ts +21 -7
  1605. package/dist/sensory/vision-reaction.js +209 -18
  1606. package/dist/sensory/voice-activity.d.ts +69 -0
  1607. package/dist/sensory/voice-activity.js +271 -0
  1608. package/dist/sensory/voice-clock.d.ts +19 -0
  1609. package/dist/sensory/voice-clock.js +111 -0
  1610. package/dist/sensory/voice-entrainment.d.ts +62 -0
  1611. package/dist/sensory/voice-entrainment.js +176 -0
  1612. package/dist/sensory/voice-interactions.d.ts +13 -0
  1613. package/dist/sensory/voice-interactions.js +258 -0
  1614. package/dist/sensory/voice-loop.d.ts +618 -0
  1615. package/dist/sensory/voice-loop.js +3581 -0
  1616. package/dist/sensory/voice-replay-lab.d.ts +32 -0
  1617. package/dist/sensory/voice-replay-lab.js +109 -0
  1618. package/dist/sensory/voice-stream.d.ts +121 -0
  1619. package/dist/sensory/voice-stream.js +598 -0
  1620. package/dist/sensory/voice-turn-coordinator.d.ts +88 -0
  1621. package/dist/sensory/voice-turn-coordinator.js +258 -0
  1622. package/dist/sensory/voice-turn-taking.d.ts +26 -0
  1623. package/dist/sensory/voice-turn-taking.js +59 -0
  1624. package/dist/server/agent-adapter.d.ts +49 -3
  1625. package/dist/server/agent-adapter.js +26 -4
  1626. package/dist/server/channel-a2a-bridge.js +1 -1
  1627. package/dist/server/exposure-diagnostic.d.ts +25 -0
  1628. package/dist/server/exposure-diagnostic.js +51 -0
  1629. package/dist/server/heartbeat-monitor.d.ts +13 -0
  1630. package/dist/server/heartbeat-monitor.js +8 -3
  1631. package/dist/server/http-agent-sessions.d.ts +32 -0
  1632. package/dist/server/http-agent-sessions.js +245 -0
  1633. package/dist/server/index.d.ts +3 -0
  1634. package/dist/server/index.js +913 -46
  1635. package/dist/server/mcp/approval-elicitation.d.ts +144 -0
  1636. package/dist/server/mcp/approval-elicitation.js +377 -0
  1637. package/dist/server/middleware/auth.d.ts +11 -0
  1638. package/dist/server/middleware/auth.js +54 -0
  1639. package/dist/server/middleware/error-handler.d.ts +5 -0
  1640. package/dist/server/middleware/error-handler.js +30 -4
  1641. package/dist/server/middleware/index.d.ts +1 -1
  1642. package/dist/server/middleware/index.js +1 -1
  1643. package/dist/server/mobile/album.d.ts +46 -0
  1644. package/dist/server/mobile/album.js +144 -0
  1645. package/dist/server/mobile/assets/app.js +3036 -0
  1646. package/dist/server/mobile/assets/emoji-data.js +508 -0
  1647. package/dist/server/mobile/assets/icon-192.png +0 -0
  1648. package/dist/server/mobile/assets/icon-512.png +0 -0
  1649. package/dist/server/mobile/assets/icon-96.png +0 -0
  1650. package/dist/server/mobile/assets/icon.svg +12 -0
  1651. package/dist/server/mobile/assets/index.html +261 -0
  1652. package/dist/server/mobile/assets/manifest.webmanifest +37 -0
  1653. package/dist/server/mobile/assets/styles.css +831 -0
  1654. package/dist/server/mobile/assets/sw.js +149 -0
  1655. package/dist/server/mobile/chat-extras.d.ts +9 -0
  1656. package/dist/server/mobile/chat-extras.js +24 -0
  1657. package/dist/server/mobile/index.d.ts +22 -0
  1658. package/dist/server/mobile/index.js +287 -0
  1659. package/dist/server/mobile/link-preview.d.ts +24 -0
  1660. package/dist/server/mobile/link-preview.js +139 -0
  1661. package/dist/server/mobile/push.d.ts +38 -0
  1662. package/dist/server/mobile/push.js +190 -0
  1663. package/dist/server/mobile/status.d.ts +23 -0
  1664. package/dist/server/mobile/status.js +107 -0
  1665. package/dist/server/mobile/telegram-forward.d.ts +14 -0
  1666. package/dist/server/mobile/telegram-forward.js +32 -0
  1667. package/dist/server/mobile/voice-note.d.ts +54 -0
  1668. package/dist/server/mobile/voice-note.js +305 -0
  1669. package/dist/server/origin-check.d.ts +4 -5
  1670. package/dist/server/origin-check.js +43 -8
  1671. package/dist/server/routes/canvas.d.ts +7 -1
  1672. package/dist/server/routes/canvas.js +138 -24
  1673. package/dist/server/routes/chat.js +340 -203
  1674. package/dist/server/routes/cognition.d.ts +3 -0
  1675. package/dist/server/routes/cognition.js +75 -0
  1676. package/dist/server/routes/health.js +93 -81
  1677. package/dist/server/routes/index.d.ts +5 -1
  1678. package/dist/server/routes/index.js +5 -1
  1679. package/dist/server/routes/lessons.d.ts +13 -0
  1680. package/dist/server/routes/lessons.js +111 -0
  1681. package/dist/server/routes/memory.d.ts +12 -0
  1682. package/dist/server/routes/memory.js +191 -131
  1683. package/dist/server/routes/runs.d.ts +9 -0
  1684. package/dist/server/routes/runs.js +50 -0
  1685. package/dist/server/routes/sessions.js +8 -1
  1686. package/dist/server/routes/tools.js +93 -74
  1687. package/dist/server/routes/webhooks.js +56 -46
  1688. package/dist/server/tunnel-manager.js +21 -1
  1689. package/dist/server/types.d.ts +25 -1
  1690. package/dist/server/webhook-agent-queue.d.ts +12 -0
  1691. package/dist/server/webhook-agent-queue.js +58 -0
  1692. package/dist/server/websocket/cognition-bridge.d.ts +13 -0
  1693. package/dist/server/websocket/cognition-bridge.js +334 -0
  1694. package/dist/server/websocket/confirmation-bridge.d.ts +22 -0
  1695. package/dist/server/websocket/confirmation-bridge.js +178 -0
  1696. package/dist/server/websocket/desktop-handler.d.ts +17 -0
  1697. package/dist/server/websocket/desktop-handler.js +177 -16
  1698. package/dist/server/websocket/handler.d.ts +123 -1
  1699. package/dist/server/websocket/handler.js +852 -67
  1700. package/dist/server/websocket/index.d.ts +2 -1
  1701. package/dist/server/websocket/index.js +2 -1
  1702. package/dist/server/websocket/peer-rpc.d.ts +1 -1
  1703. package/dist/server/websocket/peer-rpc.js +25 -3
  1704. package/dist/services/prompt-builder.d.ts +47 -2
  1705. package/dist/services/prompt-builder.js +310 -99
  1706. package/dist/sessions/timeline-snapshot.d.ts +35 -0
  1707. package/dist/sessions/timeline-snapshot.js +144 -0
  1708. package/dist/sessions/timeline.d.ts +33 -0
  1709. package/dist/sessions/timeline.js +85 -0
  1710. package/dist/shared/context-optimization-metadata.d.ts +29 -0
  1711. package/dist/shared/context-optimization-metadata.js +73 -0
  1712. package/dist/shared/engine-types.d.ts +26 -0
  1713. package/dist/skills/bash-injection.d.ts +2 -2
  1714. package/dist/skills/bash-injection.js +9 -2
  1715. package/dist/skills/bundled/code-explorer.skill.md +50 -0
  1716. package/dist/skills/bundled/file-edit.skill.md +62 -0
  1717. package/dist/skills/bundled/git-commit.skill.md +66 -0
  1718. package/dist/skills/bundled/pubcommander-control/SKILL.md +33 -0
  1719. package/dist/skills/bundled/pubcommander-control/agents/openai.yaml +4 -0
  1720. package/dist/skills/bundled/typescript-expert.skill.md +21 -0
  1721. package/dist/skills/bundled/weather.skill.md +48 -0
  1722. package/dist/skills/bundled/web-app-testing.skill.md +71 -0
  1723. package/dist/skills/bundled/web-search.skill.md +56 -0
  1724. package/dist/skills/hub.js +52 -30
  1725. package/dist/skills/index.d.ts +6 -3
  1726. package/dist/skills/index.js +19 -4
  1727. package/dist/skills/parser.js +2 -0
  1728. package/dist/skills/registry.d.ts +52 -0
  1729. package/dist/skills/registry.js +291 -14
  1730. package/dist/skills/skill-exchange.d.ts +61 -0
  1731. package/dist/skills/skill-exchange.js +523 -0
  1732. package/dist/skills/skill-importer.d.ts +2 -2
  1733. package/dist/skills/skill-importer.js +76 -17
  1734. package/dist/skills/skill-registry.js +3 -2
  1735. package/dist/skills/skill-signing.d.ts +20 -0
  1736. package/dist/skills/skill-signing.js +106 -0
  1737. package/dist/skills/skill-sources.d.ts +3 -2
  1738. package/dist/skills/skill-sources.js +5 -4
  1739. package/dist/skills/types.d.ts +4 -0
  1740. package/dist/spec/spec-store.js +7 -6
  1741. package/dist/speculative/shadow-workspace.d.ts +79 -0
  1742. package/dist/speculative/shadow-workspace.js +500 -0
  1743. package/dist/talk-mode/index.d.ts +4 -4
  1744. package/dist/talk-mode/index.js +3 -3
  1745. package/dist/talk-mode/providers/elevenlabs-client.d.ts +48 -0
  1746. package/dist/talk-mode/providers/elevenlabs-client.js +117 -0
  1747. package/dist/talk-mode/providers/elevenlabs.js +12 -23
  1748. package/dist/talk-mode/providers/index.d.ts +3 -1
  1749. package/dist/talk-mode/providers/index.js +2 -0
  1750. package/dist/talk-mode/providers/pocket-tts.d.ts +88 -0
  1751. package/dist/talk-mode/providers/pocket-tts.js +334 -0
  1752. package/dist/talk-mode/providers/voicebox-tts.d.ts +24 -0
  1753. package/dist/talk-mode/providers/voicebox-tts.js +120 -0
  1754. package/dist/talk-mode/types.d.ts +39 -1
  1755. package/dist/tasks/background-tasks.js +22 -5
  1756. package/dist/telemetry/otel-tracer.js +5 -2
  1757. package/dist/templates/design-system-apply.d.ts +23 -0
  1758. package/dist/templates/design-system-apply.js +100 -0
  1759. package/dist/templates/project-scaffolding.d.ts +2 -0
  1760. package/dist/templates/project-scaffolding.js +616 -1
  1761. package/dist/themes/theme-manager.js +9 -6
  1762. package/dist/themes/theme-schema.d.ts +46 -46
  1763. package/dist/tools/advanced/multi-file-editor.js +3 -1
  1764. package/dist/tools/advanced/operation-history.js +2 -1
  1765. package/dist/tools/app-server-tool.d.ts +66 -0
  1766. package/dist/tools/app-server-tool.js +423 -0
  1767. package/dist/tools/apply-patch.d.ts +31 -1
  1768. package/dist/tools/apply-patch.js +214 -19
  1769. package/dist/tools/authored-tools-manifest-2.d.ts +17 -0
  1770. package/dist/tools/authored-tools-manifest-2.js +133 -0
  1771. package/dist/tools/authored-tools-manifest.d.ts +15 -0
  1772. package/dist/tools/authored-tools-manifest.js +13 -0
  1773. package/dist/tools/bash/bash-tool.d.ts +36 -3
  1774. package/dist/tools/bash/bash-tool.js +240 -100
  1775. package/dist/tools/bash/command-validator.d.ts +1 -1
  1776. package/dist/tools/bash/command-validator.js +115 -40
  1777. package/dist/tools/bash/execution-policy.d.ts +42 -0
  1778. package/dist/tools/bash/execution-policy.js +278 -0
  1779. package/dist/tools/bash/security-patterns.js +43 -5
  1780. package/dist/tools/bash/streaming-executor.d.ts +1 -1
  1781. package/dist/tools/bash/streaming-executor.js +124 -18
  1782. package/dist/tools/build-project-tool.d.ts +25 -0
  1783. package/dist/tools/build-project-tool.js +30 -0
  1784. package/dist/tools/bundle-analyze-tool.d.ts +28 -0
  1785. package/dist/tools/bundle-analyze-tool.js +39 -0
  1786. package/dist/tools/code-exec-tool.d.ts +55 -23
  1787. package/dist/tools/code-exec-tool.js +598 -111
  1788. package/dist/tools/code-explorer-tool.d.ts +1 -1
  1789. package/dist/tools/code-explorer-tool.js +25 -1
  1790. package/dist/tools/code-review.js +5 -0
  1791. package/dist/tools/code-stats-tool.d.ts +43 -0
  1792. package/dist/tools/code-stats-tool.js +70 -0
  1793. package/dist/tools/codebase-replace-tool.js +2 -2
  1794. package/dist/tools/comfy-recipe-tool.d.ts +37 -0
  1795. package/dist/tools/comfy-recipe-tool.js +693 -0
  1796. package/dist/tools/community-search.d.ts +93 -0
  1797. package/dist/tools/community-search.js +334 -0
  1798. package/dist/tools/computer-control-harness.js +5 -2
  1799. package/dist/tools/computer-control-tool.d.ts +8 -0
  1800. package/dist/tools/computer-control-tool.js +71 -26
  1801. package/dist/tools/context-expand-tool.d.ts +19 -0
  1802. package/dist/tools/context-expand-tool.js +132 -0
  1803. package/dist/tools/csv/csv-parse.d.ts +19 -0
  1804. package/dist/tools/csv/csv-parse.js +132 -0
  1805. package/dist/tools/csv/csv-wiring.d.ts +8 -0
  1806. package/dist/tools/csv/csv-wiring.js +9 -0
  1807. package/dist/tools/csv-analyze-tool.d.ts +11 -0
  1808. package/dist/tools/csv-analyze-tool.js +114 -0
  1809. package/dist/tools/csv-preview-tool.d.ts +34 -0
  1810. package/dist/tools/csv-preview-tool.js +69 -0
  1811. package/dist/tools/db-migration.js +11 -3
  1812. package/dist/tools/deep-research-tool.d.ts +68 -0
  1813. package/dist/tools/deep-research-tool.js +257 -0
  1814. package/dist/tools/deferred-schema-state.d.ts +19 -0
  1815. package/dist/tools/deferred-schema-state.js +33 -0
  1816. package/dist/tools/dep-inspect-tool.d.ts +32 -0
  1817. package/dist/tools/dep-inspect-tool.js +74 -0
  1818. package/dist/tools/design-system-tool.d.ts +10 -0
  1819. package/dist/tools/design-system-tool.js +95 -0
  1820. package/dist/tools/device-tool.d.ts +2 -1
  1821. package/dist/tools/device-tool.js +21 -0
  1822. package/dist/tools/diagram-tool.js +8 -2
  1823. package/dist/tools/diff-files-tool.d.ts +28 -0
  1824. package/dist/tools/diff-files-tool.js +49 -0
  1825. package/dist/tools/enhanced-search.js +32 -16
  1826. package/dist/tools/env-doctor-tool.d.ts +30 -0
  1827. package/dist/tools/env-doctor-tool.js +54 -0
  1828. package/dist/tools/execute-code-rpc-invoker.js +2 -2
  1829. package/dist/tools/execute-code-runner.d.ts +21 -0
  1830. package/dist/tools/execute-code-runner.js +117 -8
  1831. package/dist/tools/extension-forge-tool.d.ts +29 -0
  1832. package/dist/tools/extension-forge-tool.js +288 -0
  1833. package/dist/tools/fetch-tool.js +7 -3
  1834. package/dist/tools/file-search-tool.d.ts +41 -0
  1835. package/dist/tools/file-search-tool.js +99 -0
  1836. package/dist/tools/format-project-tool.d.ts +28 -0
  1837. package/dist/tools/format-project-tool.js +45 -0
  1838. package/dist/tools/git-summary-tool.d.ts +36 -0
  1839. package/dist/tools/git-summary-tool.js +65 -0
  1840. package/dist/tools/git-tool.js +16 -4
  1841. package/dist/tools/gpu-avatar-delivery.d.ts +16 -0
  1842. package/dist/tools/gpu-avatar-delivery.js +67 -0
  1843. package/dist/tools/gpu-media-worker.d.ts +96 -0
  1844. package/dist/tools/gpu-media-worker.js +363 -0
  1845. package/dist/tools/gui-tool.js +92 -13
  1846. package/dist/tools/http-probe-tool.d.ts +25 -0
  1847. package/dist/tools/http-probe-tool.js +40 -0
  1848. package/dist/tools/image-tool.js +29 -16
  1849. package/dist/tools/index.d.ts +6 -1
  1850. package/dist/tools/index.js +5 -0
  1851. package/dist/tools/interactive-bash.d.ts +29 -1
  1852. package/dist/tools/interactive-bash.js +141 -21
  1853. package/dist/tools/json-query-tool.d.ts +30 -0
  1854. package/dist/tools/json-query-tool.js +49 -0
  1855. package/dist/tools/license-check-tool.d.ts +22 -0
  1856. package/dist/tools/license-check-tool.js +43 -0
  1857. package/dist/tools/lint-project-tool.d.ts +52 -0
  1858. package/dist/tools/lint-project-tool.js +143 -0
  1859. package/dist/tools/local-binary-launch.d.ts +14 -0
  1860. package/dist/tools/local-binary-launch.js +63 -0
  1861. package/dist/tools/lsp-navigation-tools.d.ts +87 -0
  1862. package/dist/tools/lsp-navigation-tools.js +470 -0
  1863. package/dist/tools/markdown-convert.d.ts +51 -0
  1864. package/dist/tools/markdown-convert.js +159 -0
  1865. package/dist/tools/media-generation-tool.d.ts +90 -1
  1866. package/dist/tools/media-generation-tool.js +1553 -11
  1867. package/dist/tools/meeting-notes-tool.d.ts +25 -0
  1868. package/dist/tools/meeting-notes-tool.js +240 -0
  1869. package/dist/tools/merge-conflict-tool.js +1 -1
  1870. package/dist/tools/metadata.d.ts +7 -1
  1871. package/dist/tools/metadata.js +823 -13
  1872. package/dist/tools/mixture-of-agents-tool.d.ts +7 -0
  1873. package/dist/tools/mixture-of-agents-tool.js +230 -31
  1874. package/dist/tools/multi-edit.js +42 -18
  1875. package/dist/tools/ocr-tool.d.ts +43 -0
  1876. package/dist/tools/ocr-tool.js +24 -18
  1877. package/dist/tools/omission-placeholder-detector.js +12 -6
  1878. package/dist/tools/paper-qa-tool.d.ts +73 -0
  1879. package/dist/tools/paper-qa-tool.js +313 -0
  1880. package/dist/tools/peer-chain-tool.js +4 -1
  1881. package/dist/tools/peer-delegate-tool.d.ts +2 -0
  1882. package/dist/tools/peer-delegate-tool.js +11 -1
  1883. package/dist/tools/port-check-tool.d.ts +31 -0
  1884. package/dist/tools/port-check-tool.js +25 -0
  1885. package/dist/tools/project-map-tool.d.ts +39 -0
  1886. package/dist/tools/project-map-tool.js +128 -0
  1887. package/dist/tools/register-tool-handler.d.ts +2 -2
  1888. package/dist/tools/register-tool-handler.js +7 -4
  1889. package/dist/tools/registry/advanced-tools.js +1 -1
  1890. package/dist/tools/registry/attention-tools.d.ts +3 -3
  1891. package/dist/tools/registry/attention-tools.js +14 -10
  1892. package/dist/tools/registry/authored-extra-tools.d.ts +20 -0
  1893. package/dist/tools/registry/authored-extra-tools.js +147 -0
  1894. package/dist/tools/registry/bash-tools.d.ts +2 -2
  1895. package/dist/tools/registry/bash-tools.js +7 -3
  1896. package/dist/tools/registry/browser-operator-tools.d.ts +1 -1
  1897. package/dist/tools/registry/browser-operator-tools.js +17 -3
  1898. package/dist/tools/registry/browser-tools.d.ts +1 -1
  1899. package/dist/tools/registry/browser-tools.js +38 -33
  1900. package/dist/tools/registry/code-explorer-tools.js +6 -1
  1901. package/dist/tools/registry/comfy-recipe-tools.d.ts +2 -0
  1902. package/dist/tools/registry/comfy-recipe-tools.js +5 -0
  1903. package/dist/tools/registry/context-expand-tools.d.ts +3 -0
  1904. package/dist/tools/registry/context-expand-tools.js +6 -0
  1905. package/dist/tools/registry/csv-tools.d.ts +12 -0
  1906. package/dist/tools/registry/csv-tools.js +62 -0
  1907. package/dist/tools/registry/delegate-agent-tools.d.ts +64 -0
  1908. package/dist/tools/registry/delegate-agent-tools.js +206 -0
  1909. package/dist/tools/registry/design-tools.d.ts +12 -0
  1910. package/dist/tools/registry/design-tools.js +80 -0
  1911. package/dist/tools/registry/fleet-tools.js +6 -0
  1912. package/dist/tools/registry/index.d.ts +25 -5
  1913. package/dist/tools/registry/index.js +80 -6
  1914. package/dist/tools/registry/interactive-adapters.d.ts +37 -0
  1915. package/dist/tools/registry/interactive-adapters.js +116 -0
  1916. package/dist/tools/registry/lsp-tools.d.ts +3 -3
  1917. package/dist/tools/registry/lsp-tools.js +9 -3
  1918. package/dist/tools/registry/meeting-tools.d.ts +3 -0
  1919. package/dist/tools/registry/meeting-tools.js +6 -0
  1920. package/dist/tools/registry/memory-tools.js +32 -20
  1921. package/dist/tools/registry/misc-tools.d.ts +1 -1
  1922. package/dist/tools/registry/misc-tools.js +7 -4
  1923. package/dist/tools/registry/moa-tools.js +13 -0
  1924. package/dist/tools/registry/multimodal-tools.d.ts +73 -1
  1925. package/dist/tools/registry/multimodal-tools.js +581 -4
  1926. package/dist/tools/registry/process-tools.d.ts +16 -0
  1927. package/dist/tools/registry/process-tools.js +136 -1
  1928. package/dist/tools/registry/remind-tools.d.ts +23 -0
  1929. package/dist/tools/registry/remind-tools.js +120 -0
  1930. package/dist/tools/registry/research-tools.d.ts +17 -0
  1931. package/dist/tools/registry/research-tools.js +21 -0
  1932. package/dist/tools/registry/search-tools.d.ts +6 -6
  1933. package/dist/tools/registry/search-tools.js +30 -17
  1934. package/dist/tools/registry/secrets-tools.d.ts +33 -0
  1935. package/dist/tools/registry/secrets-tools.js +71 -0
  1936. package/dist/tools/registry/self-describe-tools.d.ts +23 -0
  1937. package/dist/tools/registry/self-describe-tools.js +156 -0
  1938. package/dist/tools/registry/self-evolution-tools.d.ts +13 -0
  1939. package/dist/tools/registry/self-evolution-tools.js +97 -0
  1940. package/dist/tools/registry/text-editor-tools.d.ts +26 -4
  1941. package/dist/tools/registry/text-editor-tools.js +102 -6
  1942. package/dist/tools/registry/tool-alias-map.d.ts +8 -0
  1943. package/dist/tools/registry/tool-alias-map.js +47 -0
  1944. package/dist/tools/registry/tool-aliases.d.ts +3 -4
  1945. package/dist/tools/registry/tool-aliases.js +12 -48
  1946. package/dist/tools/registry/types.d.ts +5 -0
  1947. package/dist/tools/registry/verify-tools.d.ts +50 -0
  1948. package/dist/tools/registry/verify-tools.js +136 -0
  1949. package/dist/tools/registry/video-studio-tools.d.ts +13 -0
  1950. package/dist/tools/registry/video-studio-tools.js +21 -0
  1951. package/dist/tools/registry/vision-tools.d.ts +15 -1
  1952. package/dist/tools/registry/vision-tools.js +252 -27
  1953. package/dist/tools/registry/web-test-tool.d.ts +66 -0
  1954. package/dist/tools/registry/web-test-tool.js +321 -0
  1955. package/dist/tools/registry/web-tools.d.ts +43 -0
  1956. package/dist/tools/registry/web-tools.js +281 -1
  1957. package/dist/tools/review-gate-helper.d.ts +44 -0
  1958. package/dist/tools/review-gate-helper.js +110 -0
  1959. package/dist/tools/route-peer-tool.js +62 -11
  1960. package/dist/tools/sbom-generate-tool.d.ts +22 -0
  1961. package/dist/tools/sbom-generate-tool.js +41 -0
  1962. package/dist/tools/scaffold-app-tool.d.ts +48 -0
  1963. package/dist/tools/scaffold-app-tool.js +144 -0
  1964. package/dist/tools/screenshot-tool.js +5 -2
  1965. package/dist/tools/search.d.ts +17 -0
  1966. package/dist/tools/search.js +31 -8
  1967. package/dist/tools/self-describe.d.ts +73 -0
  1968. package/dist/tools/self-describe.js +298 -0
  1969. package/dist/tools/stock-quote.d.ts +67 -0
  1970. package/dist/tools/stock-quote.js +645 -0
  1971. package/dist/tools/submit-plan-tool.js +1 -1
  1972. package/dist/tools/test-runner-tool.d.ts +38 -0
  1973. package/dist/tools/test-runner-tool.js +96 -0
  1974. package/dist/tools/text-editor.js +91 -8
  1975. package/dist/tools/text-to-speech-tool.d.ts +1 -1
  1976. package/dist/tools/text-to-speech-tool.js +48 -2
  1977. package/dist/tools/todo-scan-tool.d.ts +39 -0
  1978. package/dist/tools/todo-scan-tool.js +53 -0
  1979. package/dist/tools/tool-manager.js +8 -0
  1980. package/dist/tools/tool-search.js +11 -3
  1981. package/dist/tools/tool-selector.d.ts +7 -0
  1982. package/dist/tools/tool-selector.js +27 -13
  1983. package/dist/tools/tools-md-generator.js +2 -2
  1984. package/dist/tools/types.d.ts +16 -0
  1985. package/dist/tools/types.js +5 -1
  1986. package/dist/tools/video/approved-media-source.d.ts +8 -0
  1987. package/dist/tools/video/approved-media-source.js +59 -0
  1988. package/dist/tools/video/book-manuscript-source.d.ts +49 -0
  1989. package/dist/tools/video/book-manuscript-source.js +263 -0
  1990. package/dist/tools/video/character-in-location.d.ts +42 -0
  1991. package/dist/tools/video/character-in-location.js +161 -0
  1992. package/dist/tools/video/cinematic-trailer-plan.d.ts +203 -0
  1993. package/dist/tools/video/cinematic-trailer-plan.js +498 -0
  1994. package/dist/tools/video/cloud-understand.d.ts +91 -0
  1995. package/dist/tools/video/cloud-understand.js +214 -0
  1996. package/dist/tools/video/comfy-client.d.ts +38 -0
  1997. package/dist/tools/video/comfy-client.js +227 -0
  1998. package/dist/tools/video/comfy-workflow-template.d.ts +70 -0
  1999. package/dist/tools/video/comfy-workflow-template.js +194 -0
  2000. package/dist/tools/video/describe-frame.d.ts +36 -0
  2001. package/dist/tools/video/describe-frame.js +68 -0
  2002. package/dist/tools/video/film-assemble.d.ts +234 -0
  2003. package/dist/tools/video/film-assemble.js +959 -0
  2004. package/dist/tools/video/film-project.d.ts +152 -0
  2005. package/dist/tools/video/film-project.js +312 -0
  2006. package/dist/tools/video/frame-dedup.d.ts +46 -0
  2007. package/dist/tools/video/frame-dedup.js +110 -0
  2008. package/dist/tools/video/frame-sample.d.ts +72 -0
  2009. package/dist/tools/video/frame-sample.js +238 -0
  2010. package/dist/tools/video/google-flow-driver.d.ts +131 -0
  2011. package/dist/tools/video/google-flow-driver.js +312 -0
  2012. package/dist/tools/video/google-flow-handoff.d.ts +75 -0
  2013. package/dist/tools/video/google-flow-handoff.js +121 -0
  2014. package/dist/tools/video/google-flow-plan-export.d.ts +21 -0
  2015. package/dist/tools/video/google-flow-plan-export.js +123 -0
  2016. package/dist/tools/video/google-flow-result-import.d.ts +92 -0
  2017. package/dist/tools/video/google-flow-result-import.js +297 -0
  2018. package/dist/tools/video/hybrid-video-router.d.ts +34 -0
  2019. package/dist/tools/video/hybrid-video-router.js +113 -0
  2020. package/dist/tools/video/localized-media.d.ts +50 -0
  2021. package/dist/tools/video/localized-media.js +128 -0
  2022. package/dist/tools/video/long-form-plan.d.ts +37 -0
  2023. package/dist/tools/video/long-form-plan.js +83 -0
  2024. package/dist/tools/video/long-form-production.d.ts +49 -0
  2025. package/dist/tools/video/long-form-production.js +168 -0
  2026. package/dist/tools/video/long-transcribe.d.ts +94 -0
  2027. package/dist/tools/video/long-transcribe.js +206 -0
  2028. package/dist/tools/video/media-fetch.d.ts +94 -0
  2029. package/dist/tools/video/media-fetch.js +311 -0
  2030. package/dist/tools/video/mermaid-render.d.ts +34 -0
  2031. package/dist/tools/video/mermaid-render.js +127 -0
  2032. package/dist/tools/video/narration.d.ts +96 -0
  2033. package/dist/tools/video/narration.js +505 -0
  2034. package/dist/tools/video/native-fashion-defects.d.ts +27 -0
  2035. package/dist/tools/video/native-fashion-defects.js +80 -0
  2036. package/dist/tools/video/scene-render.d.ts +108 -0
  2037. package/dist/tools/video/scene-render.js +418 -0
  2038. package/dist/tools/video/subtitles.d.ts +49 -0
  2039. package/dist/tools/video/subtitles.js +116 -0
  2040. package/dist/tools/video/video-ckg.d.ts +123 -0
  2041. package/dist/tools/video/video-ckg.js +188 -0
  2042. package/dist/tools/video/video-research-card.d.ts +58 -0
  2043. package/dist/tools/video/video-research-card.js +468 -0
  2044. package/dist/tools/video/video-understanding.d.ts +159 -0
  2045. package/dist/tools/video/video-understanding.js +534 -0
  2046. package/dist/tools/video/visual-gate-report.d.ts +139 -0
  2047. package/dist/tools/video/visual-gate-report.js +379 -0
  2048. package/dist/tools/video/voice-rights-registry.d.ts +13 -0
  2049. package/dist/tools/video/voice-rights-registry.js +142 -0
  2050. package/dist/tools/video/youtube-captions.d.ts +51 -0
  2051. package/dist/tools/video/youtube-captions.js +102 -0
  2052. package/dist/tools/video/youtube-master-quality.d.ts +163 -0
  2053. package/dist/tools/video/youtube-master-quality.js +379 -0
  2054. package/dist/tools/video/youtube-storyboard.d.ts +43 -0
  2055. package/dist/tools/video/youtube-storyboard.js +194 -0
  2056. package/dist/tools/video-flow-handoff-tool.d.ts +181 -0
  2057. package/dist/tools/video-flow-handoff-tool.js +261 -0
  2058. package/dist/tools/video-long-form-plan-tool.d.ts +31 -0
  2059. package/dist/tools/video-long-form-plan-tool.js +87 -0
  2060. package/dist/tools/video-quality-gate-tool.d.ts +97 -0
  2061. package/dist/tools/video-quality-gate-tool.js +189 -0
  2062. package/dist/tools/video-route-tool.d.ts +128 -0
  2063. package/dist/tools/video-route-tool.js +126 -0
  2064. package/dist/tools/video-studio-tool-helpers.d.ts +22 -0
  2065. package/dist/tools/video-studio-tool-helpers.js +128 -0
  2066. package/dist/tools/video-trailer-plan-tool.d.ts +60 -0
  2067. package/dist/tools/video-trailer-plan-tool.js +103 -0
  2068. package/dist/tools/vision/blender-render.d.ts +76 -0
  2069. package/dist/tools/vision/blender-render.js +121 -0
  2070. package/dist/tools/vision/image-processor.d.ts +1 -0
  2071. package/dist/tools/vision/image-processor.js +8 -1
  2072. package/dist/tools/vision/load-sharp.d.ts +53 -0
  2073. package/dist/tools/vision/load-sharp.js +48 -0
  2074. package/dist/tools/vision/mean-luma.d.ts +4 -0
  2075. package/dist/tools/vision/mean-luma.js +189 -0
  2076. package/dist/tools/vision/object-detection.d.ts +90 -0
  2077. package/dist/tools/vision/object-detection.js +403 -0
  2078. package/dist/tools/vision/vision-analysis.js +2 -1
  2079. package/dist/tools/weather.d.ts +33 -0
  2080. package/dist/tools/weather.js +183 -0
  2081. package/dist/tools/web-scrape-tool.d.ts +63 -0
  2082. package/dist/tools/web-scrape-tool.js +318 -0
  2083. package/dist/tools/web-search.d.ts +67 -6
  2084. package/dist/tools/web-search.js +231 -68
  2085. package/dist/tools/workspace-tools.d.ts +39 -0
  2086. package/dist/tools/workspace-tools.js +347 -0
  2087. package/dist/tracks/track-manager.js +9 -8
  2088. package/dist/triggers/webhook-trigger.js +10 -18
  2089. package/dist/ui/components/ChatHistory.js +12 -0
  2090. package/dist/ui/components/ChatInterface.js +6 -2
  2091. package/dist/ui/components/FileAutocomplete.d.ts +6 -1
  2092. package/dist/ui/components/FileAutocomplete.js +136 -76
  2093. package/dist/ui/components/FuzzyPicker.d.ts +5 -0
  2094. package/dist/ui/components/FuzzyPicker.js +1 -1
  2095. package/dist/ui/http-server/server.js +2 -2
  2096. package/dist/undo/checkpoint-manager.d.ts +3 -0
  2097. package/dist/undo/checkpoint-manager.js +6 -1
  2098. package/dist/utils/approval-pattern-tracker.js +5 -13
  2099. package/dist/utils/ascii-banner.d.ts +1 -1
  2100. package/dist/utils/ascii-banner.js +1 -1
  2101. package/dist/utils/atomic-write.d.ts +77 -0
  2102. package/dist/utils/atomic-write.js +530 -0
  2103. package/dist/utils/audio-player.d.ts +1 -0
  2104. package/dist/utils/audio-player.js +7 -3
  2105. package/dist/utils/autonomy-manager.js +12 -3
  2106. package/dist/utils/command-exists.d.ts +14 -0
  2107. package/dist/utils/command-exists.js +43 -0
  2108. package/dist/utils/config-validation/schema.d.ts +13 -13
  2109. package/dist/utils/config-validation/schema.js +33 -1
  2110. package/dist/utils/confirmation-service.d.ts +60 -1
  2111. package/dist/utils/confirmation-service.js +204 -41
  2112. package/dist/utils/cost-tracker.d.ts +66 -1
  2113. package/dist/utils/cost-tracker.js +100 -17
  2114. package/dist/utils/history-manager.js +6 -7
  2115. package/dist/utils/init-project.js +17 -13
  2116. package/dist/utils/input-validation/index.d.ts +16 -16
  2117. package/dist/utils/installation-id.js +7 -22
  2118. package/dist/utils/interactive-setup.js +7 -12
  2119. package/dist/utils/json-salvage.d.ts +22 -0
  2120. package/dist/utils/json-salvage.js +91 -0
  2121. package/dist/utils/llm-retry.js +3 -0
  2122. package/dist/utils/logger.d.ts +1 -0
  2123. package/dist/utils/logger.js +16 -5
  2124. package/dist/utils/model-router.js +8 -12
  2125. package/dist/utils/model-utils.js +14 -0
  2126. package/dist/utils/output-sanitizer.d.ts +4 -8
  2127. package/dist/utils/output-sanitizer.js +10 -10
  2128. package/dist/utils/output-schema-validator.d.ts +7 -0
  2129. package/dist/utils/output-schema-validator.js +25 -1
  2130. package/dist/utils/response-cache.js +11 -22
  2131. package/dist/utils/ripgrep-path.d.ts +11 -0
  2132. package/dist/utils/ripgrep-path.js +60 -0
  2133. package/dist/utils/semantic-cache.js +4 -7
  2134. package/dist/utils/settings-manager.d.ts +27 -4
  2135. package/dist/utils/settings-manager.js +51 -39
  2136. package/dist/utils/shell-completions.js +25 -34
  2137. package/dist/utils/shell-configuration.d.ts +39 -0
  2138. package/dist/utils/shell-configuration.js +106 -0
  2139. package/dist/utils/stream-stall-guard.d.ts +39 -0
  2140. package/dist/utils/stream-stall-guard.js +123 -0
  2141. package/dist/utils/subprocess-env.d.ts +15 -0
  2142. package/dist/utils/subprocess-env.js +112 -0
  2143. package/dist/utils/telegram-api-base.d.ts +9 -0
  2144. package/dist/utils/telegram-api-base.js +15 -0
  2145. package/dist/utils/telemetry-config.js +16 -13
  2146. package/dist/utils/update-notifier.js +5 -10
  2147. package/dist/utils/validators.js +1 -2
  2148. package/dist/versioning/config-migrator.js +3 -2
  2149. package/dist/versioning/migration-manager.js +5 -4
  2150. package/dist/versioning/version-detector.js +2 -1
  2151. package/dist/vision-train/assets.d.ts +37 -0
  2152. package/dist/vision-train/assets.js +97 -0
  2153. package/dist/vision-train/ckg-publish.d.ts +26 -0
  2154. package/dist/vision-train/ckg-publish.js +36 -0
  2155. package/dist/vision-train/coco-to-labels.d.ts +63 -0
  2156. package/dist/vision-train/coco-to-labels.js +63 -0
  2157. package/dist/vision-train/curriculum.d.ts +29 -0
  2158. package/dist/vision-train/curriculum.js +49 -0
  2159. package/dist/vision-train/engine.d.ts +56 -0
  2160. package/dist/vision-train/engine.js +55 -0
  2161. package/dist/vision-train/report.d.ts +15 -0
  2162. package/dist/vision-train/report.js +72 -0
  2163. package/dist/vision-train/scorer.d.ts +67 -0
  2164. package/dist/vision-train/scorer.js +114 -0
  2165. package/dist/vision-train/yolo-labels.d.ts +13 -0
  2166. package/dist/vision-train/yolo-labels.js +66 -0
  2167. package/dist/voice/elevenlabs-voice.d.ts +53 -0
  2168. package/dist/voice/elevenlabs-voice.js +412 -0
  2169. package/dist/voice/kyutai-local-voice.d.ts +33 -0
  2170. package/dist/voice/kyutai-local-voice.js +198 -0
  2171. package/dist/voice/local-tts.d.ts +106 -3
  2172. package/dist/voice/local-tts.js +672 -35
  2173. package/dist/voice/local-whisper.d.ts +11 -0
  2174. package/dist/voice/local-whisper.js +18 -2
  2175. package/dist/voice/pcm-edges.d.ts +43 -0
  2176. package/dist/voice/pcm-edges.js +210 -0
  2177. package/dist/voice/perceived-latency-benchmark.d.ts +56 -0
  2178. package/dist/voice/perceived-latency-benchmark.js +218 -0
  2179. package/dist/voice/tts-bank.d.ts +72 -0
  2180. package/dist/voice/tts-bank.js +172 -0
  2181. package/dist/voice/tts-latency-benchmark.d.ts +36 -0
  2182. package/dist/voice/tts-latency-benchmark.js +76 -0
  2183. package/dist/voice/tts-volume.d.ts +86 -0
  2184. package/dist/voice/tts-volume.js +378 -0
  2185. package/dist/voice/two-speed-voice.d.ts +19 -0
  2186. package/dist/voice/two-speed-voice.js +40 -0
  2187. package/dist/voice/voice-to-code.js +1 -1
  2188. package/dist/voice/voicebox-tts.d.ts +150 -0
  2189. package/dist/voice/voicebox-tts.js +669 -0
  2190. package/dist/voice/wake-word.d.ts +2 -0
  2191. package/dist/voice/wake-word.js +30 -10
  2192. package/dist/webhooks/webhook-manager.js +10 -18
  2193. package/dist/widgets/auto-widget.d.ts +27 -0
  2194. package/dist/widgets/auto-widget.js +111 -0
  2195. package/dist/widgets/canvas-publish.d.ts +15 -0
  2196. package/dist/widgets/canvas-publish.js +39 -0
  2197. package/dist/widgets/curated/news.d.ts +2 -0
  2198. package/dist/widgets/curated/news.js +46 -0
  2199. package/dist/widgets/curated/stock.d.ts +1 -0
  2200. package/dist/widgets/curated/stock.js +87 -0
  2201. package/dist/widgets/curated/weather.d.ts +2 -0
  2202. package/dist/widgets/curated/weather.js +93 -0
  2203. package/dist/widgets/template-engine.d.ts +19 -0
  2204. package/dist/widgets/template-engine.js +134 -0
  2205. package/dist/widgets/widget-engine.d.ts +24 -0
  2206. package/dist/widgets/widget-engine.js +153 -0
  2207. package/dist/widgets/widget-gate.d.ts +19 -0
  2208. package/dist/widgets/widget-gate.js +144 -0
  2209. package/dist/widgets/widget-image-renderer.d.ts +4 -0
  2210. package/dist/widgets/widget-image-renderer.js +164 -0
  2211. package/dist/widgets/widget-matcher.d.ts +48 -0
  2212. package/dist/widgets/widget-matcher.js +109 -0
  2213. package/dist/widgets/widget-proposer.d.ts +17 -0
  2214. package/dist/widgets/widget-proposer.js +75 -0
  2215. package/dist/widgets/widget-registry.d.ts +36 -0
  2216. package/dist/widgets/widget-registry.js +231 -0
  2217. package/dist/widgets/widget-types.d.ts +100 -0
  2218. package/dist/widgets/widget-types.js +17 -0
  2219. package/dist/wizard/environment-detection.d.ts +67 -0
  2220. package/dist/wizard/environment-detection.js +210 -0
  2221. package/dist/wizard/onboarding.d.ts +21 -1
  2222. package/dist/wizard/onboarding.js +202 -27
  2223. package/dist/workflows/state-manager.js +8 -2
  2224. package/dist/workspace/workspace-config.d.ts +37 -0
  2225. package/dist/workspace/workspace-config.js +199 -0
  2226. package/dist/workspace/workspace-isolation.d.ts +19 -0
  2227. package/dist/workspace/workspace-isolation.js +124 -39
  2228. package/dist/workspace/workspace-manager.js +19 -14
  2229. package/examples/claude_desktop_config.json +8 -0
  2230. package/package.json +75 -31
  2231. package/.codebuddy/README.md +0 -65
  2232. package/dist/agent/middleware/learning-first-middleware.d.ts +0 -79
  2233. package/dist/agent/middleware/learning-first-middleware.js +0 -271
  2234. package/dist/agent/middleware/tool-filter-middleware.d.ts +0 -45
  2235. package/dist/agent/middleware/tool-filter-middleware.js +0 -122
  2236. package/dist/codebuddy/tool-definitions/batch-tools.d.ts +0 -10
  2237. package/dist/codebuddy/tool-definitions/batch-tools.js +0 -46
  2238. package/dist/codebuddy/tool-definitions/graph-tools.d.ts +0 -13
  2239. package/dist/codebuddy/tool-definitions/graph-tools.js +0 -78
  2240. package/dist/plugins/code-explorer/CodeExplorerMCPClient.d.ts +0 -129
  2241. package/dist/plugins/code-explorer/CodeExplorerMCPClient.js +0 -143
  2242. package/dist/tools/registry/batch-tools.d.ts +0 -36
  2243. package/dist/tools/registry/batch-tools.js +0 -135
  2244. package/dist/tools/registry/graph-tools.d.ts +0 -45
  2245. package/dist/tools/registry/graph-tools.js +0 -283
@@ -1,3 +1,5 @@
1
+ import { TOOL_EFFECT_CLASSES } from "./types.js";
2
+ import { logger } from "../utils/logger.js";
1
3
  /**
2
4
  * Default tool metadata for all built-in tools
3
5
  */
@@ -5,6 +7,7 @@ export const TOOL_METADATA = [
5
7
  // File reading
6
8
  {
7
9
  name: 'view_file',
10
+ effect: 'read',
8
11
  category: 'file_read',
9
12
  keywords: ['view', 'read', 'show', 'display', 'content', 'file', 'open', 'look', 'see', 'check', 'list', 'directory', 'ls', 'cat'],
10
13
  priority: 10,
@@ -13,6 +16,7 @@ export const TOOL_METADATA = [
13
16
  },
14
17
  {
15
18
  name: 'read_file',
19
+ effect: 'read',
16
20
  category: 'file_read',
17
21
  keywords: ['read', 'view', 'show', 'display', 'content', 'file', 'hermes'],
18
22
  priority: 10,
@@ -22,6 +26,7 @@ export const TOOL_METADATA = [
22
26
  // File writing
23
27
  {
24
28
  name: 'create_file',
29
+ effect: 'reversible',
25
30
  category: 'file_write',
26
31
  keywords: ['create', 'new', 'write', 'generate', 'make', 'add', 'initialize', 'init', 'touch'],
27
32
  priority: 8,
@@ -29,6 +34,7 @@ export const TOOL_METADATA = [
29
34
  },
30
35
  {
31
36
  name: 'write_file',
37
+ effect: 'reversible',
32
38
  category: 'file_write',
33
39
  keywords: ['write', 'create', 'new', 'file', 'content', 'hermes'],
34
40
  priority: 8,
@@ -36,6 +42,7 @@ export const TOOL_METADATA = [
36
42
  },
37
43
  {
38
44
  name: 'str_replace_editor',
45
+ effect: 'reversible',
39
46
  category: 'file_write',
40
47
  keywords: ['edit', 'modify', 'change', 'update', 'replace', 'fix', 'refactor', 'alter', 'patch'],
41
48
  priority: 10,
@@ -43,6 +50,7 @@ export const TOOL_METADATA = [
43
50
  },
44
51
  {
45
52
  name: 'patch',
53
+ effect: 'reversible',
46
54
  category: 'file_write',
47
55
  keywords: ['patch', 'edit', 'replace', 'modify', 'file', 'text', 'hermes'],
48
56
  priority: 9,
@@ -50,6 +58,7 @@ export const TOOL_METADATA = [
50
58
  },
51
59
  {
52
60
  name: 'edit_file',
61
+ effect: 'reversible',
53
62
  category: 'file_write',
54
63
  keywords: ['edit', 'modify', 'change', 'update', 'fast', 'morph', 'apply', 'bulk'],
55
64
  priority: 9,
@@ -57,14 +66,42 @@ export const TOOL_METADATA = [
57
66
  },
58
67
  {
59
68
  name: 'multi_edit',
69
+ effect: 'reversible',
60
70
  category: 'file_write',
61
71
  keywords: ['multi', 'edit', 'replace', 'batch', 'atomic', 'refactor', 'multiple', 'edits', 'rename'],
62
72
  priority: 8,
63
73
  description: 'Apply multiple text replacements to a single file atomically'
64
74
  },
75
+ {
76
+ name: 'apply_patch',
77
+ effect: 'reversible',
78
+ category: 'file_write',
79
+ keywords: ['patch', 'diff', 'apply', 'unified', 'edit', 'update', 'add', 'delete', 'file', 'diff-first'],
80
+ priority: 8,
81
+ description: 'Apply a diff-first patch to add/update/delete files (required by WritePolicy strict mode)'
82
+ },
83
+ // Self-model — the robot's own components/bricks
84
+ {
85
+ name: 'self_describe',
86
+ effect: 'read',
87
+ category: 'file_read',
88
+ keywords: ['self', 'describe', 'components', 'composants', 'briques', 'bricks', 'architecture', 'de quoi es-tu fait', 'de quoi es-tu compose', 'qui es-tu', 'capabilities', 'capacites', 'capteur', 'capteurs', 'sensors', 'modules', 'buddy-sense', 'buddy-vision', 'buddy-memory', 'introspection', 'auto inspection', 'etudie', 'examine', 'inspecte', 'propre code', 'ton code', 'fonctionne', 'fonctionnes', 'fonctionnement', 'limites', 'version', 'conscient', 'consciente', 'conscience', 'consciousness', 'modele de soi'],
89
+ priority: 50,
90
+ description: "Inspect the robot's attested core, bounded code structure, turn metadata, configured faculties, and epistemic limits without live probes",
91
+ fleetSafe: true,
92
+ },
93
+ {
94
+ name: 'self_evolution',
95
+ effect: 'read',
96
+ category: 'file_read',
97
+ keywords: ['self', 'evolution', 'evolutions', 'changement', 'changements', 'recent', 'récemment', 'release', 'changelog', 'notes de version', 'version', 'appris', 'learned', 'voice', 'voix', 'memory', 'mémoire', 'companion', 'fiabilité', 'reliability'],
98
+ priority: 50,
99
+ description: "Read documented recent changes to Code Buddy's own behavior without modifying files or probing services",
100
+ },
65
101
  // Directory listing
66
102
  {
67
103
  name: 'list_directory',
104
+ effect: 'read',
68
105
  category: 'file_read',
69
106
  keywords: ['list', 'directory', 'files', 'ls', 'folder', 'contents', 'dir', 'entries'],
70
107
  priority: 9,
@@ -74,6 +111,7 @@ export const TOOL_METADATA = [
74
111
  // File search
75
112
  {
76
113
  name: 'search',
114
+ effect: 'read',
77
115
  category: 'file_search',
78
116
  keywords: ['search', 'find', 'locate', 'grep', 'look for', 'where', 'which', 'query', 'pattern', 'regex'],
79
117
  priority: 10,
@@ -82,6 +120,7 @@ export const TOOL_METADATA = [
82
120
  },
83
121
  {
84
122
  name: 'search_files',
123
+ effect: 'read',
85
124
  category: 'file_search',
86
125
  keywords: ['search', 'files', 'grep', 'find', 'pattern', 'text', 'hermes'],
87
126
  priority: 10,
@@ -90,6 +129,7 @@ export const TOOL_METADATA = [
90
129
  },
91
130
  {
92
131
  name: 'find_symbols',
132
+ effect: 'read',
93
133
  category: 'file_search',
94
134
  keywords: ['symbols', 'functions', 'classes', 'definitions', 'code', 'index', 'semantic'],
95
135
  priority: 8,
@@ -98,6 +138,7 @@ export const TOOL_METADATA = [
98
138
  },
99
139
  {
100
140
  name: 'find_references',
141
+ effect: 'read',
101
142
  category: 'file_search',
102
143
  keywords: ['references', 'usages', 'where used', 'callers', 'semantic'],
103
144
  priority: 8,
@@ -106,6 +147,7 @@ export const TOOL_METADATA = [
106
147
  },
107
148
  {
108
149
  name: 'find_definition',
150
+ effect: 'read',
109
151
  category: 'file_search',
110
152
  keywords: ['definition', 'go to definition', 'declaration', 'symbol'],
111
153
  priority: 8,
@@ -114,15 +156,35 @@ export const TOOL_METADATA = [
114
156
  },
115
157
  {
116
158
  name: 'search_multi',
159
+ effect: 'read',
117
160
  category: 'file_search',
118
161
  keywords: ['multi', 'search', 'batch', 'parallel', 'patterns', 'queries'],
119
162
  priority: 7,
120
163
  description: 'Run multiple searches in one call',
121
164
  fleetSafe: true,
122
165
  },
166
+ {
167
+ name: 'workspace_search',
168
+ effect: 'read',
169
+ category: 'file_search',
170
+ keywords: ['workspace', 'multi-repo', 'repository', 'ecosystem', 'search', 'grep'],
171
+ priority: 10,
172
+ description: 'Search text across every selected repository in the opt-in workspace',
173
+ fleetSafe: true,
174
+ },
175
+ {
176
+ name: 'workspace_read',
177
+ effect: 'read',
178
+ category: 'file_read',
179
+ keywords: ['workspace', 'multi-repo', 'repository', 'ecosystem', 'read', 'file'],
180
+ priority: 10,
181
+ description: 'Read a bounded file from a repository in the opt-in workspace',
182
+ fleetSafe: true,
183
+ },
123
184
  // System operations
124
185
  {
125
186
  name: 'bash',
187
+ effect: 'emission',
126
188
  category: 'system',
127
189
  keywords: ['bash', 'terminal', 'command', 'run', 'execute', 'shell', 'npm', 'yarn', 'pip', 'install', 'build', 'test', 'compile'],
128
190
  priority: 9,
@@ -130,20 +192,42 @@ export const TOOL_METADATA = [
130
192
  },
131
193
  {
132
194
  name: 'terminal',
195
+ effect: 'emission',
133
196
  category: 'system',
134
197
  keywords: ['terminal', 'bash', 'shell', 'command', 'execute', 'run', 'hermes'],
135
198
  priority: 9,
136
199
  description: 'Execute shell commands through the existing bash safety checks',
137
200
  },
201
+ {
202
+ name: 'interactive_shell',
203
+ effect: 'emission',
204
+ category: 'system',
205
+ keywords: [
206
+ 'interactive', 'pty', 'handoff', 'vim', 'rebase', 'prompt', 'manual',
207
+ 'shell', 'terminal', 'user', 'intervention', 'conflict',
208
+ ],
209
+ priority: 6,
210
+ description: 'Hand control of an interactive PTY shell to the user until they type exit',
211
+ },
138
212
  {
139
213
  name: 'process',
214
+ effect: 'emission',
140
215
  category: 'system',
141
216
  keywords: ['process', 'spawn', 'kill', 'list', 'logs', 'pid', 'monitor'],
142
217
  priority: 6,
143
218
  description: 'Manage system processes (spawn, inspect, logs, terminate)'
144
219
  },
220
+ {
221
+ name: 'app_server',
222
+ effect: 'emission',
223
+ category: 'system',
224
+ keywords: ['dev server', 'app server', 'localhost', 'preview', 'test app', 'serve', 'npm run dev', 'vite', 'test ui'],
225
+ priority: 7,
226
+ description: 'Start/stop a managed local dev server and make its loopback URL browsable for testing the app'
227
+ },
145
228
  {
146
229
  name: 'js_repl',
230
+ effect: 'emission',
147
231
  category: 'system',
148
232
  keywords: ['javascript', 'repl', 'eval', 'node', 'snippet', 'runtime'],
149
233
  priority: 5,
@@ -151,14 +235,24 @@ export const TOOL_METADATA = [
151
235
  },
152
236
  {
153
237
  name: 'execute_code',
238
+ effect: 'emission',
154
239
  category: 'system',
155
240
  keywords: ['execute_code', 'hermes', 'code', 'script', 'runtime', 'subprocess', 'artifact', 'run'],
156
241
  priority: 8,
157
242
  description: 'Execute a bounded code snippet as a real subprocess and persist run artifacts',
158
243
  },
244
+ {
245
+ name: 'code_exec',
246
+ effect: 'emission',
247
+ category: 'utility',
248
+ keywords: ['code_exec', 'code mode', 'javascript', 'orchestration', 'tool bridge', 'responses lite', 'exec'],
249
+ priority: 9,
250
+ description: 'Run bounded JavaScript orchestration whose nested effects retain Code Buddy policies and confirmations',
251
+ },
159
252
  // Git operations
160
253
  {
161
254
  name: 'git',
255
+ effect: 'emission',
162
256
  category: 'git',
163
257
  keywords: ['git', 'commit', 'push', 'pull', 'branch', 'merge', 'diff', 'status', 'checkout', 'stash', 'version', 'control'],
164
258
  priority: 8,
@@ -167,6 +261,7 @@ export const TOOL_METADATA = [
167
261
  // Docker operations
168
262
  {
169
263
  name: 'docker',
264
+ effect: 'emission',
170
265
  category: 'system',
171
266
  keywords: ['docker', 'container', 'image', 'build', 'run', 'stop', 'logs', 'exec', 'compose', 'pull', 'push', 'prune', 'volume', 'network', 'dockerfile'],
172
267
  priority: 7,
@@ -175,6 +270,7 @@ export const TOOL_METADATA = [
175
270
  // Kubernetes operations
176
271
  {
177
272
  name: 'kubernetes',
273
+ effect: 'emission',
178
274
  category: 'system',
179
275
  keywords: ['kubernetes', 'k8s', 'kubectl', 'pod', 'deployment', 'service', 'namespace', 'cluster', 'node', 'scale', 'rollout', 'configmap', 'secret', 'ingress', 'helm'],
180
276
  priority: 7,
@@ -183,22 +279,135 @@ export const TOOL_METADATA = [
183
279
  // Web operations
184
280
  {
185
281
  name: 'web_search',
282
+ effect: 'emission',
186
283
  category: 'web',
187
- keywords: ['search', 'google', 'web', 'internet', 'online', 'latest', 'news', 'documentation', 'docs', 'how to', 'weather', 'météo', 'meteo', 'forecast', 'temperature', 'info', 'find', 'lookup'],
284
+ keywords: ['search', 'google', 'web', 'internet', 'online', 'latest', 'news', 'documentation', 'docs', 'how to', 'info', 'find', 'lookup'],
188
285
  priority: 8,
189
- description: 'Search the web for information including weather, news, documentation, and general queries',
286
+ description: 'Search the web for information including news, documentation, and general queries',
190
287
  fleetSafe: true,
191
288
  },
289
+ {
290
+ name: 'community_search',
291
+ effect: 'emission',
292
+ category: 'web',
293
+ keywords: ['reddit', 'hacker news', 'community', 'discussion', 'people', 'opinion',
294
+ 'what do people think', 'sentiment', 'buzz', 'trending', 'stack overflow',
295
+ 'github', 'arxiv', 'avis', 'retours', 'communauté'],
296
+ priority: 8,
297
+ description: 'Search what people actually say — discussions, votes and engagement — rather than what publishers write',
298
+ fleetSafe: true,
299
+ },
300
+ {
301
+ name: 'weather',
302
+ effect: 'emission',
303
+ category: 'web',
304
+ keywords: ['weather', 'météo', 'meteo', 'forecast', 'prévisions', 'previsions', 'température', 'temperature', 'pluie', 'neige', 'vent'],
305
+ priority: 8,
306
+ description: 'Current weather and forecast for a city via Open-Meteo (no API key)',
307
+ // Read-only (public weather API) — answerable under the plan posture.
308
+ fleetSafe: true,
309
+ },
310
+ {
311
+ name: 'stock_quote',
312
+ effect: 'emission',
313
+ category: 'web',
314
+ keywords: ['stock', 'bourse', 'cours', 'action', 'quote', 'ticker', 'market', 'index', 'indice', 'nasdaq', 'cac', 'cac 40', 'cotation', 'action en bourse', 'valeur boursière'],
315
+ priority: 8,
316
+ description: 'Real stock/index market quote via Yahoo Finance (free, no API key), Stooq fallback',
317
+ // Read-only (public market data API) — answerable under the plan posture.
318
+ fleetSafe: true,
319
+ },
320
+ {
321
+ name: 'design_system',
322
+ effect: 'reversible',
323
+ category: 'utility',
324
+ keywords: ['design', 'design system', 'ui', 'brand', 'branding', 'style', 'theme', 'spotify', 'apple', 'brutalism', 'interface', 'landing', 'esthétique', 'charte', 'palette', 'typographie'],
325
+ priority: 7,
326
+ description: 'List 150 brand design systems and read a chosen DESIGN.md to generate branded UIs',
327
+ // Read-only (reads vendored DESIGN.md assets) — answerable under the plan posture.
328
+ fleetSafe: true,
329
+ },
330
+ {
331
+ name: 'csv_analyze',
332
+ effect: 'read',
333
+ category: 'utility',
334
+ keywords: ['csv', 'table', 'tabular', 'columns', 'colonnes', 'numeric', 'stats', 'statistiques', 'preview', 'data', 'analyze', 'analyse', 'spreadsheet'],
335
+ priority: 6,
336
+ description: 'Read-only CSV analysis: dimensions, column types, numeric stats, and a row preview',
337
+ // Read-only (deterministic local parse, no network) — answerable under the plan posture.
338
+ fleetSafe: true,
339
+ },
340
+ {
341
+ name: 'deep_research',
342
+ effect: 'emission',
343
+ category: 'web',
344
+ keywords: [
345
+ 'research', 'deep research', 'investigate', 'investigation', 'sources', 'cite', 'citation',
346
+ 'report', 'literature', 'state of the art', "état de l'art", 'etat de l\'art',
347
+ 'recherche approfondie', 'recherche', 'enquête', 'due diligence', 'compare', 'comparison',
348
+ 'storm', 'perspectives', 'multi-source', 'cited',
349
+ ],
350
+ priority: 7,
351
+ description: 'Bounded multi-source cited research pipeline (deep/wide/STORM) returning a report with references',
352
+ },
353
+ {
354
+ name: 'paper_qa',
355
+ effect: 'read',
356
+ category: 'web',
357
+ keywords: [
358
+ 'paper', 'papers', 'pdf', 'scientific', 'science', 'article', 'articles', 'corpus',
359
+ 'cite', 'citation', 'cited', 'page', 'section', 'papier', 'papiers', 'scientifique',
360
+ 'cite la source', 'preuves', 'grounded', 'publication', 'étude', 'research paper',
361
+ ],
362
+ priority: 7,
363
+ description: 'Grounded, cited QA over a local corpus of scientific PDFs (page/section provenance, honest refusal)',
364
+ },
365
+ {
366
+ name: 'meeting_notes',
367
+ effect: 'reversible',
368
+ category: 'document',
369
+ keywords: [
370
+ 'meeting', 'notes', 'minutes', 'transcript', 'transcription', 'audio', 'video',
371
+ 'summary', 'decisions', 'actions', 'speakers', 'evidence', 'timestamp',
372
+ 'réunion', 'compte rendu', 'résumé', 'décisions', 'tâches', 'horodatage',
373
+ ],
374
+ priority: 8,
375
+ description: 'Create private, grounded meeting notes from a workspace-local transcript, audio, or video file',
376
+ },
377
+ {
378
+ name: 'comfy_recipe',
379
+ effect: 'emission',
380
+ category: 'media',
381
+ keywords: [
382
+ 'comfyui', 'comfy', 'recipe', 'workflow', 'local generation', 'image', 'reference image',
383
+ 'avatar', 'character consistency', 'cohérence personnage', 'video',
384
+ 'audio', 'music', '3d', 'storyboard', 'book cover', 'trailer', 'animation',
385
+ 'génération locale', 'couverture', 'bande annonce',
386
+ ],
387
+ priority: 9,
388
+ description: 'List, preflight, or run a registered local ComfyUI recipe with declared workspace-local image references and confined outputs',
389
+ },
192
390
  {
193
391
  name: 'web_fetch',
392
+ effect: 'emission',
194
393
  category: 'web',
195
394
  keywords: ['fetch', 'url', 'website', 'page', 'download', 'http', 'https', 'link', 'read'],
196
395
  priority: 7,
197
396
  description: 'Fetch web page content',
198
397
  fleetSafe: true,
199
398
  },
399
+ {
400
+ name: 'web_scrape',
401
+ effect: 'emission',
402
+ category: 'web',
403
+ keywords: ['scrape', 'crawl', 'extract', 'cloudflare', 'anti-bot', 'stealth', 'html', 'markdown', 'adaptive', 'selector'],
404
+ priority: 8,
405
+ description: 'Scrape a public web page locally with Scrapling and graceful web_fetch fallback',
406
+ fleetSafe: true,
407
+ },
200
408
  {
201
409
  name: 'web_extract',
410
+ effect: 'emission',
202
411
  category: 'web',
203
412
  keywords: ['extract', 'fetch', 'url', 'website', 'page', 'http', 'https', 'read', 'hermes'],
204
413
  priority: 7,
@@ -207,6 +416,7 @@ export const TOOL_METADATA = [
207
416
  },
208
417
  {
209
418
  name: 'internet_scout_plan',
419
+ effect: 'read',
210
420
  category: 'web',
211
421
  keywords: ['internet scout', 'surf', 'browse', 'navigation', 'osint', 'prospecting', 'lead', 'profile enrichment', 'search', 'fetch', 'observe', 'extract', 'assert', 'stagehand', 'evidence', 'rate limit', 'captcha', 'proof'],
212
422
  priority: 8,
@@ -215,6 +425,7 @@ export const TOOL_METADATA = [
215
425
  },
216
426
  {
217
427
  name: 'internet_scout_run',
428
+ effect: 'emission',
218
429
  category: 'web',
219
430
  keywords: ['internet scout', 'run', 'surf', 'browse', 'playwright', 'browser', 'navigation', 'osint', 'prospecting', 'lead', 'profile enrichment', 'search', 'fetch', 'observe', 'extract', 'assert', 'stagehand', 'evidence', 'rate limit', 'captcha', 'proof'],
220
431
  priority: 9,
@@ -223,6 +434,7 @@ export const TOOL_METADATA = [
223
434
  },
224
435
  {
225
436
  name: 'browser_navigate',
437
+ effect: 'emission',
226
438
  category: 'web',
227
439
  keywords: ['browser', 'navigate', 'goto', 'url', 'playwright', 'hermes'],
228
440
  priority: 8,
@@ -230,6 +442,7 @@ export const TOOL_METADATA = [
230
442
  },
231
443
  {
232
444
  name: 'browser_click',
445
+ effect: 'emission',
233
446
  category: 'web',
234
447
  keywords: ['browser', 'click', 'ref', 'element', 'playwright', 'hermes'],
235
448
  priority: 8,
@@ -237,6 +450,7 @@ export const TOOL_METADATA = [
237
450
  },
238
451
  {
239
452
  name: 'browser_type',
453
+ effect: 'emission',
240
454
  category: 'web',
241
455
  keywords: ['browser', 'type', 'input', 'text', 'ref', 'playwright', 'hermes'],
242
456
  priority: 8,
@@ -244,6 +458,7 @@ export const TOOL_METADATA = [
244
458
  },
245
459
  {
246
460
  name: 'browser_scroll',
461
+ effect: 'emission',
247
462
  category: 'web',
248
463
  keywords: ['browser', 'scroll', 'page', 'viewport', 'ref', 'playwright', 'hermes'],
249
464
  priority: 7,
@@ -251,6 +466,7 @@ export const TOOL_METADATA = [
251
466
  },
252
467
  {
253
468
  name: 'browser_back',
469
+ effect: 'emission',
254
470
  category: 'web',
255
471
  keywords: ['browser', 'back', 'history', 'navigation', 'playwright', 'hermes'],
256
472
  priority: 7,
@@ -258,6 +474,7 @@ export const TOOL_METADATA = [
258
474
  },
259
475
  {
260
476
  name: 'browser_press',
477
+ effect: 'emission',
261
478
  category: 'web',
262
479
  keywords: ['browser', 'press', 'keyboard', 'key', 'playwright', 'hermes'],
263
480
  priority: 7,
@@ -265,6 +482,7 @@ export const TOOL_METADATA = [
265
482
  },
266
483
  {
267
484
  name: 'browser_vision',
485
+ effect: 'emission',
268
486
  category: 'web',
269
487
  keywords: ['browser', 'vision', 'screenshot', 'analyze', 'playwright', 'hermes'],
270
488
  priority: 8,
@@ -272,6 +490,7 @@ export const TOOL_METADATA = [
272
490
  },
273
491
  {
274
492
  name: 'browser_dialog',
493
+ effect: 'emission',
275
494
  category: 'web',
276
495
  keywords: ['browser', 'dialog', 'alert', 'confirm', 'prompt', 'beforeunload', 'modal', 'playwright', 'hermes'],
277
496
  priority: 7,
@@ -279,6 +498,7 @@ export const TOOL_METADATA = [
279
498
  },
280
499
  {
281
500
  name: 'browser_get_images',
501
+ effect: 'emission',
282
502
  category: 'web',
283
503
  keywords: ['browser', 'image', 'images', 'img', 'media', 'alt', 'playwright', 'hermes'],
284
504
  priority: 7,
@@ -286,6 +506,7 @@ export const TOOL_METADATA = [
286
506
  },
287
507
  {
288
508
  name: 'browser_console',
509
+ effect: 'emission',
289
510
  category: 'web',
290
511
  keywords: ['browser', 'console', 'logs', 'javascript', 'pageerror', 'debug', 'playwright', 'hermes'],
291
512
  priority: 7,
@@ -293,6 +514,7 @@ export const TOOL_METADATA = [
293
514
  },
294
515
  {
295
516
  name: 'browser_snapshot',
517
+ effect: 'emission',
296
518
  category: 'web',
297
519
  keywords: ['browser', 'snapshot', 'accessibility', 'refs', 'observe', 'playwright', 'hermes'],
298
520
  priority: 8,
@@ -300,6 +522,7 @@ export const TOOL_METADATA = [
300
522
  },
301
523
  {
302
524
  name: 'lead_scout_plan',
525
+ effect: 'read',
303
526
  category: 'planning',
304
527
  keywords: ['lead scout', 'prospecting', 'prospect', 'leads', 'b2b', 'architectes', 'syndics', 'agences immobilieres', 'maitres oeuvre', 'promoteurs', 'bureaux etudes', 'sirene', 'rnc', 'osint', 'public data', 'script recipe', 'scoring', 'human review'],
305
528
  priority: 9,
@@ -308,6 +531,7 @@ export const TOOL_METADATA = [
308
531
  },
309
532
  {
310
533
  name: 'lead_scout_run',
534
+ effect: 'emission',
311
535
  category: 'planning',
312
536
  keywords: ['lead scout', 'run', 'prospecting', 'prospect', 'leads', 'b2b', 'architectes', 'syndics', 'agences immobilieres', 'dataset', 'json', 'csv', 'dedupe', 'scoring', 'review queue', 'email draft', 'human review'],
313
537
  priority: 10,
@@ -316,6 +540,7 @@ export const TOOL_METADATA = [
316
540
  },
317
541
  {
318
542
  name: 'lead_scout_enrichment_plan',
543
+ effect: 'read',
319
544
  category: 'planning',
320
545
  keywords: ['lead scout', 'enrichment', 'multi-hop', 'script generation', 'sandbox', 'manus', 'architectes', 'website', 'contact page', 'phone', 'telephone', 'email', 'evidence chain', 'public data'],
321
546
  priority: 10,
@@ -324,6 +549,7 @@ export const TOOL_METADATA = [
324
549
  },
325
550
  {
326
551
  name: 'lead_scout_lesson_candidates',
552
+ effect: 'reversible',
327
553
  category: 'planning',
328
554
  keywords: ['lead scout', 'lessons', 'learning', 'self improvement', 'script feedback', 'sandbox logs', 'patterns', 'enrichment', 'lessons_add'],
329
555
  priority: 9,
@@ -333,6 +559,7 @@ export const TOOL_METADATA = [
333
559
  // Firecrawl (Native Engine v2026.3.14)
334
560
  {
335
561
  name: 'firecrawl_search',
562
+ effect: 'emission',
336
563
  category: 'web',
337
564
  keywords: ['search', 'firecrawl', 'crawl', 'web', 'find', 'query', 'results', 'internet'],
338
565
  priority: 8,
@@ -341,6 +568,7 @@ export const TOOL_METADATA = [
341
568
  },
342
569
  {
343
570
  name: 'firecrawl_scrape',
571
+ effect: 'emission',
344
572
  category: 'web',
345
573
  keywords: ['scrape', 'firecrawl', 'crawl', 'extract', 'web', 'page', 'content', 'markdown', 'fetch'],
346
574
  priority: 8,
@@ -349,20 +577,31 @@ export const TOOL_METADATA = [
349
577
  },
350
578
  {
351
579
  name: 'browser',
580
+ effect: 'emission',
352
581
  category: 'web',
353
582
  keywords: ['browser', 'automate', 'click', 'fill', 'form', 'screenshot', 'scrape', 'navigate', 'headless', 'puppeteer', 'playwright', 'selenium', 'test', 'ui', 'automation', 'web', 'observe', 'extract', 'assert', 'assertion', 'stagehand', 'page.act', 'page.extract', 'page.observe'],
354
583
  priority: 6,
355
584
  description: 'Automate web browser for navigation, interaction, extraction, observation, and testing'
356
585
  },
586
+ {
587
+ name: 'web_test',
588
+ effect: 'emission',
589
+ category: 'web',
590
+ keywords: ['web test', 'test ui', 'verify app', 'smoke test', 'e2e', 'console errors', 'check page', 'test app'],
591
+ priority: 7,
592
+ description: 'One-call structured UI test with evidence: console + server logs + snapshot + screenshot + assertions'
593
+ },
357
594
  {
358
595
  name: 'browser_operator',
596
+ effect: 'emission',
359
597
  category: 'web',
360
598
  keywords: ['browser operator', 'browser', 'web automation', 'live web', 'navigate', 'login', 'interaction', 'consent', 'stagehand', 'computer use', 'session', 'stop control', 'proof export', 'operator', 'propose'],
361
599
  priority: 6,
362
- description: 'Propose a consent-gated Browser Operator session (action log, consent scopes, stop control, proof export) for live web goals beyond web_search/web_fetch — without launching a browser'
600
+ description: 'Propose a consent-gated Browser Operator session for a reviewed sourceUrl (action log, consent scopes, stop control, proof export) — without launching a browser'
363
601
  },
364
602
  {
365
603
  name: 'computer_control',
604
+ effect: 'emission',
366
605
  category: 'system',
367
606
  keywords: ['computer', 'control', 'desktop', 'mouse', 'keyboard', 'window', 'dialog', 'modal', 'prompt', 'click', 'type', 'automation', 'form', 'field', 'dropdown', 'listbox', 'checkbox', 'radio', 'tab', 'menu', 'tree', 'treeitem', 'slider', 'range', 'link', 'button', 'assert', 'application', 'profile', 'excel', 'spreadsheet', 'notepad', 'calculator'],
368
607
  priority: 6,
@@ -370,6 +609,7 @@ export const TOOL_METADATA = [
370
609
  },
371
610
  {
372
611
  name: 'office_macro_execute',
612
+ effect: 'emission',
373
613
  category: 'system',
374
614
  keywords: ['office', 'excel', 'word', 'powerpoint', 'vba', 'macro', 'powershell', 'com', 'windows', 'automation'],
375
615
  priority: 4,
@@ -378,6 +618,7 @@ export const TOOL_METADATA = [
378
618
  // Planning
379
619
  {
380
620
  name: 'create_todo_list',
621
+ effect: 'reversible',
381
622
  category: 'planning',
382
623
  keywords: ['todo', 'plan', 'task', 'list', 'organize', 'steps', 'breakdown', 'project'],
383
624
  priority: 6,
@@ -385,6 +626,7 @@ export const TOOL_METADATA = [
385
626
  },
386
627
  {
387
628
  name: 'get_todo_list',
629
+ effect: 'read',
388
630
  category: 'planning',
389
631
  keywords: ['todo', 'task', 'list', 'view', 'show', 'what', 'do', 'faire', 'tâches', 'taches', 'pending', 'status'],
390
632
  priority: 7,
@@ -393,6 +635,7 @@ export const TOOL_METADATA = [
393
635
  },
394
636
  {
395
637
  name: 'update_todo_list',
638
+ effect: 'reversible',
396
639
  category: 'planning',
397
640
  keywords: ['todo', 'update', 'complete', 'done', 'progress', 'status', 'mark'],
398
641
  priority: 6,
@@ -400,6 +643,7 @@ export const TOOL_METADATA = [
400
643
  },
401
644
  {
402
645
  name: 'kanban_show',
646
+ effect: 'read',
403
647
  category: 'planning',
404
648
  keywords: ['kanban', 'hermes', 'show', 'card', 'task', 'board', 'coordination'],
405
649
  priority: 8,
@@ -407,6 +651,7 @@ export const TOOL_METADATA = [
407
651
  },
408
652
  {
409
653
  name: 'kanban_list',
654
+ effect: 'read',
410
655
  category: 'planning',
411
656
  keywords: ['kanban', 'hermes', 'list', 'cards', 'tasks', 'board', 'coordination'],
412
657
  priority: 8,
@@ -414,6 +659,7 @@ export const TOOL_METADATA = [
414
659
  },
415
660
  {
416
661
  name: 'kanban_complete',
662
+ effect: 'reversible',
417
663
  category: 'planning',
418
664
  keywords: ['kanban', 'hermes', 'complete', 'done', 'finish', 'task', 'board'],
419
665
  priority: 8,
@@ -421,6 +667,7 @@ export const TOOL_METADATA = [
421
667
  },
422
668
  {
423
669
  name: 'kanban_block',
670
+ effect: 'reversible',
424
671
  category: 'planning',
425
672
  keywords: ['kanban', 'hermes', 'block', 'blocked', 'stuck', 'reason', 'task'],
426
673
  priority: 8,
@@ -428,6 +675,7 @@ export const TOOL_METADATA = [
428
675
  },
429
676
  {
430
677
  name: 'kanban_heartbeat',
678
+ effect: 'reversible',
431
679
  category: 'planning',
432
680
  keywords: ['kanban', 'hermes', 'heartbeat', 'progress', 'status', 'task', 'agent'],
433
681
  priority: 8,
@@ -435,6 +683,7 @@ export const TOOL_METADATA = [
435
683
  },
436
684
  {
437
685
  name: 'kanban_comment',
686
+ effect: 'reversible',
438
687
  category: 'planning',
439
688
  keywords: ['kanban', 'hermes', 'comment', 'note', 'task', 'board', 'coordination'],
440
689
  priority: 8,
@@ -442,6 +691,7 @@ export const TOOL_METADATA = [
442
691
  },
443
692
  {
444
693
  name: 'kanban_create',
694
+ effect: 'reversible',
445
695
  category: 'planning',
446
696
  keywords: ['kanban', 'hermes', 'create', 'card', 'task', 'board', 'coordination'],
447
697
  priority: 8,
@@ -449,6 +699,7 @@ export const TOOL_METADATA = [
449
699
  },
450
700
  {
451
701
  name: 'kanban_link',
702
+ effect: 'reversible',
452
703
  category: 'planning',
453
704
  keywords: ['kanban', 'hermes', 'link', 'artifact', 'url', 'commit', 'issue', 'task'],
454
705
  priority: 8,
@@ -456,6 +707,7 @@ export const TOOL_METADATA = [
456
707
  },
457
708
  {
458
709
  name: 'kanban_unblock',
710
+ effect: 'reversible',
459
711
  category: 'planning',
460
712
  keywords: ['kanban', 'hermes', 'unblock', 'resume', 'progress', 'task', 'board'],
461
713
  priority: 8,
@@ -463,6 +715,7 @@ export const TOOL_METADATA = [
463
715
  },
464
716
  {
465
717
  name: 'send_message',
718
+ effect: 'emission',
466
719
  category: 'web',
467
720
  keywords: ['send', 'message', 'channel', 'gateway', 'telegram', 'discord', 'slack', 'email', 'hermes'],
468
721
  priority: 8,
@@ -470,6 +723,7 @@ export const TOOL_METADATA = [
470
723
  },
471
724
  {
472
725
  name: 'discord',
726
+ effect: 'emission',
473
727
  category: 'web',
474
728
  keywords: ['discord', 'server', 'guild', 'channel', 'messages', 'members', 'thread', 'hermes'],
475
729
  priority: 8,
@@ -477,6 +731,7 @@ export const TOOL_METADATA = [
477
731
  },
478
732
  {
479
733
  name: 'discord_admin',
734
+ effect: 'emission',
480
735
  category: 'web',
481
736
  keywords: ['discord', 'admin', 'server', 'guild', 'channels', 'roles', 'pins', 'moderation', 'hermes'],
482
737
  priority: 8,
@@ -484,6 +739,7 @@ export const TOOL_METADATA = [
484
739
  },
485
740
  {
486
741
  name: 'yb_query_group_info',
742
+ effect: 'emission',
487
743
  category: 'web',
488
744
  keywords: ['yuanbao', 'yb', 'group', 'pai', 'owner', 'member count', 'hermes'],
489
745
  priority: 8,
@@ -491,6 +747,7 @@ export const TOOL_METADATA = [
491
747
  },
492
748
  {
493
749
  name: 'yb_query_group_members',
750
+ effect: 'emission',
494
751
  category: 'web',
495
752
  keywords: ['yuanbao', 'yb', 'group', 'members', 'mention', 'bots', 'pai', 'hermes'],
496
753
  priority: 8,
@@ -498,6 +755,7 @@ export const TOOL_METADATA = [
498
755
  },
499
756
  {
500
757
  name: 'yb_send_dm',
758
+ effect: 'emission',
501
759
  category: 'web',
502
760
  keywords: ['yuanbao', 'yb', 'dm', 'direct message', 'private message', 'media', 'hermes'],
503
761
  priority: 8,
@@ -505,6 +763,7 @@ export const TOOL_METADATA = [
505
763
  },
506
764
  {
507
765
  name: 'yb_search_sticker',
766
+ effect: 'emission',
508
767
  category: 'web',
509
768
  keywords: ['yuanbao', 'yb', 'sticker', 'search', 'tim face', 'emoji', 'hermes'],
510
769
  priority: 8,
@@ -512,6 +771,7 @@ export const TOOL_METADATA = [
512
771
  },
513
772
  {
514
773
  name: 'yb_send_sticker',
774
+ effect: 'emission',
515
775
  category: 'web',
516
776
  keywords: ['yuanbao', 'yb', 'sticker', 'send', 'chat', 'tim face', 'hermes'],
517
777
  priority: 8,
@@ -519,6 +779,7 @@ export const TOOL_METADATA = [
519
779
  },
520
780
  {
521
781
  name: 'ha_list_entities',
782
+ effect: 'emission',
522
783
  category: 'web',
523
784
  keywords: ['homeassistant', 'home assistant', 'hass', 'entity', 'entities', 'smart home', 'hermes'],
524
785
  priority: 8,
@@ -526,6 +787,7 @@ export const TOOL_METADATA = [
526
787
  },
527
788
  {
528
789
  name: 'ha_get_state',
790
+ effect: 'emission',
529
791
  category: 'web',
530
792
  keywords: ['homeassistant', 'home assistant', 'hass', 'state', 'entity', 'smart home', 'hermes'],
531
793
  priority: 8,
@@ -533,6 +795,7 @@ export const TOOL_METADATA = [
533
795
  },
534
796
  {
535
797
  name: 'ha_list_services',
798
+ effect: 'emission',
536
799
  category: 'web',
537
800
  keywords: ['homeassistant', 'home assistant', 'hass', 'services', 'actions', 'smart home', 'hermes'],
538
801
  priority: 8,
@@ -540,6 +803,7 @@ export const TOOL_METADATA = [
540
803
  },
541
804
  {
542
805
  name: 'ha_call_service',
806
+ effect: 'emission',
543
807
  category: 'web',
544
808
  keywords: ['homeassistant', 'home assistant', 'hass', 'service', 'control', 'device', 'smart home', 'hermes'],
545
809
  priority: 8,
@@ -547,6 +811,7 @@ export const TOOL_METADATA = [
547
811
  },
548
812
  {
549
813
  name: 'mixture_of_agents',
814
+ effect: 'emission',
550
815
  category: 'utility',
551
816
  keywords: ['mixture of agents', 'moa', 'openrouter', 'frontier', 'aggregation', 'reasoning', 'hermes'],
552
817
  priority: 8,
@@ -554,6 +819,7 @@ export const TOOL_METADATA = [
554
819
  },
555
820
  {
556
821
  name: 'spotify_playback',
822
+ effect: 'emission',
557
823
  category: 'web',
558
824
  keywords: ['spotify', 'music', 'playback', 'player', 'pause', 'skip', 'volume', 'recently played', 'hermes'],
559
825
  priority: 8,
@@ -561,6 +827,7 @@ export const TOOL_METADATA = [
561
827
  },
562
828
  {
563
829
  name: 'spotify_devices',
830
+ effect: 'emission',
564
831
  category: 'web',
565
832
  keywords: ['spotify', 'device', 'devices', 'connect', 'transfer playback', 'speaker', 'hermes'],
566
833
  priority: 8,
@@ -568,6 +835,7 @@ export const TOOL_METADATA = [
568
835
  },
569
836
  {
570
837
  name: 'spotify_queue',
838
+ effect: 'emission',
571
839
  category: 'web',
572
840
  keywords: ['spotify', 'queue', 'music', 'add to queue', 'play next', 'hermes'],
573
841
  priority: 8,
@@ -575,6 +843,7 @@ export const TOOL_METADATA = [
575
843
  },
576
844
  {
577
845
  name: 'spotify_search',
846
+ effect: 'emission',
578
847
  category: 'web',
579
848
  keywords: ['spotify', 'search', 'music', 'track', 'album', 'artist', 'playlist', 'hermes'],
580
849
  priority: 8,
@@ -582,6 +851,7 @@ export const TOOL_METADATA = [
582
851
  },
583
852
  {
584
853
  name: 'spotify_playlists',
854
+ effect: 'emission',
585
855
  category: 'web',
586
856
  keywords: ['spotify', 'playlist', 'playlists', 'create playlist', 'add items', 'remove items', 'hermes'],
587
857
  priority: 8,
@@ -589,6 +859,7 @@ export const TOOL_METADATA = [
589
859
  },
590
860
  {
591
861
  name: 'spotify_albums',
862
+ effect: 'emission',
592
863
  category: 'web',
593
864
  keywords: ['spotify', 'album', 'albums', 'tracks', 'music', 'hermes'],
594
865
  priority: 8,
@@ -596,6 +867,7 @@ export const TOOL_METADATA = [
596
867
  },
597
868
  {
598
869
  name: 'spotify_library',
870
+ effect: 'emission',
599
871
  category: 'web',
600
872
  keywords: ['spotify', 'library', 'saved tracks', 'saved albums', 'save music', 'remove saved', 'hermes'],
601
873
  priority: 8,
@@ -603,6 +875,7 @@ export const TOOL_METADATA = [
603
875
  },
604
876
  {
605
877
  name: 'x_search',
878
+ effect: 'emission',
606
879
  category: 'web',
607
880
  keywords: ['x', 'twitter', 'xai', 'grok', 'posts', 'threads', 'citations', 'current discussion', 'hermes'],
608
881
  priority: 8,
@@ -610,6 +883,7 @@ export const TOOL_METADATA = [
610
883
  },
611
884
  {
612
885
  name: 'feishu_doc_read',
886
+ effect: 'emission',
613
887
  category: 'web',
614
888
  keywords: ['feishu', 'lark', 'document', 'docx', 'read', 'raw content', 'hermes'],
615
889
  priority: 8,
@@ -617,6 +891,7 @@ export const TOOL_METADATA = [
617
891
  },
618
892
  {
619
893
  name: 'feishu_drive_list_comments',
894
+ effect: 'emission',
620
895
  category: 'web',
621
896
  keywords: ['feishu', 'lark', 'drive', 'comments', 'list', 'document', 'hermes'],
622
897
  priority: 8,
@@ -624,6 +899,7 @@ export const TOOL_METADATA = [
624
899
  },
625
900
  {
626
901
  name: 'feishu_drive_list_comment_replies',
902
+ effect: 'emission',
627
903
  category: 'web',
628
904
  keywords: ['feishu', 'lark', 'drive', 'comments', 'replies', 'thread', 'hermes'],
629
905
  priority: 8,
@@ -631,6 +907,7 @@ export const TOOL_METADATA = [
631
907
  },
632
908
  {
633
909
  name: 'feishu_drive_reply_comment',
910
+ effect: 'emission',
634
911
  category: 'web',
635
912
  keywords: ['feishu', 'lark', 'drive', 'comment', 'reply', 'document', 'hermes'],
636
913
  priority: 8,
@@ -638,6 +915,7 @@ export const TOOL_METADATA = [
638
915
  },
639
916
  {
640
917
  name: 'feishu_drive_add_comment',
918
+ effect: 'emission',
641
919
  category: 'web',
642
920
  keywords: ['feishu', 'lark', 'drive', 'comment', 'add', 'document', 'hermes'],
643
921
  priority: 8,
@@ -645,6 +923,7 @@ export const TOOL_METADATA = [
645
923
  },
646
924
  {
647
925
  name: 'cronjob',
926
+ effect: 'emission',
648
927
  category: 'planning',
649
928
  keywords: ['cron', 'cronjob', 'schedule', 'scheduled', 'job', 'jobs', 'reminder', 'monitor', 'heartbeat', 'watchdog', 'hermes'],
650
929
  priority: 8,
@@ -653,6 +932,7 @@ export const TOOL_METADATA = [
653
932
  // Codebase analysis
654
933
  {
655
934
  name: 'codebase_map',
935
+ effect: 'read',
656
936
  category: 'codebase',
657
937
  keywords: ['codebase', 'structure', 'architecture', 'map', 'overview', 'symbols', 'dependencies', 'analyze', 'graph', 'imports', 'who imports', 'neighbors', 'path', 'layers', 'components', 'modules', 'relationships', 'calls', 'call graph', 'extends', 'inherits', 'methods', 'flowchart', 'organigramme'],
658
938
  priority: 6,
@@ -661,6 +941,7 @@ export const TOOL_METADATA = [
661
941
  },
662
942
  {
663
943
  name: 'code_graph',
944
+ effect: 'read',
664
945
  category: 'codebase',
665
946
  keywords: ['code graph', 'call graph', 'who calls', 'what calls', 'callers', 'callees', 'impact analysis', 'what breaks', 'affected', 'flowchart', 'mermaid', 'diagram', 'organigramme', 'class hierarchy', 'inheritance', 'extends', 'implements', 'file functions', 'methods', 'signatures', 'dependency path', 'module dependencies', 'communities', 'clusters', 'subsystems', 'semantic search', 'embedding', 'similarity', 'pagerank', 'dead code', 'unused', 'uncalled', 'orphan', 'coupling', 'heatmap', 'refactoring', 'god function', 'hub module', 'drift', 'snapshot', 'evolution', 'visualize', 'interactive', 'd3', 'impact preview', 'pr impact', 'diff impact'],
666
947
  priority: 7,
@@ -669,6 +950,7 @@ export const TOOL_METADATA = [
669
950
  },
670
951
  {
671
952
  name: 'spawn_subagent',
953
+ effect: 'emission',
672
954
  category: 'codebase',
673
955
  keywords: ['subagent', 'agent', 'review', 'debug', 'test', 'explore', 'document', 'refactor'],
674
956
  priority: 5,
@@ -677,6 +959,7 @@ export const TOOL_METADATA = [
677
959
  // Media tools
678
960
  {
679
961
  name: 'screenshot',
962
+ effect: 'reversible',
680
963
  category: 'media',
681
964
  keywords: ['screenshot', 'capture', 'screen', 'image', 'snap', 'window'],
682
965
  priority: 5,
@@ -684,6 +967,7 @@ export const TOOL_METADATA = [
684
967
  },
685
968
  {
686
969
  name: 'camera_snapshot',
970
+ effect: 'reversible',
687
971
  category: 'media',
688
972
  keywords: ['camera', 'webcam', 'snapshot', 'photo', 'vision', 'see', 'look', 'companion', 'eyes'],
689
973
  priority: 6,
@@ -691,13 +975,15 @@ export const TOOL_METADATA = [
691
975
  },
692
976
  {
693
977
  name: 'camera_analyze',
978
+ effect: 'read',
694
979
  category: 'media',
695
- keywords: ['camera', 'webcam', 'see', 'vision', 'describe', 'look', 'photo', 'companion', 'eyes', 'analyze', 'what do you see'],
980
+ keywords: ['camera', 'webcam', 'see', 'vision', 'describe', 'look', 'photo', 'companion', 'eyes', 'analyze', 'what do you see', 'image_path'],
696
981
  priority: 7,
697
- description: 'Capture a local webcam frame and describe it with a local multimodal vision model'
982
+ description: 'Describe a still image (image_path) or a webcam frame with a local VLM (default moondream); refuses dark frames'
698
983
  },
699
984
  {
700
985
  name: 'audio',
986
+ effect: 'emission',
701
987
  category: 'media',
702
988
  keywords: ['audio', 'sound', 'music', 'transcribe', 'speech', 'voice', 'mp3', 'wav'],
703
989
  priority: 5,
@@ -705,20 +991,60 @@ export const TOOL_METADATA = [
705
991
  },
706
992
  {
707
993
  name: 'text_to_speech',
994
+ effect: 'emission',
708
995
  category: 'media',
709
996
  keywords: ['tts', 'speech', 'audio', 'voice', 'synthesize', 'hermes'],
710
997
  priority: 7,
711
998
  description: 'Convert text to a local speech audio file'
712
999
  },
1000
+ {
1001
+ name: 'tool_search',
1002
+ effect: 'read',
1003
+ category: 'system',
1004
+ keywords: ['tool', 'search', 'discover', 'find', 'capability', 'mcp', 'schema'],
1005
+ priority: 9,
1006
+ description: 'Search available tools by keyword (progressive disclosure)',
1007
+ // Index BM25 local, sans écriture ni réseau : une confirmation bloquante
1008
+ // n'ajoute aucune frontière de sécurité et cassait le premier tour Studio.
1009
+ fleetSafe: true,
1010
+ },
713
1011
  {
714
1012
  name: 'image_generate',
1013
+ effect: 'emission',
715
1014
  category: 'media',
716
- keywords: ['image', 'generate', 'picture', 'photo', 'openai', 'xai', 'hermes'],
1015
+ keywords: ['image', 'generate', 'picture', 'photo', 'openai', 'xai', 'hermes', 'gener', 'cree', 'dessin', 'illustration'],
717
1016
  priority: 8,
718
1017
  description: 'Generate an image through the configured image backend and cache returned media when possible'
719
1018
  },
1019
+ {
1020
+ name: 'lisa_selfie',
1021
+ effect: 'emission',
1022
+ category: 'media',
1023
+ keywords: [
1024
+ 'lisa',
1025
+ 'selfie',
1026
+ 'photo',
1027
+ 'portrait',
1028
+ 'telegram',
1029
+ 'companion',
1030
+ 'lora',
1031
+ 'photo de toi',
1032
+ 'envoie photo',
1033
+ ],
1034
+ priority: 9,
1035
+ description: 'Generate a portrait of Lisa (LoRA when installed) and optionally send it on Telegram',
1036
+ },
1037
+ {
1038
+ name: 'image_edit',
1039
+ effect: 'emission',
1040
+ category: 'media',
1041
+ keywords: ['image', 'edit', 'inpaint', 'mask', 'mark', 'design', 'retouch', 'modifier', 'zone'],
1042
+ priority: 8,
1043
+ description: 'Create a new edited image from a confirmed workspace source and optional PNG alpha mask'
1044
+ },
720
1045
  {
721
1046
  name: 'video',
1047
+ effect: 'emission',
722
1048
  category: 'media',
723
1049
  keywords: ['video', 'movie', 'frames', 'thumbnail', 'mp4', 'extract'],
724
1050
  priority: 5,
@@ -726,6 +1052,7 @@ export const TOOL_METADATA = [
726
1052
  },
727
1053
  {
728
1054
  name: 'video_analyze',
1055
+ effect: 'read',
729
1056
  category: 'media',
730
1057
  keywords: ['video', 'analyze', 'vision', 'movie', 'mp4', 'gemini', 'openai', 'hermes'],
731
1058
  priority: 8,
@@ -733,13 +1060,102 @@ export const TOOL_METADATA = [
733
1060
  },
734
1061
  {
735
1062
  name: 'video_generate',
1063
+ effect: 'emission',
736
1064
  category: 'media',
737
- keywords: ['video', 'generate', 'text-to-video', 'image-to-video', 'xai', 'fal', 'hermes'],
1065
+ keywords: ['video', 'generate', 'text-to-video', 'image-to-video', 'xai', 'fal', 'hermes', 'gener', 'cree', 'clip', 'film', 'animation'],
738
1066
  priority: 8,
739
1067
  description: 'Generate a video through the configured video backend and cache returned media when possible'
740
1068
  },
1069
+ {
1070
+ name: 'markdown_convert',
1071
+ effect: 'reversible',
1072
+ category: 'document',
1073
+ keywords: ['markdown', 'convert', 'convertir', 'pdf', 'docx', 'xlsx', 'pptx', 'word', 'excel', 'powerpoint', 'html', 'csv', 'json', 'xml', 'zip', 'epub', 'ocr', 'transcription', 'table', 'tableau', 'structure', 'extract', 'extraire', 'lire', 'document', 'markitdown'],
1074
+ priority: 8,
1075
+ description: 'Convert any document (Office, PDF, HTML, CSV, ZIP, EPub, image, audio, URL) to structured Markdown for the model — preserves headings, lists and tables. Optional MarkItDown sidecar; falls back cleanly with install instructions when absent'
1076
+ },
1077
+ {
1078
+ name: 'video_stitch',
1079
+ effect: 'emission',
1080
+ category: 'media',
1081
+ keywords: ['video', 'stitch', 'montage', 'film', 'concatenate', 'concat', 'chain', 'transition', 'xfade', 'crossfade', 'enchainer', 'assembler', 'monter', 'clip', 'produire', 'production', 'long', 'music', 'voiceover'],
1082
+ priority: 8,
1083
+ description: 'Chain multiple local video clips into one longer film with transitions (xfade/gl), optional background music (ducked) and voiceover, via ffmpeg; saved under .codebuddy/media-generation/films/'
1084
+ },
1085
+ {
1086
+ name: 'video_quality_gate',
1087
+ effect: 'emission',
1088
+ category: 'media',
1089
+ keywords: [
1090
+ 'video', 'quality', 'gate', 'youtube', 'master', 'visual', 'identity', 'anatomy',
1091
+ 'fashion', 'review', 'qa', 'qualité', 'contrôle', 'gate visuel', 'flicker',
1092
+ ],
1093
+ priority: 8,
1094
+ description: 'Fail-closed visual quality gate plus digest-bound YouTube master human review; never publishes',
1095
+ },
1096
+ {
1097
+ name: 'video_long_form_plan',
1098
+ effect: 'read',
1099
+ category: 'media',
1100
+ keywords: [
1101
+ 'video', 'long-form', 'long form', 'episode', 'plan', 'youtube', 'chapters',
1102
+ 'narration', 'ad break', 'mid-roll', 'épisode', 'plan long', 'compile',
1103
+ ],
1104
+ priority: 8,
1105
+ description: 'Assess or compile an original long-form episode plan; never writes files or auto-publishes',
1106
+ },
1107
+ {
1108
+ name: 'video_trailer_plan',
1109
+ effect: 'read',
1110
+ category: 'media',
1111
+ keywords: [
1112
+ 'video', 'trailer', 'bande-annonce', 'cinematic', 'storyboard', 'book',
1113
+ 'preview', 'plan', 'narrative', 'hook', 'cta',
1114
+ ],
1115
+ priority: 8,
1116
+ description: 'Validate a cinematic book-trailer plan or compile a preview routing estimate; never generates media',
1117
+ },
1118
+ {
1119
+ name: 'video_flow_handoff',
1120
+ effect: 'emission',
1121
+ category: 'media',
1122
+ keywords: [
1123
+ 'video', 'flow', 'google flow', 'veo', 'handoff', 'export', 'import',
1124
+ 'credits', 'browser', 'packet', 'transfert', 'veo3',
1125
+ ],
1126
+ priority: 8,
1127
+ description: 'Build, verify, export or human-review Google Flow work packets; never bills via API, never publishes',
1128
+ },
1129
+ {
1130
+ name: 'video_route',
1131
+ effect: 'read',
1132
+ category: 'media',
1133
+ keywords: [
1134
+ 'video', 'route', 'router', 'hybrid', 'flow', 'veo', 'comfyui', 'longcat',
1135
+ 'gpuNode', 'localGpu', 'credits', 'engine', 'routage', 'moteur',
1136
+ ],
1137
+ priority: 8,
1138
+ description: 'Route hybrid video requests to local engines or browser-assisted Google Flow; estimates credits, never spends',
1139
+ },
1140
+ {
1141
+ name: 'understand_video',
1142
+ effect: 'read',
1143
+ category: 'media',
1144
+ keywords: ['video', 'youtube', 'transcribe', 'transcript', 'captions', 'subtitles', 'vidéo', 'résume vidéo', 'summarize', 'watch', 'movie', 'mp4', 'visual', 'screencast', 'frames', 'on-screen', 'shown', 'cloud', 'gemini', 'research', 'experiment', 'backlog', 'innovation'],
1145
+ priority: 8,
1146
+ description: 'Understand a video: transcript + research card + unverified experiment backlog + optional local visual or opt-in Gemini analysis'
1147
+ },
1148
+ {
1149
+ name: 'gpu_media_job',
1150
+ effect: 'emission',
1151
+ category: 'media',
1152
+ keywords: ['gpuNode', 'gpu', 'panoworld', 'longcat', 'avatar', '3dgs', 'world model', 'reconstruction', 'render'],
1153
+ priority: 8,
1154
+ description: 'Submit and monitor isolated PanoWorld or LongCat jobs on a configured GPU worker'
1155
+ },
741
1156
  {
742
1157
  name: 'ocr',
1158
+ effect: 'read',
743
1159
  category: 'media',
744
1160
  keywords: ['ocr', 'text', 'extract', 'image', 'recognize', 'read'],
745
1161
  priority: 5,
@@ -747,13 +1163,23 @@ export const TOOL_METADATA = [
747
1163
  },
748
1164
  {
749
1165
  name: 'vision_analyze',
1166
+ effect: 'read',
750
1167
  category: 'media',
751
1168
  keywords: ['vision', 'image', 'analyze', 'metadata', 'ocr', 'hermes'],
752
1169
  priority: 8,
753
1170
  description: 'Analyze a local image with metadata, colors, labels, and optional OCR evidence',
754
1171
  },
1172
+ {
1173
+ name: 'object_detect',
1174
+ effect: 'read',
1175
+ category: 'media',
1176
+ keywords: ['vision', 'image', 'object', 'detect', 'detection', 'yolo', 'yolov8', 'ultralytics', 'person', 'people', 'presence', 'camera'],
1177
+ priority: 8,
1178
+ description: 'Detect objects in a local image using local YOLOv8/Ultralytics inference',
1179
+ },
755
1180
  {
756
1181
  name: 'clipboard',
1182
+ effect: 'emission',
757
1183
  category: 'media',
758
1184
  keywords: ['clipboard', 'copy', 'paste', 'cut'],
759
1185
  priority: 4,
@@ -762,6 +1188,7 @@ export const TOOL_METADATA = [
762
1188
  // Document tools
763
1189
  {
764
1190
  name: 'pdf',
1191
+ effect: 'reversible',
765
1192
  category: 'document',
766
1193
  keywords: ['pdf', 'document', 'extract', 'read', 'pages'],
767
1194
  priority: 5,
@@ -769,6 +1196,7 @@ export const TOOL_METADATA = [
769
1196
  },
770
1197
  {
771
1198
  name: 'document',
1199
+ effect: 'reversible',
772
1200
  category: 'document',
773
1201
  keywords: ['docx', 'xlsx', 'pptx', 'word', 'excel', 'powerpoint', 'office', 'spreadsheet', 'embedded images', 'screenshots'],
774
1202
  priority: 5,
@@ -776,6 +1204,7 @@ export const TOOL_METADATA = [
776
1204
  },
777
1205
  {
778
1206
  name: 'archive',
1207
+ effect: 'reversible',
779
1208
  category: 'document',
780
1209
  keywords: ['zip', 'tar', 'archive', 'compress', 'extract', 'unzip', 'rar', '7z'],
781
1210
  priority: 5,
@@ -784,6 +1213,7 @@ export const TOOL_METADATA = [
784
1213
  // Reasoning
785
1214
  {
786
1215
  name: 'reason',
1216
+ effect: 'read',
787
1217
  category: 'codebase',
788
1218
  keywords: ['reason', 'think', 'plan', 'analyze', 'architecture', 'design', 'debug', 'complex', 'trade-off', 'compare', 'evaluate', 'strategy', 'decision', 'mcts', 'tree-of-thought'],
789
1219
  priority: 6,
@@ -793,6 +1223,7 @@ export const TOOL_METADATA = [
793
1223
  // Docs search
794
1224
  {
795
1225
  name: 'docs_search',
1226
+ effect: 'read',
796
1227
  category: 'codebase',
797
1228
  keywords: ['docs', 'documentation', 'architecture', 'subsystem', 'api', 'security', 'config', 'design', 'how does', 'explain', 'overview'],
798
1229
  priority: 5,
@@ -802,6 +1233,7 @@ export const TOOL_METADATA = [
802
1233
  // Plan management
803
1234
  {
804
1235
  name: 'plan',
1236
+ effect: 'reversible',
805
1237
  category: 'planning',
806
1238
  keywords: ['plan', 'goal', 'steps', 'track', 'progress', 'todo', 'organize', 'breakdown', 'checklist', 'PLAN.md'],
807
1239
  priority: 7,
@@ -810,6 +1242,7 @@ export const TOOL_METADATA = [
810
1242
  // Script execution
811
1243
  {
812
1244
  name: 'run_script',
1245
+ effect: 'emission',
813
1246
  category: 'utility',
814
1247
  keywords: ['script', 'python', 'typescript', 'javascript', 'shell', 'execute', 'run', 'sandbox', 'docker', 'compute', 'data'],
815
1248
  priority: 5,
@@ -818,6 +1251,7 @@ export const TOOL_METADATA = [
818
1251
  // Utility tools
819
1252
  {
820
1253
  name: 'diagram',
1254
+ effect: 'emission',
821
1255
  category: 'utility',
822
1256
  keywords: ['diagram', 'flowchart', 'chart', 'mermaid', 'sequence', 'class', 'uml', 'graph', 'visualize'],
823
1257
  priority: 5,
@@ -825,6 +1259,7 @@ export const TOOL_METADATA = [
825
1259
  },
826
1260
  {
827
1261
  name: 'export',
1262
+ effect: 'reversible',
828
1263
  category: 'utility',
829
1264
  keywords: ['export', 'save', 'convert', 'format', 'json', 'markdown', 'html'],
830
1265
  priority: 4,
@@ -832,6 +1267,7 @@ export const TOOL_METADATA = [
832
1267
  },
833
1268
  {
834
1269
  name: 'qr',
1270
+ effect: 'reversible',
835
1271
  category: 'utility',
836
1272
  keywords: ['qr', 'code', 'barcode', 'scan', 'generate'],
837
1273
  priority: 4,
@@ -839,6 +1275,7 @@ export const TOOL_METADATA = [
839
1275
  },
840
1276
  {
841
1277
  name: 'a2ui',
1278
+ effect: 'reversible',
842
1279
  category: 'utility',
843
1280
  keywords: ['a2ui', 'surface', 'component', 'ui', 'interface', 'canvas', 'render'],
844
1281
  priority: 4,
@@ -846,6 +1283,7 @@ export const TOOL_METADATA = [
846
1283
  },
847
1284
  {
848
1285
  name: 'canvas',
1286
+ effect: 'reversible',
849
1287
  category: 'utility',
850
1288
  keywords: ['canvas', 'visual', 'workspace', 'diagram', 'layout', 'element', 'render', 'export', 'import'],
851
1289
  priority: 4,
@@ -853,6 +1291,7 @@ export const TOOL_METADATA = [
853
1291
  },
854
1292
  {
855
1293
  name: 'deploy',
1294
+ effect: 'emission',
856
1295
  category: 'utility',
857
1296
  keywords: ['deploy', 'cloud', 'fly', 'railway', 'render', 'gcp', 'hosting', 'production', 'hetzner', 'northflank'],
858
1297
  priority: 6,
@@ -861,6 +1300,7 @@ export const TOOL_METADATA = [
861
1300
  // Agent Tools — attention, knowledge, lessons, discovery, device, verification
862
1301
  {
863
1302
  name: 'todo_update',
1303
+ effect: 'reversible',
864
1304
  category: 'planning',
865
1305
  keywords: ['todo', 'task', 'plan', 'track', 'progress', 'attention', 'focus'],
866
1306
  priority: 8,
@@ -868,14 +1308,23 @@ export const TOOL_METADATA = [
868
1308
  },
869
1309
  {
870
1310
  name: 'restore_context',
1311
+ effect: 'read',
871
1312
  category: 'utility',
872
- keywords: ['restore', 'context', 'memory', 'compressed', 'retrieve', 'earlier'],
1313
+ keywords: ['restore', 'context', 'memory', 'compressed', 'retrieve', 'earlier', 'callId', 'raw', 'exact', 'workspace', 'session'],
873
1314
  priority: 7,
874
- description: 'Restore compressed context content by identifier',
875
- fleetSafe: true,
1315
+ description: 'Restore exact content previously captured in the active workspace and session by callId or scoped identifier',
1316
+ },
1317
+ {
1318
+ name: 'context_expand',
1319
+ effect: 'read',
1320
+ category: 'utility',
1321
+ keywords: ['context', 'expand', 'segment', 'summary', 'exact', 'archive', 'conversation'],
1322
+ priority: 8,
1323
+ description: 'Expand exact original messages for a compacted segment in the current session',
876
1324
  },
877
1325
  {
878
1326
  name: 'knowledge_search',
1327
+ effect: 'read',
879
1328
  category: 'utility',
880
1329
  keywords: ['knowledge', 'search', 'convention', 'docs', 'domain', 'procedure'],
881
1330
  priority: 5,
@@ -884,6 +1333,7 @@ export const TOOL_METADATA = [
884
1333
  },
885
1334
  {
886
1335
  name: 'knowledge_add',
1336
+ effect: 'reversible',
887
1337
  category: 'utility',
888
1338
  keywords: ['knowledge', 'add', 'save', 'persist', 'remember', 'convention'],
889
1339
  priority: 4,
@@ -891,6 +1341,7 @@ export const TOOL_METADATA = [
891
1341
  },
892
1342
  {
893
1343
  name: 'ask_human',
1344
+ effect: 'read',
894
1345
  category: 'utility',
895
1346
  keywords: ['ask', 'human', 'clarify', 'question', 'input', 'pause', 'confirm'],
896
1347
  priority: 6,
@@ -898,13 +1349,23 @@ export const TOOL_METADATA = [
898
1349
  },
899
1350
  {
900
1351
  name: 'create_skill',
1352
+ effect: 'reversible',
901
1353
  category: 'utility',
902
1354
  keywords: ['skill', 'create', 'workflow', 'reusable', 'procedure', 'automate'],
903
1355
  priority: 3,
904
1356
  description: 'Create a new SKILL.md workflow'
905
1357
  },
1358
+ {
1359
+ name: 'extension_forge',
1360
+ effect: 'reversible',
1361
+ category: 'system',
1362
+ keywords: ['extension', 'forge', 'create', 'widget', 'tool', 'skill', 'self-extension', 'code'],
1363
+ priority: 9,
1364
+ description: 'Safely author and install a runtime widget, tool, or skill'
1365
+ },
906
1366
  {
907
1367
  name: 'skill_discover',
1368
+ effect: 'emission',
908
1369
  category: 'utility',
909
1370
  keywords: ['skill', 'discover', 'search', 'hub', 'install', 'capability', 'plugin'],
910
1371
  priority: 3,
@@ -912,6 +1373,7 @@ export const TOOL_METADATA = [
912
1373
  },
913
1374
  {
914
1375
  name: 'skills_list',
1376
+ effect: 'read',
915
1377
  category: 'utility',
916
1378
  keywords: ['skill', 'skills', 'list', 'installed', 'enabled', 'disabled', 'hub', 'hermes'],
917
1379
  priority: 5,
@@ -920,6 +1382,7 @@ export const TOOL_METADATA = [
920
1382
  },
921
1383
  {
922
1384
  name: 'skill_view',
1385
+ effect: 'read',
923
1386
  category: 'utility',
924
1387
  keywords: ['skill', 'skills', 'view', 'read', 'content', 'inspect', 'show', 'hub', 'hermes'],
925
1388
  priority: 6,
@@ -928,6 +1391,7 @@ export const TOOL_METADATA = [
928
1391
  },
929
1392
  {
930
1393
  name: 'skill_manage',
1394
+ effect: 'reversible',
931
1395
  category: 'utility',
932
1396
  keywords: ['skill', 'skills', 'manage', 'list', 'view', 'history', 'create', 'discover', 'candidate', 'review', 'install', 'enable', 'disable', 'deprecate', 'delete', 'patch', 'rollback', 'update', 'lifecycle', 'hub', 'hermes'],
933
1397
  priority: 6,
@@ -935,13 +1399,15 @@ export const TOOL_METADATA = [
935
1399
  },
936
1400
  {
937
1401
  name: 'device_manage',
1402
+ effect: 'emission',
938
1403
  category: 'utility',
939
- keywords: ['device', 'ssh', 'adb', 'android', 'remote', 'screenshot', 'camera', 'pair'],
1404
+ keywords: ['device', 'ssh', 'adb', 'android', 'remote', 'screenshot', 'camera', 'pair', 'calendar', 'agenda'],
940
1405
  priority: 4,
941
- description: 'Manage paired devices (SSH/ADB/local)'
1406
+ description: 'Manage paired devices (SSH/ADB/local), including read-only calendar events'
942
1407
  },
943
1408
  {
944
1409
  name: 'spawn_parallel_agents',
1410
+ effect: 'emission',
945
1411
  category: 'codebase',
946
1412
  keywords: ['parallel', 'agents', 'concurrent', 'subtasks', 'batch', 'delegate'],
947
1413
  priority: 5,
@@ -949,6 +1415,7 @@ export const TOOL_METADATA = [
949
1415
  },
950
1416
  {
951
1417
  name: 'remember',
1418
+ effect: 'reversible',
952
1419
  category: 'utility',
953
1420
  keywords: ['memory', 'remember', 'persist', 'context', 'store', 'preference'],
954
1421
  priority: 5,
@@ -956,13 +1423,27 @@ export const TOOL_METADATA = [
956
1423
  },
957
1424
  {
958
1425
  name: 'replace_memory',
1426
+ effect: 'reversible',
959
1427
  category: 'utility',
960
1428
  keywords: ['memory', 'replace', 'rewrite', 'update', 'persist', 'preference'],
961
1429
  priority: 5,
962
1430
  description: 'Replace an existing persistent memory entry under the memory char budget'
963
1431
  },
1432
+ {
1433
+ name: 'remind',
1434
+ effect: 'reversible',
1435
+ category: 'utility',
1436
+ keywords: [
1437
+ 'remind', 'reminder', 'rappel', 'rappelle-moi', 'rappelle moi', 'remind me',
1438
+ 'alarm', 'alarme', 'notify me', 'préviens-moi', 'previens moi', 'schedule',
1439
+ 'todo', 'tâche', 'one-shot', 'dated',
1440
+ ],
1441
+ priority: 6,
1442
+ description: 'Set a dated one-shot or daily recurring reminder without shelling buddy remind add',
1443
+ },
964
1444
  {
965
1445
  name: 'memory_propose',
1446
+ effect: 'reversible',
966
1447
  category: 'utility',
967
1448
  keywords: ['memory', 'candidate', 'propose', 'review', 'long-term', 'persist'],
968
1449
  priority: 5,
@@ -970,6 +1451,7 @@ export const TOOL_METADATA = [
970
1451
  },
971
1452
  {
972
1453
  name: 'recall',
1454
+ effect: 'read',
973
1455
  category: 'utility',
974
1456
  keywords: ['memory', 'recall', 'retrieve', 'lookup', 'context'],
975
1457
  priority: 5,
@@ -978,6 +1460,7 @@ export const TOOL_METADATA = [
978
1460
  },
979
1461
  {
980
1462
  name: 'forget',
1463
+ effect: 'reversible',
981
1464
  category: 'utility',
982
1465
  keywords: ['memory', 'forget', 'remove', 'delete', 'cleanup'],
983
1466
  priority: 4,
@@ -985,6 +1468,7 @@ export const TOOL_METADATA = [
985
1468
  },
986
1469
  {
987
1470
  name: 'relationship_context',
1471
+ effect: 'read',
988
1472
  category: 'utility',
989
1473
  keywords: [
990
1474
  'relationship',
@@ -1006,6 +1490,7 @@ export const TOOL_METADATA = [
1006
1490
  },
1007
1491
  {
1008
1492
  name: 'lessons_add',
1493
+ effect: 'reversible',
1009
1494
  category: 'utility',
1010
1495
  keywords: ['lesson', 'learn', 'correction', 'pattern', 'rule', 'mistake'],
1011
1496
  priority: 5,
@@ -1013,6 +1498,7 @@ export const TOOL_METADATA = [
1013
1498
  },
1014
1499
  {
1015
1500
  name: 'lessons_propose',
1501
+ effect: 'reversible',
1016
1502
  category: 'utility',
1017
1503
  keywords: ['lesson', 'propose', 'candidate', 'review', 'learn', 'self improvement', 'pattern'],
1018
1504
  priority: 5,
@@ -1020,6 +1506,7 @@ export const TOOL_METADATA = [
1020
1506
  },
1021
1507
  {
1022
1508
  name: 'lessons_search',
1509
+ effect: 'read',
1023
1510
  category: 'utility',
1024
1511
  keywords: ['lesson', 'search', 'pattern', 'rule', 'past', 'history', 'mistake'],
1025
1512
  priority: 5,
@@ -1028,6 +1515,7 @@ export const TOOL_METADATA = [
1028
1515
  },
1029
1516
  {
1030
1517
  name: 'lessons_list',
1518
+ effect: 'read',
1031
1519
  category: 'utility',
1032
1520
  keywords: ['lesson', 'list', 'all', 'show', 'history'],
1033
1521
  priority: 4,
@@ -1036,6 +1524,7 @@ export const TOOL_METADATA = [
1036
1524
  },
1037
1525
  {
1038
1526
  name: 'lessons_graph',
1527
+ effect: 'read',
1039
1528
  category: 'utility',
1040
1529
  keywords: ['lesson', 'graph', 'obsidian', 'wiki', 'related', 'concepts', 'links', 'notions'],
1041
1530
  priority: 5,
@@ -1044,6 +1533,7 @@ export const TOOL_METADATA = [
1044
1533
  },
1045
1534
  {
1046
1535
  name: 'user_model_observe',
1536
+ effect: 'reversible',
1047
1537
  category: 'utility',
1048
1538
  keywords: ['user', 'model', 'preference', 'observe', 'profile', 'personalization', 'working style', 'trait'],
1049
1539
  priority: 4,
@@ -1051,6 +1541,7 @@ export const TOOL_METADATA = [
1051
1541
  },
1052
1542
  {
1053
1543
  name: 'user_model_recall',
1544
+ effect: 'read',
1054
1545
  category: 'utility',
1055
1546
  keywords: ['user', 'model', 'preference', 'recall', 'profile', 'personalization', 'who'],
1056
1547
  priority: 4,
@@ -1059,6 +1550,7 @@ export const TOOL_METADATA = [
1059
1550
  },
1060
1551
  {
1061
1552
  name: 'task_verify',
1553
+ effect: 'emission',
1062
1554
  category: 'utility',
1063
1555
  keywords: ['verify', 'test', 'typecheck', 'lint', 'check', 'validate', 'ci'],
1064
1556
  priority: 7,
@@ -1066,15 +1558,63 @@ export const TOOL_METADATA = [
1066
1558
  },
1067
1559
  {
1068
1560
  name: 'knowledge_graph',
1561
+ effect: 'reversible',
1069
1562
  category: 'codebase',
1070
1563
  keywords: ['knowledge', 'graph', 'relationships', 'imports', 'calls', 'extends', 'dependencies', 'code', 'architecture'],
1071
1564
  priority: 6,
1072
1565
  description: 'Query code entity relationships and dependencies',
1073
1566
  fleetSafe: true,
1074
1567
  },
1568
+ // LSP semantic navigation and diagnostics (read-only)
1569
+ {
1570
+ name: 'lsp_definition',
1571
+ effect: 'read',
1572
+ category: 'codebase',
1573
+ keywords: ['lsp', 'definition', 'declaration', 'go to definition', 'semantic navigation', 'symbol', 'type'],
1574
+ priority: 9,
1575
+ description: 'Resolve a semantic symbol definition through the configured language server',
1576
+ fleetSafe: true,
1577
+ },
1578
+ {
1579
+ name: 'lsp_references',
1580
+ effect: 'read',
1581
+ category: 'codebase',
1582
+ keywords: ['lsp', 'references', 'usages', 'callers', 'where used', 'semantic navigation', 'symbol'],
1583
+ priority: 9,
1584
+ description: 'Find semantic symbol references through the configured language server',
1585
+ fleetSafe: true,
1586
+ },
1587
+ {
1588
+ name: 'lsp_hover',
1589
+ effect: 'read',
1590
+ category: 'codebase',
1591
+ keywords: ['lsp', 'hover', 'type', 'signature', 'documentation', 'semantic information', 'symbol'],
1592
+ priority: 9,
1593
+ description: 'Get semantic hover and type information from the configured language server',
1594
+ fleetSafe: true,
1595
+ },
1596
+ {
1597
+ name: 'lsp_symbols',
1598
+ effect: 'read',
1599
+ category: 'codebase',
1600
+ keywords: ['lsp', 'symbols', 'outline', 'classes', 'functions', 'methods', 'document structure', 'semantic navigation'],
1601
+ priority: 9,
1602
+ description: 'Get a semantic document outline from the configured language server',
1603
+ fleetSafe: true,
1604
+ },
1605
+ {
1606
+ name: 'lsp_diagnostics',
1607
+ effect: 'read',
1608
+ category: 'codebase',
1609
+ keywords: ['lsp', 'diagnostics', 'errors', 'warnings', 'typecheck', 'lint', 'semantic analysis'],
1610
+ priority: 9,
1611
+ description: 'Get diagnostics published by the configured language server',
1612
+ fleetSafe: true,
1613
+ },
1075
1614
  // LSP rename/refactor
1076
1615
  {
1077
1616
  name: 'lsp_rename',
1617
+ effect: 'reversible',
1078
1618
  category: 'codebase',
1079
1619
  keywords: ['rename', 'refactor', 'symbol', 'lsp', 'language server', 'cross-file', 'identifier'],
1080
1620
  priority: 7,
@@ -1082,6 +1622,7 @@ export const TOOL_METADATA = [
1082
1622
  },
1083
1623
  {
1084
1624
  name: 'lsp_code_action',
1625
+ effect: 'reversible',
1085
1626
  category: 'codebase',
1086
1627
  keywords: ['code action', 'quickfix', 'refactor', 'lsp', 'language server', 'suggestion'],
1087
1628
  priority: 6,
@@ -1090,6 +1631,7 @@ export const TOOL_METADATA = [
1090
1631
  // Bug finder (static analysis)
1091
1632
  {
1092
1633
  name: 'find_bugs',
1634
+ effect: 'read',
1093
1635
  category: 'codebase',
1094
1636
  keywords: ['bug', 'find', 'scan', 'analysis', 'static', 'security', 'lint', 'check', 'vulnerability', 'error', 'leak', 'dead code', 'race condition', 'null', 'injection'],
1095
1637
  priority: 7,
@@ -1099,6 +1641,7 @@ export const TOOL_METADATA = [
1099
1641
  // Merge conflict resolution
1100
1642
  {
1101
1643
  name: 'resolve_conflicts',
1644
+ effect: 'reversible',
1102
1645
  category: 'git',
1103
1646
  keywords: ['merge', 'conflict', 'resolve', 'git', 'ours', 'theirs', 'rebase', 'cherry-pick', 'markers'],
1104
1647
  priority: 7,
@@ -1107,6 +1650,7 @@ export const TOOL_METADATA = [
1107
1650
  // Vulnerability scanning
1108
1651
  {
1109
1652
  name: 'scan_vulnerabilities',
1653
+ effect: 'emission',
1110
1654
  category: 'system',
1111
1655
  keywords: ['vulnerability', 'security', 'audit', 'dependency', 'npm', 'pip', 'cargo', 'cve', 'scan', 'advisory'],
1112
1656
  priority: 7,
@@ -1115,6 +1659,7 @@ export const TOOL_METADATA = [
1115
1659
  // Control
1116
1660
  {
1117
1661
  name: 'terminate',
1662
+ effect: 'emission',
1118
1663
  category: 'control',
1119
1664
  keywords: ['terminate', 'finish', 'done', 'complete', 'end', 'stop', 'exit', 'signal'],
1120
1665
  priority: 5,
@@ -1124,6 +1669,7 @@ export const TOOL_METADATA = [
1124
1669
  // Secrets detection
1125
1670
  {
1126
1671
  name: 'scan_secrets',
1672
+ effect: 'read',
1127
1673
  category: 'security',
1128
1674
  keywords: ['secrets', 'credentials', 'api key', 'token', 'password', 'leak', 'scan', 'security', 'hardcoded', 'detect', 'aws', 'github', 'stripe', 'jwt'],
1129
1675
  priority: 7,
@@ -1132,14 +1678,45 @@ export const TOOL_METADATA = [
1132
1678
  // Advisor (second opinion from a stronger reviewer model)
1133
1679
  {
1134
1680
  name: 'advisor',
1681
+ effect: 'read',
1135
1682
  category: 'utility',
1136
1683
  keywords: ['advisor', 'review', 'second opinion', 'consult', 'check', 'validate', 'expert', 'critique', 'feedback'],
1137
1684
  priority: 6,
1138
1685
  description: 'Consult a stronger reviewer model for a second opinion (full conversation forwarded)'
1139
1686
  },
1687
+ // Verify (explicit delegation to the independent, fresh-context Verifier agent)
1688
+ {
1689
+ name: 'verify',
1690
+ effect: 'emission',
1691
+ category: 'utility',
1692
+ keywords: ['verify', 'verification', 'evidence', 'confirm', 'validate', 'oracle', 'independent', 'proof', 'check', 'works'],
1693
+ priority: 6,
1694
+ description: 'Delegate to an independent fresh-context Verifier that runs real oracles and returns a CONFIRMED / NEEDS REVIEW verdict with evidence (read-only)'
1695
+ // No fleetSafe: the Verifier drives execution tools (bash/app_server) — not peer-exposable.
1696
+ },
1697
+ // Delegate agent (single tool that reaches the built-in specialized agents)
1698
+ {
1699
+ name: 'delegate_agent',
1700
+ effect: 'emission',
1701
+ category: 'utility',
1702
+ keywords: ['delegate', 'agent', 'specialized', 'pdf', 'excel', 'xlsx', 'csv', 'data', 'analysis', 'sql', 'database', 'query', 'archive', 'zip', 'tar', 'swe', 'refactor', 'debug', 'pivot', 'correlate'],
1703
+ priority: 6,
1704
+ description: 'Delegate a bounded multi-step task to a built-in specialized agent (pdf/excel/data_analysis/sql/archive/swe)'
1705
+ // No fleetSafe: swe/excel-write/sql-import/archive-create can write — not peer-exposable.
1706
+ },
1707
+ // Document generator (PPTX/DOCX/XLSX/PDF) — complements the read-only `document` tool
1708
+ {
1709
+ name: 'generate_document',
1710
+ effect: 'reversible',
1711
+ category: 'document',
1712
+ keywords: ['generate', 'document', 'pptx', 'docx', 'xlsx', 'pdf', 'powerpoint', 'word', 'excel', 'slides', 'deck', 'report', 'create', 'export'],
1713
+ priority: 6,
1714
+ description: 'Generate professional documents (PowerPoint/Word/Excel/PDF) from markdown content'
1715
+ },
1140
1716
  // Fleet — multi-Claude orchestration via peer-RPC (Phase (d).17)
1141
1717
  {
1142
1718
  name: 'peer_delegate',
1719
+ effect: 'emission',
1143
1720
  category: 'utility',
1144
1721
  keywords: ['peer', 'delegate', 'fleet', 'consult', 'ask', 'collaborate', 'remote', 'claude', 'orchestrate', 'sub-agent', 'multi-ai', 'distributed', 'hermes', 'dispatch', 'dispatchProfile', 'profile', 'toolset', 'toolsets', 'policy'],
1145
1722
  priority: 7,
@@ -1147,6 +1724,7 @@ export const TOOL_METADATA = [
1147
1724
  },
1148
1725
  {
1149
1726
  name: 'peer_chain',
1727
+ effect: 'emission',
1150
1728
  category: 'utility',
1151
1729
  keywords: ['peer', 'chain', 'fleet', 'delegate', 'multi-agent', 'collaborate', 'orchestrate', 'hermes', 'handoff', 'roles', 'review', 'safe', 'code'],
1152
1730
  priority: 8,
@@ -1154,6 +1732,7 @@ export const TOOL_METADATA = [
1154
1732
  },
1155
1733
  {
1156
1734
  name: 'list_peers',
1735
+ effect: 'emission',
1157
1736
  category: 'utility',
1158
1737
  keywords: ['peers', 'fleet', 'connected', 'remote', 'claudes', 'list', 'discover', 'status', 'provider', 'model', 'capabilities', 'route', 'routing', 'hermes', 'dispatch'],
1159
1738
  priority: 5,
@@ -1161,6 +1740,7 @@ export const TOOL_METADATA = [
1161
1740
  },
1162
1741
  {
1163
1742
  name: 'route_peer',
1743
+ effect: 'emission',
1164
1744
  category: 'utility',
1165
1745
  keywords: ['peer', 'route', 'fleet', 'model', 'provider', 'capability', 'delegate', 'multi-ai', 'orchestrate', 'select', 'hermes', 'dispatch', 'chain', 'roles', 'dispatchProfile', 'profile', 'toolset', 'toolsets', 'policy', 'safe', 'review', 'research', 'code'],
1166
1746
  priority: 7,
@@ -1169,6 +1749,7 @@ export const TOOL_METADATA = [
1169
1749
  // AskUserQuestion (structured multi-option mid-task questions)
1170
1750
  {
1171
1751
  name: 'ask_user_question',
1752
+ effect: 'read',
1172
1753
  category: 'utility',
1173
1754
  keywords: ['ask', 'question', 'user', 'clarify', 'choose', 'option', 'decide', 'multi-choice', 'prompt', 'interactive', 'pick'],
1174
1755
  priority: 7,
@@ -1177,14 +1758,27 @@ export const TOOL_METADATA = [
1177
1758
  // ExitPlanMode (request approval to leave plan mode)
1178
1759
  {
1179
1760
  name: 'exit_plan_mode',
1761
+ effect: 'read',
1180
1762
  category: 'utility',
1181
1763
  keywords: ['plan', 'exit', 'approve', 'approval', 'leave', 'execute', 'proceed', 'unlock', 'sign-off'],
1182
1764
  priority: 7,
1183
1765
  description: 'Request user approval to leave plan mode and start executing'
1184
1766
  },
1767
+ {
1768
+ name: 'submit_plan',
1769
+ effect: 'reversible',
1770
+ category: 'planning',
1771
+ keywords: [
1772
+ 'plan', 'submit', 'approval', 'approve', 'research', 'execution plan',
1773
+ 'current.md', 'plan mode', 'sign-off',
1774
+ ],
1775
+ priority: 7,
1776
+ description: 'Write .codebuddy/plans/current.md and request user approval to leave plan mode',
1777
+ },
1185
1778
  // Codebase replace
1186
1779
  {
1187
1780
  name: 'codebase_replace',
1781
+ effect: 'reversible',
1188
1782
  category: 'file_write',
1189
1783
  keywords: ['replace', 'find', 'rename', 'refactor', 'codebase', 'search', 'substitute', 'sed', 'bulk', 'mass', 'global'],
1190
1784
  priority: 7,
@@ -1195,6 +1789,7 @@ export const TOOL_METADATA = [
1195
1789
  // read their transcript, message them, or spawn isolated sandboxed sub-agents.
1196
1790
  {
1197
1791
  name: 'sessions_list',
1792
+ effect: 'read',
1198
1793
  category: 'utility',
1199
1794
  keywords: ['sessions', 'list', 'active', 'agents', 'discover', 'coordination', 'multi-agent'],
1200
1795
  priority: 5,
@@ -1203,6 +1798,7 @@ export const TOOL_METADATA = [
1203
1798
  },
1204
1799
  {
1205
1800
  name: 'sessions_history',
1801
+ effect: 'read',
1206
1802
  category: 'utility',
1207
1803
  keywords: ['sessions', 'history', 'transcript', 'messages', 'review', 'context', 'multi-agent'],
1208
1804
  priority: 5,
@@ -1211,6 +1807,7 @@ export const TOOL_METADATA = [
1211
1807
  },
1212
1808
  {
1213
1809
  name: 'session_search',
1810
+ effect: 'read',
1214
1811
  category: 'utility',
1215
1812
  keywords: ['session', 'sessions', 'search', 'history', 'saved', 'recall', 'fts', 'conversation', 'hermes'],
1216
1813
  priority: 6,
@@ -1219,6 +1816,7 @@ export const TOOL_METADATA = [
1219
1816
  },
1220
1817
  {
1221
1818
  name: 'sessions_send',
1819
+ effect: 'emission',
1222
1820
  category: 'utility',
1223
1821
  keywords: ['sessions', 'send', 'message', 'communicate', 'notify', 'multi-agent', 'broadcast'],
1224
1822
  priority: 6,
@@ -1226,6 +1824,7 @@ export const TOOL_METADATA = [
1226
1824
  },
1227
1825
  {
1228
1826
  name: 'sessions_spawn',
1827
+ effect: 'emission',
1229
1828
  category: 'utility',
1230
1829
  keywords: ['sessions', 'spawn', 'create', 'subagent', 'delegate', 'parallel', 'subtask', 'multi-agent'],
1231
1830
  priority: 7,
@@ -1233,6 +1832,7 @@ export const TOOL_METADATA = [
1233
1832
  },
1234
1833
  {
1235
1834
  name: 'code_explorer_ask',
1835
+ effect: 'read',
1236
1836
  category: 'utility',
1237
1837
  keywords: ['code-explorer', 'ask', 'query', 'understand', 'explain', 'search', 'related files', 'dependents', 'tests'],
1238
1838
  priority: 6,
@@ -1241,12 +1841,222 @@ export const TOOL_METADATA = [
1241
1841
  },
1242
1842
  {
1243
1843
  name: 'screen_memory',
1844
+ effect: 'read',
1244
1845
  category: 'utility',
1245
1846
  keywords: ['screen', 'memory', 'screenpipe', 'recall', 'what did i see', 'history', 'ocr', 'audio', 'transcript', 'said', 'heard'],
1246
1847
  priority: 5,
1247
1848
  description: 'Recall what was on screen / said / heard via a local screenpipe instance (read-only, redacted)',
1849
+ fleetSafe: true,
1850
+ },
1851
+ // ---- 20 pre-authored tools (wired 2026-07-05) ----
1852
+ {
1853
+ name: 'scaffold_app',
1854
+ effect: 'reversible',
1855
+ category: 'file_write',
1856
+ keywords: ['scaffold', 'template', 'app', 'project', 'generate', 'node-cli', 'react', 'express'],
1857
+ priority: 85,
1858
+ description: 'Scaffold a new project from a template (node-cli, react, express).',
1859
+ fleetSafe: false,
1860
+ },
1861
+ {
1862
+ name: 'project_map',
1863
+ effect: 'read',
1864
+ category: 'codebase',
1865
+ keywords: ['project', 'map', 'tree', 'structure', 'entrypoint', 'languages'],
1866
+ priority: 80,
1867
+ description: 'Read-only map of a project: directory tree, entry points and languages.',
1868
+ fleetSafe: true,
1869
+ },
1870
+ {
1871
+ name: 'dep_inspect',
1872
+ effect: 'read',
1873
+ category: 'codebase',
1874
+ keywords: ['dependencies', 'package.json', 'scripts', 'engines', 'lockfile', 'npm'],
1875
+ priority: 78,
1876
+ description: 'Inspect package.json dependencies, scripts, engines and lockfile.',
1877
+ fleetSafe: true,
1878
+ },
1879
+ {
1880
+ name: 'code_stats',
1881
+ effect: 'read',
1882
+ category: 'codebase',
1883
+ keywords: ['code', 'stats', 'lines', 'languages', 'comments', 'largest files'],
1884
+ priority: 76,
1885
+ description: 'Compute code statistics: line counts by language, comments and largest files.',
1886
+ fleetSafe: true,
1887
+ },
1888
+ {
1889
+ name: 'git_summary',
1890
+ effect: 'emission',
1891
+ category: 'git',
1892
+ keywords: ['git', 'summary', 'status', 'branch', 'commit', 'ahead', 'behind'],
1893
+ priority: 82,
1894
+ description: 'Read-only git summary: branch, ahead/behind, staged/modified counts and last commit.',
1895
+ fleetSafe: true,
1896
+ },
1897
+ {
1898
+ name: 'todo_scan',
1899
+ effect: 'read',
1900
+ category: 'codebase',
1901
+ keywords: ['todo', 'fixme', 'hack', 'xxx', 'scan', 'markers'],
1902
+ priority: 72,
1903
+ description: 'Scan a codebase for TODO/FIXME/HACK/XXX markers.',
1904
+ fleetSafe: true,
1905
+ },
1906
+ {
1907
+ name: 'json_query',
1908
+ effect: 'read',
1909
+ category: 'utility',
1910
+ keywords: ['json', 'query', 'path', 'inspect', 'data'],
1911
+ priority: 70,
1912
+ description: 'Query a JSON file by a dotted/bracket path.',
1913
+ fleetSafe: true,
1914
+ },
1915
+ {
1916
+ name: 'csv_preview',
1917
+ effect: 'read',
1918
+ category: 'utility',
1919
+ keywords: ['csv', 'preview', 'columns', 'rows', 'types', 'data'],
1920
+ priority: 70,
1921
+ description: 'Preview a CSV file: inferred columns, row counts and value types.',
1922
+ fleetSafe: true,
1923
+ },
1924
+ {
1925
+ name: 'env_doctor',
1926
+ effect: 'emission',
1927
+ category: 'system',
1928
+ keywords: ['environment', 'doctor', 'node', 'node_modules', 'scripts', 'config', 'git', 'docker'],
1929
+ priority: 75,
1930
+ description: 'Diagnose a project environment: node, node_modules, scripts, config, git, docker.',
1931
+ fleetSafe: true,
1932
+ },
1933
+ {
1934
+ name: 'port_check',
1935
+ effect: 'emission',
1936
+ category: 'system',
1937
+ keywords: ['port', 'check', 'loopback', 'available', 'listening', 'server'],
1938
+ priority: 74,
1939
+ description: 'Check whether a loopback port is available or already listening.',
1940
+ fleetSafe: true,
1941
+ },
1942
+ {
1943
+ name: 'lint_project',
1944
+ effect: 'emission',
1945
+ category: 'system',
1946
+ keywords: ['lint', 'eslint', 'quality'],
1947
+ priority: 80,
1948
+ description: 'Run the project linter (eslint) and report issues.',
1949
+ fleetSafe: false,
1950
+ },
1951
+ {
1952
+ name: 'test_runner',
1953
+ effect: 'emission',
1954
+ category: 'system',
1955
+ keywords: ['test', 'vitest', 'jest'],
1956
+ priority: 80,
1957
+ description: 'Run the project test suite (vitest/jest) and report results.',
1958
+ fleetSafe: false,
1959
+ },
1960
+ {
1961
+ name: 'format_project',
1962
+ effect: 'emission',
1963
+ category: 'system',
1964
+ keywords: ['format', 'prettier'],
1965
+ priority: 70,
1966
+ description: 'Run the project formatter (prettier).',
1967
+ fleetSafe: false,
1968
+ },
1969
+ {
1970
+ name: 'bundle_analyze',
1971
+ effect: 'read',
1972
+ category: 'codebase',
1973
+ keywords: ['bundle', 'dist', 'gzip'],
1974
+ priority: 70,
1975
+ description: 'Analyze build output size (dist, gzip) for the project.',
1976
+ fleetSafe: true,
1977
+ },
1978
+ {
1979
+ name: 'build_project',
1980
+ effect: 'emission',
1981
+ category: 'system',
1982
+ keywords: ['build', 'compile'],
1983
+ priority: 80,
1984
+ description: 'Build/compile the project and report the outcome.',
1985
+ fleetSafe: false,
1986
+ },
1987
+ {
1988
+ name: 'license_check',
1989
+ effect: 'read',
1990
+ category: 'codebase',
1991
+ keywords: ['license', 'compliance', 'dependencies'],
1992
+ priority: 75,
1993
+ description: 'Check dependency licenses for compliance.',
1994
+ fleetSafe: true,
1995
+ },
1996
+ {
1997
+ name: 'sbom_generate',
1998
+ effect: 'read',
1999
+ category: 'codebase',
2000
+ keywords: ['sbom', 'dependencies', 'supply-chain'],
2001
+ priority: 75,
2002
+ description: 'Generate a software bill of materials (SBOM) from the dependency tree.',
2003
+ fleetSafe: true,
2004
+ },
2005
+ {
2006
+ name: 'http_probe',
2007
+ effect: 'emission',
2008
+ category: 'web',
2009
+ keywords: ['http', 'probe', 'loopback'],
2010
+ priority: 65,
2011
+ description: 'Probe a loopback HTTP endpoint for status and headers.',
2012
+ fleetSafe: true,
2013
+ },
2014
+ {
2015
+ name: 'file_search',
2016
+ effect: 'read',
2017
+ category: 'file_search',
2018
+ keywords: ['search', 'regex', 'files'],
2019
+ priority: 65,
2020
+ description: 'Regex search in text files under a bounded root (ignores node_modules/.git/binaries).',
2021
+ fleetSafe: true,
2022
+ },
2023
+ {
2024
+ name: 'diff_files',
2025
+ effect: 'read',
2026
+ category: 'file_search',
2027
+ keywords: ['diff', 'files', 'lcs'],
2028
+ priority: 65,
2029
+ description: 'Compute an LCS-based diff between two files.',
2030
+ fleetSafe: true,
1248
2031
  },
1249
2032
  ];
2033
+ const missingEffectWarned = new Set();
2034
+ function isToolEffectClass(value) {
2035
+ return TOOL_EFFECT_CLASSES.includes(value);
2036
+ }
2037
+ /** Resolve a tool's declared effect class. Missing catalog/MCP entries warn once and return `unknown`. */
2038
+ export function resolveToolEffect(name, metadata) {
2039
+ if (isToolEffectClass(metadata?.effect))
2040
+ return metadata.effect;
2041
+ const catalog = TOOL_METADATA.find((entry) => entry.name === name)?.effect;
2042
+ if (isToolEffectClass(catalog))
2043
+ return catalog;
2044
+ if (!missingEffectWarned.has(name)) {
2045
+ missingEffectWarned.add(name);
2046
+ logger.warn('tool metadata missing effect class; treating as unknown', { tool: name });
2047
+ }
2048
+ return 'unknown';
2049
+ }
2050
+ /** Test hook: unique-warning latch. */
2051
+ export function resetToolEffectWarningLatch() {
2052
+ missingEffectWarned.clear();
2053
+ }
2054
+ /** Metadata visible to RAG / BM25. Gated tools stay out of the index when disabled. */
2055
+ export function getActiveToolMetadata() {
2056
+ if (process.env.CODEBUDDY_CONTEXT_ZOOM === 'true')
2057
+ return TOOL_METADATA;
2058
+ return TOOL_METADATA.filter((metadata) => metadata.name !== 'context_expand');
2059
+ }
1250
2060
  /**
1251
2061
  * Category keyword mappings for query classification
1252
2062
  */
@@ -1258,7 +2068,7 @@ export const CATEGORY_KEYWORDS = {
1258
2068
  git: ['git', 'commit', 'push', 'pull', 'branch', 'merge', 'diff', 'status', 'version control'],
1259
2069
  web: ['search online', 'google', 'web', 'internet', 'fetch url', 'website', 'documentation', 'latest', 'news', 'browser', 'automate', 'click', 'fill form', 'screenshot', 'scrape', 'headless', 'ui test', 'observe', 'extract from page', 'assert page', 'stagehand', 'weather', 'météo', 'meteo', 'forecast', 'temperature', 'actualité', 'actualite', 'current events', 'real time', 'real-time'],
1260
2070
  planning: ['plan', 'todo', 'task', 'organize', 'steps', 'breakdown'],
1261
- media: ['image', 'audio', 'video', 'screenshot', 'picture', 'photo', 'sound', 'music', 'capture', 'camera', 'webcam', 'vision'],
2071
+ media: ['image', 'audio', 'video', 'screenshot', 'picture', 'photo', 'sound', 'music', 'capture', 'camera', 'webcam', 'vision', 'clip', 'film', 'animation', 'dessin', 'illustration', 'voix'],
1262
2072
  document: ['pdf', 'document', 'docx', 'xlsx', 'word', 'excel', 'archive', 'zip'],
1263
2073
  utility: ['diagram', 'chart', 'export', 'qr', 'visualize', 'convert'],
1264
2074
  codebase: ['codebase', 'structure', 'architecture', 'analyze', 'overview', 'dependencies'],