mixdog 0.7.17 → 0.8.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 (836) hide show
  1. package/README.md +37 -331
  2. package/package.json +67 -99
  3. package/scripts/boot-smoke.mjs +94 -0
  4. package/scripts/build-tui.mjs +52 -0
  5. package/scripts/compact-smoke.mjs +199 -0
  6. package/scripts/lead-workflow-smoke.mjs +598 -0
  7. package/scripts/live-worker-smoke.mjs +239 -0
  8. package/scripts/output-style-smoke.mjs +101 -0
  9. package/scripts/smoke-loop-report.mjs +221 -0
  10. package/scripts/smoke-loop.mjs +201 -0
  11. package/scripts/smoke.mjs +113 -0
  12. package/scripts/tool-failures.mjs +143 -0
  13. package/scripts/tool-smoke.mjs +456 -0
  14. package/src/agents/debugger/AGENT.md +3 -0
  15. package/src/agents/debugger/agent.json +6 -0
  16. package/src/agents/explore/AGENT.md +4 -0
  17. package/src/agents/explore/agent.json +6 -0
  18. package/src/agents/heavy-worker/AGENT.md +3 -0
  19. package/src/agents/heavy-worker/agent.json +6 -0
  20. package/src/agents/maintainer/AGENT.md +3 -0
  21. package/src/agents/maintainer/agent.json +6 -0
  22. package/src/agents/reviewer/AGENT.md +3 -0
  23. package/src/agents/reviewer/agent.json +6 -0
  24. package/src/agents/scheduler-task.md +3 -0
  25. package/src/agents/web-researcher/AGENT.md +3 -0
  26. package/src/agents/web-researcher/agent.json +6 -0
  27. package/src/agents/webhook-handler.md +3 -0
  28. package/src/agents/worker/AGENT.md +3 -0
  29. package/src/agents/worker/agent.json +6 -0
  30. package/src/app.mjs +90 -0
  31. package/src/cli.mjs +11 -0
  32. package/src/defaults/hidden-roles.json +72 -0
  33. package/src/defaults/mixdog-config.template.json +15 -0
  34. package/src/hooks/lib/permission-evaluator.cjs +488 -0
  35. package/src/hooks/lib/settings-loader.cjs +112 -0
  36. package/src/lib/keychain-cjs.cjs +332 -0
  37. package/src/lib/plugin-paths.cjs +28 -0
  38. package/src/lib/rules-builder.cjs +315 -0
  39. package/src/mixdog-session-runtime.mjs +3704 -0
  40. package/src/output-styles/default.md +38 -0
  41. package/src/output-styles/extreme-simple.md +17 -0
  42. package/src/output-styles/simple.md +17 -0
  43. package/src/repl.mjs +322 -0
  44. package/src/rules/bridge/00-common.md +5 -0
  45. package/src/rules/bridge/20-skip-protocol.md +11 -0
  46. package/src/rules/bridge/30-explorer.md +4 -0
  47. package/src/rules/bridge/40-cycle1-agent.md +28 -0
  48. package/src/rules/bridge/41-cycle2-agent.md +59 -0
  49. package/src/rules/lead/00-tool-lead.md +5 -0
  50. package/src/rules/lead/01-general.md +5 -0
  51. package/src/rules/lead/02-channels.md +3 -0
  52. package/src/rules/lead/04-workflow.md +12 -0
  53. package/src/rules/shared/00-language.md +3 -0
  54. package/src/rules/shared/01-tool.md +3 -0
  55. package/src/runtime/agent/orchestrator/bridge-trace.mjs +814 -0
  56. package/src/runtime/agent/orchestrator/cache-mtime.mjs +60 -0
  57. package/src/runtime/agent/orchestrator/config.mjs +446 -0
  58. package/src/runtime/agent/orchestrator/context/collect.mjs +796 -0
  59. package/src/runtime/agent/orchestrator/dispatch-persist.mjs +417 -0
  60. package/src/runtime/agent/orchestrator/internal-roles.mjs +188 -0
  61. package/src/runtime/agent/orchestrator/internal-tools.mjs +88 -0
  62. package/src/runtime/agent/orchestrator/mcp/client.mjs +345 -0
  63. package/src/runtime/agent/orchestrator/providers/anthropic-oauth.mjs +2104 -0
  64. package/src/runtime/agent/orchestrator/providers/anthropic.mjs +784 -0
  65. package/src/runtime/agent/orchestrator/providers/api-usage.mjs +341 -0
  66. package/src/runtime/agent/orchestrator/providers/gemini.mjs +1679 -0
  67. package/src/runtime/agent/orchestrator/providers/grok-oauth.mjs +959 -0
  68. package/src/runtime/agent/orchestrator/providers/media-normalization.mjs +213 -0
  69. package/src/runtime/agent/orchestrator/providers/model-cache.mjs +38 -0
  70. package/src/runtime/agent/orchestrator/providers/model-catalog.mjs +471 -0
  71. package/src/runtime/agent/orchestrator/providers/oauth-usage.mjs +615 -0
  72. package/src/runtime/agent/orchestrator/providers/openai-compat-stream.mjs +808 -0
  73. package/src/runtime/agent/orchestrator/providers/openai-compat.mjs +1719 -0
  74. package/src/runtime/agent/orchestrator/providers/openai-oauth-ws.mjs +2587 -0
  75. package/src/runtime/agent/orchestrator/providers/openai-oauth.mjs +1953 -0
  76. package/src/runtime/agent/orchestrator/providers/openai-ws.mjs +136 -0
  77. package/src/runtime/agent/orchestrator/providers/opencode-go-usage.mjs +317 -0
  78. package/src/runtime/agent/orchestrator/providers/opencode-go.mjs +109 -0
  79. package/src/runtime/agent/orchestrator/providers/registry.mjs +247 -0
  80. package/src/runtime/agent/orchestrator/providers/retry-classifier.mjs +332 -0
  81. package/src/runtime/agent/orchestrator/providers/statusline-route-meta.mjs +11 -0
  82. package/src/runtime/agent/orchestrator/providers/trace-utils.mjs +50 -0
  83. package/src/runtime/agent/orchestrator/session/cache/prefetch-cache.mjs +142 -0
  84. package/src/runtime/agent/orchestrator/session/cache/read-cache.mjs +318 -0
  85. package/src/runtime/agent/orchestrator/session/cache/scoped-cache.mjs +367 -0
  86. package/src/runtime/agent/orchestrator/session/compact.mjs +882 -0
  87. package/src/runtime/agent/orchestrator/session/context-utils.mjs +233 -0
  88. package/src/runtime/agent/orchestrator/session/loop.mjs +2320 -0
  89. package/src/runtime/agent/orchestrator/session/manager.mjs +2960 -0
  90. package/src/runtime/agent/orchestrator/session/result-classification.mjs +65 -0
  91. package/src/runtime/agent/orchestrator/session/store.mjs +663 -0
  92. package/src/runtime/agent/orchestrator/session/tool-result-offload.mjs +166 -0
  93. package/src/runtime/agent/orchestrator/smart-bridge/bridge-llm.mjs +339 -0
  94. package/src/runtime/agent/orchestrator/smart-bridge/cache-strategy.mjs +419 -0
  95. package/src/runtime/agent/orchestrator/stall-policy.mjs +227 -0
  96. package/src/runtime/agent/orchestrator/tool-loop-guard.mjs +235 -0
  97. package/src/runtime/agent/orchestrator/tools/bash-session.mjs +723 -0
  98. package/src/runtime/agent/orchestrator/tools/builtin/arg-guard.mjs +389 -0
  99. package/src/runtime/agent/orchestrator/tools/builtin/bash-tool.mjs +637 -0
  100. package/src/runtime/agent/orchestrator/tools/builtin/builtin-tools.mjs +165 -0
  101. package/src/runtime/agent/orchestrator/tools/builtin/fuzzy-match.mjs +104 -0
  102. package/src/runtime/agent/orchestrator/tools/builtin/glob-walk.mjs +194 -0
  103. package/src/runtime/agent/orchestrator/tools/builtin/list-tool.mjs +596 -0
  104. package/src/runtime/agent/orchestrator/tools/builtin/native-edit-runner.mjs +110 -0
  105. package/src/runtime/agent/orchestrator/tools/builtin/path-diagnostics.mjs +153 -0
  106. package/src/runtime/agent/orchestrator/tools/builtin/read-formatting.mjs +118 -0
  107. package/src/runtime/agent/orchestrator/tools/builtin/read-open.mjs +189 -0
  108. package/src/runtime/agent/orchestrator/tools/builtin/read-single-tool.mjs +731 -0
  109. package/src/runtime/agent/orchestrator/tools/builtin/read-snapshot-runtime.mjs +168 -0
  110. package/src/runtime/agent/orchestrator/tools/builtin/read-streaming.mjs +602 -0
  111. package/src/runtime/agent/orchestrator/tools/builtin/rg-runner.mjs +465 -0
  112. package/src/runtime/agent/orchestrator/tools/builtin/search-builders.mjs +160 -0
  113. package/src/runtime/agent/orchestrator/tools/builtin/search-tool.mjs +982 -0
  114. package/src/runtime/agent/orchestrator/tools/builtin/shell-jobs.mjs +1087 -0
  115. package/src/runtime/agent/orchestrator/tools/builtin/shell-runtime.mjs +231 -0
  116. package/src/runtime/agent/orchestrator/tools/builtin/snapshot-store.mjs +223 -0
  117. package/src/runtime/agent/orchestrator/tools/builtin.mjs +478 -0
  118. package/src/runtime/agent/orchestrator/tools/code-graph-tool-defs.mjs +24 -0
  119. package/src/runtime/agent/orchestrator/tools/code-graph.mjs +4102 -0
  120. package/src/runtime/agent/orchestrator/tools/destructive-warning.mjs +323 -0
  121. package/src/runtime/agent/orchestrator/tools/graph-binary-fetcher.mjs +154 -0
  122. package/src/runtime/agent/orchestrator/tools/graph-manifest.json +26 -0
  123. package/src/runtime/agent/orchestrator/tools/patch-binary-fetcher.mjs +143 -0
  124. package/src/runtime/agent/orchestrator/tools/patch-tool-defs.mjs +18 -0
  125. package/src/runtime/agent/orchestrator/tools/patch.mjs +2772 -0
  126. package/src/runtime/agent/orchestrator/tools/progress-message.mjs +114 -0
  127. package/src/runtime/agent/orchestrator/tools/shell-command.mjs +880 -0
  128. package/src/runtime/agent/orchestrator/tools/shell-snapshot.mjs +312 -0
  129. package/src/runtime/channels/backends/discord.mjs +781 -0
  130. package/src/runtime/channels/data/voice-runtime-manifest.json +138 -0
  131. package/src/runtime/channels/index.mjs +3309 -0
  132. package/src/runtime/channels/lib/config.mjs +285 -0
  133. package/src/runtime/channels/lib/drop-trace.mjs +71 -0
  134. package/src/runtime/channels/lib/event-pipeline.mjs +81 -0
  135. package/src/runtime/channels/lib/holidays.mjs +138 -0
  136. package/src/runtime/channels/lib/hook-pipe-server.mjs +671 -0
  137. package/src/runtime/channels/lib/output-forwarder.mjs +765 -0
  138. package/src/runtime/channels/lib/runtime-paths.mjs +497 -0
  139. package/src/runtime/channels/lib/scheduler.mjs +710 -0
  140. package/src/runtime/channels/lib/session-discovery.mjs +102 -0
  141. package/src/runtime/channels/lib/state-file.mjs +68 -0
  142. package/src/runtime/channels/lib/status-snapshot.mjs +224 -0
  143. package/src/runtime/channels/lib/tool-format.mjs +124 -0
  144. package/src/runtime/channels/lib/transcript-discovery.mjs +195 -0
  145. package/src/runtime/channels/lib/voice-runtime-fetcher.mjs +734 -0
  146. package/src/runtime/channels/lib/webhook.mjs +1288 -0
  147. package/src/runtime/channels/tool-defs.mjs +177 -0
  148. package/src/runtime/lib/keychain-cjs.cjs +289 -0
  149. package/src/runtime/memory/data/runtime-manifest.json +40 -0
  150. package/src/runtime/memory/index.mjs +3600 -0
  151. package/src/runtime/memory/lib/core-memory-store.mjs +336 -0
  152. package/src/runtime/memory/lib/embedding-provider.mjs +275 -0
  153. package/src/runtime/memory/lib/embedding-worker.mjs +331 -0
  154. package/src/runtime/memory/lib/memory-cycle-requests.mjs +276 -0
  155. package/src/runtime/memory/lib/memory-cycle1.mjs +783 -0
  156. package/src/runtime/memory/lib/memory-cycle2.mjs +1389 -0
  157. package/src/runtime/memory/lib/memory-cycle3.mjs +646 -0
  158. package/src/runtime/memory/lib/memory-embed.mjs +300 -0
  159. package/src/runtime/memory/lib/memory-ops-policy.mjs +149 -0
  160. package/src/runtime/memory/lib/memory-recall-store.mjs +644 -0
  161. package/src/runtime/memory/lib/memory.mjs +418 -0
  162. package/src/runtime/memory/lib/pg/adapter.mjs +314 -0
  163. package/src/runtime/memory/lib/pg/process.mjs +366 -0
  164. package/src/runtime/memory/lib/pg/supervisor.mjs +495 -0
  165. package/src/runtime/memory/lib/runtime-fetcher.mjs +464 -0
  166. package/src/runtime/memory/lib/trace-store.mjs +734 -0
  167. package/src/runtime/memory/tool-defs.mjs +79 -0
  168. package/src/runtime/search/index.mjs +925 -0
  169. package/src/runtime/search/lib/config.mjs +61 -0
  170. package/src/runtime/search/lib/web-tools.mjs +1278 -0
  171. package/src/runtime/search/tool-defs.mjs +64 -0
  172. package/src/runtime/shared/atomic-file.mjs +435 -0
  173. package/src/runtime/shared/background-tasks.mjs +376 -0
  174. package/src/runtime/shared/child-guardian.mjs +98 -0
  175. package/src/runtime/shared/config.mjs +393 -0
  176. package/src/runtime/shared/err-text.mjs +121 -0
  177. package/src/runtime/shared/launcher-control.mjs +259 -0
  178. package/src/runtime/shared/llm/cost.mjs +66 -0
  179. package/src/runtime/shared/llm/http-agent.mjs +129 -0
  180. package/src/runtime/shared/open-url.mjs +37 -0
  181. package/src/runtime/shared/plugin-paths.mjs +25 -0
  182. package/src/runtime/shared/process-shutdown.mjs +147 -0
  183. package/src/runtime/shared/schedules-store.mjs +70 -0
  184. package/src/runtime/shared/tool-execution-contract.mjs +104 -0
  185. package/src/runtime/shared/tool-surface.mjs +950 -0
  186. package/src/runtime/shared/user-cwd.mjs +221 -0
  187. package/src/runtime/shared/user-data-guard.mjs +232 -0
  188. package/src/runtime/shared/workspace-router.mjs +259 -0
  189. package/src/standalone/bridge-tool.mjs +1414 -0
  190. package/src/standalone/channel-admin.mjs +366 -0
  191. package/src/standalone/channel-worker-preload.cjs +3 -0
  192. package/src/standalone/channel-worker.mjs +353 -0
  193. package/src/standalone/explore-tool.mjs +233 -0
  194. package/src/standalone/hook-bus.mjs +246 -0
  195. package/src/standalone/plugin-admin.mjs +247 -0
  196. package/src/standalone/provider-admin.mjs +338 -0
  197. package/src/standalone/seeds.mjs +94 -0
  198. package/src/standalone/usage-dashboard.mjs +510 -0
  199. package/src/tui/App.jsx +5438 -0
  200. package/src/tui/components/AnsiText.jsx +199 -0
  201. package/src/tui/components/ContextPanel.jsx +217 -0
  202. package/src/tui/components/Markdown.jsx +205 -0
  203. package/src/tui/components/MarkdownTable.jsx +204 -0
  204. package/src/tui/components/Message.jsx +103 -0
  205. package/src/tui/components/Picker.jsx +317 -0
  206. package/src/tui/components/PromptInput.jsx +584 -0
  207. package/src/tui/components/QueuedCommands.jsx +47 -0
  208. package/src/tui/components/SlashCommandPalette.jsx +114 -0
  209. package/src/tui/components/Spinner.jsx +317 -0
  210. package/src/tui/components/StatusLine.jsx +87 -0
  211. package/src/tui/components/TextEntryPanel.jsx +323 -0
  212. package/src/tui/components/ToolExecution.jsx +772 -0
  213. package/src/tui/components/TurnDone.jsx +78 -0
  214. package/src/tui/components/UsagePanel.jsx +331 -0
  215. package/src/tui/dist/index.mjs +12359 -0
  216. package/src/tui/engine.mjs +2410 -0
  217. package/src/tui/figures.mjs +50 -0
  218. package/src/tui/hooks/useEngine.mjs +16 -0
  219. package/src/tui/index.jsx +254 -0
  220. package/src/tui/input-editing.mjs +242 -0
  221. package/src/tui/markdown/format-token.mjs +194 -0
  222. package/src/tui/paste-attachments.mjs +198 -0
  223. package/src/tui/runtime/shared/process-shutdown.mjs +1 -0
  224. package/src/tui/spinner-verbs.mjs +45 -0
  225. package/src/tui/theme.mjs +67 -0
  226. package/src/tui/time-format.mjs +53 -0
  227. package/src/ui/ansi.mjs +115 -0
  228. package/src/ui/markdown.mjs +195 -0
  229. package/src/ui/statusline.mjs +730 -0
  230. package/src/ui/tool-card.mjs +101 -0
  231. package/src/vendor/statusline/bin/statusline-lib.mjs +805 -0
  232. package/src/vendor/statusline/bin/statusline-route.mjs +596 -0
  233. package/src/vendor/statusline/scripts/lib/gateway-settings.mjs +285 -0
  234. package/src/vendor/statusline/src/gateway/claude-current.mjs +320 -0
  235. package/src/vendor/statusline/src/gateway/route-meta.mjs +753 -0
  236. package/src/vendor/statusline/src/gateway/session-routes.mjs +244 -0
  237. package/src/workflows/default/WORKFLOW.md +7 -0
  238. package/src/workflows/default/workflow.json +14 -0
  239. package/vendor/ink/build/ansi-tokenizer.d.ts +38 -0
  240. package/vendor/ink/build/ansi-tokenizer.js +316 -0
  241. package/vendor/ink/build/ansi-tokenizer.js.map +1 -0
  242. package/vendor/ink/build/colorize.d.ts +3 -0
  243. package/vendor/ink/build/colorize.js +48 -0
  244. package/vendor/ink/build/colorize.js.map +1 -0
  245. package/vendor/ink/build/components/AccessibilityContext.d.ts +3 -0
  246. package/vendor/ink/build/components/AccessibilityContext.js +5 -0
  247. package/vendor/ink/build/components/AccessibilityContext.js.map +1 -0
  248. package/vendor/ink/build/components/AnimationContext.d.ts +9 -0
  249. package/vendor/ink/build/components/AnimationContext.js +13 -0
  250. package/vendor/ink/build/components/AnimationContext.js.map +1 -0
  251. package/vendor/ink/build/components/App.d.ts +24 -0
  252. package/vendor/ink/build/components/App.js +554 -0
  253. package/vendor/ink/build/components/App.js.map +1 -0
  254. package/vendor/ink/build/components/AppContext.d.ts +80 -0
  255. package/vendor/ink/build/components/AppContext.js +25 -0
  256. package/vendor/ink/build/components/AppContext.js.map +1 -0
  257. package/vendor/ink/build/components/BackgroundContext.d.ts +4 -0
  258. package/vendor/ink/build/components/BackgroundContext.js +3 -0
  259. package/vendor/ink/build/components/BackgroundContext.js.map +1 -0
  260. package/vendor/ink/build/components/Box.d.ts +130 -0
  261. package/vendor/ink/build/components/Box.js +34 -0
  262. package/vendor/ink/build/components/Box.js.map +1 -0
  263. package/vendor/ink/build/components/CursorContext.d.ts +11 -0
  264. package/vendor/ink/build/components/CursorContext.js +8 -0
  265. package/vendor/ink/build/components/CursorContext.js.map +1 -0
  266. package/vendor/ink/build/components/ErrorBoundary.d.ts +18 -0
  267. package/vendor/ink/build/components/ErrorBoundary.js +23 -0
  268. package/vendor/ink/build/components/ErrorBoundary.js.map +1 -0
  269. package/vendor/ink/build/components/ErrorOverview.d.ts +6 -0
  270. package/vendor/ink/build/components/ErrorOverview.js +90 -0
  271. package/vendor/ink/build/components/ErrorOverview.js.map +1 -0
  272. package/vendor/ink/build/components/FocusContext.d.ts +16 -0
  273. package/vendor/ink/build/components/FocusContext.js +17 -0
  274. package/vendor/ink/build/components/FocusContext.js.map +1 -0
  275. package/vendor/ink/build/components/Newline.d.ts +13 -0
  276. package/vendor/ink/build/components/Newline.js +8 -0
  277. package/vendor/ink/build/components/Newline.js.map +1 -0
  278. package/vendor/ink/build/components/Spacer.d.ts +7 -0
  279. package/vendor/ink/build/components/Spacer.js +11 -0
  280. package/vendor/ink/build/components/Spacer.js.map +1 -0
  281. package/vendor/ink/build/components/Static.d.ts +24 -0
  282. package/vendor/ink/build/components/Static.js +28 -0
  283. package/vendor/ink/build/components/Static.js.map +1 -0
  284. package/vendor/ink/build/components/StderrContext.d.ts +15 -0
  285. package/vendor/ink/build/components/StderrContext.js +13 -0
  286. package/vendor/ink/build/components/StderrContext.js.map +1 -0
  287. package/vendor/ink/build/components/StdinContext.d.ts +28 -0
  288. package/vendor/ink/build/components/StdinContext.js +20 -0
  289. package/vendor/ink/build/components/StdinContext.js.map +1 -0
  290. package/vendor/ink/build/components/StdoutContext.d.ts +15 -0
  291. package/vendor/ink/build/components/StdoutContext.js +13 -0
  292. package/vendor/ink/build/components/StdoutContext.js.map +1 -0
  293. package/vendor/ink/build/components/Text.d.ts +55 -0
  294. package/vendor/ink/build/components/Text.js +50 -0
  295. package/vendor/ink/build/components/Text.js.map +1 -0
  296. package/vendor/ink/build/components/Transform.d.ts +16 -0
  297. package/vendor/ink/build/components/Transform.js +15 -0
  298. package/vendor/ink/build/components/Transform.js.map +1 -0
  299. package/vendor/ink/build/cursor-helpers.d.ts +39 -0
  300. package/vendor/ink/build/cursor-helpers.js +62 -0
  301. package/vendor/ink/build/cursor-helpers.js.map +1 -0
  302. package/vendor/ink/build/devtools-window-polyfill.d.ts +1 -0
  303. package/vendor/ink/build/devtools-window-polyfill.js +68 -0
  304. package/vendor/ink/build/devtools-window-polyfill.js.map +1 -0
  305. package/vendor/ink/build/devtools.d.ts +1 -0
  306. package/vendor/ink/build/devtools.js +36 -0
  307. package/vendor/ink/build/devtools.js.map +1 -0
  308. package/vendor/ink/build/dom.d.ts +62 -0
  309. package/vendor/ink/build/dom.js +143 -0
  310. package/vendor/ink/build/dom.js.map +1 -0
  311. package/vendor/ink/build/get-max-width.d.ts +3 -0
  312. package/vendor/ink/build/get-max-width.js +10 -0
  313. package/vendor/ink/build/get-max-width.js.map +1 -0
  314. package/vendor/ink/build/hooks/use-animation.d.ts +49 -0
  315. package/vendor/ink/build/hooks/use-animation.js +87 -0
  316. package/vendor/ink/build/hooks/use-animation.js.map +1 -0
  317. package/vendor/ink/build/hooks/use-app.d.ts +5 -0
  318. package/vendor/ink/build/hooks/use-app.js +8 -0
  319. package/vendor/ink/build/hooks/use-app.js.map +1 -0
  320. package/vendor/ink/build/hooks/use-box-metrics.d.ts +59 -0
  321. package/vendor/ink/build/hooks/use-box-metrics.js +81 -0
  322. package/vendor/ink/build/hooks/use-box-metrics.js.map +1 -0
  323. package/vendor/ink/build/hooks/use-cursor.d.ts +12 -0
  324. package/vendor/ink/build/hooks/use-cursor.js +29 -0
  325. package/vendor/ink/build/hooks/use-cursor.js.map +1 -0
  326. package/vendor/ink/build/hooks/use-focus-manager.d.ts +43 -0
  327. package/vendor/ink/build/hooks/use-focus-manager.js +18 -0
  328. package/vendor/ink/build/hooks/use-focus-manager.js.map +1 -0
  329. package/vendor/ink/build/hooks/use-focus.d.ts +30 -0
  330. package/vendor/ink/build/hooks/use-focus.js +43 -0
  331. package/vendor/ink/build/hooks/use-focus.js.map +1 -0
  332. package/vendor/ink/build/hooks/use-input.d.ts +132 -0
  333. package/vendor/ink/build/hooks/use-input.js +126 -0
  334. package/vendor/ink/build/hooks/use-input.js.map +1 -0
  335. package/vendor/ink/build/hooks/use-is-screen-reader-enabled.d.ts +6 -0
  336. package/vendor/ink/build/hooks/use-is-screen-reader-enabled.js +12 -0
  337. package/vendor/ink/build/hooks/use-is-screen-reader-enabled.js.map +1 -0
  338. package/vendor/ink/build/hooks/use-paste.d.ts +35 -0
  339. package/vendor/ink/build/hooks/use-paste.js +62 -0
  340. package/vendor/ink/build/hooks/use-paste.js.map +1 -0
  341. package/vendor/ink/build/hooks/use-stderr.d.ts +5 -0
  342. package/vendor/ink/build/hooks/use-stderr.js +8 -0
  343. package/vendor/ink/build/hooks/use-stderr.js.map +1 -0
  344. package/vendor/ink/build/hooks/use-stdin.d.ts +7 -0
  345. package/vendor/ink/build/hooks/use-stdin.js +9 -0
  346. package/vendor/ink/build/hooks/use-stdin.js.map +1 -0
  347. package/vendor/ink/build/hooks/use-stdout.d.ts +5 -0
  348. package/vendor/ink/build/hooks/use-stdout.js +8 -0
  349. package/vendor/ink/build/hooks/use-stdout.js.map +1 -0
  350. package/vendor/ink/build/hooks/use-window-size.d.ts +18 -0
  351. package/vendor/ink/build/hooks/use-window-size.js +22 -0
  352. package/vendor/ink/build/hooks/use-window-size.js.map +1 -0
  353. package/vendor/ink/build/index.d.ts +42 -0
  354. package/vendor/ink/build/index.js +24 -0
  355. package/vendor/ink/build/index.js.map +1 -0
  356. package/vendor/ink/build/ink.d.ts +146 -0
  357. package/vendor/ink/build/ink.js +1022 -0
  358. package/vendor/ink/build/ink.js.map +1 -0
  359. package/vendor/ink/build/input-parser.d.ts +10 -0
  360. package/vendor/ink/build/input-parser.js +194 -0
  361. package/vendor/ink/build/input-parser.js.map +1 -0
  362. package/vendor/ink/build/instances.d.ts +3 -0
  363. package/vendor/ink/build/instances.js +8 -0
  364. package/vendor/ink/build/instances.js.map +1 -0
  365. package/vendor/ink/build/kitty-keyboard.d.ts +23 -0
  366. package/vendor/ink/build/kitty-keyboard.js +32 -0
  367. package/vendor/ink/build/kitty-keyboard.js.map +1 -0
  368. package/vendor/ink/build/log-update.d.ts +20 -0
  369. package/vendor/ink/build/log-update.js +261 -0
  370. package/vendor/ink/build/log-update.js.map +1 -0
  371. package/vendor/ink/build/measure-element.d.ts +20 -0
  372. package/vendor/ink/build/measure-element.js +13 -0
  373. package/vendor/ink/build/measure-element.js.map +1 -0
  374. package/vendor/ink/build/measure-text.d.ts +6 -0
  375. package/vendor/ink/build/measure-text.js +21 -0
  376. package/vendor/ink/build/measure-text.js.map +1 -0
  377. package/vendor/ink/build/output.d.ts +35 -0
  378. package/vendor/ink/build/output.js +328 -0
  379. package/vendor/ink/build/output.js.map +1 -0
  380. package/vendor/ink/build/parse-keypress.d.ts +20 -0
  381. package/vendor/ink/build/parse-keypress.js +495 -0
  382. package/vendor/ink/build/parse-keypress.js.map +1 -0
  383. package/vendor/ink/build/reconciler.d.ts +4 -0
  384. package/vendor/ink/build/reconciler.js +306 -0
  385. package/vendor/ink/build/reconciler.js.map +1 -0
  386. package/vendor/ink/build/render-background.d.ts +4 -0
  387. package/vendor/ink/build/render-background.js +25 -0
  388. package/vendor/ink/build/render-background.js.map +1 -0
  389. package/vendor/ink/build/render-border.d.ts +4 -0
  390. package/vendor/ink/build/render-border.js +84 -0
  391. package/vendor/ink/build/render-border.js.map +1 -0
  392. package/vendor/ink/build/render-node-to-output.d.ts +14 -0
  393. package/vendor/ink/build/render-node-to-output.js +162 -0
  394. package/vendor/ink/build/render-node-to-output.js.map +1 -0
  395. package/vendor/ink/build/render-to-string.d.ts +38 -0
  396. package/vendor/ink/build/render-to-string.js +116 -0
  397. package/vendor/ink/build/render-to-string.js.map +1 -0
  398. package/vendor/ink/build/render.d.ts +176 -0
  399. package/vendor/ink/build/render.js +71 -0
  400. package/vendor/ink/build/render.js.map +1 -0
  401. package/vendor/ink/build/renderer.d.ts +8 -0
  402. package/vendor/ink/build/renderer.js +64 -0
  403. package/vendor/ink/build/renderer.js.map +1 -0
  404. package/vendor/ink/build/sanitize-ansi.d.ts +2 -0
  405. package/vendor/ink/build/sanitize-ansi.js +27 -0
  406. package/vendor/ink/build/sanitize-ansi.js.map +1 -0
  407. package/vendor/ink/build/squash-text-nodes.d.ts +3 -0
  408. package/vendor/ink/build/squash-text-nodes.js +36 -0
  409. package/vendor/ink/build/squash-text-nodes.js.map +1 -0
  410. package/vendor/ink/build/styles.d.ts +302 -0
  411. package/vendor/ink/build/styles.js +303 -0
  412. package/vendor/ink/build/styles.js.map +1 -0
  413. package/vendor/ink/build/utils.d.ts +9 -0
  414. package/vendor/ink/build/utils.js +19 -0
  415. package/vendor/ink/build/utils.js.map +1 -0
  416. package/vendor/ink/build/wrap-text.d.ts +3 -0
  417. package/vendor/ink/build/wrap-text.js +38 -0
  418. package/vendor/ink/build/wrap-text.js.map +1 -0
  419. package/vendor/ink/build/write-synchronized.d.ts +4 -0
  420. package/vendor/ink/build/write-synchronized.js +9 -0
  421. package/vendor/ink/build/write-synchronized.js.map +1 -0
  422. package/vendor/ink/license +10 -0
  423. package/vendor/ink/package.json +137 -0
  424. package/.claude-plugin/marketplace.json +0 -34
  425. package/.claude-plugin/plugin.json +0 -20
  426. package/.gitattributes +0 -34
  427. package/.mcp.json +0 -14
  428. package/ARCHITECTURE.md +0 -77
  429. package/CHANGELOG.md +0 -30
  430. package/CONTRIBUTING.md +0 -45
  431. package/DATA-FLOW.md +0 -79
  432. package/LICENSE +0 -21
  433. package/SECURITY.md +0 -138
  434. package/UNINSTALL.md +0 -112
  435. package/agents/maintenance.md +0 -5
  436. package/agents/memory-classification.md +0 -30
  437. package/agents/scheduler-task.md +0 -18
  438. package/agents/webhook-handler.md +0 -27
  439. package/agents/worker.md +0 -24
  440. package/bin/bridge +0 -133
  441. package/bin/statusline-launcher.mjs +0 -82
  442. package/bin/statusline-lib.mjs +0 -558
  443. package/bin/statusline.mjs +0 -615
  444. package/bun.lock +0 -927
  445. package/commands/config.md +0 -16
  446. package/commands/doctor.md +0 -13
  447. package/commands/setup.md +0 -17
  448. package/defaults/hidden-roles.json +0 -68
  449. package/defaults/memory-chunk-prompt.md +0 -63
  450. package/defaults/mixdog-config.template.json +0 -27
  451. package/defaults/user-workflow.json +0 -8
  452. package/defaults/user-workflow.md +0 -17
  453. package/hooks/hooks.json +0 -73
  454. package/hooks/lib/active-instance.cjs +0 -77
  455. package/hooks/lib/permission-evaluator.cjs +0 -411
  456. package/hooks/lib/permission-route.cjs +0 -63
  457. package/hooks/lib/settings-loader.cjs +0 -117
  458. package/hooks/post-tool-use.cjs +0 -84
  459. package/hooks/pre-mcp-sandbox.cjs +0 -158
  460. package/hooks/pre-tool-subagent.cjs +0 -258
  461. package/hooks/session-start.cjs +0 -1479
  462. package/hooks/shim-launcher.cjs +0 -65
  463. package/hooks/turn-timer.cjs +0 -82
  464. package/lib/claude-md-writer.cjs +0 -386
  465. package/lib/keychain-cjs.cjs +0 -290
  466. package/lib/plugin-paths.cjs +0 -69
  467. package/lib/rules-builder.cjs +0 -241
  468. package/native/README.md +0 -117
  469. package/native/prebuilt/linux-aarch64/mixdog-shim +0 -0
  470. package/native/prebuilt/linux-x86_64/mixdog-shim +0 -0
  471. package/native/prebuilt/macos-aarch64/mixdog-shim +0 -0
  472. package/native/prebuilt/macos-x86_64/mixdog-shim +0 -0
  473. package/native/prebuilt/windows-x86_64/mixdog-shim.exe +0 -0
  474. package/prompts/code-review.txt +0 -16
  475. package/prompts/security-audit.txt +0 -17
  476. package/rules/bridge/00-common.md +0 -39
  477. package/rules/bridge/20-skip-protocol.md +0 -18
  478. package/rules/bridge/30-explorer.md +0 -33
  479. package/rules/bridge/40-cycle1-agent.md +0 -52
  480. package/rules/bridge/41-cycle2-agent.md +0 -62
  481. package/rules/lead/00-tool-lead.md +0 -61
  482. package/rules/lead/01-general.md +0 -23
  483. package/rules/lead/02-channels.md +0 -49
  484. package/rules/lead/03-team.md +0 -27
  485. package/rules/lead/04-workflow.md +0 -20
  486. package/rules/shared/00-language.md +0 -14
  487. package/rules/shared/01-tool.md +0 -138
  488. package/scripts/bootstrap.mjs +0 -130
  489. package/scripts/bridge-unify-smoke.mjs +0 -308
  490. package/scripts/build-runtime-linux.sh +0 -348
  491. package/scripts/build-runtime-macos.sh +0 -217
  492. package/scripts/build-runtime-windows.ps1 +0 -242
  493. package/scripts/builtin-utils-smoke.mjs +0 -398
  494. package/scripts/bump.mjs +0 -80
  495. package/scripts/check-json.mjs +0 -45
  496. package/scripts/check-syntax-changed.mjs +0 -102
  497. package/scripts/check-syntax.mjs +0 -58
  498. package/scripts/code-graph-batch.test.mjs +0 -33
  499. package/scripts/config-preserve-smoke.mjs +0 -180
  500. package/scripts/doctor.mjs +0 -489
  501. package/scripts/edit-normalize-fuzz.mjs +0 -130
  502. package/scripts/edit-normalize-smoke.mjs +0 -401
  503. package/scripts/edit-operation-smoke.mjs +0 -369
  504. package/scripts/edit2-smoke.mjs +0 -63
  505. package/scripts/ensure-deps.mjs +0 -259
  506. package/scripts/fuzzy-e2e.mjs +0 -28
  507. package/scripts/fuzzy-smoke.mjs +0 -26
  508. package/scripts/generate-runtime-manifest.mjs +0 -166
  509. package/scripts/guard-smoke.mjs +0 -66
  510. package/scripts/hidden-role-schema-smoke.mjs +0 -162
  511. package/scripts/hook-routing-smoke.mjs +0 -29
  512. package/scripts/inject-input.ps1 +0 -204
  513. package/scripts/io-complex-smoke.mjs +0 -667
  514. package/scripts/io-explore-bench.mjs +0 -424
  515. package/scripts/io-guardrails-smoke.mjs +0 -205
  516. package/scripts/io-mini-bench-baseline.json +0 -11
  517. package/scripts/io-mini-bench.mjs +0 -216
  518. package/scripts/io-route-harness.mjs +0 -933
  519. package/scripts/io-telemetry-report.mjs +0 -691
  520. package/scripts/mutation-bench.mjs +0 -564
  521. package/scripts/mutation-io-smoke.mjs +0 -1097
  522. package/scripts/native-patch-bridge-smoke.mjs +0 -288
  523. package/scripts/native-patch-smoke.mjs +0 -304
  524. package/scripts/openai-oauth-catalog-smoke.mjs +0 -53
  525. package/scripts/patch-interior-context-smoke.mjs +0 -49
  526. package/scripts/patch-newline-utf8-smoke.mjs +0 -157
  527. package/scripts/perf-hook-smoke.mjs +0 -71
  528. package/scripts/permission-eval-smoke.mjs +0 -443
  529. package/scripts/prep-patch.mjs +0 -53
  530. package/scripts/prep-shim.mjs +0 -96
  531. package/scripts/provider-cache-smoke.mjs +0 -687
  532. package/scripts/report-runtime-health.mjs +0 -132
  533. package/scripts/resolve-bun.mjs +0 -60
  534. package/scripts/run-mcp.mjs +0 -1448
  535. package/scripts/salvage-v4a-shatter.test.mjs +0 -58
  536. package/scripts/scoped-cache-io-smoke.mjs +0 -103
  537. package/scripts/shell-policy-round3-smoke.mjs +0 -46
  538. package/scripts/smoke-runtime-negative.ps1 +0 -100
  539. package/scripts/smoke-runtime-negative.sh +0 -95
  540. package/scripts/stall-policy-smoke.mjs +0 -50
  541. package/scripts/start-memory-worker.mjs +0 -23
  542. package/scripts/statusline-launcher-smoke.mjs +0 -82
  543. package/scripts/stress-atomic-write.mjs +0 -1028
  544. package/scripts/test-fault-inject.mjs +0 -164
  545. package/scripts/test-large-file.mjs +0 -174
  546. package/scripts/tool-edge-smoke.mjs +0 -209
  547. package/scripts/uninstall.mjs +0 -201
  548. package/scripts/webhook-selfheal-smoke.mjs +0 -27
  549. package/scripts/write-overwrite-guard-smoke.mjs +0 -56
  550. package/server-main.mjs +0 -3109
  551. package/server.mjs +0 -468
  552. package/setup/config-merge.mjs +0 -246
  553. package/setup/install.mjs +0 -574
  554. package/setup/launch-core.mjs +0 -617
  555. package/setup/launch.mjs +0 -101
  556. package/setup/locate-claude.mjs +0 -56
  557. package/setup/mixdog-cli.mjs +0 -122
  558. package/setup/setup-server.mjs +0 -3305
  559. package/setup/setup.html +0 -3740
  560. package/setup/tui.mjs +0 -325
  561. package/skills/retro-skill-proposer/SKILL.md +0 -92
  562. package/skills/schedule-add/SKILL.md +0 -77
  563. package/skills/setup/SKILL.md +0 -356
  564. package/skills/webhook-add/SKILL.md +0 -81
  565. package/src/agent/bridge-stall-watchdog.mjs +0 -337
  566. package/src/agent/index.mjs +0 -2138
  567. package/src/agent/orchestrator/ai-wrapped-dispatch.mjs +0 -1010
  568. package/src/agent/orchestrator/bridge-retry.mjs +0 -220
  569. package/src/agent/orchestrator/bridge-trace.mjs +0 -583
  570. package/src/agent/orchestrator/cache-mtime.mjs +0 -58
  571. package/src/agent/orchestrator/config.mjs +0 -405
  572. package/src/agent/orchestrator/context/collect.mjs +0 -651
  573. package/src/agent/orchestrator/dispatch-persist.mjs +0 -549
  574. package/src/agent/orchestrator/drain-registry.mjs +0 -50
  575. package/src/agent/orchestrator/explore-validator.mjs +0 -8
  576. package/src/agent/orchestrator/internal-roles.mjs +0 -118
  577. package/src/agent/orchestrator/internal-tools.mjs +0 -88
  578. package/src/agent/orchestrator/jobs.mjs +0 -116
  579. package/src/agent/orchestrator/mcp/client.mjs +0 -364
  580. package/src/agent/orchestrator/providers/anthropic-oauth.mjs +0 -1881
  581. package/src/agent/orchestrator/providers/anthropic.mjs +0 -594
  582. package/src/agent/orchestrator/providers/gemini.mjs +0 -1530
  583. package/src/agent/orchestrator/providers/grok-oauth.mjs +0 -779
  584. package/src/agent/orchestrator/providers/model-catalog.mjs +0 -374
  585. package/src/agent/orchestrator/providers/openai-compat-stream.mjs +0 -366
  586. package/src/agent/orchestrator/providers/openai-compat.mjs +0 -1511
  587. package/src/agent/orchestrator/providers/openai-oauth-ws.mjs +0 -1891
  588. package/src/agent/orchestrator/providers/openai-oauth.mjs +0 -1456
  589. package/src/agent/orchestrator/providers/openai-ws.mjs +0 -127
  590. package/src/agent/orchestrator/providers/registry.mjs +0 -192
  591. package/src/agent/orchestrator/providers/retry-classifier.mjs +0 -325
  592. package/src/agent/orchestrator/session/cache/prefetch-cache.mjs +0 -142
  593. package/src/agent/orchestrator/session/cache/read-cache.mjs +0 -319
  594. package/src/agent/orchestrator/session/cache/scoped-cache.mjs +0 -361
  595. package/src/agent/orchestrator/session/loop.mjs +0 -1478
  596. package/src/agent/orchestrator/session/manager.mjs +0 -1991
  597. package/src/agent/orchestrator/session/result-classification.mjs +0 -65
  598. package/src/agent/orchestrator/session/store.mjs +0 -632
  599. package/src/agent/orchestrator/session/stream-watchdog.mjs +0 -130
  600. package/src/agent/orchestrator/session/tool-result-offload.mjs +0 -166
  601. package/src/agent/orchestrator/session/trim.mjs +0 -491
  602. package/src/agent/orchestrator/smart-bridge/CACHE-SHARD.md +0 -115
  603. package/src/agent/orchestrator/smart-bridge/bridge-llm.mjs +0 -331
  604. package/src/agent/orchestrator/smart-bridge/cache-obs.mjs +0 -150
  605. package/src/agent/orchestrator/smart-bridge/cache-strategy.mjs +0 -228
  606. package/src/agent/orchestrator/smart-bridge/index.mjs +0 -215
  607. package/src/agent/orchestrator/smart-bridge/profiles.mjs +0 -37
  608. package/src/agent/orchestrator/smart-bridge/registry.mjs +0 -348
  609. package/src/agent/orchestrator/stall-policy.mjs +0 -201
  610. package/src/agent/orchestrator/tool-loop-guard.mjs +0 -75
  611. package/src/agent/orchestrator/tools/bash-session.mjs +0 -722
  612. package/src/agent/orchestrator/tools/builtin/arg-guard.mjs +0 -455
  613. package/src/agent/orchestrator/tools/builtin/bash-tool.mjs +0 -480
  614. package/src/agent/orchestrator/tools/builtin/builtin-tools.mjs +0 -256
  615. package/src/agent/orchestrator/tools/builtin/edit-base-guard.mjs +0 -58
  616. package/src/agent/orchestrator/tools/builtin/edit-byte-plan.mjs +0 -240
  617. package/src/agent/orchestrator/tools/builtin/edit-byte-utils.mjs +0 -113
  618. package/src/agent/orchestrator/tools/builtin/edit-commit.mjs +0 -74
  619. package/src/agent/orchestrator/tools/builtin/edit-context-utils.mjs +0 -242
  620. package/src/agent/orchestrator/tools/builtin/edit-diagnostics.mjs +0 -211
  621. package/src/agent/orchestrator/tools/builtin/edit-engine.mjs +0 -1364
  622. package/src/agent/orchestrator/tools/builtin/edit-failure-context.mjs +0 -126
  623. package/src/agent/orchestrator/tools/builtin/edit-hint.mjs +0 -141
  624. package/src/agent/orchestrator/tools/builtin/edit-match-utils.mjs +0 -194
  625. package/src/agent/orchestrator/tools/builtin/edit-partial-write.mjs +0 -60
  626. package/src/agent/orchestrator/tools/builtin/edit-stale-refresh.mjs +0 -168
  627. package/src/agent/orchestrator/tools/builtin/edit-tool.mjs +0 -173
  628. package/src/agent/orchestrator/tools/builtin/edit-utf8-guard.mjs +0 -48
  629. package/src/agent/orchestrator/tools/builtin/fuzzy-match.mjs +0 -99
  630. package/src/agent/orchestrator/tools/builtin/glob-walk.mjs +0 -193
  631. package/src/agent/orchestrator/tools/builtin/list-tool.mjs +0 -597
  632. package/src/agent/orchestrator/tools/builtin/native-edit-runner.mjs +0 -110
  633. package/src/agent/orchestrator/tools/builtin/notebook-edit-tool.mjs +0 -300
  634. package/src/agent/orchestrator/tools/builtin/path-diagnostics.mjs +0 -152
  635. package/src/agent/orchestrator/tools/builtin/read-formatting.mjs +0 -118
  636. package/src/agent/orchestrator/tools/builtin/read-open.mjs +0 -190
  637. package/src/agent/orchestrator/tools/builtin/read-single-tool.mjs +0 -728
  638. package/src/agent/orchestrator/tools/builtin/read-snapshot-runtime.mjs +0 -173
  639. package/src/agent/orchestrator/tools/builtin/read-streaming.mjs +0 -602
  640. package/src/agent/orchestrator/tools/builtin/rename-tool.mjs +0 -196
  641. package/src/agent/orchestrator/tools/builtin/rg-runner.mjs +0 -422
  642. package/src/agent/orchestrator/tools/builtin/search-builders.mjs +0 -158
  643. package/src/agent/orchestrator/tools/builtin/search-tool.mjs +0 -869
  644. package/src/agent/orchestrator/tools/builtin/shell-jobs.mjs +0 -962
  645. package/src/agent/orchestrator/tools/builtin/shell-runtime.mjs +0 -223
  646. package/src/agent/orchestrator/tools/builtin/snapshot-store.mjs +0 -206
  647. package/src/agent/orchestrator/tools/builtin/write-tool.mjs +0 -401
  648. package/src/agent/orchestrator/tools/builtin.mjs +0 -503
  649. package/src/agent/orchestrator/tools/code-graph-tool-defs.mjs +0 -24
  650. package/src/agent/orchestrator/tools/code-graph.mjs +0 -4095
  651. package/src/agent/orchestrator/tools/cwd-tool.mjs +0 -298
  652. package/src/agent/orchestrator/tools/destructive-warning.mjs +0 -323
  653. package/src/agent/orchestrator/tools/edit-normalize.mjs +0 -603
  654. package/src/agent/orchestrator/tools/graph-binary-fetcher.mjs +0 -154
  655. package/src/agent/orchestrator/tools/graph-manifest.json +0 -26
  656. package/src/agent/orchestrator/tools/host-input.mjs +0 -204
  657. package/src/agent/orchestrator/tools/patch-binary-fetcher.mjs +0 -143
  658. package/src/agent/orchestrator/tools/patch-manifest.json +0 -26
  659. package/src/agent/orchestrator/tools/patch-tool-defs.mjs +0 -20
  660. package/src/agent/orchestrator/tools/patch.mjs +0 -2754
  661. package/src/agent/orchestrator/tools/progress-message.mjs +0 -118
  662. package/src/agent/orchestrator/tools/shell-command.mjs +0 -865
  663. package/src/agent/orchestrator/tools/shell-policy-imports.mjs +0 -7
  664. package/src/agent/orchestrator/tools/shell-snapshot.mjs +0 -313
  665. package/src/agent/orchestrator/workflow-store.mjs +0 -93
  666. package/src/agent/tool-defs.mjs +0 -103
  667. package/src/channels/backends/discord.mjs +0 -784
  668. package/src/channels/data/voice-runtime-manifest.json +0 -138
  669. package/src/channels/index.mjs +0 -3268
  670. package/src/channels/lib/config.mjs +0 -292
  671. package/src/channels/lib/drop-trace.mjs +0 -71
  672. package/src/channels/lib/event-pipeline.mjs +0 -81
  673. package/src/channels/lib/holidays.mjs +0 -138
  674. package/src/channels/lib/hook-pipe-server.mjs +0 -822
  675. package/src/channels/lib/output-forwarder.mjs +0 -765
  676. package/src/channels/lib/runtime-paths.mjs +0 -517
  677. package/src/channels/lib/scheduler.mjs +0 -723
  678. package/src/channels/lib/session-discovery.mjs +0 -103
  679. package/src/channels/lib/state-file.mjs +0 -68
  680. package/src/channels/lib/status-snapshot.mjs +0 -219
  681. package/src/channels/lib/tool-format.mjs +0 -140
  682. package/src/channels/lib/transcript-discovery.mjs +0 -195
  683. package/src/channels/lib/voice-runtime-fetcher.mjs +0 -734
  684. package/src/channels/lib/webhook.mjs +0 -1318
  685. package/src/channels/tool-defs.mjs +0 -170
  686. package/src/daemon/host.mjs +0 -118
  687. package/src/daemon/mcp-transport.mjs +0 -47
  688. package/src/daemon/session.mjs +0 -100
  689. package/src/daemon/thin-client.mjs +0 -71
  690. package/src/daemon/transport.mjs +0 -163
  691. package/src/memory/data/runtime-manifest.json +0 -40
  692. package/src/memory/index.mjs +0 -3332
  693. package/src/memory/lib/core-memory-store.mjs +0 -330
  694. package/src/memory/lib/embedding-provider.mjs +0 -269
  695. package/src/memory/lib/embedding-worker.mjs +0 -323
  696. package/src/memory/lib/memory-cycle1.mjs +0 -645
  697. package/src/memory/lib/memory-cycle2.mjs +0 -1284
  698. package/src/memory/lib/memory-cycle3.mjs +0 -540
  699. package/src/memory/lib/memory-embed.mjs +0 -299
  700. package/src/memory/lib/memory-ops-policy.mjs +0 -190
  701. package/src/memory/lib/memory-recall-store.mjs +0 -638
  702. package/src/memory/lib/memory.mjs +0 -412
  703. package/src/memory/lib/pg/adapter.mjs +0 -308
  704. package/src/memory/lib/pg/process.mjs +0 -360
  705. package/src/memory/lib/pg/supervisor.mjs +0 -396
  706. package/src/memory/lib/runtime-fetcher.mjs +0 -458
  707. package/src/memory/lib/trace-store.mjs +0 -728
  708. package/src/memory/tool-defs.mjs +0 -79
  709. package/src/search/index.mjs +0 -1173
  710. package/src/search/lib/backends/anthropic-oauth.mjs +0 -98
  711. package/src/search/lib/backends/exa.mjs +0 -50
  712. package/src/search/lib/backends/firecrawl.mjs +0 -61
  713. package/src/search/lib/backends/gemini-api.mjs +0 -83
  714. package/src/search/lib/backends/grok-oauth.mjs +0 -86
  715. package/src/search/lib/backends/index.mjs +0 -150
  716. package/src/search/lib/backends/openai-api.mjs +0 -144
  717. package/src/search/lib/backends/openai-oauth.mjs +0 -102
  718. package/src/search/lib/backends/openai-web-search.mjs +0 -76
  719. package/src/search/lib/backends/tavily.mjs +0 -55
  720. package/src/search/lib/backends/xai-api.mjs +0 -113
  721. package/src/search/lib/config.mjs +0 -192
  722. package/src/search/lib/provider-usage.mjs +0 -67
  723. package/src/search/lib/providers.mjs +0 -47
  724. package/src/search/lib/search-intent.mjs +0 -109
  725. package/src/search/lib/setup-handler.mjs +0 -261
  726. package/src/search/lib/web-tools.mjs +0 -1219
  727. package/src/search/tool-defs.mjs +0 -83
  728. package/src/setup/defender-exclusion.mjs +0 -183
  729. package/src/shared/atomic-file.mjs +0 -436
  730. package/src/shared/config.mjs +0 -372
  731. package/src/shared/daemon-recycle.mjs +0 -108
  732. package/src/shared/disable-claude-builtins.mjs +0 -91
  733. package/src/shared/err-text.mjs +0 -12
  734. package/src/shared/llm/cost.mjs +0 -66
  735. package/src/shared/llm/http-agent.mjs +0 -123
  736. package/src/shared/open-url.mjs +0 -62
  737. package/src/shared/plugin-paths.mjs +0 -58
  738. package/src/shared/schedules-store.mjs +0 -70
  739. package/src/shared/seed.mjs +0 -136
  740. package/src/shared/user-cwd.mjs +0 -225
  741. package/src/shared/user-data-guard.mjs +0 -244
  742. package/src/status/aggregator.mjs +0 -584
  743. package/src/status/server.mjs +0 -413
  744. package/tools.json +0 -1653
  745. /package/{defaults → src/defaults}/cycle3-review-prompt.md +0 -0
  746. /package/{defaults → src/defaults}/memory-promote-prompt.md +0 -0
  747. /package/{hooks → src/hooks}/lib/permission-rules.cjs +0 -0
  748. /package/{lib → src/lib}/config-cjs.cjs +0 -0
  749. /package/{lib → src/lib}/hook-pipe-path.cjs +0 -0
  750. /package/{lib → src/lib}/mixdog-debug.cjs +0 -0
  751. /package/{lib → src/lib}/text-utils.cjs +0 -0
  752. /package/{rules → src/rules}/bridge/42-cycle3-agent.md +0 -0
  753. /package/src/{agent → runtime/agent}/orchestrator/activity-bus.mjs +0 -0
  754. /package/src/{agent → runtime/agent}/orchestrator/providers/anthropic-betas.mjs +0 -0
  755. /package/src/{agent → runtime/agent}/orchestrator/session/abort-lookup.mjs +0 -0
  756. /package/src/{agent → runtime/agent}/orchestrator/session/cache/post-edit-marks.mjs +0 -0
  757. /package/src/{agent → runtime/agent}/orchestrator/session/cache/scoped-cache-outcome.mjs +0 -0
  758. /package/src/{agent → runtime/agent}/orchestrator/session/cache/util.mjs +0 -0
  759. /package/src/{agent → runtime/agent}/orchestrator/session/read-dedup.mjs +0 -0
  760. /package/src/{agent → runtime/agent}/orchestrator/session/save-session-worker.mjs +0 -0
  761. /package/src/{agent → runtime/agent}/orchestrator/smart-bridge/session-builder.mjs +0 -0
  762. /package/src/{agent → runtime/agent}/orchestrator/tools/bash-policy-scan.mjs +0 -0
  763. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/advisory-lock.mjs +0 -0
  764. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/atomic-write.mjs +0 -0
  765. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/binary-file.mjs +0 -0
  766. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/cache-layers.mjs +0 -0
  767. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/cwd-utils.mjs +0 -0
  768. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/device-paths.mjs +0 -0
  769. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/diagnostics-tool.mjs +0 -0
  770. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/diff-utils.mjs +0 -0
  771. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/fs-reachability.mjs +0 -0
  772. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/grep-formatting.mjs +0 -0
  773. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/hash-utils.mjs +0 -0
  774. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/list-formatting.mjs +0 -0
  775. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/open-config-tool.mjs +0 -0
  776. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/path-locks.mjs +0 -0
  777. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/path-utils.mjs +0 -0
  778. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/read-args.mjs +0 -0
  779. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/read-batch.mjs +0 -0
  780. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/read-constants.mjs +0 -0
  781. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/read-image-resize.mjs +0 -0
  782. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/read-image.mjs +0 -0
  783. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/read-lines.mjs +0 -0
  784. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/read-mode-tool.mjs +0 -0
  785. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/read-range-index.mjs +0 -0
  786. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/read-ranges.mjs +0 -0
  787. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/read-special-files.mjs +0 -0
  788. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/read-tool.mjs +0 -0
  789. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/read-windows.mjs +0 -0
  790. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/shell-analysis.mjs +0 -0
  791. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/shell-output.mjs +0 -0
  792. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/snapshot-helpers.mjs +0 -0
  793. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/snapshot-validation.mjs +0 -0
  794. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/text-stats.mjs +0 -0
  795. /package/src/{agent → runtime/agent}/orchestrator/tools/builtin/windows-roots.mjs +0 -0
  796. /package/src/{agent → runtime/agent}/orchestrator/tools/code-graph-prewarm-worker.mjs +0 -0
  797. /package/src/{agent → runtime/agent}/orchestrator/tools/env-scrub.mjs +0 -0
  798. /package/src/{agent → runtime/agent}/orchestrator/tools/mutation-content-cache.mjs +0 -0
  799. /package/src/{agent → runtime/agent}/orchestrator/tools/mutation-planner.mjs +0 -0
  800. /package/src/{agent → runtime/agent}/orchestrator/tools/next-call-utils.mjs +0 -0
  801. /package/src/{agent → runtime/agent}/orchestrator/tools/result-compression.mjs +0 -0
  802. /package/src/{agent → runtime/agent}/orchestrator/tools/shell-exec-policy.mjs +0 -0
  803. /package/src/{agent → runtime/agent}/orchestrator/tools/shell-policy-danger-target.mjs +0 -0
  804. /package/src/{agent → runtime/agent}/orchestrator/tools/shell-policy.mjs +0 -0
  805. /package/src/{channels → runtime/channels}/lib/cli-worker-host.mjs +0 -0
  806. /package/src/{channels → runtime/channels}/lib/config-lock.mjs +0 -0
  807. /package/src/{channels → runtime/channels}/lib/event-queue.mjs +0 -0
  808. /package/src/{channels → runtime/channels}/lib/executor.mjs +0 -0
  809. /package/src/{channels → runtime/channels}/lib/format.mjs +0 -0
  810. /package/src/{channels → runtime/channels}/lib/interaction-workflows.mjs +0 -0
  811. /package/src/{channels → runtime/channels}/lib/memory-client.mjs +0 -0
  812. /package/src/{channels → runtime/channels}/lib/session-control.mjs +0 -0
  813. /package/src/{channels → runtime/channels}/lib/settings.mjs +0 -0
  814. /package/src/{channels → runtime/channels}/lib/whisper-server.mjs +0 -0
  815. /package/src/{memory → runtime/memory}/lib/agent-ipc.mjs +0 -0
  816. /package/src/{memory → runtime/memory}/lib/bridge-trace-queries.mjs +0 -0
  817. /package/src/{memory → runtime/memory}/lib/llm-worker-host.mjs +0 -0
  818. /package/src/{memory → runtime/memory}/lib/memory-cycle.mjs +0 -0
  819. /package/src/{memory → runtime/memory}/lib/memory-extraction.mjs +0 -0
  820. /package/src/{memory → runtime/memory}/lib/memory-maintenance-store.mjs +0 -0
  821. /package/src/{memory → runtime/memory}/lib/memory-recall-id-patch.mjs +0 -0
  822. /package/src/{memory → runtime/memory}/lib/memory-recall-read-query.mjs +0 -0
  823. /package/src/{memory → runtime/memory}/lib/memory-recall-scope-filter.mjs +0 -0
  824. /package/src/{memory → runtime/memory}/lib/memory-retrievers.mjs +0 -0
  825. /package/src/{memory → runtime/memory}/lib/memory-score.mjs +0 -0
  826. /package/src/{memory → runtime/memory}/lib/memory-text-utils.mjs +0 -0
  827. /package/src/{memory → runtime/memory}/lib/model-profile.mjs +0 -0
  828. /package/src/{memory → runtime/memory}/lib/project-id-resolver.mjs +0 -0
  829. /package/src/{search → runtime/search}/lib/cache.mjs +0 -0
  830. /package/src/{search → runtime/search}/lib/formatter.mjs +0 -0
  831. /package/src/{search → runtime/search}/lib/state.mjs +0 -0
  832. /package/src/{shared → runtime/shared}/abort-controller.mjs +0 -0
  833. /package/src/{shared → runtime/shared}/llm/index.mjs +0 -0
  834. /package/src/{shared → runtime/shared}/llm/pid-cleanup.mjs +0 -0
  835. /package/src/{shared → runtime/shared}/llm/usage-log.mjs +0 -0
  836. /package/src/{shared → runtime/shared}/wsl.mjs +0 -0
package/tools.json DELETED
@@ -1,1653 +0,0 @@
1
- [
2
- {
3
- "name": "reply",
4
- "title": "Discord Reply",
5
- "annotations": {
6
- "title": "Discord Reply",
7
- "readOnlyHint": false,
8
- "destructiveHint": true,
9
- "idempotentHint": false,
10
- "openWorldHint": true
11
- },
12
- "description": "Reply on channel.",
13
- "inputSchema": {
14
- "type": "object",
15
- "properties": {
16
- "chat_id": {
17
- "type": "string"
18
- },
19
- "text": {
20
- "type": "string"
21
- },
22
- "reply_to": {
23
- "type": "string"
24
- },
25
- "files": {
26
- "type": "array",
27
- "items": {
28
- "type": "string"
29
- }
30
- },
31
- "embeds": {
32
- "type": "array",
33
- "items": {
34
- "type": "object",
35
- "additionalProperties": true
36
- }
37
- },
38
- "components": {
39
- "type": "array",
40
- "items": {
41
- "type": "object",
42
- "additionalProperties": true
43
- }
44
- }
45
- },
46
- "required": [
47
- "chat_id",
48
- "text"
49
- ]
50
- },
51
- "module": "channels"
52
- },
53
- {
54
- "name": "react",
55
- "title": "Reaction",
56
- "annotations": {
57
- "title": "Reaction",
58
- "readOnlyHint": false,
59
- "destructiveHint": false,
60
- "idempotentHint": true,
61
- "openWorldHint": true
62
- },
63
- "description": "React to message.",
64
- "inputSchema": {
65
- "type": "object",
66
- "properties": {
67
- "chat_id": {
68
- "type": "string"
69
- },
70
- "message_id": {
71
- "type": "string"
72
- },
73
- "emoji": {
74
- "type": "string"
75
- }
76
- },
77
- "required": [
78
- "chat_id",
79
- "message_id",
80
- "emoji"
81
- ]
82
- },
83
- "module": "channels"
84
- },
85
- {
86
- "name": "edit_message",
87
- "title": "Edit Message",
88
- "annotations": {
89
- "title": "Edit Message",
90
- "readOnlyHint": false,
91
- "destructiveHint": true,
92
- "idempotentHint": true,
93
- "openWorldHint": true
94
- },
95
- "description": "Edit bot message.",
96
- "inputSchema": {
97
- "type": "object",
98
- "properties": {
99
- "chat_id": {
100
- "type": "string"
101
- },
102
- "message_id": {
103
- "type": "string"
104
- },
105
- "text": {
106
- "type": "string"
107
- },
108
- "embeds": {
109
- "type": "array",
110
- "items": {
111
- "type": "object",
112
- "additionalProperties": true
113
- }
114
- },
115
- "components": {
116
- "type": "array",
117
- "items": {
118
- "type": "object",
119
- "additionalProperties": true
120
- }
121
- }
122
- },
123
- "required": [
124
- "chat_id",
125
- "message_id",
126
- "text"
127
- ]
128
- },
129
- "module": "channels"
130
- },
131
- {
132
- "name": "download_attachment",
133
- "title": "Download Attachment",
134
- "annotations": {
135
- "title": "Download Attachment",
136
- "readOnlyHint": true,
137
- "destructiveHint": false,
138
- "idempotentHint": true,
139
- "openWorldHint": true
140
- },
141
- "description": "Download attachments.",
142
- "inputSchema": {
143
- "type": "object",
144
- "properties": {
145
- "chat_id": {
146
- "type": "string"
147
- },
148
- "message_id": {
149
- "type": "string"
150
- }
151
- },
152
- "required": [
153
- "chat_id",
154
- "message_id"
155
- ]
156
- },
157
- "module": "channels"
158
- },
159
- {
160
- "name": "fetch",
161
- "title": "Fetch",
162
- "annotations": {
163
- "title": "Fetch",
164
- "readOnlyHint": true,
165
- "destructiveHint": false,
166
- "idempotentHint": true,
167
- "openWorldHint": true
168
- },
169
- "description": "Discord-only: fetch recent messages from a Discord channel. Requires channel (id); optional limit (count). NOT for URLs or web pages — use web_fetch for those.",
170
- "inputSchema": {
171
- "type": "object",
172
- "properties": {
173
- "channel": {
174
- "type": "string"
175
- },
176
- "limit": {
177
- "type": "number"
178
- }
179
- },
180
- "required": [
181
- "channel"
182
- ]
183
- },
184
- "module": "channels"
185
- },
186
- {
187
- "name": "schedule_status",
188
- "title": "Schedule Status",
189
- "annotations": {
190
- "title": "Schedule Status",
191
- "readOnlyHint": true,
192
- "destructiveHint": false,
193
- "idempotentHint": true,
194
- "openWorldHint": false
195
- },
196
- "description": "Show schedules.",
197
- "inputSchema": {
198
- "type": "object",
199
- "properties": {}
200
- },
201
- "module": "channels"
202
- },
203
- {
204
- "name": "trigger_schedule",
205
- "title": "Trigger Schedule",
206
- "annotations": {
207
- "title": "Trigger Schedule",
208
- "readOnlyHint": false,
209
- "destructiveHint": false,
210
- "idempotentHint": false,
211
- "openWorldHint": false
212
- },
213
- "description": "Run a scheduled task immediately by name (fire it now). Requires name.",
214
- "inputSchema": {
215
- "type": "object",
216
- "properties": {
217
- "name": {
218
- "type": "string"
219
- }
220
- },
221
- "required": [
222
- "name"
223
- ]
224
- },
225
- "module": "channels"
226
- },
227
- {
228
- "name": "schedule_control",
229
- "title": "Schedule Control",
230
- "annotations": {
231
- "title": "Schedule Control",
232
- "readOnlyHint": false,
233
- "destructiveHint": false,
234
- "idempotentHint": false,
235
- "openWorldHint": false
236
- },
237
- "description": "Defer or skip a schedule (not run it now): action=defer (push by `minutes`) | skip_today. Requires name + action.",
238
- "inputSchema": {
239
- "type": "object",
240
- "properties": {
241
- "name": {
242
- "type": "string"
243
- },
244
- "action": {
245
- "type": "string",
246
- "enum": [
247
- "defer",
248
- "skip_today"
249
- ]
250
- },
251
- "minutes": {
252
- "type": "number"
253
- }
254
- },
255
- "required": [
256
- "name",
257
- "action"
258
- ]
259
- },
260
- "module": "channels"
261
- },
262
- {
263
- "name": "activate_channel_bridge",
264
- "title": "Activate Channel Bridge",
265
- "annotations": {
266
- "title": "Activate Channel Bridge",
267
- "readOnlyHint": false,
268
- "destructiveHint": false,
269
- "idempotentHint": true,
270
- "openWorldHint": false
271
- },
272
- "description": "Set channel bridge active.",
273
- "inputSchema": {
274
- "type": "object",
275
- "properties": {
276
- "active": {
277
- "type": "boolean"
278
- }
279
- },
280
- "required": [
281
- "active"
282
- ]
283
- },
284
- "module": "channels"
285
- },
286
- {
287
- "name": "reload_config",
288
- "title": "Reload Config",
289
- "annotations": {
290
- "title": "Reload Config",
291
- "readOnlyHint": false,
292
- "destructiveHint": false,
293
- "idempotentHint": true,
294
- "openWorldHint": false
295
- },
296
- "description": "Reload config.",
297
- "inputSchema": {
298
- "type": "object",
299
- "properties": {}
300
- },
301
- "module": "channels"
302
- },
303
- {
304
- "name": "inject_command",
305
- "title": "Inject Claude Code Slash Command",
306
- "annotations": {
307
- "title": "Inject Claude Code Slash Command",
308
- "readOnlyHint": false,
309
- "destructiveHint": false,
310
- "idempotentHint": false,
311
- "openWorldHint": true
312
- },
313
- "description": "Inject slash command.",
314
- "inputSchema": {
315
- "type": "object",
316
- "properties": {
317
- "command": {
318
- "type": "string",
319
- "enum": [
320
- "reload-plugins",
321
- "clear"
322
- ]
323
- }
324
- },
325
- "required": [
326
- "command"
327
- ]
328
- },
329
- "module": "channels"
330
- },
331
- {
332
- "name": "memory",
333
- "title": "Memory Cycle",
334
- "annotations": {
335
- "title": "Memory Cycle",
336
- "readOnlyHint": false,
337
- "destructiveHint": true,
338
- "idempotentHint": false,
339
- "openWorldHint": false
340
- },
341
- "description": "Persistent memory operations. Requires action (status|core|manage|prune|rebuild|...). For core: op (add/edit/delete/list) + category + summary + project_id. To retrieve, use the recall tool.",
342
- "inputSchema": {
343
- "type": "object",
344
- "properties": {
345
- "action": {
346
- "type": "string",
347
- "enum": [
348
- "core",
349
- "manage",
350
- "status",
351
- "sleep",
352
- "cycle1",
353
- "cycle2",
354
- "cycle3",
355
- "flush",
356
- "backfill",
357
- "prune",
358
- "rebuild",
359
- "purge",
360
- "retro_eval_active"
361
- ]
362
- },
363
- "op": {
364
- "type": "string",
365
- "enum": [
366
- "add",
367
- "edit",
368
- "delete",
369
- "list"
370
- ]
371
- },
372
- "id": {
373
- "type": "number"
374
- },
375
- "element": {
376
- "type": "string"
377
- },
378
- "summary": {
379
- "type": "string"
380
- },
381
- "category": {
382
- "type": "string",
383
- "enum": [
384
- "rule",
385
- "constraint",
386
- "decision",
387
- "fact",
388
- "goal",
389
- "preference",
390
- "task",
391
- "issue"
392
- ]
393
- },
394
- "status": {
395
- "type": "string",
396
- "enum": [
397
- "pending",
398
- "active",
399
- "archived"
400
- ]
401
- },
402
- "maxDays": {
403
- "type": "number"
404
- },
405
- "window": {
406
- "type": "string"
407
- },
408
- "limit": {
409
- "type": "number"
410
- },
411
- "concurrency": {
412
- "type": "number"
413
- },
414
- "confirm": {
415
- "type": "string"
416
- },
417
- "cycle3Mode": {
418
- "type": "string",
419
- "enum": [
420
- "proposal",
421
- "conservative"
422
- ]
423
- },
424
- "project_id": {
425
- "type": "string"
426
- }
427
- },
428
- "required": [
429
- "action"
430
- ]
431
- },
432
- "module": "memory"
433
- },
434
- {
435
- "name": "recall",
436
- "title": "Recall",
437
- "annotations": {
438
- "title": "Recall",
439
- "readOnlyHint": true,
440
- "destructiveHint": false,
441
- "idempotentHint": true,
442
- "openWorldHint": false
443
- },
444
- "description": "Retrieve stored memory (past decisions, prior work, session history). Use when the user references earlier work (\"last time\", \"as we decided\"), when resuming a paused task, before re-proposing something possibly already decided, or when context beyond the injected core/recap slice is needed — the inject is a thin excerpt, not the store. query (string|array fan-out) and/or id; category/period/projectScope filters. Read-only and cheap: when in doubt, recall first.",
445
- "inputSchema": {
446
- "type": "object",
447
- "properties": {
448
- "query": {
449
- "anyOf": [
450
- {
451
- "type": "string"
452
- },
453
- {
454
- "type": "array",
455
- "items": {
456
- "type": "string"
457
- },
458
- "minItems": 1
459
- }
460
- ]
461
- },
462
- "id": {
463
- "anyOf": [
464
- {
465
- "type": "number"
466
- },
467
- {
468
- "type": "array",
469
- "items": {
470
- "type": "number"
471
- },
472
- "minItems": 1
473
- }
474
- ]
475
- },
476
- "period": {
477
- "type": "string"
478
- },
479
- "limit": {
480
- "type": "number"
481
- },
482
- "offset": {
483
- "type": "number"
484
- },
485
- "sort": {
486
- "type": "string",
487
- "enum": [
488
- "importance",
489
- "date"
490
- ]
491
- },
492
- "category": {
493
- "anyOf": [
494
- {
495
- "type": "string",
496
- "enum": [
497
- "rule",
498
- "constraint",
499
- "decision",
500
- "fact",
501
- "goal",
502
- "preference",
503
- "task",
504
- "issue"
505
- ]
506
- },
507
- {
508
- "type": "array",
509
- "items": {
510
- "type": "string",
511
- "enum": [
512
- "rule",
513
- "constraint",
514
- "decision",
515
- "fact",
516
- "goal",
517
- "preference",
518
- "task",
519
- "issue"
520
- ]
521
- },
522
- "minItems": 1
523
- }
524
- ]
525
- },
526
- "includeArchived": {
527
- "type": "boolean"
528
- },
529
- "projectScope": {
530
- "type": "string"
531
- },
532
- "cwd": {
533
- "type": "string"
534
- }
535
- },
536
- "additionalProperties": false
537
- },
538
- "module": "memory"
539
- },
540
- {
541
- "name": "search",
542
- "title": "Mixdog Web Search",
543
- "description": "Web search (SERP) for external/current info. Requires query (string|array). Snippets+URLs; web_fetch for bodies.",
544
- "inputSchema": {
545
- "type": "object",
546
- "properties": {
547
- "query": {
548
- "anyOf": [
549
- {
550
- "type": "string"
551
- },
552
- {
553
- "type": "array",
554
- "items": {
555
- "type": "string"
556
- },
557
- "minItems": 1
558
- }
559
- ]
560
- },
561
- "site": {
562
- "type": "string"
563
- },
564
- "type": {
565
- "type": "string",
566
- "enum": [
567
- "web",
568
- "news",
569
- "images"
570
- ]
571
- },
572
- "maxResults": {
573
- "type": "number",
574
- "minimum": 1,
575
- "maximum": 20
576
- },
577
- "locale": {
578
- "anyOf": [
579
- {
580
- "type": "string"
581
- },
582
- {
583
- "type": "object",
584
- "properties": {
585
- "country": {
586
- "type": "string"
587
- },
588
- "language": {
589
- "type": "string"
590
- },
591
- "region": {
592
- "type": "string"
593
- },
594
- "city": {
595
- "type": "string"
596
- },
597
- "timezone": {
598
- "type": "string"
599
- }
600
- },
601
- "additionalProperties": false
602
- }
603
- ]
604
- },
605
- "contextSize": {
606
- "type": "string",
607
- "enum": [
608
- "low",
609
- "medium",
610
- "high"
611
- ]
612
- }
613
- },
614
- "required": [
615
- "query"
616
- ],
617
- "additionalProperties": false
618
- },
619
- "annotations": {
620
- "title": "Mixdog Web Search",
621
- "readOnlyHint": true,
622
- "destructiveHint": false,
623
- "idempotentHint": true,
624
- "openWorldHint": true
625
- },
626
- "module": "search"
627
- },
628
- {
629
- "name": "web_fetch",
630
- "title": "Mixdog Web Fetch",
631
- "description": "Fetch full page body from a URL (web page, article, docs). Requires url. Use after search to read a result.",
632
- "inputSchema": {
633
- "type": "object",
634
- "properties": {
635
- "url": {
636
- "anyOf": [
637
- {
638
- "type": "string"
639
- },
640
- {
641
- "type": "array",
642
- "items": {
643
- "type": "string"
644
- },
645
- "minItems": 1
646
- }
647
- ]
648
- },
649
- "startIndex": {
650
- "type": "number",
651
- "minimum": 0
652
- },
653
- "maxLength": {
654
- "type": "number",
655
- "minimum": 0
656
- }
657
- },
658
- "required": [
659
- "url"
660
- ],
661
- "additionalProperties": false
662
- },
663
- "annotations": {
664
- "title": "Mixdog Web Fetch",
665
- "readOnlyHint": true,
666
- "destructiveHint": false,
667
- "idempotentHint": true,
668
- "openWorldHint": true
669
- },
670
- "module": "search"
671
- },
672
- {
673
- "name": "list_models",
674
- "title": "List Models",
675
- "annotations": {
676
- "title": "List Models",
677
- "readOnlyHint": true,
678
- "destructiveHint": false,
679
- "idempotentHint": true,
680
- "openWorldHint": false
681
- },
682
- "description": "List models.",
683
- "inputSchema": {
684
- "type": "object",
685
- "properties": {}
686
- },
687
- "module": "agent"
688
- },
689
- {
690
- "name": "explore",
691
- "title": "Explore",
692
- "aiWrapped": true,
693
- "annotations": {
694
- "title": "Explore",
695
- "readOnlyHint": true,
696
- "destructiveHint": false,
697
- "idempotentHint": true,
698
- "openWorldHint": false
699
- },
700
- "description": "Read-only codebase EXPLORATION — fact-finding only: locate/map where and how things are implemented, for open-ended/unknown scope (for a known or partial identifier use code_graph; recall=memory, search=web). NOT a reviewer/auditor: explorers LOCATE and DESCRIBE code, never judge it — bug/quality/risk claims in explore output are UNVERIFIED leads; verify them (reviewer role or direct reads) before acting on or reporting them. Shape every query as a LOCATION/INVENTORY question (\"where is X handled\", \"which files implement Y\", \"what does Z read/write\") — NEVER a verdict question (\"is X correct/missing/inconsistent?\", \"are there gaps/bugs?\"); the judgment stays with the caller, applied to the coordinates explore returns. Query shaping rules are on the query parameter — follow them. Fan-out runs items in parallel; wall-clock = the slowest item. LEAD: default background:true (answer pushed via channel, avoids the 120s sync cap). BRIDGE WORKERS run it sync and SHOULD prefer it for a tree-wide enumeration or broad/unanchored exploration — ONE call offloads the whole sweep into a sub-agent instead of a long grep/code_graph storm; a bounded/known-anchor lookup stays a direct code_graph/grep call.",
701
- "inputSchema": {
702
- "type": "object",
703
- "properties": {
704
- "query": {
705
- "anyOf": [
706
- {
707
- "type": "string"
708
- },
709
- {
710
- "type": "array",
711
- "items": {
712
- "type": "string"
713
- },
714
- "minItems": 1
715
- }
716
- ],
717
- "description": "Array of independent ONE-LINE questions: each item is ONE short question on ONE topic — do NOT pass a whole brief/context dump as one item; DECOMPOSE a multi-part task into several one-line per-topic questions here. Split by topic; never one broad query. Each item must be location/inventory-shaped (where/which/what), never verdict-shaped (is-it-correct / are-there-problems)."
718
- },
719
- "cwd": {
720
- "type": "string"
721
- },
722
- "background": {
723
- "type": "boolean"
724
- }
725
- },
726
- "required": [
727
- "query"
728
- ],
729
- "additionalProperties": false
730
- },
731
- "module": "agent"
732
- },
733
- {
734
- "name": "bridge",
735
- "title": "Bridge to External Model",
736
- "annotations": {
737
- "title": "Bridge to External Model",
738
- "readOnlyHint": false,
739
- "destructiveHint": true,
740
- "idempotentHint": false,
741
- "openWorldHint": true,
742
- "bridgeHidden": true
743
- },
744
- "description": "Unified worker session control. type selects the action (default \"spawn\"). spawn: dispatch a detached worker — requires role + message (alias: prompt); optional tag names the session for later send/close (auto \"<role><n>\" if omitted). send: resume a worker by tag (or raw sess_ id) — requires tag + message. To CONTINUE the same task on the same files/context — fix rounds, re-reviews, iterative refinement, or any follow-up — PREFER reusing the original tag over a new spawn: it preserves the worker's transcript + file context + change history, so it is faster, cheaper (the prompt cache stays warm), and more accurate than re-discovering from scratch. The return's respawned flag = false when the live session continued (context kept), true when a closed/cold tag was respawned fresh (context reset). close: stop a worker — requires tag. list: enumerate active worker sessions with stage/staleness — no args (optional role/status filter).",
745
- "inputSchema": {
746
- "type": "object",
747
- "properties": {
748
- "type": {
749
- "type": "string",
750
- "enum": [
751
- "spawn",
752
- "send",
753
- "close",
754
- "list"
755
- ],
756
- "description": "Action discriminator. Default \"spawn\"."
757
- },
758
- "role": {
759
- "type": "string",
760
- "description": "Worker role (from user-workflow). Required for spawn; optional filter for list."
761
- },
762
- "tag": {
763
- "type": "string",
764
- "description": "Stable session handle. spawn: optional name; send/close: required target (tag or raw sess_ id)."
765
- },
766
- "message": {
767
- "type": "string",
768
- "description": "Brief for spawn / follow-up for send. `prompt` is accepted as an alias on spawn. A spawn brief must state: goal+why, mode (write-code vs research-only), anchor (file:line/symbol/command), and done (output shape + stop condition)."
769
- },
770
- "prompt": {
771
- "type": "string",
772
- "description": "Alias of message for spawn (backward compat)."
773
- },
774
- "status": {
775
- "type": "string",
776
- "description": "list: optional status filter (e.g. running, idle, error)."
777
- },
778
- "provider": {
779
- "type": "string",
780
- "description": "spawn: override the worker provider."
781
- },
782
- "model": {
783
- "type": "string",
784
- "description": "spawn: override the worker model."
785
- },
786
- "effort": {
787
- "type": "string",
788
- "description": "spawn: reasoning effort level for the worker."
789
- },
790
- "fast": {
791
- "type": "boolean",
792
- "description": "spawn: enable fast mode (lower-latency, lighter worker)."
793
- },
794
- "preset": {
795
- "type": "string",
796
- "description": "spawn: profile preset selecting provider/model/effort."
797
- },
798
- "isolation": {
799
- "type": "string",
800
- "enum": [
801
- "worktree"
802
- ],
803
- "description": "spawn: run the worker in a dedicated git worktree + branch (opt-in; best-effort — falls back to the plain cwd outside a git repo). Use when parallel workers must edit the same files."
804
- },
805
- "brief": {
806
- "type": "boolean",
807
- "description": "list: return brief (condensed) session output."
808
- },
809
- "includeClosed": {
810
- "type": "boolean",
811
- "description": "list: include closed/finished sessions in the listing."
812
- },
813
- "context": {
814
- "type": "string"
815
- },
816
- "ref": {
817
- "type": "string"
818
- },
819
- "file": {
820
- "type": "string"
821
- },
822
- "cwd": {
823
- "type": "string"
824
- },
825
- "permission_mode": {
826
- "type": "string",
827
- "enum": [
828
- "default",
829
- "acceptEdits",
830
- "bypassPermissions",
831
- "plan"
832
- ]
833
- }
834
- },
835
- "required": []
836
- },
837
- "module": "agent"
838
- },
839
- {
840
- "name": "code_graph",
841
- "title": "Code Graph",
842
- "annotations": {
843
- "title": "Code Graph",
844
- "readOnlyHint": true,
845
- "destructiveHint": false,
846
- "idempotentHint": true,
847
- "openWorldHint": false,
848
- "compressible": false,
849
- "compressibleLossless": true
850
- },
851
- "description": "Query the project code graph by `mode` — ONE call replaces many grep+read turns; the first-class way to locate a SYMBOL (function/class/variable/constant) or map a file. Reach for it BEFORE grep — grep is only for free-text / non-symbol content (string literals, config keys, log messages, comments).\n\nUPSTREAM-TRACE RULE (read first): to find who ultimately triggers a symbol, make EXACTLY ONE `callers` call with depth:N (2-5) on the ROOT and treat the returned tree as the FINAL, COMPLETE answer — every returned caller node carries its call-site file:line, so do NOT re-run `callers` on a node listed in the tree and do NOT grep/read those nodes to verify. One call, then report — and if the result ends with \"# NEXT\", just re-run with page:N+1 (still code_graph, never grep/read) until \"# END\".\n\nMODES:\n• LOCATE — find_symbol (exact name; body:true by default returns location + callees + full body in one call) or search (keyword/substring, file-less; lists matching symbol names + declaration file:line).\n• FILE-SCOPED (set file:) — overview (file summary; OR omit file for a whole-project summary), symbols (symbols declared in the file), imports (the file imports), dependents (files that import it), related (connected files).\n• TRACE A SYMBOL — callers / callees / references (who calls / is called / uses). Omit file: for exhaustive cross-module results; add file: only to narrow.\n• IMPACT — file-scoped blast-radius for a file (file: required), optionally narrowed by symbol.\n• BATCH — find_symbol / callers / callees / references accept symbols:[] to run many names in ONE call, so a call chain costs one call per LEVEL, not per symbol.\n• PREWARM — warm the graph/symbol cache; returns immediately.",
852
- "inputSchema": {
853
- "type": "object",
854
- "properties": {
855
- "mode": {
856
- "type": "string",
857
- "enum": [
858
- "overview",
859
- "imports",
860
- "dependents",
861
- "related",
862
- "impact",
863
- "symbols",
864
- "find_symbol",
865
- "search",
866
- "references",
867
- "callers",
868
- "callees",
869
- "prewarm"
870
- ]
871
- },
872
- "file": {
873
- "type": "string",
874
- "description": "Target file (overview/symbols/imports/dependents/related/impact), or a scope filter on a symbol query."
875
- },
876
- "symbol": {
877
- "type": "string",
878
- "description": "Target identifier. For mode search, a keyword/substring to match symbol names (file-less)."
879
- },
880
- "symbols": {
881
- "type": "array",
882
- "items": {
883
- "type": "string"
884
- },
885
- "description": "Batch query: find_symbol/callers/callees/references (and prewarm) run once per name in a single call. Use symbol for a single lookup."
886
- },
887
- "body": {
888
- "type": "boolean",
889
- "description": "find_symbol: include the declaration body. DEFAULT true — one call returns location + callees + body, no follow-up read; pass false for a compact locate-only result. Bodies over 120 lines arrive head/tail-elided with a \"read <path> symbol=<name>\" hint for the full text (300-line hard cap)."
890
- },
891
- "language": {
892
- "type": "string",
893
- "description": "Optional language hint (auto-detected from the file extension otherwise)."
894
- },
895
- "limit": {
896
- "type": "number",
897
- "description": "Max results to return."
898
- },
899
- "depth": {
900
- "type": "number",
901
- "description": "callers only. 1 = direct callers (default). 2-5 returns the transitive caller TREE (caller-of-caller) in ONE call, each node tagged with its call-site file:line — see the UPSTREAM-TRACE RULE in the tool description. Name-based (same-named functions across files merge)."
902
- },
903
- "page": {
904
- "type": "number",
905
- "description": "callers tree (depth>=2) only: 1-based page, 100 nodes/page. On \"# NEXT\", re-run the SAME query with page:N+1 (per the UPSTREAM-TRACE RULE)."
906
- },
907
- "cwd": {
908
- "type": "string",
909
- "description": "Project root to scope the graph (defaults to the session cwd)."
910
- }
911
- },
912
- "required": [
913
- "mode"
914
- ]
915
- },
916
- "module": "code_graph"
917
- },
918
- {
919
- "name": "glob",
920
- "title": "Mixdog Glob",
921
- "annotations": {
922
- "title": "Mixdog Glob",
923
- "readOnlyHint": true,
924
- "destructiveHint": false,
925
- "idempotentHint": true,
926
- "openWorldHint": false,
927
- "compressible": true
928
- },
929
- "description": "Find files by glob pattern (mtime-sorted). For name/size/date filters use list mode:find.",
930
- "inputSchema": {
931
- "type": "object",
932
- "properties": {
933
- "pattern": {
934
- "anyOf": [
935
- {
936
- "type": "string"
937
- },
938
- {
939
- "type": "array",
940
- "items": {
941
- "type": "string"
942
- },
943
- "minItems": 1
944
- }
945
- ],
946
- "description": "Glob or array."
947
- },
948
- "path": {
949
- "anyOf": [
950
- {
951
- "type": "string"
952
- },
953
- {
954
- "type": "array",
955
- "items": {
956
- "type": "string"
957
- },
958
- "minItems": 1
959
- }
960
- ],
961
- "description": "Base dir or array."
962
- },
963
- "head_limit": {
964
- "type": "number",
965
- "description": "Max entries returned (mtime-sorted). A truncated listing ends with \"pass offset:N to continue\" — re-call with that offset to page."
966
- },
967
- "offset": {
968
- "type": "number",
969
- "description": "Skip N entries before head_limit applies; use the footer-suggested value to page."
970
- }
971
- },
972
- "required": [
973
- "pattern"
974
- ]
975
- },
976
- "module": "builtin"
977
- },
978
- {
979
- "name": "list",
980
- "title": "Mixdog List Directory",
981
- "annotations": {
982
- "title": "Mixdog List Directory",
983
- "readOnlyHint": true,
984
- "destructiveHint": false,
985
- "idempotentHint": true,
986
- "openWorldHint": false,
987
- "compressible": true
988
- },
989
- "description": "List or find directory entries. mode: list | tree | find (name/size/date filter). fuzzy ranks by partial name. Default cwd.",
990
- "inputSchema": {
991
- "type": "object",
992
- "properties": {
993
- "path": {
994
- "type": "string"
995
- },
996
- "mode": {
997
- "type": "string",
998
- "enum": [
999
- "list",
1000
- "tree",
1001
- "find"
1002
- ],
1003
- "description": "Default list (flat dir). tree = recursive tree; find = name/size/date filter."
1004
- },
1005
- "depth": {
1006
- "type": "number"
1007
- },
1008
- "hidden": {
1009
- "type": "boolean"
1010
- },
1011
- "sort": {
1012
- "type": "string",
1013
- "enum": [
1014
- "name",
1015
- "mtime",
1016
- "size"
1017
- ]
1018
- },
1019
- "type": {
1020
- "type": "string",
1021
- "enum": [
1022
- "any",
1023
- "file",
1024
- "dir"
1025
- ]
1026
- },
1027
- "head_limit": {
1028
- "type": "number",
1029
- "description": "Max entries returned. A truncated listing ends with \"[entries X-Y of T; pass offset:N to continue]\" — re-call with that offset to page."
1030
- },
1031
- "offset": {
1032
- "type": "number",
1033
- "description": "Skip N entries before head_limit applies; use the footer-suggested value to page."
1034
- },
1035
- "include_noise": {
1036
- "type": "boolean"
1037
- },
1038
- "name": {
1039
- "type": "string"
1040
- },
1041
- "min_size": {
1042
- "type": "number"
1043
- },
1044
- "max_size": {
1045
- "type": "number"
1046
- },
1047
- "modified_after": {
1048
- "type": "string"
1049
- },
1050
- "modified_before": {
1051
- "type": "string"
1052
- },
1053
- "fuzzy": {
1054
- "type": "string",
1055
- "description": "Rank files by subsequence match of this partial name; overrides mode. e.g. \"edeng\" -> edit-engine.mjs."
1056
- }
1057
- },
1058
- "required": []
1059
- },
1060
- "module": "builtin"
1061
- },
1062
- {
1063
- "name": "grep",
1064
- "title": "Mixdog Grep",
1065
- "annotations": {
1066
- "title": "Mixdog Grep",
1067
- "readOnlyHint": true,
1068
- "destructiveHint": false,
1069
- "idempotentHint": true,
1070
- "openWorldHint": false,
1071
- "compressible": true
1072
- },
1073
- "description": "Search file contents (ripgrep): free-text / non-symbol content. For a symbol by name use code_graph, not grep. pattern (regex) or glob. output_mode: content (default) | files_with_matches | count. Array pattern matches several in ONE call. -A/-B/-C is line-based — useless on minified/single-line files; use -o or multiline.",
1074
- "inputSchema": {
1075
- "type": "object",
1076
- "properties": {
1077
- "pattern": {
1078
- "anyOf": [
1079
- {
1080
- "type": "string"
1081
- },
1082
- {
1083
- "type": "array",
1084
- "items": {
1085
- "type": "string"
1086
- },
1087
- "minItems": 1
1088
- }
1089
- ],
1090
- "description": "Ripgrep regex, or an array of regexes (OR-matched; <=20, <=5 with multiline) to match several in one call."
1091
- },
1092
- "path": {
1093
- "type": "string"
1094
- },
1095
- "glob": {
1096
- "anyOf": [
1097
- {
1098
- "type": "string"
1099
- },
1100
- {
1101
- "type": "array",
1102
- "items": {
1103
- "type": "string"
1104
- },
1105
- "minItems": 1
1106
- }
1107
- ],
1108
- "description": "Glob, or an array of globs, to filter files."
1109
- },
1110
- "output_mode": {
1111
- "type": "string",
1112
- "enum": [
1113
- "files_with_matches",
1114
- "content",
1115
- "count"
1116
- ],
1117
- "description": "Default content (matching lines). files_with_matches = paths only; count = per-file counts."
1118
- },
1119
- "head_limit": {
1120
- "type": "number",
1121
- "description": "Max result lines (default 80; 0 = unlimited). Truncated output says how many results remain."
1122
- },
1123
- "offset": {
1124
- "type": "number",
1125
- "description": "Skip N result lines before head_limit applies — for paging large result sets."
1126
- },
1127
- "-i": {
1128
- "type": "boolean"
1129
- },
1130
- "-n": {
1131
- "type": "boolean"
1132
- },
1133
- "-A": {
1134
- "type": "number"
1135
- },
1136
- "-B": {
1137
- "type": "number"
1138
- },
1139
- "-C": {
1140
- "type": "number",
1141
- "description": "Context lines (with -A/-B). Line-based; no effect on single-line/minified files — use -o."
1142
- },
1143
- "context": {
1144
- "type": "number"
1145
- },
1146
- "multiline": {
1147
- "type": "boolean",
1148
- "description": "Dot matches newlines; patterns span lines (rg -U). Pair with -o on single-line/minified files."
1149
- },
1150
- "-o": {
1151
- "type": "boolean",
1152
- "description": "Only matching parts (rg --only-matching)."
1153
- },
1154
- "type": {
1155
- "type": "string"
1156
- }
1157
- },
1158
- "required": []
1159
- },
1160
- "module": "builtin"
1161
- },
1162
- {
1163
- "name": "read",
1164
- "title": "Mixdog Read",
1165
- "annotations": {
1166
- "title": "Mixdog Read",
1167
- "readOnlyHint": true,
1168
- "destructiveHint": false,
1169
- "idempotentHint": true,
1170
- "openWorldHint": false,
1171
- "compressible": false
1172
- },
1173
- "description": "Read file contents (path required). symbol=NAME = whole definition; offset/limit or line/context = window; mode/max_lines = whole-file glance. Batch all regions of a file in one call. Output is the file text verbatim (line-number prefix only, no character escaping) — a \\uXXXX you see is literally in the file.",
1174
- "inputSchema": {
1175
- "type": "object",
1176
- "properties": {
1177
- "path": {
1178
- "type": "string"
1179
- },
1180
- "offset": {
1181
- "type": "number",
1182
- "description": "Start line for a windowed read (1-based)."
1183
- },
1184
- "limit": {
1185
- "type": "number",
1186
- "description": "Max lines to read (default 2000; full:true uncaps)."
1187
- },
1188
- "line": {
1189
- "type": "number"
1190
- },
1191
- "context": {
1192
- "type": "number",
1193
- "description": "Lines around `line` (default 20)."
1194
- },
1195
- "pages": {
1196
- "type": "string"
1197
- },
1198
- "symbol": {
1199
- "type": "string",
1200
- "description": "Read a whole symbol body (function/class/const) via the code graph."
1201
- },
1202
- "language": {
1203
- "type": "string",
1204
- "description": "Language hint for symbol resolution."
1205
- },
1206
- "mode": {
1207
- "type": "string",
1208
- "enum": [
1209
- "head",
1210
- "tail",
1211
- "count",
1212
- "summary",
1213
- "hex"
1214
- ],
1215
- "description": "Whole-file glance: head/tail (first/last n), count (line/word/byte stats), summary (stats+head), hex (binary preview). For a window use offset/limit."
1216
- },
1217
- "n": {
1218
- "type": "number",
1219
- "description": "Line count for mode head/tail/summary (default 20)."
1220
- },
1221
- "full": {
1222
- "type": "boolean",
1223
- "description": "Default false. true = return whole file (bypass 2000-line cap; still byte-capped)."
1224
- },
1225
- "max_lines": {
1226
- "type": "number",
1227
- "description": "Whole-file read: cap output to ~N lines. Ignored with offset/limit/mode."
1228
- },
1229
- "budget": {
1230
- "type": "string",
1231
- "enum": [
1232
- "compact"
1233
- ],
1234
- "description": "Auto-shrink: whole-file -> count; line -> context<=20; range -> limit<=120."
1235
- }
1236
- }
1237
- },
1238
- "module": "builtin"
1239
- },
1240
- {
1241
- "name": "edit",
1242
- "title": "Mixdog Edit",
1243
- "annotations": {
1244
- "title": "Mixdog Edit",
1245
- "readOnlyHint": false,
1246
- "destructiveHint": true,
1247
- "idempotentHint": false,
1248
- "openWorldHint": false
1249
- },
1250
- "description": "Exact-string editor for small known substitutions; for large or structural changes prefer apply_patch. operation: replace (default) | notebook | rename.",
1251
- "inputSchema": {
1252
- "type": "object",
1253
- "properties": {
1254
- "operation": {
1255
- "type": "string",
1256
- "enum": [
1257
- "replace",
1258
- "notebook",
1259
- "rename"
1260
- ],
1261
- "description": "Edit mode: \"replace\" (default, exact text edit), \"notebook\" (Jupyter cell edit), or \"rename\" (symbol rename)."
1262
- },
1263
- "path": {
1264
- "type": "string"
1265
- },
1266
- "old_string": {
1267
- "type": "string"
1268
- },
1269
- "new_string": {
1270
- "type": "string"
1271
- },
1272
- "replace_all": {
1273
- "type": "boolean"
1274
- },
1275
- "edits": {
1276
- "type": "array",
1277
- "items": {
1278
- "type": "object",
1279
- "properties": {
1280
- "path": {
1281
- "type": "string"
1282
- },
1283
- "old_string": {
1284
- "type": "string"
1285
- },
1286
- "new_string": {
1287
- "type": "string"
1288
- },
1289
- "replace_all": {
1290
- "type": "boolean"
1291
- }
1292
- },
1293
- "required": [
1294
- "old_string",
1295
- "new_string"
1296
- ],
1297
- "additionalProperties": false
1298
- },
1299
- "minItems": 1,
1300
- "description": "Batch replacements (operation:\"replace\")."
1301
- },
1302
- "notebook_path": {
1303
- "type": "string",
1304
- "description": "operation:\"notebook\" — path to the .ipynb notebook to edit."
1305
- },
1306
- "cell_id": {
1307
- "type": "string",
1308
- "description": "operation:\"notebook\" — target cell: a real cell.id or a cell-N index. For insert, the new cell is placed after this cell (or at the start if omitted)."
1309
- },
1310
- "new_source": {
1311
- "type": "string",
1312
- "description": "operation:\"notebook\" — new source for the cell (not required for delete)."
1313
- },
1314
- "cell_type": {
1315
- "type": "string",
1316
- "enum": [
1317
- "code",
1318
- "markdown"
1319
- ],
1320
- "description": "operation:\"notebook\" — cell type. Required for insert; otherwise defaults to the current cell type."
1321
- },
1322
- "edit_mode": {
1323
- "type": "string",
1324
- "enum": [
1325
- "replace",
1326
- "insert",
1327
- "delete"
1328
- ],
1329
- "description": "operation:\"notebook\" — replace (default), insert, or delete."
1330
- },
1331
- "symbol": {
1332
- "type": "string",
1333
- "description": "operation:\"rename\" — identifier to rename."
1334
- },
1335
- "new_name": {
1336
- "type": "string",
1337
- "description": "operation:\"rename\" — new identifier."
1338
- },
1339
- "file": {
1340
- "type": "string",
1341
- "description": "operation:\"rename\" — optional file to scope the reference search."
1342
- },
1343
- "apply": {
1344
- "type": "boolean",
1345
- "description": "operation:\"rename\" — default false (preview). Set true to perform the rename."
1346
- }
1347
- }
1348
- },
1349
- "module": "builtin"
1350
- },
1351
- {
1352
- "name": "write",
1353
- "title": "Mixdog Write",
1354
- "annotations": {
1355
- "title": "Mixdog Write",
1356
- "readOnlyHint": false,
1357
- "destructiveHint": true,
1358
- "idempotentHint": false,
1359
- "openWorldHint": false
1360
- },
1361
- "description": "Write a whole file — new, or a full rewrite of one already read. For partial edits use apply_patch; never overwrite an unread file.",
1362
- "inputSchema": {
1363
- "type": "object",
1364
- "properties": {
1365
- "path": {
1366
- "type": "string"
1367
- },
1368
- "content": {
1369
- "type": "string"
1370
- },
1371
- "allow_unread_overwrite": {
1372
- "type": "boolean",
1373
- "description": "Default false. true = skip ONLY the read-before-overwrite snapshot gate when you already know the full intended content; all other write safety checks still apply."
1374
- },
1375
- "writes": {
1376
- "type": "array",
1377
- "items": {
1378
- "type": "object",
1379
- "properties": {
1380
- "path": {
1381
- "type": "string"
1382
- },
1383
- "content": {
1384
- "type": "string"
1385
- }
1386
- },
1387
- "required": [
1388
- "path",
1389
- "content"
1390
- ],
1391
- "additionalProperties": false
1392
- },
1393
- "minItems": 1,
1394
- "description": "Batch writes."
1395
- }
1396
- }
1397
- },
1398
- "module": "builtin"
1399
- },
1400
- {
1401
- "name": "apply_patch",
1402
- "title": "Mixdog Apply Patch",
1403
- "annotations": {
1404
- "title": "Mixdog Apply Patch",
1405
- "readOnlyHint": false,
1406
- "destructiveHint": true,
1407
- "idempotentHint": false,
1408
- "openWorldHint": false,
1409
- "compressible": false,
1410
- "compressibleLossless": true
1411
- },
1412
- "description": "The default editor for existing files — prefer over write/edit for any non-trivial change: self-validating — the hunk context lines ARE the match proof, so they must match the CURRENT file bytes EXACTLY (indentation included). If you have not read the target region this turn, read it first; guessed or stale context is the top cause of \"context not found\". Apply a patch (unified or V4A); set base_path to the repo root so a/... paths resolve. Multi-hunk/multi-file; dry_run validates without writing. Prefer V4A; see patch field for hunk syntax.",
1413
- "inputSchema": {
1414
- "type": "object",
1415
- "properties": {
1416
- "patch": {
1417
- "type": "string",
1418
- "description": "Patch text; match `format`. V4A (preferred): `*** Begin Patch`…`*** End Patch`; per file `*** Update/Add/Delete File: <real path>` (no `a/`·`b/`); body lines ` `=context/`-`=del/`+`=add. Include ~3 UNCHANGED context lines above AND below each change, copied verbatim from the current file (indentation included). If 3 lines do not uniquely locate the snippet, add `@@ <enclosing class/function>` immediately above it; if a block repeats so often that one `@@`+3 lines is still ambiguous, stack multiple `@@` (e.g. `@@ class Foo` then `@@ def bar():`). `@@ <ctx>` anchors must quote a UNIQUE line ABOVE the whole context block — NOT a line you also include in the hunk body, and never below the edit (→ \"context not found\"). For files without classes/functions (JSON, config), prefer extra context lines over `@@`, or anchor on the enclosing key (e.g. `@@ \"items\": [`). No line counts. Unified: counted `@@ -A,B +C,D @@` headers required (bare `@@` rejected); `a/`·`b/` prefixes stripped on apply."
1419
- },
1420
- "format": {
1421
- "type": "string",
1422
- "enum": [
1423
- "unified",
1424
- "v4a"
1425
- ],
1426
- "description": "Auto-detected if omitted. Prefer v4a (`*** Begin Patch` envelope, `@@ <ctx>` anchors, no line counts); unified needs counted `@@ -A,B +C,D @@` headers."
1427
- },
1428
- "base_path": {
1429
- "type": "string",
1430
- "description": "Repo root so a/... paths resolve."
1431
- },
1432
- "dry_run": {
1433
- "type": "boolean",
1434
- "description": "Default false. true = validate only, no write."
1435
- },
1436
- "reject_partial": {
1437
- "type": "boolean",
1438
- "description": "Default true (all-or-nothing). false = apply landed hunks, skip failures."
1439
- },
1440
- "fuzzy": {
1441
- "type": "boolean",
1442
- "description": "Default true: tolerate minor context drift; false = exact match."
1443
- }
1444
- },
1445
- "required": [
1446
- "patch"
1447
- ]
1448
- },
1449
- "module": "patch"
1450
- },
1451
- {
1452
- "name": "bash",
1453
- "title": "Mixdog Shell",
1454
- "annotations": {
1455
- "title": "Mixdog Shell",
1456
- "readOnlyHint": false,
1457
- "destructiveHint": true,
1458
- "idempotentHint": false,
1459
- "openWorldHint": true,
1460
- "compressible": true
1461
- },
1462
- "description": "Shell for git/build/test/run. ALWAYS set `shell` explicitly ('bash' = POSIX via Git Bash, 'powershell' = PS cmdlets); omitting defaults to the OS shell (Windows = PowerShell, POSIX = /bin/sh) and mis-parses the other syntax. run_in_background works for both shells, including Windows shell:'bash' (Git Bash). Single shell entry point; not for inline code you were asked to return.",
1463
- "inputSchema": {
1464
- "type": "object",
1465
- "properties": {
1466
- "command": {
1467
- "type": "string"
1468
- },
1469
- "cwd": {
1470
- "type": "string"
1471
- },
1472
- "timeout": {
1473
- "type": "number",
1474
- "description": "Timeout in ms, or seconds when <=600."
1475
- },
1476
- "merge_stderr": {
1477
- "type": "boolean"
1478
- },
1479
- "run_in_background": {
1480
- "type": "boolean"
1481
- },
1482
- "persistent": {
1483
- "type": "boolean"
1484
- },
1485
- "session_id": {
1486
- "type": "string"
1487
- },
1488
- "create": {
1489
- "type": "boolean",
1490
- "description": "Allow creating a new persistent session for an explicit session_id."
1491
- },
1492
- "close": {
1493
- "type": "boolean"
1494
- },
1495
- "shell": {
1496
- "type": "string",
1497
- "enum": [
1498
- "bash",
1499
- "powershell"
1500
- ],
1501
- "description": "Force the shell. On Windows: 'bash' runs the command through Git Bash (POSIX syntax), 'powershell' forces PowerShell. On POSIX: 'powershell' resolves pwsh if installed (errors if absent); 'bash' is /bin/sh (already the default). Always set this explicitly; omitting uses the OS default (PowerShell on Windows), where POSIX syntax fails to parse."
1502
- }
1503
- },
1504
- "required": [
1505
- "command"
1506
- ]
1507
- },
1508
- "module": "builtin"
1509
- },
1510
- {
1511
- "name": "job_wait",
1512
- "title": "Background Job Control",
1513
- "annotations": {
1514
- "title": "Background Job Control",
1515
- "readOnlyHint": false,
1516
- "destructiveHint": false,
1517
- "idempotentHint": false,
1518
- "openWorldHint": false
1519
- },
1520
- "description": "Control a bash run_in_background job by job_id. action: wait (default) | peek | kill. Not for bridge_*/sess_* ids.",
1521
- "inputSchema": {
1522
- "type": "object",
1523
- "properties": {
1524
- "job_id": {
1525
- "type": "string",
1526
- "description": "job_id from bash with run_in_background:true."
1527
- },
1528
- "action": {
1529
- "type": "string",
1530
- "enum": [
1531
- "wait",
1532
- "peek",
1533
- "kill"
1534
- ],
1535
- "description": "wait (default) = block until done; peek = non-blocking status + output tail; kill = terminate."
1536
- },
1537
- "timeout_ms": {
1538
- "type": "number"
1539
- },
1540
- "poll_ms": {
1541
- "type": "number"
1542
- }
1543
- },
1544
- "required": [
1545
- "job_id"
1546
- ]
1547
- },
1548
- "module": "builtin"
1549
- },
1550
- {
1551
- "name": "diagnostics",
1552
- "title": "Mixdog Diagnostics",
1553
- "annotations": {
1554
- "title": "Mixdog Diagnostics",
1555
- "readOnlyHint": false,
1556
- "destructiveHint": false,
1557
- "idempotentHint": false,
1558
- "openWorldHint": true,
1559
- "compressible": true
1560
- },
1561
- "description": "Run the matching type/lint checker under path (tsc/eslint/ruff/etc.). Default cwd; no LSP.",
1562
- "inputSchema": {
1563
- "type": "object",
1564
- "properties": {
1565
- "path": {
1566
- "type": "string",
1567
- "description": "File or directory to diagnose. Defaults to cwd."
1568
- }
1569
- },
1570
- "required": []
1571
- },
1572
- "module": "builtin"
1573
- },
1574
- {
1575
- "name": "open_config",
1576
- "title": "Open Config UI",
1577
- "annotations": {
1578
- "title": "Open Config UI",
1579
- "readOnlyHint": false,
1580
- "destructiveHint": false,
1581
- "idempotentHint": true,
1582
- "openWorldHint": false
1583
- },
1584
- "description": "Open the mixdog settings UI (Providers + Presets) in the browser. Starts the resident config server if needed and returns the UI URL. No params.",
1585
- "inputSchema": {
1586
- "type": "object",
1587
- "properties": {}
1588
- },
1589
- "module": "builtin"
1590
- },
1591
- {
1592
- "name": "inject_input",
1593
- "title": "Inject Input",
1594
- "annotations": {
1595
- "title": "Inject Input",
1596
- "readOnlyHint": false,
1597
- "destructiveHint": true,
1598
- "idempotentHint": false,
1599
- "openWorldHint": true,
1600
- "compressible": false
1601
- },
1602
- "description": "Inject text into the host session as if the user typed it at the prompt. Requires text.",
1603
- "inputSchema": {
1604
- "type": "object",
1605
- "properties": {
1606
- "text": {
1607
- "type": "string",
1608
- "minLength": 1
1609
- }
1610
- },
1611
- "required": [
1612
- "text"
1613
- ],
1614
- "additionalProperties": false
1615
- },
1616
- "module": "host_input"
1617
- },
1618
- {
1619
- "name": "cwd",
1620
- "title": "Session CWD",
1621
- "annotations": {
1622
- "title": "Session CWD",
1623
- "readOnlyHint": false,
1624
- "destructiveHint": false,
1625
- "idempotentHint": true,
1626
- "openWorldHint": false
1627
- },
1628
- "description": "Session cwd for relative paths (not a sandbox): get/set/list. set updates session-wide cwd for tools and bridge workers — set on project switch. list: repos you commit to (cwd.identityEmails), minus plugin-cache/codex; all:true for full scan.",
1629
- "inputSchema": {
1630
- "type": "object",
1631
- "properties": {
1632
- "action": {
1633
- "type": "string",
1634
- "enum": [
1635
- "get",
1636
- "set",
1637
- "list"
1638
- ]
1639
- },
1640
- "path": {
1641
- "type": "string"
1642
- },
1643
- "refresh": {
1644
- "type": "boolean"
1645
- },
1646
- "all": {
1647
- "type": "boolean"
1648
- }
1649
- }
1650
- },
1651
- "module": "cwd"
1652
- }
1653
- ]