@entelligentsia/forgecli 0.15.0 → 0.19.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 (1069) hide show
  1. package/CHANGELOG.md +66 -0
  2. package/dist/CHANGELOG-pi.md +55 -0
  3. package/dist/bin/argv.d.ts +2 -0
  4. package/dist/bin/argv.js +3 -1
  5. package/dist/bin/argv.js.map +1 -1
  6. package/dist/bin/config.d.ts +5 -0
  7. package/dist/bin/config.js +25 -4
  8. package/dist/bin/config.js.map +1 -1
  9. package/dist/bin/forge.js +12 -56
  10. package/dist/bin/forge.js.map +1 -1
  11. package/dist/bin/shared-parser.d.ts +23 -0
  12. package/dist/bin/shared-parser.js +12 -0
  13. package/dist/bin/shared-parser.js.map +1 -0
  14. package/dist/bin/update-cli.js +5 -0
  15. package/dist/bin/update-cli.js.map +1 -1
  16. package/dist/extensions/forgecli/approve.d.ts +4 -6
  17. package/dist/extensions/forgecli/approve.js +8 -73
  18. package/dist/extensions/forgecli/approve.js.map +1 -1
  19. package/dist/extensions/forgecli/audience-gate.d.ts +1 -1
  20. package/dist/extensions/forgecli/calibrate.d.ts +4 -1
  21. package/dist/extensions/forgecli/calibrate.js +4 -12
  22. package/dist/extensions/forgecli/calibrate.js.map +1 -1
  23. package/dist/extensions/forgecli/collate.d.ts +4 -6
  24. package/dist/extensions/forgecli/collate.js +8 -73
  25. package/dist/extensions/forgecli/collate.js.map +1 -1
  26. package/dist/extensions/forgecli/commit.d.ts +4 -6
  27. package/dist/extensions/forgecli/commit.js +8 -73
  28. package/dist/extensions/forgecli/commit.js.map +1 -1
  29. package/dist/extensions/forgecli/config-tui/handler.js +1 -0
  30. package/dist/extensions/forgecli/config-tui/handler.js.map +1 -1
  31. package/dist/extensions/forgecli/config-tui/screens/tier-menu.js +8 -1
  32. package/dist/extensions/forgecli/config-tui/screens/tier-menu.js.map +1 -1
  33. package/dist/extensions/forgecli/config-tui/state/init.js +1 -0
  34. package/dist/extensions/forgecli/config-tui/state/init.js.map +1 -1
  35. package/dist/extensions/forgecli/config-tui/state/model.d.ts +4 -0
  36. package/dist/extensions/forgecli/enhance.d.ts +4 -6
  37. package/dist/extensions/forgecli/enhance.js +8 -73
  38. package/dist/extensions/forgecli/enhance.js.map +1 -1
  39. package/dist/extensions/forgecli/fix-bug.d.ts +3 -0
  40. package/dist/extensions/forgecli/fix-bug.js +58 -46
  41. package/dist/extensions/forgecli/fix-bug.js.map +1 -1
  42. package/dist/extensions/forgecli/forge-artifact-tool.d.ts +2 -0
  43. package/dist/extensions/forgecli/forge-artifact-tool.js +185 -0
  44. package/dist/extensions/forgecli/forge-artifact-tool.js.map +1 -0
  45. package/dist/extensions/forgecli/forge-init/phase-descriptors.d.ts +72 -0
  46. package/dist/extensions/forgecli/forge-init/phase-descriptors.js +350 -0
  47. package/dist/extensions/forgecli/forge-init/phase-descriptors.js.map +1 -0
  48. package/dist/extensions/forgecli/forge-init/phase4-register.d.ts +20 -0
  49. package/dist/extensions/forgecli/forge-init/phase4-register.js +353 -0
  50. package/dist/extensions/forgecli/forge-init/phase4-register.js.map +1 -0
  51. package/dist/extensions/forgecli/forge-init/prompts.d.ts +10 -0
  52. package/dist/extensions/forgecli/forge-init/prompts.js +91 -0
  53. package/dist/extensions/forgecli/forge-init/prompts.js.map +1 -0
  54. package/dist/extensions/forgecli/forge-init/verifiers.d.ts +20 -0
  55. package/dist/extensions/forgecli/forge-init/verifiers.js +81 -0
  56. package/dist/extensions/forgecli/forge-init/verifiers.js.map +1 -0
  57. package/dist/extensions/forgecli/forge-init.js +106 -748
  58. package/dist/extensions/forgecli/forge-init.js.map +1 -1
  59. package/dist/extensions/forgecli/forge-root.d.ts +0 -1
  60. package/dist/extensions/forgecli/forge-root.js +1 -11
  61. package/dist/extensions/forgecli/forge-root.js.map +1 -1
  62. package/dist/extensions/forgecli/forge-subagent.d.ts +11 -1
  63. package/dist/extensions/forgecli/forge-subagent.js +6 -1
  64. package/dist/extensions/forgecli/forge-subagent.js.map +1 -1
  65. package/dist/extensions/forgecli/forge-tools.d.ts +27 -7
  66. package/dist/extensions/forgecli/forge-tools.js +109 -70
  67. package/dist/extensions/forgecli/forge-tools.js.map +1 -1
  68. package/dist/extensions/forgecli/forge-update-command.js +5 -0
  69. package/dist/extensions/forgecli/forge-update-command.js.map +1 -1
  70. package/dist/extensions/forgecli/friction-emit.d.ts +4 -2
  71. package/dist/extensions/forgecli/friction-emit.js +13 -12
  72. package/dist/extensions/forgecli/friction-emit.js.map +1 -1
  73. package/dist/extensions/forgecli/health-check.js +1 -1
  74. package/dist/extensions/forgecli/health-check.js.map +1 -1
  75. package/dist/extensions/forgecli/hook-dispatcher.d.ts +1 -0
  76. package/dist/extensions/forgecli/hook-dispatcher.js +5 -0
  77. package/dist/extensions/forgecli/hook-dispatcher.js.map +1 -1
  78. package/dist/extensions/forgecli/hooks/post-init-hook.js +1 -1
  79. package/dist/extensions/forgecli/hooks/post-sprint-hook.js +1 -1
  80. package/dist/extensions/forgecli/hooks/write-guard.js +1 -1
  81. package/dist/extensions/forgecli/hooks/write-guard.js.map +1 -1
  82. package/dist/extensions/forgecli/implement.d.ts +4 -6
  83. package/dist/extensions/forgecli/implement.js +8 -73
  84. package/dist/extensions/forgecli/implement.js.map +1 -1
  85. package/dist/extensions/forgecli/index.js +15 -38
  86. package/dist/extensions/forgecli/index.js.map +1 -1
  87. package/dist/extensions/forgecli/lib/catalog-helpers.d.ts +13 -0
  88. package/dist/extensions/forgecli/lib/catalog-helpers.js +51 -0
  89. package/dist/extensions/forgecli/lib/catalog-helpers.js.map +1 -0
  90. package/dist/extensions/forgecli/lib/catalog-loader.d.ts +46 -0
  91. package/dist/extensions/forgecli/lib/catalog-loader.js +176 -0
  92. package/dist/extensions/forgecli/lib/catalog-loader.js.map +1 -0
  93. package/dist/extensions/forgecli/lib/catalog-types.d.ts +16 -0
  94. package/dist/extensions/forgecli/lib/catalog-types.js +161 -0
  95. package/dist/extensions/forgecli/lib/catalog-types.js.map +1 -0
  96. package/dist/extensions/forgecli/lib/exec-helpers.d.ts +25 -0
  97. package/dist/extensions/forgecli/lib/exec-helpers.js +52 -0
  98. package/dist/extensions/forgecli/lib/exec-helpers.js.map +1 -0
  99. package/dist/extensions/forgecli/lib/forge-config.d.ts +20 -0
  100. package/dist/extensions/forgecli/lib/forge-config.js +43 -0
  101. package/dist/extensions/forgecli/lib/forge-config.js.map +1 -0
  102. package/dist/extensions/forgecli/lib/frontmatter-parser.d.ts +13 -0
  103. package/dist/extensions/forgecli/lib/frontmatter-parser.js +56 -0
  104. package/dist/extensions/forgecli/lib/frontmatter-parser.js.map +1 -0
  105. package/dist/extensions/forgecli/lib/manifest-checker.d.ts +22 -0
  106. package/dist/extensions/forgecli/lib/manifest-checker.js +64 -0
  107. package/dist/extensions/forgecli/lib/manifest-checker.js.map +1 -0
  108. package/dist/extensions/forgecli/lib/orchestrator-preflight.d.ts +46 -0
  109. package/dist/extensions/forgecli/lib/orchestrator-preflight.js +64 -0
  110. package/dist/extensions/forgecli/lib/orchestrator-preflight.js.map +1 -0
  111. package/dist/extensions/forgecli/lib/orchestrator-types.d.ts +20 -0
  112. package/dist/extensions/forgecli/lib/orchestrator-types.js +14 -0
  113. package/dist/extensions/forgecli/lib/orchestrator-types.js.map +1 -0
  114. package/dist/extensions/forgecli/lib/parsers.d.ts +25 -0
  115. package/dist/extensions/forgecli/lib/parsers.js +164 -0
  116. package/dist/extensions/forgecli/lib/parsers.js.map +1 -0
  117. package/dist/extensions/forgecli/lib/shared-fs-utils.d.ts +12 -0
  118. package/dist/extensions/forgecli/lib/shared-fs-utils.js +37 -0
  119. package/dist/extensions/forgecli/lib/shared-fs-utils.js.map +1 -0
  120. package/dist/extensions/forgecli/lib/spawn-store-cli.d.ts +44 -0
  121. package/dist/extensions/forgecli/lib/spawn-store-cli.js +93 -0
  122. package/dist/extensions/forgecli/lib/spawn-store-cli.js.map +1 -0
  123. package/dist/extensions/forgecli/lib/state-helpers.d.ts +33 -0
  124. package/dist/extensions/forgecli/lib/state-helpers.js +69 -0
  125. package/dist/extensions/forgecli/lib/state-helpers.js.map +1 -0
  126. package/dist/extensions/forgecli/lib/store-cli-timeouts.d.ts +4 -0
  127. package/dist/extensions/forgecli/lib/store-cli-timeouts.js +10 -0
  128. package/dist/extensions/forgecli/lib/store-cli-timeouts.js.map +1 -0
  129. package/dist/extensions/forgecli/lib/versions.d.ts +56 -0
  130. package/dist/extensions/forgecli/lib/versions.js +116 -0
  131. package/dist/extensions/forgecli/lib/versions.js.map +1 -0
  132. package/dist/extensions/forgecli/loaders/persona-skill-loader.js +2 -2
  133. package/dist/extensions/forgecli/loaders/persona-skill-loader.js.map +1 -1
  134. package/dist/extensions/forgecli/migration-engine.d.ts +6 -0
  135. package/dist/extensions/forgecli/migration-engine.js +59 -39
  136. package/dist/extensions/forgecli/migration-engine.js.map +1 -1
  137. package/dist/extensions/forgecli/parsers/persona-skill-loader.d.ts +45 -0
  138. package/dist/extensions/forgecli/parsers/persona-skill-loader.js +201 -0
  139. package/dist/extensions/forgecli/parsers/persona-skill-loader.js.map +1 -0
  140. package/dist/extensions/forgecli/parsers/workflow-loader.d.ts +41 -0
  141. package/dist/extensions/forgecli/parsers/workflow-loader.js +87 -0
  142. package/dist/extensions/forgecli/parsers/workflow-loader.js.map +1 -0
  143. package/dist/extensions/forgecli/plan.d.ts +4 -6
  144. package/dist/extensions/forgecli/plan.js +9 -73
  145. package/dist/extensions/forgecli/plan.js.map +1 -1
  146. package/dist/extensions/forgecli/retrospective.d.ts +2 -1
  147. package/dist/extensions/forgecli/retrospective.js +6 -36
  148. package/dist/extensions/forgecli/retrospective.js.map +1 -1
  149. package/dist/extensions/forgecli/review-code.d.ts +4 -6
  150. package/dist/extensions/forgecli/review-code.js +8 -73
  151. package/dist/extensions/forgecli/review-code.js.map +1 -1
  152. package/dist/extensions/forgecli/review-plan.d.ts +4 -6
  153. package/dist/extensions/forgecli/review-plan.js +8 -73
  154. package/dist/extensions/forgecli/review-plan.js.map +1 -1
  155. package/dist/extensions/forgecli/run-sprint.d.ts +2 -0
  156. package/dist/extensions/forgecli/run-sprint.js +53 -52
  157. package/dist/extensions/forgecli/run-sprint.js.map +1 -1
  158. package/dist/extensions/forgecli/run-task.d.ts +3 -0
  159. package/dist/extensions/forgecli/run-task.js +39 -68
  160. package/dist/extensions/forgecli/run-task.js.map +1 -1
  161. package/dist/extensions/forgecli/skill-curation-flag.js +5 -5
  162. package/dist/extensions/forgecli/skill-curation-flag.js.map +1 -1
  163. package/dist/extensions/forgecli/skill-retriever.js +5 -5
  164. package/dist/extensions/forgecli/skill-retriever.js.map +1 -1
  165. package/dist/extensions/forgecli/skill-usage-tracker.js +5 -5
  166. package/dist/extensions/forgecli/skill-usage-tracker.js.map +1 -1
  167. package/dist/extensions/forgecli/store-error-remediation.d.ts +65 -0
  168. package/dist/extensions/forgecli/store-error-remediation.js +299 -0
  169. package/dist/extensions/forgecli/store-error-remediation.js.map +1 -0
  170. package/dist/extensions/forgecli/store-resolver.js +3 -12
  171. package/dist/extensions/forgecli/store-resolver.js.map +1 -1
  172. package/dist/extensions/forgecli/store-validator.js +6 -11
  173. package/dist/extensions/forgecli/store-validator.js.map +1 -1
  174. package/dist/extensions/forgecli/subagent/agents.d.ts +4 -0
  175. package/dist/extensions/forgecli/subagent/agents.js +5 -8
  176. package/dist/extensions/forgecli/subagent/agents.js.map +1 -1
  177. package/dist/extensions/forgecli/transition-guard.js +20 -61
  178. package/dist/extensions/forgecli/transition-guard.js.map +1 -1
  179. package/dist/extensions/forgecli/validate.d.ts +4 -6
  180. package/dist/extensions/forgecli/validate.js +8 -73
  181. package/dist/extensions/forgecli/validate.js.map +1 -1
  182. package/dist/extensions/forgecli/wf-engine/engine.js +2 -2
  183. package/dist/extensions/forgecli/wf-engine/engine.js.map +1 -1
  184. package/dist/extensions/forgecli/wf-engine/loader.d.ts +1 -1
  185. package/dist/extensions/forgecli/wf-engine/loader.js +1 -1
  186. package/dist/extensions/forgecli/wf-engine/loader.js.map +1 -1
  187. package/dist/forge-payload/.base-pack/skills/architect-skills.md +1 -0
  188. package/dist/forge-payload/.base-pack/skills/bug-fixer-skills.md +1 -0
  189. package/dist/forge-payload/.base-pack/skills/collator-skills.md +1 -0
  190. package/dist/forge-payload/.base-pack/skills/engineer-skills.md +1 -0
  191. package/dist/forge-payload/.base-pack/skills/generic-skills.md +1 -0
  192. package/dist/forge-payload/.base-pack/skills/qa-engineer-skills.md +1 -0
  193. package/dist/forge-payload/.base-pack/skills/supervisor-skills.md +1 -0
  194. package/dist/forge-payload/.base-pack/workflows/_fragments/generation-instructions.md +81 -0
  195. package/dist/forge-payload/.base-pack/workflows/_fragments/iron-laws.md +72 -0
  196. package/dist/forge-payload/.base-pack/workflows/_fragments/store-cli-verbs.md +11 -1
  197. package/dist/forge-payload/.base-pack/workflows/_fragments/store-write-verification.md +11 -0
  198. package/dist/forge-payload/.base-pack/workflows/architect_approve.md +11 -12
  199. package/dist/forge-payload/.base-pack/workflows/architect_review_sprint_completion.md +4 -1
  200. package/dist/forge-payload/.base-pack/workflows/architect_sprint_intake.md +10 -1
  201. package/dist/forge-payload/.base-pack/workflows/architect_sprint_plan.md +8 -1
  202. package/dist/forge-payload/.base-pack/workflows/collator_agent.md +18 -1
  203. package/dist/forge-payload/.base-pack/workflows/commit_task.md +5 -10
  204. package/dist/forge-payload/.base-pack/workflows/enhance.md +7 -0
  205. package/dist/forge-payload/.base-pack/workflows/fix_bug.md +9 -2
  206. package/dist/forge-payload/.base-pack/workflows/implement_plan.md +22 -35
  207. package/dist/forge-payload/.base-pack/workflows/migrate_structural.md +9 -0
  208. package/dist/forge-payload/.base-pack/workflows/orchestrate_task.md +4 -0
  209. package/dist/forge-payload/.base-pack/workflows/plan_task.md +17 -21
  210. package/dist/forge-payload/.base-pack/workflows/review_code.md +13 -20
  211. package/dist/forge-payload/.base-pack/workflows/review_plan.md +10 -21
  212. package/dist/forge-payload/.base-pack/workflows/sprint_retrospective.md +10 -1
  213. package/dist/forge-payload/.base-pack/workflows/update_implementation.md +5 -10
  214. package/dist/forge-payload/.base-pack/workflows/update_plan.md +5 -10
  215. package/dist/forge-payload/.base-pack/workflows/validate_task.md +11 -12
  216. package/dist/forge-payload/.claude-plugin/plugin.json +5 -5
  217. package/dist/forge-payload/.schemas/_defs/phaseSummary.schema.json +18 -0
  218. package/dist/forge-payload/.schemas/bug.schema.json +8 -24
  219. package/dist/forge-payload/.schemas/config.schema.json +165 -33
  220. package/dist/forge-payload/.schemas/enum-catalog.json +71 -0
  221. package/dist/forge-payload/.schemas/migrations.json +371 -149
  222. package/dist/forge-payload/.schemas/task.schema.json +6 -21
  223. package/dist/forge-payload/.schemas/transitions/bug.json +31 -0
  224. package/dist/forge-payload/.schemas/transitions/sprint.json +46 -0
  225. package/dist/forge-payload/.schemas/transitions/task.json +109 -0
  226. package/dist/forge-payload/commands/health.md +3 -3
  227. package/dist/forge-payload/hooks/check-update.cjs +255 -0
  228. package/dist/forge-payload/hooks/forge-permissions.cjs +171 -0
  229. package/dist/forge-payload/hooks/forge-permissions.js +6 -0
  230. package/dist/forge-payload/hooks/post-init.cjs +120 -0
  231. package/dist/forge-payload/hooks/post-sprint.cjs +108 -0
  232. package/dist/forge-payload/hooks/triage-error.cjs +104 -0
  233. package/dist/forge-payload/hooks/triage-error.js +6 -0
  234. package/dist/forge-payload/hooks/validate-write.cjs +250 -0
  235. package/dist/forge-payload/hooks/validate-write.js +25 -11
  236. package/dist/forge-payload/integrity.json +13 -7
  237. package/dist/forge-payload/meta/workflows/_fragments/generation-instructions.md +81 -0
  238. package/dist/forge-payload/meta/workflows/_fragments/iron-laws.md +72 -0
  239. package/dist/forge-payload/meta/workflows/_fragments/store-cli-verbs.md +11 -1
  240. package/dist/forge-payload/meta/workflows/_fragments/store-write-verification.md +11 -0
  241. package/dist/forge-payload/meta/workflows/meta-approve.md +9 -11
  242. package/dist/forge-payload/meta/workflows/meta-collate.md +16 -0
  243. package/dist/forge-payload/meta/workflows/meta-commit.md +3 -9
  244. package/dist/forge-payload/meta/workflows/meta-enhance.md +16 -1
  245. package/dist/forge-payload/meta/workflows/meta-fix-bug.md +8 -2
  246. package/dist/forge-payload/meta/workflows/meta-implement.md +20 -35
  247. package/dist/forge-payload/meta/workflows/meta-migrate.md +18 -0
  248. package/dist/forge-payload/meta/workflows/meta-orchestrate.md +2 -0
  249. package/dist/forge-payload/meta/workflows/meta-plan-task.md +15 -21
  250. package/dist/forge-payload/meta/workflows/meta-quiz-agent.md +4 -1
  251. package/dist/forge-payload/meta/workflows/meta-retrospective.md +8 -0
  252. package/dist/forge-payload/meta/workflows/meta-review-implementation.md +11 -19
  253. package/dist/forge-payload/meta/workflows/meta-review-plan.md +10 -16
  254. package/dist/forge-payload/meta/workflows/meta-review-sprint-completion.md +3 -0
  255. package/dist/forge-payload/meta/workflows/meta-sprint-intake.md +8 -0
  256. package/dist/forge-payload/meta/workflows/meta-sprint-plan.md +5 -0
  257. package/dist/forge-payload/meta/workflows/meta-update-implementation.md +3 -9
  258. package/dist/forge-payload/meta/workflows/meta-update-plan.md +3 -9
  259. package/dist/forge-payload/meta/workflows/meta-validate.md +9 -11
  260. package/dist/forge-payload/schemas/structure-manifest.json +8 -6
  261. package/dist/forge-payload/tools/build-context-pack.cjs +3 -2
  262. package/dist/forge-payload/tools/friction-emit.cjs +2 -1
  263. package/dist/forge-payload/tools/lib/frontmatter.cjs +62 -0
  264. package/dist/forge-payload/tools/lib/fsutil.cjs +61 -0
  265. package/dist/forge-payload/tools/lib/json-io.cjs +43 -0
  266. package/dist/forge-payload/tools/lib/schema-loader.cjs +139 -0
  267. package/dist/forge-payload/tools/lib/slug.cjs +39 -0
  268. package/dist/forge-payload/tools/lib/store-facade.cjs +6 -5
  269. package/dist/forge-payload/tools/preflight-gate.cjs +55 -7
  270. package/dist/forge-payload/tools/seed-store.cjs +1 -13
  271. package/dist/forge-payload/tools/store-cli.cjs +55 -108
  272. package/dist/forge-payload/tools/store.cjs +26 -37
  273. package/dist/forge-payload/tools/substitute-placeholders.cjs +74 -35
  274. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.d.ts +1 -1
  275. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.d.ts.map +1 -1
  276. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js +23 -0
  277. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js.map +1 -1
  278. package/node_modules/@earendil-works/pi-agent-core/dist/agent.d.ts +2 -2
  279. package/node_modules/@earendil-works/pi-agent-core/dist/agent.d.ts.map +1 -1
  280. package/node_modules/@earendil-works/pi-agent-core/dist/agent.js +1 -1
  281. package/node_modules/@earendil-works/pi-agent-core/dist/agent.js.map +1 -1
  282. package/node_modules/@earendil-works/pi-agent-core/dist/harness/agent-harness.d.ts +2 -2
  283. package/node_modules/@earendil-works/pi-agent-core/dist/harness/agent-harness.d.ts.map +1 -1
  284. package/node_modules/@earendil-works/pi-agent-core/dist/harness/agent-harness.js.map +1 -1
  285. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/branch-summarization.d.ts +5 -5
  286. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/branch-summarization.d.ts.map +1 -1
  287. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/branch-summarization.js.map +1 -1
  288. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.d.ts +4 -4
  289. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.d.ts.map +1 -1
  290. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.js.map +1 -1
  291. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/utils.d.ts +1 -1
  292. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/utils.d.ts.map +1 -1
  293. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/utils.js.map +1 -1
  294. package/node_modules/@earendil-works/pi-agent-core/dist/harness/env/nodejs.d.ts +1 -1
  295. package/node_modules/@earendil-works/pi-agent-core/dist/harness/env/nodejs.d.ts.map +1 -1
  296. package/node_modules/@earendil-works/pi-agent-core/dist/harness/env/nodejs.js.map +1 -1
  297. package/node_modules/@earendil-works/pi-agent-core/dist/harness/execution-env.d.ts +4 -0
  298. package/node_modules/@earendil-works/pi-agent-core/dist/harness/execution-env.d.ts.map +1 -0
  299. package/node_modules/@earendil-works/pi-agent-core/dist/harness/execution-env.js +3 -0
  300. package/node_modules/@earendil-works/pi-agent-core/dist/harness/execution-env.js.map +1 -0
  301. package/node_modules/@earendil-works/pi-agent-core/dist/harness/messages.d.ts +2 -2
  302. package/node_modules/@earendil-works/pi-agent-core/dist/harness/messages.d.ts.map +1 -1
  303. package/node_modules/@earendil-works/pi-agent-core/dist/harness/messages.js.map +1 -1
  304. package/node_modules/@earendil-works/pi-agent-core/dist/harness/prompt-templates.d.ts +1 -1
  305. package/node_modules/@earendil-works/pi-agent-core/dist/harness/prompt-templates.d.ts.map +1 -1
  306. package/node_modules/@earendil-works/pi-agent-core/dist/harness/prompt-templates.js.map +1 -1
  307. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl-repo.d.ts +1 -1
  308. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl-repo.d.ts.map +1 -1
  309. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl-repo.js.map +1 -1
  310. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl-storage.d.ts +1 -1
  311. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl-storage.d.ts.map +1 -1
  312. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/jsonl-storage.js.map +1 -1
  313. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory-repo.d.ts +1 -1
  314. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory-repo.d.ts.map +1 -1
  315. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory-repo.js.map +1 -1
  316. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory-storage.d.ts +1 -1
  317. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory-storage.d.ts.map +1 -1
  318. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/memory-storage.js.map +1 -1
  319. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/jsonl.d.ts +20 -0
  320. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/jsonl.d.ts.map +1 -0
  321. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/jsonl.js +92 -0
  322. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/jsonl.js.map +1 -0
  323. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/memory.d.ts +18 -0
  324. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/memory.d.ts.map +1 -0
  325. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/memory.js +42 -0
  326. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/memory.js.map +1 -0
  327. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/shared.d.ts +10 -0
  328. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/shared.d.ts.map +1 -0
  329. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/shared.js +31 -0
  330. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/shared.js.map +1 -0
  331. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo-utils.d.ts +2 -2
  332. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo-utils.d.ts.map +1 -1
  333. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo-utils.js.map +1 -1
  334. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/session.d.ts +2 -2
  335. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/session.d.ts.map +1 -1
  336. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/session.js.map +1 -1
  337. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/jsonl.d.ts +30 -0
  338. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/jsonl.d.ts.map +1 -0
  339. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/jsonl.js +170 -0
  340. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/jsonl.js.map +1 -0
  341. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/memory.d.ts +26 -0
  342. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/memory.d.ts.map +1 -0
  343. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/memory.js +90 -0
  344. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/memory.js.map +1 -0
  345. package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.d.ts +1 -1
  346. package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.d.ts.map +1 -1
  347. package/node_modules/@earendil-works/pi-agent-core/dist/harness/skills.js.map +1 -1
  348. package/node_modules/@earendil-works/pi-agent-core/dist/harness/system-prompt.d.ts +1 -1
  349. package/node_modules/@earendil-works/pi-agent-core/dist/harness/system-prompt.d.ts.map +1 -1
  350. package/node_modules/@earendil-works/pi-agent-core/dist/harness/system-prompt.js.map +1 -1
  351. package/node_modules/@earendil-works/pi-agent-core/dist/harness/types.d.ts +10 -22
  352. package/node_modules/@earendil-works/pi-agent-core/dist/harness/types.d.ts.map +1 -1
  353. package/node_modules/@earendil-works/pi-agent-core/dist/harness/types.js +17 -23
  354. package/node_modules/@earendil-works/pi-agent-core/dist/harness/types.js.map +1 -1
  355. package/node_modules/@earendil-works/pi-agent-core/dist/harness/utils/shell-output.d.ts +1 -1
  356. package/node_modules/@earendil-works/pi-agent-core/dist/harness/utils/shell-output.d.ts.map +1 -1
  357. package/node_modules/@earendil-works/pi-agent-core/dist/harness/utils/shell-output.js.map +1 -1
  358. package/node_modules/@earendil-works/pi-agent-core/dist/index.d.ts +19 -19
  359. package/node_modules/@earendil-works/pi-agent-core/dist/index.d.ts.map +1 -1
  360. package/node_modules/@earendil-works/pi-agent-core/dist/index.js.map +1 -1
  361. package/node_modules/@earendil-works/pi-agent-core/dist/node.d.ts +2 -2
  362. package/node_modules/@earendil-works/pi-agent-core/dist/node.d.ts.map +1 -1
  363. package/node_modules/@earendil-works/pi-agent-core/dist/node.js.map +1 -1
  364. package/node_modules/@earendil-works/pi-agent-core/package.json +9 -10
  365. package/node_modules/@earendil-works/pi-ai/dist/api-registry.d.ts +1 -1
  366. package/node_modules/@earendil-works/pi-ai/dist/api-registry.d.ts.map +1 -1
  367. package/node_modules/@earendil-works/pi-ai/dist/api-registry.js.map +1 -1
  368. package/node_modules/@earendil-works/pi-ai/dist/bedrock-provider.d.ts +2 -2
  369. package/node_modules/@earendil-works/pi-ai/dist/bedrock-provider.d.ts.map +1 -1
  370. package/node_modules/@earendil-works/pi-ai/dist/bedrock-provider.js.map +1 -1
  371. package/node_modules/@earendil-works/pi-ai/dist/cli.d.ts.map +1 -1
  372. package/node_modules/@earendil-works/pi-ai/dist/cli.js +14 -0
  373. package/node_modules/@earendil-works/pi-ai/dist/cli.js.map +1 -1
  374. package/node_modules/@earendil-works/pi-ai/dist/env-api-keys.d.ts +1 -1
  375. package/node_modules/@earendil-works/pi-ai/dist/env-api-keys.d.ts.map +1 -1
  376. package/node_modules/@earendil-works/pi-ai/dist/env-api-keys.js +10 -2
  377. package/node_modules/@earendil-works/pi-ai/dist/env-api-keys.js.map +1 -1
  378. package/node_modules/@earendil-works/pi-ai/dist/image-models.d.ts +2 -2
  379. package/node_modules/@earendil-works/pi-ai/dist/image-models.d.ts.map +1 -1
  380. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.d.ts.map +1 -1
  381. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.js.map +1 -1
  382. package/node_modules/@earendil-works/pi-ai/dist/image-models.js.map +1 -1
  383. package/node_modules/@earendil-works/pi-ai/dist/images-api-registry.d.ts +1 -1
  384. package/node_modules/@earendil-works/pi-ai/dist/images-api-registry.d.ts.map +1 -1
  385. package/node_modules/@earendil-works/pi-ai/dist/images-api-registry.js.map +1 -1
  386. package/node_modules/@earendil-works/pi-ai/dist/images.d.ts +2 -2
  387. package/node_modules/@earendil-works/pi-ai/dist/images.d.ts.map +1 -1
  388. package/node_modules/@earendil-works/pi-ai/dist/images.js.map +1 -1
  389. package/node_modules/@earendil-works/pi-ai/dist/index.d.ts +29 -29
  390. package/node_modules/@earendil-works/pi-ai/dist/index.d.ts.map +1 -1
  391. package/node_modules/@earendil-works/pi-ai/dist/index.js.map +1 -1
  392. package/node_modules/@earendil-works/pi-ai/dist/models.d.ts +2 -2
  393. package/node_modules/@earendil-works/pi-ai/dist/models.d.ts.map +1 -1
  394. package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts +317 -509
  395. package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts.map +1 -1
  396. package/node_modules/@earendil-works/pi-ai/dist/models.generated.js +400 -620
  397. package/node_modules/@earendil-works/pi-ai/dist/models.generated.js.map +1 -1
  398. package/node_modules/@earendil-works/pi-ai/dist/models.js.map +1 -1
  399. package/node_modules/@earendil-works/pi-ai/dist/oauth.d.ts +1 -1
  400. package/node_modules/@earendil-works/pi-ai/dist/oauth.d.ts.map +1 -1
  401. package/node_modules/@earendil-works/pi-ai/dist/oauth.js.map +1 -1
  402. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.d.ts +1 -1
  403. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.d.ts.map +1 -1
  404. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.js +5 -2
  405. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.js.map +1 -1
  406. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.d.ts +23 -6
  407. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.d.ts.map +1 -1
  408. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.js +11 -23
  409. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.js.map +1 -1
  410. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.d.ts +1 -1
  411. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.d.ts.map +1 -1
  412. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.js +2 -1
  413. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.js.map +1 -1
  414. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare.d.ts +1 -1
  415. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare.d.ts.map +1 -1
  416. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare.js.map +1 -1
  417. package/node_modules/@earendil-works/pi-ai/dist/providers/faux.d.ts +1 -1
  418. package/node_modules/@earendil-works/pi-ai/dist/providers/faux.d.ts.map +1 -1
  419. package/node_modules/@earendil-works/pi-ai/dist/providers/faux.js.map +1 -1
  420. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot-headers.d.ts +1 -1
  421. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot-headers.d.ts.map +1 -1
  422. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot-headers.js.map +1 -1
  423. package/node_modules/@earendil-works/pi-ai/dist/providers/google-shared.d.ts +1 -1
  424. package/node_modules/@earendil-works/pi-ai/dist/providers/google-shared.d.ts.map +1 -1
  425. package/node_modules/@earendil-works/pi-ai/dist/providers/google-shared.js.map +1 -1
  426. package/node_modules/@earendil-works/pi-ai/dist/providers/google-vertex.d.ts +2 -2
  427. package/node_modules/@earendil-works/pi-ai/dist/providers/google-vertex.d.ts.map +1 -1
  428. package/node_modules/@earendil-works/pi-ai/dist/providers/google-vertex.js.map +1 -1
  429. package/node_modules/@earendil-works/pi-ai/dist/providers/google.d.ts +2 -2
  430. package/node_modules/@earendil-works/pi-ai/dist/providers/google.d.ts.map +1 -1
  431. package/node_modules/@earendil-works/pi-ai/dist/providers/google.js.map +1 -1
  432. package/node_modules/@earendil-works/pi-ai/dist/providers/images/openrouter.d.ts +1 -1
  433. package/node_modules/@earendil-works/pi-ai/dist/providers/images/openrouter.d.ts.map +1 -1
  434. package/node_modules/@earendil-works/pi-ai/dist/providers/images/openrouter.js.map +1 -1
  435. package/node_modules/@earendil-works/pi-ai/dist/providers/images/register-builtins.d.ts +1 -1
  436. package/node_modules/@earendil-works/pi-ai/dist/providers/images/register-builtins.d.ts.map +1 -1
  437. package/node_modules/@earendil-works/pi-ai/dist/providers/images/register-builtins.js.map +1 -1
  438. package/node_modules/@earendil-works/pi-ai/dist/providers/mistral.d.ts +1 -1
  439. package/node_modules/@earendil-works/pi-ai/dist/providers/mistral.d.ts.map +1 -1
  440. package/node_modules/@earendil-works/pi-ai/dist/providers/mistral.js.map +1 -1
  441. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex-responses.d.ts +1 -1
  442. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex-responses.d.ts.map +1 -1
  443. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex-responses.js +12 -3
  444. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex-responses.js.map +1 -1
  445. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-completions.d.ts +1 -1
  446. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-completions.d.ts.map +1 -1
  447. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-completions.js +2 -1
  448. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-completions.js.map +1 -1
  449. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-prompt-cache.d.ts +3 -0
  450. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-prompt-cache.d.ts.map +1 -0
  451. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-prompt-cache.js +10 -0
  452. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-prompt-cache.js.map +1 -0
  453. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses-shared.d.ts +2 -2
  454. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses-shared.d.ts.map +1 -1
  455. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses-shared.js.map +1 -1
  456. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses.d.ts +1 -1
  457. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses.d.ts.map +1 -1
  458. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses.js +2 -1
  459. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses.js.map +1 -1
  460. package/node_modules/@earendil-works/pi-ai/dist/providers/register-builtins.d.ts +10 -10
  461. package/node_modules/@earendil-works/pi-ai/dist/providers/register-builtins.d.ts.map +1 -1
  462. package/node_modules/@earendil-works/pi-ai/dist/providers/register-builtins.js +13 -2
  463. package/node_modules/@earendil-works/pi-ai/dist/providers/register-builtins.js.map +1 -1
  464. package/node_modules/@earendil-works/pi-ai/dist/providers/simple-options.d.ts +3 -3
  465. package/node_modules/@earendil-works/pi-ai/dist/providers/simple-options.d.ts.map +1 -1
  466. package/node_modules/@earendil-works/pi-ai/dist/providers/simple-options.js +6 -11
  467. package/node_modules/@earendil-works/pi-ai/dist/providers/simple-options.js.map +1 -1
  468. package/node_modules/@earendil-works/pi-ai/dist/providers/transform-messages.d.ts +1 -1
  469. package/node_modules/@earendil-works/pi-ai/dist/providers/transform-messages.d.ts.map +1 -1
  470. package/node_modules/@earendil-works/pi-ai/dist/providers/transform-messages.js.map +1 -1
  471. package/node_modules/@earendil-works/pi-ai/dist/stream.d.ts +3 -3
  472. package/node_modules/@earendil-works/pi-ai/dist/stream.d.ts.map +1 -1
  473. package/node_modules/@earendil-works/pi-ai/dist/stream.js.map +1 -1
  474. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts +13 -3
  475. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts.map +1 -1
  476. package/node_modules/@earendil-works/pi-ai/dist/types.js.map +1 -1
  477. package/node_modules/@earendil-works/pi-ai/dist/utils/event-stream.d.ts +3 -3
  478. package/node_modules/@earendil-works/pi-ai/dist/utils/event-stream.d.ts.map +1 -1
  479. package/node_modules/@earendil-works/pi-ai/dist/utils/event-stream.js +2 -2
  480. package/node_modules/@earendil-works/pi-ai/dist/utils/event-stream.js.map +1 -1
  481. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/anthropic.d.ts +1 -1
  482. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/anthropic.d.ts.map +1 -1
  483. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/anthropic.js.map +1 -1
  484. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/device-code.d.ts +19 -0
  485. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/device-code.d.ts.map +1 -0
  486. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/device-code.js +55 -0
  487. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/device-code.js.map +1 -0
  488. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/github-copilot.d.ts +3 -3
  489. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/github-copilot.d.ts.map +1 -1
  490. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/github-copilot.js +45 -69
  491. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/github-copilot.js.map +1 -1
  492. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/index.d.ts +6 -5
  493. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/index.d.ts.map +1 -1
  494. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/index.js +1 -0
  495. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/index.js.map +1 -1
  496. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/openai-codex.d.ts +1 -1
  497. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/openai-codex.d.ts.map +1 -1
  498. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/openai-codex.js +1 -1
  499. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/openai-codex.js.map +1 -1
  500. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/types.d.ts +9 -2
  501. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/types.d.ts.map +1 -1
  502. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/types.js.map +1 -1
  503. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts +1 -1
  504. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts.map +1 -1
  505. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js.map +1 -1
  506. package/node_modules/@earendil-works/pi-ai/dist/utils/validation.d.ts +1 -1
  507. package/node_modules/@earendil-works/pi-ai/dist/utils/validation.d.ts.map +1 -1
  508. package/node_modules/@earendil-works/pi-ai/dist/utils/validation.js.map +1 -1
  509. package/node_modules/@earendil-works/pi-ai/package.json +15 -16
  510. package/node_modules/@earendil-works/pi-coding-agent/CHANGELOG.md +55 -0
  511. package/node_modules/@earendil-works/pi-coding-agent/README.md +6 -4
  512. package/node_modules/@earendil-works/pi-coding-agent/dist/bun/cli.d.ts.map +1 -1
  513. package/node_modules/@earendil-works/pi-coding-agent/dist/bun/cli.js.map +1 -1
  514. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.d.ts +1 -1
  515. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.d.ts.map +1 -1
  516. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.js.map +1 -1
  517. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/config-selector.d.ts +2 -2
  518. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/config-selector.d.ts.map +1 -1
  519. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/config-selector.js.map +1 -1
  520. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.d.ts.map +1 -1
  521. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/file-processor.js.map +1 -1
  522. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/initial-message.d.ts +1 -1
  523. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/initial-message.d.ts.map +1 -1
  524. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/initial-message.js.map +1 -1
  525. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/list-models.d.ts +1 -1
  526. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/list-models.d.ts.map +1 -1
  527. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/list-models.js.map +1 -1
  528. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/session-picker.d.ts +1 -1
  529. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/session-picker.d.ts.map +1 -1
  530. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/session-picker.js.map +1 -1
  531. package/node_modules/@earendil-works/pi-coding-agent/dist/cli.d.ts.map +1 -1
  532. package/node_modules/@earendil-works/pi-coding-agent/dist/cli.js +4 -10
  533. package/node_modules/@earendil-works/pi-coding-agent/dist/cli.js.map +1 -1
  534. package/node_modules/@earendil-works/pi-coding-agent/dist/config.d.ts.map +1 -1
  535. package/node_modules/@earendil-works/pi-coding-agent/dist/config.js +13 -14
  536. package/node_modules/@earendil-works/pi-coding-agent/dist/config.js.map +1 -1
  537. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-runtime.d.ts +9 -9
  538. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-runtime.d.ts.map +1 -1
  539. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-runtime.js +6 -6
  540. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-runtime.js.map +1 -1
  541. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-services.d.ts +7 -7
  542. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-services.d.ts.map +1 -1
  543. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-services.js +3 -2
  544. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-services.js.map +1 -1
  545. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.d.ts +23 -21
  546. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.d.ts.map +1 -1
  547. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.js +99 -137
  548. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.js.map +1 -1
  549. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-guidance.d.ts.map +1 -1
  550. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-guidance.js.map +1 -1
  551. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.d.ts +1 -1
  552. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.d.ts.map +1 -1
  553. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.js +3 -2
  554. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.js.map +1 -1
  555. package/node_modules/@earendil-works/pi-coding-agent/dist/core/bash-executor.d.ts +1 -1
  556. package/node_modules/@earendil-works/pi-coding-agent/dist/core/bash-executor.d.ts.map +1 -1
  557. package/node_modules/@earendil-works/pi-coding-agent/dist/core/bash-executor.js.map +1 -1
  558. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.d.ts +3 -3
  559. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.d.ts.map +1 -1
  560. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.js.map +1 -1
  561. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.d.ts +2 -2
  562. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.d.ts.map +1 -1
  563. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.js.map +1 -1
  564. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/index.d.ts +3 -3
  565. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/index.d.ts.map +1 -1
  566. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/index.js.map +1 -1
  567. package/node_modules/@earendil-works/pi-coding-agent/dist/core/exec.d.ts.map +1 -1
  568. package/node_modules/@earendil-works/pi-coding-agent/dist/core/exec.js.map +1 -1
  569. package/node_modules/@earendil-works/pi-coding-agent/dist/core/export-html/index.d.ts +1 -1
  570. package/node_modules/@earendil-works/pi-coding-agent/dist/core/export-html/index.d.ts.map +1 -1
  571. package/node_modules/@earendil-works/pi-coding-agent/dist/core/export-html/index.js +8 -6
  572. package/node_modules/@earendil-works/pi-coding-agent/dist/core/export-html/index.js.map +1 -1
  573. package/node_modules/@earendil-works/pi-coding-agent/dist/core/export-html/template.js +6 -3
  574. package/node_modules/@earendil-works/pi-coding-agent/dist/core/export-html/tool-renderer.d.ts +2 -2
  575. package/node_modules/@earendil-works/pi-coding-agent/dist/core/export-html/tool-renderer.d.ts.map +1 -1
  576. package/node_modules/@earendil-works/pi-coding-agent/dist/core/export-html/tool-renderer.js.map +1 -1
  577. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.d.ts +8 -8
  578. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.d.ts.map +1 -1
  579. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.js.map +1 -1
  580. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.d.ts +2 -2
  581. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.d.ts.map +1 -1
  582. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.js +12 -29
  583. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.js.map +1 -1
  584. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.d.ts +6 -6
  585. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.d.ts.map +1 -1
  586. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.js.map +1 -1
  587. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.d.ts +19 -19
  588. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.d.ts.map +1 -1
  589. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.js.map +1 -1
  590. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/wrapper.d.ts +2 -2
  591. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/wrapper.d.ts.map +1 -1
  592. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/wrapper.js.map +1 -1
  593. package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.d.ts.map +1 -1
  594. package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.js.map +1 -1
  595. package/node_modules/@earendil-works/pi-coding-agent/dist/core/http-dispatcher.d.ts +21 -0
  596. package/node_modules/@earendil-works/pi-coding-agent/dist/core/http-dispatcher.d.ts.map +1 -0
  597. package/node_modules/@earendil-works/pi-coding-agent/dist/core/http-dispatcher.js +48 -0
  598. package/node_modules/@earendil-works/pi-coding-agent/dist/core/http-dispatcher.js.map +1 -0
  599. package/node_modules/@earendil-works/pi-coding-agent/dist/core/index.d.ts +8 -8
  600. package/node_modules/@earendil-works/pi-coding-agent/dist/core/index.d.ts.map +1 -1
  601. package/node_modules/@earendil-works/pi-coding-agent/dist/core/index.js.map +1 -1
  602. package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.d.ts.map +1 -1
  603. package/node_modules/@earendil-works/pi-coding-agent/dist/core/keybindings.js.map +1 -1
  604. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-registry.d.ts +4 -4
  605. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-registry.d.ts.map +1 -1
  606. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-registry.js +7 -3
  607. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-registry.js.map +1 -1
  608. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.d.ts +1 -1
  609. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.d.ts.map +1 -1
  610. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.js.map +1 -1
  611. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.d.ts +2 -1
  612. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.d.ts.map +1 -1
  613. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js +48 -32
  614. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js.map +1 -1
  615. package/node_modules/@earendil-works/pi-coding-agent/dist/core/prompt-templates.d.ts +1 -1
  616. package/node_modules/@earendil-works/pi-coding-agent/dist/core/prompt-templates.d.ts.map +1 -1
  617. package/node_modules/@earendil-works/pi-coding-agent/dist/core/prompt-templates.js +6 -20
  618. package/node_modules/@earendil-works/pi-coding-agent/dist/core/prompt-templates.js.map +1 -1
  619. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resolve-config-value.d.ts.map +1 -1
  620. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resolve-config-value.js.map +1 -1
  621. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.d.ts +9 -9
  622. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.d.ts.map +1 -1
  623. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.js +38 -31
  624. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.js.map +1 -1
  625. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.d.ts +13 -13
  626. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.d.ts.map +1 -1
  627. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.js +9 -4
  628. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.js.map +1 -1
  629. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.d.ts +1 -1
  630. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.d.ts.map +1 -1
  631. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.js +32 -24
  632. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.js.map +1 -1
  633. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.d.ts +3 -0
  634. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.d.ts.map +1 -1
  635. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.js +26 -13
  636. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.js.map +1 -1
  637. package/node_modules/@earendil-works/pi-coding-agent/dist/core/skills.d.ts +2 -2
  638. package/node_modules/@earendil-works/pi-coding-agent/dist/core/skills.d.ts.map +1 -1
  639. package/node_modules/@earendil-works/pi-coding-agent/dist/core/skills.js +8 -22
  640. package/node_modules/@earendil-works/pi-coding-agent/dist/core/skills.js.map +1 -1
  641. package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.d.ts +1 -1
  642. package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.d.ts.map +1 -1
  643. package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.js.map +1 -1
  644. package/node_modules/@earendil-works/pi-coding-agent/dist/core/source-info.d.ts +1 -1
  645. package/node_modules/@earendil-works/pi-coding-agent/dist/core/source-info.d.ts.map +1 -1
  646. package/node_modules/@earendil-works/pi-coding-agent/dist/core/source-info.js.map +1 -1
  647. package/node_modules/@earendil-works/pi-coding-agent/dist/core/system-prompt.d.ts +1 -1
  648. package/node_modules/@earendil-works/pi-coding-agent/dist/core/system-prompt.d.ts.map +1 -1
  649. package/node_modules/@earendil-works/pi-coding-agent/dist/core/system-prompt.js +1 -0
  650. package/node_modules/@earendil-works/pi-coding-agent/dist/core/system-prompt.js.map +1 -1
  651. package/node_modules/@earendil-works/pi-coding-agent/dist/core/telemetry.d.ts +1 -1
  652. package/node_modules/@earendil-works/pi-coding-agent/dist/core/telemetry.d.ts.map +1 -1
  653. package/node_modules/@earendil-works/pi-coding-agent/dist/core/telemetry.js.map +1 -1
  654. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.d.ts +2 -2
  655. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.d.ts.map +1 -1
  656. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js +9 -3
  657. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js.map +1 -1
  658. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.d.ts +3 -1
  659. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.d.ts.map +1 -1
  660. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.js +8 -1
  661. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit-diff.js.map +1 -1
  662. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.d.ts +5 -3
  663. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.d.ts.map +1 -1
  664. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.js +3 -2
  665. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/edit.js.map +1 -1
  666. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/find.d.ts +2 -2
  667. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/find.d.ts.map +1 -1
  668. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/find.js.map +1 -1
  669. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/grep.d.ts +2 -2
  670. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/grep.d.ts.map +1 -1
  671. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/grep.js.map +1 -1
  672. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.d.ts +17 -17
  673. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.d.ts.map +1 -1
  674. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/index.js.map +1 -1
  675. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/ls.d.ts +2 -2
  676. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/ls.d.ts.map +1 -1
  677. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/ls.js.map +1 -1
  678. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/output-accumulator.d.ts +3 -1
  679. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/output-accumulator.d.ts.map +1 -1
  680. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/output-accumulator.js +9 -3
  681. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/output-accumulator.js.map +1 -1
  682. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/path-utils.d.ts.map +1 -1
  683. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/path-utils.js +3 -22
  684. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/path-utils.js.map +1 -1
  685. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/read.d.ts +2 -2
  686. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/read.d.ts.map +1 -1
  687. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/read.js.map +1 -1
  688. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/render-utils.d.ts.map +1 -1
  689. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/render-utils.js.map +1 -1
  690. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/tool-definition-wrapper.d.ts +1 -1
  691. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/tool-definition-wrapper.d.ts.map +1 -1
  692. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/tool-definition-wrapper.js.map +1 -1
  693. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/truncate.d.ts.map +1 -1
  694. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/truncate.js +12 -2
  695. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/truncate.js.map +1 -1
  696. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/write.d.ts +1 -1
  697. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/write.d.ts.map +1 -1
  698. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/write.js.map +1 -1
  699. package/node_modules/@earendil-works/pi-coding-agent/dist/index.d.ts +30 -29
  700. package/node_modules/@earendil-works/pi-coding-agent/dist/index.d.ts.map +1 -1
  701. package/node_modules/@earendil-works/pi-coding-agent/dist/index.js +2 -1
  702. package/node_modules/@earendil-works/pi-coding-agent/dist/index.js.map +1 -1
  703. package/node_modules/@earendil-works/pi-coding-agent/dist/main.d.ts +1 -1
  704. package/node_modules/@earendil-works/pi-coding-agent/dist/main.d.ts.map +1 -1
  705. package/node_modules/@earendil-works/pi-coding-agent/dist/main.js +7 -6
  706. package/node_modules/@earendil-works/pi-coding-agent/dist/main.js.map +1 -1
  707. package/node_modules/@earendil-works/pi-coding-agent/dist/migrations.d.ts.map +1 -1
  708. package/node_modules/@earendil-works/pi-coding-agent/dist/migrations.js.map +1 -1
  709. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/index.d.ts +5 -5
  710. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/index.d.ts.map +1 -1
  711. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/index.js.map +1 -1
  712. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/armin.d.ts.map +1 -1
  713. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/armin.js.map +1 -1
  714. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  715. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/assistant-message.js.map +1 -1
  716. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/bash-execution.d.ts +1 -1
  717. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
  718. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/bash-execution.js.map +1 -1
  719. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/bordered-loader.d.ts +1 -1
  720. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -1
  721. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/bordered-loader.js.map +1 -1
  722. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/branch-summary-message.d.ts +1 -1
  723. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
  724. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
  725. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/compaction-summary-message.d.ts +1 -1
  726. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -1
  727. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/compaction-summary-message.js.map +1 -1
  728. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/config-selector.d.ts +2 -2
  729. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
  730. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/config-selector.js +1 -1
  731. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/config-selector.js.map +1 -1
  732. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/countdown-timer.d.ts +2 -2
  733. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/countdown-timer.d.ts.map +1 -1
  734. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/countdown-timer.js +2 -2
  735. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/countdown-timer.js.map +1 -1
  736. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/custom-editor.d.ts +1 -1
  737. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
  738. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/custom-editor.js.map +1 -1
  739. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/custom-message.d.ts +2 -2
  740. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
  741. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/custom-message.js.map +1 -1
  742. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/daxnuts.d.ts.map +1 -1
  743. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/daxnuts.js.map +1 -1
  744. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/diff.d.ts.map +1 -1
  745. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/diff.js.map +1 -1
  746. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/dynamic-border.d.ts.map +1 -1
  747. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/dynamic-border.js.map +1 -1
  748. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/earendil-announcement.d.ts.map +1 -1
  749. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/earendil-announcement.js.map +1 -1
  750. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/extension-editor.d.ts +1 -1
  751. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/extension-editor.d.ts.map +1 -1
  752. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/extension-editor.js.map +1 -1
  753. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/extension-input.d.ts.map +1 -1
  754. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/extension-input.js.map +1 -1
  755. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/extension-selector.d.ts.map +1 -1
  756. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/extension-selector.js.map +1 -1
  757. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/footer.d.ts +4 -3
  758. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/footer.d.ts.map +1 -1
  759. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/footer.js +16 -7
  760. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/footer.js.map +1 -1
  761. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/index.d.ts +31 -31
  762. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/index.d.ts.map +1 -1
  763. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/index.js.map +1 -1
  764. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -1
  765. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/keybinding-hints.js.map +1 -1
  766. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/login-dialog.d.ts +10 -2
  767. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
  768. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/login-dialog.js +31 -6
  769. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/login-dialog.js.map +1 -1
  770. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.d.ts +2 -2
  771. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  772. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.js.map +1 -1
  773. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/oauth-selector.d.ts +1 -1
  774. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
  775. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/oauth-selector.js.map +1 -1
  776. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
  777. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
  778. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/session-selector-search.d.ts +1 -1
  779. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/session-selector-search.d.ts.map +1 -1
  780. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/session-selector-search.js.map +1 -1
  781. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/session-selector.d.ts +3 -3
  782. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
  783. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/session-selector.js.map +1 -1
  784. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.d.ts +3 -1
  785. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  786. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.js +15 -0
  787. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.js.map +1 -1
  788. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -1
  789. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/show-images-selector.js.map +1 -1
  790. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/skill-invocation-message.d.ts +1 -1
  791. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
  792. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
  793. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/theme-selector.d.ts.map +1 -1
  794. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/theme-selector.js.map +1 -1
  795. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
  796. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/thinking-selector.js.map +1 -1
  797. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/tool-execution.d.ts +1 -1
  798. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
  799. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/tool-execution.js.map +1 -1
  800. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/tree-selector.d.ts +1 -1
  801. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
  802. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/tree-selector.js.map +1 -1
  803. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
  804. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/user-message-selector.js.map +1 -1
  805. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/user-message.d.ts.map +1 -1
  806. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/user-message.js.map +1 -1
  807. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.d.ts +4 -3
  808. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  809. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.js +37 -14
  810. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.js.map +1 -1
  811. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.d.ts +1 -1
  812. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  813. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.js +37 -28
  814. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/theme/theme.js.map +1 -1
  815. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/print-mode.d.ts +1 -1
  816. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/print-mode.d.ts.map +1 -1
  817. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/print-mode.js.map +1 -1
  818. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.d.ts +5 -5
  819. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  820. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.js +1 -1
  821. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-client.js.map +1 -1
  822. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.d.ts +2 -2
  823. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  824. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.js.map +1 -1
  825. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-types.d.ts +4 -4
  826. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-types.d.ts.map +1 -1
  827. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-types.js.map +1 -1
  828. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.d.ts.map +1 -1
  829. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.js +40 -1
  830. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.js.map +1 -1
  831. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/changelog.d.ts +1 -1
  832. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/changelog.d.ts.map +1 -1
  833. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/changelog.js.map +1 -1
  834. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/clipboard-image.d.ts.map +1 -1
  835. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/clipboard-image.js.map +1 -1
  836. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/clipboard.d.ts.map +1 -1
  837. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/clipboard.js.map +1 -1
  838. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/exif-orientation.d.ts +1 -1
  839. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/exif-orientation.d.ts.map +1 -1
  840. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/exif-orientation.js.map +1 -1
  841. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-convert.d.ts.map +1 -1
  842. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-convert.js.map +1 -1
  843. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize.d.ts.map +1 -1
  844. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/image-resize.js.map +1 -1
  845. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/paths.d.ts +16 -1
  846. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/paths.d.ts.map +1 -1
  847. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/paths.js +49 -7
  848. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/paths.js.map +1 -1
  849. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/shell.d.ts.map +1 -1
  850. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/shell.js.map +1 -1
  851. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/syntax-highlight.d.ts.map +1 -1
  852. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/syntax-highlight.js.map +1 -1
  853. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/tools-manager.d.ts.map +1 -1
  854. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/tools-manager.js.map +1 -1
  855. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/version-check.d.ts +2 -1
  856. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/version-check.d.ts.map +1 -1
  857. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/version-check.js +9 -4
  858. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/version-check.js.map +1 -1
  859. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/windows-self-update.d.ts.map +1 -1
  860. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/windows-self-update.js.map +1 -1
  861. package/node_modules/@earendil-works/pi-coding-agent/docs/custom-provider.md +44 -12
  862. package/node_modules/@earendil-works/pi-coding-agent/docs/index.md +6 -4
  863. package/node_modules/@earendil-works/pi-coding-agent/docs/models.md +8 -2
  864. package/node_modules/@earendil-works/pi-coding-agent/docs/packages.md +5 -4
  865. package/node_modules/@earendil-works/pi-coding-agent/docs/quickstart.md +3 -1
  866. package/node_modules/@earendil-works/pi-coding-agent/docs/sdk.md +2 -0
  867. package/node_modules/@earendil-works/pi-coding-agent/docs/termux.md +1 -1
  868. package/node_modules/@earendil-works/pi-coding-agent/docs/usage.md +2 -2
  869. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-anthropic/package.json +2 -2
  870. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  871. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-gitlab-duo/test.ts +1 -1
  872. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/doom-overlay/doom-component.ts +2 -2
  873. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/doom-overlay/index.ts +3 -3
  874. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/overlay-qa-tests.ts +97 -66
  875. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/overlay-test.ts +7 -4
  876. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/plan-mode/index.ts +1 -1
  877. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/sandbox/package.json +2 -2
  878. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/subagent/index.ts +1 -1
  879. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/with-deps/package.json +3 -3
  880. package/node_modules/@earendil-works/pi-coding-agent/npm-shrinkwrap.json +1425 -0
  881. package/node_modules/@earendil-works/pi-coding-agent/package.json +32 -31
  882. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.d.ts.map +1 -1
  883. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.js.map +1 -1
  884. package/node_modules/@earendil-works/pi-tui/dist/components/box.d.ts +1 -1
  885. package/node_modules/@earendil-works/pi-tui/dist/components/box.d.ts.map +1 -1
  886. package/node_modules/@earendil-works/pi-tui/dist/components/box.js.map +1 -1
  887. package/node_modules/@earendil-works/pi-tui/dist/components/cancellable-loader.d.ts +1 -1
  888. package/node_modules/@earendil-works/pi-tui/dist/components/cancellable-loader.d.ts.map +1 -1
  889. package/node_modules/@earendil-works/pi-tui/dist/components/cancellable-loader.js.map +1 -1
  890. package/node_modules/@earendil-works/pi-tui/dist/components/editor.d.ts +3 -3
  891. package/node_modules/@earendil-works/pi-tui/dist/components/editor.d.ts.map +1 -1
  892. package/node_modules/@earendil-works/pi-tui/dist/components/editor.js.map +1 -1
  893. package/node_modules/@earendil-works/pi-tui/dist/components/image.d.ts +2 -2
  894. package/node_modules/@earendil-works/pi-tui/dist/components/image.d.ts.map +1 -1
  895. package/node_modules/@earendil-works/pi-tui/dist/components/image.js.map +1 -1
  896. package/node_modules/@earendil-works/pi-tui/dist/components/input.d.ts +1 -1
  897. package/node_modules/@earendil-works/pi-tui/dist/components/input.d.ts.map +1 -1
  898. package/node_modules/@earendil-works/pi-tui/dist/components/input.js.map +1 -1
  899. package/node_modules/@earendil-works/pi-tui/dist/components/loader.d.ts +5 -5
  900. package/node_modules/@earendil-works/pi-tui/dist/components/loader.d.ts.map +1 -1
  901. package/node_modules/@earendil-works/pi-tui/dist/components/loader.js +4 -4
  902. package/node_modules/@earendil-works/pi-tui/dist/components/loader.js.map +1 -1
  903. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.d.ts +1 -1
  904. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.d.ts.map +1 -1
  905. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.js.map +1 -1
  906. package/node_modules/@earendil-works/pi-tui/dist/components/select-list.d.ts +1 -1
  907. package/node_modules/@earendil-works/pi-tui/dist/components/select-list.d.ts.map +1 -1
  908. package/node_modules/@earendil-works/pi-tui/dist/components/select-list.js.map +1 -1
  909. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.d.ts +1 -1
  910. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.d.ts.map +1 -1
  911. package/node_modules/@earendil-works/pi-tui/dist/components/settings-list.js.map +1 -1
  912. package/node_modules/@earendil-works/pi-tui/dist/components/spacer.d.ts +1 -1
  913. package/node_modules/@earendil-works/pi-tui/dist/components/spacer.d.ts.map +1 -1
  914. package/node_modules/@earendil-works/pi-tui/dist/components/spacer.js.map +1 -1
  915. package/node_modules/@earendil-works/pi-tui/dist/components/text.d.ts +1 -1
  916. package/node_modules/@earendil-works/pi-tui/dist/components/text.d.ts.map +1 -1
  917. package/node_modules/@earendil-works/pi-tui/dist/components/text.js.map +1 -1
  918. package/node_modules/@earendil-works/pi-tui/dist/components/truncated-text.d.ts +1 -1
  919. package/node_modules/@earendil-works/pi-tui/dist/components/truncated-text.d.ts.map +1 -1
  920. package/node_modules/@earendil-works/pi-tui/dist/components/truncated-text.js.map +1 -1
  921. package/node_modules/@earendil-works/pi-tui/dist/editor-component.d.ts +2 -2
  922. package/node_modules/@earendil-works/pi-tui/dist/editor-component.d.ts.map +1 -1
  923. package/node_modules/@earendil-works/pi-tui/dist/editor-component.js.map +1 -1
  924. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts +22 -22
  925. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts.map +1 -1
  926. package/node_modules/@earendil-works/pi-tui/dist/index.js.map +1 -1
  927. package/node_modules/@earendil-works/pi-tui/dist/keybindings.d.ts +1 -1
  928. package/node_modules/@earendil-works/pi-tui/dist/keybindings.d.ts.map +1 -1
  929. package/node_modules/@earendil-works/pi-tui/dist/keybindings.js.map +1 -1
  930. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts.map +1 -1
  931. package/node_modules/@earendil-works/pi-tui/dist/terminal.js +25 -15
  932. package/node_modules/@earendil-works/pi-tui/dist/terminal.js.map +1 -1
  933. package/node_modules/@earendil-works/pi-tui/dist/tui.d.ts +2 -2
  934. package/node_modules/@earendil-works/pi-tui/dist/tui.d.ts.map +1 -1
  935. package/node_modules/@earendil-works/pi-tui/dist/tui.js.map +1 -1
  936. package/node_modules/@earendil-works/pi-tui/native/win32/prebuilds/win32-arm64/win32-console-mode.node +0 -0
  937. package/node_modules/@earendil-works/pi-tui/native/win32/prebuilds/win32-x64/win32-console-mode.node +0 -0
  938. package/node_modules/@earendil-works/pi-tui/package.json +8 -11
  939. package/package.json +13 -8
  940. package/dist/bin/forgecli.d.ts +0 -2
  941. package/dist/bin/forgecli.js +0 -6
  942. package/dist/bin/forgecli.js.map +0 -1
  943. package/node_modules/koffi/CHANGELOG.md +0 -1093
  944. package/node_modules/koffi/LICENSE.txt +0 -22
  945. package/node_modules/koffi/README.md +0 -43
  946. package/node_modules/koffi/build/koffi/darwin_arm64/koffi.node +0 -0
  947. package/node_modules/koffi/build/koffi/darwin_x64/koffi.node +0 -0
  948. package/node_modules/koffi/build/koffi/freebsd_arm64/koffi.node +0 -0
  949. package/node_modules/koffi/build/koffi/freebsd_ia32/koffi.node +0 -0
  950. package/node_modules/koffi/build/koffi/freebsd_x64/koffi.node +0 -0
  951. package/node_modules/koffi/build/koffi/linux_arm64/koffi.node +0 -0
  952. package/node_modules/koffi/build/koffi/linux_armhf/koffi.node +0 -0
  953. package/node_modules/koffi/build/koffi/linux_ia32/koffi.node +0 -0
  954. package/node_modules/koffi/build/koffi/linux_loong64/koffi.node +0 -0
  955. package/node_modules/koffi/build/koffi/linux_riscv64d/koffi.node +0 -0
  956. package/node_modules/koffi/build/koffi/linux_x64/koffi.node +0 -0
  957. package/node_modules/koffi/build/koffi/musl_arm64/koffi.node +0 -0
  958. package/node_modules/koffi/build/koffi/musl_x64/koffi.node +0 -0
  959. package/node_modules/koffi/build/koffi/openbsd_ia32/koffi.node +0 -0
  960. package/node_modules/koffi/build/koffi/openbsd_x64/koffi.node +0 -0
  961. package/node_modules/koffi/build/koffi/win32_arm64/koffi.exp +0 -0
  962. package/node_modules/koffi/build/koffi/win32_arm64/koffi.lib +0 -0
  963. package/node_modules/koffi/build/koffi/win32_arm64/koffi.node +0 -0
  964. package/node_modules/koffi/build/koffi/win32_ia32/koffi.exp +0 -0
  965. package/node_modules/koffi/build/koffi/win32_ia32/koffi.lib +0 -0
  966. package/node_modules/koffi/build/koffi/win32_ia32/koffi.node +0 -0
  967. package/node_modules/koffi/build/koffi/win32_x64/koffi.exp +0 -0
  968. package/node_modules/koffi/build/koffi/win32_x64/koffi.lib +0 -0
  969. package/node_modules/koffi/build/koffi/win32_x64/koffi.node +0 -0
  970. package/node_modules/koffi/doc/benchmarks.md +0 -126
  971. package/node_modules/koffi/doc/callbacks.md +0 -210
  972. package/node_modules/koffi/doc/contribute.md +0 -148
  973. package/node_modules/koffi/doc/functions.md +0 -250
  974. package/node_modules/koffi/doc/index.md +0 -61
  975. package/node_modules/koffi/doc/input.md +0 -471
  976. package/node_modules/koffi/doc/migration.md +0 -159
  977. package/node_modules/koffi/doc/misc.md +0 -180
  978. package/node_modules/koffi/doc/output.md +0 -305
  979. package/node_modules/koffi/doc/packaging.md +0 -88
  980. package/node_modules/koffi/doc/platforms.md +0 -36
  981. package/node_modules/koffi/doc/pointers.md +0 -328
  982. package/node_modules/koffi/doc/start.md +0 -118
  983. package/node_modules/koffi/doc/unions.md +0 -186
  984. package/node_modules/koffi/doc/variables.md +0 -102
  985. package/node_modules/koffi/index.d.ts +0 -288
  986. package/node_modules/koffi/index.js +0 -634
  987. package/node_modules/koffi/indirect.js +0 -533
  988. package/node_modules/koffi/lib/native/base/base.cc +0 -11015
  989. package/node_modules/koffi/lib/native/base/base.hh +0 -6003
  990. package/node_modules/koffi/lib/native/base/crc.inc +0 -2214
  991. package/node_modules/koffi/lib/native/base/crc_gen.py +0 -72
  992. package/node_modules/koffi/lib/native/base/mimetypes.inc +0 -1248
  993. package/node_modules/koffi/lib/native/base/mimetypes_gen.py +0 -58
  994. package/node_modules/koffi/lib/native/base/tower.cc +0 -821
  995. package/node_modules/koffi/lib/native/base/tower.hh +0 -81
  996. package/node_modules/koffi/lib/native/base/unicode.inc +0 -408
  997. package/node_modules/koffi/lib/native/base/unicode_gen.py +0 -152
  998. package/node_modules/koffi/package.json +0 -38
  999. package/node_modules/koffi/src/cnoke/LICENSE.txt +0 -22
  1000. package/node_modules/koffi/src/cnoke/README.md +0 -99
  1001. package/node_modules/koffi/src/cnoke/assets/FindCNoke.cmake +0 -127
  1002. package/node_modules/koffi/src/cnoke/assets/toolchains.json +0 -126
  1003. package/node_modules/koffi/src/cnoke/assets/win_delay_hook.c +0 -36
  1004. package/node_modules/koffi/src/cnoke/cnoke.js +0 -170
  1005. package/node_modules/koffi/src/cnoke/package.json +0 -24
  1006. package/node_modules/koffi/src/cnoke/src/builder.js +0 -511
  1007. package/node_modules/koffi/src/cnoke/src/index.js +0 -10
  1008. package/node_modules/koffi/src/cnoke/src/tools.js +0 -407
  1009. package/node_modules/koffi/src/koffi/CMakeLists.txt +0 -182
  1010. package/node_modules/koffi/src/koffi/src/abi_arm32.cc +0 -1018
  1011. package/node_modules/koffi/src/koffi/src/abi_arm32_asm.S +0 -169
  1012. package/node_modules/koffi/src/koffi/src/abi_arm64.cc +0 -1295
  1013. package/node_modules/koffi/src/koffi/src/abi_arm64_asm.S +0 -195
  1014. package/node_modules/koffi/src/koffi/src/abi_arm64_asm.asm +0 -174
  1015. package/node_modules/koffi/src/koffi/src/abi_loong64.cc +0 -5
  1016. package/node_modules/koffi/src/koffi/src/abi_loong64_asm.S +0 -204
  1017. package/node_modules/koffi/src/koffi/src/abi_riscv64.cc +0 -915
  1018. package/node_modules/koffi/src/koffi/src/abi_riscv64_asm.S +0 -203
  1019. package/node_modules/koffi/src/koffi/src/abi_x64_sysv.cc +0 -939
  1020. package/node_modules/koffi/src/koffi/src/abi_x64_sysv_asm.S +0 -231
  1021. package/node_modules/koffi/src/koffi/src/abi_x64_win.cc +0 -715
  1022. package/node_modules/koffi/src/koffi/src/abi_x64_win_asm.S +0 -166
  1023. package/node_modules/koffi/src/koffi/src/abi_x64_win_asm.asm +0 -192
  1024. package/node_modules/koffi/src/koffi/src/abi_x86.cc +0 -860
  1025. package/node_modules/koffi/src/koffi/src/abi_x86_asm.S +0 -193
  1026. package/node_modules/koffi/src/koffi/src/abi_x86_asm.asm +0 -177
  1027. package/node_modules/koffi/src/koffi/src/call.cc +0 -1326
  1028. package/node_modules/koffi/src/koffi/src/call.hh +0 -179
  1029. package/node_modules/koffi/src/koffi/src/errno.inc +0 -462
  1030. package/node_modules/koffi/src/koffi/src/ffi.cc +0 -2702
  1031. package/node_modules/koffi/src/koffi/src/ffi.hh +0 -354
  1032. package/node_modules/koffi/src/koffi/src/init.js +0 -105
  1033. package/node_modules/koffi/src/koffi/src/parser.cc +0 -220
  1034. package/node_modules/koffi/src/koffi/src/parser.hh +0 -54
  1035. package/node_modules/koffi/src/koffi/src/util.cc +0 -1807
  1036. package/node_modules/koffi/src/koffi/src/util.hh +0 -221
  1037. package/node_modules/koffi/src/koffi/src/uv.cc +0 -193
  1038. package/node_modules/koffi/src/koffi/src/uv.def +0 -10
  1039. package/node_modules/koffi/src/koffi/src/uv.hh +0 -40
  1040. package/node_modules/koffi/src/koffi/src/win32.cc +0 -198
  1041. package/node_modules/koffi/src/koffi/src/win32.hh +0 -119
  1042. package/node_modules/koffi/src/koffi/tools/write_trampolines.js +0 -77
  1043. package/node_modules/koffi/vendor/node-addon-api/LICENSE.md +0 -9
  1044. package/node_modules/koffi/vendor/node-addon-api/README.md +0 -95
  1045. package/node_modules/koffi/vendor/node-addon-api/napi-inl.deprecated.h +0 -186
  1046. package/node_modules/koffi/vendor/node-addon-api/napi-inl.h +0 -7033
  1047. package/node_modules/koffi/vendor/node-addon-api/napi.h +0 -3309
  1048. package/node_modules/koffi/vendor/node-api-headers/LICENSE +0 -21
  1049. package/node_modules/koffi/vendor/node-api-headers/README.md +0 -95
  1050. package/node_modules/koffi/vendor/node-api-headers/def/js_native_api.def +0 -125
  1051. package/node_modules/koffi/vendor/node-api-headers/def/node_api.def +0 -157
  1052. package/node_modules/koffi/vendor/node-api-headers/include/js_native_api.h +0 -591
  1053. package/node_modules/koffi/vendor/node-api-headers/include/js_native_api_types.h +0 -210
  1054. package/node_modules/koffi/vendor/node-api-headers/include/node_api.h +0 -265
  1055. package/node_modules/koffi/vendor/node-api-headers/include/node_api_types.h +0 -58
  1056. package/node_modules/koffi/vendor/node-api-headers/include/uv/aix.h +0 -32
  1057. package/node_modules/koffi/vendor/node-api-headers/include/uv/bsd.h +0 -34
  1058. package/node_modules/koffi/vendor/node-api-headers/include/uv/darwin.h +0 -61
  1059. package/node_modules/koffi/vendor/node-api-headers/include/uv/errno.h +0 -483
  1060. package/node_modules/koffi/vendor/node-api-headers/include/uv/linux.h +0 -34
  1061. package/node_modules/koffi/vendor/node-api-headers/include/uv/os390.h +0 -33
  1062. package/node_modules/koffi/vendor/node-api-headers/include/uv/posix.h +0 -31
  1063. package/node_modules/koffi/vendor/node-api-headers/include/uv/sunos.h +0 -44
  1064. package/node_modules/koffi/vendor/node-api-headers/include/uv/threadpool.h +0 -37
  1065. package/node_modules/koffi/vendor/node-api-headers/include/uv/tree.h +0 -521
  1066. package/node_modules/koffi/vendor/node-api-headers/include/uv/unix.h +0 -512
  1067. package/node_modules/koffi/vendor/node-api-headers/include/uv/version.h +0 -43
  1068. package/node_modules/koffi/vendor/node-api-headers/include/uv/win.h +0 -698
  1069. package/node_modules/koffi/vendor/node-api-headers/include/uv.h +0 -1990
@@ -13,10 +13,11 @@
13
13
  * Modes use this class and add their own I/O layer on top.
14
14
  */
15
15
  import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
16
- import { basename, dirname, resolve } from "node:path";
16
+ import { basename, dirname } from "node:path";
17
17
  import { clampThinkingLevel, cleanupSessionResources, getSupportedThinkingLevels, isContextOverflow, modelsAreEqual, resetApiProviders, streamSimple, } from "@earendil-works/pi-ai";
18
18
  import { theme } from "../modes/interactive/theme/theme.js";
19
19
  import { stripFrontmatter } from "../utils/frontmatter.js";
20
+ import { resolvePath } from "../utils/paths.js";
20
21
  import { sleep } from "../utils/sleep.js";
21
22
  import { formatNoApiKeyFoundMessage, formatNoModelSelectedMessage } from "./auth-guidance.js";
22
23
  import { executeBashWithOperations } from "./bash-executor.js";
@@ -64,7 +65,6 @@ export class AgentSession {
64
65
  // Event subscription state
65
66
  _unsubscribeAgent;
66
67
  _eventListeners = [];
67
- _agentEventQueue = Promise.resolve();
68
68
  /** Tracks pending steering messages for UI display. Removed when delivered. */
69
69
  _steeringMessages = [];
70
70
  /** Tracks pending follow-up messages for UI display. Removed when delivered. */
@@ -80,8 +80,6 @@ export class AgentSession {
80
80
  // Retry state
81
81
  _retryAbortController = undefined;
82
82
  _retryAttempt = 0;
83
- _retryPromise = undefined;
84
- _retryResolve = undefined;
85
83
  // Bash execution state
86
84
  _bashAbortController = undefined;
87
85
  _pendingBashMessages = [];
@@ -99,6 +97,7 @@ export class AgentSession {
99
97
  _sessionStartEvent;
100
98
  _extensionUIContext;
101
99
  _extensionCommandContextActions;
100
+ _extensionAbortHandler;
102
101
  _extensionShutdownHandler;
103
102
  _extensionErrorListener;
104
103
  _extensionErrorUnsubscriber;
@@ -179,7 +178,6 @@ export class AgentSession {
179
178
  if (!runner.hasHandlers("tool_call")) {
180
179
  return undefined;
181
180
  }
182
- await this._agentEventQueue;
183
181
  try {
184
182
  return await runner.emitToolCall({
185
183
  type: "tool_call",
@@ -238,43 +236,7 @@ export class AgentSession {
238
236
  // Track last assistant message for auto-compaction check
239
237
  _lastAssistantMessage = undefined;
240
238
  /** Internal handler for agent events - shared by subscribe and reconnect */
241
- _handleAgentEvent = (event) => {
242
- // Create retry promise synchronously before queueing async processing.
243
- // Agent.emit() calls this handler synchronously, and prompt() calls waitForRetry()
244
- // as soon as agent.prompt() resolves. If _retryPromise is created only inside
245
- // _processAgentEvent, slow earlier queued events can delay agent_end processing
246
- // and waitForRetry() can miss the in-flight retry.
247
- this._createRetryPromiseForAgentEnd(event);
248
- this._agentEventQueue = this._agentEventQueue.then(() => this._processAgentEvent(event), () => this._processAgentEvent(event));
249
- // Keep queue alive if an event handler fails
250
- this._agentEventQueue.catch(() => { });
251
- };
252
- _createRetryPromiseForAgentEnd(event) {
253
- if (event.type !== "agent_end" || this._retryPromise) {
254
- return;
255
- }
256
- const settings = this.settingsManager.getRetrySettings();
257
- if (!settings.enabled) {
258
- return;
259
- }
260
- const lastAssistant = this._findLastAssistantInMessages(event.messages);
261
- if (!lastAssistant || !this._isRetryableError(lastAssistant)) {
262
- return;
263
- }
264
- this._retryPromise = new Promise((resolve) => {
265
- this._retryResolve = resolve;
266
- });
267
- }
268
- _findLastAssistantInMessages(messages) {
269
- for (let i = messages.length - 1; i >= 0; i--) {
270
- const message = messages[i];
271
- if (message.role === "assistant") {
272
- return message;
273
- }
274
- }
275
- return undefined;
276
- }
277
- async _processAgentEvent(event) {
239
+ _handleAgentEvent = async (event) => {
278
240
  // When a user message starts, check if it's from either queue and remove it BEFORE emitting
279
241
  // This ensures the UI sees the updated queue state
280
242
  if (event.type === "message_start" && event.message.role === "user") {
@@ -300,7 +262,7 @@ export class AgentSession {
300
262
  // Emit to extensions first
301
263
  await this._emitExtensionEvent(event);
302
264
  // Notify all listeners
303
- this._emit(event);
265
+ this._emit(event.type === "agent_end" ? { ...event, willRetry: this._willRetryAfterAgentEnd(event) } : event);
304
266
  // Handle session persistence
305
267
  if (event.type === "message_end") {
306
268
  // Check if this is a custom message from extensions
@@ -334,27 +296,19 @@ export class AgentSession {
334
296
  }
335
297
  }
336
298
  }
337
- // Check auto-retry and auto-compaction after agent completes
338
- if (event.type === "agent_end" && this._lastAssistantMessage) {
339
- const msg = this._lastAssistantMessage;
340
- this._lastAssistantMessage = undefined;
341
- // Check for retryable errors first (overloaded, rate limit, server errors)
342
- if (this._isRetryableError(msg)) {
343
- const didRetry = await this._handleRetryableError(msg);
344
- if (didRetry)
345
- return; // Retry was initiated, don't proceed to compaction
346
- }
347
- this._resolveRetry();
348
- await this._checkCompaction(msg);
299
+ };
300
+ _willRetryAfterAgentEnd(event) {
301
+ const settings = this.settingsManager.getRetrySettings();
302
+ if (!settings.enabled || this._retryAttempt >= settings.maxRetries) {
303
+ return false;
349
304
  }
350
- }
351
- /** Resolve the pending retry promise */
352
- _resolveRetry() {
353
- if (this._retryResolve) {
354
- this._retryResolve();
355
- this._retryResolve = undefined;
356
- this._retryPromise = undefined;
305
+ for (let i = event.messages.length - 1; i >= 0; i--) {
306
+ const message = event.messages[i];
307
+ if (message.role === "assistant") {
308
+ return this._isRetryableError(message);
309
+ }
357
310
  }
311
+ return false;
358
312
  }
359
313
  /** Extract text content from a message */
360
314
  _getUserMessageText(message) {
@@ -379,7 +333,7 @@ export class AgentSession {
379
333
  }
380
334
  _replaceMessageInPlace(target, replacement) {
381
335
  // Agent-core stores the finalized message object in its state before emitting message_end.
382
- // SessionManager persistence happens later in _processAgentEvent() with event.message.
336
+ // SessionManager persistence happens later in _handleAgentEvent() with event.message.
383
337
  // Mutating this object in place keeps agent state, later turn/agent events, listeners,
384
338
  // and the eventual SessionManager.appendMessage(event.message) persistence in sync.
385
339
  if (target === replacement) {
@@ -685,6 +639,37 @@ export class AgentSession {
685
639
  // =========================================================================
686
640
  // Prompting
687
641
  // =========================================================================
642
+ async _runAgentPrompt(messages) {
643
+ try {
644
+ await this.agent.prompt(messages);
645
+ while (await this._handlePostAgentRun()) {
646
+ await this.agent.continue();
647
+ }
648
+ }
649
+ finally {
650
+ this._flushPendingBashMessages();
651
+ }
652
+ }
653
+ async _handlePostAgentRun() {
654
+ const msg = this._lastAssistantMessage;
655
+ this._lastAssistantMessage = undefined;
656
+ if (!msg) {
657
+ return false;
658
+ }
659
+ if (this._isRetryableError(msg) && (await this._prepareRetry(msg))) {
660
+ return true;
661
+ }
662
+ if (msg.stopReason === "error" && this._retryAttempt > 0) {
663
+ this._emit({
664
+ type: "auto_retry_end",
665
+ success: false,
666
+ attempt: this._retryAttempt,
667
+ finalError: msg.errorMessage,
668
+ });
669
+ this._retryAttempt = 0;
670
+ }
671
+ return await this._checkCompaction(msg);
672
+ }
688
673
  /**
689
674
  * Send a prompt to the agent.
690
675
  * - Handles extension commands (registered via pi.registerCommand) immediately, even during streaming
@@ -760,8 +745,16 @@ export class AgentSession {
760
745
  }
761
746
  // Check if we need to compact before sending (catches aborted responses)
762
747
  const lastAssistant = this._findLastAssistantMessage();
763
- if (lastAssistant) {
764
- await this._checkCompaction(lastAssistant, false);
748
+ if (lastAssistant && (await this._checkCompaction(lastAssistant, false))) {
749
+ try {
750
+ await this.agent.continue();
751
+ while (await this._handlePostAgentRun()) {
752
+ await this.agent.continue();
753
+ }
754
+ }
755
+ finally {
756
+ this._flushPendingBashMessages();
757
+ }
765
758
  }
766
759
  // Build messages array (custom message if any, then user message)
767
760
  messages = [];
@@ -812,8 +805,7 @@ export class AgentSession {
812
805
  return;
813
806
  }
814
807
  preflightResult?.(true);
815
- await this.agent.prompt(messages);
816
- await this.waitForRetry();
808
+ await this._runAgentPrompt(messages);
817
809
  }
818
810
  /**
819
811
  * Try to execute an extension command. Returns true if command was found and executed.
@@ -983,7 +975,7 @@ export class AgentSession {
983
975
  }
984
976
  }
985
977
  else if (options?.triggerTurn) {
986
- await this.agent.prompt(appMessage);
978
+ await this._runAgentPrompt(appMessage);
987
979
  }
988
980
  else {
989
981
  this.agent.state.messages.push(appMessage);
@@ -1383,10 +1375,10 @@ export class AgentSession {
1383
1375
  async _checkCompaction(assistantMessage, skipAbortedCheck = true) {
1384
1376
  const settings = this.settingsManager.getCompactionSettings();
1385
1377
  if (!settings.enabled)
1386
- return;
1378
+ return false;
1387
1379
  // Skip if message was aborted (user cancelled) - unless skipAbortedCheck is false
1388
1380
  if (skipAbortedCheck && assistantMessage.stopReason === "aborted")
1389
- return;
1381
+ return false;
1390
1382
  const contextWindow = this.model?.contextWindow ?? 0;
1391
1383
  // Skip overflow check if the message came from a different model.
1392
1384
  // This handles the case where user switched from a smaller-context model (e.g. opus)
@@ -1399,7 +1391,7 @@ export class AgentSession {
1399
1391
  const compactionEntry = getLatestCompactionEntry(this.sessionManager.getBranch());
1400
1392
  const assistantIsFromBeforeCompaction = compactionEntry !== null && assistantMessage.timestamp <= new Date(compactionEntry.timestamp).getTime();
1401
1393
  if (assistantIsFromBeforeCompaction) {
1402
- return;
1394
+ return false;
1403
1395
  }
1404
1396
  // Case 1: Overflow - LLM returned context overflow error
1405
1397
  if (sameModel && isContextOverflow(assistantMessage, contextWindow)) {
@@ -1412,7 +1404,7 @@ export class AgentSession {
1412
1404
  willRetry: false,
1413
1405
  errorMessage: "Context overflow recovery failed after one compact-and-retry attempt. Try reducing context or switching to a larger-context model.",
1414
1406
  });
1415
- return;
1407
+ return false;
1416
1408
  }
1417
1409
  this._overflowRecoveryAttempted = true;
1418
1410
  // Remove the error message from agent state (it IS saved to session for history,
@@ -1421,8 +1413,7 @@ export class AgentSession {
1421
1413
  if (messages.length > 0 && messages[messages.length - 1].role === "assistant") {
1422
1414
  this.agent.state.messages = messages.slice(0, -1);
1423
1415
  }
1424
- await this._runAutoCompaction("overflow", true);
1425
- return;
1416
+ return await this._runAutoCompaction("overflow", true);
1426
1417
  }
1427
1418
  // Case 2: Threshold - context is getting large
1428
1419
  // For error messages (no usage data), estimate from last successful response.
@@ -1432,7 +1423,7 @@ export class AgentSession {
1432
1423
  const messages = this.agent.state.messages;
1433
1424
  const estimate = estimateContextTokens(messages);
1434
1425
  if (estimate.lastUsageIndex === null)
1435
- return; // No usage data at all
1426
+ return false; // No usage data at all
1436
1427
  // Verify the usage source is post-compaction. Kept pre-compaction messages
1437
1428
  // have stale usage reflecting the old (larger) context and would falsely
1438
1429
  // trigger compaction right after one just finished.
@@ -1440,7 +1431,7 @@ export class AgentSession {
1440
1431
  if (compactionEntry &&
1441
1432
  usageMsg.role === "assistant" &&
1442
1433
  usageMsg.timestamp <= new Date(compactionEntry.timestamp).getTime()) {
1443
- return;
1434
+ return false;
1444
1435
  }
1445
1436
  contextTokens = estimate.tokens;
1446
1437
  }
@@ -1448,8 +1439,9 @@ export class AgentSession {
1448
1439
  contextTokens = calculateContextTokens(assistantMessage.usage);
1449
1440
  }
1450
1441
  if (shouldCompact(contextTokens, contextWindow, settings)) {
1451
- await this._runAutoCompaction("threshold", false);
1442
+ return await this._runAutoCompaction("threshold", false);
1452
1443
  }
1444
+ return false;
1453
1445
  }
1454
1446
  /**
1455
1447
  * Internal: Run auto-compaction with events.
@@ -1467,7 +1459,7 @@ export class AgentSession {
1467
1459
  aborted: false,
1468
1460
  willRetry: false,
1469
1461
  });
1470
- return;
1462
+ return false;
1471
1463
  }
1472
1464
  let apiKey;
1473
1465
  let headers;
@@ -1481,7 +1473,7 @@ export class AgentSession {
1481
1473
  aborted: false,
1482
1474
  willRetry: false,
1483
1475
  });
1484
- return;
1476
+ return false;
1485
1477
  }
1486
1478
  apiKey = authResult.apiKey;
1487
1479
  headers = authResult.headers;
@@ -1499,7 +1491,7 @@ export class AgentSession {
1499
1491
  aborted: false,
1500
1492
  willRetry: false,
1501
1493
  });
1502
- return;
1494
+ return false;
1503
1495
  }
1504
1496
  let extensionCompaction;
1505
1497
  let fromExtension = false;
@@ -1519,7 +1511,7 @@ export class AgentSession {
1519
1511
  aborted: true,
1520
1512
  willRetry: false,
1521
1513
  });
1522
- return;
1514
+ return false;
1523
1515
  }
1524
1516
  if (extensionResult?.compaction) {
1525
1517
  extensionCompaction = extensionResult.compaction;
@@ -1553,7 +1545,7 @@ export class AgentSession {
1553
1545
  aborted: true,
1554
1546
  willRetry: false,
1555
1547
  });
1556
- return;
1548
+ return false;
1557
1549
  }
1558
1550
  this.sessionManager.appendCompaction(summary, firstKeptEntryId, tokensBefore, details, fromExtension);
1559
1551
  const newEntries = this.sessionManager.getEntries();
@@ -1581,17 +1573,11 @@ export class AgentSession {
1581
1573
  if (lastMsg?.role === "assistant" && lastMsg.stopReason === "error") {
1582
1574
  this.agent.state.messages = messages.slice(0, -1);
1583
1575
  }
1584
- setTimeout(() => {
1585
- this.agent.continue().catch(() => { });
1586
- }, 100);
1587
- }
1588
- else if (this.agent.hasQueuedMessages()) {
1589
- // Auto-compaction can complete while follow-up/steering/custom messages are waiting.
1590
- // Kick the loop so queued messages are actually delivered.
1591
- setTimeout(() => {
1592
- this.agent.continue().catch(() => { });
1593
- }, 100);
1576
+ return true;
1594
1577
  }
1578
+ // Auto-compaction can complete while follow-up/steering/custom messages are waiting.
1579
+ // Continue once so queued messages are delivered.
1580
+ return this.agent.hasQueuedMessages();
1595
1581
  }
1596
1582
  catch (error) {
1597
1583
  const errorMessage = error instanceof Error ? error.message : "compaction failed";
@@ -1605,6 +1591,7 @@ export class AgentSession {
1605
1591
  ? `Context overflow recovery failed: ${errorMessage}`
1606
1592
  : `Auto-compaction failed: ${errorMessage}`,
1607
1593
  });
1594
+ return false;
1608
1595
  }
1609
1596
  finally {
1610
1597
  this._autoCompactionAbortController = undefined;
@@ -1627,6 +1614,9 @@ export class AgentSession {
1627
1614
  if (bindings.commandContextActions !== undefined) {
1628
1615
  this._extensionCommandContextActions = bindings.commandContextActions;
1629
1616
  }
1617
+ if (bindings.abortHandler !== undefined) {
1618
+ this._extensionAbortHandler = bindings.abortHandler;
1619
+ }
1630
1620
  if (bindings.shutdownHandler !== undefined) {
1631
1621
  this._extensionShutdownHandler = bindings.shutdownHandler;
1632
1622
  }
@@ -1766,7 +1756,13 @@ export class AgentSession {
1766
1756
  getModel: () => this.model,
1767
1757
  isIdle: () => !this.isStreaming,
1768
1758
  getSignal: () => this.agent.signal,
1769
- abort: () => this.abort(),
1759
+ abort: () => {
1760
+ if (this._extensionAbortHandler) {
1761
+ this._extensionAbortHandler();
1762
+ return;
1763
+ }
1764
+ void this.abort();
1765
+ },
1770
1766
  hasPendingMessages: () => this.pendingMessageCount > 0,
1771
1767
  shutdown: () => {
1772
1768
  this._extensionShutdownHandler?.();
@@ -1946,33 +1942,18 @@ export class AgentSession {
1946
1942
  return /overloaded|provider.?returned.?error|rate.?limit|too many requests|429|500|502|503|504|service.?unavailable|server.?error|internal.?error|network.?error|connection.?error|connection.?refused|connection.?lost|websocket.?closed|websocket.?error|other side closed|fetch failed|upstream.?connect|reset before headers|socket hang up|ended without|stream ended before message_stop|http2 request did not get a response|timed? out|timeout|terminated|retry delay/i.test(err);
1947
1943
  }
1948
1944
  /**
1949
- * Handle retryable errors with exponential backoff.
1950
- * @returns true if retry was initiated, false if max retries exceeded or disabled
1945
+ * Prepare a retryable error for continuation with exponential backoff.
1946
+ * @returns true if the caller should continue the agent, false otherwise
1951
1947
  */
1952
- async _handleRetryableError(message) {
1948
+ async _prepareRetry(message) {
1953
1949
  const settings = this.settingsManager.getRetrySettings();
1954
1950
  if (!settings.enabled) {
1955
- this._resolveRetry();
1956
1951
  return false;
1957
1952
  }
1958
- // Retry promise is created synchronously in _handleAgentEvent for agent_end.
1959
- // Keep a defensive fallback here in case a future refactor bypasses that path.
1960
- if (!this._retryPromise) {
1961
- this._retryPromise = new Promise((resolve) => {
1962
- this._retryResolve = resolve;
1963
- });
1964
- }
1965
1953
  this._retryAttempt++;
1966
1954
  if (this._retryAttempt > settings.maxRetries) {
1967
- // Max retries exceeded, emit final failure and reset
1968
- this._emit({
1969
- type: "auto_retry_end",
1970
- success: false,
1971
- attempt: this._retryAttempt - 1,
1972
- finalError: message.errorMessage,
1973
- });
1974
- this._retryAttempt = 0;
1975
- this._resolveRetry(); // Resolve so waitForRetry() completes
1955
+ // Preserve the completed attempt count so post-run handling can emit the final failure.
1956
+ this._retryAttempt--;
1976
1957
  return false;
1977
1958
  }
1978
1959
  const delayMs = settings.baseDelayMs * 2 ** (this._retryAttempt - 1);
@@ -1997,23 +1978,17 @@ export class AgentSession {
1997
1978
  // Aborted during sleep - emit end event so UI can clean up
1998
1979
  const attempt = this._retryAttempt;
1999
1980
  this._retryAttempt = 0;
2000
- this._retryAbortController = undefined;
2001
1981
  this._emit({
2002
1982
  type: "auto_retry_end",
2003
1983
  success: false,
2004
1984
  attempt,
2005
1985
  finalError: "Retry cancelled",
2006
1986
  });
2007
- this._resolveRetry();
2008
1987
  return false;
2009
1988
  }
2010
- this._retryAbortController = undefined;
2011
- // Retry via continue() - use setTimeout to break out of event handler chain
2012
- setTimeout(() => {
2013
- this.agent.continue().catch(() => {
2014
- // Retry failed - will be caught by next agent_end
2015
- });
2016
- }, 0);
1989
+ finally {
1990
+ this._retryAbortController = undefined;
1991
+ }
2017
1992
  return true;
2018
1993
  }
2019
1994
  /**
@@ -2021,23 +1996,10 @@ export class AgentSession {
2021
1996
  */
2022
1997
  abortRetry() {
2023
1998
  this._retryAbortController?.abort();
2024
- // Note: _retryAttempt is reset in the catch block of _autoRetry
2025
- this._resolveRetry();
2026
- }
2027
- /**
2028
- * Wait for any in-progress retry to complete.
2029
- * Returns immediately if no retry is in progress.
2030
- */
2031
- async waitForRetry() {
2032
- if (!this._retryPromise) {
2033
- return;
2034
- }
2035
- await this._retryPromise;
2036
- await this.agent.waitForIdle();
2037
1999
  }
2038
2000
  /** Whether auto-retry is currently in progress */
2039
2001
  get isRetrying() {
2040
- return this._retryPromise !== undefined;
2002
+ return this._retryAbortController !== undefined;
2041
2003
  }
2042
2004
  /** Whether auto-retry is enabled */
2043
2005
  get autoRetryEnabled() {
@@ -2456,7 +2418,7 @@ export class AgentSession {
2456
2418
  * @returns The resolved output file path.
2457
2419
  */
2458
2420
  exportToJsonl(outputPath) {
2459
- const filePath = resolve(outputPath ?? `session-${new Date().toISOString().replace(/[:.]/g, "-")}.jsonl`);
2421
+ const filePath = resolvePath(outputPath ?? `session-${new Date().toISOString().replace(/[:.]/g, "-")}.jsonl`, process.cwd());
2460
2422
  const dir = dirname(filePath);
2461
2423
  if (!existsSync(dir)) {
2462
2424
  mkdirSync(dir, { recursive: true });