open-multi-agent-kit 0.78.8 → 0.79.1

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 (2267) hide show
  1. package/CHANGELOG.md +4252 -397
  2. package/README.md +541 -267
  3. package/dist/bun/cli.d.ts +3 -0
  4. package/dist/bun/cli.d.ts.map +1 -0
  5. package/dist/bun/cli.js +10 -0
  6. package/dist/bun/cli.js.map +1 -0
  7. package/dist/bun/register-bedrock.d.ts +2 -0
  8. package/dist/bun/register-bedrock.d.ts.map +1 -0
  9. package/dist/bun/register-bedrock.js +4 -0
  10. package/dist/bun/register-bedrock.js.map +1 -0
  11. package/dist/bun/restore-sandbox-env.d.ts +13 -0
  12. package/dist/bun/restore-sandbox-env.d.ts.map +1 -0
  13. package/dist/bun/restore-sandbox-env.js +32 -0
  14. package/dist/bun/restore-sandbox-env.js.map +1 -0
  15. package/dist/cli/args.d.ts +56 -0
  16. package/dist/cli/args.d.ts.map +1 -0
  17. package/dist/cli/args.js +392 -0
  18. package/dist/cli/args.js.map +1 -0
  19. package/dist/cli/config-selector.d.ts +14 -0
  20. package/dist/cli/config-selector.d.ts.map +1 -0
  21. package/dist/cli/config-selector.js +31 -0
  22. package/dist/cli/config-selector.js.map +1 -0
  23. package/dist/cli/file-processor.d.ts +15 -0
  24. package/dist/cli/file-processor.d.ts.map +1 -0
  25. package/dist/cli/file-processor.js +82 -0
  26. package/dist/cli/file-processor.js.map +1 -0
  27. package/dist/cli/initial-message.d.ts +18 -0
  28. package/dist/cli/initial-message.d.ts.map +1 -0
  29. package/dist/cli/initial-message.js +22 -0
  30. package/dist/cli/initial-message.js.map +1 -0
  31. package/dist/cli/list-models.d.ts +9 -0
  32. package/dist/cli/list-models.d.ts.map +1 -0
  33. package/dist/cli/list-models.js +98 -0
  34. package/dist/cli/list-models.js.map +1 -0
  35. package/dist/cli/session-picker.d.ts +9 -0
  36. package/dist/cli/session-picker.d.ts.map +1 -0
  37. package/dist/cli/session-picker.js +35 -0
  38. package/dist/cli/session-picker.js.map +1 -0
  39. package/dist/cli.d.ts +1 -0
  40. package/dist/cli.d.ts.map +1 -0
  41. package/dist/cli.js +17 -16
  42. package/dist/cli.js.map +1 -0
  43. package/dist/config.d.ts +132 -0
  44. package/dist/config.d.ts.map +1 -0
  45. package/dist/config.js +529 -0
  46. package/dist/config.js.map +1 -0
  47. package/dist/core/adaptive-runtime.d.ts +150 -0
  48. package/dist/core/adaptive-runtime.d.ts.map +1 -0
  49. package/dist/core/adaptive-runtime.js +378 -0
  50. package/dist/core/adaptive-runtime.js.map +1 -0
  51. package/dist/core/agent-session-runtime.d.ts +117 -0
  52. package/dist/core/agent-session-runtime.d.ts.map +1 -0
  53. package/dist/core/agent-session-runtime.js +300 -0
  54. package/dist/core/agent-session-runtime.js.map +1 -0
  55. package/dist/core/agent-session-services.d.ts +87 -0
  56. package/dist/core/agent-session-services.d.ts.map +1 -0
  57. package/dist/core/agent-session-services.js +119 -0
  58. package/dist/core/agent-session-services.js.map +1 -0
  59. package/dist/core/agent-session.d.ts +604 -0
  60. package/dist/core/agent-session.d.ts.map +1 -0
  61. package/dist/core/agent-session.js +2535 -0
  62. package/dist/core/agent-session.js.map +1 -0
  63. package/dist/core/auth-guidance.d.ts +5 -0
  64. package/dist/core/auth-guidance.d.ts.map +1 -0
  65. package/dist/core/auth-guidance.js +21 -0
  66. package/dist/core/auth-guidance.js.map +1 -0
  67. package/dist/core/auth-storage.d.ts +141 -0
  68. package/dist/core/auth-storage.d.ts.map +1 -0
  69. package/dist/core/auth-storage.js +445 -0
  70. package/dist/core/auth-storage.js.map +1 -0
  71. package/dist/core/bash-executor.d.ts +32 -0
  72. package/dist/core/bash-executor.d.ts.map +1 -0
  73. package/dist/core/bash-executor.js +111 -0
  74. package/dist/core/bash-executor.js.map +1 -0
  75. package/dist/core/compaction/branch-summarization.d.ts +90 -0
  76. package/dist/core/compaction/branch-summarization.d.ts.map +1 -0
  77. package/dist/core/compaction/branch-summarization.js +249 -0
  78. package/dist/core/compaction/branch-summarization.js.map +1 -0
  79. package/dist/core/compaction/compaction.d.ts +132 -0
  80. package/dist/core/compaction/compaction.d.ts.map +1 -0
  81. package/dist/core/compaction/compaction.js +635 -0
  82. package/dist/core/compaction/compaction.js.map +1 -0
  83. package/dist/core/compaction/index.d.ts +7 -0
  84. package/dist/core/compaction/index.d.ts.map +1 -0
  85. package/dist/core/compaction/index.js +7 -0
  86. package/dist/core/compaction/index.js.map +1 -0
  87. package/dist/core/compaction/utils.d.ts +38 -0
  88. package/dist/core/compaction/utils.d.ts.map +1 -0
  89. package/dist/core/compaction/utils.js +153 -0
  90. package/dist/core/compaction/utils.js.map +1 -0
  91. package/dist/core/defaults.d.ts +3 -0
  92. package/dist/core/defaults.d.ts.map +1 -0
  93. package/dist/core/defaults.js +2 -0
  94. package/dist/core/defaults.js.map +1 -0
  95. package/dist/core/diagnostics.d.ts +15 -0
  96. package/dist/core/diagnostics.d.ts.map +1 -0
  97. package/dist/core/diagnostics.js +2 -0
  98. package/dist/core/diagnostics.js.map +1 -0
  99. package/dist/core/event-bus.d.ts +9 -0
  100. package/dist/core/event-bus.d.ts.map +1 -0
  101. package/dist/core/event-bus.js +25 -0
  102. package/dist/core/event-bus.js.map +1 -0
  103. package/dist/core/exec.d.ts +29 -0
  104. package/dist/core/exec.d.ts.map +1 -0
  105. package/dist/core/exec.js +75 -0
  106. package/dist/core/exec.js.map +1 -0
  107. package/dist/core/export-html/ansi-to-html.d.ts +22 -0
  108. package/dist/core/export-html/ansi-to-html.d.ts.map +1 -0
  109. package/dist/core/export-html/ansi-to-html.js +249 -0
  110. package/dist/core/export-html/ansi-to-html.js.map +1 -0
  111. package/dist/core/export-html/index.d.ts +37 -0
  112. package/dist/core/export-html/index.d.ts.map +1 -0
  113. package/dist/core/export-html/index.js +226 -0
  114. package/dist/core/export-html/index.js.map +1 -0
  115. package/dist/core/export-html/template.css +1066 -0
  116. package/dist/core/export-html/template.html +55 -0
  117. package/dist/core/export-html/template.js +1864 -0
  118. package/dist/core/export-html/tool-renderer.d.ts +34 -0
  119. package/dist/core/export-html/tool-renderer.d.ts.map +1 -0
  120. package/dist/core/export-html/tool-renderer.js +108 -0
  121. package/dist/core/export-html/tool-renderer.js.map +1 -0
  122. package/dist/core/export-html/vendor/highlight.min.js +1213 -0
  123. package/dist/core/export-html/vendor/marked.min.js +6 -0
  124. package/dist/core/extensions/index.d.ts +12 -0
  125. package/dist/core/extensions/index.d.ts.map +1 -0
  126. package/dist/core/extensions/index.js +9 -0
  127. package/dist/core/extensions/index.js.map +1 -0
  128. package/dist/core/extensions/loader.d.ts +24 -0
  129. package/dist/core/extensions/loader.d.ts.map +1 -0
  130. package/dist/core/extensions/loader.js +494 -0
  131. package/dist/core/extensions/loader.js.map +1 -0
  132. package/dist/core/extensions/runner.d.ts +161 -0
  133. package/dist/core/extensions/runner.d.ts.map +1 -0
  134. package/dist/core/extensions/runner.js +842 -0
  135. package/dist/core/extensions/runner.js.map +1 -0
  136. package/dist/core/extensions/types.d.ts +1181 -0
  137. package/dist/core/extensions/types.d.ts.map +1 -0
  138. package/dist/core/extensions/types.js +45 -0
  139. package/dist/core/extensions/types.js.map +1 -0
  140. package/dist/core/extensions/wrapper.d.ts +20 -0
  141. package/dist/core/extensions/wrapper.d.ts.map +1 -0
  142. package/dist/core/extensions/wrapper.js +22 -0
  143. package/dist/core/extensions/wrapper.js.map +1 -0
  144. package/dist/core/footer-data-provider.d.ts +54 -0
  145. package/dist/core/footer-data-provider.d.ts.map +1 -0
  146. package/dist/core/footer-data-provider.js +338 -0
  147. package/dist/core/footer-data-provider.js.map +1 -0
  148. package/dist/core/http-dispatcher.d.ts +21 -0
  149. package/dist/core/http-dispatcher.d.ts.map +1 -0
  150. package/dist/core/http-dispatcher.js +48 -0
  151. package/dist/core/http-dispatcher.js.map +1 -0
  152. package/dist/core/index.d.ts +12 -0
  153. package/dist/core/index.d.ts.map +1 -0
  154. package/dist/core/index.js +12 -0
  155. package/dist/core/index.js.map +1 -0
  156. package/dist/core/keybindings.d.ts +353 -0
  157. package/dist/core/keybindings.d.ts.map +1 -0
  158. package/dist/core/keybindings.js +295 -0
  159. package/dist/core/keybindings.js.map +1 -0
  160. package/dist/core/messages.d.ts +77 -0
  161. package/dist/core/messages.d.ts.map +1 -0
  162. package/dist/core/messages.js +123 -0
  163. package/dist/core/messages.js.map +1 -0
  164. package/dist/core/model-registry.d.ts +150 -0
  165. package/dist/core/model-registry.d.ts.map +1 -0
  166. package/dist/core/model-registry.js +789 -0
  167. package/dist/core/model-registry.js.map +1 -0
  168. package/dist/core/model-resolver.d.ts +110 -0
  169. package/dist/core/model-resolver.d.ts.map +1 -0
  170. package/dist/core/model-resolver.js +495 -0
  171. package/dist/core/model-resolver.js.map +1 -0
  172. package/dist/core/omk-control.d.ts +62 -0
  173. package/dist/core/omk-control.d.ts.map +1 -0
  174. package/dist/core/omk-control.js +190 -0
  175. package/dist/core/omk-control.js.map +1 -0
  176. package/dist/core/omk-subagent.d.ts +17 -0
  177. package/dist/core/omk-subagent.d.ts.map +1 -0
  178. package/dist/core/omk-subagent.js +704 -0
  179. package/dist/core/omk-subagent.js.map +1 -0
  180. package/dist/core/output-guard.d.ts +7 -0
  181. package/dist/core/output-guard.d.ts.map +1 -0
  182. package/dist/core/output-guard.js +89 -0
  183. package/dist/core/output-guard.js.map +1 -0
  184. package/dist/core/package-manager.d.ts +206 -0
  185. package/dist/core/package-manager.d.ts.map +1 -0
  186. package/dist/core/package-manager.js +2056 -0
  187. package/dist/core/package-manager.js.map +1 -0
  188. package/dist/core/prompt-templates.d.ts +52 -0
  189. package/dist/core/prompt-templates.d.ts.map +1 -0
  190. package/dist/core/prompt-templates.js +238 -0
  191. package/dist/core/prompt-templates.js.map +1 -0
  192. package/dist/core/provider-attribution.d.ts +4 -0
  193. package/dist/core/provider-attribution.d.ts.map +1 -0
  194. package/dist/core/provider-attribution.js +78 -0
  195. package/dist/core/provider-attribution.js.map +1 -0
  196. package/dist/core/provider-display-names.d.ts +2 -0
  197. package/dist/core/provider-display-names.d.ts.map +1 -0
  198. package/dist/core/provider-display-names.js +35 -0
  199. package/dist/core/provider-display-names.js.map +1 -0
  200. package/dist/core/resolve-config-value.d.ts +31 -0
  201. package/dist/core/resolve-config-value.d.ts.map +1 -0
  202. package/dist/core/resolve-config-value.js +249 -0
  203. package/dist/core/resolve-config-value.js.map +1 -0
  204. package/dist/core/resource-loader.d.ts +194 -0
  205. package/dist/core/resource-loader.d.ts.map +1 -0
  206. package/dist/core/resource-loader.js +740 -0
  207. package/dist/core/resource-loader.js.map +1 -0
  208. package/dist/core/runtime-defaults.d.ts +14 -0
  209. package/dist/core/runtime-defaults.d.ts.map +1 -0
  210. package/dist/core/runtime-defaults.js +15 -0
  211. package/dist/core/runtime-defaults.js.map +1 -0
  212. package/dist/core/sdk.d.ts +109 -0
  213. package/dist/core/sdk.d.ts.map +1 -0
  214. package/dist/core/sdk.js +270 -0
  215. package/dist/core/sdk.js.map +1 -0
  216. package/dist/core/session-cwd.d.ts +19 -0
  217. package/dist/core/session-cwd.d.ts.map +1 -0
  218. package/dist/core/session-cwd.js +38 -0
  219. package/dist/core/session-cwd.js.map +1 -0
  220. package/dist/core/session-manager.d.ts +332 -0
  221. package/dist/core/session-manager.d.ts.map +1 -0
  222. package/dist/core/session-manager.js +1218 -0
  223. package/dist/core/session-manager.js.map +1 -0
  224. package/dist/core/settings-manager.d.ts +273 -0
  225. package/dist/core/settings-manager.d.ts.map +1 -0
  226. package/dist/core/settings-manager.js +839 -0
  227. package/dist/core/settings-manager.js.map +1 -0
  228. package/dist/core/skills.d.ts +60 -0
  229. package/dist/core/skills.d.ts.map +1 -0
  230. package/dist/core/skills.js +387 -0
  231. package/dist/core/skills.js.map +1 -0
  232. package/dist/core/slash-commands.d.ts +26 -0
  233. package/dist/core/slash-commands.d.ts.map +1 -0
  234. package/dist/core/slash-commands.js +98 -0
  235. package/dist/core/slash-commands.js.map +1 -0
  236. package/dist/core/source-info.d.ts +18 -0
  237. package/dist/core/source-info.d.ts.map +1 -0
  238. package/dist/core/source-info.js +19 -0
  239. package/dist/core/source-info.js.map +1 -0
  240. package/dist/core/system-prompt.d.ts +28 -0
  241. package/dist/core/system-prompt.d.ts.map +1 -0
  242. package/dist/core/system-prompt.js +120 -0
  243. package/dist/core/system-prompt.js.map +1 -0
  244. package/dist/core/telemetry.d.ts +3 -0
  245. package/dist/core/telemetry.d.ts.map +1 -0
  246. package/dist/core/telemetry.js +10 -0
  247. package/dist/core/telemetry.js.map +1 -0
  248. package/dist/core/timings.d.ts +4 -0
  249. package/dist/core/timings.d.ts.map +1 -0
  250. package/dist/core/timings.js +32 -0
  251. package/dist/core/timings.js.map +1 -0
  252. package/dist/core/tools/bash.d.ts +68 -0
  253. package/dist/core/tools/bash.d.ts.map +1 -0
  254. package/dist/core/tools/bash.js +337 -0
  255. package/dist/core/tools/bash.js.map +1 -0
  256. package/dist/core/tools/edit-diff.d.ts +87 -0
  257. package/dist/core/tools/edit-diff.d.ts.map +1 -0
  258. package/dist/core/tools/edit-diff.js +345 -0
  259. package/dist/core/tools/edit-diff.js.map +1 -0
  260. package/dist/core/tools/edit.d.ts +51 -0
  261. package/dist/core/tools/edit.d.ts.map +1 -0
  262. package/dist/core/tools/edit.js +284 -0
  263. package/dist/core/tools/edit.js.map +1 -0
  264. package/dist/core/tools/file-mutation-queue.d.ts +6 -0
  265. package/dist/core/tools/file-mutation-queue.d.ts.map +1 -0
  266. package/dist/core/tools/file-mutation-queue.js +52 -0
  267. package/dist/core/tools/file-mutation-queue.js.map +1 -0
  268. package/dist/core/tools/find.d.ts +35 -0
  269. package/dist/core/tools/find.d.ts.map +1 -0
  270. package/dist/core/tools/find.js +297 -0
  271. package/dist/core/tools/find.js.map +1 -0
  272. package/dist/core/tools/grep.d.ts +37 -0
  273. package/dist/core/tools/grep.d.ts.map +1 -0
  274. package/dist/core/tools/grep.js +304 -0
  275. package/dist/core/tools/grep.js.map +1 -0
  276. package/dist/core/tools/index.d.ts +40 -0
  277. package/dist/core/tools/index.d.ts.map +1 -0
  278. package/dist/core/tools/index.js +112 -0
  279. package/dist/core/tools/index.js.map +1 -0
  280. package/dist/core/tools/ls.d.ts +37 -0
  281. package/dist/core/tools/ls.d.ts.map +1 -0
  282. package/dist/core/tools/ls.js +167 -0
  283. package/dist/core/tools/ls.js.map +1 -0
  284. package/dist/core/tools/output-accumulator.d.ts +52 -0
  285. package/dist/core/tools/output-accumulator.d.ts.map +1 -0
  286. package/dist/core/tools/output-accumulator.js +184 -0
  287. package/dist/core/tools/output-accumulator.js.map +1 -0
  288. package/dist/core/tools/path-utils.d.ts +10 -0
  289. package/dist/core/tools/path-utils.d.ts.map +1 -0
  290. package/dist/core/tools/path-utils.js +99 -0
  291. package/dist/core/tools/path-utils.js.map +1 -0
  292. package/dist/core/tools/read.d.ts +35 -0
  293. package/dist/core/tools/read.d.ts.map +1 -0
  294. package/dist/core/tools/read.js +289 -0
  295. package/dist/core/tools/read.js.map +1 -0
  296. package/dist/core/tools/render-utils.d.ts +24 -0
  297. package/dist/core/tools/render-utils.d.ts.map +1 -0
  298. package/dist/core/tools/render-utils.js +65 -0
  299. package/dist/core/tools/render-utils.js.map +1 -0
  300. package/dist/core/tools/tool-definition-wrapper.d.ts +14 -0
  301. package/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -0
  302. package/dist/core/tools/tool-definition-wrapper.js +34 -0
  303. package/dist/core/tools/tool-definition-wrapper.js.map +1 -0
  304. package/dist/core/tools/truncate.d.ts +70 -0
  305. package/dist/core/tools/truncate.d.ts.map +1 -0
  306. package/dist/core/tools/truncate.js +215 -0
  307. package/dist/core/tools/truncate.js.map +1 -0
  308. package/dist/core/tools/write.d.ts +26 -0
  309. package/dist/core/tools/write.d.ts.map +1 -0
  310. package/dist/core/tools/write.js +197 -0
  311. package/dist/core/tools/write.js.map +1 -0
  312. package/dist/index.d.ts +32 -0
  313. package/dist/index.d.ts.map +1 -0
  314. package/dist/index.js +45 -0
  315. package/dist/index.js.map +1 -0
  316. package/dist/main.d.ts +12 -0
  317. package/dist/main.d.ts.map +1 -0
  318. package/dist/main.js +673 -0
  319. package/dist/main.js.map +1 -0
  320. package/dist/migrations.d.ts +35 -0
  321. package/dist/migrations.d.ts.map +1 -0
  322. package/dist/migrations.js +401 -0
  323. package/dist/migrations.js.map +1 -0
  324. package/dist/modes/index.d.ts +9 -0
  325. package/dist/modes/index.d.ts.map +1 -0
  326. package/dist/modes/index.js +8 -0
  327. package/dist/modes/index.js.map +1 -0
  328. package/dist/modes/interactive/assets/clankolas.png +0 -0
  329. package/dist/modes/interactive/cockpit-scroll.d.ts +54 -0
  330. package/dist/modes/interactive/cockpit-scroll.d.ts.map +1 -0
  331. package/dist/modes/interactive/cockpit-scroll.js +133 -0
  332. package/dist/modes/interactive/cockpit-scroll.js.map +1 -0
  333. package/dist/modes/interactive/components/armin.d.ts +34 -0
  334. package/dist/modes/interactive/components/armin.d.ts.map +1 -0
  335. package/dist/modes/interactive/components/armin.js +333 -0
  336. package/dist/modes/interactive/components/armin.js.map +1 -0
  337. package/dist/modes/interactive/components/assistant-message.d.ts +20 -0
  338. package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -0
  339. package/dist/modes/interactive/components/assistant-message.js +121 -0
  340. package/dist/modes/interactive/components/assistant-message.js.map +1 -0
  341. package/dist/modes/interactive/components/bash-execution.d.ts +34 -0
  342. package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -0
  343. package/dist/modes/interactive/components/bash-execution.js +175 -0
  344. package/dist/modes/interactive/components/bash-execution.js.map +1 -0
  345. package/dist/modes/interactive/components/bordered-loader.d.ts +16 -0
  346. package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -0
  347. package/dist/modes/interactive/components/bordered-loader.js +54 -0
  348. package/dist/modes/interactive/components/bordered-loader.js.map +1 -0
  349. package/dist/modes/interactive/components/branch-summary-message.d.ts +16 -0
  350. package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -0
  351. package/dist/modes/interactive/components/branch-summary-message.js +44 -0
  352. package/dist/modes/interactive/components/branch-summary-message.js.map +1 -0
  353. package/dist/modes/interactive/components/compaction-summary-message.d.ts +16 -0
  354. package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -0
  355. package/dist/modes/interactive/components/compaction-summary-message.js +45 -0
  356. package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -0
  357. package/dist/modes/interactive/components/config-selector.d.ts +71 -0
  358. package/dist/modes/interactive/components/config-selector.d.ts.map +1 -0
  359. package/dist/modes/interactive/components/config-selector.js +506 -0
  360. package/dist/modes/interactive/components/config-selector.js.map +1 -0
  361. package/dist/modes/interactive/components/countdown-timer.d.ts +14 -0
  362. package/dist/modes/interactive/components/countdown-timer.d.ts.map +1 -0
  363. package/dist/modes/interactive/components/countdown-timer.js +33 -0
  364. package/dist/modes/interactive/components/countdown-timer.js.map +1 -0
  365. package/dist/modes/interactive/components/custom-editor.d.ts +21 -0
  366. package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -0
  367. package/dist/modes/interactive/components/custom-editor.js +70 -0
  368. package/dist/modes/interactive/components/custom-editor.js.map +1 -0
  369. package/dist/modes/interactive/components/custom-message.d.ts +20 -0
  370. package/dist/modes/interactive/components/custom-message.d.ts.map +1 -0
  371. package/dist/modes/interactive/components/custom-message.js +79 -0
  372. package/dist/modes/interactive/components/custom-message.js.map +1 -0
  373. package/dist/modes/interactive/components/diff.d.ts +12 -0
  374. package/dist/modes/interactive/components/diff.d.ts.map +1 -0
  375. package/dist/modes/interactive/components/diff.js +133 -0
  376. package/dist/modes/interactive/components/diff.js.map +1 -0
  377. package/dist/modes/interactive/components/dynamic-border.d.ts +15 -0
  378. package/dist/modes/interactive/components/dynamic-border.d.ts.map +1 -0
  379. package/dist/modes/interactive/components/dynamic-border.js +21 -0
  380. package/dist/modes/interactive/components/dynamic-border.js.map +1 -0
  381. package/dist/modes/interactive/components/earendil-announcement.d.ts +5 -0
  382. package/dist/modes/interactive/components/earendil-announcement.d.ts.map +1 -0
  383. package/dist/modes/interactive/components/earendil-announcement.js +42 -0
  384. package/dist/modes/interactive/components/earendil-announcement.js.map +1 -0
  385. package/dist/modes/interactive/components/extension-editor.d.ts +20 -0
  386. package/dist/modes/interactive/components/extension-editor.d.ts.map +1 -0
  387. package/dist/modes/interactive/components/extension-editor.js +119 -0
  388. package/dist/modes/interactive/components/extension-editor.js.map +1 -0
  389. package/dist/modes/interactive/components/extension-input.d.ts +23 -0
  390. package/dist/modes/interactive/components/extension-input.d.ts.map +1 -0
  391. package/dist/modes/interactive/components/extension-input.js +61 -0
  392. package/dist/modes/interactive/components/extension-input.js.map +1 -0
  393. package/dist/modes/interactive/components/extension-selector.d.ts +26 -0
  394. package/dist/modes/interactive/components/extension-selector.d.ts.map +1 -0
  395. package/dist/modes/interactive/components/extension-selector.js +83 -0
  396. package/dist/modes/interactive/components/extension-selector.js.map +1 -0
  397. package/dist/modes/interactive/components/footer.d.ts +35 -0
  398. package/dist/modes/interactive/components/footer.d.ts.map +1 -0
  399. package/dist/modes/interactive/components/footer.js +223 -0
  400. package/dist/modes/interactive/components/footer.js.map +1 -0
  401. package/dist/modes/interactive/components/index.d.ts +36 -0
  402. package/dist/modes/interactive/components/index.d.ts.map +1 -0
  403. package/dist/modes/interactive/components/index.js +37 -0
  404. package/dist/modes/interactive/components/index.js.map +1 -0
  405. package/dist/modes/interactive/components/keybinding-hints.d.ts +13 -0
  406. package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -0
  407. package/dist/modes/interactive/components/keybinding-hints.js +36 -0
  408. package/dist/modes/interactive/components/keybinding-hints.js.map +1 -0
  409. package/dist/modes/interactive/components/login-dialog.d.ts +51 -0
  410. package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -0
  411. package/dist/modes/interactive/components/login-dialog.js +174 -0
  412. package/dist/modes/interactive/components/login-dialog.js.map +1 -0
  413. package/dist/modes/interactive/components/model-selector.d.ts +69 -0
  414. package/dist/modes/interactive/components/model-selector.d.ts.map +1 -0
  415. package/dist/modes/interactive/components/model-selector.js +411 -0
  416. package/dist/modes/interactive/components/model-selector.js.map +1 -0
  417. package/dist/modes/interactive/components/oauth-selector.d.ts +31 -0
  418. package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -0
  419. package/dist/modes/interactive/components/oauth-selector.js +165 -0
  420. package/dist/modes/interactive/components/oauth-selector.js.map +1 -0
  421. package/dist/modes/interactive/components/omk-brand-surface.d.ts +58 -0
  422. package/dist/modes/interactive/components/omk-brand-surface.d.ts.map +1 -0
  423. package/dist/modes/interactive/components/omk-brand-surface.js +330 -0
  424. package/dist/modes/interactive/components/omk-brand-surface.js.map +1 -0
  425. package/dist/modes/interactive/components/omk-brand.d.ts +10 -0
  426. package/dist/modes/interactive/components/omk-brand.d.ts.map +1 -0
  427. package/dist/modes/interactive/components/omk-brand.js +12 -0
  428. package/dist/modes/interactive/components/omk-brand.js.map +1 -0
  429. package/dist/modes/interactive/components/omk-control-dashboard.d.ts +36 -0
  430. package/dist/modes/interactive/components/omk-control-dashboard.d.ts.map +1 -0
  431. package/dist/modes/interactive/components/omk-control-dashboard.js +348 -0
  432. package/dist/modes/interactive/components/omk-control-dashboard.js.map +1 -0
  433. package/dist/modes/interactive/components/omk-control-layout.d.ts +34 -0
  434. package/dist/modes/interactive/components/omk-control-layout.d.ts.map +1 -0
  435. package/dist/modes/interactive/components/omk-control-layout.js +85 -0
  436. package/dist/modes/interactive/components/omk-control-layout.js.map +1 -0
  437. package/dist/modes/interactive/components/omk-history-panel.d.ts +27 -0
  438. package/dist/modes/interactive/components/omk-history-panel.d.ts.map +1 -0
  439. package/dist/modes/interactive/components/omk-history-panel.js +162 -0
  440. package/dist/modes/interactive/components/omk-history-panel.js.map +1 -0
  441. package/dist/modes/interactive/components/omk-neon-hud.d.ts +19 -0
  442. package/dist/modes/interactive/components/omk-neon-hud.d.ts.map +1 -0
  443. package/dist/modes/interactive/components/omk-neon-hud.js +75 -0
  444. package/dist/modes/interactive/components/omk-neon-hud.js.map +1 -0
  445. package/dist/modes/interactive/components/omk-tabbed-panel.d.ts +30 -0
  446. package/dist/modes/interactive/components/omk-tabbed-panel.d.ts.map +1 -0
  447. package/dist/modes/interactive/components/omk-tabbed-panel.js +99 -0
  448. package/dist/modes/interactive/components/omk-tabbed-panel.js.map +1 -0
  449. package/dist/modes/interactive/components/scoped-models-selector.d.ts +42 -0
  450. package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -0
  451. package/dist/modes/interactive/components/scoped-models-selector.js +290 -0
  452. package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -0
  453. package/dist/modes/interactive/components/scrollable-transcript.d.ts +20 -0
  454. package/dist/modes/interactive/components/scrollable-transcript.d.ts.map +1 -0
  455. package/dist/modes/interactive/components/scrollable-transcript.js +25 -0
  456. package/dist/modes/interactive/components/scrollable-transcript.js.map +1 -0
  457. package/dist/modes/interactive/components/session-selector-search.d.ts +23 -0
  458. package/dist/modes/interactive/components/session-selector-search.d.ts.map +1 -0
  459. package/dist/modes/interactive/components/session-selector-search.js +155 -0
  460. package/dist/modes/interactive/components/session-selector-search.js.map +1 -0
  461. package/dist/modes/interactive/components/session-selector.d.ts +96 -0
  462. package/dist/modes/interactive/components/session-selector.d.ts.map +1 -0
  463. package/dist/modes/interactive/components/session-selector.js +861 -0
  464. package/dist/modes/interactive/components/session-selector.js.map +1 -0
  465. package/dist/modes/interactive/components/settings-selector.d.ts +69 -0
  466. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -0
  467. package/dist/modes/interactive/components/settings-selector.js +391 -0
  468. package/dist/modes/interactive/components/settings-selector.js.map +1 -0
  469. package/dist/modes/interactive/components/show-images-selector.d.ts +10 -0
  470. package/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -0
  471. package/dist/modes/interactive/components/show-images-selector.js +39 -0
  472. package/dist/modes/interactive/components/show-images-selector.js.map +1 -0
  473. package/dist/modes/interactive/components/skill-invocation-message.d.ts +17 -0
  474. package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -0
  475. package/dist/modes/interactive/components/skill-invocation-message.js +47 -0
  476. package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -0
  477. package/dist/modes/interactive/components/theme-selector.d.ts +11 -0
  478. package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -0
  479. package/dist/modes/interactive/components/theme-selector.js +50 -0
  480. package/dist/modes/interactive/components/theme-selector.js.map +1 -0
  481. package/dist/modes/interactive/components/thinking-selector.d.ts +11 -0
  482. package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -0
  483. package/dist/modes/interactive/components/thinking-selector.js +52 -0
  484. package/dist/modes/interactive/components/thinking-selector.js.map +1 -0
  485. package/dist/modes/interactive/components/tool-execution.d.ts +63 -0
  486. package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -0
  487. package/dist/modes/interactive/components/tool-execution.js +317 -0
  488. package/dist/modes/interactive/components/tool-execution.js.map +1 -0
  489. package/dist/modes/interactive/components/tree-selector.d.ts +89 -0
  490. package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -0
  491. package/dist/modes/interactive/components/tree-selector.js +1093 -0
  492. package/dist/modes/interactive/components/tree-selector.js.map +1 -0
  493. package/dist/modes/interactive/components/user-message-selector.d.ts +30 -0
  494. package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -0
  495. package/dist/modes/interactive/components/user-message-selector.js +114 -0
  496. package/dist/modes/interactive/components/user-message-selector.js.map +1 -0
  497. package/dist/modes/interactive/components/user-message.d.ts +10 -0
  498. package/dist/modes/interactive/components/user-message.d.ts.map +1 -0
  499. package/dist/modes/interactive/components/user-message.js +29 -0
  500. package/dist/modes/interactive/components/user-message.js.map +1 -0
  501. package/dist/modes/interactive/components/visual-truncate.d.ts +24 -0
  502. package/dist/modes/interactive/components/visual-truncate.d.ts.map +1 -0
  503. package/dist/modes/interactive/components/visual-truncate.js +33 -0
  504. package/dist/modes/interactive/components/visual-truncate.js.map +1 -0
  505. package/dist/modes/interactive/interactive-mode.d.ts +422 -0
  506. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -0
  507. package/dist/modes/interactive/interactive-mode.js +5388 -0
  508. package/dist/modes/interactive/interactive-mode.js.map +1 -0
  509. package/dist/modes/interactive/theme/dark.json +87 -0
  510. package/dist/modes/interactive/theme/light.json +86 -0
  511. package/dist/modes/interactive/theme/omk-control.json +92 -0
  512. package/dist/modes/interactive/theme/omk-rust.json +94 -0
  513. package/dist/modes/interactive/theme/theme-schema.json +340 -0
  514. package/dist/modes/interactive/theme/theme.d.ts +102 -0
  515. package/dist/modes/interactive/theme/theme.d.ts.map +1 -0
  516. package/dist/modes/interactive/theme/theme.js +1093 -0
  517. package/dist/modes/interactive/theme/theme.js.map +1 -0
  518. package/dist/modes/print-mode.d.ts +28 -0
  519. package/dist/modes/print-mode.d.ts.map +1 -0
  520. package/dist/modes/print-mode.js +132 -0
  521. package/dist/modes/print-mode.js.map +1 -0
  522. package/dist/modes/rpc/jsonl.d.ts +17 -0
  523. package/dist/modes/rpc/jsonl.d.ts.map +1 -0
  524. package/dist/modes/rpc/jsonl.js +49 -0
  525. package/dist/modes/rpc/jsonl.js.map +1 -0
  526. package/dist/modes/rpc/rpc-client.d.ts +227 -0
  527. package/dist/modes/rpc/rpc-client.d.ts.map +1 -0
  528. package/dist/modes/rpc/rpc-client.js +467 -0
  529. package/dist/modes/rpc/rpc-client.js.map +1 -0
  530. package/dist/modes/rpc/rpc-mode.d.ts +20 -0
  531. package/dist/modes/rpc/rpc-mode.d.ts.map +1 -0
  532. package/dist/modes/rpc/rpc-mode.js +616 -0
  533. package/dist/modes/rpc/rpc-mode.js.map +1 -0
  534. package/dist/modes/rpc/rpc-types.d.ts +420 -0
  535. package/dist/modes/rpc/rpc-types.d.ts.map +1 -0
  536. package/dist/modes/rpc/rpc-types.js +8 -0
  537. package/dist/modes/rpc/rpc-types.js.map +1 -0
  538. package/dist/omk-env.d.ts +2 -0
  539. package/dist/omk-env.d.ts.map +1 -0
  540. package/dist/omk-env.js +3 -0
  541. package/dist/omk-env.js.map +1 -0
  542. package/dist/omk.d.ts +4 -0
  543. package/dist/omk.d.ts.map +1 -0
  544. package/dist/omk.js +4 -0
  545. package/dist/omk.js.map +1 -0
  546. package/dist/package-manager-cli.d.ts +4 -0
  547. package/dist/package-manager-cli.d.ts.map +1 -0
  548. package/dist/package-manager-cli.js +528 -0
  549. package/dist/package-manager-cli.js.map +1 -0
  550. package/dist/package.json +97 -0
  551. package/dist/utils/ansi.d.ts +2 -0
  552. package/dist/utils/ansi.d.ts.map +1 -0
  553. package/dist/utils/ansi.js +52 -0
  554. package/dist/utils/ansi.js.map +1 -0
  555. package/dist/utils/changelog.d.ts +21 -0
  556. package/dist/utils/changelog.d.ts.map +1 -0
  557. package/dist/utils/changelog.js +87 -0
  558. package/dist/utils/changelog.js.map +1 -0
  559. package/dist/utils/child-process.d.ts +15 -0
  560. package/dist/utils/child-process.d.ts.map +1 -0
  561. package/dist/utils/child-process.js +88 -0
  562. package/dist/utils/child-process.js.map +1 -0
  563. package/dist/utils/clipboard-image.d.ts +11 -0
  564. package/dist/utils/clipboard-image.d.ts.map +1 -0
  565. package/dist/utils/clipboard-image.js +249 -0
  566. package/dist/utils/clipboard-image.js.map +1 -0
  567. package/dist/utils/clipboard-native.d.ts +10 -0
  568. package/dist/utils/clipboard-native.d.ts.map +1 -0
  569. package/dist/utils/clipboard-native.js +20 -0
  570. package/dist/utils/clipboard-native.js.map +1 -0
  571. package/dist/utils/clipboard.d.ts +2 -0
  572. package/dist/utils/clipboard.d.ts.map +1 -0
  573. package/dist/utils/clipboard.js +117 -0
  574. package/dist/utils/clipboard.js.map +1 -0
  575. package/dist/utils/deprecation.d.ts +4 -0
  576. package/dist/utils/deprecation.d.ts.map +1 -0
  577. package/dist/utils/deprecation.js +13 -0
  578. package/dist/utils/deprecation.js.map +1 -0
  579. package/dist/utils/exif-orientation.d.ts +5 -0
  580. package/dist/utils/exif-orientation.d.ts.map +1 -0
  581. package/dist/utils/exif-orientation.js +158 -0
  582. package/dist/utils/exif-orientation.js.map +1 -0
  583. package/dist/utils/frontmatter.d.ts +8 -0
  584. package/dist/utils/frontmatter.d.ts.map +1 -0
  585. package/dist/utils/frontmatter.js +26 -0
  586. package/dist/utils/frontmatter.js.map +1 -0
  587. package/dist/utils/fs-watch.d.ts +5 -0
  588. package/dist/utils/fs-watch.d.ts.map +1 -0
  589. package/dist/utils/fs-watch.js +25 -0
  590. package/dist/utils/fs-watch.js.map +1 -0
  591. package/dist/utils/git.d.ts +26 -0
  592. package/dist/utils/git.d.ts.map +1 -0
  593. package/dist/utils/git.js +195 -0
  594. package/dist/utils/git.js.map +1 -0
  595. package/dist/utils/html.d.ts +7 -0
  596. package/dist/utils/html.d.ts.map +1 -0
  597. package/dist/utils/html.js +40 -0
  598. package/dist/utils/html.js.map +1 -0
  599. package/dist/utils/image-convert.d.ts +9 -0
  600. package/dist/utils/image-convert.d.ts.map +1 -0
  601. package/dist/utils/image-convert.js +39 -0
  602. package/dist/utils/image-convert.js.map +1 -0
  603. package/dist/utils/image-resize-core.d.ts +30 -0
  604. package/dist/utils/image-resize-core.d.ts.map +1 -0
  605. package/dist/utils/image-resize-core.js +124 -0
  606. package/dist/utils/image-resize-core.js.map +1 -0
  607. package/dist/utils/image-resize-worker.d.ts +2 -0
  608. package/dist/utils/image-resize-worker.d.ts.map +1 -0
  609. package/dist/utils/image-resize-worker.js +31 -0
  610. package/dist/utils/image-resize-worker.js.map +1 -0
  611. package/dist/utils/image-resize.d.ts +16 -0
  612. package/dist/utils/image-resize.d.ts.map +1 -0
  613. package/dist/utils/image-resize.js +97 -0
  614. package/dist/utils/image-resize.js.map +1 -0
  615. package/dist/utils/json.d.ts +3 -0
  616. package/dist/utils/json.d.ts.map +1 -0
  617. package/dist/utils/json.js +7 -0
  618. package/dist/utils/json.js.map +1 -0
  619. package/dist/utils/mime.d.ts +3 -0
  620. package/dist/utils/mime.d.ts.map +1 -0
  621. package/dist/utils/mime.js +69 -0
  622. package/dist/utils/mime.js.map +1 -0
  623. package/dist/utils/open-browser.d.ts +9 -0
  624. package/dist/utils/open-browser.d.ts.map +1 -0
  625. package/dist/utils/open-browser.js +22 -0
  626. package/dist/utils/open-browser.js.map +1 -0
  627. package/dist/utils/paths.d.ts +31 -0
  628. package/dist/utils/paths.d.ts.map +1 -0
  629. package/dist/utils/paths.js +92 -0
  630. package/dist/utils/paths.js.map +1 -0
  631. package/dist/utils/photon.d.ts +21 -0
  632. package/dist/utils/photon.d.ts.map +1 -0
  633. package/dist/utils/photon.js +121 -0
  634. package/dist/utils/photon.js.map +1 -0
  635. package/dist/utils/pi-user-agent.d.ts +2 -0
  636. package/dist/utils/pi-user-agent.d.ts.map +1 -0
  637. package/dist/utils/pi-user-agent.js +6 -0
  638. package/dist/utils/pi-user-agent.js.map +1 -0
  639. package/dist/utils/shell.d.ts +30 -0
  640. package/dist/utils/shell.d.ts.map +1 -0
  641. package/dist/utils/shell.js +195 -0
  642. package/dist/utils/shell.js.map +1 -0
  643. package/dist/utils/sleep.d.ts +5 -0
  644. package/dist/utils/sleep.d.ts.map +1 -0
  645. package/dist/utils/sleep.js +17 -0
  646. package/dist/utils/sleep.js.map +1 -0
  647. package/dist/utils/syntax-highlight.d.ts +12 -0
  648. package/dist/utils/syntax-highlight.d.ts.map +1 -0
  649. package/dist/utils/syntax-highlight.js +118 -0
  650. package/dist/utils/syntax-highlight.js.map +1 -0
  651. package/dist/utils/tools-manager.d.ts +3 -0
  652. package/dist/utils/tools-manager.d.ts.map +1 -0
  653. package/dist/utils/tools-manager.js +325 -0
  654. package/dist/utils/tools-manager.js.map +1 -0
  655. package/dist/utils/version-check.d.ts +15 -0
  656. package/dist/utils/version-check.d.ts.map +1 -0
  657. package/dist/utils/version-check.js +85 -0
  658. package/dist/utils/version-check.js.map +1 -0
  659. package/dist/utils/windows-self-update.d.ts +3 -0
  660. package/dist/utils/windows-self-update.d.ts.map +1 -0
  661. package/dist/utils/windows-self-update.js +77 -0
  662. package/dist/utils/windows-self-update.js.map +1 -0
  663. package/docs/compaction.md +394 -0
  664. package/docs/containerization.md +111 -0
  665. package/docs/custom-provider.md +736 -0
  666. package/docs/development.md +71 -0
  667. package/docs/docs.json +152 -0
  668. package/docs/extensions.md +2627 -0
  669. package/docs/images/doom-extension.png +0 -0
  670. package/docs/images/exy.png +0 -0
  671. package/docs/images/interactive-mode.png +0 -0
  672. package/docs/images/tree-view.png +0 -0
  673. package/docs/index.md +81 -0
  674. package/docs/json.md +82 -0
  675. package/docs/keybindings.md +197 -0
  676. package/docs/models.md +493 -0
  677. package/docs/packages.md +226 -0
  678. package/docs/prompt-templates.md +88 -0
  679. package/docs/providers.md +256 -0
  680. package/docs/quickstart.md +165 -0
  681. package/docs/rpc.md +1408 -0
  682. package/docs/sdk.md +1137 -0
  683. package/docs/session-format.md +412 -0
  684. package/docs/sessions.md +145 -0
  685. package/docs/settings.md +281 -0
  686. package/docs/shell-aliases.md +13 -0
  687. package/docs/skills.md +231 -0
  688. package/docs/terminal-setup.md +114 -0
  689. package/docs/termux.md +127 -0
  690. package/docs/themes.md +297 -0
  691. package/docs/tmux.md +61 -0
  692. package/docs/tui.md +927 -0
  693. package/docs/usage.md +288 -0
  694. package/docs/windows.md +17 -0
  695. package/examples/README.md +25 -0
  696. package/examples/extensions/README.md +210 -0
  697. package/examples/extensions/auto-commit-on-exit.ts +49 -0
  698. package/examples/extensions/bash-spawn-hook.ts +30 -0
  699. package/examples/extensions/bookmark.ts +50 -0
  700. package/examples/extensions/border-status-editor.ts +150 -0
  701. package/examples/extensions/built-in-tool-renderer.ts +249 -0
  702. package/examples/extensions/claude-rules.ts +86 -0
  703. package/examples/extensions/commands.ts +72 -0
  704. package/examples/extensions/confirm-destructive.ts +59 -0
  705. package/examples/extensions/custom-compaction.ts +127 -0
  706. package/examples/extensions/custom-footer.ts +64 -0
  707. package/examples/extensions/custom-header.ts +73 -0
  708. package/examples/extensions/custom-provider-anthropic/index.ts +604 -0
  709. package/examples/extensions/custom-provider-anthropic/package-lock.json +24 -0
  710. package/examples/extensions/custom-provider-anthropic/package.json +19 -0
  711. package/examples/extensions/custom-provider-gitlab-duo/index.ts +400 -0
  712. package/examples/extensions/custom-provider-gitlab-duo/package.json +16 -0
  713. package/examples/extensions/custom-provider-gitlab-duo/test.ts +82 -0
  714. package/examples/extensions/dirty-repo-guard.ts +56 -0
  715. package/examples/extensions/doom-overlay/README.md +46 -0
  716. package/examples/extensions/doom-overlay/doom/build/doom.js +21 -0
  717. package/examples/extensions/doom-overlay/doom/build/doom.wasm +0 -0
  718. package/examples/extensions/doom-overlay/doom/build.sh +152 -0
  719. package/examples/extensions/doom-overlay/doom/doomgeneric_pi.c +72 -0
  720. package/examples/extensions/doom-overlay/doom-component.ts +132 -0
  721. package/examples/extensions/doom-overlay/doom-engine.ts +173 -0
  722. package/examples/extensions/doom-overlay/doom-keys.ts +104 -0
  723. package/examples/extensions/doom-overlay/index.ts +74 -0
  724. package/examples/extensions/doom-overlay/wad-finder.ts +51 -0
  725. package/examples/extensions/dynamic-resources/SKILL.md +8 -0
  726. package/examples/extensions/dynamic-resources/dynamic.json +79 -0
  727. package/examples/extensions/dynamic-resources/dynamic.md +5 -0
  728. package/examples/extensions/dynamic-resources/index.ts +15 -0
  729. package/examples/extensions/dynamic-tools.ts +74 -0
  730. package/examples/extensions/event-bus.ts +43 -0
  731. package/examples/extensions/file-trigger.ts +41 -0
  732. package/examples/extensions/git-checkpoint.ts +53 -0
  733. package/examples/extensions/git-merge-and-resolve.ts +115 -0
  734. package/examples/extensions/github-issue-autocomplete.ts +185 -0
  735. package/examples/extensions/gondolin/index.ts +531 -0
  736. package/examples/extensions/gondolin/package-lock.json +185 -0
  737. package/examples/extensions/gondolin/package.json +19 -0
  738. package/examples/extensions/handoff.ts +191 -0
  739. package/examples/extensions/hello.ts +26 -0
  740. package/examples/extensions/hidden-thinking-label.ts +53 -0
  741. package/examples/extensions/inline-bash.ts +94 -0
  742. package/examples/extensions/input-transform-streaming.ts +39 -0
  743. package/examples/extensions/input-transform.ts +43 -0
  744. package/examples/extensions/interactive-shell.ts +196 -0
  745. package/examples/extensions/mac-system-theme.ts +47 -0
  746. package/examples/extensions/message-renderer.ts +59 -0
  747. package/examples/extensions/minimal-mode.ts +426 -0
  748. package/examples/extensions/modal-editor.ts +85 -0
  749. package/examples/extensions/model-status.ts +31 -0
  750. package/examples/extensions/notify.ts +55 -0
  751. package/examples/extensions/overlay-qa-tests.ts +1450 -0
  752. package/examples/extensions/overlay-test.ts +153 -0
  753. package/examples/extensions/permission-gate.ts +34 -0
  754. package/examples/extensions/pirate.ts +47 -0
  755. package/examples/extensions/plan-mode/README.md +65 -0
  756. package/examples/extensions/plan-mode/index.ts +340 -0
  757. package/examples/extensions/plan-mode/utils.ts +168 -0
  758. package/examples/extensions/preset.ts +430 -0
  759. package/examples/extensions/prompt-customizer.ts +97 -0
  760. package/examples/extensions/protected-paths.ts +30 -0
  761. package/examples/extensions/provider-payload.ts +18 -0
  762. package/examples/extensions/qna.ts +122 -0
  763. package/examples/extensions/question.ts +264 -0
  764. package/examples/extensions/questionnaire.ts +427 -0
  765. package/examples/extensions/rainbow-editor.ts +88 -0
  766. package/examples/extensions/reload-runtime.ts +37 -0
  767. package/examples/extensions/rpc-demo.ts +118 -0
  768. package/examples/extensions/sandbox/index.ts +321 -0
  769. package/examples/extensions/sandbox/package-lock.json +92 -0
  770. package/examples/extensions/sandbox/package.json +19 -0
  771. package/examples/extensions/send-user-message.ts +97 -0
  772. package/examples/extensions/session-name.ts +27 -0
  773. package/examples/extensions/shutdown-command.ts +63 -0
  774. package/examples/extensions/snake.ts +343 -0
  775. package/examples/extensions/space-invaders.ts +560 -0
  776. package/examples/extensions/ssh.ts +220 -0
  777. package/examples/extensions/status-line.ts +32 -0
  778. package/examples/extensions/structured-output.ts +65 -0
  779. package/examples/extensions/subagent/README.md +175 -0
  780. package/examples/extensions/subagent/agents/planner.md +37 -0
  781. package/examples/extensions/subagent/agents/reviewer.md +35 -0
  782. package/examples/extensions/subagent/agents/scout.md +50 -0
  783. package/examples/extensions/subagent/agents/worker.md +24 -0
  784. package/examples/extensions/subagent/agents.ts +126 -0
  785. package/examples/extensions/subagent/index.ts +1009 -0
  786. package/examples/extensions/subagent/prompts/implement-and-review.md +10 -0
  787. package/examples/extensions/subagent/prompts/implement.md +10 -0
  788. package/examples/extensions/subagent/prompts/scout-and-plan.md +9 -0
  789. package/examples/extensions/summarize.ts +206 -0
  790. package/examples/extensions/system-prompt-header.ts +17 -0
  791. package/examples/extensions/tic-tac-toe.ts +1008 -0
  792. package/examples/extensions/timed-confirm.ts +70 -0
  793. package/examples/extensions/titlebar-spinner.ts +58 -0
  794. package/examples/extensions/todo.ts +297 -0
  795. package/examples/extensions/tool-override.ts +144 -0
  796. package/examples/extensions/tools.ts +146 -0
  797. package/examples/extensions/trigger-compact.ts +50 -0
  798. package/examples/extensions/truncated-tool.ts +195 -0
  799. package/examples/extensions/widget-placement.ts +9 -0
  800. package/examples/extensions/with-deps/index.ts +32 -0
  801. package/examples/extensions/with-deps/package-lock.json +31 -0
  802. package/examples/extensions/with-deps/package.json +22 -0
  803. package/examples/extensions/working-indicator.ts +123 -0
  804. package/examples/extensions/working-message-test.ts +25 -0
  805. package/examples/rpc-extension-ui.ts +632 -0
  806. package/examples/sdk/01-minimal.ts +26 -0
  807. package/examples/sdk/02-custom-model.ts +53 -0
  808. package/examples/sdk/03-custom-prompt.ts +75 -0
  809. package/examples/sdk/04-skills.ts +55 -0
  810. package/examples/sdk/05-tools.ts +48 -0
  811. package/examples/sdk/06-extensions.ts +99 -0
  812. package/examples/sdk/07-context-files.ts +47 -0
  813. package/examples/sdk/08-prompt-templates.ts +51 -0
  814. package/examples/sdk/09-api-keys-and-oauth.ts +52 -0
  815. package/examples/sdk/10-settings.ts +53 -0
  816. package/examples/sdk/11-sessions.ts +52 -0
  817. package/examples/sdk/12-full-control.ts +77 -0
  818. package/examples/sdk/13-session-runtime.ts +67 -0
  819. package/examples/sdk/README.md +144 -0
  820. package/npm-shrinkwrap.json +512 -0
  821. package/package.json +97 -191
  822. package/AGENTS.md +0 -550
  823. package/CLAUDE.md +0 -8
  824. package/DESIGN.md +0 -334
  825. package/GEMINI.md +0 -8
  826. package/LICENSE +0 -21
  827. package/MATURITY.md +0 -81
  828. package/ROADMAP.md +0 -138
  829. package/SECURITY.md +0 -83
  830. package/WORKER_MANIFEST.md +0 -35
  831. package/dist/adapters/commandcode/commandcode-cli-adapter.d.ts +0 -10
  832. package/dist/adapters/commandcode/commandcode-cli-adapter.js +0 -57
  833. package/dist/adapters/kimi/ascii-art.d.ts +0 -1
  834. package/dist/adapters/kimi/ascii-art.js +0 -23
  835. package/dist/adapters/kimi/banner.d.ts +0 -53
  836. package/dist/adapters/kimi/banner.js +0 -284
  837. package/dist/adapters/kimi/bug-filter.d.ts +0 -15
  838. package/dist/adapters/kimi/bug-filter.js +0 -150
  839. package/dist/adapters/kimi/capability.d.ts +0 -25
  840. package/dist/adapters/kimi/capability.js +0 -68
  841. package/dist/adapters/kimi/continue-prompt-guard.d.ts +0 -20
  842. package/dist/adapters/kimi/continue-prompt-guard.js +0 -70
  843. package/dist/adapters/kimi/isolated-home.d.ts +0 -21
  844. package/dist/adapters/kimi/isolated-home.js +0 -270
  845. package/dist/adapters/kimi/runner.d.ts +0 -71
  846. package/dist/adapters/kimi/runner.js +0 -1084
  847. package/dist/adapters/kimi/simple-art.d.ts +0 -1
  848. package/dist/adapters/kimi/simple-art.js +0 -1
  849. package/dist/adapters/kimi/statusline.d.ts +0 -26
  850. package/dist/adapters/kimi/statusline.js +0 -142
  851. package/dist/adapters/kimi/usage.d.ts +0 -52
  852. package/dist/adapters/kimi/usage.js +0 -481
  853. package/dist/adapters/kimi/wire-client.d.ts +0 -142
  854. package/dist/adapters/kimi/wire-client.js +0 -725
  855. package/dist/adapters/kimi/wire-protocol-types.d.ts +0 -549
  856. package/dist/adapters/kimi/wire-protocol-types.js +0 -59
  857. package/dist/adapters/opencode/opencode-cli-adapter.d.ts +0 -9
  858. package/dist/adapters/opencode/opencode-cli-adapter.js +0 -43
  859. package/dist/awareness/classifiers/browser-console-classifier.d.ts +0 -3
  860. package/dist/awareness/classifiers/browser-console-classifier.js +0 -47
  861. package/dist/awareness/classifiers/evidence-gap-classifier.d.ts +0 -3
  862. package/dist/awareness/classifiers/evidence-gap-classifier.js +0 -31
  863. package/dist/awareness/classifiers/stalled-run-classifier.d.ts +0 -2
  864. package/dist/awareness/classifiers/stalled-run-classifier.js +0 -24
  865. package/dist/awareness/notice-store.d.ts +0 -6
  866. package/dist/awareness/notice-store.js +0 -91
  867. package/dist/awareness/notice.d.ts +0 -17
  868. package/dist/awareness/notice.js +0 -1
  869. package/dist/awareness/noticer-engine.d.ts +0 -42
  870. package/dist/awareness/noticer-engine.js +0 -63
  871. package/dist/awareness/router.d.ts +0 -6
  872. package/dist/awareness/router.js +0 -46
  873. package/dist/benchmark/contracts.d.ts +0 -116
  874. package/dist/benchmark/contracts.js +0 -6
  875. package/dist/benchmark/fixtures.d.ts +0 -11
  876. package/dist/benchmark/fixtures.js +0 -124
  877. package/dist/benchmark/harness.d.ts +0 -13
  878. package/dist/benchmark/harness.js +0 -191
  879. package/dist/benchmark/shadow-mode.d.ts +0 -17
  880. package/dist/benchmark/shadow-mode.js +0 -95
  881. package/dist/brand/matrix-rain.d.ts +0 -15
  882. package/dist/brand/matrix-rain.js +0 -132
  883. package/dist/brand/night-city.theme.json +0 -80
  884. package/dist/brand/omk-matrix-art.d.ts +0 -1
  885. package/dist/brand/omk-matrix-art.js +0 -10
  886. package/dist/brand/omk-simple-art.d.ts +0 -7
  887. package/dist/brand/omk-simple-art.js +0 -13
  888. package/dist/brand/palette.d.ts +0 -90
  889. package/dist/brand/palette.js +0 -129
  890. package/dist/brand/rust-forge.theme.json +0 -216
  891. package/dist/brand/theme-compiled.d.ts +0 -61
  892. package/dist/brand/theme-compiled.js +0 -241
  893. package/dist/brand/theme.d.ts +0 -41
  894. package/dist/brand/theme.js +0 -275
  895. package/dist/browser/browser-feedback.d.ts +0 -10
  896. package/dist/browser/browser-feedback.js +0 -84
  897. package/dist/browser/browser-observer.d.ts +0 -21
  898. package/dist/browser/browser-observer.js +0 -159
  899. package/dist/browser/browser-session.d.ts +0 -26
  900. package/dist/browser/browser-session.js +0 -63
  901. package/dist/cli/command-registry.d.ts +0 -2
  902. package/dist/cli/command-registry.js +0 -20
  903. package/dist/cli/input/argv-parser.d.ts +0 -16
  904. package/dist/cli/input/argv-parser.js +0 -50
  905. package/dist/cli/input/command-envelope.d.ts +0 -16
  906. package/dist/cli/input/command-envelope.js +0 -64
  907. package/dist/cli/input/config-loader.d.ts +0 -16
  908. package/dist/cli/input/config-loader.js +0 -48
  909. package/dist/cli/input/index.d.ts +0 -8
  910. package/dist/cli/input/index.js +0 -8
  911. package/dist/cli/input/input-resolver.d.ts +0 -13
  912. package/dist/cli/input/input-resolver.js +0 -50
  913. package/dist/cli/input/validator.d.ts +0 -10
  914. package/dist/cli/input/validator.js +0 -37
  915. package/dist/cli/main.d.ts +0 -4
  916. package/dist/cli/main.js +0 -34
  917. package/dist/cli/output/error-renderer.d.ts +0 -10
  918. package/dist/cli/output/error-renderer.js +0 -68
  919. package/dist/cli/output/hash.d.ts +0 -1
  920. package/dist/cli/output/hash.js +0 -10
  921. package/dist/cli/output/index.d.ts +0 -9
  922. package/dist/cli/output/index.js +0 -9
  923. package/dist/cli/output/json-renderer.d.ts +0 -7
  924. package/dist/cli/output/json-renderer.js +0 -35
  925. package/dist/cli/output/markdown-renderer.d.ts +0 -5
  926. package/dist/cli/output/markdown-renderer.js +0 -86
  927. package/dist/cli/output/nlp-renderer.d.ts +0 -7
  928. package/dist/cli/output/nlp-renderer.js +0 -96
  929. package/dist/cli/output/output-router.d.ts +0 -5
  930. package/dist/cli/output/output-router.js +0 -33
  931. package/dist/cli/register-awareness-commands.d.ts +0 -2
  932. package/dist/cli/register-awareness-commands.js +0 -133
  933. package/dist/cli/register-basic-commands.d.ts +0 -2
  934. package/dist/cli/register-basic-commands.js +0 -488
  935. package/dist/cli/register-integration-commands.d.ts +0 -2
  936. package/dist/cli/register-integration-commands.js +0 -59
  937. package/dist/cli/register-mcp-dag-cron-screenshot-commands.d.ts +0 -2
  938. package/dist/cli/register-mcp-dag-cron-screenshot-commands.js +0 -275
  939. package/dist/cli/register-openai-codex-commands.d.ts +0 -2
  940. package/dist/cli/register-openai-codex-commands.js +0 -55
  941. package/dist/cli/register-provider-commands.d.ts +0 -2
  942. package/dist/cli/register-provider-commands.js +0 -244
  943. package/dist/cli/register-spec-agent-goal-commands.d.ts +0 -2
  944. package/dist/cli/register-spec-agent-goal-commands.js +0 -486
  945. package/dist/cli/register-tool-commands.d.ts +0 -2
  946. package/dist/cli/register-tool-commands.js +0 -202
  947. package/dist/cli/register-workflow-commands.d.ts +0 -2
  948. package/dist/cli/register-workflow-commands.js +0 -158
  949. package/dist/cli/registry/core.d.ts +0 -2
  950. package/dist/cli/registry/core.js +0 -27
  951. package/dist/cli/registry/session.d.ts +0 -2
  952. package/dist/cli/registry/session.js +0 -137
  953. package/dist/cli/registry/system.d.ts +0 -2
  954. package/dist/cli/registry/system.js +0 -95
  955. package/dist/cli/registry/tooling.d.ts +0 -2
  956. package/dist/cli/registry/tooling.js +0 -112
  957. package/dist/cli/registry/visual.d.ts +0 -2
  958. package/dist/cli/registry/visual.js +0 -91
  959. package/dist/cli/release-promotion-gate.d.ts +0 -21
  960. package/dist/cli/release-promotion-gate.js +0 -93
  961. package/dist/cli/root.d.ts +0 -11
  962. package/dist/cli/root.js +0 -119
  963. package/dist/cli/runtime/capability-selector.d.ts +0 -18
  964. package/dist/cli/runtime/capability-selector.js +0 -208
  965. package/dist/cli/runtime/cli-runtime.d.ts +0 -10
  966. package/dist/cli/runtime/cli-runtime.js +0 -35
  967. package/dist/cli/runtime/cli-writer.d.ts +0 -18
  968. package/dist/cli/runtime/cli-writer.js +0 -87
  969. package/dist/cli/runtime/command-bus.d.ts +0 -45
  970. package/dist/cli/runtime/command-bus.js +0 -132
  971. package/dist/cli/runtime/event-bus.d.ts +0 -12
  972. package/dist/cli/runtime/event-bus.js +0 -31
  973. package/dist/cli/runtime/generic-provider-adapter.d.ts +0 -24
  974. package/dist/cli/runtime/generic-provider-adapter.js +0 -38
  975. package/dist/cli/runtime/index.d.ts +0 -17
  976. package/dist/cli/runtime/index.js +0 -18
  977. package/dist/cli/runtime/intent-classifier.d.ts +0 -16
  978. package/dist/cli/runtime/intent-classifier.js +0 -113
  979. package/dist/cli/runtime/plan-controller.d.ts +0 -7
  980. package/dist/cli/runtime/plan-controller.js +0 -29
  981. package/dist/cli/runtime/provider-adapter-registry.d.ts +0 -32
  982. package/dist/cli/runtime/provider-adapter-registry.js +0 -60
  983. package/dist/cli/runtime/provider-event-normalizer.d.ts +0 -19
  984. package/dist/cli/runtime/provider-event-normalizer.js +0 -150
  985. package/dist/cli/runtime/run-controller.d.ts +0 -7
  986. package/dist/cli/runtime/run-controller.js +0 -30
  987. package/dist/cli/runtime/runtime-sidecar.d.ts +0 -17
  988. package/dist/cli/runtime/runtime-sidecar.js +0 -138
  989. package/dist/cli/runtime/task-controller.d.ts +0 -7
  990. package/dist/cli/runtime/task-controller.js +0 -29
  991. package/dist/cli/runtime/types.d.ts +0 -312
  992. package/dist/cli/runtime/types.js +0 -6
  993. package/dist/cli/theme/index.d.ts +0 -18
  994. package/dist/cli/theme/index.js +0 -11
  995. package/dist/cli/theme/oklab-quantize.d.ts +0 -29
  996. package/dist/cli/theme/oklab-quantize.js +0 -105
  997. package/dist/cli/theme/render-table.d.ts +0 -59
  998. package/dist/cli/theme/render-table.js +0 -112
  999. package/dist/cli/theme/status-frame.d.ts +0 -10
  1000. package/dist/cli/theme/status-frame.js +0 -22
  1001. package/dist/cli/theme/terminal-capability.d.ts +0 -23
  1002. package/dist/cli/theme/terminal-capability.js +0 -104
  1003. package/dist/cli/theme/theme-doc.d.ts +0 -22
  1004. package/dist/cli/theme/theme-doc.js +0 -97
  1005. package/dist/cli/theme/theme-registry.d.ts +0 -25
  1006. package/dist/cli/theme/theme-registry.js +0 -357
  1007. package/dist/cli/theme/theme-resolver.d.ts +0 -12
  1008. package/dist/cli/theme/theme-resolver.js +0 -38
  1009. package/dist/cli/theme/tier-explain.d.ts +0 -21
  1010. package/dist/cli/theme/tier-explain.js +0 -60
  1011. package/dist/cli/ui/event.d.ts +0 -65
  1012. package/dist/cli/ui/event.js +0 -1
  1013. package/dist/cli/ui/green-rain-renderer.d.ts +0 -17
  1014. package/dist/cli/ui/green-rain-renderer.js +0 -97
  1015. package/dist/cli/ui/neon-grid-renderer.d.ts +0 -17
  1016. package/dist/cli/ui/neon-grid-renderer.js +0 -100
  1017. package/dist/cli/ui/plain-renderer.d.ts +0 -37
  1018. package/dist/cli/ui/plain-renderer.js +0 -160
  1019. package/dist/cli/ui/renderer.d.ts +0 -7
  1020. package/dist/cli/ui/renderer.js +0 -1
  1021. package/dist/cli/ui/rich-renderer.d.ts +0 -32
  1022. package/dist/cli/ui/rich-renderer.js +0 -234
  1023. package/dist/cli/ui/route-blocked-panel.d.ts +0 -5
  1024. package/dist/cli/ui/route-blocked-panel.js +0 -67
  1025. package/dist/cli/ui/rust-forge-renderer.d.ts +0 -19
  1026. package/dist/cli/ui/rust-forge-renderer.js +0 -143
  1027. package/dist/cli/ui/system24-renderer.d.ts +0 -96
  1028. package/dist/cli/ui/system24-renderer.js +0 -531
  1029. package/dist/cli/v2/chat-repl.d.ts +0 -37
  1030. package/dist/cli/v2/chat-repl.js +0 -282
  1031. package/dist/cli/v2/cli-v2-skeleton.d.ts +0 -105
  1032. package/dist/cli/v2/cli-v2-skeleton.js +0 -462
  1033. package/dist/cli/v2/interactive-prompt.d.ts +0 -52
  1034. package/dist/cli/v2/interactive-prompt.js +0 -191
  1035. package/dist/cli/v2/persistent-memory.d.ts +0 -70
  1036. package/dist/cli/v2/persistent-memory.js +0 -229
  1037. package/dist/cli/v2/provider-commands.d.ts +0 -120
  1038. package/dist/cli/v2/provider-commands.js +0 -244
  1039. package/dist/cli/v2/release-commands.d.ts +0 -29
  1040. package/dist/cli/v2/release-commands.js +0 -95
  1041. package/dist/cli/v2/workflow-commands.d.ts +0 -72
  1042. package/dist/cli/v2/workflow-commands.js +0 -198
  1043. package/dist/cockpit/git-numstat.d.ts +0 -10
  1044. package/dist/cockpit/git-numstat.js +0 -97
  1045. package/dist/cockpit/lsp-status.d.ts +0 -5
  1046. package/dist/cockpit/lsp-status.js +0 -51
  1047. package/dist/cockpit/types.d.ts +0 -66
  1048. package/dist/cockpit/types.js +0 -4
  1049. package/dist/cockpit/views/rail-view.d.ts +0 -9
  1050. package/dist/cockpit/views/rail-view.js +0 -160
  1051. package/dist/commands/agent.d.ts +0 -6
  1052. package/dist/commands/agent.js +0 -263
  1053. package/dist/commands/appshot.d.ts +0 -15
  1054. package/dist/commands/appshot.js +0 -122
  1055. package/dist/commands/auth.d.ts +0 -43
  1056. package/dist/commands/auth.js +0 -167
  1057. package/dist/commands/browser.d.ts +0 -18
  1058. package/dist/commands/browser.js +0 -110
  1059. package/dist/commands/chat/chat-turn-dag.d.ts +0 -21
  1060. package/dist/commands/chat/chat-turn-dag.js +0 -72
  1061. package/dist/commands/chat/core.d.ts +0 -27
  1062. package/dist/commands/chat/core.js +0 -423
  1063. package/dist/commands/chat/index.d.ts +0 -5
  1064. package/dist/commands/chat/index.js +0 -5
  1065. package/dist/commands/chat/native-root-loop.d.ts +0 -57
  1066. package/dist/commands/chat/native-root-loop.js +0 -1114
  1067. package/dist/commands/chat/runtime.d.ts +0 -46
  1068. package/dist/commands/chat/runtime.js +0 -397
  1069. package/dist/commands/chat/slash/commands/control.d.ts +0 -2
  1070. package/dist/commands/chat/slash/commands/control.js +0 -196
  1071. package/dist/commands/chat/slash/commands/diagnostics.d.ts +0 -2
  1072. package/dist/commands/chat/slash/commands/diagnostics.js +0 -64
  1073. package/dist/commands/chat/slash/commands/harness.d.ts +0 -2
  1074. package/dist/commands/chat/slash/commands/harness.js +0 -21
  1075. package/dist/commands/chat/slash/commands/index.d.ts +0 -2
  1076. package/dist/commands/chat/slash/commands/index.js +0 -18
  1077. package/dist/commands/chat/slash/commands/routing.d.ts +0 -2
  1078. package/dist/commands/chat/slash/commands/routing.js +0 -355
  1079. package/dist/commands/chat/slash/commands/session.d.ts +0 -2
  1080. package/dist/commands/chat/slash/commands/session.js +0 -104
  1081. package/dist/commands/chat/slash/commands/tool-plane.d.ts +0 -2
  1082. package/dist/commands/chat/slash/commands/tool-plane.js +0 -64
  1083. package/dist/commands/chat/slash/commands/ui.d.ts +0 -2
  1084. package/dist/commands/chat/slash/commands/ui.js +0 -108
  1085. package/dist/commands/chat/slash/context.d.ts +0 -3
  1086. package/dist/commands/chat/slash/context.js +0 -9
  1087. package/dist/commands/chat/slash/format.d.ts +0 -3
  1088. package/dist/commands/chat/slash/format.js +0 -19
  1089. package/dist/commands/chat/slash/parser.d.ts +0 -15
  1090. package/dist/commands/chat/slash/parser.js +0 -97
  1091. package/dist/commands/chat/slash/registry.d.ts +0 -13
  1092. package/dist/commands/chat/slash/registry.js +0 -38
  1093. package/dist/commands/chat/slash/result.d.ts +0 -7
  1094. package/dist/commands/chat/slash/result.js +0 -35
  1095. package/dist/commands/chat/slash/types.d.ts +0 -32
  1096. package/dist/commands/chat/slash/types.js +0 -1
  1097. package/dist/commands/chat/startup.d.ts +0 -68
  1098. package/dist/commands/chat/startup.js +0 -150
  1099. package/dist/commands/chat/state.d.ts +0 -3
  1100. package/dist/commands/chat/state.js +0 -100
  1101. package/dist/commands/chat/utils.d.ts +0 -25
  1102. package/dist/commands/chat/utils.js +0 -216
  1103. package/dist/commands/chat.d.ts +0 -2
  1104. package/dist/commands/chat.js +0 -2
  1105. package/dist/commands/cockpit/core.d.ts +0 -5
  1106. package/dist/commands/cockpit/core.js +0 -91
  1107. package/dist/commands/cockpit/render.d.ts +0 -5
  1108. package/dist/commands/cockpit/render.js +0 -969
  1109. package/dist/commands/cockpit/scroll.d.ts +0 -39
  1110. package/dist/commands/cockpit/scroll.js +0 -87
  1111. package/dist/commands/cockpit/telemetry.d.ts +0 -30
  1112. package/dist/commands/cockpit/telemetry.js +0 -361
  1113. package/dist/commands/cockpit/update-loop.d.ts +0 -54
  1114. package/dist/commands/cockpit/update-loop.js +0 -285
  1115. package/dist/commands/cockpit/utils.d.ts +0 -233
  1116. package/dist/commands/cockpit/utils.js +0 -388
  1117. package/dist/commands/cockpit.d.ts +0 -8
  1118. package/dist/commands/cockpit.js +0 -7
  1119. package/dist/commands/codex.d.ts +0 -70
  1120. package/dist/commands/codex.js +0 -597
  1121. package/dist/commands/consent.d.ts +0 -24
  1122. package/dist/commands/consent.js +0 -255
  1123. package/dist/commands/cron.d.ts +0 -16
  1124. package/dist/commands/cron.js +0 -187
  1125. package/dist/commands/dag-from-spec.d.ts +0 -31
  1126. package/dist/commands/dag-from-spec.js +0 -344
  1127. package/dist/commands/dag.d.ts +0 -10
  1128. package/dist/commands/dag.js +0 -467
  1129. package/dist/commands/design.d.ts +0 -73
  1130. package/dist/commands/design.js +0 -1253
  1131. package/dist/commands/diff-runs.d.ts +0 -3
  1132. package/dist/commands/diff-runs.js +0 -36
  1133. package/dist/commands/do.d.ts +0 -29
  1134. package/dist/commands/do.js +0 -196
  1135. package/dist/commands/doctor/checks.d.ts +0 -19
  1136. package/dist/commands/doctor/checks.js +0 -861
  1137. package/dist/commands/doctor/core.d.ts +0 -2
  1138. package/dist/commands/doctor/core.js +0 -53
  1139. package/dist/commands/doctor/fix-plan.d.ts +0 -69
  1140. package/dist/commands/doctor/fix-plan.js +0 -78
  1141. package/dist/commands/doctor/fix.d.ts +0 -5
  1142. package/dist/commands/doctor/fix.js +0 -1002
  1143. package/dist/commands/doctor/report.d.ts +0 -7
  1144. package/dist/commands/doctor/report.js +0 -140
  1145. package/dist/commands/doctor/utils.d.ts +0 -52
  1146. package/dist/commands/doctor/utils.js +0 -124
  1147. package/dist/commands/doctor.d.ts +0 -2
  1148. package/dist/commands/doctor.js +0 -1
  1149. package/dist/commands/goal-interview.d.ts +0 -18
  1150. package/dist/commands/goal-interview.js +0 -396
  1151. package/dist/commands/goal.d.ts +0 -46
  1152. package/dist/commands/goal.js +0 -492
  1153. package/dist/commands/google.d.ts +0 -1
  1154. package/dist/commands/google.js +0 -27
  1155. package/dist/commands/graph.d.ts +0 -71
  1156. package/dist/commands/graph.js +0 -208
  1157. package/dist/commands/hud.d.ts +0 -57
  1158. package/dist/commands/hud.js +0 -1031
  1159. package/dist/commands/image.d.ts +0 -16
  1160. package/dist/commands/image.js +0 -102
  1161. package/dist/commands/init/config.d.ts +0 -8
  1162. package/dist/commands/init/config.js +0 -97
  1163. package/dist/commands/init/constants.d.ts +0 -7
  1164. package/dist/commands/init/constants.js +0 -49
  1165. package/dist/commands/init/content.d.ts +0 -12
  1166. package/dist/commands/init/content.js +0 -1775
  1167. package/dist/commands/init/core.d.ts +0 -2
  1168. package/dist/commands/init/core.js +0 -298
  1169. package/dist/commands/init/interactive.d.ts +0 -9
  1170. package/dist/commands/init/interactive.js +0 -170
  1171. package/dist/commands/init/scaffold.d.ts +0 -17
  1172. package/dist/commands/init/scaffold.js +0 -146
  1173. package/dist/commands/init/types.d.ts +0 -35
  1174. package/dist/commands/init/types.js +0 -1
  1175. package/dist/commands/init/utils.d.ts +0 -13
  1176. package/dist/commands/init/utils.js +0 -107
  1177. package/dist/commands/init.d.ts +0 -32
  1178. package/dist/commands/init.js +0 -2581
  1179. package/dist/commands/inspect.d.ts +0 -9
  1180. package/dist/commands/inspect.js +0 -12
  1181. package/dist/commands/lsp.d.ts +0 -8
  1182. package/dist/commands/lsp.js +0 -60
  1183. package/dist/commands/mcp/config.d.ts +0 -32
  1184. package/dist/commands/mcp/config.js +0 -264
  1185. package/dist/commands/mcp/doctor-fix.d.ts +0 -12
  1186. package/dist/commands/mcp/doctor-fix.js +0 -261
  1187. package/dist/commands/mcp/doctor.d.ts +0 -55
  1188. package/dist/commands/mcp/doctor.js +0 -401
  1189. package/dist/commands/mcp/list.d.ts +0 -1
  1190. package/dist/commands/mcp/list.js +0 -56
  1191. package/dist/commands/mcp/shared.d.ts +0 -47
  1192. package/dist/commands/mcp/shared.js +0 -192
  1193. package/dist/commands/mcp/test.d.ts +0 -5
  1194. package/dist/commands/mcp/test.js +0 -457
  1195. package/dist/commands/mcp.d.ts +0 -8
  1196. package/dist/commands/mcp.js +0 -5
  1197. package/dist/commands/menu.d.ts +0 -4
  1198. package/dist/commands/menu.js +0 -213
  1199. package/dist/commands/merge.d.ts +0 -9
  1200. package/dist/commands/merge.js +0 -363
  1201. package/dist/commands/mode.d.ts +0 -3
  1202. package/dist/commands/mode.js +0 -60
  1203. package/dist/commands/model.d.ts +0 -15
  1204. package/dist/commands/model.js +0 -215
  1205. package/dist/commands/notice.d.ts +0 -7
  1206. package/dist/commands/notice.js +0 -76
  1207. package/dist/commands/open-design-agent.d.ts +0 -46
  1208. package/dist/commands/open-design-agent.js +0 -569
  1209. package/dist/commands/orchestrate.d.ts +0 -18
  1210. package/dist/commands/orchestrate.js +0 -284
  1211. package/dist/commands/parallel/core.d.ts +0 -34
  1212. package/dist/commands/parallel/core.js +0 -296
  1213. package/dist/commands/parallel/index.d.ts +0 -5
  1214. package/dist/commands/parallel/index.js +0 -5
  1215. package/dist/commands/parallel/interactive.d.ts +0 -27
  1216. package/dist/commands/parallel/interactive.js +0 -172
  1217. package/dist/commands/parallel/orchestrator.d.ts +0 -40
  1218. package/dist/commands/parallel/orchestrator.js +0 -564
  1219. package/dist/commands/parallel/utils.d.ts +0 -12
  1220. package/dist/commands/parallel/utils.js +0 -114
  1221. package/dist/commands/parallel/worker.d.ts +0 -43
  1222. package/dist/commands/parallel/worker.js +0 -276
  1223. package/dist/commands/parallel.d.ts +0 -4
  1224. package/dist/commands/parallel.js +0 -3
  1225. package/dist/commands/plan.d.ts +0 -6
  1226. package/dist/commands/plan.js +0 -113
  1227. package/dist/commands/project-index.d.ts +0 -18
  1228. package/dist/commands/project-index.js +0 -312
  1229. package/dist/commands/provider.d.ts +0 -65
  1230. package/dist/commands/provider.js +0 -621
  1231. package/dist/commands/rail.d.ts +0 -6
  1232. package/dist/commands/rail.js +0 -7
  1233. package/dist/commands/replay.d.ts +0 -7
  1234. package/dist/commands/replay.js +0 -10
  1235. package/dist/commands/research.d.ts +0 -5
  1236. package/dist/commands/research.js +0 -48
  1237. package/dist/commands/run.d.ts +0 -15
  1238. package/dist/commands/run.js +0 -312
  1239. package/dist/commands/runs.d.ts +0 -36
  1240. package/dist/commands/runs.js +0 -504
  1241. package/dist/commands/screenshot.d.ts +0 -10
  1242. package/dist/commands/screenshot.js +0 -72
  1243. package/dist/commands/skill.d.ts +0 -28
  1244. package/dist/commands/skill.js +0 -382
  1245. package/dist/commands/snip.d.ts +0 -8
  1246. package/dist/commands/snip.js +0 -77
  1247. package/dist/commands/spec.d.ts +0 -17
  1248. package/dist/commands/spec.js +0 -262
  1249. package/dist/commands/specify.d.ts +0 -18
  1250. package/dist/commands/specify.js +0 -111
  1251. package/dist/commands/star.d.ts +0 -3
  1252. package/dist/commands/star.js +0 -35
  1253. package/dist/commands/summary.d.ts +0 -5
  1254. package/dist/commands/summary.js +0 -445
  1255. package/dist/commands/sync.d.ts +0 -6
  1256. package/dist/commands/sync.js +0 -129
  1257. package/dist/commands/team.d.ts +0 -8
  1258. package/dist/commands/team.js +0 -302
  1259. package/dist/commands/verify.d.ts +0 -4
  1260. package/dist/commands/verify.js +0 -320
  1261. package/dist/commands/version.d.ts +0 -6
  1262. package/dist/commands/version.js +0 -83
  1263. package/dist/commands/web-bridge.d.ts +0 -12
  1264. package/dist/commands/web-bridge.js +0 -75
  1265. package/dist/commands/why.d.ts +0 -14
  1266. package/dist/commands/why.js +0 -46
  1267. package/dist/commands/workflow.d.ts +0 -13
  1268. package/dist/commands/workflow.js +0 -385
  1269. package/dist/contracts/dag.d.ts +0 -134
  1270. package/dist/contracts/dag.js +0 -4
  1271. package/dist/contracts/decision.d.ts +0 -23
  1272. package/dist/contracts/decision.js +0 -1
  1273. package/dist/contracts/envelope.d.ts +0 -29
  1274. package/dist/contracts/envelope.js +0 -1
  1275. package/dist/contracts/errors.d.ts +0 -13
  1276. package/dist/contracts/errors.js +0 -15
  1277. package/dist/contracts/evidence.d.ts +0 -23
  1278. package/dist/contracts/evidence.js +0 -1
  1279. package/dist/contracts/goal.d.ts +0 -169
  1280. package/dist/contracts/goal.js +0 -4
  1281. package/dist/contracts/hud.d.ts +0 -17
  1282. package/dist/contracts/hud.js +0 -4
  1283. package/dist/contracts/index.d.ts +0 -8
  1284. package/dist/contracts/index.js +0 -8
  1285. package/dist/contracts/interview.d.ts +0 -106
  1286. package/dist/contracts/interview.js +0 -9
  1287. package/dist/contracts/orchestration.d.ts +0 -215
  1288. package/dist/contracts/orchestration.js +0 -4
  1289. package/dist/contracts/proof.d.ts +0 -32
  1290. package/dist/contracts/proof.js +0 -1
  1291. package/dist/contracts/provider-health.d.ts +0 -79
  1292. package/dist/contracts/provider-health.js +0 -57
  1293. package/dist/contracts/provider.d.ts +0 -35
  1294. package/dist/contracts/provider.js +0 -1
  1295. package/dist/contracts/replay.d.ts +0 -95
  1296. package/dist/contracts/replay.js +0 -7
  1297. package/dist/contracts/run.d.ts +0 -34
  1298. package/dist/contracts/run.js +0 -1
  1299. package/dist/contracts/safety.d.ts +0 -10
  1300. package/dist/contracts/safety.js +0 -4
  1301. package/dist/contracts/version.d.ts +0 -21
  1302. package/dist/contracts/version.js +0 -1
  1303. package/dist/contracts/web-bridge.d.ts +0 -95
  1304. package/dist/contracts/web-bridge.js +0 -168
  1305. package/dist/contracts/worker-context.d.ts +0 -70
  1306. package/dist/contracts/worker-context.js +0 -1
  1307. package/dist/evidence/attempt-record.d.ts +0 -78
  1308. package/dist/evidence/attempt-record.js +0 -16
  1309. package/dist/evidence/context-snapshot.d.ts +0 -20
  1310. package/dist/evidence/context-snapshot.js +0 -81
  1311. package/dist/evidence/decision-trace.d.ts +0 -14
  1312. package/dist/evidence/decision-trace.js +0 -54
  1313. package/dist/evidence/diagnosis.d.ts +0 -15
  1314. package/dist/evidence/diagnosis.js +0 -279
  1315. package/dist/evidence/evidence-recorder.d.ts +0 -19
  1316. package/dist/evidence/evidence-recorder.js +0 -55
  1317. package/dist/evidence/evidence-trust-score.d.ts +0 -101
  1318. package/dist/evidence/evidence-trust-score.js +0 -408
  1319. package/dist/evidence/index.d.ts +0 -21
  1320. package/dist/evidence/index.js +0 -10
  1321. package/dist/evidence/proof-trust-cli.d.ts +0 -8
  1322. package/dist/evidence/proof-trust-cli.js +0 -27
  1323. package/dist/evidence/proof-trust.d.ts +0 -14
  1324. package/dist/evidence/proof-trust.js +0 -381
  1325. package/dist/evidence/regression-proof-matrix.d.ts +0 -42
  1326. package/dist/evidence/regression-proof-matrix.js +0 -72
  1327. package/dist/evidence/run-trace.d.ts +0 -103
  1328. package/dist/evidence/run-trace.js +0 -191
  1329. package/dist/goal/compiler.d.ts +0 -5
  1330. package/dist/goal/compiler.js +0 -350
  1331. package/dist/goal/control-loop.d.ts +0 -124
  1332. package/dist/goal/control-loop.js +0 -1123
  1333. package/dist/goal/ensemble-memory.d.ts +0 -26
  1334. package/dist/goal/ensemble-memory.js +0 -55
  1335. package/dist/goal/eval-criteria.d.ts +0 -3
  1336. package/dist/goal/eval-criteria.js +0 -72
  1337. package/dist/goal/evidence.d.ts +0 -20
  1338. package/dist/goal/evidence.js +0 -321
  1339. package/dist/goal/goal-daemon.d.ts +0 -40
  1340. package/dist/goal/goal-daemon.js +0 -318
  1341. package/dist/goal/intake.d.ts +0 -48
  1342. package/dist/goal/intake.js +0 -561
  1343. package/dist/goal/intent-analyzer.d.ts +0 -9
  1344. package/dist/goal/intent-analyzer.js +0 -322
  1345. package/dist/goal/intent-frame.d.ts +0 -65
  1346. package/dist/goal/intent-frame.js +0 -596
  1347. package/dist/goal/interview-assimilation.d.ts +0 -13
  1348. package/dist/goal/interview-assimilation.js +0 -383
  1349. package/dist/goal/interview-question-bank.d.ts +0 -11
  1350. package/dist/goal/interview-question-bank.js +0 -225
  1351. package/dist/goal/interview-scoring.d.ts +0 -31
  1352. package/dist/goal/interview-scoring.js +0 -187
  1353. package/dist/goal/interview-session.d.ts +0 -25
  1354. package/dist/goal/interview-session.js +0 -116
  1355. package/dist/goal/persistence.d.ts +0 -11
  1356. package/dist/goal/persistence.js +0 -134
  1357. package/dist/goal/prompt-digest.d.ts +0 -13
  1358. package/dist/goal/prompt-digest.js +0 -111
  1359. package/dist/goal/scoring.d.ts +0 -2
  1360. package/dist/goal/scoring.js +0 -69
  1361. package/dist/goal/wake-policy.d.ts +0 -26
  1362. package/dist/goal/wake-policy.js +0 -58
  1363. package/dist/harness/create-harness-task-runner.d.ts +0 -43
  1364. package/dist/harness/create-harness-task-runner.js +0 -56
  1365. package/dist/harness/execute-harness-run.d.ts +0 -34
  1366. package/dist/harness/execute-harness-run.js +0 -109
  1367. package/dist/hooks/events.d.ts +0 -71
  1368. package/dist/hooks/events.js +0 -1
  1369. package/dist/hooks/hook-bus.d.ts +0 -13
  1370. package/dist/hooks/hook-bus.js +0 -59
  1371. package/dist/hooks/hook-registry.d.ts +0 -6
  1372. package/dist/hooks/hook-registry.js +0 -64
  1373. package/dist/hooks/index.d.ts +0 -3
  1374. package/dist/hooks/index.js +0 -2
  1375. package/dist/hud/index.d.ts +0 -9
  1376. package/dist/hud/index.js +0 -11
  1377. package/dist/hud/live-renderer.d.ts +0 -17
  1378. package/dist/hud/live-renderer.js +0 -52
  1379. package/dist/hud/render.d.ts +0 -64
  1380. package/dist/hud/render.js +0 -960
  1381. package/dist/hud/types.d.ts +0 -58
  1382. package/dist/hud/types.js +0 -7
  1383. package/dist/input/input-artifacts.d.ts +0 -10
  1384. package/dist/input/input-artifacts.js +0 -19
  1385. package/dist/input/input-envelope.d.ts +0 -86
  1386. package/dist/input/input-envelope.js +0 -87
  1387. package/dist/integrations/servarr/adapter.d.ts +0 -29
  1388. package/dist/integrations/servarr/adapter.js +0 -156
  1389. package/dist/integrations/servarr/commands.d.ts +0 -15
  1390. package/dist/integrations/servarr/commands.js +0 -119
  1391. package/dist/integrations/servarr/schema.d.ts +0 -34
  1392. package/dist/integrations/servarr/schema.js +0 -149
  1393. package/dist/kimi/ascii-art.d.ts +0 -1
  1394. package/dist/kimi/ascii-art.js +0 -23
  1395. package/dist/kimi/banner.d.ts +0 -53
  1396. package/dist/kimi/banner.js +0 -284
  1397. package/dist/kimi/bug-filter.d.ts +0 -15
  1398. package/dist/kimi/bug-filter.js +0 -150
  1399. package/dist/kimi/capability.d.ts +0 -25
  1400. package/dist/kimi/capability.js +0 -68
  1401. package/dist/kimi/isolated-home.d.ts +0 -21
  1402. package/dist/kimi/isolated-home.js +0 -270
  1403. package/dist/kimi/runner.d.ts +0 -74
  1404. package/dist/kimi/runner.js +0 -1052
  1405. package/dist/kimi/simple-art.d.ts +0 -1
  1406. package/dist/kimi/simple-art.js +0 -1
  1407. package/dist/kimi/statusline.d.ts +0 -26
  1408. package/dist/kimi/statusline.js +0 -142
  1409. package/dist/kimi/usage.d.ts +0 -52
  1410. package/dist/kimi/usage.js +0 -481
  1411. package/dist/kimi/wire-client.d.ts +0 -95
  1412. package/dist/kimi/wire-client.js +0 -338
  1413. package/dist/lsp/default-config.d.ts +0 -16
  1414. package/dist/lsp/default-config.js +0 -26
  1415. package/dist/mcp/acp-server.d.ts +0 -2
  1416. package/dist/mcp/acp-server.js +0 -357
  1417. package/dist/mcp/autoconnect.d.ts +0 -60
  1418. package/dist/mcp/autoconnect.js +0 -192
  1419. package/dist/mcp/client.d.ts +0 -112
  1420. package/dist/mcp/client.js +0 -276
  1421. package/dist/mcp/config-permissions.d.ts +0 -23
  1422. package/dist/mcp/config-permissions.js +0 -66
  1423. package/dist/mcp/consent-flow.d.ts +0 -152
  1424. package/dist/mcp/consent-flow.js +0 -329
  1425. package/dist/mcp/filesystem-readonly-server.d.ts +0 -2
  1426. package/dist/mcp/filesystem-readonly-server.js +0 -320
  1427. package/dist/mcp/governance.d.ts +0 -292
  1428. package/dist/mcp/governance.js +0 -602
  1429. package/dist/mcp/host.d.ts +0 -154
  1430. package/dist/mcp/host.js +0 -792
  1431. package/dist/mcp/omk-project-server.d.ts +0 -2
  1432. package/dist/mcp/omk-project-server.js +0 -1632
  1433. package/dist/mcp/omk-web-bridge-server.d.ts +0 -14
  1434. package/dist/mcp/omk-web-bridge-server.js +0 -154
  1435. package/dist/mcp/permission-resolver.d.ts +0 -67
  1436. package/dist/mcp/permission-resolver.js +0 -124
  1437. package/dist/mcp/quality-gate.d.ts +0 -36
  1438. package/dist/mcp/quality-gate.js +0 -247
  1439. package/dist/mcp/quarantine.d.ts +0 -11
  1440. package/dist/mcp/quarantine.js +0 -79
  1441. package/dist/mcp/secret-scanner.d.ts +0 -195
  1442. package/dist/mcp/secret-scanner.js +0 -742
  1443. package/dist/mcp/server-catalog.d.ts +0 -36
  1444. package/dist/mcp/server-catalog.js +0 -168
  1445. package/dist/mcp/shared-secret-registry.d.ts +0 -61
  1446. package/dist/mcp/shared-secret-registry.js +0 -171
  1447. package/dist/mcp/transports/stdio.d.ts +0 -22
  1448. package/dist/mcp/transports/stdio.js +0 -165
  1449. package/dist/mcp/transports/streamable-http.d.ts +0 -31
  1450. package/dist/mcp/transports/streamable-http.js +0 -289
  1451. package/dist/mcp/transports/transport.d.ts +0 -20
  1452. package/dist/mcp/transports/transport.js +0 -3
  1453. package/dist/memory/embedding.d.ts +0 -11
  1454. package/dist/memory/embedding.js +0 -24
  1455. package/dist/memory/graph-delta-log.d.ts +0 -137
  1456. package/dist/memory/graph-delta-log.js +0 -650
  1457. package/dist/memory/graph-viewer.d.ts +0 -72
  1458. package/dist/memory/graph-viewer.js +0 -383
  1459. package/dist/memory/kuzu-memory-store.d.ts +0 -37
  1460. package/dist/memory/kuzu-memory-store.js +0 -453
  1461. package/dist/memory/local-graph-memory-store.d.ts +0 -189
  1462. package/dist/memory/local-graph-memory-store.js +0 -1305
  1463. package/dist/memory/memory-config.d.ts +0 -51
  1464. package/dist/memory/memory-config.js +0 -187
  1465. package/dist/memory/memory-store.d.ts +0 -66
  1466. package/dist/memory/memory-store.js +0 -228
  1467. package/dist/memory/ontology-model.d.ts +0 -175
  1468. package/dist/memory/ontology-model.js +0 -131
  1469. package/dist/openai/image-client.d.ts +0 -103
  1470. package/dist/openai/image-client.js +0 -380
  1471. package/dist/orchestration/adaptorch-topology.d.ts +0 -59
  1472. package/dist/orchestration/adaptorch-topology.js +0 -194
  1473. package/dist/orchestration/agent-worker.d.ts +0 -72
  1474. package/dist/orchestration/agent-worker.js +0 -278
  1475. package/dist/orchestration/capability-agents.d.ts +0 -14
  1476. package/dist/orchestration/capability-agents.js +0 -180
  1477. package/dist/orchestration/capability-routing.d.ts +0 -65
  1478. package/dist/orchestration/capability-routing.js +0 -121
  1479. package/dist/orchestration/compiled-dag-executor.d.ts +0 -56
  1480. package/dist/orchestration/compiled-dag-executor.js +0 -88
  1481. package/dist/orchestration/completion-artifacts.d.ts +0 -37
  1482. package/dist/orchestration/completion-artifacts.js +0 -84
  1483. package/dist/orchestration/completion-sentinel.d.ts +0 -37
  1484. package/dist/orchestration/completion-sentinel.js +0 -66
  1485. package/dist/orchestration/contracts/index.d.ts +0 -45
  1486. package/dist/orchestration/contracts/index.js +0 -6
  1487. package/dist/orchestration/dag-artifacts.d.ts +0 -11
  1488. package/dist/orchestration/dag-artifacts.js +0 -42
  1489. package/dist/orchestration/dag-compiler-presets.d.ts +0 -20
  1490. package/dist/orchestration/dag-compiler-presets.js +0 -476
  1491. package/dist/orchestration/dag-compiler-types.d.ts +0 -43
  1492. package/dist/orchestration/dag-compiler-types.js +0 -1
  1493. package/dist/orchestration/dag-compiler.d.ts +0 -3
  1494. package/dist/orchestration/dag-compiler.js +0 -135
  1495. package/dist/orchestration/dag.d.ts +0 -158
  1496. package/dist/orchestration/dag.js +0 -310
  1497. package/dist/orchestration/diagnostics.d.ts +0 -27
  1498. package/dist/orchestration/diagnostics.js +0 -262
  1499. package/dist/orchestration/enhanced-modes.d.ts +0 -116
  1500. package/dist/orchestration/enhanced-modes.js +0 -231
  1501. package/dist/orchestration/enhanced-parallel-orchestrator.d.ts +0 -127
  1502. package/dist/orchestration/enhanced-parallel-orchestrator.js +0 -734
  1503. package/dist/orchestration/ensemble-decision.d.ts +0 -40
  1504. package/dist/orchestration/ensemble-decision.js +0 -297
  1505. package/dist/orchestration/ensemble.d.ts +0 -22
  1506. package/dist/orchestration/ensemble.js +0 -558
  1507. package/dist/orchestration/eta.d.ts +0 -10
  1508. package/dist/orchestration/eta.js +0 -75
  1509. package/dist/orchestration/evidence-check.d.ts +0 -36
  1510. package/dist/orchestration/evidence-check.js +0 -257
  1511. package/dist/orchestration/evidence-gate.d.ts +0 -34
  1512. package/dist/orchestration/evidence-gate.js +0 -501
  1513. package/dist/orchestration/execution-planner.d.ts +0 -40
  1514. package/dist/orchestration/execution-planner.js +0 -252
  1515. package/dist/orchestration/executor.d.ts +0 -11
  1516. package/dist/orchestration/executor.js +0 -979
  1517. package/dist/orchestration/interactive-orchestrator.d.ts +0 -134
  1518. package/dist/orchestration/interactive-orchestrator.js +0 -450
  1519. package/dist/orchestration/log-streamer.d.ts +0 -104
  1520. package/dist/orchestration/log-streamer.js +0 -293
  1521. package/dist/orchestration/loop-artifacts.d.ts +0 -14
  1522. package/dist/orchestration/loop-artifacts.js +0 -20
  1523. package/dist/orchestration/loop-controller.d.ts +0 -14
  1524. package/dist/orchestration/loop-controller.js +0 -311
  1525. package/dist/orchestration/loop-guard.d.ts +0 -28
  1526. package/dist/orchestration/loop-guard.js +0 -104
  1527. package/dist/orchestration/loop-state.d.ts +0 -86
  1528. package/dist/orchestration/loop-state.js +0 -1
  1529. package/dist/orchestration/merge-arbiter.d.ts +0 -91
  1530. package/dist/orchestration/merge-arbiter.js +0 -376
  1531. package/dist/orchestration/node-monitor.d.ts +0 -18
  1532. package/dist/orchestration/node-monitor.js +0 -98
  1533. package/dist/orchestration/orchestrate-prompt.d.ts +0 -43
  1534. package/dist/orchestration/orchestrate-prompt.js +0 -533
  1535. package/dist/orchestration/orchestration-state.d.ts +0 -3
  1536. package/dist/orchestration/orchestration-state.js +0 -2
  1537. package/dist/orchestration/parallel-orchestrator.d.ts +0 -165
  1538. package/dist/orchestration/parallel-orchestrator.js +0 -607
  1539. package/dist/orchestration/parallel-ui.d.ts +0 -51
  1540. package/dist/orchestration/parallel-ui.js +0 -470
  1541. package/dist/orchestration/repair-policy.d.ts +0 -20
  1542. package/dist/orchestration/repair-policy.js +0 -221
  1543. package/dist/orchestration/routing/inventory.d.ts +0 -9
  1544. package/dist/orchestration/routing/inventory.js +0 -273
  1545. package/dist/orchestration/routing/mcp-config.d.ts +0 -17
  1546. package/dist/orchestration/routing/mcp-config.js +0 -154
  1547. package/dist/orchestration/routing/types.d.ts +0 -38
  1548. package/dist/orchestration/routing/types.js +0 -4
  1549. package/dist/orchestration/routing.d.ts +0 -35
  1550. package/dist/orchestration/routing.js +0 -986
  1551. package/dist/orchestration/run-state.d.ts +0 -36
  1552. package/dist/orchestration/run-state.js +0 -176
  1553. package/dist/orchestration/scheduler.d.ts +0 -9
  1554. package/dist/orchestration/scheduler.js +0 -85
  1555. package/dist/orchestration/skill-assigner.d.ts +0 -22
  1556. package/dist/orchestration/skill-assigner.js +0 -345
  1557. package/dist/orchestration/state-machine/index.d.ts +0 -3
  1558. package/dist/orchestration/state-machine/index.js +0 -3
  1559. package/dist/orchestration/state-machine/node-state-machine.d.ts +0 -24
  1560. package/dist/orchestration/state-machine/node-state-machine.js +0 -35
  1561. package/dist/orchestration/state-machine/run-state-machine.d.ts +0 -38
  1562. package/dist/orchestration/state-machine/run-state-machine.js +0 -161
  1563. package/dist/orchestration/state-machine/run-state-manager.d.ts +0 -108
  1564. package/dist/orchestration/state-machine/run-state-manager.js +0 -314
  1565. package/dist/orchestration/state-persister.d.ts +0 -7
  1566. package/dist/orchestration/state-persister.js +0 -84
  1567. package/dist/orchestration/task-graph.d.ts +0 -29
  1568. package/dist/orchestration/task-graph.js +0 -261
  1569. package/dist/orchestration/verification-only.d.ts +0 -28
  1570. package/dist/orchestration/verification-only.js +0 -94
  1571. package/dist/providers/anthropic-messages-runner.d.ts +0 -17
  1572. package/dist/providers/anthropic-messages-runner.js +0 -197
  1573. package/dist/providers/attempt-recorder.d.ts +0 -10
  1574. package/dist/providers/attempt-recorder.js +0 -38
  1575. package/dist/providers/codex-cli-runner.d.ts +0 -11
  1576. package/dist/providers/codex-cli-runner.js +0 -129
  1577. package/dist/providers/context-preflight.d.ts +0 -47
  1578. package/dist/providers/context-preflight.js +0 -134
  1579. package/dist/providers/deepseek/deepseek-balance.d.ts +0 -29
  1580. package/dist/providers/deepseek/deepseek-balance.js +0 -80
  1581. package/dist/providers/deepseek/deepseek-client.d.ts +0 -53
  1582. package/dist/providers/deepseek/deepseek-client.js +0 -164
  1583. package/dist/providers/deepseek/deepseek-config.d.ts +0 -89
  1584. package/dist/providers/deepseek/deepseek-config.js +0 -272
  1585. package/dist/providers/deepseek/deepseek-errors.d.ts +0 -5
  1586. package/dist/providers/deepseek/deepseek-errors.js +0 -48
  1587. package/dist/providers/deepseek/deepseek-provider.d.ts +0 -10
  1588. package/dist/providers/deepseek/deepseek-provider.js +0 -162
  1589. package/dist/providers/deepseek/deepseek-super-config.d.ts +0 -31
  1590. package/dist/providers/deepseek/deepseek-super-config.js +0 -136
  1591. package/dist/providers/deepseek-provider.d.ts +0 -8
  1592. package/dist/providers/deepseek-provider.js +0 -78
  1593. package/dist/providers/health.d.ts +0 -16
  1594. package/dist/providers/health.js +0 -101
  1595. package/dist/providers/index.d.ts +0 -23
  1596. package/dist/providers/index.js +0 -23
  1597. package/dist/providers/kimi-provider-failure.d.ts +0 -8
  1598. package/dist/providers/kimi-provider-failure.js +0 -56
  1599. package/dist/providers/kimi-provider.d.ts +0 -7
  1600. package/dist/providers/kimi-provider.js +0 -27
  1601. package/dist/providers/model-registry.d.ts +0 -103
  1602. package/dist/providers/model-registry.js +0 -605
  1603. package/dist/providers/model-table.d.ts +0 -24
  1604. package/dist/providers/model-table.js +0 -140
  1605. package/dist/providers/model-tabs.d.ts +0 -33
  1606. package/dist/providers/model-tabs.js +0 -98
  1607. package/dist/providers/openai-compatible-runner.d.ts +0 -17
  1608. package/dist/providers/openai-compatible-runner.js +0 -180
  1609. package/dist/providers/provider-health.d.ts +0 -46
  1610. package/dist/providers/provider-health.js +0 -200
  1611. package/dist/providers/provider-router.d.ts +0 -8
  1612. package/dist/providers/provider-router.js +0 -174
  1613. package/dist/providers/provider-runtime.d.ts +0 -17
  1614. package/dist/providers/provider-runtime.js +0 -262
  1615. package/dist/providers/provider-stats.d.ts +0 -56
  1616. package/dist/providers/provider-stats.js +0 -303
  1617. package/dist/providers/provider-task-runner.d.ts +0 -23
  1618. package/dist/providers/provider-task-runner.js +0 -1202
  1619. package/dist/providers/provider.d.ts +0 -76
  1620. package/dist/providers/provider.js +0 -9
  1621. package/dist/providers/router.d.ts +0 -14
  1622. package/dist/providers/router.js +0 -563
  1623. package/dist/providers/runner/deepseek-helpers.d.ts +0 -38
  1624. package/dist/providers/runner/deepseek-helpers.js +0 -150
  1625. package/dist/providers/runner/env.d.ts +0 -12
  1626. package/dist/providers/runner/env.js +0 -98
  1627. package/dist/providers/runner/execution.d.ts +0 -26
  1628. package/dist/providers/runner/execution.js +0 -42
  1629. package/dist/providers/runner/helpers.d.ts +0 -9
  1630. package/dist/providers/runner/helpers.js +0 -38
  1631. package/dist/providers/runner/results.d.ts +0 -26
  1632. package/dist/providers/runner/results.js +0 -104
  1633. package/dist/providers/thinking-levels.d.ts +0 -7
  1634. package/dist/providers/thinking-levels.js +0 -70
  1635. package/dist/providers/types.d.ts +0 -143
  1636. package/dist/providers/types.js +0 -60
  1637. package/dist/replay/differ.d.ts +0 -5
  1638. package/dist/replay/differ.js +0 -314
  1639. package/dist/replay/index.d.ts +0 -6
  1640. package/dist/replay/index.js +0 -4
  1641. package/dist/replay/inspector.d.ts +0 -14
  1642. package/dist/replay/inspector.js +0 -264
  1643. package/dist/replay/manifest-builder.d.ts +0 -11
  1644. package/dist/replay/manifest-builder.js +0 -184
  1645. package/dist/replay/replay-engine.d.ts +0 -18
  1646. package/dist/replay/replay-engine.js +0 -265
  1647. package/dist/runtime/adapter.d.ts +0 -77
  1648. package/dist/runtime/adapter.js +0 -28
  1649. package/dist/runtime/advanced-control-loop.d.ts +0 -60
  1650. package/dist/runtime/advanced-control-loop.js +0 -136
  1651. package/dist/runtime/agent-runtime.d.ts +0 -133
  1652. package/dist/runtime/agent-runtime.js +0 -18
  1653. package/dist/runtime/blast-radius.d.ts +0 -10
  1654. package/dist/runtime/blast-radius.js +0 -14
  1655. package/dist/runtime/cache-stable-session.d.ts +0 -55
  1656. package/dist/runtime/cache-stable-session.js +0 -108
  1657. package/dist/runtime/capability-injection.d.ts +0 -39
  1658. package/dist/runtime/capability-injection.js +0 -93
  1659. package/dist/runtime/chat-advisory-runtime.d.ts +0 -2
  1660. package/dist/runtime/chat-advisory-runtime.js +0 -71
  1661. package/dist/runtime/child-env.d.ts +0 -31
  1662. package/dist/runtime/child-env.js +0 -131
  1663. package/dist/runtime/codex-cli-runtime.d.ts +0 -10
  1664. package/dist/runtime/codex-cli-runtime.js +0 -78
  1665. package/dist/runtime/codex-runtime.d.ts +0 -35
  1666. package/dist/runtime/codex-runtime.js +0 -264
  1667. package/dist/runtime/command-bus.d.ts +0 -13
  1668. package/dist/runtime/command-bus.js +0 -57
  1669. package/dist/runtime/context-broker-converter.d.ts +0 -9
  1670. package/dist/runtime/context-broker-converter.js +0 -96
  1671. package/dist/runtime/context-broker.d.ts +0 -34
  1672. package/dist/runtime/context-broker.js +0 -321
  1673. package/dist/runtime/context-budget-optimizer.d.ts +0 -73
  1674. package/dist/runtime/context-budget-optimizer.js +0 -300
  1675. package/dist/runtime/context-capsule.d.ts +0 -81
  1676. package/dist/runtime/context-capsule.js +0 -46
  1677. package/dist/runtime/contracts/command-envelope.d.ts +0 -99
  1678. package/dist/runtime/contracts/command-envelope.js +0 -5
  1679. package/dist/runtime/contracts/evidence.d.ts +0 -87
  1680. package/dist/runtime/contracts/evidence.js +0 -7
  1681. package/dist/runtime/contracts/reasoning-trace.d.ts +0 -120
  1682. package/dist/runtime/contracts/reasoning-trace.js +0 -10
  1683. package/dist/runtime/contracts/router-v2.d.ts +0 -44
  1684. package/dist/runtime/contracts/router-v2.js +0 -4
  1685. package/dist/runtime/contracts/shared.d.ts +0 -34
  1686. package/dist/runtime/contracts/shared.js +0 -12
  1687. package/dist/runtime/contracts/weakness-remediation.d.ts +0 -83
  1688. package/dist/runtime/contracts/weakness-remediation.js +0 -44
  1689. package/dist/runtime/core-verified-preset.d.ts +0 -37
  1690. package/dist/runtime/core-verified-preset.js +0 -205
  1691. package/dist/runtime/debloat-nlp.d.ts +0 -140
  1692. package/dist/runtime/debloat-nlp.js +0 -398
  1693. package/dist/runtime/deepseek-runtime.d.ts +0 -28
  1694. package/dist/runtime/deepseek-runtime.js +0 -270
  1695. package/dist/runtime/external-cli-adapter.d.ts +0 -29
  1696. package/dist/runtime/external-cli-adapter.js +0 -283
  1697. package/dist/runtime/headroom-policy.d.ts +0 -37
  1698. package/dist/runtime/headroom-policy.js +0 -122
  1699. package/dist/runtime/index.d.ts +0 -8
  1700. package/dist/runtime/index.js +0 -8
  1701. package/dist/runtime/kimi-api-runtime.d.ts +0 -52
  1702. package/dist/runtime/kimi-api-runtime.js +0 -425
  1703. package/dist/runtime/kimi-print-runtime.d.ts +0 -10
  1704. package/dist/runtime/kimi-print-runtime.js +0 -87
  1705. package/dist/runtime/kimi-wire-protocol-runtime.d.ts +0 -44
  1706. package/dist/runtime/kimi-wire-protocol-runtime.js +0 -436
  1707. package/dist/runtime/kimi-wire-runtime.d.ts +0 -17
  1708. package/dist/runtime/kimi-wire-runtime.js +0 -112
  1709. package/dist/runtime/legacy-bridge.d.ts +0 -14
  1710. package/dist/runtime/legacy-bridge.js +0 -27
  1711. package/dist/runtime/local-llm-runtime.d.ts +0 -29
  1712. package/dist/runtime/local-llm-runtime.js +0 -231
  1713. package/dist/runtime/mimo-api-runtime.d.ts +0 -13
  1714. package/dist/runtime/mimo-api-runtime.js +0 -24
  1715. package/dist/runtime/nlg-renderer.d.ts +0 -38
  1716. package/dist/runtime/nlg-renderer.js +0 -132
  1717. package/dist/runtime/ouroboros-policy.d.ts +0 -57
  1718. package/dist/runtime/ouroboros-policy.js +0 -134
  1719. package/dist/runtime/output-router.d.ts +0 -20
  1720. package/dist/runtime/output-router.js +0 -171
  1721. package/dist/runtime/process-session.d.ts +0 -27
  1722. package/dist/runtime/process-session.js +0 -35
  1723. package/dist/runtime/prompt-envelope.d.ts +0 -28
  1724. package/dist/runtime/prompt-envelope.js +0 -78
  1725. package/dist/runtime/proof-bundle-trust.d.ts +0 -74
  1726. package/dist/runtime/proof-bundle-trust.js +0 -100
  1727. package/dist/runtime/provider-event-normalizer.d.ts +0 -117
  1728. package/dist/runtime/provider-event-normalizer.js +0 -454
  1729. package/dist/runtime/provider-maturity-gate.d.ts +0 -43
  1730. package/dist/runtime/provider-maturity-gate.js +0 -127
  1731. package/dist/runtime/provider-tool-contracts.d.ts +0 -24
  1732. package/dist/runtime/provider-tool-contracts.js +0 -56
  1733. package/dist/runtime/public-surface.d.ts +0 -93
  1734. package/dist/runtime/public-surface.js +0 -146
  1735. package/dist/runtime/reasoning-trace.d.ts +0 -46
  1736. package/dist/runtime/reasoning-trace.js +0 -289
  1737. package/dist/runtime/renderers.d.ts +0 -33
  1738. package/dist/runtime/renderers.js +0 -221
  1739. package/dist/runtime/router-v2-scoring.d.ts +0 -16
  1740. package/dist/runtime/router-v2-scoring.js +0 -156
  1741. package/dist/runtime/runtime-backed-task-runner.d.ts +0 -20
  1742. package/dist/runtime/runtime-backed-task-runner.js +0 -174
  1743. package/dist/runtime/runtime-bootstrap.d.ts +0 -21
  1744. package/dist/runtime/runtime-bootstrap.js +0 -208
  1745. package/dist/runtime/runtime-registry.d.ts +0 -23
  1746. package/dist/runtime/runtime-registry.js +0 -95
  1747. package/dist/runtime/runtime-router.d.ts +0 -56
  1748. package/dist/runtime/runtime-router.js +0 -652
  1749. package/dist/runtime/sandbox-profile.d.ts +0 -54
  1750. package/dist/runtime/sandbox-profile.js +0 -136
  1751. package/dist/runtime/slash-commands.d.ts +0 -46
  1752. package/dist/runtime/slash-commands.js +0 -619
  1753. package/dist/runtime/stable-json.d.ts +0 -9
  1754. package/dist/runtime/stable-json.js +0 -45
  1755. package/dist/runtime/tool-call-repair.d.ts +0 -35
  1756. package/dist/runtime/tool-call-repair.js +0 -181
  1757. package/dist/runtime/tool-dispatch-contracts.d.ts +0 -100
  1758. package/dist/runtime/tool-dispatch-contracts.js +0 -160
  1759. package/dist/runtime/tool-plane.d.ts +0 -31
  1760. package/dist/runtime/tool-plane.js +0 -112
  1761. package/dist/runtime/tool-proxy.d.ts +0 -20
  1762. package/dist/runtime/tool-proxy.js +0 -109
  1763. package/dist/runtime/tool-registry-contract.d.ts +0 -40
  1764. package/dist/runtime/tool-registry-contract.js +0 -52
  1765. package/dist/runtime/ui-components.d.ts +0 -64
  1766. package/dist/runtime/ui-components.js +0 -232
  1767. package/dist/runtime/weakness-remediation-index.d.ts +0 -27
  1768. package/dist/runtime/weakness-remediation-index.js +0 -37
  1769. package/dist/runtime/weights-config.d.ts +0 -90
  1770. package/dist/runtime/weights-config.js +0 -249
  1771. package/dist/runtime/worker-manifest.d.ts +0 -34
  1772. package/dist/runtime/worker-manifest.js +0 -204
  1773. package/dist/safety/approval-policy.d.ts +0 -4
  1774. package/dist/safety/approval-policy.js +0 -33
  1775. package/dist/safety/enforcement-engine.d.ts +0 -89
  1776. package/dist/safety/enforcement-engine.js +0 -279
  1777. package/dist/safety/guard-hooks.d.ts +0 -3
  1778. package/dist/safety/guard-hooks.js +0 -64
  1779. package/dist/safety/tool-authority-gate.d.ts +0 -102
  1780. package/dist/safety/tool-authority-gate.js +0 -200
  1781. package/dist/schema/decision.schema.d.ts +0 -57
  1782. package/dist/schema/decision.schema.js +0 -32
  1783. package/dist/schema/envelope.schema.d.ts +0 -216
  1784. package/dist/schema/envelope.schema.js +0 -38
  1785. package/dist/schema/error.schema.d.ts +0 -51
  1786. package/dist/schema/error.schema.js +0 -12
  1787. package/dist/schema/evidence.schema.d.ts +0 -58
  1788. package/dist/schema/evidence.schema.js +0 -31
  1789. package/dist/schema/index.d.ts +0 -8
  1790. package/dist/schema/index.js +0 -8
  1791. package/dist/schema/proof-bundle.schema.d.ts +0 -150
  1792. package/dist/schema/proof-bundle.schema.js +0 -41
  1793. package/dist/schema/provider.schema.d.ts +0 -138
  1794. package/dist/schema/provider.schema.js +0 -35
  1795. package/dist/schema/run-manifest.schema.d.ts +0 -168
  1796. package/dist/schema/run-manifest.schema.js +0 -35
  1797. package/dist/schema/version.schema.d.ts +0 -64
  1798. package/dist/schema/version.schema.js +0 -21
  1799. package/dist/theme/ansi.d.ts +0 -15
  1800. package/dist/theme/ansi.js +0 -48
  1801. package/dist/theme/colors.d.ts +0 -87
  1802. package/dist/theme/colors.js +0 -105
  1803. package/dist/theme/extended-palette.d.ts +0 -85
  1804. package/dist/theme/extended-palette.js +0 -108
  1805. package/dist/theme/hud-theme.d.ts +0 -6
  1806. package/dist/theme/hud-theme.js +0 -41
  1807. package/dist/theme/index.d.ts +0 -12
  1808. package/dist/theme/index.js +0 -20
  1809. package/dist/theme/layout.d.ts +0 -24
  1810. package/dist/theme/layout.js +0 -160
  1811. package/dist/theme/metrics.d.ts +0 -23
  1812. package/dist/theme/metrics.js +0 -93
  1813. package/dist/theme/parallel.d.ts +0 -68
  1814. package/dist/theme/parallel.js +0 -355
  1815. package/dist/theme/working-indicator.d.ts +0 -38
  1816. package/dist/theme/working-indicator.js +0 -149
  1817. package/dist/tui/model.d.ts +0 -28
  1818. package/dist/tui/model.js +0 -1
  1819. package/dist/tui/terminal-frame-renderer.d.ts +0 -19
  1820. package/dist/tui/terminal-frame-renderer.js +0 -60
  1821. package/dist/tui/views/capabilities-view.d.ts +0 -3
  1822. package/dist/tui/views/capabilities-view.js +0 -13
  1823. package/dist/tui/views/common.d.ts +0 -11
  1824. package/dist/tui/views/common.js +0 -35
  1825. package/dist/tui/views/dag-view.d.ts +0 -3
  1826. package/dist/tui/views/dag-view.js +0 -12
  1827. package/dist/tui/views/evidence-view.d.ts +0 -3
  1828. package/dist/tui/views/evidence-view.js +0 -18
  1829. package/dist/tui/views/index.d.ts +0 -4
  1830. package/dist/tui/views/index.js +0 -3
  1831. package/dist/ui/omk-sigil.d.ts +0 -13
  1832. package/dist/ui/omk-sigil.js +0 -268
  1833. package/dist/ui/omk-working-sweep.d.ts +0 -61
  1834. package/dist/ui/omk-working-sweep.js +0 -406
  1835. package/dist/util/agent-schema.d.ts +0 -24
  1836. package/dist/util/agent-schema.js +0 -293
  1837. package/dist/util/appshot-store.d.ts +0 -68
  1838. package/dist/util/appshot-store.js +0 -506
  1839. package/dist/util/chat-agent-mode.d.ts +0 -184
  1840. package/dist/util/chat-agent-mode.js +0 -938
  1841. package/dist/util/chat-cockpit.d.ts +0 -54
  1842. package/dist/util/chat-cockpit.js +0 -350
  1843. package/dist/util/chat-startup.d.ts +0 -35
  1844. package/dist/util/chat-startup.js +0 -330
  1845. package/dist/util/chat-state.d.ts +0 -27
  1846. package/dist/util/chat-state.js +0 -105
  1847. package/dist/util/checkpoint.d.ts +0 -21
  1848. package/dist/util/checkpoint.js +0 -238
  1849. package/dist/util/cli-contract.d.ts +0 -46
  1850. package/dist/util/cli-contract.js +0 -72
  1851. package/dist/util/clipboard-image.d.ts +0 -49
  1852. package/dist/util/clipboard-image.js +0 -263
  1853. package/dist/util/cron-engine.d.ts +0 -24
  1854. package/dist/util/cron-engine.js +0 -227
  1855. package/dist/util/events-logger.d.ts +0 -30
  1856. package/dist/util/events-logger.js +0 -135
  1857. package/dist/util/execution-selection.d.ts +0 -13
  1858. package/dist/util/execution-selection.js +0 -82
  1859. package/dist/util/first-run-star.d.ts +0 -58
  1860. package/dist/util/first-run-star.js +0 -264
  1861. package/dist/util/fs/core.d.ts +0 -5
  1862. package/dist/util/fs/core.js +0 -35
  1863. package/dist/util/fs/internal.d.ts +0 -14
  1864. package/dist/util/fs/internal.js +0 -169
  1865. package/dist/util/fs/kimi-sync.d.ts +0 -41
  1866. package/dist/util/fs/kimi-sync.js +0 -495
  1867. package/dist/util/fs/logo.d.ts +0 -2
  1868. package/dist/util/fs/logo.js +0 -78
  1869. package/dist/util/fs/manifest.d.ts +0 -6
  1870. package/dist/util/fs/manifest.js +0 -40
  1871. package/dist/util/fs/mcp-diagnose.d.ts +0 -15
  1872. package/dist/util/fs/mcp-diagnose.js +0 -204
  1873. package/dist/util/fs/mcp-runtime-config.d.ts +0 -23
  1874. package/dist/util/fs/mcp-runtime-config.js +0 -412
  1875. package/dist/util/fs/paths.d.ts +0 -13
  1876. package/dist/util/fs/paths.js +0 -82
  1877. package/dist/util/fs/preflight.d.ts +0 -27
  1878. package/dist/util/fs/preflight.js +0 -271
  1879. package/dist/util/fs.d.ts +0 -8
  1880. package/dist/util/fs.js +0 -8
  1881. package/dist/util/git.d.ts +0 -11
  1882. package/dist/util/git.js +0 -39
  1883. package/dist/util/help-text.d.ts +0 -1
  1884. package/dist/util/help-text.js +0 -60
  1885. package/dist/util/i18n.d.ts +0 -10
  1886. package/dist/util/i18n.js +0 -848
  1887. package/dist/util/json-envelope.d.ts +0 -15
  1888. package/dist/util/json-envelope.js +0 -28
  1889. package/dist/util/mcp-preflight.d.ts +0 -26
  1890. package/dist/util/mcp-preflight.js +0 -29
  1891. package/dist/util/mode-preset.d.ts +0 -29
  1892. package/dist/util/mode-preset.js +0 -222
  1893. package/dist/util/mode-selector.d.ts +0 -6
  1894. package/dist/util/mode-selector.js +0 -74
  1895. package/dist/util/output-buffer.d.ts +0 -12
  1896. package/dist/util/output-buffer.js +0 -59
  1897. package/dist/util/process-tree.d.ts +0 -18
  1898. package/dist/util/process-tree.js +0 -102
  1899. package/dist/util/project-root.d.ts +0 -27
  1900. package/dist/util/project-root.js +0 -382
  1901. package/dist/util/provider-usage.d.ts +0 -2
  1902. package/dist/util/provider-usage.js +0 -1
  1903. package/dist/util/reasoning-nlp.d.ts +0 -84
  1904. package/dist/util/reasoning-nlp.js +0 -325
  1905. package/dist/util/resource-profile.d.ts +0 -32
  1906. package/dist/util/resource-profile.js +0 -219
  1907. package/dist/util/run-store.d.ts +0 -38
  1908. package/dist/util/run-store.js +0 -151
  1909. package/dist/util/run-view-model.d.ts +0 -111
  1910. package/dist/util/run-view-model.js +0 -333
  1911. package/dist/util/runtime-profile.d.ts +0 -34
  1912. package/dist/util/runtime-profile.js +0 -149
  1913. package/dist/util/runtime-scope.d.ts +0 -2
  1914. package/dist/util/runtime-scope.js +0 -19
  1915. package/dist/util/scoped-agent-file.d.ts +0 -47
  1916. package/dist/util/scoped-agent-file.js +0 -121
  1917. package/dist/util/screenshot-store.d.ts +0 -35
  1918. package/dist/util/screenshot-store.js +0 -310
  1919. package/dist/util/secret-mask.d.ts +0 -5
  1920. package/dist/util/secret-mask.js +0 -41
  1921. package/dist/util/session.d.ts +0 -19
  1922. package/dist/util/session.js +0 -80
  1923. package/dist/util/shell.d.ts +0 -30
  1924. package/dist/util/shell.js +0 -350
  1925. package/dist/util/snippet.d.ts +0 -17
  1926. package/dist/util/snippet.js +0 -110
  1927. package/dist/util/sync-manifest.d.ts +0 -13
  1928. package/dist/util/sync-manifest.js +0 -22
  1929. package/dist/util/terminal-input.d.ts +0 -45
  1930. package/dist/util/terminal-input.js +0 -67
  1931. package/dist/util/terminal-layout.d.ts +0 -18
  1932. package/dist/util/terminal-layout.js +0 -112
  1933. package/dist/util/terminal-owner.d.ts +0 -19
  1934. package/dist/util/terminal-owner.js +0 -64
  1935. package/dist/util/theme.d.ts +0 -9
  1936. package/dist/util/theme.js +0 -9
  1937. package/dist/util/timeout-config.d.ts +0 -18
  1938. package/dist/util/timeout-config.js +0 -101
  1939. package/dist/util/todo-sync.d.ts +0 -58
  1940. package/dist/util/todo-sync.js +0 -473
  1941. package/dist/util/update-check.d.ts +0 -94
  1942. package/dist/util/update-check.js +0 -355
  1943. package/dist/util/usage-view-model.d.ts +0 -22
  1944. package/dist/util/usage-view-model.js +0 -57
  1945. package/dist/util/user-visible-output.d.ts +0 -19
  1946. package/dist/util/user-visible-output.js +0 -48
  1947. package/dist/util/version.d.ts +0 -4
  1948. package/dist/util/version.js +0 -52
  1949. package/dist/util/worktree.d.ts +0 -10
  1950. package/dist/util/worktree.js +0 -165
  1951. package/dist/ux/explain-loop-decision.d.ts +0 -4
  1952. package/dist/ux/explain-loop-decision.js +0 -55
  1953. package/dist/ux/intent-router.d.ts +0 -15
  1954. package/dist/ux/intent-router.js +0 -64
  1955. package/dist/ux/natural-entrypoint.d.ts +0 -21
  1956. package/dist/ux/natural-entrypoint.js +0 -122
  1957. package/dist/version.d.ts +0 -11
  1958. package/dist/version.js +0 -18
  1959. package/dist/web-bridge/host.d.ts +0 -8
  1960. package/dist/web-bridge/host.js +0 -109
  1961. package/dist/web-bridge/native-host.d.ts +0 -6
  1962. package/dist/web-bridge/native-host.js +0 -40
  1963. package/dist/web-bridge/status.d.ts +0 -84
  1964. package/dist/web-bridge/status.js +0 -201
  1965. package/docs/2026-05-01-16gb-lite-mode.md +0 -37
  1966. package/docs/2026-05-01-critical-issues-and-improvements.md +0 -361
  1967. package/docs/2026-05-01-dag-ensemble-runtime.md +0 -74
  1968. package/docs/2026-05-02-p1-p2-hardening-handoff.md +0 -139
  1969. package/docs/2026-05-05-adjustable-timeouts-and-cron-jobs.md +0 -252
  1970. package/docs/2026-05-08-omk-hardening-plan.md +0 -62
  1971. package/docs/2026-05-14/critical-issues.md +0 -20
  1972. package/docs/2026-05-14/improvements.md +0 -14
  1973. package/docs/2026-05-14/init-checklist.md +0 -25
  1974. package/docs/2026-05-14/plan.md +0 -20
  1975. package/docs/2026-05-15/critical-issues.md +0 -20
  1976. package/docs/2026-05-15/improvements.md +0 -14
  1977. package/docs/2026-05-15/init-checklist.md +0 -25
  1978. package/docs/2026-05-15/plan.md +0 -20
  1979. package/docs/2026-05-16/critical-issues.md +0 -20
  1980. package/docs/2026-05-16/improvements.md +0 -14
  1981. package/docs/2026-05-16/init-checklist.md +0 -25
  1982. package/docs/2026-05-16/plan.md +0 -20
  1983. package/docs/2026-05-17/critical-issues.md +0 -20
  1984. package/docs/2026-05-17/improvements.md +0 -14
  1985. package/docs/2026-05-17/init-checklist.md +0 -25
  1986. package/docs/2026-05-17/plan.md +0 -20
  1987. package/docs/2026-05-18/improvements.md +0 -14
  1988. package/docs/2026-05-18/init-checklist.md +0 -25
  1989. package/docs/2026-05-18/plan.md +0 -20
  1990. package/docs/2026-05-18-critical-issues-and-improvements.md +0 -441
  1991. package/docs/2026-05-18-project-direction.md +0 -223
  1992. package/docs/2026-05-19/critical-issues.md +0 -20
  1993. package/docs/2026-05-19/improvements.md +0 -14
  1994. package/docs/2026-05-19/init-checklist.md +0 -25
  1995. package/docs/2026-05-19/plan.md +0 -20
  1996. package/docs/2026-05-20/critical-issues.md +0 -20
  1997. package/docs/2026-05-20/improvements.md +0 -14
  1998. package/docs/2026-05-20/init-checklist.md +0 -25
  1999. package/docs/2026-05-20/plan.md +0 -20
  2000. package/docs/2026-05-21/critical-issues.md +0 -20
  2001. package/docs/2026-05-21/improvements.md +0 -14
  2002. package/docs/2026-05-21/init-checklist.md +0 -25
  2003. package/docs/2026-05-21/plan.md +0 -20
  2004. package/docs/2026-05-22/critical-issues.md +0 -20
  2005. package/docs/2026-05-22/improvements.md +0 -14
  2006. package/docs/2026-05-22/init-checklist.md +0 -25
  2007. package/docs/2026-05-22/plan.md +0 -20
  2008. package/docs/2026-05-23/critical-issues.md +0 -20
  2009. package/docs/2026-05-23/improvements.md +0 -14
  2010. package/docs/2026-05-23/init-checklist.md +0 -25
  2011. package/docs/2026-05-23/plan.md +0 -20
  2012. package/docs/2026-05-24/critical-issues.md +0 -30
  2013. package/docs/2026-05-24/improvements.md +0 -23
  2014. package/docs/2026-05-24/init-checklist.md +0 -25
  2015. package/docs/2026-05-24/plan.md +0 -22
  2016. package/docs/2026-05-25/critical-issues.md +0 -20
  2017. package/docs/2026-05-25/improvements.md +0 -14
  2018. package/docs/2026-05-25/init-checklist.md +0 -25
  2019. package/docs/2026-05-25/plan.md +0 -20
  2020. package/docs/2026-05-26/critical-issues.md +0 -20
  2021. package/docs/2026-05-26/improvements.md +0 -14
  2022. package/docs/2026-05-26/init-checklist.md +0 -25
  2023. package/docs/2026-05-26/plan.md +0 -20
  2024. package/docs/2026-05-27/critical-issues.md +0 -20
  2025. package/docs/2026-05-27/improvements.md +0 -14
  2026. package/docs/2026-05-27/init-checklist.md +0 -25
  2027. package/docs/2026-05-27/plan.md +0 -20
  2028. package/docs/2026-05-28/critical-issues.md +0 -20
  2029. package/docs/2026-05-28/improvements.md +0 -14
  2030. package/docs/2026-05-28/init-checklist.md +0 -25
  2031. package/docs/2026-05-28/plan.md +0 -20
  2032. package/docs/2026-05-29/critical-issues.md +0 -20
  2033. package/docs/2026-05-29/improvements.md +0 -14
  2034. package/docs/2026-05-29/init-checklist.md +0 -25
  2035. package/docs/2026-05-29/plan.md +0 -20
  2036. package/docs/2026-05-30/critical-issues.md +0 -20
  2037. package/docs/2026-05-30/improvements.md +0 -14
  2038. package/docs/2026-05-30/init-checklist.md +0 -25
  2039. package/docs/2026-05-30/plan.md +0 -20
  2040. package/docs/2026-05-31/critical-issues.md +0 -20
  2041. package/docs/2026-05-31/improvements.md +0 -14
  2042. package/docs/2026-05-31/init-checklist.md +0 -25
  2043. package/docs/2026-05-31/plan.md +0 -20
  2044. package/docs/2026-06-01/critical-issues.md +0 -20
  2045. package/docs/2026-06-01/improvements.md +0 -14
  2046. package/docs/2026-06-01/init-checklist.md +0 -25
  2047. package/docs/2026-06-01/plan.md +0 -20
  2048. package/docs/2026-06-02/critical-issues.md +0 -20
  2049. package/docs/2026-06-02/improvements.md +0 -14
  2050. package/docs/2026-06-02/init-checklist.md +0 -25
  2051. package/docs/2026-06-02/plan.md +0 -20
  2052. package/docs/2026-06-03/critical-issues.md +0 -20
  2053. package/docs/2026-06-03/improvements.md +0 -14
  2054. package/docs/2026-06-03/init-checklist.md +0 -25
  2055. package/docs/2026-06-03/plan.md +0 -20
  2056. package/docs/2026-06-04/critical-issues.md +0 -20
  2057. package/docs/2026-06-04/improvements.md +0 -14
  2058. package/docs/2026-06-04/init-checklist.md +0 -25
  2059. package/docs/2026-06-04/plan.md +0 -20
  2060. package/docs/2026-06-05/critical-issues.md +0 -20
  2061. package/docs/2026-06-05/improvements.md +0 -14
  2062. package/docs/2026-06-05/init-checklist.md +0 -25
  2063. package/docs/2026-06-05/plan.md +0 -20
  2064. package/docs/2026-06-06/critical-issues.md +0 -20
  2065. package/docs/2026-06-06/improvements.md +0 -14
  2066. package/docs/2026-06-06/init-checklist.md +0 -25
  2067. package/docs/2026-06-06/plan.md +0 -20
  2068. package/docs/2026-06-07/critical-issues.md +0 -20
  2069. package/docs/2026-06-07/improvements.md +0 -14
  2070. package/docs/2026-06-07/init-checklist.md +0 -25
  2071. package/docs/2026-06-07/plan.md +0 -20
  2072. package/docs/2026-06-08/critical-issues.md +0 -20
  2073. package/docs/2026-06-08/improvements.md +0 -14
  2074. package/docs/2026-06-08/init-checklist.md +0 -25
  2075. package/docs/2026-06-08/plan.md +0 -20
  2076. package/docs/2026-06-09/critical-issues.md +0 -20
  2077. package/docs/2026-06-09/improvements.md +0 -14
  2078. package/docs/2026-06-09/init-checklist.md +0 -25
  2079. package/docs/2026-06-09/plan.md +0 -20
  2080. package/docs/2026-06-10/critical-issues.md +0 -20
  2081. package/docs/2026-06-10/improvements.md +0 -14
  2082. package/docs/2026-06-10/init-checklist.md +0 -25
  2083. package/docs/2026-06-10/plan.md +0 -20
  2084. package/docs/2026-06-11/critical-issues.md +0 -20
  2085. package/docs/2026-06-11/improvements.md +0 -14
  2086. package/docs/2026-06-11/init-checklist.md +0 -25
  2087. package/docs/2026-06-11/plan.md +0 -20
  2088. package/docs/ARCHITECTURE_ANALYSIS_CODEGRAPH.md +0 -223
  2089. package/docs/GSTACK_MIGRATION.md +0 -169
  2090. package/docs/OMK_CLI_V2_RUNTIME_ARCHITECTURE.md +0 -2058
  2091. package/docs/adr/0001-no-native-rust-lane.md +0 -52
  2092. package/docs/benchmark-design.md +0 -122
  2093. package/docs/cli-v2-migration.md +0 -87
  2094. package/docs/codex-oauth-setup.md +0 -62
  2095. package/docs/decisions/2026-06-10-git-history-bloat.md +0 -61
  2096. package/docs/decisions/ADR-theme-dark-only-assets.md +0 -43
  2097. package/docs/demo/verified-run/README.md +0 -32
  2098. package/docs/demo/verified-run/artifacts/README.md +0 -18
  2099. package/docs/demo/verified-run/capture-plan.md +0 -51
  2100. package/docs/demo/verified-run/generated-diff.md +0 -27
  2101. package/docs/demo/verified-run/raw-prompt.md +0 -21
  2102. package/docs/demo/verified-run/video-shot-list.md +0 -14
  2103. package/docs/design-md.md +0 -35
  2104. package/docs/getting-started.md +0 -65
  2105. package/docs/github-organic-promotion.md +0 -127
  2106. package/docs/headroom-omk-final-summary.md +0 -188
  2107. package/docs/headroom-omk-integration.md +0 -394
  2108. package/docs/headroom-omk-setup-guide.md +0 -422
  2109. package/docs/headroom-omk-usage-examples.md +0 -371
  2110. package/docs/hud-and-parallel-ux.md +0 -155
  2111. package/docs/integrations/ouroboros.md +0 -96
  2112. package/docs/kimi-oauth-usage-status.md +0 -33
  2113. package/docs/kimi-okabe-dmail.md +0 -44
  2114. package/docs/local-graph-memory.md +0 -102
  2115. package/docs/lsp.md +0 -48
  2116. package/docs/mcp-ontology-proposal.md +0 -12
  2117. package/docs/native-root-runtime-algorithms.md +0 -703
  2118. package/docs/native-root-runtime-hardening.md +0 -131
  2119. package/docs/neo4j-memory.md +0 -5
  2120. package/docs/openai-platform-image-keys.md +0 -23
  2121. package/docs/phase1-final-report.md +0 -154
  2122. package/docs/provider-maturity.md +0 -44
  2123. package/docs/runtime-architecture.md +0 -89
  2124. package/docs/versioning.md +0 -49
  2125. package/llms.txt +0 -38
  2126. package/readmeasset/.npmignore +0 -22
  2127. package/readmeasset/ASSET_INDEX.md +0 -39
  2128. package/readmeasset/ASSET_PROVENANCE.md +0 -110
  2129. package/readmeasset/omk-control-surfaces.svg +0 -55
  2130. package/readmeasset/omk-core-loop.svg +0 -26
  2131. package/readmeasset/omk-evidence-gate-card.png +0 -0
  2132. package/readmeasset/omk-github-banner.webp +0 -0
  2133. package/readmeasset/omk-github-header.webp +0 -0
  2134. package/readmeasset/omk-install-card.png +0 -0
  2135. package/readmeasset/omk-logo-512.png +0 -0
  2136. package/readmeasset/omk-logo-mark.svg +0 -8
  2137. package/readmeasset/omk-provider-router-card.png +0 -0
  2138. package/readmeasset/omk-release-assertions.svg +0 -51
  2139. package/readmeasset/omk-runtime-flow-0.78.0.webp +0 -0
  2140. package/readmeasset/omk-social-preview.png +0 -0
  2141. package/readmeasset/omk-tui-0.78.0.webp +0 -0
  2142. package/readmeasset/omk_tui.png +0 -0
  2143. package/templates/.kimi/AGENTS.md +0 -93
  2144. package/templates/.omk/agents/okabe.yaml +0 -30
  2145. package/templates/.omk/agents/roles/aggregator.yaml +0 -13
  2146. package/templates/.omk/agents/roles/architect.yaml +0 -13
  2147. package/templates/.omk/agents/roles/coder.yaml +0 -9
  2148. package/templates/.omk/agents/roles/explorer.yaml +0 -13
  2149. package/templates/.omk/agents/roles/integrator.yaml +0 -13
  2150. package/templates/.omk/agents/roles/interviewer.yaml +0 -13
  2151. package/templates/.omk/agents/roles/ontology.yaml +0 -18
  2152. package/templates/.omk/agents/roles/planner.yaml +0 -13
  2153. package/templates/.omk/agents/roles/qa.yaml +0 -12
  2154. package/templates/.omk/agents/roles/researcher.yaml +0 -13
  2155. package/templates/.omk/agents/roles/reviewer.yaml +0 -13
  2156. package/templates/.omk/agents/roles/router.yaml +0 -13
  2157. package/templates/.omk/agents/roles/security.yaml +0 -12
  2158. package/templates/.omk/agents/roles/tester.yaml +0 -12
  2159. package/templates/.omk/agents/roles/vision-debugger.yaml +0 -12
  2160. package/templates/.omk/agents/root.yaml +0 -62
  2161. package/templates/.omk/lsp.json +0 -27
  2162. package/templates/.omk/prompts/root.md +0 -74
  2163. package/templates/AGENTS.md +0 -510
  2164. package/templates/skills/agents/agentmemory/SKILL.md +0 -40
  2165. package/templates/skills/agents/andrej-karpathy-skills/SKILL.md +0 -41
  2166. package/templates/skills/agents/claude-for-legal/SKILL.md +0 -63
  2167. package/templates/skills/agents/claude-for-legal/references/workflow-catalog.md +0 -38
  2168. package/templates/skills/agents/matt-pocock-skills/SKILL.md +0 -40
  2169. package/templates/skills/agents/multica/SKILL.md +0 -40
  2170. package/templates/skills/agents/omk-agent-reach-websearch/SKILL.md +0 -55
  2171. package/templates/skills/agents/omk-backend-api-review/SKILL.md +0 -30
  2172. package/templates/skills/agents/omk-code-review/SKILL.md +0 -40
  2173. package/templates/skills/agents/omk-context-broker/SKILL.md +0 -57
  2174. package/templates/skills/agents/omk-control-loop-debugger/SKILL.md +0 -49
  2175. package/templates/skills/agents/omk-design-system/SKILL.md +0 -22
  2176. package/templates/skills/agents/omk-docs-release/SKILL.md +0 -42
  2177. package/templates/skills/agents/omk-evidence-contract/SKILL.md +0 -52
  2178. package/templates/skills/agents/omk-frontend-implementation/SKILL.md +0 -13
  2179. package/templates/skills/agents/omk-frontend-ui-review/SKILL.md +0 -29
  2180. package/templates/skills/agents/omk-git-commit-pr/SKILL.md +0 -45
  2181. package/templates/skills/agents/omk-industrial-control-loop/SKILL.md +0 -33
  2182. package/templates/skills/agents/omk-plan-first/SKILL.md +0 -39
  2183. package/templates/skills/agents/omk-project-rules/SKILL.md +0 -46
  2184. package/templates/skills/agents/omk-python-typing/SKILL.md +0 -33
  2185. package/templates/skills/agents/omk-quality-gate/SKILL.md +0 -54
  2186. package/templates/skills/agents/omk-repo-explorer/SKILL.md +0 -33
  2187. package/templates/skills/agents/omk-research-verify/SKILL.md +0 -30
  2188. package/templates/skills/agents/omk-secret-guard/SKILL.md +0 -23
  2189. package/templates/skills/agents/omk-security-review/SKILL.md +0 -49
  2190. package/templates/skills/agents/omk-test-debug-loop/SKILL.md +0 -43
  2191. package/templates/skills/agents/omk-troubleshooting/SKILL.md +0 -14
  2192. package/templates/skills/agents/omk-typescript-strict/SKILL.md +0 -38
  2193. package/templates/skills/agents/omk-worktree-team/SKILL.md +0 -44
  2194. package/templates/skills/agents/react-doctor/SKILL.md +0 -46
  2195. package/templates/skills/kimi/agentmemory/SKILL.md +0 -40
  2196. package/templates/skills/kimi/andrej-karpathy-skills/SKILL.md +0 -41
  2197. package/templates/skills/kimi/awesome-design-md/SKILL.md +0 -54
  2198. package/templates/skills/kimi/claude-for-legal/SKILL.md +0 -63
  2199. package/templates/skills/kimi/claude-for-legal/references/workflow-catalog.md +0 -38
  2200. package/templates/skills/kimi/deepseek-api/SKILL.md +0 -27
  2201. package/templates/skills/kimi/deepseek-disable/SKILL.md +0 -20
  2202. package/templates/skills/kimi/deepseek-enable/SKILL.md +0 -20
  2203. package/templates/skills/kimi/deepseekset/SKILL.md +0 -27
  2204. package/templates/skills/kimi/graph-view/SKILL.md +0 -29
  2205. package/templates/skills/kimi/matt-pocock-skills/SKILL.md +0 -40
  2206. package/templates/skills/kimi/multica/SKILL.md +0 -40
  2207. package/templates/skills/kimi/omk-agent-reach-websearch/SKILL.md +0 -55
  2208. package/templates/skills/kimi/omk-backend-api-review/SKILL.md +0 -30
  2209. package/templates/skills/kimi/omk-code-review/SKILL.md +0 -34
  2210. package/templates/skills/kimi/omk-context-broker/SKILL.md +0 -57
  2211. package/templates/skills/kimi/omk-control-loop-debugger/SKILL.md +0 -49
  2212. package/templates/skills/kimi/omk-design-md/SKILL.md +0 -55
  2213. package/templates/skills/kimi/omk-design-system/SKILL.md +0 -22
  2214. package/templates/skills/kimi/omk-docs-release/SKILL.md +0 -42
  2215. package/templates/skills/kimi/omk-evidence-contract/SKILL.md +0 -52
  2216. package/templates/skills/kimi/omk-flow-bugfix/SKILL.md +0 -20
  2217. package/templates/skills/kimi/omk-flow-design-to-code/SKILL.md +0 -23
  2218. package/templates/skills/kimi/omk-flow-feature-dev/SKILL.md +0 -24
  2219. package/templates/skills/kimi/omk-flow-pr-review/SKILL.md +0 -17
  2220. package/templates/skills/kimi/omk-flow-refactor/SKILL.md +0 -21
  2221. package/templates/skills/kimi/omk-flow-release/SKILL.md +0 -20
  2222. package/templates/skills/kimi/omk-flow-team-run/SKILL.md +0 -24
  2223. package/templates/skills/kimi/omk-frontend-implementation/SKILL.md +0 -13
  2224. package/templates/skills/kimi/omk-frontend-ui-review/SKILL.md +0 -29
  2225. package/templates/skills/kimi/omk-git-commit-pr/SKILL.md +0 -45
  2226. package/templates/skills/kimi/omk-global-rules/SKILL.md +0 -31
  2227. package/templates/skills/kimi/omk-industrial-control-loop/SKILL.md +0 -33
  2228. package/templates/skills/kimi/omk-kimi-runtime/SKILL.md +0 -46
  2229. package/templates/skills/kimi/omk-multimodal-ui-review/SKILL.md +0 -26
  2230. package/templates/skills/kimi/omk-plan-first/SKILL.md +0 -39
  2231. package/templates/skills/kimi/omk-project-rules/SKILL.md +0 -21
  2232. package/templates/skills/kimi/omk-python-typing/SKILL.md +0 -33
  2233. package/templates/skills/kimi/omk-quality-gate/SKILL.md +0 -36
  2234. package/templates/skills/kimi/omk-repo-explorer/SKILL.md +0 -33
  2235. package/templates/skills/kimi/omk-research-verify/SKILL.md +0 -30
  2236. package/templates/skills/kimi/omk-secret-guard/SKILL.md +0 -23
  2237. package/templates/skills/kimi/omk-security-review/SKILL.md +0 -49
  2238. package/templates/skills/kimi/omk-task-router/SKILL.md +0 -27
  2239. package/templates/skills/kimi/omk-test-debug-loop/SKILL.md +0 -43
  2240. package/templates/skills/kimi/omk-typescript-strict/SKILL.md +0 -38
  2241. package/templates/skills/kimi/omk-worktree-team/SKILL.md +0 -44
  2242. package/templates/skills/kimi/open-design/SKILL.md +0 -56
  2243. package/templates/skills/kimi/provider/SKILL.md +0 -47
  2244. package/templates/skills/kimi/react-doctor/SKILL.md +0 -46
  2245. package/templates/skills/kimi/speckit-analyze/SKILL.md +0 -255
  2246. package/templates/skills/kimi/speckit-checklist/SKILL.md +0 -367
  2247. package/templates/skills/kimi/speckit-clarify/SKILL.md +0 -249
  2248. package/templates/skills/kimi/speckit-constitution/SKILL.md +0 -152
  2249. package/templates/skills/kimi/speckit-implement/SKILL.md +0 -204
  2250. package/templates/skills/kimi/speckit-plan/SKILL.md +0 -147
  2251. package/templates/skills/kimi/speckit-specify/SKILL.md +0 -325
  2252. package/templates/skills/kimi/speckit-tasks/SKILL.md +0 -197
  2253. package/templates/skills/kimi/speckit-taskstoissues/SKILL.md +0 -101
  2254. package/templates/skills/kimi/think/SKILL.md +0 -41
  2255. package/templates/spec-kit-omk-preset/commands/plan.md +0 -21
  2256. package/templates/spec-kit-omk-preset/commands/tasks.md +0 -21
  2257. package/templates/spec-kit-omk-preset/preset.yml +0 -12
  2258. package/templates/spec-kit-omk-preset/templates/plan-template.md +0 -75
  2259. package/templates/spec-kit-omk-preset/templates/spec-template.md +0 -80
  2260. package/templates/spec-kit-omk-preset/templates/tasks-template.md +0 -160
  2261. package/templates/web-bridge/chrome-extension/README.md +0 -18
  2262. package/templates/web-bridge/chrome-extension/background.js +0 -57
  2263. package/templates/web-bridge/chrome-extension/content-script.js +0 -46
  2264. package/templates/web-bridge/chrome-extension/manifest.json +0 -16
  2265. package/templates/web-bridge/chrome-extension/popup.html +0 -21
  2266. package/templates/web-bridge/chrome-extension/popup.js +0 -9
  2267. /package/{readmeasset → dist/modes/interactive/assets}/omk-control.webp +0 -0
@@ -0,0 +1,150 @@
1
+ /**
2
+ * Adaptive runtime algorithms for the OMK hardfork.
3
+ *
4
+ * This module hosts pure, side-effect-free helpers that drive adaptive behaviour:
5
+ * - Headroom thresholds (when to compact / hand off before the context limit).
6
+ * - Topology routing (classify a task DAG into an execution topology).
7
+ * - Ouroboros preference detection (presence-only, never throws, no secret reads).
8
+ * - First-run adaptive plan generation (JSON-serializable artifact).
9
+ *
10
+ * The only non-pure helper is `writeFirstRunAdaptivePlan`, which performs an
11
+ * idempotent, non-fatal filesystem write of the generated plan. It is kept here
12
+ * so the behaviour stays unit-testable.
13
+ */
14
+ /** Minimal environment shape consumed by adaptive helpers. */
15
+ export type AdaptiveEnv = Record<string, string | undefined>;
16
+ /** Directed edge in a task DAG. */
17
+ export interface AdaptiveEdge {
18
+ from: string;
19
+ to: string;
20
+ }
21
+ export declare const DEFAULT_HEADROOM_THRESHOLD = 0.9;
22
+ export declare const MIN_HEADROOM_THRESHOLD = 0.5;
23
+ export declare const MAX_HEADROOM_THRESHOLD = 0.99;
24
+ /** Whether the adaptive headroom feature is explicitly disabled via OMK_HEADROOM. */
25
+ export declare function isHeadroomDisabled(env?: AdaptiveEnv): boolean;
26
+ /**
27
+ * Resolve the adaptive headroom utilization threshold.
28
+ *
29
+ * - Default 0.90.
30
+ * - `OMK_HEADROOM_THRESHOLD` overrides (accepts a fraction `0.9` or percentage `90`).
31
+ * - Clamped to [0.5, 0.99].
32
+ * - Returns `0` when disabled via `OMK_HEADROOM=off|0|false|no`.
33
+ */
34
+ export declare function resolveAdaptiveHeadroomThreshold(env?: AdaptiveEnv): number;
35
+ /**
36
+ * Whether to invoke headroom (compact / hand off) before hitting the hard context limit.
37
+ * True only when the feature is enabled and utilization meets the resolved threshold.
38
+ */
39
+ export declare function shouldUseHeadroomBeforeLimit(contextTokens: number, contextWindow: number, env?: AdaptiveEnv): boolean;
40
+ export type AdaptiveTopology = "singleton" | "parallel" | "pipeline" | "map_reduce" | "hierarchical" | "dag" | "hybrid";
41
+ export interface AdaptiveTopologyFeatures {
42
+ nodeCount: number;
43
+ edgeCount: number;
44
+ /** Maximum number of nodes in a single Kahn layer (parallel width). */
45
+ width: number;
46
+ /** Number of layers / longest dependency chain in node terms. */
47
+ criticalDepth: number;
48
+ /** Edges / possible edges (0 = fully parallel, 1 = fully sequential). */
49
+ couplingDensity: number;
50
+ /** width / nodeCount (inherent parallelism potential). */
51
+ parallelRatio: number;
52
+ }
53
+ export interface AdaptiveTopologyDecision {
54
+ topology: AdaptiveTopology;
55
+ features: AdaptiveTopologyFeatures;
56
+ /** Kahn layering; each entry is the set of node ids executable in that wave. */
57
+ waves: string[][];
58
+ reason: string;
59
+ hasCycle: boolean;
60
+ }
61
+ /**
62
+ * Compute structural features and an execution topology for a task DAG.
63
+ *
64
+ * Pure: uses Kahn layering with a cycle guard. Dangling edges (endpoints not in
65
+ * `nodes`) and duplicate edges are ignored; self loops mark the graph as cyclic.
66
+ */
67
+ export declare function computeAdaptiveTopology(nodes: readonly string[], edges: readonly AdaptiveEdge[]): AdaptiveTopologyDecision;
68
+ export type OuroborosMode = "always" | "auto" | "off";
69
+ export interface OuroborosIndicators {
70
+ mcp: boolean;
71
+ skills: boolean;
72
+ binary: boolean;
73
+ }
74
+ export interface OuroborosPreference {
75
+ mode: OuroborosMode;
76
+ /** True when not off and at least one indicator is present. */
77
+ preferred: boolean;
78
+ /** True when any indicator is present (mcp/skills/binary). */
79
+ available: boolean;
80
+ fallback: "ouroboros" | "native";
81
+ indicators: OuroborosIndicators;
82
+ reason: string;
83
+ }
84
+ export interface OuroborosDetectionInput {
85
+ env?: AdaptiveEnv;
86
+ agentDir?: string;
87
+ cwd?: string;
88
+ home?: string;
89
+ /** Injectable existence check (defaults to fs.existsSync); used for the binary indicator. */
90
+ exists?: (path: string) => boolean;
91
+ }
92
+ /**
93
+ * Detect whether the Ouroboros runtime should be preferred.
94
+ *
95
+ * Presence-only: never throws, performs no secret reads. When indicators are
96
+ * absent the preference falls back to the native runtime.
97
+ */
98
+ export declare function detectOuroborosPreference(input?: OuroborosDetectionInput): OuroborosPreference;
99
+ export declare const ADAPTIVE_PLAN_VERSION = 1;
100
+ export declare const DEFAULT_ADAPTIVE_RUNTIME = "omk-parallel-orchestrator";
101
+ /** Startup DAG used to seed the first-run adaptive plan. */
102
+ export declare const OMK_STARTUP_DAG_NODES: readonly string[];
103
+ export declare const OMK_STARTUP_DAG_EDGES: readonly AdaptiveEdge[];
104
+ export interface FirstRunAdaptivePlanInput {
105
+ nodes?: readonly string[];
106
+ edges?: readonly AdaptiveEdge[];
107
+ env?: AdaptiveEnv;
108
+ agentDir?: string;
109
+ cwd?: string;
110
+ home?: string;
111
+ runtime?: string;
112
+ /** Injectable clock (defaults to Date.now) for deterministic tests. */
113
+ now?: () => number;
114
+ exists?: (path: string) => boolean;
115
+ }
116
+ export interface FirstRunAdaptivePlan {
117
+ version: number;
118
+ runtime: string;
119
+ createdAt: string;
120
+ cwd: string | null;
121
+ topology: AdaptiveTopologyDecision;
122
+ headroom: {
123
+ enabled: boolean;
124
+ threshold: number;
125
+ };
126
+ ouroboros: OuroborosPreference;
127
+ }
128
+ /** Build a JSON-serializable first-run adaptive plan. Pure. */
129
+ export declare function createFirstRunAdaptivePlan(input?: FirstRunAdaptivePlanInput): FirstRunAdaptivePlan;
130
+ export interface WriteAdaptivePlanInput extends FirstRunAdaptivePlanInput {
131
+ agentDir: string;
132
+ /** Force rewrite even if the artifact already exists. */
133
+ refresh?: boolean;
134
+ }
135
+ export interface WriteAdaptivePlanResult {
136
+ path: string;
137
+ written: boolean;
138
+ plan?: FirstRunAdaptivePlan;
139
+ reason: "created" | "refreshed" | "exists" | "error";
140
+ error?: string;
141
+ }
142
+ /** Path of the first-run adaptive plan artifact. */
143
+ export declare function getAdaptivePlanPath(agentDir: string): string;
144
+ /**
145
+ * Idempotently write the first-run adaptive plan. Non-fatal: any error is
146
+ * captured in the result rather than thrown. Skips writing when the artifact
147
+ * already exists unless `refresh` (or `OMK_ADAPTIVE_PLAN_REFRESH=1`) is set.
148
+ */
149
+ export declare function writeFirstRunAdaptivePlan(input: WriteAdaptivePlanInput): WriteAdaptivePlanResult;
150
+ //# sourceMappingURL=adaptive-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adaptive-runtime.d.ts","sourceRoot":"","sources":["../../src/core/adaptive-runtime.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Adaptive runtime algorithms for the OMK hardfork.\n *\n * This module hosts pure, side-effect-free helpers that drive adaptive behaviour:\n * - Headroom thresholds (when to compact / hand off before the context limit).\n * - Topology routing (classify a task DAG into an execution topology).\n * - Ouroboros preference detection (presence-only, never throws, no secret reads).\n * - First-run adaptive plan generation (JSON-serializable artifact).\n *\n * The only non-pure helper is `writeFirstRunAdaptivePlan`, which performs an\n * idempotent, non-fatal filesystem write of the generated plan. It is kept here\n * so the behaviour stays unit-testable.\n */\n\nimport { existsSync, mkdirSync, readdirSync, readFileSync, writeFileSync } from \"node:fs\";\nimport { homedir } from \"node:os\";\nimport { dirname, join } from \"node:path\";\n\n// ============================================================================\n// Shared types\n// ============================================================================\n\n/** Minimal environment shape consumed by adaptive helpers. */\nexport type AdaptiveEnv = Record<string, string | undefined>;\n\n/** Directed edge in a task DAG. */\nexport interface AdaptiveEdge {\n\tfrom: string;\n\tto: string;\n}\n\n// ============================================================================\n// Headroom thresholds\n// ============================================================================\n\nexport const DEFAULT_HEADROOM_THRESHOLD = 0.9;\nexport const MIN_HEADROOM_THRESHOLD = 0.5;\nexport const MAX_HEADROOM_THRESHOLD = 0.99;\n\nfunction normalizeFlag(value: string | undefined): string {\n\treturn value?.trim().toLowerCase() ?? \"\";\n}\n\n/** Whether the adaptive headroom feature is explicitly disabled via OMK_HEADROOM. */\nexport function isHeadroomDisabled(env: AdaptiveEnv = {}): boolean {\n\tconst raw = normalizeFlag(env.OMK_HEADROOM);\n\treturn raw === \"off\" || raw === \"0\" || raw === \"false\" || raw === \"no\";\n}\n\n/**\n * Resolve the adaptive headroom utilization threshold.\n *\n * - Default 0.90.\n * - `OMK_HEADROOM_THRESHOLD` overrides (accepts a fraction `0.9` or percentage `90`).\n * - Clamped to [0.5, 0.99].\n * - Returns `0` when disabled via `OMK_HEADROOM=off|0|false|no`.\n */\nexport function resolveAdaptiveHeadroomThreshold(env: AdaptiveEnv = {}): number {\n\tif (isHeadroomDisabled(env)) {\n\t\treturn 0;\n\t}\n\tlet threshold = DEFAULT_HEADROOM_THRESHOLD;\n\tconst raw = env.OMK_HEADROOM_THRESHOLD;\n\tif (raw !== undefined && raw.trim().length > 0) {\n\t\tconst parsed = Number.parseFloat(raw);\n\t\tif (Number.isFinite(parsed)) {\n\t\t\tthreshold = parsed > 1 ? parsed / 100 : parsed;\n\t\t}\n\t}\n\treturn Math.min(MAX_HEADROOM_THRESHOLD, Math.max(MIN_HEADROOM_THRESHOLD, threshold));\n}\n\n/**\n * Whether to invoke headroom (compact / hand off) before hitting the hard context limit.\n * True only when the feature is enabled and utilization meets the resolved threshold.\n */\nexport function shouldUseHeadroomBeforeLimit(\n\tcontextTokens: number,\n\tcontextWindow: number,\n\tenv: AdaptiveEnv = {},\n): boolean {\n\tconst threshold = resolveAdaptiveHeadroomThreshold(env);\n\tif (threshold <= 0) {\n\t\treturn false;\n\t}\n\tif (!Number.isFinite(contextWindow) || contextWindow <= 0) {\n\t\treturn false;\n\t}\n\tif (!Number.isFinite(contextTokens) || contextTokens < 0) {\n\t\treturn false;\n\t}\n\treturn contextTokens / contextWindow >= threshold;\n}\n\n// ============================================================================\n// Topology routing\n// ============================================================================\n\nexport type AdaptiveTopology = \"singleton\" | \"parallel\" | \"pipeline\" | \"map_reduce\" | \"hierarchical\" | \"dag\" | \"hybrid\";\n\nexport interface AdaptiveTopologyFeatures {\n\tnodeCount: number;\n\tedgeCount: number;\n\t/** Maximum number of nodes in a single Kahn layer (parallel width). */\n\twidth: number;\n\t/** Number of layers / longest dependency chain in node terms. */\n\tcriticalDepth: number;\n\t/** Edges / possible edges (0 = fully parallel, 1 = fully sequential). */\n\tcouplingDensity: number;\n\t/** width / nodeCount (inherent parallelism potential). */\n\tparallelRatio: number;\n}\n\nexport interface AdaptiveTopologyDecision {\n\ttopology: AdaptiveTopology;\n\tfeatures: AdaptiveTopologyFeatures;\n\t/** Kahn layering; each entry is the set of node ids executable in that wave. */\n\twaves: string[][];\n\treason: string;\n\thasCycle: boolean;\n}\n\n/** Routing thresholds for the OMK topology router. */\nconst THETA_OMEGA = 0.5; // parallel ratio above this -> parallel/map_reduce\nconst THETA_GAMMA = 0.6; // coupling density above this -> high coupling\nconst THETA_DELTA = 5; // node-count / depth threshold for hierarchical\n\ninterface GraphStats {\n\trootCount: number;\n\thasFanInSink: boolean;\n\thasFanOutRoot: boolean;\n\thasCycle: boolean;\n}\n\nfunction classifyTopology(\n\tfeatures: AdaptiveTopologyFeatures,\n\tstats: GraphStats,\n): { topology: AdaptiveTopology; reason: string } {\n\tconst { nodeCount, width, criticalDepth, couplingDensity, parallelRatio } = features;\n\n\tif (nodeCount === 0) {\n\t\treturn { topology: \"dag\", reason: \"empty DAG\" };\n\t}\n\tif (nodeCount === 1) {\n\t\treturn { topology: \"singleton\", reason: \"single node, no parallelism\" };\n\t}\n\tif (stats.hasCycle) {\n\t\treturn { topology: \"dag\", reason: \"cycle detected; treating as general DAG\" };\n\t}\n\n\tconst wide = parallelRatio >= THETA_OMEGA;\n\tconst highCoupling = couplingDensity >= THETA_GAMMA;\n\tconst deep = criticalDepth >= THETA_DELTA;\n\n\tif (width === 1) {\n\t\treturn { topology: \"pipeline\", reason: \"fully sequential chain (width 1)\" };\n\t}\n\tif (wide && highCoupling) {\n\t\treturn { topology: \"hybrid\", reason: \"high parallelism with high coupling (mixed signals)\" };\n\t}\n\tif (wide) {\n\t\tif (stats.rootCount <= 1 && stats.hasFanOutRoot && stats.hasFanInSink) {\n\t\t\treturn { topology: \"map_reduce\", reason: \"fan-out then fan-in with low coupling\" };\n\t\t}\n\t\treturn { topology: \"parallel\", reason: \"wide DAG with low coupling\" };\n\t}\n\tif (highCoupling) {\n\t\treturn { topology: \"pipeline\", reason: \"high coupling, sequential stages\" };\n\t}\n\tif (deep && nodeCount > THETA_DELTA) {\n\t\treturn { topology: \"hierarchical\", reason: \"deep, large dependency tree\" };\n\t}\n\treturn { topology: \"dag\", reason: \"general DAG with mixed parallelism\" };\n}\n\n/**\n * Compute structural features and an execution topology for a task DAG.\n *\n * Pure: uses Kahn layering with a cycle guard. Dangling edges (endpoints not in\n * `nodes`) and duplicate edges are ignored; self loops mark the graph as cyclic.\n */\nexport function computeAdaptiveTopology(\n\tnodes: readonly string[],\n\tedges: readonly AdaptiveEdge[],\n): AdaptiveTopologyDecision {\n\t// De-duplicate nodes while preserving input order for deterministic layering.\n\tconst orderedNodes: string[] = [];\n\tconst nodeSet = new Set<string>();\n\tfor (const node of nodes) {\n\t\tif (!nodeSet.has(node)) {\n\t\t\tnodeSet.add(node);\n\t\t\torderedNodes.push(node);\n\t\t}\n\t}\n\tconst indexOf = new Map<string, number>();\n\torderedNodes.forEach((node, index) => {\n\t\tindexOf.set(node, index);\n\t});\n\n\tconst adjacency = new Map<string, Set<string>>();\n\tconst inDegree = new Map<string, number>();\n\tconst outDegree = new Map<string, number>();\n\tfor (const node of orderedNodes) {\n\t\tadjacency.set(node, new Set());\n\t\tinDegree.set(node, 0);\n\t\toutDegree.set(node, 0);\n\t}\n\n\tlet edgeCount = 0;\n\tlet hasCycle = false;\n\tconst edgeSeen = new Set<string>();\n\tfor (const edge of edges) {\n\t\tif (!nodeSet.has(edge.from) || !nodeSet.has(edge.to)) {\n\t\t\tcontinue; // ignore dangling edges\n\t\t}\n\t\tif (edge.from === edge.to) {\n\t\t\thasCycle = true; // self loop\n\t\t\tcontinue;\n\t\t}\n\t\tconst key = `${edge.from}\\u0000${edge.to}`;\n\t\tif (edgeSeen.has(key)) {\n\t\t\tcontinue; // dedupe\n\t\t}\n\t\tedgeSeen.add(key);\n\t\tconst targets = adjacency.get(edge.from);\n\t\tif (targets && !targets.has(edge.to)) {\n\t\t\ttargets.add(edge.to);\n\t\t\tinDegree.set(edge.to, (inDegree.get(edge.to) ?? 0) + 1);\n\t\t\toutDegree.set(edge.from, (outDegree.get(edge.from) ?? 0) + 1);\n\t\t\tedgeCount++;\n\t\t}\n\t}\n\n\t// Kahn layering.\n\tconst remaining = new Map(inDegree);\n\tlet frontier = orderedNodes.filter((node) => (remaining.get(node) ?? 0) === 0);\n\tconst waves: string[][] = [];\n\tlet processed = 0;\n\twhile (frontier.length > 0) {\n\t\tconst wave = [...frontier].sort((a, b) => (indexOf.get(a) ?? 0) - (indexOf.get(b) ?? 0));\n\t\twaves.push(wave);\n\t\tconst next: string[] = [];\n\t\tfor (const node of wave) {\n\t\t\tprocessed++;\n\t\t\tfor (const neighbor of adjacency.get(node) ?? []) {\n\t\t\t\tconst degree = (remaining.get(neighbor) ?? 0) - 1;\n\t\t\t\tremaining.set(neighbor, degree);\n\t\t\t\tif (degree === 0) {\n\t\t\t\t\tnext.push(neighbor);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tfrontier = next;\n\t}\n\n\tif (processed < orderedNodes.length) {\n\t\thasCycle = true;\n\t\tconst placed = new Set(waves.flat());\n\t\tconst leftover = orderedNodes.filter((node) => !placed.has(node));\n\t\tif (leftover.length > 0) {\n\t\t\twaves.push(leftover);\n\t\t}\n\t}\n\n\tconst nodeCount = orderedNodes.length;\n\tconst width = waves.reduce((max, wave) => Math.max(max, wave.length), 0);\n\tconst criticalDepth = waves.length;\n\tconst maxEdges = nodeCount > 1 ? (nodeCount * (nodeCount - 1)) / 2 : 0;\n\tconst couplingDensity = maxEdges > 0 ? Math.min(1, edgeCount / maxEdges) : 0;\n\tconst parallelRatio = nodeCount > 0 ? width / nodeCount : 0;\n\n\tconst features: AdaptiveTopologyFeatures = {\n\t\tnodeCount,\n\t\tedgeCount,\n\t\twidth,\n\t\tcriticalDepth,\n\t\tcouplingDensity,\n\t\tparallelRatio,\n\t};\n\n\tconst roots = orderedNodes.filter((node) => (inDegree.get(node) ?? 0) === 0);\n\tconst stats: GraphStats = {\n\t\trootCount: roots.length,\n\t\thasFanOutRoot: roots.some((node) => (outDegree.get(node) ?? 0) > 1),\n\t\thasFanInSink: orderedNodes.some((node) => (outDegree.get(node) ?? 0) === 0 && (inDegree.get(node) ?? 0) > 1),\n\t\thasCycle,\n\t};\n\n\tconst { topology, reason } = classifyTopology(features, stats);\n\treturn { topology, features, waves, reason, hasCycle };\n}\n\n// ============================================================================\n// Ouroboros preference detection\n// ============================================================================\n\nexport type OuroborosMode = \"always\" | \"auto\" | \"off\";\n\nexport interface OuroborosIndicators {\n\tmcp: boolean;\n\tskills: boolean;\n\tbinary: boolean;\n}\n\nexport interface OuroborosPreference {\n\tmode: OuroborosMode;\n\t/** True when not off and at least one indicator is present. */\n\tpreferred: boolean;\n\t/** True when any indicator is present (mcp/skills/binary). */\n\tavailable: boolean;\n\tfallback: \"ouroboros\" | \"native\";\n\tindicators: OuroborosIndicators;\n\treason: string;\n}\n\nexport interface OuroborosDetectionInput {\n\tenv?: AdaptiveEnv;\n\tagentDir?: string;\n\tcwd?: string;\n\thome?: string;\n\t/** Injectable existence check (defaults to fs.existsSync); used for the binary indicator. */\n\texists?: (path: string) => boolean;\n}\n\nfunction resolveOuroborosMode(env: AdaptiveEnv): OuroborosMode {\n\tconst raw = normalizeFlag(env.OMK_OUROBOROS);\n\tif (raw === \"off\" || raw === \"0\" || raw === \"false\" || raw === \"no\") {\n\t\treturn \"off\";\n\t}\n\tif (raw === \"auto\") {\n\t\treturn \"auto\";\n\t}\n\treturn \"always\"; // default, also \"always\" | \"1\" | \"true\" | \"on\" | unset\n}\n\nfunction safeExists(exists: (path: string) => boolean, path: string): boolean {\n\ttry {\n\t\treturn exists(path);\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nfunction detectMcpIndicator(agentDir: string, exists: (path: string) => boolean): boolean {\n\tconst mcpPath = join(agentDir, \"mcp.json\");\n\tif (!safeExists(exists, mcpPath)) {\n\t\treturn false;\n\t}\n\ttry {\n\t\tconst parsed = JSON.parse(readFileSync(mcpPath, \"utf-8\")) as Record<string, unknown>;\n\t\tconst serversValue = parsed.mcpServers ?? parsed.servers ?? parsed;\n\t\tif (serversValue && typeof serversValue === \"object\") {\n\t\t\treturn Object.keys(serversValue as Record<string, unknown>).some((key) =>\n\t\t\t\tkey.toLowerCase().includes(\"ouroboros\"),\n\t\t\t);\n\t\t}\n\t\treturn false;\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nfunction detectSkillsIndicator(agentDir: string, exists: (path: string) => boolean): boolean {\n\tconst skillsDir = join(agentDir, \"skills\");\n\tif (!safeExists(exists, skillsDir)) {\n\t\treturn false;\n\t}\n\ttry {\n\t\treturn readdirSync(skillsDir).some((name) => name.toLowerCase().startsWith(\"ouroboros-\"));\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nfunction detectBinaryIndicator(home: string, exists: (path: string) => boolean): boolean {\n\treturn safeExists(exists, join(home, \".local\", \"bin\", \"ouroboros\"));\n}\n\n/**\n * Detect whether the Ouroboros runtime should be preferred.\n *\n * Presence-only: never throws, performs no secret reads. When indicators are\n * absent the preference falls back to the native runtime.\n */\nexport function detectOuroborosPreference(input: OuroborosDetectionInput = {}): OuroborosPreference {\n\tconst env = input.env ?? {};\n\tconst exists = input.exists ?? existsSync;\n\tconst home = input.home ?? env.HOME ?? env.USERPROFILE ?? homedir();\n\tconst agentDir = input.agentDir;\n\n\tconst mode = resolveOuroborosMode(env);\n\n\tconst indicators: OuroborosIndicators = {\n\t\tmcp: agentDir ? detectMcpIndicator(agentDir, exists) : false,\n\t\tskills: agentDir ? detectSkillsIndicator(agentDir, exists) : false,\n\t\tbinary: detectBinaryIndicator(home, exists),\n\t};\n\n\tconst available = indicators.mcp || indicators.skills || indicators.binary;\n\tconst preferred = mode !== \"off\" && available;\n\tconst fallback: OuroborosPreference[\"fallback\"] = preferred ? \"ouroboros\" : \"native\";\n\n\tlet reason: string;\n\tif (mode === \"off\") {\n\t\treason = \"ouroboros disabled via OMK_OUROBOROS\";\n\t} else if (available) {\n\t\tconst present = [\n\t\t\tindicators.mcp ? \"mcp\" : undefined,\n\t\t\tindicators.skills ? \"skills\" : undefined,\n\t\t\tindicators.binary ? \"binary\" : undefined,\n\t\t].filter((value): value is string => value !== undefined);\n\t\treason = `ouroboros preferred (${present.join(\", \")})`;\n\t} else {\n\t\treason = \"ouroboros unavailable; falling back to native runtime\";\n\t}\n\n\treturn { mode, preferred, available, fallback, indicators, reason };\n}\n\n// ============================================================================\n// First-run adaptive plan\n// ============================================================================\n\nexport const ADAPTIVE_PLAN_VERSION = 1;\nexport const DEFAULT_ADAPTIVE_RUNTIME = \"omk-parallel-orchestrator\";\n\n/** Startup DAG used to seed the first-run adaptive plan. */\nexport const OMK_STARTUP_DAG_NODES: readonly string[] = [\n\t\"session_start\",\n\t\"resources_discover\",\n\t\"model_select\",\n\t\"run_loop\",\n];\n\nexport const OMK_STARTUP_DAG_EDGES: readonly AdaptiveEdge[] = [\n\t{ from: \"session_start\", to: \"resources_discover\" },\n\t{ from: \"resources_discover\", to: \"model_select\" },\n\t{ from: \"model_select\", to: \"run_loop\" },\n];\n\nexport interface FirstRunAdaptivePlanInput {\n\tnodes?: readonly string[];\n\tedges?: readonly AdaptiveEdge[];\n\tenv?: AdaptiveEnv;\n\tagentDir?: string;\n\tcwd?: string;\n\thome?: string;\n\truntime?: string;\n\t/** Injectable clock (defaults to Date.now) for deterministic tests. */\n\tnow?: () => number;\n\texists?: (path: string) => boolean;\n}\n\nexport interface FirstRunAdaptivePlan {\n\tversion: number;\n\truntime: string;\n\tcreatedAt: string;\n\tcwd: string | null;\n\ttopology: AdaptiveTopologyDecision;\n\theadroom: { enabled: boolean; threshold: number };\n\touroboros: OuroborosPreference;\n}\n\n/** Build a JSON-serializable first-run adaptive plan. Pure. */\nexport function createFirstRunAdaptivePlan(input: FirstRunAdaptivePlanInput = {}): FirstRunAdaptivePlan {\n\tconst env = input.env ?? {};\n\tconst now = input.now ?? Date.now;\n\tconst nodes = input.nodes ?? OMK_STARTUP_DAG_NODES;\n\tconst edges = input.edges ?? OMK_STARTUP_DAG_EDGES;\n\n\tconst topology = computeAdaptiveTopology(nodes, edges);\n\tconst threshold = resolveAdaptiveHeadroomThreshold(env);\n\tconst headroom = {\n\t\tenabled: threshold > 0,\n\t\tthreshold: threshold > 0 ? threshold : DEFAULT_HEADROOM_THRESHOLD,\n\t};\n\tconst ouroboros = detectOuroborosPreference({\n\t\tenv,\n\t\tagentDir: input.agentDir,\n\t\tcwd: input.cwd,\n\t\thome: input.home,\n\t\texists: input.exists,\n\t});\n\n\treturn {\n\t\tversion: ADAPTIVE_PLAN_VERSION,\n\t\truntime: input.runtime ?? DEFAULT_ADAPTIVE_RUNTIME,\n\t\tcreatedAt: new Date(now()).toISOString(),\n\t\tcwd: input.cwd ?? null,\n\t\ttopology,\n\t\theadroom,\n\t\touroboros,\n\t};\n}\n\nexport interface WriteAdaptivePlanInput extends FirstRunAdaptivePlanInput {\n\tagentDir: string;\n\t/** Force rewrite even if the artifact already exists. */\n\trefresh?: boolean;\n}\n\nexport interface WriteAdaptivePlanResult {\n\tpath: string;\n\twritten: boolean;\n\tplan?: FirstRunAdaptivePlan;\n\treason: \"created\" | \"refreshed\" | \"exists\" | \"error\";\n\terror?: string;\n}\n\n/** Path of the first-run adaptive plan artifact. */\nexport function getAdaptivePlanPath(agentDir: string): string {\n\treturn join(agentDir, \"runs\", \"adaptive-runtime-plan.json\");\n}\n\nfunction isTruthyFlag(value: string | undefined): boolean {\n\tconst raw = normalizeFlag(value);\n\treturn raw === \"1\" || raw === \"true\" || raw === \"yes\" || raw === \"on\";\n}\n\n/**\n * Idempotently write the first-run adaptive plan. Non-fatal: any error is\n * captured in the result rather than thrown. Skips writing when the artifact\n * already exists unless `refresh` (or `OMK_ADAPTIVE_PLAN_REFRESH=1`) is set.\n */\nexport function writeFirstRunAdaptivePlan(input: WriteAdaptivePlanInput): WriteAdaptivePlanResult {\n\tconst env = input.env ?? {};\n\tconst exists = input.exists ?? existsSync;\n\tconst path = getAdaptivePlanPath(input.agentDir);\n\tconst refresh = input.refresh ?? isTruthyFlag(env.OMK_ADAPTIVE_PLAN_REFRESH);\n\n\ttry {\n\t\tconst alreadyExists = safeExists(exists, path);\n\t\tif (alreadyExists && !refresh) {\n\t\t\treturn { path, written: false, reason: \"exists\" };\n\t\t}\n\t\tconst plan = createFirstRunAdaptivePlan(input);\n\t\tmkdirSync(dirname(path), { recursive: true });\n\t\twriteFileSync(path, `${JSON.stringify(plan, null, 2)}\\n`, \"utf-8\");\n\t\treturn { path, written: true, plan, reason: alreadyExists ? \"refreshed\" : \"created\" };\n\t} catch (error) {\n\t\treturn { path, written: false, reason: \"error\", error: error instanceof Error ? error.message : String(error) };\n\t}\n}\n"]}
@@ -0,0 +1,378 @@
1
+ /**
2
+ * Adaptive runtime algorithms for the OMK hardfork.
3
+ *
4
+ * This module hosts pure, side-effect-free helpers that drive adaptive behaviour:
5
+ * - Headroom thresholds (when to compact / hand off before the context limit).
6
+ * - Topology routing (classify a task DAG into an execution topology).
7
+ * - Ouroboros preference detection (presence-only, never throws, no secret reads).
8
+ * - First-run adaptive plan generation (JSON-serializable artifact).
9
+ *
10
+ * The only non-pure helper is `writeFirstRunAdaptivePlan`, which performs an
11
+ * idempotent, non-fatal filesystem write of the generated plan. It is kept here
12
+ * so the behaviour stays unit-testable.
13
+ */
14
+ import { existsSync, mkdirSync, readdirSync, readFileSync, writeFileSync } from "node:fs";
15
+ import { homedir } from "node:os";
16
+ import { dirname, join } from "node:path";
17
+ // ============================================================================
18
+ // Headroom thresholds
19
+ // ============================================================================
20
+ export const DEFAULT_HEADROOM_THRESHOLD = 0.9;
21
+ export const MIN_HEADROOM_THRESHOLD = 0.5;
22
+ export const MAX_HEADROOM_THRESHOLD = 0.99;
23
+ function normalizeFlag(value) {
24
+ return value?.trim().toLowerCase() ?? "";
25
+ }
26
+ /** Whether the adaptive headroom feature is explicitly disabled via OMK_HEADROOM. */
27
+ export function isHeadroomDisabled(env = {}) {
28
+ const raw = normalizeFlag(env.OMK_HEADROOM);
29
+ return raw === "off" || raw === "0" || raw === "false" || raw === "no";
30
+ }
31
+ /**
32
+ * Resolve the adaptive headroom utilization threshold.
33
+ *
34
+ * - Default 0.90.
35
+ * - `OMK_HEADROOM_THRESHOLD` overrides (accepts a fraction `0.9` or percentage `90`).
36
+ * - Clamped to [0.5, 0.99].
37
+ * - Returns `0` when disabled via `OMK_HEADROOM=off|0|false|no`.
38
+ */
39
+ export function resolveAdaptiveHeadroomThreshold(env = {}) {
40
+ if (isHeadroomDisabled(env)) {
41
+ return 0;
42
+ }
43
+ let threshold = DEFAULT_HEADROOM_THRESHOLD;
44
+ const raw = env.OMK_HEADROOM_THRESHOLD;
45
+ if (raw !== undefined && raw.trim().length > 0) {
46
+ const parsed = Number.parseFloat(raw);
47
+ if (Number.isFinite(parsed)) {
48
+ threshold = parsed > 1 ? parsed / 100 : parsed;
49
+ }
50
+ }
51
+ return Math.min(MAX_HEADROOM_THRESHOLD, Math.max(MIN_HEADROOM_THRESHOLD, threshold));
52
+ }
53
+ /**
54
+ * Whether to invoke headroom (compact / hand off) before hitting the hard context limit.
55
+ * True only when the feature is enabled and utilization meets the resolved threshold.
56
+ */
57
+ export function shouldUseHeadroomBeforeLimit(contextTokens, contextWindow, env = {}) {
58
+ const threshold = resolveAdaptiveHeadroomThreshold(env);
59
+ if (threshold <= 0) {
60
+ return false;
61
+ }
62
+ if (!Number.isFinite(contextWindow) || contextWindow <= 0) {
63
+ return false;
64
+ }
65
+ if (!Number.isFinite(contextTokens) || contextTokens < 0) {
66
+ return false;
67
+ }
68
+ return contextTokens / contextWindow >= threshold;
69
+ }
70
+ /** Routing thresholds for the OMK topology router. */
71
+ const THETA_OMEGA = 0.5; // parallel ratio above this -> parallel/map_reduce
72
+ const THETA_GAMMA = 0.6; // coupling density above this -> high coupling
73
+ const THETA_DELTA = 5; // node-count / depth threshold for hierarchical
74
+ function classifyTopology(features, stats) {
75
+ const { nodeCount, width, criticalDepth, couplingDensity, parallelRatio } = features;
76
+ if (nodeCount === 0) {
77
+ return { topology: "dag", reason: "empty DAG" };
78
+ }
79
+ if (nodeCount === 1) {
80
+ return { topology: "singleton", reason: "single node, no parallelism" };
81
+ }
82
+ if (stats.hasCycle) {
83
+ return { topology: "dag", reason: "cycle detected; treating as general DAG" };
84
+ }
85
+ const wide = parallelRatio >= THETA_OMEGA;
86
+ const highCoupling = couplingDensity >= THETA_GAMMA;
87
+ const deep = criticalDepth >= THETA_DELTA;
88
+ if (width === 1) {
89
+ return { topology: "pipeline", reason: "fully sequential chain (width 1)" };
90
+ }
91
+ if (wide && highCoupling) {
92
+ return { topology: "hybrid", reason: "high parallelism with high coupling (mixed signals)" };
93
+ }
94
+ if (wide) {
95
+ if (stats.rootCount <= 1 && stats.hasFanOutRoot && stats.hasFanInSink) {
96
+ return { topology: "map_reduce", reason: "fan-out then fan-in with low coupling" };
97
+ }
98
+ return { topology: "parallel", reason: "wide DAG with low coupling" };
99
+ }
100
+ if (highCoupling) {
101
+ return { topology: "pipeline", reason: "high coupling, sequential stages" };
102
+ }
103
+ if (deep && nodeCount > THETA_DELTA) {
104
+ return { topology: "hierarchical", reason: "deep, large dependency tree" };
105
+ }
106
+ return { topology: "dag", reason: "general DAG with mixed parallelism" };
107
+ }
108
+ /**
109
+ * Compute structural features and an execution topology for a task DAG.
110
+ *
111
+ * Pure: uses Kahn layering with a cycle guard. Dangling edges (endpoints not in
112
+ * `nodes`) and duplicate edges are ignored; self loops mark the graph as cyclic.
113
+ */
114
+ export function computeAdaptiveTopology(nodes, edges) {
115
+ // De-duplicate nodes while preserving input order for deterministic layering.
116
+ const orderedNodes = [];
117
+ const nodeSet = new Set();
118
+ for (const node of nodes) {
119
+ if (!nodeSet.has(node)) {
120
+ nodeSet.add(node);
121
+ orderedNodes.push(node);
122
+ }
123
+ }
124
+ const indexOf = new Map();
125
+ orderedNodes.forEach((node, index) => {
126
+ indexOf.set(node, index);
127
+ });
128
+ const adjacency = new Map();
129
+ const inDegree = new Map();
130
+ const outDegree = new Map();
131
+ for (const node of orderedNodes) {
132
+ adjacency.set(node, new Set());
133
+ inDegree.set(node, 0);
134
+ outDegree.set(node, 0);
135
+ }
136
+ let edgeCount = 0;
137
+ let hasCycle = false;
138
+ const edgeSeen = new Set();
139
+ for (const edge of edges) {
140
+ if (!nodeSet.has(edge.from) || !nodeSet.has(edge.to)) {
141
+ continue; // ignore dangling edges
142
+ }
143
+ if (edge.from === edge.to) {
144
+ hasCycle = true; // self loop
145
+ continue;
146
+ }
147
+ const key = `${edge.from}\u0000${edge.to}`;
148
+ if (edgeSeen.has(key)) {
149
+ continue; // dedupe
150
+ }
151
+ edgeSeen.add(key);
152
+ const targets = adjacency.get(edge.from);
153
+ if (targets && !targets.has(edge.to)) {
154
+ targets.add(edge.to);
155
+ inDegree.set(edge.to, (inDegree.get(edge.to) ?? 0) + 1);
156
+ outDegree.set(edge.from, (outDegree.get(edge.from) ?? 0) + 1);
157
+ edgeCount++;
158
+ }
159
+ }
160
+ // Kahn layering.
161
+ const remaining = new Map(inDegree);
162
+ let frontier = orderedNodes.filter((node) => (remaining.get(node) ?? 0) === 0);
163
+ const waves = [];
164
+ let processed = 0;
165
+ while (frontier.length > 0) {
166
+ const wave = [...frontier].sort((a, b) => (indexOf.get(a) ?? 0) - (indexOf.get(b) ?? 0));
167
+ waves.push(wave);
168
+ const next = [];
169
+ for (const node of wave) {
170
+ processed++;
171
+ for (const neighbor of adjacency.get(node) ?? []) {
172
+ const degree = (remaining.get(neighbor) ?? 0) - 1;
173
+ remaining.set(neighbor, degree);
174
+ if (degree === 0) {
175
+ next.push(neighbor);
176
+ }
177
+ }
178
+ }
179
+ frontier = next;
180
+ }
181
+ if (processed < orderedNodes.length) {
182
+ hasCycle = true;
183
+ const placed = new Set(waves.flat());
184
+ const leftover = orderedNodes.filter((node) => !placed.has(node));
185
+ if (leftover.length > 0) {
186
+ waves.push(leftover);
187
+ }
188
+ }
189
+ const nodeCount = orderedNodes.length;
190
+ const width = waves.reduce((max, wave) => Math.max(max, wave.length), 0);
191
+ const criticalDepth = waves.length;
192
+ const maxEdges = nodeCount > 1 ? (nodeCount * (nodeCount - 1)) / 2 : 0;
193
+ const couplingDensity = maxEdges > 0 ? Math.min(1, edgeCount / maxEdges) : 0;
194
+ const parallelRatio = nodeCount > 0 ? width / nodeCount : 0;
195
+ const features = {
196
+ nodeCount,
197
+ edgeCount,
198
+ width,
199
+ criticalDepth,
200
+ couplingDensity,
201
+ parallelRatio,
202
+ };
203
+ const roots = orderedNodes.filter((node) => (inDegree.get(node) ?? 0) === 0);
204
+ const stats = {
205
+ rootCount: roots.length,
206
+ hasFanOutRoot: roots.some((node) => (outDegree.get(node) ?? 0) > 1),
207
+ hasFanInSink: orderedNodes.some((node) => (outDegree.get(node) ?? 0) === 0 && (inDegree.get(node) ?? 0) > 1),
208
+ hasCycle,
209
+ };
210
+ const { topology, reason } = classifyTopology(features, stats);
211
+ return { topology, features, waves, reason, hasCycle };
212
+ }
213
+ function resolveOuroborosMode(env) {
214
+ const raw = normalizeFlag(env.OMK_OUROBOROS);
215
+ if (raw === "off" || raw === "0" || raw === "false" || raw === "no") {
216
+ return "off";
217
+ }
218
+ if (raw === "auto") {
219
+ return "auto";
220
+ }
221
+ return "always"; // default, also "always" | "1" | "true" | "on" | unset
222
+ }
223
+ function safeExists(exists, path) {
224
+ try {
225
+ return exists(path);
226
+ }
227
+ catch {
228
+ return false;
229
+ }
230
+ }
231
+ function detectMcpIndicator(agentDir, exists) {
232
+ const mcpPath = join(agentDir, "mcp.json");
233
+ if (!safeExists(exists, mcpPath)) {
234
+ return false;
235
+ }
236
+ try {
237
+ const parsed = JSON.parse(readFileSync(mcpPath, "utf-8"));
238
+ const serversValue = parsed.mcpServers ?? parsed.servers ?? parsed;
239
+ if (serversValue && typeof serversValue === "object") {
240
+ return Object.keys(serversValue).some((key) => key.toLowerCase().includes("ouroboros"));
241
+ }
242
+ return false;
243
+ }
244
+ catch {
245
+ return false;
246
+ }
247
+ }
248
+ function detectSkillsIndicator(agentDir, exists) {
249
+ const skillsDir = join(agentDir, "skills");
250
+ if (!safeExists(exists, skillsDir)) {
251
+ return false;
252
+ }
253
+ try {
254
+ return readdirSync(skillsDir).some((name) => name.toLowerCase().startsWith("ouroboros-"));
255
+ }
256
+ catch {
257
+ return false;
258
+ }
259
+ }
260
+ function detectBinaryIndicator(home, exists) {
261
+ return safeExists(exists, join(home, ".local", "bin", "ouroboros"));
262
+ }
263
+ /**
264
+ * Detect whether the Ouroboros runtime should be preferred.
265
+ *
266
+ * Presence-only: never throws, performs no secret reads. When indicators are
267
+ * absent the preference falls back to the native runtime.
268
+ */
269
+ export function detectOuroborosPreference(input = {}) {
270
+ const env = input.env ?? {};
271
+ const exists = input.exists ?? existsSync;
272
+ const home = input.home ?? env.HOME ?? env.USERPROFILE ?? homedir();
273
+ const agentDir = input.agentDir;
274
+ const mode = resolveOuroborosMode(env);
275
+ const indicators = {
276
+ mcp: agentDir ? detectMcpIndicator(agentDir, exists) : false,
277
+ skills: agentDir ? detectSkillsIndicator(agentDir, exists) : false,
278
+ binary: detectBinaryIndicator(home, exists),
279
+ };
280
+ const available = indicators.mcp || indicators.skills || indicators.binary;
281
+ const preferred = mode !== "off" && available;
282
+ const fallback = preferred ? "ouroboros" : "native";
283
+ let reason;
284
+ if (mode === "off") {
285
+ reason = "ouroboros disabled via OMK_OUROBOROS";
286
+ }
287
+ else if (available) {
288
+ const present = [
289
+ indicators.mcp ? "mcp" : undefined,
290
+ indicators.skills ? "skills" : undefined,
291
+ indicators.binary ? "binary" : undefined,
292
+ ].filter((value) => value !== undefined);
293
+ reason = `ouroboros preferred (${present.join(", ")})`;
294
+ }
295
+ else {
296
+ reason = "ouroboros unavailable; falling back to native runtime";
297
+ }
298
+ return { mode, preferred, available, fallback, indicators, reason };
299
+ }
300
+ // ============================================================================
301
+ // First-run adaptive plan
302
+ // ============================================================================
303
+ export const ADAPTIVE_PLAN_VERSION = 1;
304
+ export const DEFAULT_ADAPTIVE_RUNTIME = "omk-parallel-orchestrator";
305
+ /** Startup DAG used to seed the first-run adaptive plan. */
306
+ export const OMK_STARTUP_DAG_NODES = [
307
+ "session_start",
308
+ "resources_discover",
309
+ "model_select",
310
+ "run_loop",
311
+ ];
312
+ export const OMK_STARTUP_DAG_EDGES = [
313
+ { from: "session_start", to: "resources_discover" },
314
+ { from: "resources_discover", to: "model_select" },
315
+ { from: "model_select", to: "run_loop" },
316
+ ];
317
+ /** Build a JSON-serializable first-run adaptive plan. Pure. */
318
+ export function createFirstRunAdaptivePlan(input = {}) {
319
+ const env = input.env ?? {};
320
+ const now = input.now ?? Date.now;
321
+ const nodes = input.nodes ?? OMK_STARTUP_DAG_NODES;
322
+ const edges = input.edges ?? OMK_STARTUP_DAG_EDGES;
323
+ const topology = computeAdaptiveTopology(nodes, edges);
324
+ const threshold = resolveAdaptiveHeadroomThreshold(env);
325
+ const headroom = {
326
+ enabled: threshold > 0,
327
+ threshold: threshold > 0 ? threshold : DEFAULT_HEADROOM_THRESHOLD,
328
+ };
329
+ const ouroboros = detectOuroborosPreference({
330
+ env,
331
+ agentDir: input.agentDir,
332
+ cwd: input.cwd,
333
+ home: input.home,
334
+ exists: input.exists,
335
+ });
336
+ return {
337
+ version: ADAPTIVE_PLAN_VERSION,
338
+ runtime: input.runtime ?? DEFAULT_ADAPTIVE_RUNTIME,
339
+ createdAt: new Date(now()).toISOString(),
340
+ cwd: input.cwd ?? null,
341
+ topology,
342
+ headroom,
343
+ ouroboros,
344
+ };
345
+ }
346
+ /** Path of the first-run adaptive plan artifact. */
347
+ export function getAdaptivePlanPath(agentDir) {
348
+ return join(agentDir, "runs", "adaptive-runtime-plan.json");
349
+ }
350
+ function isTruthyFlag(value) {
351
+ const raw = normalizeFlag(value);
352
+ return raw === "1" || raw === "true" || raw === "yes" || raw === "on";
353
+ }
354
+ /**
355
+ * Idempotently write the first-run adaptive plan. Non-fatal: any error is
356
+ * captured in the result rather than thrown. Skips writing when the artifact
357
+ * already exists unless `refresh` (or `OMK_ADAPTIVE_PLAN_REFRESH=1`) is set.
358
+ */
359
+ export function writeFirstRunAdaptivePlan(input) {
360
+ const env = input.env ?? {};
361
+ const exists = input.exists ?? existsSync;
362
+ const path = getAdaptivePlanPath(input.agentDir);
363
+ const refresh = input.refresh ?? isTruthyFlag(env.OMK_ADAPTIVE_PLAN_REFRESH);
364
+ try {
365
+ const alreadyExists = safeExists(exists, path);
366
+ if (alreadyExists && !refresh) {
367
+ return { path, written: false, reason: "exists" };
368
+ }
369
+ const plan = createFirstRunAdaptivePlan(input);
370
+ mkdirSync(dirname(path), { recursive: true });
371
+ writeFileSync(path, `${JSON.stringify(plan, null, 2)}\n`, "utf-8");
372
+ return { path, written: true, plan, reason: alreadyExists ? "refreshed" : "created" };
373
+ }
374
+ catch (error) {
375
+ return { path, written: false, reason: "error", error: error instanceof Error ? error.message : String(error) };
376
+ }
377
+ }
378
+ //# sourceMappingURL=adaptive-runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adaptive-runtime.js","sourceRoot":"","sources":["../../src/core/adaptive-runtime.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Adaptive runtime algorithms for the OMK hardfork.\n *\n * This module hosts pure, side-effect-free helpers that drive adaptive behaviour:\n * - Headroom thresholds (when to compact / hand off before the context limit).\n * - Topology routing (classify a task DAG into an execution topology).\n * - Ouroboros preference detection (presence-only, never throws, no secret reads).\n * - First-run adaptive plan generation (JSON-serializable artifact).\n *\n * The only non-pure helper is `writeFirstRunAdaptivePlan`, which performs an\n * idempotent, non-fatal filesystem write of the generated plan. It is kept here\n * so the behaviour stays unit-testable.\n */\n\nimport { existsSync, mkdirSync, readdirSync, readFileSync, writeFileSync } from \"node:fs\";\nimport { homedir } from \"node:os\";\nimport { dirname, join } from \"node:path\";\n\n// ============================================================================\n// Shared types\n// ============================================================================\n\n/** Minimal environment shape consumed by adaptive helpers. */\nexport type AdaptiveEnv = Record<string, string | undefined>;\n\n/** Directed edge in a task DAG. */\nexport interface AdaptiveEdge {\n\tfrom: string;\n\tto: string;\n}\n\n// ============================================================================\n// Headroom thresholds\n// ============================================================================\n\nexport const DEFAULT_HEADROOM_THRESHOLD = 0.9;\nexport const MIN_HEADROOM_THRESHOLD = 0.5;\nexport const MAX_HEADROOM_THRESHOLD = 0.99;\n\nfunction normalizeFlag(value: string | undefined): string {\n\treturn value?.trim().toLowerCase() ?? \"\";\n}\n\n/** Whether the adaptive headroom feature is explicitly disabled via OMK_HEADROOM. */\nexport function isHeadroomDisabled(env: AdaptiveEnv = {}): boolean {\n\tconst raw = normalizeFlag(env.OMK_HEADROOM);\n\treturn raw === \"off\" || raw === \"0\" || raw === \"false\" || raw === \"no\";\n}\n\n/**\n * Resolve the adaptive headroom utilization threshold.\n *\n * - Default 0.90.\n * - `OMK_HEADROOM_THRESHOLD` overrides (accepts a fraction `0.9` or percentage `90`).\n * - Clamped to [0.5, 0.99].\n * - Returns `0` when disabled via `OMK_HEADROOM=off|0|false|no`.\n */\nexport function resolveAdaptiveHeadroomThreshold(env: AdaptiveEnv = {}): number {\n\tif (isHeadroomDisabled(env)) {\n\t\treturn 0;\n\t}\n\tlet threshold = DEFAULT_HEADROOM_THRESHOLD;\n\tconst raw = env.OMK_HEADROOM_THRESHOLD;\n\tif (raw !== undefined && raw.trim().length > 0) {\n\t\tconst parsed = Number.parseFloat(raw);\n\t\tif (Number.isFinite(parsed)) {\n\t\t\tthreshold = parsed > 1 ? parsed / 100 : parsed;\n\t\t}\n\t}\n\treturn Math.min(MAX_HEADROOM_THRESHOLD, Math.max(MIN_HEADROOM_THRESHOLD, threshold));\n}\n\n/**\n * Whether to invoke headroom (compact / hand off) before hitting the hard context limit.\n * True only when the feature is enabled and utilization meets the resolved threshold.\n */\nexport function shouldUseHeadroomBeforeLimit(\n\tcontextTokens: number,\n\tcontextWindow: number,\n\tenv: AdaptiveEnv = {},\n): boolean {\n\tconst threshold = resolveAdaptiveHeadroomThreshold(env);\n\tif (threshold <= 0) {\n\t\treturn false;\n\t}\n\tif (!Number.isFinite(contextWindow) || contextWindow <= 0) {\n\t\treturn false;\n\t}\n\tif (!Number.isFinite(contextTokens) || contextTokens < 0) {\n\t\treturn false;\n\t}\n\treturn contextTokens / contextWindow >= threshold;\n}\n\n// ============================================================================\n// Topology routing\n// ============================================================================\n\nexport type AdaptiveTopology = \"singleton\" | \"parallel\" | \"pipeline\" | \"map_reduce\" | \"hierarchical\" | \"dag\" | \"hybrid\";\n\nexport interface AdaptiveTopologyFeatures {\n\tnodeCount: number;\n\tedgeCount: number;\n\t/** Maximum number of nodes in a single Kahn layer (parallel width). */\n\twidth: number;\n\t/** Number of layers / longest dependency chain in node terms. */\n\tcriticalDepth: number;\n\t/** Edges / possible edges (0 = fully parallel, 1 = fully sequential). */\n\tcouplingDensity: number;\n\t/** width / nodeCount (inherent parallelism potential). */\n\tparallelRatio: number;\n}\n\nexport interface AdaptiveTopologyDecision {\n\ttopology: AdaptiveTopology;\n\tfeatures: AdaptiveTopologyFeatures;\n\t/** Kahn layering; each entry is the set of node ids executable in that wave. */\n\twaves: string[][];\n\treason: string;\n\thasCycle: boolean;\n}\n\n/** Routing thresholds for the OMK topology router. */\nconst THETA_OMEGA = 0.5; // parallel ratio above this -> parallel/map_reduce\nconst THETA_GAMMA = 0.6; // coupling density above this -> high coupling\nconst THETA_DELTA = 5; // node-count / depth threshold for hierarchical\n\ninterface GraphStats {\n\trootCount: number;\n\thasFanInSink: boolean;\n\thasFanOutRoot: boolean;\n\thasCycle: boolean;\n}\n\nfunction classifyTopology(\n\tfeatures: AdaptiveTopologyFeatures,\n\tstats: GraphStats,\n): { topology: AdaptiveTopology; reason: string } {\n\tconst { nodeCount, width, criticalDepth, couplingDensity, parallelRatio } = features;\n\n\tif (nodeCount === 0) {\n\t\treturn { topology: \"dag\", reason: \"empty DAG\" };\n\t}\n\tif (nodeCount === 1) {\n\t\treturn { topology: \"singleton\", reason: \"single node, no parallelism\" };\n\t}\n\tif (stats.hasCycle) {\n\t\treturn { topology: \"dag\", reason: \"cycle detected; treating as general DAG\" };\n\t}\n\n\tconst wide = parallelRatio >= THETA_OMEGA;\n\tconst highCoupling = couplingDensity >= THETA_GAMMA;\n\tconst deep = criticalDepth >= THETA_DELTA;\n\n\tif (width === 1) {\n\t\treturn { topology: \"pipeline\", reason: \"fully sequential chain (width 1)\" };\n\t}\n\tif (wide && highCoupling) {\n\t\treturn { topology: \"hybrid\", reason: \"high parallelism with high coupling (mixed signals)\" };\n\t}\n\tif (wide) {\n\t\tif (stats.rootCount <= 1 && stats.hasFanOutRoot && stats.hasFanInSink) {\n\t\t\treturn { topology: \"map_reduce\", reason: \"fan-out then fan-in with low coupling\" };\n\t\t}\n\t\treturn { topology: \"parallel\", reason: \"wide DAG with low coupling\" };\n\t}\n\tif (highCoupling) {\n\t\treturn { topology: \"pipeline\", reason: \"high coupling, sequential stages\" };\n\t}\n\tif (deep && nodeCount > THETA_DELTA) {\n\t\treturn { topology: \"hierarchical\", reason: \"deep, large dependency tree\" };\n\t}\n\treturn { topology: \"dag\", reason: \"general DAG with mixed parallelism\" };\n}\n\n/**\n * Compute structural features and an execution topology for a task DAG.\n *\n * Pure: uses Kahn layering with a cycle guard. Dangling edges (endpoints not in\n * `nodes`) and duplicate edges are ignored; self loops mark the graph as cyclic.\n */\nexport function computeAdaptiveTopology(\n\tnodes: readonly string[],\n\tedges: readonly AdaptiveEdge[],\n): AdaptiveTopologyDecision {\n\t// De-duplicate nodes while preserving input order for deterministic layering.\n\tconst orderedNodes: string[] = [];\n\tconst nodeSet = new Set<string>();\n\tfor (const node of nodes) {\n\t\tif (!nodeSet.has(node)) {\n\t\t\tnodeSet.add(node);\n\t\t\torderedNodes.push(node);\n\t\t}\n\t}\n\tconst indexOf = new Map<string, number>();\n\torderedNodes.forEach((node, index) => {\n\t\tindexOf.set(node, index);\n\t});\n\n\tconst adjacency = new Map<string, Set<string>>();\n\tconst inDegree = new Map<string, number>();\n\tconst outDegree = new Map<string, number>();\n\tfor (const node of orderedNodes) {\n\t\tadjacency.set(node, new Set());\n\t\tinDegree.set(node, 0);\n\t\toutDegree.set(node, 0);\n\t}\n\n\tlet edgeCount = 0;\n\tlet hasCycle = false;\n\tconst edgeSeen = new Set<string>();\n\tfor (const edge of edges) {\n\t\tif (!nodeSet.has(edge.from) || !nodeSet.has(edge.to)) {\n\t\t\tcontinue; // ignore dangling edges\n\t\t}\n\t\tif (edge.from === edge.to) {\n\t\t\thasCycle = true; // self loop\n\t\t\tcontinue;\n\t\t}\n\t\tconst key = `${edge.from}\\u0000${edge.to}`;\n\t\tif (edgeSeen.has(key)) {\n\t\t\tcontinue; // dedupe\n\t\t}\n\t\tedgeSeen.add(key);\n\t\tconst targets = adjacency.get(edge.from);\n\t\tif (targets && !targets.has(edge.to)) {\n\t\t\ttargets.add(edge.to);\n\t\t\tinDegree.set(edge.to, (inDegree.get(edge.to) ?? 0) + 1);\n\t\t\toutDegree.set(edge.from, (outDegree.get(edge.from) ?? 0) + 1);\n\t\t\tedgeCount++;\n\t\t}\n\t}\n\n\t// Kahn layering.\n\tconst remaining = new Map(inDegree);\n\tlet frontier = orderedNodes.filter((node) => (remaining.get(node) ?? 0) === 0);\n\tconst waves: string[][] = [];\n\tlet processed = 0;\n\twhile (frontier.length > 0) {\n\t\tconst wave = [...frontier].sort((a, b) => (indexOf.get(a) ?? 0) - (indexOf.get(b) ?? 0));\n\t\twaves.push(wave);\n\t\tconst next: string[] = [];\n\t\tfor (const node of wave) {\n\t\t\tprocessed++;\n\t\t\tfor (const neighbor of adjacency.get(node) ?? []) {\n\t\t\t\tconst degree = (remaining.get(neighbor) ?? 0) - 1;\n\t\t\t\tremaining.set(neighbor, degree);\n\t\t\t\tif (degree === 0) {\n\t\t\t\t\tnext.push(neighbor);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tfrontier = next;\n\t}\n\n\tif (processed < orderedNodes.length) {\n\t\thasCycle = true;\n\t\tconst placed = new Set(waves.flat());\n\t\tconst leftover = orderedNodes.filter((node) => !placed.has(node));\n\t\tif (leftover.length > 0) {\n\t\t\twaves.push(leftover);\n\t\t}\n\t}\n\n\tconst nodeCount = orderedNodes.length;\n\tconst width = waves.reduce((max, wave) => Math.max(max, wave.length), 0);\n\tconst criticalDepth = waves.length;\n\tconst maxEdges = nodeCount > 1 ? (nodeCount * (nodeCount - 1)) / 2 : 0;\n\tconst couplingDensity = maxEdges > 0 ? Math.min(1, edgeCount / maxEdges) : 0;\n\tconst parallelRatio = nodeCount > 0 ? width / nodeCount : 0;\n\n\tconst features: AdaptiveTopologyFeatures = {\n\t\tnodeCount,\n\t\tedgeCount,\n\t\twidth,\n\t\tcriticalDepth,\n\t\tcouplingDensity,\n\t\tparallelRatio,\n\t};\n\n\tconst roots = orderedNodes.filter((node) => (inDegree.get(node) ?? 0) === 0);\n\tconst stats: GraphStats = {\n\t\trootCount: roots.length,\n\t\thasFanOutRoot: roots.some((node) => (outDegree.get(node) ?? 0) > 1),\n\t\thasFanInSink: orderedNodes.some((node) => (outDegree.get(node) ?? 0) === 0 && (inDegree.get(node) ?? 0) > 1),\n\t\thasCycle,\n\t};\n\n\tconst { topology, reason } = classifyTopology(features, stats);\n\treturn { topology, features, waves, reason, hasCycle };\n}\n\n// ============================================================================\n// Ouroboros preference detection\n// ============================================================================\n\nexport type OuroborosMode = \"always\" | \"auto\" | \"off\";\n\nexport interface OuroborosIndicators {\n\tmcp: boolean;\n\tskills: boolean;\n\tbinary: boolean;\n}\n\nexport interface OuroborosPreference {\n\tmode: OuroborosMode;\n\t/** True when not off and at least one indicator is present. */\n\tpreferred: boolean;\n\t/** True when any indicator is present (mcp/skills/binary). */\n\tavailable: boolean;\n\tfallback: \"ouroboros\" | \"native\";\n\tindicators: OuroborosIndicators;\n\treason: string;\n}\n\nexport interface OuroborosDetectionInput {\n\tenv?: AdaptiveEnv;\n\tagentDir?: string;\n\tcwd?: string;\n\thome?: string;\n\t/** Injectable existence check (defaults to fs.existsSync); used for the binary indicator. */\n\texists?: (path: string) => boolean;\n}\n\nfunction resolveOuroborosMode(env: AdaptiveEnv): OuroborosMode {\n\tconst raw = normalizeFlag(env.OMK_OUROBOROS);\n\tif (raw === \"off\" || raw === \"0\" || raw === \"false\" || raw === \"no\") {\n\t\treturn \"off\";\n\t}\n\tif (raw === \"auto\") {\n\t\treturn \"auto\";\n\t}\n\treturn \"always\"; // default, also \"always\" | \"1\" | \"true\" | \"on\" | unset\n}\n\nfunction safeExists(exists: (path: string) => boolean, path: string): boolean {\n\ttry {\n\t\treturn exists(path);\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nfunction detectMcpIndicator(agentDir: string, exists: (path: string) => boolean): boolean {\n\tconst mcpPath = join(agentDir, \"mcp.json\");\n\tif (!safeExists(exists, mcpPath)) {\n\t\treturn false;\n\t}\n\ttry {\n\t\tconst parsed = JSON.parse(readFileSync(mcpPath, \"utf-8\")) as Record<string, unknown>;\n\t\tconst serversValue = parsed.mcpServers ?? parsed.servers ?? parsed;\n\t\tif (serversValue && typeof serversValue === \"object\") {\n\t\t\treturn Object.keys(serversValue as Record<string, unknown>).some((key) =>\n\t\t\t\tkey.toLowerCase().includes(\"ouroboros\"),\n\t\t\t);\n\t\t}\n\t\treturn false;\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nfunction detectSkillsIndicator(agentDir: string, exists: (path: string) => boolean): boolean {\n\tconst skillsDir = join(agentDir, \"skills\");\n\tif (!safeExists(exists, skillsDir)) {\n\t\treturn false;\n\t}\n\ttry {\n\t\treturn readdirSync(skillsDir).some((name) => name.toLowerCase().startsWith(\"ouroboros-\"));\n\t} catch {\n\t\treturn false;\n\t}\n}\n\nfunction detectBinaryIndicator(home: string, exists: (path: string) => boolean): boolean {\n\treturn safeExists(exists, join(home, \".local\", \"bin\", \"ouroboros\"));\n}\n\n/**\n * Detect whether the Ouroboros runtime should be preferred.\n *\n * Presence-only: never throws, performs no secret reads. When indicators are\n * absent the preference falls back to the native runtime.\n */\nexport function detectOuroborosPreference(input: OuroborosDetectionInput = {}): OuroborosPreference {\n\tconst env = input.env ?? {};\n\tconst exists = input.exists ?? existsSync;\n\tconst home = input.home ?? env.HOME ?? env.USERPROFILE ?? homedir();\n\tconst agentDir = input.agentDir;\n\n\tconst mode = resolveOuroborosMode(env);\n\n\tconst indicators: OuroborosIndicators = {\n\t\tmcp: agentDir ? detectMcpIndicator(agentDir, exists) : false,\n\t\tskills: agentDir ? detectSkillsIndicator(agentDir, exists) : false,\n\t\tbinary: detectBinaryIndicator(home, exists),\n\t};\n\n\tconst available = indicators.mcp || indicators.skills || indicators.binary;\n\tconst preferred = mode !== \"off\" && available;\n\tconst fallback: OuroborosPreference[\"fallback\"] = preferred ? \"ouroboros\" : \"native\";\n\n\tlet reason: string;\n\tif (mode === \"off\") {\n\t\treason = \"ouroboros disabled via OMK_OUROBOROS\";\n\t} else if (available) {\n\t\tconst present = [\n\t\t\tindicators.mcp ? \"mcp\" : undefined,\n\t\t\tindicators.skills ? \"skills\" : undefined,\n\t\t\tindicators.binary ? \"binary\" : undefined,\n\t\t].filter((value): value is string => value !== undefined);\n\t\treason = `ouroboros preferred (${present.join(\", \")})`;\n\t} else {\n\t\treason = \"ouroboros unavailable; falling back to native runtime\";\n\t}\n\n\treturn { mode, preferred, available, fallback, indicators, reason };\n}\n\n// ============================================================================\n// First-run adaptive plan\n// ============================================================================\n\nexport const ADAPTIVE_PLAN_VERSION = 1;\nexport const DEFAULT_ADAPTIVE_RUNTIME = \"omk-parallel-orchestrator\";\n\n/** Startup DAG used to seed the first-run adaptive plan. */\nexport const OMK_STARTUP_DAG_NODES: readonly string[] = [\n\t\"session_start\",\n\t\"resources_discover\",\n\t\"model_select\",\n\t\"run_loop\",\n];\n\nexport const OMK_STARTUP_DAG_EDGES: readonly AdaptiveEdge[] = [\n\t{ from: \"session_start\", to: \"resources_discover\" },\n\t{ from: \"resources_discover\", to: \"model_select\" },\n\t{ from: \"model_select\", to: \"run_loop\" },\n];\n\nexport interface FirstRunAdaptivePlanInput {\n\tnodes?: readonly string[];\n\tedges?: readonly AdaptiveEdge[];\n\tenv?: AdaptiveEnv;\n\tagentDir?: string;\n\tcwd?: string;\n\thome?: string;\n\truntime?: string;\n\t/** Injectable clock (defaults to Date.now) for deterministic tests. */\n\tnow?: () => number;\n\texists?: (path: string) => boolean;\n}\n\nexport interface FirstRunAdaptivePlan {\n\tversion: number;\n\truntime: string;\n\tcreatedAt: string;\n\tcwd: string | null;\n\ttopology: AdaptiveTopologyDecision;\n\theadroom: { enabled: boolean; threshold: number };\n\touroboros: OuroborosPreference;\n}\n\n/** Build a JSON-serializable first-run adaptive plan. Pure. */\nexport function createFirstRunAdaptivePlan(input: FirstRunAdaptivePlanInput = {}): FirstRunAdaptivePlan {\n\tconst env = input.env ?? {};\n\tconst now = input.now ?? Date.now;\n\tconst nodes = input.nodes ?? OMK_STARTUP_DAG_NODES;\n\tconst edges = input.edges ?? OMK_STARTUP_DAG_EDGES;\n\n\tconst topology = computeAdaptiveTopology(nodes, edges);\n\tconst threshold = resolveAdaptiveHeadroomThreshold(env);\n\tconst headroom = {\n\t\tenabled: threshold > 0,\n\t\tthreshold: threshold > 0 ? threshold : DEFAULT_HEADROOM_THRESHOLD,\n\t};\n\tconst ouroboros = detectOuroborosPreference({\n\t\tenv,\n\t\tagentDir: input.agentDir,\n\t\tcwd: input.cwd,\n\t\thome: input.home,\n\t\texists: input.exists,\n\t});\n\n\treturn {\n\t\tversion: ADAPTIVE_PLAN_VERSION,\n\t\truntime: input.runtime ?? DEFAULT_ADAPTIVE_RUNTIME,\n\t\tcreatedAt: new Date(now()).toISOString(),\n\t\tcwd: input.cwd ?? null,\n\t\ttopology,\n\t\theadroom,\n\t\touroboros,\n\t};\n}\n\nexport interface WriteAdaptivePlanInput extends FirstRunAdaptivePlanInput {\n\tagentDir: string;\n\t/** Force rewrite even if the artifact already exists. */\n\trefresh?: boolean;\n}\n\nexport interface WriteAdaptivePlanResult {\n\tpath: string;\n\twritten: boolean;\n\tplan?: FirstRunAdaptivePlan;\n\treason: \"created\" | \"refreshed\" | \"exists\" | \"error\";\n\terror?: string;\n}\n\n/** Path of the first-run adaptive plan artifact. */\nexport function getAdaptivePlanPath(agentDir: string): string {\n\treturn join(agentDir, \"runs\", \"adaptive-runtime-plan.json\");\n}\n\nfunction isTruthyFlag(value: string | undefined): boolean {\n\tconst raw = normalizeFlag(value);\n\treturn raw === \"1\" || raw === \"true\" || raw === \"yes\" || raw === \"on\";\n}\n\n/**\n * Idempotently write the first-run adaptive plan. Non-fatal: any error is\n * captured in the result rather than thrown. Skips writing when the artifact\n * already exists unless `refresh` (or `OMK_ADAPTIVE_PLAN_REFRESH=1`) is set.\n */\nexport function writeFirstRunAdaptivePlan(input: WriteAdaptivePlanInput): WriteAdaptivePlanResult {\n\tconst env = input.env ?? {};\n\tconst exists = input.exists ?? existsSync;\n\tconst path = getAdaptivePlanPath(input.agentDir);\n\tconst refresh = input.refresh ?? isTruthyFlag(env.OMK_ADAPTIVE_PLAN_REFRESH);\n\n\ttry {\n\t\tconst alreadyExists = safeExists(exists, path);\n\t\tif (alreadyExists && !refresh) {\n\t\t\treturn { path, written: false, reason: \"exists\" };\n\t\t}\n\t\tconst plan = createFirstRunAdaptivePlan(input);\n\t\tmkdirSync(dirname(path), { recursive: true });\n\t\twriteFileSync(path, `${JSON.stringify(plan, null, 2)}\\n`, \"utf-8\");\n\t\treturn { path, written: true, plan, reason: alreadyExists ? \"refreshed\" : \"created\" };\n\t} catch (error) {\n\t\treturn { path, written: false, reason: \"error\", error: error instanceof Error ? error.message : String(error) };\n\t}\n}\n"]}