@ai-agent-forge/agent-forge 0.86.6 → 0.87.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 (665) hide show
  1. package/CHANGELOG.md +19 -1
  2. package/README.md +8 -9
  3. package/dist/artifacts/artifact-store.d.ts.map +1 -1
  4. package/dist/artifacts/artifact-store.js +9 -5
  5. package/dist/artifacts/artifact-store.js.map +1 -1
  6. package/dist/bundle/.build-manifest.json +410 -371
  7. package/dist/bundle/chunks/{chunk-A7GUOX2H.js → chunk-6ZKDNZHA.js} +5 -1
  8. package/dist/bundle/chunks/chunk-BFC2BDVJ.js +13 -0
  9. package/dist/bundle/chunks/chunk-MOHOLL3F.js +1456 -0
  10. package/dist/bundle/chunks/image-resize-worker.js +12 -1
  11. package/dist/bundle/chunks/{virtual-modules-3IZ4MYSQ.js → virtual-modules-KZ5DRH7Q.js} +1 -1
  12. package/dist/bundle/cli.js +1 -1
  13. package/dist/bundle/client.js +1 -1
  14. package/dist/bundle/index.js +2 -2
  15. package/dist/bundle/rpc-entry.js +1 -1
  16. package/dist/cli/args.d.ts.map +1 -1
  17. package/dist/cli/args.js +231 -185
  18. package/dist/cli/args.js.map +1 -1
  19. package/dist/cli/auth-check.d.ts.map +1 -1
  20. package/dist/cli/auth-check.js +3 -2
  21. package/dist/cli/auth-check.js.map +1 -1
  22. package/dist/cli/auth-command.d.ts.map +1 -1
  23. package/dist/cli/auth-command.js +15 -9
  24. package/dist/cli/auth-command.js.map +1 -1
  25. package/dist/cli/credential-print.d.ts.map +1 -1
  26. package/dist/cli/credential-print.js +14 -7
  27. package/dist/cli/credential-print.js.map +1 -1
  28. package/dist/cli/experimental/command.d.ts.map +1 -1
  29. package/dist/cli/experimental/command.js +6 -5
  30. package/dist/cli/experimental/command.js.map +1 -1
  31. package/dist/cli/list-models.d.ts.map +1 -1
  32. package/dist/cli/list-models.js +9 -8
  33. package/dist/cli/list-models.js.map +1 -1
  34. package/dist/cli/plugin-manager-controller.d.ts.map +1 -1
  35. package/dist/cli/plugin-manager-controller.js +2 -1
  36. package/dist/cli/plugin-manager-controller.js.map +1 -1
  37. package/dist/cli/serve.d.ts.map +1 -1
  38. package/dist/cli/serve.js +8 -5
  39. package/dist/cli/serve.js.map +1 -1
  40. package/dist/client/remote-session.d.ts.map +1 -1
  41. package/dist/client/remote-session.js +16 -9
  42. package/dist/client/remote-session.js.map +1 -1
  43. package/dist/config.d.ts.map +1 -1
  44. package/dist/config.js +2 -1
  45. package/dist/config.js.map +1 -1
  46. package/dist/core/agent-capability-contract.d.ts +0 -7
  47. package/dist/core/agent-capability-contract.d.ts.map +1 -1
  48. package/dist/core/agent-capability-contract.js +72 -68
  49. package/dist/core/agent-capability-contract.js.map +1 -1
  50. package/dist/core/agent-session-bash.d.ts.map +1 -1
  51. package/dist/core/agent-session-bash.js +5 -4
  52. package/dist/core/agent-session-bash.js.map +1 -1
  53. package/dist/core/agent-session-compaction.d.ts.map +1 -1
  54. package/dist/core/agent-session-compaction.js +28 -22
  55. package/dist/core/agent-session-compaction.js.map +1 -1
  56. package/dist/core/agent-session-context.d.ts.map +1 -1
  57. package/dist/core/agent-session-context.js +18 -13
  58. package/dist/core/agent-session-context.js.map +1 -1
  59. package/dist/core/agent-session-model.d.ts.map +1 -1
  60. package/dist/core/agent-session-model.js +2 -1
  61. package/dist/core/agent-session-model.js.map +1 -1
  62. package/dist/core/agent-session-retry.d.ts.map +1 -1
  63. package/dist/core/agent-session-retry.js +3 -2
  64. package/dist/core/agent-session-retry.js.map +1 -1
  65. package/dist/core/agent-session-runtime.d.ts.map +1 -1
  66. package/dist/core/agent-session-runtime.js +7 -6
  67. package/dist/core/agent-session-runtime.js.map +1 -1
  68. package/dist/core/agent-session-services.d.ts +1 -1
  69. package/dist/core/agent-session-services.d.ts.map +1 -1
  70. package/dist/core/agent-session-services.js.map +1 -1
  71. package/dist/core/agent-session-tools.d.ts.map +1 -1
  72. package/dist/core/agent-session-tools.js +3 -2
  73. package/dist/core/agent-session-tools.js.map +1 -1
  74. package/dist/core/agent-session.d.ts +40 -2
  75. package/dist/core/agent-session.d.ts.map +1 -1
  76. package/dist/core/agent-session.js +142 -34
  77. package/dist/core/agent-session.js.map +1 -1
  78. package/dist/core/auth-guidance.d.ts.map +1 -1
  79. package/dist/core/auth-guidance.js +11 -5
  80. package/dist/core/auth-guidance.js.map +1 -1
  81. package/dist/core/auth-storage.d.ts.map +1 -1
  82. package/dist/core/auth-storage.js +9 -6
  83. package/dist/core/auth-storage.js.map +1 -1
  84. package/dist/core/compaction/compaction.d.ts.map +1 -1
  85. package/dist/core/compaction/compaction.js +2 -1
  86. package/dist/core/compaction/compaction.js.map +1 -1
  87. package/dist/core/embedded-sdk.d.ts.map +1 -1
  88. package/dist/core/embedded-sdk.js +10 -6
  89. package/dist/core/embedded-sdk.js.map +1 -1
  90. package/dist/core/export-html/index.d.ts.map +1 -1
  91. package/dist/core/export-html/index.js +9 -4
  92. package/dist/core/export-html/index.js.map +1 -1
  93. package/dist/core/extensions/agent-composition.d.ts.map +1 -1
  94. package/dist/core/extensions/agent-composition.js +26 -19
  95. package/dist/core/extensions/agent-composition.js.map +1 -1
  96. package/dist/core/extensions/bootstrap-agent-loop.d.ts.map +1 -1
  97. package/dist/core/extensions/bootstrap-agent-loop.js +3 -2
  98. package/dist/core/extensions/bootstrap-agent-loop.js.map +1 -1
  99. package/dist/core/extensions/bootstrap-lifecycle.d.ts.map +1 -1
  100. package/dist/core/extensions/bootstrap-lifecycle.js +20 -17
  101. package/dist/core/extensions/bootstrap-lifecycle.js.map +1 -1
  102. package/dist/core/extensions/bootstrap-overflow-policy.d.ts.map +1 -1
  103. package/dist/core/extensions/bootstrap-overflow-policy.js +2 -1
  104. package/dist/core/extensions/bootstrap-overflow-policy.js.map +1 -1
  105. package/dist/core/extensions/bootstrap-retry-policy.d.ts.map +1 -1
  106. package/dist/core/extensions/bootstrap-retry-policy.js +2 -1
  107. package/dist/core/extensions/bootstrap-retry-policy.js.map +1 -1
  108. package/dist/core/extensions/bootstrap-skills.d.ts.map +1 -1
  109. package/dist/core/extensions/bootstrap-skills.js +7 -6
  110. package/dist/core/extensions/bootstrap-skills.js.map +1 -1
  111. package/dist/core/extensions/bootstrap-tools.d.ts.map +1 -1
  112. package/dist/core/extensions/bootstrap-tools.js +2 -1
  113. package/dist/core/extensions/bootstrap-tools.js.map +1 -1
  114. package/dist/core/extensions/capability-plugin.d.ts.map +1 -1
  115. package/dist/core/extensions/capability-plugin.js +37 -13
  116. package/dist/core/extensions/capability-plugin.js.map +1 -1
  117. package/dist/core/extensions/capability-runtime-events.d.ts.map +1 -1
  118. package/dist/core/extensions/capability-runtime-events.js +17 -13
  119. package/dist/core/extensions/capability-runtime-events.js.map +1 -1
  120. package/dist/core/extensions/capability-runtime-guards.d.ts.map +1 -1
  121. package/dist/core/extensions/capability-runtime-guards.js +16 -15
  122. package/dist/core/extensions/capability-runtime-guards.js.map +1 -1
  123. package/dist/core/extensions/capability-runtime-manifest.d.ts.map +1 -1
  124. package/dist/core/extensions/capability-runtime-manifest.js +52 -30
  125. package/dist/core/extensions/capability-runtime-manifest.js.map +1 -1
  126. package/dist/core/extensions/capability-runtime-validation.d.ts.map +1 -1
  127. package/dist/core/extensions/capability-runtime-validation.js +66 -65
  128. package/dist/core/extensions/capability-runtime-validation.js.map +1 -1
  129. package/dist/core/extensions/capability-runtime.d.ts.map +1 -1
  130. package/dist/core/extensions/capability-runtime.js +147 -127
  131. package/dist/core/extensions/capability-runtime.js.map +1 -1
  132. package/dist/core/extensions/compaction-memory-failure-mode.d.ts.map +1 -1
  133. package/dist/core/extensions/compaction-memory-failure-mode.js +3 -2
  134. package/dist/core/extensions/compaction-memory-failure-mode.js.map +1 -1
  135. package/dist/core/extensions/context-strategy-binding.d.ts.map +1 -1
  136. package/dist/core/extensions/context-strategy-binding.js +7 -4
  137. package/dist/core/extensions/context-strategy-binding.js.map +1 -1
  138. package/dist/core/extensions/lifecycle-catalog.d.ts.map +1 -1
  139. package/dist/core/extensions/lifecycle-catalog.js +290 -279
  140. package/dist/core/extensions/lifecycle-catalog.js.map +1 -1
  141. package/dist/core/extensions/lifecycle-delivery-queue.d.ts.map +1 -1
  142. package/dist/core/extensions/lifecycle-delivery-queue.js +3 -2
  143. package/dist/core/extensions/lifecycle-delivery-queue.js.map +1 -1
  144. package/dist/core/facade/coding-agent-facade.d.ts +6 -0
  145. package/dist/core/facade/coding-agent-facade.d.ts.map +1 -1
  146. package/dist/core/facade/coding-agent-facade.js +2 -0
  147. package/dist/core/facade/coding-agent-facade.js.map +1 -1
  148. package/dist/core/http-dispatcher.d.ts.map +1 -1
  149. package/dist/core/http-dispatcher.js +2 -1
  150. package/dist/core/http-dispatcher.js.map +1 -1
  151. package/dist/core/i18n/index.d.ts +14 -0
  152. package/dist/core/i18n/index.d.ts.map +1 -0
  153. package/dist/core/i18n/index.js +67 -0
  154. package/dist/core/i18n/index.js.map +1 -0
  155. package/dist/core/i18n/locales/en/example.d.ts +7 -0
  156. package/dist/core/i18n/locales/en/example.d.ts.map +1 -0
  157. package/dist/core/i18n/locales/en/example.js +7 -0
  158. package/dist/core/i18n/locales/en/example.js.map +1 -0
  159. package/dist/core/i18n/locales/zh-cn/cli.d.ts +8 -0
  160. package/dist/core/i18n/locales/zh-cn/cli.d.ts.map +1 -0
  161. package/dist/core/i18n/locales/zh-cn/cli.js +227 -0
  162. package/dist/core/i18n/locales/zh-cn/cli.js.map +1 -0
  163. package/dist/core/i18n/locales/zh-cn/common.d.ts +6 -0
  164. package/dist/core/i18n/locales/zh-cn/common.d.ts.map +1 -0
  165. package/dist/core/i18n/locales/zh-cn/common.js +6 -0
  166. package/dist/core/i18n/locales/zh-cn/common.js.map +1 -0
  167. package/dist/core/i18n/locales/zh-cn/core-contract-core.d.ts +13 -0
  168. package/dist/core/i18n/locales/zh-cn/core-contract-core.d.ts.map +1 -0
  169. package/dist/core/i18n/locales/zh-cn/core-contract-core.js +173 -0
  170. package/dist/core/i18n/locales/zh-cn/core-contract-core.js.map +1 -0
  171. package/dist/core/i18n/locales/zh-cn/core-contract-extensions.d.ts +12 -0
  172. package/dist/core/i18n/locales/zh-cn/core-contract-extensions.d.ts.map +1 -0
  173. package/dist/core/i18n/locales/zh-cn/core-contract-extensions.js +582 -0
  174. package/dist/core/i18n/locales/zh-cn/core-contract-extensions.js.map +1 -0
  175. package/dist/core/i18n/locales/zh-cn/core-contract-final.d.ts +9 -0
  176. package/dist/core/i18n/locales/zh-cn/core-contract-final.d.ts.map +1 -0
  177. package/dist/core/i18n/locales/zh-cn/core-contract-final.js +55 -0
  178. package/dist/core/i18n/locales/zh-cn/core-contract-final.js.map +1 -0
  179. package/dist/core/i18n/locales/zh-cn/core-contract-plugins.d.ts +11 -0
  180. package/dist/core/i18n/locales/zh-cn/core-contract-plugins.d.ts.map +1 -0
  181. package/dist/core/i18n/locales/zh-cn/core-contract-plugins.js +455 -0
  182. package/dist/core/i18n/locales/zh-cn/core-contract-plugins.js.map +1 -0
  183. package/dist/core/i18n/locales/zh-cn/core-errors.d.ts +9 -0
  184. package/dist/core/i18n/locales/zh-cn/core-errors.d.ts.map +1 -0
  185. package/dist/core/i18n/locales/zh-cn/core-errors.js +191 -0
  186. package/dist/core/i18n/locales/zh-cn/core-errors.js.map +1 -0
  187. package/dist/core/i18n/locales/zh-cn/example.d.ts +7 -0
  188. package/dist/core/i18n/locales/zh-cn/example.d.ts.map +1 -0
  189. package/dist/core/i18n/locales/zh-cn/example.js +10 -0
  190. package/dist/core/i18n/locales/zh-cn/example.js.map +1 -0
  191. package/dist/core/i18n/locales/zh-cn/index.d.ts +2 -0
  192. package/dist/core/i18n/locales/zh-cn/index.d.ts.map +1 -0
  193. package/dist/core/i18n/locales/zh-cn/index.js +41 -0
  194. package/dist/core/i18n/locales/zh-cn/index.js.map +1 -0
  195. package/dist/core/i18n/locales/zh-cn/interactive-mode.d.ts +10 -0
  196. package/dist/core/i18n/locales/zh-cn/interactive-mode.d.ts.map +1 -0
  197. package/dist/core/i18n/locales/zh-cn/interactive-mode.js +265 -0
  198. package/dist/core/i18n/locales/zh-cn/interactive-mode.js.map +1 -0
  199. package/dist/core/i18n/locales/zh-cn/keybindings.d.ts +11 -0
  200. package/dist/core/i18n/locales/zh-cn/keybindings.d.ts.map +1 -0
  201. package/dist/core/i18n/locales/zh-cn/keybindings.js +67 -0
  202. package/dist/core/i18n/locales/zh-cn/keybindings.js.map +1 -0
  203. package/dist/core/i18n/locales/zh-cn/slash-commands.d.ts +7 -0
  204. package/dist/core/i18n/locales/zh-cn/slash-commands.d.ts.map +1 -0
  205. package/dist/core/i18n/locales/zh-cn/slash-commands.js +39 -0
  206. package/dist/core/i18n/locales/zh-cn/slash-commands.js.map +1 -0
  207. package/dist/core/i18n/locales/zh-cn/tui-builtin.d.ts +10 -0
  208. package/dist/core/i18n/locales/zh-cn/tui-builtin.d.ts.map +1 -0
  209. package/dist/core/i18n/locales/zh-cn/tui-builtin.js +15 -0
  210. package/dist/core/i18n/locales/zh-cn/tui-builtin.js.map +1 -0
  211. package/dist/core/i18n/locales/zh-cn/tui-components-misc.d.ts +13 -0
  212. package/dist/core/i18n/locales/zh-cn/tui-components-misc.d.ts.map +1 -0
  213. package/dist/core/i18n/locales/zh-cn/tui-components-misc.js +102 -0
  214. package/dist/core/i18n/locales/zh-cn/tui-components-misc.js.map +1 -0
  215. package/dist/core/i18n/locales/zh-cn/tui-components-selectors.d.ts +12 -0
  216. package/dist/core/i18n/locales/zh-cn/tui-components-selectors.d.ts.map +1 -0
  217. package/dist/core/i18n/locales/zh-cn/tui-components-selectors.js +288 -0
  218. package/dist/core/i18n/locales/zh-cn/tui-components-selectors.js.map +1 -0
  219. package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.d.ts +9 -0
  220. package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.d.ts.map +1 -0
  221. package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.js +79 -0
  222. package/dist/core/i18n/locales/zh-cn/tui-interactive-misc.js.map +1 -0
  223. package/dist/core/i18n/locales/zh-cn/tui-self-owned.d.ts +8 -0
  224. package/dist/core/i18n/locales/zh-cn/tui-self-owned.d.ts.map +1 -0
  225. package/dist/core/i18n/locales/zh-cn/tui-self-owned.js +72 -0
  226. package/dist/core/i18n/locales/zh-cn/tui-self-owned.js.map +1 -0
  227. package/dist/core/keybindings.d.ts +15 -0
  228. package/dist/core/keybindings.d.ts.map +1 -1
  229. package/dist/core/keybindings.js +18 -0
  230. package/dist/core/keybindings.js.map +1 -1
  231. package/dist/core/logger.d.ts.map +1 -1
  232. package/dist/core/logger.js +5 -1
  233. package/dist/core/logger.js.map +1 -1
  234. package/dist/core/model-registry.d.ts.map +1 -1
  235. package/dist/core/model-registry.js +2 -1
  236. package/dist/core/model-registry.js.map +1 -1
  237. package/dist/core/model-runtime.d.ts.map +1 -1
  238. package/dist/core/model-runtime.js +8 -4
  239. package/dist/core/model-runtime.js.map +1 -1
  240. package/dist/core/package-install-host.d.ts.map +1 -1
  241. package/dist/core/package-install-host.js +4 -3
  242. package/dist/core/package-install-host.js.map +1 -1
  243. package/dist/core/package-manager.d.ts.map +1 -1
  244. package/dist/core/package-manager.js +15 -10
  245. package/dist/core/package-manager.js.map +1 -1
  246. package/dist/core/package-resource-collection.d.ts.map +1 -1
  247. package/dist/core/package-resource-collection.js +2 -1
  248. package/dist/core/package-resource-collection.js.map +1 -1
  249. package/dist/core/package-source.d.ts.map +1 -1
  250. package/dist/core/package-source.js +3 -2
  251. package/dist/core/package-source.js.map +1 -1
  252. package/dist/core/provider-composer.d.ts.map +1 -1
  253. package/dist/core/provider-composer.js +22 -13
  254. package/dist/core/provider-composer.js.map +1 -1
  255. package/dist/core/remote-catalog-provider.d.ts.map +1 -1
  256. package/dist/core/remote-catalog-provider.js +6 -2
  257. package/dist/core/remote-catalog-provider.js.map +1 -1
  258. package/dist/core/resolve-config-value.d.ts.map +1 -1
  259. package/dist/core/resolve-config-value.js +15 -5
  260. package/dist/core/resolve-config-value.js.map +1 -1
  261. package/dist/core/sdk.d.ts +19 -5
  262. package/dist/core/sdk.d.ts.map +1 -1
  263. package/dist/core/sdk.js +74 -54
  264. package/dist/core/sdk.js.map +1 -1
  265. package/dist/core/session-cwd.d.ts.map +1 -1
  266. package/dist/core/session-cwd.js +5 -2
  267. package/dist/core/session-cwd.js.map +1 -1
  268. package/dist/core/session-export.d.ts.map +1 -1
  269. package/dist/core/session-export.js +2 -1
  270. package/dist/core/session-export.js.map +1 -1
  271. package/dist/core/session-manager.d.ts.map +1 -1
  272. package/dist/core/session-manager.js +39 -29
  273. package/dist/core/session-manager.js.map +1 -1
  274. package/dist/core/session-storage.d.ts.map +1 -1
  275. package/dist/core/session-storage.js +3 -3
  276. package/dist/core/session-storage.js.map +1 -1
  277. package/dist/core/settings-manager.d.ts +11 -0
  278. package/dist/core/settings-manager.d.ts.map +1 -1
  279. package/dist/core/settings-manager.js +27 -5
  280. package/dist/core/settings-manager.js.map +1 -1
  281. package/dist/core/slash-commands.d.ts.map +1 -1
  282. package/dist/core/slash-commands.js +53 -32
  283. package/dist/core/slash-commands.js.map +1 -1
  284. package/dist/core/system-prompt.d.ts.map +1 -1
  285. package/dist/core/system-prompt.js +25 -2
  286. package/dist/core/system-prompt.js.map +1 -1
  287. package/dist/core/tools/bash.d.ts.map +1 -1
  288. package/dist/core/tools/bash.js +11 -7
  289. package/dist/core/tools/bash.js.map +1 -1
  290. package/dist/core/tools/edit-diff.d.ts.map +1 -1
  291. package/dist/core/tools/edit-diff.js +9 -4
  292. package/dist/core/tools/edit-diff.js.map +1 -1
  293. package/dist/core/tools/edit.d.ts.map +1 -1
  294. package/dist/core/tools/edit.js +4 -3
  295. package/dist/core/tools/edit.js.map +1 -1
  296. package/dist/core/tools/index.d.ts.map +1 -1
  297. package/dist/core/tools/index.js +3 -2
  298. package/dist/core/tools/index.js.map +1 -1
  299. package/dist/core/tools/output-accumulator.d.ts.map +1 -1
  300. package/dist/core/tools/output-accumulator.js +2 -1
  301. package/dist/core/tools/output-accumulator.js.map +1 -1
  302. package/dist/core/tools/read.d.ts.map +1 -1
  303. package/dist/core/tools/read.js +6 -2
  304. package/dist/core/tools/read.js.map +1 -1
  305. package/dist/core/tools/write.d.ts.map +1 -1
  306. package/dist/core/tools/write.js +2 -1
  307. package/dist/core/tools/write.js.map +1 -1
  308. package/dist/durable/durable-service.d.ts.map +1 -1
  309. package/dist/durable/durable-service.js +25 -18
  310. package/dist/durable/durable-service.js.map +1 -1
  311. package/dist/host/checkpoint-commit.d.ts.map +1 -1
  312. package/dist/host/checkpoint-commit.js +2 -1
  313. package/dist/host/checkpoint-commit.js.map +1 -1
  314. package/dist/host/manual-compaction.d.ts.map +1 -1
  315. package/dist/host/manual-compaction.js +2 -1
  316. package/dist/host/manual-compaction.js.map +1 -1
  317. package/dist/host/output-projection.d.ts +0 -13
  318. package/dist/host/output-projection.d.ts.map +1 -1
  319. package/dist/host/output-projection.js +16 -2
  320. package/dist/host/output-projection.js.map +1 -1
  321. package/dist/host/summary-retry.d.ts.map +1 -1
  322. package/dist/host/summary-retry.js +3 -2
  323. package/dist/host/summary-retry.js.map +1 -1
  324. package/dist/main.d.ts.map +1 -1
  325. package/dist/main.js +94 -58
  326. package/dist/main.js.map +1 -1
  327. package/dist/modes/interactive/components/agents-view.d.ts.map +1 -1
  328. package/dist/modes/interactive/components/agents-view.js +18 -15
  329. package/dist/modes/interactive/components/agents-view.js.map +1 -1
  330. package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  331. package/dist/modes/interactive/components/assistant-message.js +6 -5
  332. package/dist/modes/interactive/components/assistant-message.js.map +1 -1
  333. package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
  334. package/dist/modes/interactive/components/bash-execution.js +12 -7
  335. package/dist/modes/interactive/components/bash-execution.js.map +1 -1
  336. package/dist/modes/interactive/components/bordered-loader.d.ts.map +1 -1
  337. package/dist/modes/interactive/components/bordered-loader.js +2 -1
  338. package/dist/modes/interactive/components/bordered-loader.js.map +1 -1
  339. package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
  340. package/dist/modes/interactive/components/branch-summary-message.js +6 -5
  341. package/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
  342. package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -1
  343. package/dist/modes/interactive/components/compaction-summary-message.js +9 -5
  344. package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -1
  345. package/dist/modes/interactive/components/config-selector.d.ts.map +1 -1
  346. package/dist/modes/interactive/components/config-selector.js +18 -15
  347. package/dist/modes/interactive/components/config-selector.js.map +1 -1
  348. package/dist/modes/interactive/components/custom-entry.d.ts.map +1 -1
  349. package/dist/modes/interactive/components/custom-entry.js +2 -1
  350. package/dist/modes/interactive/components/custom-entry.js.map +1 -1
  351. package/dist/modes/interactive/components/dialog-editor.d.ts.map +1 -1
  352. package/dist/modes/interactive/components/dialog-editor.js +5 -4
  353. package/dist/modes/interactive/components/dialog-editor.js.map +1 -1
  354. package/dist/modes/interactive/components/dialog-input.d.ts.map +1 -1
  355. package/dist/modes/interactive/components/dialog-input.js +2 -1
  356. package/dist/modes/interactive/components/dialog-input.js.map +1 -1
  357. package/dist/modes/interactive/components/dialog-selector.d.ts.map +1 -1
  358. package/dist/modes/interactive/components/dialog-selector.js +4 -3
  359. package/dist/modes/interactive/components/dialog-selector.js.map +1 -1
  360. package/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -1
  361. package/dist/modes/interactive/components/first-time-setup.js +11 -10
  362. package/dist/modes/interactive/components/first-time-setup.js.map +1 -1
  363. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  364. package/dist/modes/interactive/components/footer.js +7 -4
  365. package/dist/modes/interactive/components/footer.js.map +1 -1
  366. package/dist/modes/interactive/components/index.d.ts +1 -0
  367. package/dist/modes/interactive/components/index.d.ts.map +1 -1
  368. package/dist/modes/interactive/components/index.js +1 -0
  369. package/dist/modes/interactive/components/index.js.map +1 -1
  370. package/dist/modes/interactive/components/keybinding-hints.d.ts.map +1 -1
  371. package/dist/modes/interactive/components/keybinding-hints.js +3 -2
  372. package/dist/modes/interactive/components/keybinding-hints.js.map +1 -1
  373. package/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
  374. package/dist/modes/interactive/components/login-dialog.js +12 -11
  375. package/dist/modes/interactive/components/login-dialog.js.map +1 -1
  376. package/dist/modes/interactive/components/mermaid.d.ts.map +1 -1
  377. package/dist/modes/interactive/components/mermaid.js +6 -2
  378. package/dist/modes/interactive/components/mermaid.js.map +1 -1
  379. package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
  380. package/dist/modes/interactive/components/model-selector.js +28 -16
  381. package/dist/modes/interactive/components/model-selector.js.map +1 -1
  382. package/dist/modes/interactive/components/oauth-selector.d.ts.map +1 -1
  383. package/dist/modes/interactive/components/oauth-selector.js +10 -9
  384. package/dist/modes/interactive/components/oauth-selector.js.map +1 -1
  385. package/dist/modes/interactive/components/plugin-manager-entry.d.ts.map +1 -1
  386. package/dist/modes/interactive/components/plugin-manager-entry.js +22 -13
  387. package/dist/modes/interactive/components/plugin-manager-entry.js.map +1 -1
  388. package/dist/modes/interactive/components/plugin-selection-entry.d.ts.map +1 -1
  389. package/dist/modes/interactive/components/plugin-selection-entry.js +27 -12
  390. package/dist/modes/interactive/components/plugin-selection-entry.js.map +1 -1
  391. package/dist/modes/interactive/components/queue-manager-selector.d.ts +60 -0
  392. package/dist/modes/interactive/components/queue-manager-selector.d.ts.map +1 -0
  393. package/dist/modes/interactive/components/queue-manager-selector.js +166 -0
  394. package/dist/modes/interactive/components/queue-manager-selector.js.map +1 -0
  395. package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
  396. package/dist/modes/interactive/components/scoped-models-selector.js +16 -14
  397. package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
  398. package/dist/modes/interactive/components/session-selector.d.ts.map +1 -1
  399. package/dist/modes/interactive/components/session-selector.js +43 -31
  400. package/dist/modes/interactive/components/session-selector.js.map +1 -1
  401. package/dist/modes/interactive/components/settings-selector.d.ts +2 -0
  402. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  403. package/dist/modes/interactive/components/settings-selector.js +113 -96
  404. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  405. package/dist/modes/interactive/components/settings-submenu.d.ts.map +1 -1
  406. package/dist/modes/interactive/components/settings-submenu.js +5 -4
  407. package/dist/modes/interactive/components/settings-submenu.js.map +1 -1
  408. package/dist/modes/interactive/components/show-images-selector.d.ts.map +1 -1
  409. package/dist/modes/interactive/components/show-images-selector.js +3 -2
  410. package/dist/modes/interactive/components/show-images-selector.js.map +1 -1
  411. package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
  412. package/dist/modes/interactive/components/skill-invocation-message.js +4 -3
  413. package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
  414. package/dist/modes/interactive/components/status-indicator.d.ts.map +1 -1
  415. package/dist/modes/interactive/components/status-indicator.js +14 -5
  416. package/dist/modes/interactive/components/status-indicator.js.map +1 -1
  417. package/dist/modes/interactive/components/theme-selector.d.ts.map +1 -1
  418. package/dist/modes/interactive/components/theme-selector.js +2 -1
  419. package/dist/modes/interactive/components/theme-selector.js.map +1 -1
  420. package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
  421. package/dist/modes/interactive/components/thinking-selector.js +11 -4
  422. package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
  423. package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
  424. package/dist/modes/interactive/components/tool-execution.js +8 -3
  425. package/dist/modes/interactive/components/tool-execution.js.map +1 -1
  426. package/dist/modes/interactive/components/tree-list.d.ts.map +1 -1
  427. package/dist/modes/interactive/components/tree-list.js +7 -6
  428. package/dist/modes/interactive/components/tree-list.js.map +1 -1
  429. package/dist/modes/interactive/components/tree-render.d.ts.map +1 -1
  430. package/dist/modes/interactive/components/tree-render.js +28 -23
  431. package/dist/modes/interactive/components/tree-render.js.map +1 -1
  432. package/dist/modes/interactive/components/tree-selector.d.ts.map +1 -1
  433. package/dist/modes/interactive/components/tree-selector.js +9 -7
  434. package/dist/modes/interactive/components/tree-selector.js.map +1 -1
  435. package/dist/modes/interactive/components/user-message-selector.d.ts.map +1 -1
  436. package/dist/modes/interactive/components/user-message-selector.js +5 -4
  437. package/dist/modes/interactive/components/user-message-selector.js.map +1 -1
  438. package/dist/modes/interactive/components/workflow-view.d.ts.map +1 -1
  439. package/dist/modes/interactive/components/workflow-view.js +36 -21
  440. package/dist/modes/interactive/components/workflow-view.js.map +1 -1
  441. package/dist/modes/interactive/external-editor.d.ts.map +1 -1
  442. package/dist/modes/interactive/external-editor.js +2 -1
  443. package/dist/modes/interactive/external-editor.js.map +1 -1
  444. package/dist/modes/interactive/interactive-auth.d.ts.map +1 -1
  445. package/dist/modes/interactive/interactive-auth.js +71 -40
  446. package/dist/modes/interactive/interactive-auth.js.map +1 -1
  447. package/dist/modes/interactive/interactive-commands.d.ts +1 -0
  448. package/dist/modes/interactive/interactive-commands.d.ts.map +1 -1
  449. package/dist/modes/interactive/interactive-commands.js +3 -0
  450. package/dist/modes/interactive/interactive-commands.js.map +1 -1
  451. package/dist/modes/interactive/interactive-dialog-ui.d.ts.map +1 -1
  452. package/dist/modes/interactive/interactive-dialog-ui.js +5 -5
  453. package/dist/modes/interactive/interactive-dialog-ui.js.map +1 -1
  454. package/dist/modes/interactive/interactive-format.d.ts.map +1 -1
  455. package/dist/modes/interactive/interactive-format.js +34 -18
  456. package/dist/modes/interactive/interactive-format.js.map +1 -1
  457. package/dist/modes/interactive/interactive-helpers.d.ts.map +1 -1
  458. package/dist/modes/interactive/interactive-helpers.js +7 -2
  459. package/dist/modes/interactive/interactive-helpers.js.map +1 -1
  460. package/dist/modes/interactive/interactive-mode.d.ts +4 -1
  461. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  462. package/dist/modes/interactive/interactive-mode.js +327 -243
  463. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  464. package/dist/modes/interactive/interactive-selectors.d.ts +9 -0
  465. package/dist/modes/interactive/interactive-selectors.d.ts.map +1 -1
  466. package/dist/modes/interactive/interactive-selectors.js +79 -25
  467. package/dist/modes/interactive/interactive-selectors.js.map +1 -1
  468. package/dist/modes/interactive/theme/theme-controller.d.ts.map +1 -1
  469. package/dist/modes/interactive/theme/theme-controller.js +5 -1
  470. package/dist/modes/interactive/theme/theme-controller.js.map +1 -1
  471. package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
  472. package/dist/modes/interactive/theme/theme.js +26 -23
  473. package/dist/modes/interactive/theme/theme.js.map +1 -1
  474. package/dist/modes/json-event.d.ts.map +1 -1
  475. package/dist/modes/json-event.js +3 -2
  476. package/dist/modes/json-event.js.map +1 -1
  477. package/dist/modes/print-mode.d.ts.map +1 -1
  478. package/dist/modes/print-mode.js +3 -2
  479. package/dist/modes/print-mode.js.map +1 -1
  480. package/dist/modes/rpc/rpc-client.d.ts.map +1 -1
  481. package/dist/modes/rpc/rpc-client.js +3 -2
  482. package/dist/modes/rpc/rpc-client.js.map +1 -1
  483. package/dist/package-manager-cli.d.ts.map +1 -1
  484. package/dist/package-manager-cli.js +28 -13
  485. package/dist/package-manager-cli.js.map +1 -1
  486. package/dist/plugins/ecosystem/catalog.d.ts.map +1 -1
  487. package/dist/plugins/ecosystem/catalog.js +3 -2
  488. package/dist/plugins/ecosystem/catalog.js.map +1 -1
  489. package/dist/plugins/ecosystem/cli.d.ts.map +1 -1
  490. package/dist/plugins/ecosystem/cli.js +2 -1
  491. package/dist/plugins/ecosystem/cli.js.map +1 -1
  492. package/dist/plugins/ecosystem/default-plugin-market.d.ts.map +1 -1
  493. package/dist/plugins/ecosystem/default-plugin-market.js +3 -2
  494. package/dist/plugins/ecosystem/default-plugin-market.js.map +1 -1
  495. package/dist/plugins/ecosystem/distribution.d.ts.map +1 -1
  496. package/dist/plugins/ecosystem/distribution.js +2 -1
  497. package/dist/plugins/ecosystem/distribution.js.map +1 -1
  498. package/dist/plugins/ecosystem/installer.d.ts.map +1 -1
  499. package/dist/plugins/ecosystem/installer.js +3 -2
  500. package/dist/plugins/ecosystem/installer.js.map +1 -1
  501. package/dist/plugins/ecosystem/node-disk-registry-source.d.ts.map +1 -1
  502. package/dist/plugins/ecosystem/node-disk-registry-source.js +20 -17
  503. package/dist/plugins/ecosystem/node-disk-registry-source.js.map +1 -1
  504. package/dist/plugins/ecosystem/node-distribution-host.d.ts.map +1 -1
  505. package/dist/plugins/ecosystem/node-distribution-host.js +35 -34
  506. package/dist/plugins/ecosystem/node-distribution-host.js.map +1 -1
  507. package/dist/plugins/ecosystem/node-npm-registry-source.d.ts.map +1 -1
  508. package/dist/plugins/ecosystem/node-npm-registry-source.js +35 -34
  509. package/dist/plugins/ecosystem/node-npm-registry-source.js.map +1 -1
  510. package/dist/plugins/ecosystem/node-package-install-host.d.ts.map +1 -1
  511. package/dist/plugins/ecosystem/node-package-install-host.js +9 -8
  512. package/dist/plugins/ecosystem/node-package-install-host.js.map +1 -1
  513. package/dist/plugins/ecosystem/node-package-install-persistence.d.ts.map +1 -1
  514. package/dist/plugins/ecosystem/node-package-install-persistence.js +4 -3
  515. package/dist/plugins/ecosystem/node-package-install-persistence.js.map +1 -1
  516. package/dist/plugins/ecosystem/node-plugin-bootstrap.d.ts.map +1 -1
  517. package/dist/plugins/ecosystem/node-plugin-bootstrap.js +21 -5
  518. package/dist/plugins/ecosystem/node-plugin-bootstrap.js.map +1 -1
  519. package/dist/plugins/ecosystem/node-plugin-trust-root.d.ts.map +1 -1
  520. package/dist/plugins/ecosystem/node-plugin-trust-root.js +10 -9
  521. package/dist/plugins/ecosystem/node-plugin-trust-root.js.map +1 -1
  522. package/dist/plugins/ecosystem/node-registry-source.d.ts.map +1 -1
  523. package/dist/plugins/ecosystem/node-registry-source.js +31 -30
  524. package/dist/plugins/ecosystem/node-registry-source.js.map +1 -1
  525. package/dist/plugins/ecosystem/node-release-package-source.d.ts.map +1 -1
  526. package/dist/plugins/ecosystem/node-release-package-source.js +30 -29
  527. package/dist/plugins/ecosystem/node-release-package-source.js.map +1 -1
  528. package/dist/plugins/ecosystem/node-tar-writer.d.ts.map +1 -1
  529. package/dist/plugins/ecosystem/node-tar-writer.js +11 -10
  530. package/dist/plugins/ecosystem/node-tar-writer.js.map +1 -1
  531. package/dist/plugins/ecosystem/node-url-package-source.d.ts.map +1 -1
  532. package/dist/plugins/ecosystem/node-url-package-source.js +21 -20
  533. package/dist/plugins/ecosystem/node-url-package-source.js.map +1 -1
  534. package/dist/plugins/ecosystem/plugin-acquisition.d.ts.map +1 -1
  535. package/dist/plugins/ecosystem/plugin-acquisition.js +3 -2
  536. package/dist/plugins/ecosystem/plugin-acquisition.js.map +1 -1
  537. package/dist/plugins/ecosystem/registry-cli-adapter.d.ts.map +1 -1
  538. package/dist/plugins/ecosystem/registry-cli-adapter.js +2 -1
  539. package/dist/plugins/ecosystem/registry-cli-adapter.js.map +1 -1
  540. package/dist/plugins/ecosystem/registry.d.ts.map +1 -1
  541. package/dist/plugins/ecosystem/registry.js +35 -32
  542. package/dist/plugins/ecosystem/registry.js.map +1 -1
  543. package/dist/plugins/ecosystem/resolver.d.ts.map +1 -1
  544. package/dist/plugins/ecosystem/resolver.js +3 -2
  545. package/dist/plugins/ecosystem/resolver.js.map +1 -1
  546. package/dist/plugins/ecosystem/selection-store.d.ts.map +1 -1
  547. package/dist/plugins/ecosystem/selection-store.js +11 -10
  548. package/dist/plugins/ecosystem/selection-store.js.map +1 -1
  549. package/dist/plugins/ecosystem/selection.d.ts.map +1 -1
  550. package/dist/plugins/ecosystem/selection.js +8 -7
  551. package/dist/plugins/ecosystem/selection.js.map +1 -1
  552. package/dist/plugins/ecosystem/state.d.ts.map +1 -1
  553. package/dist/plugins/ecosystem/state.js +24 -23
  554. package/dist/plugins/ecosystem/state.js.map +1 -1
  555. package/dist/plugins/ecosystem/updates.d.ts.map +1 -1
  556. package/dist/plugins/ecosystem/updates.js +5 -4
  557. package/dist/plugins/ecosystem/updates.js.map +1 -1
  558. package/dist/plugins/mcp-http.d.ts +0 -17
  559. package/dist/plugins/mcp-http.d.ts.map +1 -1
  560. package/dist/plugins/mcp-http.js +30 -7
  561. package/dist/plugins/mcp-http.js.map +1 -1
  562. package/dist/plugins/plugin-supervisor.d.ts.map +1 -1
  563. package/dist/plugins/plugin-supervisor.js +19 -1
  564. package/dist/plugins/plugin-supervisor.js.map +1 -1
  565. package/dist/profile/first-roles.d.ts.map +1 -1
  566. package/dist/profile/first-roles.js +10 -1
  567. package/dist/profile/first-roles.js.map +1 -1
  568. package/dist/profile/goal-plugin.d.ts.map +1 -1
  569. package/dist/profile/goal-plugin.js +24 -5
  570. package/dist/profile/goal-plugin.js.map +1 -1
  571. package/dist/profile/identity.d.ts.map +1 -1
  572. package/dist/profile/identity.js +7 -6
  573. package/dist/profile/identity.js.map +1 -1
  574. package/dist/profile/lock.d.ts.map +1 -1
  575. package/dist/profile/lock.js +15 -1
  576. package/dist/profile/lock.js.map +1 -1
  577. package/dist/profile/plan-plugin.d.ts.map +1 -1
  578. package/dist/profile/plan-plugin.js +26 -13
  579. package/dist/profile/plan-plugin.js.map +1 -1
  580. package/dist/profile/plugin-profiles.d.ts.map +1 -1
  581. package/dist/profile/plugin-profiles.js +2 -1
  582. package/dist/profile/plugin-profiles.js.map +1 -1
  583. package/dist/profile/policy-manifest.d.ts.map +1 -1
  584. package/dist/profile/policy-manifest.js +5 -4
  585. package/dist/profile/policy-manifest.js.map +1 -1
  586. package/dist/profile/profile-registry.d.ts +0 -12
  587. package/dist/profile/profile-registry.d.ts.map +1 -1
  588. package/dist/profile/profile-registry.js +14 -1
  589. package/dist/profile/profile-registry.js.map +1 -1
  590. package/dist/profile/role-catalog.d.ts +0 -1
  591. package/dist/profile/role-catalog.d.ts.map +1 -1
  592. package/dist/profile/role-catalog.js +17 -15
  593. package/dist/profile/role-catalog.js.map +1 -1
  594. package/dist/profile/role-orchestrator.d.ts.map +1 -1
  595. package/dist/profile/role-orchestrator.js +8 -7
  596. package/dist/profile/role-orchestrator.js.map +1 -1
  597. package/dist/profile/role-runner.d.ts.map +1 -1
  598. package/dist/profile/role-runner.js +3 -2
  599. package/dist/profile/role-runner.js.map +1 -1
  600. package/dist/profile/root-facade.d.ts.map +1 -1
  601. package/dist/profile/root-facade.js +2 -1
  602. package/dist/profile/root-facade.js.map +1 -1
  603. package/dist/profile/skill-discovery-wiring.d.ts.map +1 -1
  604. package/dist/profile/skill-discovery-wiring.js +7 -2
  605. package/dist/profile/skill-discovery-wiring.js.map +1 -1
  606. package/dist/profile/state-store.d.ts.map +1 -1
  607. package/dist/profile/state-store.js +13 -9
  608. package/dist/profile/state-store.js.map +1 -1
  609. package/dist/profile/todo-plugin.d.ts.map +1 -1
  610. package/dist/profile/todo-plugin.js +9 -4
  611. package/dist/profile/todo-plugin.js.map +1 -1
  612. package/dist/profiles/builtin-suites.d.ts +13 -6
  613. package/dist/profiles/builtin-suites.d.ts.map +1 -1
  614. package/dist/profiles/builtin-suites.js +15 -6
  615. package/dist/profiles/builtin-suites.js.map +1 -1
  616. package/dist/profiles/suite-loader.d.ts +25 -1
  617. package/dist/profiles/suite-loader.d.ts.map +1 -1
  618. package/dist/profiles/suite-loader.js +34 -9
  619. package/dist/profiles/suite-loader.js.map +1 -1
  620. package/dist/remote/server-entry.d.ts.map +1 -1
  621. package/dist/remote/server-entry.js +3 -2
  622. package/dist/remote/server-entry.js.map +1 -1
  623. package/dist/remote/session-source.d.ts.map +1 -1
  624. package/dist/remote/session-source.js +8 -4
  625. package/dist/remote/session-source.js.map +1 -1
  626. package/dist/share/session-share.d.ts.map +1 -1
  627. package/dist/share/session-share.js +14 -2
  628. package/dist/share/session-share.js.map +1 -1
  629. package/dist/testing/plugin-testkit.d.ts.map +1 -1
  630. package/dist/testing/plugin-testkit.js +4 -3
  631. package/dist/testing/plugin-testkit.js.map +1 -1
  632. package/dist/testing/runtime-delivery-queue.d.ts.map +1 -1
  633. package/dist/testing/runtime-delivery-queue.js +2 -1
  634. package/dist/testing/runtime-delivery-queue.js.map +1 -1
  635. package/dist/testing/session-plugin-testkit.d.ts.map +1 -1
  636. package/dist/testing/session-plugin-testkit.js +10 -7
  637. package/dist/testing/session-plugin-testkit.js.map +1 -1
  638. package/dist/utils/ansi.d.ts.map +1 -1
  639. package/dist/utils/ansi.js +2 -1
  640. package/dist/utils/ansi.js.map +1 -1
  641. package/dist/utils/clipboard.d.ts.map +1 -1
  642. package/dist/utils/clipboard.js +7 -6
  643. package/dist/utils/clipboard.js.map +1 -1
  644. package/dist/utils/image-resize-worker.d.ts.map +1 -1
  645. package/dist/utils/image-resize-worker.js +3 -2
  646. package/dist/utils/image-resize-worker.js.map +1 -1
  647. package/dist/utils/shell.d.ts.map +1 -1
  648. package/dist/utils/shell.js +9 -8
  649. package/dist/utils/shell.js.map +1 -1
  650. package/dist/utils/tools-manager.d.ts.map +1 -1
  651. package/dist/utils/tools-manager.js +23 -13
  652. package/dist/utils/tools-manager.js.map +1 -1
  653. package/dist/utils/version-check.d.ts.map +1 -1
  654. package/dist/utils/version-check.js +5 -1
  655. package/dist/utils/version-check.js.map +1 -1
  656. package/docs/keybindings.md +3 -0
  657. package/docs/quickstart.md +1 -1
  658. package/docs/settings.md +1 -0
  659. package/docs/terminal-setup.md +2 -3
  660. package/docs/usage.md +6 -5
  661. package/examples/extensions/with-deps/package-lock.json +2 -2
  662. package/examples/extensions/with-deps/package.json +1 -1
  663. package/examples/extensions/with-deps/plugin.json +1 -1
  664. package/package.json +1 -1
  665. package/dist/bundle/chunks/chunk-EALJ5DDX.js +0 -1452
package/dist/cli/args.js CHANGED
@@ -3,6 +3,7 @@
3
3
  */
4
4
  import chalk from "chalk";
5
5
  import { APP_NAME, CONFIG_DIR_NAME, ENV_AGENT_DIR, ENV_SESSION_DIR } from "../config.js";
6
+ import { t } from "../core/i18n/index.js";
6
7
  // TRACE_KINDS_V1 is a value import, but observability-types.ts has no runtime
7
8
  // edges (its two imports are type-only), so no import cycle can form here.
8
9
  import { TRACE_KINDS_V1 } from "../plugins/observability-types.js";
@@ -28,25 +29,28 @@ export function normalizeSessionName(value) {
28
29
  function parseBoundedPluginId(args, index, result, option, values) {
29
30
  const raw = args[index + 1];
30
31
  if (raw === undefined || raw.startsWith("-")) {
31
- result.diagnostics.push({ type: "error", message: `${option} requires a plugin id` });
32
+ result.diagnostics.push({ type: "error", message: t("{option} requires a plugin id", { option }) });
32
33
  return index;
33
34
  }
34
35
  const value = raw.trim();
35
36
  if (value.length === 0) {
36
- result.diagnostics.push({ type: "error", message: `${option} requires a non-empty plugin id` });
37
+ result.diagnostics.push({ type: "error", message: t("{option} requires a non-empty plugin id", { option }) });
37
38
  return index + 1;
38
39
  }
39
40
  if (value.length > MAX_PLUGIN_CLI_ID_CHARS) {
40
41
  result.diagnostics.push({
41
42
  type: "error",
42
- message: `${option} plugin id must be at most ${MAX_PLUGIN_CLI_ID_CHARS} characters`,
43
+ message: t("{option} plugin id must be at most {max} characters", {
44
+ option,
45
+ max: MAX_PLUGIN_CLI_ID_CHARS,
46
+ }),
43
47
  });
44
48
  return index + 1;
45
49
  }
46
50
  if (values.length >= MAX_PLUGIN_CLI_IDS) {
47
51
  result.diagnostics.push({
48
52
  type: "error",
49
- message: `${option} accepts at most ${MAX_PLUGIN_CLI_IDS} plugin ids`,
53
+ message: t("{option} accepts at most {max} plugin ids", { option, max: MAX_PLUGIN_CLI_IDS }),
50
54
  });
51
55
  return index + 1;
52
56
  }
@@ -56,18 +60,21 @@ function parseBoundedPluginId(args, index, result, option, values) {
56
60
  function parsePluginProfileValue(args, index, result, rawValue) {
57
61
  const raw = rawValue ?? args[index + 1];
58
62
  if (raw === undefined || raw.startsWith("-")) {
59
- result.diagnostics.push({ type: "error", message: "--plugin-profile requires a profile id" });
63
+ result.diagnostics.push({ type: "error", message: t("--plugin-profile requires a profile id") });
60
64
  return rawValue === undefined ? index : index;
61
65
  }
62
66
  const value = raw.trim();
63
67
  if (value.length === 0) {
64
- result.diagnostics.push({ type: "error", message: "--plugin-profile requires a non-empty profile id" });
68
+ result.diagnostics.push({
69
+ type: "error",
70
+ message: t("--plugin-profile requires a non-empty profile id"),
71
+ });
65
72
  return rawValue === undefined ? index + 1 : index;
66
73
  }
67
74
  if (value.length > MAX_PLUGIN_CLI_ID_CHARS) {
68
75
  result.diagnostics.push({
69
76
  type: "error",
70
- message: `--plugin-profile id must be at most ${MAX_PLUGIN_CLI_ID_CHARS} characters`,
77
+ message: t("--plugin-profile id must be at most {max} characters", { max: MAX_PLUGIN_CLI_ID_CHARS }),
71
78
  });
72
79
  return rawValue === undefined ? index + 1 : index;
73
80
  }
@@ -102,14 +109,14 @@ export function parseArgs(args) {
102
109
  else if (arg === "--mode") {
103
110
  const mode = args[i + 1];
104
111
  if (mode === undefined || mode.startsWith("-")) {
105
- result.diagnostics.push({ type: "error", message: "--mode requires text, json, or rpc" });
112
+ result.diagnostics.push({ type: "error", message: t("--mode requires text, json, or rpc") });
106
113
  continue;
107
114
  }
108
115
  i++;
109
116
  if (mode !== "text" && mode !== "json" && mode !== "rpc") {
110
117
  result.diagnostics.push({
111
118
  type: "error",
112
- message: `Invalid mode "${mode}". Valid values: text, json, rpc`,
119
+ message: t('Invalid mode "{mode}". Valid values: text, json, rpc', { mode }),
113
120
  });
114
121
  continue;
115
122
  }
@@ -142,7 +149,7 @@ export function parseArgs(args) {
142
149
  result.name = args[++i];
143
150
  }
144
151
  else {
145
- result.diagnostics.push({ type: "error", message: "--name requires a value" });
152
+ result.diagnostics.push({ type: "error", message: t("--name requires a value") });
146
153
  }
147
154
  }
148
155
  else if (arg === "--no-session") {
@@ -170,7 +177,7 @@ export function parseArgs(args) {
170
177
  i++;
171
178
  }
172
179
  else {
173
- result.diagnostics.push({ type: "error", message: "--suite requires a suite id" });
180
+ result.diagnostics.push({ type: "error", message: t("--suite requires a suite id") });
174
181
  }
175
182
  }
176
183
  else if (arg === "--suite-create") {
@@ -180,7 +187,7 @@ export function parseArgs(args) {
180
187
  i++;
181
188
  }
182
189
  else {
183
- result.diagnostics.push({ type: "error", message: "--suite-create requires a suite id" });
190
+ result.diagnostics.push({ type: "error", message: t("--suite-create requires a suite id") });
184
191
  }
185
192
  }
186
193
  else if (arg === "--clone-from") {
@@ -190,7 +197,7 @@ export function parseArgs(args) {
190
197
  i++;
191
198
  }
192
199
  else {
193
- result.diagnostics.push({ type: "error", message: "--clone-from requires a suite id" });
200
+ result.diagnostics.push({ type: "error", message: t("--clone-from requires a suite id") });
194
201
  }
195
202
  }
196
203
  else if (arg === "--suite-delete") {
@@ -200,7 +207,7 @@ export function parseArgs(args) {
200
207
  i++;
201
208
  }
202
209
  else {
203
- result.diagnostics.push({ type: "error", message: "--suite-delete requires a suite id" });
210
+ result.diagnostics.push({ type: "error", message: t("--suite-delete requires a suite id") });
204
211
  }
205
212
  }
206
213
  else if (arg === "--suite-reset") {
@@ -210,7 +217,7 @@ export function parseArgs(args) {
210
217
  i++;
211
218
  }
212
219
  else {
213
- result.diagnostics.push({ type: "error", message: "--suite-reset requires a suite id" });
220
+ result.diagnostics.push({ type: "error", message: t("--suite-reset requires a suite id") });
214
221
  }
215
222
  }
216
223
  else if (arg === "--serve") {
@@ -221,7 +228,10 @@ export function parseArgs(args) {
221
228
  i++;
222
229
  }
223
230
  else {
224
- result.diagnostics.push({ type: "error", message: "--serve requires a valid TCP port (0-65535)" });
231
+ result.diagnostics.push({
232
+ type: "error",
233
+ message: t("--serve requires a valid TCP port (0-65535)"),
234
+ });
225
235
  if (raw !== undefined)
226
236
  i++;
227
237
  }
@@ -232,7 +242,10 @@ export function parseArgs(args) {
232
242
  else if (arg === "--serve-workspace-root") {
233
243
  const dir = args[i + 1];
234
244
  if (dir === undefined || dir.startsWith("-")) {
235
- result.diagnostics.push({ type: "error", message: "--serve-workspace-root requires a directory" });
245
+ result.diagnostics.push({
246
+ type: "error",
247
+ message: t("--serve-workspace-root requires a directory"),
248
+ });
236
249
  }
237
250
  else {
238
251
  result.serveWorkspaceRoots = result.serveWorkspaceRoots ?? [];
@@ -269,7 +282,10 @@ export function parseArgs(args) {
269
282
  else {
270
283
  result.diagnostics.push({
271
284
  type: "warning",
272
- message: `Invalid thinking level "${level}". Valid values: ${VALID_THINKING_LEVELS.join(", ")}`,
285
+ message: t('Invalid thinking level "{level}". Valid values: {levels}', {
286
+ level,
287
+ levels: VALID_THINKING_LEVELS.join(", "),
288
+ }),
273
289
  });
274
290
  }
275
291
  }
@@ -302,7 +318,10 @@ export function parseArgs(args) {
302
318
  else if (arg === "--trace-kind") {
303
319
  const raw = args[i + 1];
304
320
  if (raw === undefined || raw.startsWith("-")) {
305
- result.diagnostics.push({ type: "error", message: "--trace-kind requires a comma-separated kind list" });
321
+ result.diagnostics.push({
322
+ type: "error",
323
+ message: t("--trace-kind requires a comma-separated kind list"),
324
+ });
306
325
  }
307
326
  else {
308
327
  i++;
@@ -312,12 +331,18 @@ export function parseArgs(args) {
312
331
  .filter((kind) => kind.length > 0);
313
332
  const invalid = kinds.filter((kind) => !isValidTraceKind(kind));
314
333
  if (kinds.length === 0) {
315
- result.diagnostics.push({ type: "error", message: "--trace-kind requires at least one trace kind" });
334
+ result.diagnostics.push({
335
+ type: "error",
336
+ message: t("--trace-kind requires at least one trace kind"),
337
+ });
316
338
  }
317
339
  else if (invalid.length > 0) {
318
340
  result.diagnostics.push({
319
341
  type: "error",
320
- message: `Invalid trace kind(s) "${invalid.join(", ")}". Valid values: ${TRACE_KINDS_V1.join(", ")}`,
342
+ message: t('Invalid trace kind(s) "{kinds}". Valid values: {valid}', {
343
+ kinds: invalid.join(", "),
344
+ valid: TRACE_KINDS_V1.join(", "),
345
+ }),
321
346
  });
322
347
  }
323
348
  else {
@@ -328,7 +353,10 @@ export function parseArgs(args) {
328
353
  else if (arg === "--trace-limit") {
329
354
  const raw = args[i + 1];
330
355
  if (raw === undefined || raw.startsWith("-")) {
331
- result.diagnostics.push({ type: "error", message: "--trace-limit requires a positive integer" });
356
+ result.diagnostics.push({
357
+ type: "error",
358
+ message: t("--trace-limit requires a positive integer"),
359
+ });
332
360
  }
333
361
  else {
334
362
  i++;
@@ -339,7 +367,7 @@ export function parseArgs(args) {
339
367
  else {
340
368
  result.diagnostics.push({
341
369
  type: "error",
342
- message: `Invalid trace limit "${raw}". Expected a positive integer`,
370
+ message: t('Invalid trace limit "{limit}". Expected a positive integer', { limit: raw }),
343
371
  });
344
372
  }
345
373
  }
@@ -353,13 +381,16 @@ export function parseArgs(args) {
353
381
  else if (arg === "--log-level") {
354
382
  const level = args[i + 1];
355
383
  if (level === undefined || level.startsWith("-")) {
356
- result.diagnostics.push({ type: "error", message: "--log-level requires a level" });
384
+ result.diagnostics.push({ type: "error", message: t("--log-level requires a level") });
357
385
  }
358
386
  else if (!isValidHostLogLevel(level)) {
359
387
  i++;
360
388
  result.diagnostics.push({
361
389
  type: "error",
362
- message: `Invalid log level "${level}". Valid values: ${VALID_LOG_LEVELS.join(", ")}`,
390
+ message: t('Invalid log level "{level}". Valid values: {levels}', {
391
+ level,
392
+ levels: VALID_LOG_LEVELS.join(", "),
393
+ }),
363
394
  });
364
395
  }
365
396
  else {
@@ -378,10 +409,10 @@ export function parseArgs(args) {
378
409
  if (arg === "--plugin-scope")
379
410
  i++;
380
411
  if (raw !== "global" && raw !== "project") {
381
- result.diagnostics.push({ type: "error", message: "--plugin-scope must be global or project" });
412
+ result.diagnostics.push({ type: "error", message: t("--plugin-scope must be global or project") });
382
413
  }
383
414
  else if (result.pluginSelectionScope !== undefined) {
384
- result.diagnostics.push({ type: "error", message: "--plugin-scope may be specified only once" });
415
+ result.diagnostics.push({ type: "error", message: t("--plugin-scope may be specified only once") });
385
416
  }
386
417
  else {
387
418
  result.pluginSelectionScope = raw;
@@ -395,18 +426,24 @@ export function parseArgs(args) {
395
426
  result.plugins = result.plugins ?? [];
396
427
  const value = arg.slice("--plugin=".length).trim();
397
428
  if (value.length === 0) {
398
- result.diagnostics.push({ type: "error", message: "--plugin requires a non-empty plugin id" });
429
+ result.diagnostics.push({
430
+ type: "error",
431
+ message: t("{option} requires a non-empty plugin id", { option: "--plugin" }),
432
+ });
399
433
  }
400
434
  else if (value.length > MAX_PLUGIN_CLI_ID_CHARS) {
401
435
  result.diagnostics.push({
402
436
  type: "error",
403
- message: `--plugin plugin id must be at most ${MAX_PLUGIN_CLI_ID_CHARS} characters`,
437
+ message: t("{option} plugin id must be at most {max} characters", {
438
+ option: "--plugin",
439
+ max: MAX_PLUGIN_CLI_ID_CHARS,
440
+ }),
404
441
  });
405
442
  }
406
443
  else if (result.plugins.length >= MAX_PLUGIN_CLI_IDS) {
407
444
  result.diagnostics.push({
408
445
  type: "error",
409
- message: `--plugin accepts at most ${MAX_PLUGIN_CLI_IDS} plugin ids`,
446
+ message: t("{option} accepts at most {max} plugin ids", { option: "--plugin", max: MAX_PLUGIN_CLI_IDS }),
410
447
  });
411
448
  }
412
449
  else {
@@ -421,18 +458,27 @@ export function parseArgs(args) {
421
458
  result.disabledPlugins = result.disabledPlugins ?? [];
422
459
  const value = arg.slice("--disable-plugin=".length).trim();
423
460
  if (value.length === 0) {
424
- result.diagnostics.push({ type: "error", message: "--disable-plugin requires a non-empty plugin id" });
461
+ result.diagnostics.push({
462
+ type: "error",
463
+ message: t("{option} requires a non-empty plugin id", { option: "--disable-plugin" }),
464
+ });
425
465
  }
426
466
  else if (value.length > MAX_PLUGIN_CLI_ID_CHARS) {
427
467
  result.diagnostics.push({
428
468
  type: "error",
429
- message: `--disable-plugin plugin id must be at most ${MAX_PLUGIN_CLI_ID_CHARS} characters`,
469
+ message: t("{option} plugin id must be at most {max} characters", {
470
+ option: "--disable-plugin",
471
+ max: MAX_PLUGIN_CLI_ID_CHARS,
472
+ }),
430
473
  });
431
474
  }
432
475
  else if (result.disabledPlugins.length >= MAX_PLUGIN_CLI_IDS) {
433
476
  result.diagnostics.push({
434
477
  type: "error",
435
- message: `--disable-plugin accepts at most ${MAX_PLUGIN_CLI_IDS} plugin ids`,
478
+ message: t("{option} accepts at most {max} plugin ids", {
479
+ option: "--disable-plugin",
480
+ max: MAX_PLUGIN_CLI_IDS,
481
+ }),
436
482
  });
437
483
  }
438
484
  else {
@@ -454,7 +500,7 @@ export function parseArgs(args) {
454
500
  else if (arg === "--use-theme") {
455
501
  const themeName = args[i + 1];
456
502
  if (themeName === undefined || themeName.startsWith("-")) {
457
- result.diagnostics.push({ type: "error", message: "--use-theme requires a theme name" });
503
+ result.diagnostics.push({ type: "error", message: t("--use-theme requires a theme name") });
458
504
  }
459
505
  else {
460
506
  result.useTheme = themeName;
@@ -489,13 +535,13 @@ export function parseArgs(args) {
489
535
  i++;
490
536
  }
491
537
  else if (mode === undefined || mode.startsWith("-")) {
492
- result.diagnostics.push({ type: "error", message: "--tui-mode requires regular or fullscreen" });
538
+ result.diagnostics.push({ type: "error", message: t("--tui-mode requires regular or fullscreen") });
493
539
  }
494
540
  else {
495
541
  i++;
496
542
  result.diagnostics.push({
497
543
  type: "error",
498
- message: `Invalid TUI mode "${mode}". Valid values: regular, fullscreen`,
544
+ message: t('Invalid TUI mode "{mode}". Valid values: regular, fullscreen', { mode }),
499
545
  });
500
546
  }
501
547
  }
@@ -524,202 +570,202 @@ export function parseArgs(args) {
524
570
  return result;
525
571
  }
526
572
  export function printHelp() {
527
- console.log(`${chalk.bold(APP_NAME)} - AI coding assistant with read, bash, edit, write tools
573
+ console.log(`${chalk.bold(APP_NAME)} - ${t("AI coding assistant with read, bash, edit, write tools")}
528
574
 
529
- ${chalk.bold("Usage:")}
575
+ ${chalk.bold(t("Usage:"))}
530
576
  ${APP_NAME} [options] [--] [@files...] [messages...]
531
577
 
532
- ${chalk.bold("Commands:")}
533
- ${APP_NAME} install <source> [-l] Install extension source and add to settings
534
- ${APP_NAME} remove <source> [-l] Remove extension source from settings
535
- ${APP_NAME} uninstall <source> [-l] Alias for remove
536
- ${APP_NAME} update [source|self|agent-forge] Update Agent Forge, extensions, or model catalogs
537
- ${APP_NAME} list List installed extensions from settings
538
- ${APP_NAME} config [-l] Open TUI to enable/disable package resources (Tab switches scope)
539
- ${APP_NAME} auth <command> Print credentials or check provider readiness
540
- ${APP_NAME} <command> --help Show help for install/remove/uninstall/update/list/config/auth
578
+ ${chalk.bold(t("Commands:"))}
579
+ ${APP_NAME} install <source> [-l] ${t("Install extension source and add to settings")}
580
+ ${APP_NAME} remove <source> [-l] ${t("Remove extension source from settings")}
581
+ ${APP_NAME} uninstall <source> [-l] ${t("Alias for remove")}
582
+ ${APP_NAME} update [source|self|agent-forge] ${t("Update Agent Forge, extensions, or model catalogs")}
583
+ ${APP_NAME} list ${t("List installed extensions from settings")}
584
+ ${APP_NAME} config [-l] ${t("Open TUI to enable/disable package resources (Tab switches scope)")}
585
+ ${APP_NAME} auth <command> ${t("Print credentials or check provider readiness")}
586
+ ${APP_NAME} <command> --help ${t("Show help for install/remove/uninstall/update/list/config/auth")}
541
587
 
542
- ${chalk.bold("Options:")}
543
- --provider <name> Provider name (default: google)
544
- --model <pattern> Model pattern or ID (supports "provider/id" and optional ":<thinking>")
545
- --api-key <key> API key (defaults to env vars)
546
- --system-prompt <text> System prompt (default: coding assistant prompt)
547
- --append-system-prompt <text> Append text or file contents to the system prompt (can be used multiple times)
548
- --mode <mode> Output mode: text (default), json, or rpc
549
- --print, -p Non-interactive mode: process prompt and exit
550
- --continue, -c Continue previous session
551
- --resume, -r Select a session to resume
552
- --session <path|id> Use specific session file or partial UUID
553
- --session-id <id> Use exact project session ID, creating it if missing
554
- --fork <path|id> Fork specific session file or partial UUID into a new session
555
- --session-dir <dir> Directory for session storage and lookup
556
- --suite <id> Suite (方案) for this run: assistant (default) or coding; new sessions only
557
- --suite-create <id> Create a user suite workspace and exit; add --clone-from <id> to copy one
558
- --suite-delete <id> Delete a user suite workspace (active session references refuse) and exit
559
- --suite-reset <id> Reset a builtin suite to factory contents (shows a diff) and exit
560
- --serve <port> (Experimental, local trust only) Serve the coding-agent session runtime over the WebSocket gateway (default: 127.0.0.1; HTTP surface: /healthz plus token-protected artifact reads) and exit on SIGINT/SIGTERM
561
- Durable journal: <agentDir>/remote-server-journal.jsonl (never the process cwd)
562
- --serve-workspace-root <dir> Opt-in --serve boundary: remote creates must run inside one of these roots (repeatable); without it any local directory is allowed
563
- --subagent-runner (Experimental) Run as a headless subagent runner: serve the subagent-task protocol on stdio for a parent session's runner pool (D-045)
564
- --no-session Don't save session (ephemeral)
565
- --name, -n <name> Set session display name
566
- --models <patterns> Comma-separated model patterns for Ctrl+P cycling
567
- Supports globs (anthropic/*, *sonnet*) and fuzzy matching
568
- --no-tools, -nt Disable all tools by default (built-in and plugin)
569
- --no-builtin-tools, -nbt Disable built-in tools by default but keep plugin/custom tools enabled
570
- --tools, -t <tools> Comma-separated allowlist of tool names to enable
571
- Applies to built-in, plugin, and custom tools
572
- --exclude-tools, -xt <tools> Comma-separated denylist of tool names to disable
573
- Applies to built-in, plugin, and custom tools
574
- --thinking <level> Set thinking level: off, minimal, low, medium, high, xhigh, max
575
- --no-plugins, -np Disable capability plugin discovery (D-028 escape hatch)
576
- --no-trace Disable session trace collection (no .trace.jsonl file is written)
577
- --log-level <level> Host log level: debug, info (default), warn, error
578
- --plugin-profile <id> Select a builtin capability plugin profile for this run
579
- --plugin <id> Select a plugin within the profile (repeatable)
580
- --disable-plugin <id> Disable a plugin within the profile (repeatable)
581
- --plugin-scope <scope> Read the explicit selection from global or project storage
582
- plugin catalog list List installed/available ecosystem plugins (independent namespace)
583
- --skill <path> Load a skill file or directory (can be used multiple times)
584
- --no-skills, -ns Disable skills discovery and loading
585
- --prompt-template <path> Load a prompt template file or directory (can be used multiple times)
586
- --no-prompt-templates, -np Disable prompt template discovery and loading
587
- --theme <path> Load a theme file or directory (can be used multiple times)
588
- --use-theme <name[/name]> Set the initial interactive theme for this run
589
- --no-themes Disable theme discovery and loading
590
- --no-context-files, -nc Disable AGENTS.md and CLAUDE.md discovery and loading
591
- --export <file> Export session file to HTML and exit
592
- --trace <session> View a session trace file as a text timeline and exit; <session> is a session id/prefix or trace/session file path, omit it for the most recent session
593
- --trace-json With --trace, output the structured trace records as JSON instead of the text timeline
594
- --trace-kind <k1,k2> With --trace, show only records of these kinds (comma-separated); valid kinds: ${TRACE_KINDS_V1.join(", ")}
595
- --trace-limit <n> With --trace, show only the last N records (positive integer)
596
- --list-models [search] List available models (with optional fuzzy search)
597
- --verbose Force verbose startup (overrides quietStartup setting)
598
- --tui-mode <mode> TUI mode: regular (default) or fullscreen
599
- --offline Disable startup network operations (same as AGENT_FORGE_OFFLINE=1)
600
- -- End option parsing; treat remaining arguments as messages/files
601
- --help, -h Show this help
602
- --version, -v Show version number
588
+ ${chalk.bold(t("Options:"))}
589
+ --provider <name> ${t("Provider name (default: google)")}
590
+ --model <pattern> ${t('Model pattern or ID (supports "provider/id" and optional ":<thinking>")')}
591
+ --api-key <key> ${t("API key (defaults to env vars)")}
592
+ --system-prompt <text> ${t("System prompt (default: coding assistant prompt)")}
593
+ --append-system-prompt <text> ${t("Append text or file contents to the system prompt (can be used multiple times)")}
594
+ --mode <mode> ${t("Output mode: text (default), json, or rpc")}
595
+ --print, -p ${t("Non-interactive mode: process prompt and exit")}
596
+ --continue, -c ${t("Continue previous session")}
597
+ --resume, -r ${t("Select a session to resume")}
598
+ --session <path|id> ${t("Use specific session file or partial UUID")}
599
+ --session-id <id> ${t("Use exact project session ID, creating it if missing")}
600
+ --fork <path|id> ${t("Fork specific session file or partial UUID into a new session")}
601
+ --session-dir <dir> ${t("Directory for session storage and lookup")}
602
+ --suite <id> ${t("Suite (方案) for this run: coding (default) or assistant; new sessions only")}
603
+ --suite-create <id> ${t("Create a user suite workspace and exit; add --clone-from <id> to copy one")}
604
+ --suite-delete <id> ${t("Delete a user suite workspace (active session references refuse) and exit")}
605
+ --suite-reset <id> ${t("Reset a builtin suite to factory contents (shows a diff) and exit")}
606
+ --serve <port> ${t("(Experimental, local trust only) Serve the coding-agent session runtime over the WebSocket gateway (default: 127.0.0.1; HTTP surface: /healthz plus token-protected artifact reads) and exit on SIGINT/SIGTERM")}
607
+ ${t("Durable journal: <agentDir>/remote-server-journal.jsonl (never the process cwd)")}
608
+ --serve-workspace-root <dir> ${t("Opt-in --serve boundary: remote creates must run inside one of these roots (repeatable); without it any local directory is allowed")}
609
+ --subagent-runner ${t("(Experimental) Run as a headless subagent runner: serve the subagent-task protocol on stdio for a parent session's runner pool (D-045)")}
610
+ --no-session ${t("Don't save session (ephemeral)")}
611
+ --name, -n <name> ${t("Set session display name")}
612
+ --models <patterns> ${t("Comma-separated model patterns for Ctrl+P cycling")}
613
+ ${t("Supports globs (anthropic/*, *sonnet*) and fuzzy matching")}
614
+ --no-tools, -nt ${t("Disable all tools by default (built-in and plugin)")}
615
+ --no-builtin-tools, -nbt ${t("Disable built-in tools by default but keep plugin/custom tools enabled")}
616
+ --tools, -t <tools> ${t("Comma-separated allowlist of tool names to enable")}
617
+ ${t("Applies to built-in, plugin, and custom tools")}
618
+ --exclude-tools, -xt <tools> ${t("Comma-separated denylist of tool names to disable")}
619
+ ${t("Applies to built-in, plugin, and custom tools")}
620
+ --thinking <level> ${t("Set thinking level: off, minimal, low, medium, high, xhigh, max")}
621
+ --no-plugins, -np ${t("Disable capability plugin discovery (D-028 escape hatch)")}
622
+ --no-trace ${t("Disable session trace collection (no .trace.jsonl file is written)")}
623
+ --log-level <level> ${t("Host log level: debug, info (default), warn, error")}
624
+ --plugin-profile <id> ${t("Select a builtin capability plugin profile for this run")}
625
+ --plugin <id> ${t("Select a plugin within the profile (repeatable)")}
626
+ --disable-plugin <id> ${t("Disable a plugin within the profile (repeatable)")}
627
+ --plugin-scope <scope> ${t("Read the explicit selection from global or project storage")}
628
+ plugin catalog list ${t("List installed/available ecosystem plugins (independent namespace)")}
629
+ --skill <path> ${t("Load a skill file or directory (can be used multiple times)")}
630
+ --no-skills, -ns ${t("Disable skills discovery and loading")}
631
+ --prompt-template <path> ${t("Load a prompt template file or directory (can be used multiple times)")}
632
+ --no-prompt-templates, -np ${t("Disable prompt template discovery and loading")}
633
+ --theme <path> ${t("Load a theme file or directory (can be used multiple times)")}
634
+ --use-theme <name[/name]> ${t("Set the initial interactive theme for this run")}
635
+ --no-themes ${t("Disable theme discovery and loading")}
636
+ --no-context-files, -nc ${t("Disable AGENTS.md and CLAUDE.md discovery and loading")}
637
+ --export <file> ${t("Export session file to HTML and exit")}
638
+ --trace <session> ${t("View a session trace file as a text timeline and exit; <session> is a session id/prefix or trace/session file path, omit it for the most recent session")}
639
+ --trace-json ${t("With --trace, output the structured trace records as JSON instead of the text timeline")}
640
+ --trace-kind <k1,k2> ${t("With --trace, show only records of these kinds (comma-separated); valid kinds: {kinds}", { kinds: TRACE_KINDS_V1.join(", ") })}
641
+ --trace-limit <n> ${t("With --trace, show only the last N records (positive integer)")}
642
+ --list-models [search] ${t("List available models (with optional fuzzy search)")}
643
+ --verbose ${t("Force verbose startup (overrides quietStartup setting)")}
644
+ --tui-mode <mode> ${t("TUI mode: regular (default) or fullscreen")}
645
+ --offline ${t("Disable startup network operations (same as AGENT_FORGE_OFFLINE=1)")}
646
+ -- ${t("End option parsing; treat remaining arguments as messages/files")}
647
+ --help, -h ${t("Show this help")}
648
+ --version, -v ${t("Show version number")}
603
649
 
604
- ${chalk.bold("Examples:")}
605
- # Print a provider API key for an external client
650
+ ${chalk.bold(t("Examples:"))}
651
+ # ${t("Print a provider API key for an external client")}
606
652
  ${APP_NAME} auth print-api-key --provider openai
607
653
 
608
- # Print an OAuth bearer token for an external client (refreshes if expired)
654
+ # ${t("Print an OAuth bearer token for an external client (refreshes if expired)")}
609
655
  ${APP_NAME} auth print-bearer-token --provider openai-codex
610
656
 
611
- # Interactive mode
657
+ # ${t("Interactive mode")}
612
658
  ${APP_NAME}
613
659
 
614
- # Interactive mode with initial prompt
660
+ # ${t("Interactive mode with initial prompt")}
615
661
  ${APP_NAME} "List all .ts files in src/"
616
662
 
617
- # Include files in initial message
663
+ # ${t("Include files in initial message")}
618
664
  ${APP_NAME} @prompt.md @image.png "What color is the sky?"
619
665
 
620
- # Non-interactive mode (process and exit)
666
+ # ${t("Non-interactive mode (process and exit)")}
621
667
  ${APP_NAME} -p "List all .ts files in src/"
622
668
 
623
- # Prompt beginning with a dash
669
+ # ${t("Prompt beginning with a dash")}
624
670
  ${APP_NAME} -p -- "- Summarize these points"
625
671
 
626
- # Multiple messages (interactive)
672
+ # ${t("Multiple messages (interactive)")}
627
673
  ${APP_NAME} "Read package.json" "What dependencies do we have?"
628
674
 
629
- # Continue previous session
675
+ # ${t("Continue previous session")}
630
676
  ${APP_NAME} --continue "What did we discuss?"
631
677
 
632
- # Start a named session
678
+ # ${t("Start a named session")}
633
679
  ${APP_NAME} --name "Refactor auth module"
634
680
 
635
- # Use different model
681
+ # ${t("Use different model")}
636
682
  ${APP_NAME} --provider openai --model gpt-4o-mini "Help me refactor this code"
637
683
 
638
- # Use model with provider prefix (no --provider needed)
684
+ # ${t("Use model with provider prefix (no --provider needed)")}
639
685
  ${APP_NAME} --model openai/gpt-4o "Help me refactor this code"
640
686
 
641
- # Use model with thinking level shorthand
687
+ # ${t("Use model with thinking level shorthand")}
642
688
  ${APP_NAME} --model sonnet:high "Solve this complex problem"
643
689
 
644
- # Limit model cycling to specific models
690
+ # ${t("Limit model cycling to specific models")}
645
691
  ${APP_NAME} --models claude-sonnet,claude-haiku,gpt-4o
646
692
 
647
- # Limit to a specific provider with glob pattern
693
+ # ${t("Limit to a specific provider with glob pattern")}
648
694
  ${APP_NAME} --models "github-copilot/*"
649
695
 
650
- # Cycle models with fixed thinking levels
696
+ # ${t("Cycle models with fixed thinking levels")}
651
697
  ${APP_NAME} --models sonnet:high,haiku:low
652
698
 
653
- # Start with a specific thinking level
699
+ # ${t("Start with a specific thinking level")}
654
700
  ${APP_NAME} --thinking high "Solve this complex problem"
655
701
 
656
- # Read-only mode (no file modifications possible)
702
+ # ${t("Read-only mode (no file modifications possible)")}
657
703
  ${APP_NAME} --tools read,grep,find,ls -p "Review the code in src/"
658
704
 
659
- # Disable one tool while keeping the rest available
705
+ # ${t("Disable one tool while keeping the rest available")}
660
706
  ${APP_NAME} --exclude-tools ask_question
661
707
 
662
- # Export a session file to HTML
708
+ # ${t("Export a session file to HTML")}
663
709
  ${APP_NAME} --export ~/${CONFIG_DIR_NAME}/agent/sessions/--path--/session.jsonl
664
710
  ${APP_NAME} --export session.jsonl output.html
665
711
 
666
- ${chalk.bold("Environment Variables:")}
667
- ANTHROPIC_AUTH_TOKEN - Anthropic bearer auth token
668
- ANTHROPIC_API_KEY - Anthropic Claude API key
669
- ANTHROPIC_OAUTH_TOKEN - Anthropic OAuth token (alternative to API key)
670
- ANT_LING_API_KEY - Ant Ling API key
671
- OPENAI_API_KEY - OpenAI GPT API key
672
- AZURE_OPENAI_API_KEY - Azure OpenAI API key
673
- AZURE_OPENAI_BASE_URL - Azure OpenAI/Cognitive Services base URL (e.g. https://{resource}.openai.azure.com)
674
- AZURE_OPENAI_RESOURCE_NAME - Azure OpenAI resource name (alternative to base URL)
675
- AZURE_OPENAI_API_VERSION - Azure OpenAI API version (default: v1)
676
- AZURE_OPENAI_DEPLOYMENT_NAME_MAP - Azure OpenAI model=deployment map (comma-separated)
677
- DEEPSEEK_API_KEY - DeepSeek API key
678
- NVIDIA_API_KEY - NVIDIA NIM API key
679
- GEMINI_API_KEY - Google Gemini API key
680
- GROQ_API_KEY - Groq API key
681
- CEREBRAS_API_KEY - Cerebras API key
682
- XAI_API_KEY - xAI Grok API key
683
- FIREWORKS_API_KEY - Fireworks API key
684
- TOGETHER_API_KEY - Together AI API key
685
- BASETEN_API_KEY - Baseten API key
686
- OPENROUTER_API_KEY - OpenRouter API key
687
- AI_GATEWAY_API_KEY - Vercel AI Gateway API key
688
- ZAI_API_KEY - ZAI Coding Plan API key (Global)
689
- ZAI_CODING_CN_API_KEY - ZAI Coding Plan API key (China)
690
- MISTRAL_API_KEY - Mistral API key
691
- MINIMAX_API_KEY - MiniMax API key
692
- MOONSHOT_API_KEY - Moonshot AI API key
693
- OPENCODE_API_KEY - OpenCode Zen/OpenCode Go API key
694
- KIMI_API_KEY - Kimi For Coding API key
695
- CLOUDFLARE_API_KEY - Cloudflare API token (Workers AI and AI Gateway)
696
- CLOUDFLARE_ACCOUNT_ID - Cloudflare account id (required for both)
697
- CLOUDFLARE_GATEWAY_ID - Cloudflare AI Gateway slug (required for AI Gateway)
698
- QWEN_TOKEN_PLAN_API_KEY - Qwen Token Plan API key (international region)
699
- QWEN_TOKEN_PLAN_CN_API_KEY - Qwen Token Plan API key (China region)
700
- XIAOMI_API_KEY - Xiaomi MiMo API key (api.xiaomimimo.com billing)
701
- XIAOMI_TOKEN_PLAN_CN_API_KEY - Xiaomi MiMo Token Plan API key (China region)
702
- XIAOMI_TOKEN_PLAN_AMS_API_KEY - Xiaomi MiMo Token Plan API key (Amsterdam region)
703
- XIAOMI_TOKEN_PLAN_SGP_API_KEY - Xiaomi MiMo Token Plan API key (Singapore region)
704
- AWS_PROFILE - AWS profile for Amazon Bedrock
705
- AWS_ACCESS_KEY_ID - AWS access key for Amazon Bedrock
706
- AWS_SECRET_ACCESS_KEY - AWS secret key for Amazon Bedrock
707
- AWS_BEARER_TOKEN_BEDROCK - Bedrock API key (bearer token)
708
- AWS_REGION - AWS region for Amazon Bedrock (e.g., us-east-1)
709
- ${ENV_AGENT_DIR.padEnd(32)} - Config directory (default: ~/${CONFIG_DIR_NAME}/agent)
710
- ${ENV_SESSION_DIR.padEnd(32)} - Session storage directory (overridden by --session-dir)
711
- AGENT_FORGE_PACKAGE_DIR - Override package directory (for Nix/Guix store paths)
712
- AGENT_FORGE_OFFLINE - Disable startup network operations when set to 1/true/yes
712
+ ${chalk.bold(t("Environment Variables:"))}
713
+ ANTHROPIC_AUTH_TOKEN - ${t("Anthropic bearer auth token")}
714
+ ANTHROPIC_API_KEY - ${t("Anthropic Claude API key")}
715
+ ANTHROPIC_OAUTH_TOKEN - ${t("Anthropic OAuth token (alternative to API key)")}
716
+ ANT_LING_API_KEY - ${t("Ant Ling API key")}
717
+ OPENAI_API_KEY - ${t("OpenAI GPT API key")}
718
+ AZURE_OPENAI_API_KEY - ${t("Azure OpenAI API key")}
719
+ AZURE_OPENAI_BASE_URL - ${t("Azure OpenAI/Cognitive Services base URL (e.g. https://{resource}.openai.azure.com)")}
720
+ AZURE_OPENAI_RESOURCE_NAME - ${t("Azure OpenAI resource name (alternative to base URL)")}
721
+ AZURE_OPENAI_API_VERSION - ${t("Azure OpenAI API version (default: v1)")}
722
+ AZURE_OPENAI_DEPLOYMENT_NAME_MAP - ${t("Azure OpenAI model=deployment map (comma-separated)")}
723
+ DEEPSEEK_API_KEY - ${t("DeepSeek API key")}
724
+ NVIDIA_API_KEY - ${t("NVIDIA NIM API key")}
725
+ GEMINI_API_KEY - ${t("Google Gemini API key")}
726
+ GROQ_API_KEY - ${t("Groq API key")}
727
+ CEREBRAS_API_KEY - ${t("Cerebras API key")}
728
+ XAI_API_KEY - ${t("xAI Grok API key")}
729
+ FIREWORKS_API_KEY - ${t("Fireworks API key")}
730
+ TOGETHER_API_KEY - ${t("Together AI API key")}
731
+ BASETEN_API_KEY - ${t("Baseten API key")}
732
+ OPENROUTER_API_KEY - ${t("OpenRouter API key")}
733
+ AI_GATEWAY_API_KEY - ${t("Vercel AI Gateway API key")}
734
+ ZAI_API_KEY - ${t("ZAI Coding Plan API key (Global)")}
735
+ ZAI_CODING_CN_API_KEY - ${t("ZAI Coding Plan API key (China)")}
736
+ MISTRAL_API_KEY - ${t("Mistral API key")}
737
+ MINIMAX_API_KEY - ${t("MiniMax API key")}
738
+ MOONSHOT_API_KEY - ${t("Moonshot AI API key")}
739
+ OPENCODE_API_KEY - ${t("OpenCode Zen/OpenCode Go API key")}
740
+ KIMI_API_KEY - ${t("Kimi For Coding API key")}
741
+ CLOUDFLARE_API_KEY - ${t("Cloudflare API token (Workers AI and AI Gateway)")}
742
+ CLOUDFLARE_ACCOUNT_ID - ${t("Cloudflare account id (required for both)")}
743
+ CLOUDFLARE_GATEWAY_ID - ${t("Cloudflare AI Gateway slug (required for AI Gateway)")}
744
+ QWEN_TOKEN_PLAN_API_KEY - ${t("Qwen Token Plan API key (international region)")}
745
+ QWEN_TOKEN_PLAN_CN_API_KEY - ${t("Qwen Token Plan API key (China region)")}
746
+ XIAOMI_API_KEY - ${t("Xiaomi MiMo API key (api.xiaomimimo.com billing)")}
747
+ XIAOMI_TOKEN_PLAN_CN_API_KEY - ${t("Xiaomi MiMo Token Plan API key (China region)")}
748
+ XIAOMI_TOKEN_PLAN_AMS_API_KEY - ${t("Xiaomi MiMo Token Plan API key (Amsterdam region)")}
749
+ XIAOMI_TOKEN_PLAN_SGP_API_KEY - ${t("Xiaomi MiMo Token Plan API key (Singapore region)")}
750
+ AWS_PROFILE - ${t("AWS profile for Amazon Bedrock")}
751
+ AWS_ACCESS_KEY_ID - ${t("AWS access key for Amazon Bedrock")}
752
+ AWS_SECRET_ACCESS_KEY - ${t("AWS secret key for Amazon Bedrock")}
753
+ AWS_BEARER_TOKEN_BEDROCK - ${t("Bedrock API key (bearer token)")}
754
+ AWS_REGION - ${t("AWS region for Amazon Bedrock (e.g., us-east-1)")}
755
+ ${ENV_AGENT_DIR.padEnd(32)} - ${t("Config directory (default: ~/{configDir}/agent)", { configDir: CONFIG_DIR_NAME })}
756
+ ${ENV_SESSION_DIR.padEnd(32)} - ${t("Session storage directory (overridden by --session-dir)")}
757
+ AGENT_FORGE_PACKAGE_DIR - ${t("Override package directory (for Nix/Guix store paths)")}
758
+ AGENT_FORGE_OFFLINE - ${t("Disable startup network operations when set to 1/true/yes")}
713
759
 
714
- ${chalk.bold("Built-in Tool Names:")}
715
- read - Read file contents
716
- bash - Execute bash commands
717
- powershell - Execute PowerShell commands on Windows
718
- edit - Edit files with find/replace
719
- write - Write files (creates/overwrites)
720
- grep - Search file contents (read-only, off by default)
721
- find - Find files by glob pattern (read-only, off by default)
722
- ls - List directory contents (read-only, off by default)
760
+ ${chalk.bold(t("Built-in Tool Names:"))}
761
+ read - ${t("Read file contents")}
762
+ bash - ${t("Execute bash commands")}
763
+ powershell - ${t("Execute PowerShell commands on Windows")}
764
+ edit - ${t("Edit files with find/replace")}
765
+ write - ${t("Write files (creates/overwrites)")}
766
+ grep - ${t("Search file contents (read-only, off by default)")}
767
+ find - ${t("Find files by glob pattern (read-only, off by default)")}
768
+ ls - ${t("List directory contents (read-only, off by default)")}
723
769
  `);
724
770
  }
725
771
  //# sourceMappingURL=args.js.map