@ikarmic/forge-core 4.5.0 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (593) hide show
  1. package/LICENSE +44 -21
  2. package/README.md +1 -1
  3. package/dist/agent/agent.d.ts +0 -1
  4. package/dist/agent/agent.js +20 -1
  5. package/dist/agent/architect.d.ts +0 -1
  6. package/dist/agent/architect.js +0 -1
  7. package/dist/agent/cache-hints.d.ts +0 -1
  8. package/dist/agent/cache-hints.js +0 -1
  9. package/dist/agent/cost-router.d.ts +0 -1
  10. package/dist/agent/cost-router.js +0 -1
  11. package/dist/agent/enhance-prompt.d.ts +7 -0
  12. package/dist/agent/enhance-prompt.js +30 -0
  13. package/dist/agent/index.d.ts +0 -1
  14. package/dist/agent/index.js +0 -1
  15. package/dist/agent/loop-guard.d.ts +21 -0
  16. package/dist/agent/loop-guard.js +41 -0
  17. package/dist/agent/prompts.d.ts +0 -1
  18. package/dist/agent/prompts.js +0 -1
  19. package/dist/agent/think-tags.d.ts +0 -1
  20. package/dist/agent/think-tags.js +0 -1
  21. package/dist/agent/verify.d.ts +0 -1
  22. package/dist/agent/verify.js +0 -1
  23. package/dist/ai-comments/index.d.ts +0 -1
  24. package/dist/ai-comments/index.js +0 -1
  25. package/dist/attachments.d.ts +0 -1
  26. package/dist/attachments.js +0 -1
  27. package/dist/browser/cdp.d.ts +0 -1
  28. package/dist/browser/cdp.js +0 -1
  29. package/dist/browser/chrome.d.ts +0 -1
  30. package/dist/browser/chrome.js +0 -1
  31. package/dist/browser/session.d.ts +0 -1
  32. package/dist/browser/session.js +0 -1
  33. package/dist/checkpoints/index.d.ts +0 -1
  34. package/dist/checkpoints/index.js +0 -1
  35. package/dist/checkpoints/store.d.ts +0 -1
  36. package/dist/checkpoints/store.js +0 -1
  37. package/dist/checkpoints/types.d.ts +0 -1
  38. package/dist/checkpoints/types.js +0 -1
  39. package/dist/code-index/builder.d.ts +0 -1
  40. package/dist/code-index/builder.js +0 -1
  41. package/dist/code-index/index-store.d.ts +0 -1
  42. package/dist/code-index/index-store.js +0 -1
  43. package/dist/code-index/parser.d.ts +0 -1
  44. package/dist/code-index/parser.js +0 -1
  45. package/dist/code-index/types.d.ts +0 -1
  46. package/dist/code-index/types.js +0 -1
  47. package/dist/commands/custom-commands.d.ts +0 -1
  48. package/dist/commands/custom-commands.js +0 -1
  49. package/dist/config-file.d.ts +4 -1
  50. package/dist/config-file.js +0 -1
  51. package/dist/config.d.ts +0 -1
  52. package/dist/config.js +0 -1
  53. package/dist/context/compaction.d.ts +0 -1
  54. package/dist/context/compaction.js +6 -2
  55. package/dist/context/mask.d.ts +0 -1
  56. package/dist/context/mask.js +0 -1
  57. package/dist/credentials/index.d.ts +0 -1
  58. package/dist/credentials/index.js +0 -1
  59. package/dist/credentials/types.d.ts +0 -1
  60. package/dist/credentials/types.js +0 -1
  61. package/dist/diff/index.d.ts +0 -1
  62. package/dist/diff/index.js +0 -1
  63. package/dist/diff/unified-diff.d.ts +0 -1
  64. package/dist/diff/unified-diff.js +0 -1
  65. package/dist/git/auto-commit.d.ts +1 -2
  66. package/dist/git/auto-commit.js +3 -3
  67. package/dist/git/index.d.ts +0 -1
  68. package/dist/git/index.js +0 -1
  69. package/dist/github/github-tools.d.ts +0 -1
  70. package/dist/github/github-tools.js +0 -1
  71. package/dist/hooks/agent-runner.d.ts +0 -1
  72. package/dist/hooks/agent-runner.js +0 -1
  73. package/dist/hooks/bus.d.ts +0 -1
  74. package/dist/hooks/bus.js +0 -1
  75. package/dist/hooks/config.d.ts +0 -1
  76. package/dist/hooks/config.js +0 -1
  77. package/dist/hooks/events.d.ts +0 -1
  78. package/dist/hooks/events.js +0 -1
  79. package/dist/hooks/index.d.ts +0 -1
  80. package/dist/hooks/index.js +0 -1
  81. package/dist/hooks/loader.d.ts +0 -1
  82. package/dist/hooks/loader.js +0 -1
  83. package/dist/hooks/runner.d.ts +0 -1
  84. package/dist/hooks/runner.js +0 -1
  85. package/dist/hooks/watch-coalescer.d.ts +0 -1
  86. package/dist/hooks/watch-coalescer.js +0 -1
  87. package/dist/hooks/watch-ignore.d.ts +0 -1
  88. package/dist/hooks/watch-ignore.js +0 -1
  89. package/dist/hooks/watcher.d.ts +0 -1
  90. package/dist/hooks/watcher.js +0 -1
  91. package/dist/index.d.ts +5 -3
  92. package/dist/index.js +4 -2
  93. package/dist/lazy-model.d.ts +0 -1
  94. package/dist/lazy-model.js +0 -1
  95. package/dist/lint/auto-lint.d.ts +0 -1
  96. package/dist/lint/auto-lint.js +0 -1
  97. package/dist/lint/index.d.ts +0 -1
  98. package/dist/lint/index.js +0 -1
  99. package/dist/lsp/client.d.ts +0 -1
  100. package/dist/lsp/client.js +0 -1
  101. package/dist/lsp/diagnostics.d.ts +0 -1
  102. package/dist/lsp/diagnostics.js +0 -1
  103. package/dist/lsp/index.d.ts +0 -1
  104. package/dist/lsp/index.js +0 -1
  105. package/dist/mcp/catalog.d.ts +0 -1
  106. package/dist/mcp/catalog.js +0 -1
  107. package/dist/mcp/index.d.ts +0 -1
  108. package/dist/mcp/index.js +0 -1
  109. package/dist/mcp/json-schema-to-zod.d.ts +0 -1
  110. package/dist/mcp/json-schema-to-zod.js +0 -1
  111. package/dist/mcp/manager.d.ts +0 -1
  112. package/dist/mcp/manager.js +0 -1
  113. package/dist/mcp/marketplace-types.d.ts +0 -1
  114. package/dist/mcp/marketplace-types.js +0 -1
  115. package/dist/mcp/marketplace.d.ts +0 -1
  116. package/dist/mcp/marketplace.js +0 -1
  117. package/dist/mcp/mcp-client.d.ts +0 -1
  118. package/dist/mcp/mcp-client.js +0 -1
  119. package/dist/mcp/mcp-config.d.ts +0 -1
  120. package/dist/mcp/mcp-config.js +0 -1
  121. package/dist/mcp/registry.d.ts +0 -1
  122. package/dist/mcp/registry.js +0 -1
  123. package/dist/memory/memory-store.d.ts +0 -1
  124. package/dist/memory/memory-store.js +0 -1
  125. package/dist/memory/rank.d.ts +0 -1
  126. package/dist/memory/rank.js +0 -1
  127. package/dist/memory/stale.d.ts +0 -1
  128. package/dist/memory/stale.js +0 -1
  129. package/dist/model-alias.d.ts +0 -1
  130. package/dist/model-alias.js +0 -1
  131. package/dist/model-catalog.d.ts +0 -1
  132. package/dist/model-catalog.js +0 -1
  133. package/dist/model-list.d.ts +0 -1
  134. package/dist/model-list.js +0 -1
  135. package/dist/orchestrator/board-tools.d.ts +0 -1
  136. package/dist/orchestrator/board-tools.js +0 -1
  137. package/dist/orchestrator/board.d.ts +0 -1
  138. package/dist/orchestrator/board.js +0 -1
  139. package/dist/orchestrator/index.d.ts +0 -1
  140. package/dist/orchestrator/index.js +0 -1
  141. package/dist/orchestrator/orchestrator.d.ts +0 -1
  142. package/dist/orchestrator/orchestrator.js +0 -1
  143. package/dist/orchestrator/router.d.ts +0 -1
  144. package/dist/orchestrator/router.js +0 -1
  145. package/dist/orchestrator/specialists-registry.d.ts +0 -1
  146. package/dist/orchestrator/specialists-registry.js +0 -1
  147. package/dist/orchestrator/specialists.d.ts +0 -1
  148. package/dist/orchestrator/specialists.js +0 -1
  149. package/dist/orchestrator/types.d.ts +0 -1
  150. package/dist/orchestrator/types.js +0 -1
  151. package/dist/plugins/index.d.ts +0 -1
  152. package/dist/plugins/index.js +0 -1
  153. package/dist/plugins/install.d.ts +0 -1
  154. package/dist/plugins/install.js +0 -1
  155. package/dist/plugins/loader.d.ts +0 -1
  156. package/dist/plugins/loader.js +0 -1
  157. package/dist/policy/audit.d.ts +0 -1
  158. package/dist/policy/audit.js +0 -1
  159. package/dist/policy/policy.d.ts +0 -1
  160. package/dist/policy/policy.js +0 -1
  161. package/dist/policy/proxy.d.ts +0 -1
  162. package/dist/policy/proxy.js +0 -1
  163. package/dist/pricing.d.ts +0 -1
  164. package/dist/pricing.js +0 -1
  165. package/dist/providers.d.ts +0 -1
  166. package/dist/providers.js +0 -1
  167. package/dist/repomap/index.d.ts +0 -1
  168. package/dist/repomap/index.js +0 -1
  169. package/dist/repomap/repo-map.d.ts +0 -1
  170. package/dist/repomap/repo-map.js +0 -1
  171. package/dist/semantic/chunker.d.ts +0 -1
  172. package/dist/semantic/chunker.js +0 -1
  173. package/dist/semantic/embedder.d.ts +0 -1
  174. package/dist/semantic/embedder.js +0 -1
  175. package/dist/semantic/semantic-index.d.ts +0 -1
  176. package/dist/semantic/semantic-index.js +0 -1
  177. package/dist/semantic/vector-store.d.ts +0 -1
  178. package/dist/semantic/vector-store.js +0 -1
  179. package/dist/sessions/index.d.ts +1 -1
  180. package/dist/sessions/index.js +1 -1
  181. package/dist/sessions/prune.d.ts +23 -0
  182. package/dist/sessions/prune.js +35 -0
  183. package/dist/sessions/search.d.ts +0 -1
  184. package/dist/sessions/search.js +0 -1
  185. package/dist/sessions/session-export.d.ts +0 -1
  186. package/dist/sessions/session-export.js +0 -1
  187. package/dist/sessions/session-store.d.ts +0 -1
  188. package/dist/sessions/session-store.js +0 -1
  189. package/dist/sessions/watch.d.ts +0 -1
  190. package/dist/sessions/watch.js +0 -1
  191. package/dist/settings-export.d.ts +0 -1
  192. package/dist/settings-export.js +0 -1
  193. package/dist/skills/activator.d.ts +0 -1
  194. package/dist/skills/activator.js +0 -1
  195. package/dist/skills/index.d.ts +0 -1
  196. package/dist/skills/index.js +0 -1
  197. package/dist/skills/loader.d.ts +0 -1
  198. package/dist/skills/loader.js +0 -1
  199. package/dist/skills/marketplace-types.d.ts +0 -1
  200. package/dist/skills/marketplace-types.js +0 -1
  201. package/dist/skills/marketplace.d.ts +0 -1
  202. package/dist/skills/marketplace.js +0 -1
  203. package/dist/skills/parser.d.ts +0 -1
  204. package/dist/skills/parser.js +0 -1
  205. package/dist/skills/types.d.ts +0 -1
  206. package/dist/skills/types.js +0 -1
  207. package/dist/specs/generate.d.ts +0 -1
  208. package/dist/specs/generate.js +0 -1
  209. package/dist/specs/index.d.ts +0 -1
  210. package/dist/specs/index.js +0 -1
  211. package/dist/specs/store.d.ts +0 -1
  212. package/dist/specs/store.js +0 -1
  213. package/dist/specs/sync.d.ts +0 -1
  214. package/dist/specs/sync.js +0 -1
  215. package/dist/specs/tasks-parser.d.ts +0 -1
  216. package/dist/specs/tasks-parser.js +0 -1
  217. package/dist/specs/types.d.ts +0 -1
  218. package/dist/specs/types.js +0 -1
  219. package/dist/steering/glob.d.ts +0 -1
  220. package/dist/steering/glob.js +0 -1
  221. package/dist/steering/index.d.ts +0 -1
  222. package/dist/steering/index.js +0 -1
  223. package/dist/steering/loader.d.ts +0 -1
  224. package/dist/steering/loader.js +0 -1
  225. package/dist/steering/project-instructions.d.ts +0 -1
  226. package/dist/steering/project-instructions.js +0 -1
  227. package/dist/steering/select.d.ts +0 -1
  228. package/dist/steering/select.js +0 -1
  229. package/dist/steering/types.d.ts +0 -1
  230. package/dist/steering/types.js +0 -1
  231. package/dist/structured/index.d.ts +0 -1
  232. package/dist/structured/index.js +0 -1
  233. package/dist/structured/retry.d.ts +0 -1
  234. package/dist/structured/retry.js +0 -1
  235. package/dist/structured/schema.d.ts +0 -1
  236. package/dist/structured/schema.js +0 -1
  237. package/dist/tools/browser-tools.d.ts +0 -1
  238. package/dist/tools/browser-tools.js +0 -1
  239. package/dist/tools/codebase-search.d.ts +0 -1
  240. package/dist/tools/codebase-search.js +0 -1
  241. package/dist/tools/command-allow.d.ts +0 -1
  242. package/dist/tools/command-allow.js +0 -1
  243. package/dist/tools/edit-file.d.ts +0 -1
  244. package/dist/tools/edit-file.js +0 -1
  245. package/dist/tools/fetch-url.d.ts +0 -1
  246. package/dist/tools/fetch-url.js +0 -1
  247. package/dist/tools/find-references.d.ts +0 -1
  248. package/dist/tools/find-references.js +0 -1
  249. package/dist/tools/find-symbol.d.ts +0 -1
  250. package/dist/tools/find-symbol.js +0 -1
  251. package/dist/tools/ignore-rules.d.ts +0 -1
  252. package/dist/tools/ignore-rules.js +0 -1
  253. package/dist/tools/index.d.ts +0 -1
  254. package/dist/tools/index.js +0 -1
  255. package/dist/tools/list-files.d.ts +0 -1
  256. package/dist/tools/list-files.js +0 -1
  257. package/dist/tools/list-symbols.d.ts +0 -1
  258. package/dist/tools/list-symbols.js +0 -1
  259. package/dist/tools/memory.d.ts +0 -1
  260. package/dist/tools/memory.js +0 -1
  261. package/dist/tools/notebook.d.ts +0 -1
  262. package/dist/tools/notebook.js +0 -1
  263. package/dist/tools/policy.d.ts +0 -1
  264. package/dist/tools/policy.js +0 -1
  265. package/dist/tools/read-file.d.ts +0 -1
  266. package/dist/tools/read-file.js +0 -1
  267. package/dist/tools/read-image.d.ts +0 -1
  268. package/dist/tools/read-image.js +0 -1
  269. package/dist/tools/read-only.d.ts +0 -1
  270. package/dist/tools/read-only.js +0 -1
  271. package/dist/tools/redact.d.ts +0 -1
  272. package/dist/tools/redact.js +0 -1
  273. package/dist/tools/result-cache.d.ts +0 -1
  274. package/dist/tools/result-cache.js +0 -1
  275. package/dist/tools/run-command.d.ts +0 -1
  276. package/dist/tools/run-command.js +0 -1
  277. package/dist/tools/sandbox-loader.d.ts +0 -1
  278. package/dist/tools/sandbox-loader.js +0 -1
  279. package/dist/tools/search-files.d.ts +0 -1
  280. package/dist/tools/search-files.js +0 -1
  281. package/dist/tools/shared.d.ts +0 -1
  282. package/dist/tools/shared.js +0 -1
  283. package/dist/tools/sub-agent.d.ts +0 -1
  284. package/dist/tools/sub-agent.js +0 -1
  285. package/dist/tools/web-search.d.ts +0 -1
  286. package/dist/tools/web-search.js +0 -1
  287. package/dist/tools/write-file.d.ts +0 -1
  288. package/dist/tools/write-file.js +0 -1
  289. package/dist/types.d.ts +12 -2
  290. package/dist/types.js +0 -1
  291. package/dist/verify/detect.d.ts +0 -1
  292. package/dist/verify/detect.js +0 -1
  293. package/dist/verify/index.d.ts +0 -1
  294. package/dist/verify/index.js +0 -1
  295. package/dist/worktree/branch-ops.d.ts +0 -1
  296. package/dist/worktree/branch-ops.js +0 -1
  297. package/dist/worktree/index.d.ts +0 -1
  298. package/dist/worktree/index.js +0 -1
  299. package/dist/worktree/worktree.d.ts +0 -1
  300. package/dist/worktree/worktree.js +0 -1
  301. package/package.json +3 -2
  302. package/dist/agent/agent.d.ts.map +0 -1
  303. package/dist/agent/agent.js.map +0 -1
  304. package/dist/agent/architect.d.ts.map +0 -1
  305. package/dist/agent/architect.js.map +0 -1
  306. package/dist/agent/cache-hints.d.ts.map +0 -1
  307. package/dist/agent/cache-hints.js.map +0 -1
  308. package/dist/agent/cost-router.d.ts.map +0 -1
  309. package/dist/agent/cost-router.js.map +0 -1
  310. package/dist/agent/index.d.ts.map +0 -1
  311. package/dist/agent/index.js.map +0 -1
  312. package/dist/agent/prompts.d.ts.map +0 -1
  313. package/dist/agent/prompts.js.map +0 -1
  314. package/dist/agent/think-tags.d.ts.map +0 -1
  315. package/dist/agent/think-tags.js.map +0 -1
  316. package/dist/agent/verify.d.ts.map +0 -1
  317. package/dist/agent/verify.js.map +0 -1
  318. package/dist/ai-comments/index.d.ts.map +0 -1
  319. package/dist/ai-comments/index.js.map +0 -1
  320. package/dist/attachments.d.ts.map +0 -1
  321. package/dist/attachments.js.map +0 -1
  322. package/dist/browser/cdp.d.ts.map +0 -1
  323. package/dist/browser/cdp.js.map +0 -1
  324. package/dist/browser/chrome.d.ts.map +0 -1
  325. package/dist/browser/chrome.js.map +0 -1
  326. package/dist/browser/session.d.ts.map +0 -1
  327. package/dist/browser/session.js.map +0 -1
  328. package/dist/checkpoints/index.d.ts.map +0 -1
  329. package/dist/checkpoints/index.js.map +0 -1
  330. package/dist/checkpoints/store.d.ts.map +0 -1
  331. package/dist/checkpoints/store.js.map +0 -1
  332. package/dist/checkpoints/types.d.ts.map +0 -1
  333. package/dist/checkpoints/types.js.map +0 -1
  334. package/dist/code-index/builder.d.ts.map +0 -1
  335. package/dist/code-index/builder.js.map +0 -1
  336. package/dist/code-index/index-store.d.ts.map +0 -1
  337. package/dist/code-index/index-store.js.map +0 -1
  338. package/dist/code-index/parser.d.ts.map +0 -1
  339. package/dist/code-index/parser.js.map +0 -1
  340. package/dist/code-index/types.d.ts.map +0 -1
  341. package/dist/code-index/types.js.map +0 -1
  342. package/dist/commands/custom-commands.d.ts.map +0 -1
  343. package/dist/commands/custom-commands.js.map +0 -1
  344. package/dist/config-file.d.ts.map +0 -1
  345. package/dist/config-file.js.map +0 -1
  346. package/dist/config.d.ts.map +0 -1
  347. package/dist/config.js.map +0 -1
  348. package/dist/context/compaction.d.ts.map +0 -1
  349. package/dist/context/compaction.js.map +0 -1
  350. package/dist/context/mask.d.ts.map +0 -1
  351. package/dist/context/mask.js.map +0 -1
  352. package/dist/credentials/index.d.ts.map +0 -1
  353. package/dist/credentials/index.js.map +0 -1
  354. package/dist/credentials/types.d.ts.map +0 -1
  355. package/dist/credentials/types.js.map +0 -1
  356. package/dist/diff/index.d.ts.map +0 -1
  357. package/dist/diff/index.js.map +0 -1
  358. package/dist/diff/unified-diff.d.ts.map +0 -1
  359. package/dist/diff/unified-diff.js.map +0 -1
  360. package/dist/git/auto-commit.d.ts.map +0 -1
  361. package/dist/git/auto-commit.js.map +0 -1
  362. package/dist/git/index.d.ts.map +0 -1
  363. package/dist/git/index.js.map +0 -1
  364. package/dist/github/github-tools.d.ts.map +0 -1
  365. package/dist/github/github-tools.js.map +0 -1
  366. package/dist/hooks/agent-runner.d.ts.map +0 -1
  367. package/dist/hooks/agent-runner.js.map +0 -1
  368. package/dist/hooks/bus.d.ts.map +0 -1
  369. package/dist/hooks/bus.js.map +0 -1
  370. package/dist/hooks/config.d.ts.map +0 -1
  371. package/dist/hooks/config.js.map +0 -1
  372. package/dist/hooks/events.d.ts.map +0 -1
  373. package/dist/hooks/events.js.map +0 -1
  374. package/dist/hooks/index.d.ts.map +0 -1
  375. package/dist/hooks/index.js.map +0 -1
  376. package/dist/hooks/loader.d.ts.map +0 -1
  377. package/dist/hooks/loader.js.map +0 -1
  378. package/dist/hooks/runner.d.ts.map +0 -1
  379. package/dist/hooks/runner.js.map +0 -1
  380. package/dist/hooks/watch-coalescer.d.ts.map +0 -1
  381. package/dist/hooks/watch-coalescer.js.map +0 -1
  382. package/dist/hooks/watch-ignore.d.ts.map +0 -1
  383. package/dist/hooks/watch-ignore.js.map +0 -1
  384. package/dist/hooks/watcher.d.ts.map +0 -1
  385. package/dist/hooks/watcher.js.map +0 -1
  386. package/dist/index.d.ts.map +0 -1
  387. package/dist/index.js.map +0 -1
  388. package/dist/lazy-model.d.ts.map +0 -1
  389. package/dist/lazy-model.js.map +0 -1
  390. package/dist/lint/auto-lint.d.ts.map +0 -1
  391. package/dist/lint/auto-lint.js.map +0 -1
  392. package/dist/lint/index.d.ts.map +0 -1
  393. package/dist/lint/index.js.map +0 -1
  394. package/dist/lsp/client.d.ts.map +0 -1
  395. package/dist/lsp/client.js.map +0 -1
  396. package/dist/lsp/diagnostics.d.ts.map +0 -1
  397. package/dist/lsp/diagnostics.js.map +0 -1
  398. package/dist/lsp/index.d.ts.map +0 -1
  399. package/dist/lsp/index.js.map +0 -1
  400. package/dist/mcp/catalog.d.ts.map +0 -1
  401. package/dist/mcp/catalog.js.map +0 -1
  402. package/dist/mcp/index.d.ts.map +0 -1
  403. package/dist/mcp/index.js.map +0 -1
  404. package/dist/mcp/json-schema-to-zod.d.ts.map +0 -1
  405. package/dist/mcp/json-schema-to-zod.js.map +0 -1
  406. package/dist/mcp/manager.d.ts.map +0 -1
  407. package/dist/mcp/manager.js.map +0 -1
  408. package/dist/mcp/marketplace-types.d.ts.map +0 -1
  409. package/dist/mcp/marketplace-types.js.map +0 -1
  410. package/dist/mcp/marketplace.d.ts.map +0 -1
  411. package/dist/mcp/marketplace.js.map +0 -1
  412. package/dist/mcp/mcp-client.d.ts.map +0 -1
  413. package/dist/mcp/mcp-client.js.map +0 -1
  414. package/dist/mcp/mcp-config.d.ts.map +0 -1
  415. package/dist/mcp/mcp-config.js.map +0 -1
  416. package/dist/mcp/registry.d.ts.map +0 -1
  417. package/dist/mcp/registry.js.map +0 -1
  418. package/dist/memory/memory-store.d.ts.map +0 -1
  419. package/dist/memory/memory-store.js.map +0 -1
  420. package/dist/memory/rank.d.ts.map +0 -1
  421. package/dist/memory/rank.js.map +0 -1
  422. package/dist/memory/stale.d.ts.map +0 -1
  423. package/dist/memory/stale.js.map +0 -1
  424. package/dist/model-alias.d.ts.map +0 -1
  425. package/dist/model-alias.js.map +0 -1
  426. package/dist/model-catalog.d.ts.map +0 -1
  427. package/dist/model-catalog.js.map +0 -1
  428. package/dist/model-list.d.ts.map +0 -1
  429. package/dist/model-list.js.map +0 -1
  430. package/dist/orchestrator/board-tools.d.ts.map +0 -1
  431. package/dist/orchestrator/board-tools.js.map +0 -1
  432. package/dist/orchestrator/board.d.ts.map +0 -1
  433. package/dist/orchestrator/board.js.map +0 -1
  434. package/dist/orchestrator/index.d.ts.map +0 -1
  435. package/dist/orchestrator/index.js.map +0 -1
  436. package/dist/orchestrator/orchestrator.d.ts.map +0 -1
  437. package/dist/orchestrator/orchestrator.js.map +0 -1
  438. package/dist/orchestrator/router.d.ts.map +0 -1
  439. package/dist/orchestrator/router.js.map +0 -1
  440. package/dist/orchestrator/specialists-registry.d.ts.map +0 -1
  441. package/dist/orchestrator/specialists-registry.js.map +0 -1
  442. package/dist/orchestrator/specialists.d.ts.map +0 -1
  443. package/dist/orchestrator/specialists.js.map +0 -1
  444. package/dist/orchestrator/types.d.ts.map +0 -1
  445. package/dist/orchestrator/types.js.map +0 -1
  446. package/dist/plugins/index.d.ts.map +0 -1
  447. package/dist/plugins/index.js.map +0 -1
  448. package/dist/plugins/install.d.ts.map +0 -1
  449. package/dist/plugins/install.js.map +0 -1
  450. package/dist/plugins/loader.d.ts.map +0 -1
  451. package/dist/plugins/loader.js.map +0 -1
  452. package/dist/policy/audit.d.ts.map +0 -1
  453. package/dist/policy/audit.js.map +0 -1
  454. package/dist/policy/policy.d.ts.map +0 -1
  455. package/dist/policy/policy.js.map +0 -1
  456. package/dist/policy/proxy.d.ts.map +0 -1
  457. package/dist/policy/proxy.js.map +0 -1
  458. package/dist/pricing.d.ts.map +0 -1
  459. package/dist/pricing.js.map +0 -1
  460. package/dist/providers.d.ts.map +0 -1
  461. package/dist/providers.js.map +0 -1
  462. package/dist/repomap/index.d.ts.map +0 -1
  463. package/dist/repomap/index.js.map +0 -1
  464. package/dist/repomap/repo-map.d.ts.map +0 -1
  465. package/dist/repomap/repo-map.js.map +0 -1
  466. package/dist/semantic/chunker.d.ts.map +0 -1
  467. package/dist/semantic/chunker.js.map +0 -1
  468. package/dist/semantic/embedder.d.ts.map +0 -1
  469. package/dist/semantic/embedder.js.map +0 -1
  470. package/dist/semantic/semantic-index.d.ts.map +0 -1
  471. package/dist/semantic/semantic-index.js.map +0 -1
  472. package/dist/semantic/vector-store.d.ts.map +0 -1
  473. package/dist/semantic/vector-store.js.map +0 -1
  474. package/dist/sessions/index.d.ts.map +0 -1
  475. package/dist/sessions/index.js.map +0 -1
  476. package/dist/sessions/search.d.ts.map +0 -1
  477. package/dist/sessions/search.js.map +0 -1
  478. package/dist/sessions/session-export.d.ts.map +0 -1
  479. package/dist/sessions/session-export.js.map +0 -1
  480. package/dist/sessions/session-store.d.ts.map +0 -1
  481. package/dist/sessions/session-store.js.map +0 -1
  482. package/dist/sessions/watch.d.ts.map +0 -1
  483. package/dist/sessions/watch.js.map +0 -1
  484. package/dist/settings-export.d.ts.map +0 -1
  485. package/dist/settings-export.js.map +0 -1
  486. package/dist/skills/activator.d.ts.map +0 -1
  487. package/dist/skills/activator.js.map +0 -1
  488. package/dist/skills/index.d.ts.map +0 -1
  489. package/dist/skills/index.js.map +0 -1
  490. package/dist/skills/loader.d.ts.map +0 -1
  491. package/dist/skills/loader.js.map +0 -1
  492. package/dist/skills/marketplace-types.d.ts.map +0 -1
  493. package/dist/skills/marketplace-types.js.map +0 -1
  494. package/dist/skills/marketplace.d.ts.map +0 -1
  495. package/dist/skills/marketplace.js.map +0 -1
  496. package/dist/skills/parser.d.ts.map +0 -1
  497. package/dist/skills/parser.js.map +0 -1
  498. package/dist/skills/types.d.ts.map +0 -1
  499. package/dist/skills/types.js.map +0 -1
  500. package/dist/specs/generate.d.ts.map +0 -1
  501. package/dist/specs/generate.js.map +0 -1
  502. package/dist/specs/index.d.ts.map +0 -1
  503. package/dist/specs/index.js.map +0 -1
  504. package/dist/specs/store.d.ts.map +0 -1
  505. package/dist/specs/store.js.map +0 -1
  506. package/dist/specs/sync.d.ts.map +0 -1
  507. package/dist/specs/sync.js.map +0 -1
  508. package/dist/specs/tasks-parser.d.ts.map +0 -1
  509. package/dist/specs/tasks-parser.js.map +0 -1
  510. package/dist/specs/types.d.ts.map +0 -1
  511. package/dist/specs/types.js.map +0 -1
  512. package/dist/steering/glob.d.ts.map +0 -1
  513. package/dist/steering/glob.js.map +0 -1
  514. package/dist/steering/index.d.ts.map +0 -1
  515. package/dist/steering/index.js.map +0 -1
  516. package/dist/steering/loader.d.ts.map +0 -1
  517. package/dist/steering/loader.js.map +0 -1
  518. package/dist/steering/project-instructions.d.ts.map +0 -1
  519. package/dist/steering/project-instructions.js.map +0 -1
  520. package/dist/steering/select.d.ts.map +0 -1
  521. package/dist/steering/select.js.map +0 -1
  522. package/dist/steering/types.d.ts.map +0 -1
  523. package/dist/steering/types.js.map +0 -1
  524. package/dist/structured/index.d.ts.map +0 -1
  525. package/dist/structured/index.js.map +0 -1
  526. package/dist/structured/retry.d.ts.map +0 -1
  527. package/dist/structured/retry.js.map +0 -1
  528. package/dist/structured/schema.d.ts.map +0 -1
  529. package/dist/structured/schema.js.map +0 -1
  530. package/dist/tools/browser-tools.d.ts.map +0 -1
  531. package/dist/tools/browser-tools.js.map +0 -1
  532. package/dist/tools/codebase-search.d.ts.map +0 -1
  533. package/dist/tools/codebase-search.js.map +0 -1
  534. package/dist/tools/command-allow.d.ts.map +0 -1
  535. package/dist/tools/command-allow.js.map +0 -1
  536. package/dist/tools/edit-file.d.ts.map +0 -1
  537. package/dist/tools/edit-file.js.map +0 -1
  538. package/dist/tools/fetch-url.d.ts.map +0 -1
  539. package/dist/tools/fetch-url.js.map +0 -1
  540. package/dist/tools/find-references.d.ts.map +0 -1
  541. package/dist/tools/find-references.js.map +0 -1
  542. package/dist/tools/find-symbol.d.ts.map +0 -1
  543. package/dist/tools/find-symbol.js.map +0 -1
  544. package/dist/tools/ignore-rules.d.ts.map +0 -1
  545. package/dist/tools/ignore-rules.js.map +0 -1
  546. package/dist/tools/index.d.ts.map +0 -1
  547. package/dist/tools/index.js.map +0 -1
  548. package/dist/tools/list-files.d.ts.map +0 -1
  549. package/dist/tools/list-files.js.map +0 -1
  550. package/dist/tools/list-symbols.d.ts.map +0 -1
  551. package/dist/tools/list-symbols.js.map +0 -1
  552. package/dist/tools/memory.d.ts.map +0 -1
  553. package/dist/tools/memory.js.map +0 -1
  554. package/dist/tools/notebook.d.ts.map +0 -1
  555. package/dist/tools/notebook.js.map +0 -1
  556. package/dist/tools/policy.d.ts.map +0 -1
  557. package/dist/tools/policy.js.map +0 -1
  558. package/dist/tools/read-file.d.ts.map +0 -1
  559. package/dist/tools/read-file.js.map +0 -1
  560. package/dist/tools/read-image.d.ts.map +0 -1
  561. package/dist/tools/read-image.js.map +0 -1
  562. package/dist/tools/read-only.d.ts.map +0 -1
  563. package/dist/tools/read-only.js.map +0 -1
  564. package/dist/tools/redact.d.ts.map +0 -1
  565. package/dist/tools/redact.js.map +0 -1
  566. package/dist/tools/result-cache.d.ts.map +0 -1
  567. package/dist/tools/result-cache.js.map +0 -1
  568. package/dist/tools/run-command.d.ts.map +0 -1
  569. package/dist/tools/run-command.js.map +0 -1
  570. package/dist/tools/sandbox-loader.d.ts.map +0 -1
  571. package/dist/tools/sandbox-loader.js.map +0 -1
  572. package/dist/tools/search-files.d.ts.map +0 -1
  573. package/dist/tools/search-files.js.map +0 -1
  574. package/dist/tools/shared.d.ts.map +0 -1
  575. package/dist/tools/shared.js.map +0 -1
  576. package/dist/tools/sub-agent.d.ts.map +0 -1
  577. package/dist/tools/sub-agent.js.map +0 -1
  578. package/dist/tools/web-search.d.ts.map +0 -1
  579. package/dist/tools/web-search.js.map +0 -1
  580. package/dist/tools/write-file.d.ts.map +0 -1
  581. package/dist/tools/write-file.js.map +0 -1
  582. package/dist/types.d.ts.map +0 -1
  583. package/dist/types.js.map +0 -1
  584. package/dist/verify/detect.d.ts.map +0 -1
  585. package/dist/verify/detect.js.map +0 -1
  586. package/dist/verify/index.d.ts.map +0 -1
  587. package/dist/verify/index.js.map +0 -1
  588. package/dist/worktree/branch-ops.d.ts.map +0 -1
  589. package/dist/worktree/branch-ops.js.map +0 -1
  590. package/dist/worktree/index.d.ts.map +0 -1
  591. package/dist/worktree/index.js.map +0 -1
  592. package/dist/worktree/worktree.d.ts.map +0 -1
  593. package/dist/worktree/worktree.js.map +0 -1
@@ -11,4 +11,3 @@ export interface CredentialStore {
11
11
  set(provider: ProviderName, key: string): Promise<void>;
12
12
  delete(provider: ProviderName): Promise<void>;
13
13
  }
14
- //# sourceMappingURL=types.d.ts.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=types.js.map
@@ -5,4 +5,3 @@
5
5
  * extension's pending-changes review UI. No I/O, no platform deps.
6
6
  */
7
7
  export { computeUnifiedDiff, computeDiffSummary, type DiffOptions, type DiffResult, type DiffSummary, } from './unified-diff.js';
8
- //# sourceMappingURL=index.d.ts.map
@@ -5,4 +5,3 @@
5
5
  * extension's pending-changes review UI. No I/O, no platform deps.
6
6
  */
7
7
  export { computeUnifiedDiff, computeDiffSummary, } from './unified-diff.js';
8
- //# sourceMappingURL=index.js.map
@@ -69,4 +69,3 @@ export interface DiffSummary {
69
69
  summary: string;
70
70
  }
71
71
  export declare function computeDiffSummary(before: string, after: string, options?: DiffOptions): DiffSummary;
72
- //# sourceMappingURL=unified-diff.d.ts.map
@@ -381,4 +381,3 @@ function formatFullDelete(oldLines, oldLabel, newLabel, filePath) {
381
381
  void filePath;
382
382
  return header + hunk + body;
383
383
  }
384
- //# sourceMappingURL=unified-diff.js.map
@@ -28,7 +28,7 @@ export declare function diffForFiles(cwd: string, files: string[]): Promise<stri
28
28
  /** Deterministic message used when no model is available or it fails. */
29
29
  export declare function fallbackCommitMessage(files: string[]): string;
30
30
  export declare function commitMessagePrompt(diff: string, task?: string): string;
31
- /** Strip fences/quotes a model may wrap around the message. */
31
+ /** Strip an inline `<think>` block (MiniMax and other reasoning models) and the fences/quotes a model may wrap around the message. */
32
32
  export declare function cleanCommitMessage(text: string): string;
33
33
  /** Draft a commit message with `model` (typically the cheap model); never throws. */
34
34
  export declare function generateCommitMessage(diff: string, files: string[], model: ModelConfig | undefined, task?: string, modelFactory?: (cfg: ModelConfig) => LanguageModel): Promise<string>;
@@ -61,4 +61,3 @@ export declare function afterRun(cwd: string, state: {
61
61
  task?: string;
62
62
  modelFactory?: (cfg: ModelConfig) => LanguageModel;
63
63
  }): Promise<ForgeCommit | null>;
64
- //# sourceMappingURL=auto-commit.d.ts.map
@@ -6,6 +6,7 @@
6
6
  import { execFile } from 'node:child_process';
7
7
  import { promisify } from 'node:util';
8
8
  import { generateText } from 'ai';
9
+ import { stripThinkTags } from '../agent/think-tags.js';
9
10
  import { createLanguageModel } from '../providers.js';
10
11
  const execFileAsync = promisify(execFile);
11
12
  async function git(cwd, args) {
@@ -115,9 +116,9 @@ export function commitMessagePrompt(diff, task) {
115
116
  const clipped = diff.length > MAX_DIFF_CHARS ? `${diff.slice(0, MAX_DIFF_CHARS)}\n[diff truncated]` : diff;
116
117
  return `Write a git commit message for this diff in conventional-commit style (type(scope): subject, imperative mood, under 72 characters). Add a short body only if the change needs explaining. Reply with the message only, no quotes or code fences.${task ? `\n\nThe change was made for this request: ${task}` : ''}\n\n${clipped}`;
117
118
  }
118
- /** Strip fences/quotes a model may wrap around the message. */
119
+ /** Strip an inline `<think>` block (MiniMax and other reasoning models) and the fences/quotes a model may wrap around the message. */
119
120
  export function cleanCommitMessage(text) {
120
- return text
121
+ return stripThinkTags(text)
121
122
  .replace(/^```[a-z]*\n?|\n?```$/gi, '')
122
123
  .trim()
123
124
  .replace(/^["'`]+|["'`]+$/g, '')
@@ -182,4 +183,3 @@ export async function afterRun(cwd, state, options) {
182
183
  const message = await generateCommitMessage(diff, files, options.model, options.task, options.modelFactory);
183
184
  return commitFiles(cwd, files, message, options);
184
185
  }
185
- //# sourceMappingURL=auto-commit.js.map
@@ -1,3 +1,2 @@
1
1
  export { FORGE_TRAILER, afterRun, beforeRun, changedFiles, cleanCommitMessage, commitDirty, commitFiles, commitMessagePrompt, diffForFiles, fallbackCommitMessage, generateCommitMessage, isGitRepo, undoLastForgeCommit, } from './auto-commit.js';
2
2
  export type { ForgeCommit, GitCommitOptions, UndoResult } from './auto-commit.js';
3
- //# sourceMappingURL=index.d.ts.map
package/dist/git/index.js CHANGED
@@ -1,2 +1 @@
1
1
  export { FORGE_TRAILER, afterRun, beforeRun, changedFiles, cleanCommitMessage, commitDirty, commitFiles, commitMessagePrompt, diffForFiles, fallbackCommitMessage, generateCommitMessage, isGitRepo, undoLastForgeCommit, } from './auto-commit.js';
2
- //# sourceMappingURL=index.js.map
@@ -81,4 +81,3 @@ export declare function createGitHubCreateTool(cfg: GitHubConfig): ToolDefinitio
81
81
  }>;
82
82
  export declare function createGitHubTools(cfg: GitHubConfig): ToolDefinition[];
83
83
  export {};
84
- //# sourceMappingURL=github-tools.d.ts.map
@@ -173,4 +173,3 @@ export function createGitHubCreateTool(cfg) {
173
173
  export function createGitHubTools(cfg) {
174
174
  return [createGitHubReadTool(cfg), createGitHubCreateTool(cfg)];
175
175
  }
176
- //# sourceMappingURL=github-tools.js.map
@@ -14,4 +14,3 @@ export interface AgentHookRunnerOptions {
14
14
  maxIterations?: number;
15
15
  }
16
16
  export declare function createAgentHookRunner(options: AgentHookRunnerOptions): AgentHookRunner;
17
- //# sourceMappingURL=agent-runner.d.ts.map
@@ -42,4 +42,3 @@ export function createAgentHookRunner(options) {
42
42
  }
43
43
  };
44
44
  }
45
- //# sourceMappingURL=agent-runner.js.map
@@ -93,4 +93,3 @@ export declare class HooksBus {
93
93
  /** Filter matcher entries down to those that apply to this event. */
94
94
  private filterByMatcher;
95
95
  }
96
- //# sourceMappingURL=bus.d.ts.map
package/dist/hooks/bus.js CHANGED
@@ -157,4 +157,3 @@ function expandPrompt(prompt, event) {
157
157
  };
158
158
  return prompt.replace(/\{\{(\w+)\}\}/g, (_m, key) => values[key] ?? '');
159
159
  }
160
- //# sourceMappingURL=bus.js.map
@@ -111,4 +111,3 @@ export declare function validateToolSandboxConfig(raw: unknown): string[];
111
111
  * matches everything.
112
112
  */
113
113
  export declare function matcherMatches(matcher: string, toolName: string): boolean;
114
- //# sourceMappingURL=config.d.ts.map
@@ -187,4 +187,3 @@ export function matcherMatches(matcher, toolName) {
187
187
  }
188
188
  return false;
189
189
  }
190
- //# sourceMappingURL=config.js.map
@@ -87,4 +87,3 @@ export declare function eventToolName(event: HookEvent): string | undefined;
87
87
  * glob" for this one event. Returns undefined for every other event.
88
88
  */
89
89
  export declare function eventFilePath(event: HookEvent): string | undefined;
90
- //# sourceMappingURL=events.d.ts.map
@@ -42,4 +42,3 @@ export function eventFilePath(event) {
42
42
  return event.path;
43
43
  return undefined;
44
44
  }
45
- //# sourceMappingURL=events.js.map
@@ -18,4 +18,3 @@ export { AGENT_HOOK_TOOLS, createAgentHookRunner, type AgentHookRunnerOptions }
18
18
  export { shouldIgnoreWatchPath } from './watch-ignore.js';
19
19
  export { FileChangeCoalescer, type FileChangeType } from './watch-coalescer.js';
20
20
  export { watchFilesystem } from './watcher.js';
21
- //# sourceMappingURL=index.d.ts.map
@@ -13,4 +13,3 @@ export { AGENT_HOOK_TOOLS, createAgentHookRunner } from './agent-runner.js';
13
13
  export { shouldIgnoreWatchPath } from './watch-ignore.js';
14
14
  export { FileChangeCoalescer } from './watch-coalescer.js';
15
15
  export { watchFilesystem } from './watcher.js';
16
- //# sourceMappingURL=index.js.map
@@ -50,4 +50,3 @@ export declare function readSettings(filePath: string): Promise<{
50
50
  * tolerated; the loader returns an empty config instead of throwing.
51
51
  */
52
52
  export declare function loadHooksConfig(cwd: string): Promise<LoadHooksResult>;
53
- //# sourceMappingURL=loader.d.ts.map
@@ -138,4 +138,3 @@ export async function loadHooksConfig(cwd) {
138
138
  sources,
139
139
  };
140
140
  }
141
- //# sourceMappingURL=loader.js.map
@@ -40,4 +40,3 @@ export declare function eventToEnv(event: HookEvent): Record<string, string>;
40
40
  * log, or swallow.
41
41
  */
42
42
  export declare function runHook(event: HookEvent, config: ShellHookConfig): Promise<HookRunResult>;
43
- //# sourceMappingURL=runner.d.ts.map
@@ -182,4 +182,3 @@ export function runHook(event, config) {
182
182
  });
183
183
  });
184
184
  }
185
- //# sourceMappingURL=runner.js.map
@@ -20,4 +20,3 @@ export declare class FileChangeCoalescer {
20
20
  /** Cancel every pending timer without dispatching. Call on watcher shutdown. */
21
21
  dispose(): void;
22
22
  }
23
- //# sourceMappingURL=watch-coalescer.d.ts.map
@@ -24,4 +24,3 @@ export class FileChangeCoalescer {
24
24
  this.timers.clear();
25
25
  }
26
26
  }
27
- //# sourceMappingURL=watch-coalescer.js.map
@@ -6,4 +6,3 @@
6
6
  * in v1: same as checkpoint capture's own ignore list.
7
7
  */
8
8
  export declare function shouldIgnoreWatchPath(relPath: string): boolean;
9
- //# sourceMappingURL=watch-ignore.d.ts.map
@@ -9,4 +9,3 @@ export function shouldIgnoreWatchPath(relPath) {
9
9
  const segments = relPath.split(/[\\/]/);
10
10
  return segments.some((seg) => seg === 'node_modules' || seg.startsWith('.'));
11
11
  }
12
- //# sourceMappingURL=watch-ignore.js.map
@@ -35,4 +35,3 @@ import type { FileChangeType } from './watch-coalescer.js';
35
35
  export declare function watchFilesystem(cwd: string, onChange: (relPath: string, changeType: FileChangeType) => void): {
36
36
  close(): Promise<void>;
37
37
  };
38
- //# sourceMappingURL=watcher.d.ts.map
@@ -61,4 +61,3 @@ export function watchFilesystem(cwd, onChange) {
61
61
  },
62
62
  };
63
63
  }
64
- //# sourceMappingURL=watcher.js.map
package/dist/index.d.ts CHANGED
@@ -1,4 +1,7 @@
1
1
  export { Agent, applySandbox } from './agent/agent.js';
2
+ export { LoopGuard } from './agent/loop-guard.js';
3
+ export { enhancePrompt } from './agent/enhance-prompt.js';
4
+ export { stripThinkTags } from './agent/think-tags.js';
2
5
  export { createGitHubCreateTool, createGitHubReadTool, createGitHubTools, githubFromEnv, parseRemote, type GitHubConfig, type PullRequestReport, type RepoRef, } from './github/github-tools.js';
3
6
  export { createWebSearchTool, searchWeb, WEB_SEARCH_PROVIDERS, webSearchFromEnv, webSearchProblem, type WebSearchConfig, type WebSearchProvider, type WebSearchResult, } from './tools/web-search.js';
4
7
  export { attachmentKind, attachmentBytes, attachmentParts, attachmentProblem, describeAttachment, detectMediaType, loadAttachment, makeAttachment, mediaPartTokens, MAX_ATTACHMENT_BYTES, MAX_IMAGE_ATTACHMENT_BYTES, type Attachment, type AttachmentKind, } from './attachments.js';
@@ -36,8 +39,8 @@ export { defaultModelFor, detectProvider, envVarForProvider, fastDefaultFor, has
36
39
  export { loadMcpConfig, parseMcpConfig, connectAll, connectOne, closeAll, mcpResultToValue, jsonSchemaToZod, } from './mcp/index.js';
37
40
  export type { McpConfigFile, McpServerSpec, ConnectedMcpServer, } from './mcp/index.js';
38
41
  export { createLanguageModel, formatModelId, pickAvailableProvider, resolveModelFromEnv, resolveModelFromEnvAsync } from './providers.js';
39
- export { defaultSessionDir, generateSessionId, saveSession, loadSession, deleteSession, listSessions, findLatestSession, formatSessionMarkdown, formatSessionJson, appendedSince, summarizeMessage, watchSession, searchSessions, sessionText, } from './sessions/index.js';
40
- export type { Session, ListEntry, FormatOptions, SessionUpdate, WatchSessionOptions, SessionMatch, SearchSessionsOptions } from './sessions/index.js';
42
+ export { defaultSessionDir, generateSessionId, saveSession, loadSession, deleteSession, listSessions, findLatestSession, formatSessionMarkdown, formatSessionJson, appendedSince, summarizeMessage, watchSession, searchSessions, sessionText, pruneSessions, pruneByRetention, } from './sessions/index.js';
43
+ export type { Session, ListEntry, FormatOptions, SessionUpdate, WatchSessionOptions, SessionMatch, SearchSessionsOptions, SessionPruneOptions, SessionPruneResult } from './sessions/index.js';
41
44
  export { commandDirs, expandCustomCommand, formatCustomCommands, loadCustomCommands, parseCommandFile, type CustomCommand, } from './commands/custom-commands.js';
42
45
  export { BUILTIN_TOOLS, editFileTool, fetchUrlTool, findSymbolTool, listFilesTool, memoryReadTool, memoryForgetTool, memoryWriteTool, readFileTool, runCommandTool, searchFilesTool, subAgentTool, writeFileTool, checkPolicyViolation, globToRegex, mergeToolSandbox, normalizePathPattern, pathMatchesAny, redact, countRedactions, buildRules, ToolResultCache, buildCacheKey, cachedExecute, } from './tools/index.js';
43
46
  export type { AgentConfig, AgentEvent, AgentRunOptions, AgentRunReason, AgentRunResult, AnyLanguageModel, ApprovalDecision, CommandRunner, ModelRouter, VerifyConfig, ApprovalRequest, LanguageModelFactory, ModelConfig, PricePerMillionTokens, ProviderName, RedactOptions, ToolContext, ToolDefinition, ToolPolicy, ToolSandbox, } from './types.js';
@@ -99,4 +102,3 @@ export { autoRunCommands, autoRunFingerprint, detectProjectChecks, formatProject
99
102
  export { isAlwaysAllowable, isListedCommand, needsScriptFingerprint, normalizeCommand } from './tools/command-allow.js';
100
103
  export type { CheckKind, DetectedCheck, DetectedChecks } from './verify/index.js';
101
104
  export { IgnoreRules, IGNORE_FILE_NAMES, findGitRoot } from './tools/ignore-rules.js';
102
- //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,4 +1,7 @@
1
1
  export { Agent, applySandbox } from './agent/agent.js';
2
+ export { LoopGuard } from './agent/loop-guard.js';
3
+ export { enhancePrompt } from './agent/enhance-prompt.js';
4
+ export { stripThinkTags } from './agent/think-tags.js';
2
5
  export { createGitHubCreateTool, createGitHubReadTool, createGitHubTools, githubFromEnv, parseRemote, } from './github/github-tools.js';
3
6
  export { createWebSearchTool, searchWeb, WEB_SEARCH_PROVIDERS, webSearchFromEnv, webSearchProblem, } from './tools/web-search.js';
4
7
  export { attachmentKind, attachmentBytes, attachmentParts, attachmentProblem, describeAttachment, detectMediaType, loadAttachment, makeAttachment, mediaPartTokens, MAX_ATTACHMENT_BYTES, MAX_IMAGE_ATTACHMENT_BYTES, } from './attachments.js';
@@ -21,7 +24,7 @@ export { buildLlmSummarizer, compactMessages, estimateMessageTokens, estimateTok
21
24
  export { defaultModelFor, detectProvider, envVarForProvider, fastDefaultFor, hasProviderKey, readModelConfigFromEnv, resolveApiKey, SUPPORTED_PROVIDERS, } from './config.js';
22
25
  export { loadMcpConfig, parseMcpConfig, connectAll, connectOne, closeAll, mcpResultToValue, jsonSchemaToZod, } from './mcp/index.js';
23
26
  export { createLanguageModel, formatModelId, pickAvailableProvider, resolveModelFromEnv, resolveModelFromEnvAsync } from './providers.js';
24
- export { defaultSessionDir, generateSessionId, saveSession, loadSession, deleteSession, listSessions, findLatestSession, formatSessionMarkdown, formatSessionJson, appendedSince, summarizeMessage, watchSession, searchSessions, sessionText, } from './sessions/index.js';
27
+ export { defaultSessionDir, generateSessionId, saveSession, loadSession, deleteSession, listSessions, findLatestSession, formatSessionMarkdown, formatSessionJson, appendedSince, summarizeMessage, watchSession, searchSessions, sessionText, pruneSessions, pruneByRetention, } from './sessions/index.js';
25
28
  export { commandDirs, expandCustomCommand, formatCustomCommands, loadCustomCommands, parseCommandFile, } from './commands/custom-commands.js';
26
29
  export { BUILTIN_TOOLS, editFileTool, fetchUrlTool, findSymbolTool, listFilesTool, memoryReadTool, memoryForgetTool, memoryWriteTool, readFileTool, runCommandTool, searchFilesTool, subAgentTool, writeFileTool, checkPolicyViolation, globToRegex, mergeToolSandbox, normalizePathPattern, pathMatchesAny, redact, countRedactions, buildRules, ToolResultCache, buildCacheKey, cachedExecute, } from './tools/index.js';
27
30
  // Skills system
@@ -87,4 +90,3 @@ export { autoRunCommands, autoRunFingerprint, detectProjectChecks, formatProject
87
90
  export { isAlwaysAllowable, isListedCommand, needsScriptFingerprint, normalizeCommand } from './tools/command-allow.js';
88
91
  // Git-style ignore rules (.gitignore, .forgeignore) used by the file tools and indexes.
89
92
  export { IgnoreRules, IGNORE_FILE_NAMES, findGitRoot } from './tools/ignore-rules.js';
90
- //# sourceMappingURL=index.js.map
@@ -11,4 +11,3 @@ export declare function lazyLanguageModel(meta: {
11
11
  provider: string;
12
12
  modelId: string;
13
13
  }, load: () => Promise<LanguageModelV4>): LanguageModelV4;
14
- //# sourceMappingURL=lazy-model.d.ts.map
@@ -13,4 +13,3 @@ export function lazyLanguageModel(meta, load) {
13
13
  doStream: (options) => get().then((m) => m.doStream(options)),
14
14
  };
15
15
  }
16
- //# sourceMappingURL=lazy-model.js.map
@@ -23,4 +23,3 @@ export declare function commandFor(relPath: string, commands: Record<string, str
23
23
  export declare function lintFile(relPath: string, config: AutoLintConfig, ctx: ToolContext): Promise<LintReport>;
24
24
  /** The note appended to the tool result when lint found problems. */
25
25
  export declare function lintMessage(report: LintReport): string;
26
- //# sourceMappingURL=auto-lint.d.ts.map
@@ -58,4 +58,3 @@ export async function lintFile(relPath, config, ctx) {
58
58
  export function lintMessage(report) {
59
59
  return `[auto-lint] ${report.problems.length} problem${report.problems.length === 1 ? '' : 's'} in ${report.path}. Fix them:\n${report.problems.join('\n')}`;
60
60
  }
61
- //# sourceMappingURL=auto-lint.js.map
@@ -1,3 +1,2 @@
1
1
  export { commandFor, lintFile, lintMessage, shellQuote } from './auto-lint.js';
2
2
  export type { AutoLintConfig, LintReport } from './auto-lint.js';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1,2 +1 @@
1
1
  export { commandFor, lintFile, lintMessage, shellQuote } from './auto-lint.js';
2
- //# sourceMappingURL=index.js.map
@@ -37,4 +37,3 @@ export declare class LspClient {
37
37
  private onData;
38
38
  private onMessage;
39
39
  }
40
- //# sourceMappingURL=client.d.ts.map
@@ -206,4 +206,3 @@ function toDiagnostic(d) {
206
206
  ...(d.code !== undefined ? { code: d.code } : {}),
207
207
  };
208
208
  }
209
- //# sourceMappingURL=client.js.map
@@ -19,4 +19,3 @@ export interface LspReport {
19
19
  export declare function collectErrors(files: string[], cwd: string, config?: LspConfig): Promise<LspReport>;
20
20
  /** Plain-text rendering fed to the model, in `file:line:col: message` form. */
21
21
  export declare function formatErrors(errors: FileDiagnostics[]): string;
22
- //# sourceMappingURL=diagnostics.d.ts.map
@@ -79,4 +79,3 @@ export function formatErrors(errors) {
79
79
  })
80
80
  .join('\n');
81
81
  }
82
- //# sourceMappingURL=diagnostics.js.map
@@ -2,4 +2,3 @@ export { LspClient } from './client.js';
2
2
  export type { LspDiagnostic, LspServerSpec, LspSeverity } from './client.js';
3
3
  export { collectErrors, formatErrors } from './diagnostics.js';
4
4
  export type { FileDiagnostics, LspConfig, LspReport } from './diagnostics.js';
5
- //# sourceMappingURL=index.d.ts.map
package/dist/lsp/index.js CHANGED
@@ -1,3 +1,2 @@
1
1
  export { LspClient } from './client.js';
2
2
  export { collectErrors, formatErrors } from './diagnostics.js';
3
- //# sourceMappingURL=index.js.map
@@ -20,4 +20,3 @@ export declare function loadMcpCatalog(options?: {
20
20
  servers: MarketplaceEntry[];
21
21
  warning?: string;
22
22
  }>;
23
- //# sourceMappingURL=catalog.d.ts.map
@@ -109,4 +109,3 @@ export async function loadMcpCatalog(options = {}) {
109
109
  return { servers: [...byName.values()], warning: `Could not load catalog ${url}: ${err.message}` };
110
110
  }
111
111
  }
112
- //# sourceMappingURL=catalog.js.map
@@ -10,4 +10,3 @@ export type { ConnectedMcpServer } from './mcp-client.js';
10
10
  export { defaultCacheRoot, defaultUserMcpPath, installMcpServer, installDirNameFor, listInstalledServers, normalizeGithubSource, probeRepoForServer, readUserMcpRegistry, uninstallMcpServer, writeUserMcpRegistry, } from './marketplace.js';
11
11
  export type { InstalledMcpServer, InstalledServerMetadata, MarketplaceCatalog, MarketplaceEntry, } from './marketplace-types.js';
12
12
  export { MARKETPLACE_CATALOG_VERSION } from './marketplace-types.js';
13
- //# sourceMappingURL=index.d.ts.map
package/dist/mcp/index.js CHANGED
@@ -7,4 +7,3 @@ export { assertValidServerName, registerMcpServer, setMcpServerDisabled } from '
7
7
  // MCP marketplace
8
8
  export { defaultCacheRoot, defaultUserMcpPath, installMcpServer, installDirNameFor, listInstalledServers, normalizeGithubSource, probeRepoForServer, readUserMcpRegistry, uninstallMcpServer, writeUserMcpRegistry, } from './marketplace.js';
9
9
  export { MARKETPLACE_CATALOG_VERSION } from './marketplace-types.js';
10
- //# sourceMappingURL=index.js.map
@@ -10,4 +10,3 @@ import { z } from 'zod';
10
10
  * generation hint rather than a security boundary.
11
11
  */
12
12
  export declare function jsonSchemaToZod(schema: unknown): z.ZodTypeAny;
13
- //# sourceMappingURL=json-schema-to-zod.d.ts.map
@@ -89,4 +89,3 @@ function combineOneOf(branches) {
89
89
  function isNullSchema(node) {
90
90
  return typeof node === 'object' && node !== null && node.type === 'null';
91
91
  }
92
- //# sourceMappingURL=json-schema-to-zod.js.map
@@ -48,4 +48,3 @@ export declare class McpManager {
48
48
  private readScope;
49
49
  private load;
50
50
  }
51
- //# sourceMappingURL=manager.d.ts.map
@@ -121,4 +121,3 @@ export class McpManager {
121
121
  this.statuses = [...statuses, ...results.map((r) => r.status)];
122
122
  }
123
123
  }
124
- //# sourceMappingURL=manager.js.map
@@ -80,4 +80,3 @@ export interface InstalledServerMetadata {
80
80
  installedAt: string;
81
81
  displayName?: string;
82
82
  }
83
- //# sourceMappingURL=marketplace-types.d.ts.map
@@ -10,4 +10,3 @@
10
10
  */
11
11
  /** Version of the catalog JSON format. Bumped on backwards-incompatible changes. */
12
12
  export const MARKETPLACE_CATALOG_VERSION = 1;
13
- //# sourceMappingURL=marketplace-types.js.map
@@ -95,4 +95,3 @@ export declare function listInstalledServers(params?: {
95
95
  cacheRoot?: string;
96
96
  userMcpPath?: string;
97
97
  }): Promise<InstalledMcpServer[]>;
98
- //# sourceMappingURL=marketplace.d.ts.map
@@ -319,4 +319,3 @@ export async function listInstalledServers(params) {
319
319
  }
320
320
  return out;
321
321
  }
322
- //# sourceMappingURL=marketplace.js.map
@@ -24,4 +24,3 @@ export declare function closeAll(servers: ConnectedMcpServer[]): Promise<void>;
24
24
  * single string and keep the structured content for any embedded resources.
25
25
  */
26
26
  export declare function mcpResultToValue(result: unknown): unknown;
27
- //# sourceMappingURL=mcp-client.d.ts.map
@@ -185,4 +185,3 @@ export function mcpResultToValue(result) {
185
185
  }
186
186
  return { text, content: r.content, isError: r.isError };
187
187
  }
188
- //# sourceMappingURL=mcp-client.js.map
@@ -56,4 +56,3 @@ export declare function loadMcpConfig(configPath: string): Promise<McpConfigFile
56
56
  * that already have the file contents (e.g. embedded configs).
57
57
  */
58
58
  export declare function parseMcpConfig(raw: string, sourcePath?: string): McpConfigFile;
59
- //# sourceMappingURL=mcp-config.d.ts.map
@@ -60,4 +60,3 @@ export function parseMcpConfig(raw, sourcePath = '<inline>') {
60
60
  }
61
61
  return result.data;
62
62
  }
63
- //# sourceMappingURL=mcp-config.js.map
@@ -12,4 +12,3 @@ export declare function setMcpServerDisabled(params: {
12
12
  disabled: boolean;
13
13
  userMcpPath?: string;
14
14
  }): Promise<boolean>;
15
- //# sourceMappingURL=registry.d.ts.map
@@ -33,4 +33,3 @@ export async function setMcpServerDisabled(params) {
33
33
  await writeUserMcpRegistry(file, registry);
34
34
  return true;
35
35
  }
36
- //# sourceMappingURL=registry.js.map
@@ -171,4 +171,3 @@ export declare function capMemory(content: string, maxBytes: number, keepHeading
171
171
  */
172
172
  export declare function trimToBytes(content: string, maxBytes: number): string;
173
173
  export { PROJECT_MEMORY_DIR as _PROJECT_MEMORY_DIR, PROJECT_MEMORY_FILE as _PROJECT_MEMORY_FILE };
174
- //# sourceMappingURL=memory-store.d.ts.map
@@ -472,4 +472,3 @@ export function trimToBytes(content, maxBytes) {
472
472
  }
473
473
  // Re-export for tests / downstream consumers.
474
474
  export { PROJECT_MEMORY_DIR as _PROJECT_MEMORY_DIR, PROJECT_MEMORY_FILE as _PROJECT_MEMORY_FILE };
475
- //# sourceMappingURL=memory-store.js.map
@@ -18,4 +18,3 @@ export interface ScoredSection {
18
18
  * the order degrades to v1's "later sections win").
19
19
  */
20
20
  export declare function scoreSections(sections: MemorySection[], task: string): ScoredSection[];
21
- //# sourceMappingURL=rank.d.ts.map
@@ -62,4 +62,3 @@ export function scoreSections(sections, task) {
62
62
  b.index - a.index);
63
63
  return scored.map(({ section, score }) => ({ section, score }));
64
64
  }
65
- //# sourceMappingURL=rank.js.map
@@ -16,4 +16,3 @@ export declare function staleKey(s: Pick<MemorySection, 'source' | 'heading'>):
16
16
  * the filesystem, so a memory file cannot be used to probe other paths.
17
17
  */
18
18
  export declare function checkStale(sections: MemorySection[], root: string, opts?: StaleOptions): Promise<Map<string, string[]>>;
19
- //# sourceMappingURL=stale.d.ts.map
@@ -43,4 +43,3 @@ export async function checkStale(sections, root, opts = {}) {
43
43
  }
44
44
  return out;
45
45
  }
46
- //# sourceMappingURL=stale.js.map
@@ -13,4 +13,3 @@ export declare function resolveModelAlias(name: string, aliases: ModelAliases |
13
13
  };
14
14
  /** Human-readable alias list for `forge config`; '' when there are none. */
15
15
  export declare function formatAliasTable(aliases: ModelAliases | undefined): string;
16
- //# sourceMappingURL=model-alias.d.ts.map
@@ -47,4 +47,3 @@ export function formatAliasTable(aliases) {
47
47
  const rows = names.map((n) => ` ${n.padEnd(width)} → ${aliases[n]}`);
48
48
  return ['Model aliases (~/.forge/config.json):', ...rows].join('\n');
49
49
  }
50
- //# sourceMappingURL=model-alias.js.map
@@ -11,4 +11,3 @@ export interface ModelCatalogEntry {
11
11
  * short and prefer aliases; anything else is typed as a custom id.
12
12
  */
13
13
  export declare const MODEL_CATALOG: Record<ProviderName, ModelCatalogEntry[]>;
14
- //# sourceMappingURL=model-catalog.d.ts.map
@@ -55,4 +55,3 @@ export const MODEL_CATALOG = {
55
55
  lmstudio: [{ id: 'local-model', label: 'Whatever model is loaded in LM Studio' }],
56
56
  'openai-compatible': [{ id: 'default', label: 'Model id your endpoint expects' }],
57
57
  };
58
- //# sourceMappingURL=model-catalog.js.map
@@ -13,4 +13,3 @@ export declare const LISTABLE_PROVIDERS: readonly ProviderName[];
13
13
  export declare function parseModels(provider: ProviderName, body: unknown): ModelCatalogEntry[];
14
14
  /** Asks the provider which models this key can use. Throws a readable message when it cannot. */
15
15
  export declare function fetchProviderModels(provider: ProviderName, opts?: FetchModelsOptions): Promise<ModelCatalogEntry[]>;
16
- //# sourceMappingURL=model-list.d.ts.map
@@ -85,4 +85,3 @@ export async function fetchProviderModels(provider, opts = {}) {
85
85
  throw new Error('The provider returned no models.');
86
86
  return models;
87
87
  }
88
- //# sourceMappingURL=model-list.js.map
@@ -4,4 +4,3 @@ import type { SpecialistId } from './types.js';
4
4
  export declare const BOARD_TOOL_NAMES: readonly ["board_post", "board_read"];
5
5
  /** Board tools for one specialist; `from` and the read cursor live in the closure. */
6
6
  export declare function createBoardTools(board: MessageBoard, selfId: SpecialistId): ToolDefinition[];
7
- //# sourceMappingURL=board-tools.d.ts.map
@@ -46,4 +46,3 @@ export function createBoardTools(board, selfId) {
46
46
  };
47
47
  return [post, read];
48
48
  }
49
- //# sourceMappingURL=board-tools.js.map
@@ -38,4 +38,3 @@ export declare class MessageBoard {
38
38
  /** How many early messages the ring buffer has dropped. */
39
39
  get trimmed(): number;
40
40
  }
41
- //# sourceMappingURL=board.d.ts.map
@@ -39,4 +39,3 @@ export class MessageBoard {
39
39
  return this.dropped;
40
40
  }
41
41
  }
42
- //# sourceMappingURL=board.js.map
@@ -12,4 +12,3 @@ export { MessageBoard, DEFAULT_BOARD_CAP, type BoardMessage } from './board.js';
12
12
  export { createBoardTools, BOARD_TOOL_NAMES } from './board-tools.js';
13
13
  export { registerSpecialist, unregisterSpecialist, listSpecialists, getRegisteredSpecialist, loadSpecialistsFromConfig, saveSpecialistsToConfig, validateSpecialistConfig, defaultConfigPath, _resetSpecialistsForTests, _customSpecialistCount, type CustomSpecialistConfig, type SpecialistsConfigFile, type LoadSpecialistsResult, } from './specialists-registry.js';
14
14
  export type { BuiltInSpecialistId, OrchestratorPlan, OrchestratorRunResult, OrchestratorStep, OrchestratorStepResult, SpecialistConfig, SpecialistId, } from './types.js';
15
- //# sourceMappingURL=index.d.ts.map
@@ -11,4 +11,3 @@ export { runOrchestrator, runRouter, groupStepsByParallel, resolveEffectiveModel
11
11
  export { MessageBoard, DEFAULT_BOARD_CAP } from './board.js';
12
12
  export { createBoardTools, BOARD_TOOL_NAMES } from './board-tools.js';
13
13
  export { registerSpecialist, unregisterSpecialist, listSpecialists, getRegisteredSpecialist, loadSpecialistsFromConfig, saveSpecialistsToConfig, validateSpecialistConfig, defaultConfigPath, _resetSpecialistsForTests, _customSpecialistCount, } from './specialists-registry.js';
14
- //# sourceMappingURL=index.js.map
@@ -233,4 +233,3 @@ export declare function runRouter(args: {
233
233
  * without going through `Agent.run()`.
234
234
  */
235
235
  export declare function resolveEffectiveModel(spec: SpecialistConfig, baseModel: ModelConfig): ModelConfig;
236
- //# sourceMappingURL=orchestrator.d.ts.map
@@ -494,4 +494,3 @@ async function runSpecialist(args) {
494
494
  const agent = new Agent(config);
495
495
  return agent.run({ task: args.task });
496
496
  }
497
- //# sourceMappingURL=orchestrator.js.map
@@ -24,4 +24,3 @@ export declare const ROUTER_SYSTEM_PROMPT = "You are the IKarmic Forge ORCHESTRA
24
24
  * user's task to the 'code' specialist - better than crashing.
25
25
  */
26
26
  export declare function parseRouterOutput(raw: string, fallbackTask: string): OrchestratorPlan;
27
- //# sourceMappingURL=router.d.ts.map
@@ -120,4 +120,3 @@ function fallbackPlan(task, reason = 'unparseable') {
120
120
  steps: [{ specialist: 'code', task }],
121
121
  };
122
122
  }
123
- //# sourceMappingURL=router.js.map