@armadra/agent 0.8.0 → 0.9.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 (514) hide show
  1. package/CHANGELOG.md +52 -32
  2. package/CHANGELOG.zh-CN.md +69 -49
  3. package/README.md +162 -204
  4. package/README.zh-CN.md +150 -199
  5. package/dist/acp.d.ts +1 -1
  6. package/dist/acp.js +1 -1
  7. package/dist/agent/limits.d.ts +1 -1
  8. package/dist/agent/limits.js +1 -1
  9. package/dist/agent/loop-guard.d.ts +1 -1
  10. package/dist/agent/loop-guard.js +1 -1
  11. package/dist/agent/prompt-rules.d.ts +1 -1
  12. package/dist/agent/prompt-rules.js +1 -1
  13. package/dist/agent/reminders.d.ts +1 -1
  14. package/dist/agent/reminders.js +1 -1
  15. package/dist/agent/session-cache-key.d.ts +1 -1
  16. package/dist/agent/session-cache-key.js +1 -1
  17. package/dist/agent/session-extensions.d.ts +1 -1
  18. package/dist/agent/session-extensions.js +1 -1
  19. package/dist/agent/session-images.d.ts +1 -1
  20. package/dist/agent/session-images.js +1 -1
  21. package/dist/agent/session-plan.d.ts +1 -1
  22. package/dist/agent/session-plan.js +1 -1
  23. package/dist/agent/session-rewind.d.ts +1 -1
  24. package/dist/agent/session-rewind.js +1 -1
  25. package/dist/agent/session-settings.d.ts +1 -1
  26. package/dist/agent/session-settings.js +1 -1
  27. package/dist/agent/session-subagent.d.ts +1 -1
  28. package/dist/agent/session-subagent.js +1 -1
  29. package/dist/agent/session-telemetry.d.ts +1 -1
  30. package/dist/agent/session-telemetry.js +1 -1
  31. package/dist/agent/session-trace-writer.d.ts +1 -1
  32. package/dist/agent/session-trace-writer.js +1 -1
  33. package/dist/agent/session.js +1 -1
  34. package/dist/agent/subagent-background.d.ts +1 -1
  35. package/dist/agent/subagent-background.js +1 -1
  36. package/dist/agent/subagent-direct.d.ts +1 -1
  37. package/dist/agent/subagent-direct.js +1 -1
  38. package/dist/agent/subagent-fork.d.ts +1 -1
  39. package/dist/agent/subagent-fork.js +1 -1
  40. package/dist/agent/subagent-registry.d.ts +1 -1
  41. package/dist/agent/subagent-registry.js +1 -1
  42. package/dist/agent/system-prompt.js +1 -1
  43. package/dist/agent/tool-availability.d.ts +1 -1
  44. package/dist/agent/tool-availability.js +1 -1
  45. package/dist/agent/types-w5.d.ts +2 -2
  46. package/dist/agent/types-w5.js +1 -1
  47. package/dist/agent/types-w6.d.ts +1 -1
  48. package/dist/agent/types-w6.js +1 -1
  49. package/dist/agent/types.d.ts +1 -1
  50. package/dist/agent/worktree.d.ts +1 -1
  51. package/dist/agent/worktree.js +1 -1
  52. package/dist/agents/builtin.d.ts +1 -1
  53. package/dist/agents/builtin.js +1 -1
  54. package/dist/agents/catalog.d.ts +1 -1
  55. package/dist/agents/catalog.js +1 -1
  56. package/dist/agents/discover.d.ts +1 -1
  57. package/dist/agents/discover.js +1 -1
  58. package/dist/agents/external.d.ts +1 -1
  59. package/dist/agents/external.js +1 -1
  60. package/dist/agents/parse.d.ts +1 -1
  61. package/dist/agents/parse.js +1 -1
  62. package/dist/agents/result.d.ts +1 -1
  63. package/dist/agents/result.js +2 -2
  64. package/dist/agents/task-record.d.ts +3 -3
  65. package/dist/agents/task-record.js +2 -2
  66. package/dist/agents/types.d.ts +1 -1
  67. package/dist/agents/types.js +1 -1
  68. package/dist/ai/apis/anthropic-compat.d.ts +2 -2
  69. package/dist/ai/apis/anthropic-compat.js +2 -2
  70. package/dist/ai/apis/cache-params.d.ts +1 -1
  71. package/dist/ai/apis/cache-params.js +1 -1
  72. package/dist/ai/apis/chatgpt-backend.d.ts +1 -1
  73. package/dist/ai/apis/chatgpt-backend.js +1 -1
  74. package/dist/ai/apis/chatgpt-rate-limits.d.ts +1 -1
  75. package/dist/ai/apis/chatgpt-rate-limits.js +1 -1
  76. package/dist/ai/apis/max-tokens.d.ts +1 -1
  77. package/dist/ai/apis/max-tokens.js +1 -1
  78. package/dist/ai/apis/shared.d.ts +1 -1
  79. package/dist/ai/apis/shared.js +1 -1
  80. package/dist/ai/image-intern.d.ts +2 -2
  81. package/dist/ai/image-intern.js +1 -1
  82. package/dist/ai/image-limits.d.ts +1 -1
  83. package/dist/ai/image-limits.js +1 -1
  84. package/dist/ai/json-body.d.ts +1 -1
  85. package/dist/ai/json-body.js +1 -1
  86. package/dist/ai/providers/builtin.d.ts +2 -2
  87. package/dist/ai/providers/builtin.js +4 -4
  88. package/dist/ai/providers/catalog-data.js +2 -2
  89. package/dist/ai/providers/catalog.d.ts +2 -2
  90. package/dist/ai/providers/catalog.js +1 -1
  91. package/dist/ai/providers/channels.d.ts +1 -1
  92. package/dist/ai/providers/channels.js +1 -1
  93. package/dist/ai/providers/enrich.d.ts +1 -1
  94. package/dist/ai/providers/enrich.js +1 -1
  95. package/dist/ai/providers/models-dev-cache.d.ts +1 -1
  96. package/dist/ai/providers/models-dev-cache.js +1 -1
  97. package/dist/ai/providers/models-dev-data.d.ts +1 -1
  98. package/dist/ai/providers/models-dev-data.js +12 -12
  99. package/dist/ai/providers/models-dev-snapshot.d.ts +1 -1
  100. package/dist/ai/providers/models-dev-snapshot.js +1 -1
  101. package/dist/ai/providers/models-dev.d.ts +4 -4
  102. package/dist/ai/providers/models-dev.js +3 -3
  103. package/dist/ai/types.d.ts +2 -2
  104. package/dist/ai/types.js +1 -1
  105. package/dist/auth/chatgpt/cli.d.ts +1 -1
  106. package/dist/auth/chatgpt/cli.js +1 -1
  107. package/dist/auth/chatgpt/host-id.d.ts +1 -1
  108. package/dist/auth/chatgpt/host-id.js +1 -1
  109. package/dist/auth/chatgpt/login.d.ts +1 -1
  110. package/dist/auth/chatgpt/login.js +1 -1
  111. package/dist/auth/chatgpt/presets.d.ts +1 -1
  112. package/dist/auth/chatgpt/presets.js +1 -1
  113. package/dist/auth/oauth/callback-server.d.ts +1 -1
  114. package/dist/auth/oauth/callback-server.js +1 -1
  115. package/dist/auth/oauth/flows.d.ts +1 -1
  116. package/dist/auth/oauth/flows.js +1 -1
  117. package/dist/auth/oauth/oidc.d.ts +1 -1
  118. package/dist/auth/oauth/oidc.js +1 -1
  119. package/dist/auth/oauth/pkce.d.ts +1 -1
  120. package/dist/auth/oauth/pkce.js +1 -1
  121. package/dist/auth/oauth/refresh.d.ts +1 -1
  122. package/dist/auth/oauth/refresh.js +1 -1
  123. package/dist/auth/oauth/token-client.d.ts +1 -1
  124. package/dist/auth/oauth/token-client.js +1 -1
  125. package/dist/auth/oauth/token-store.d.ts +1 -1
  126. package/dist/auth/oauth/token-store.js +1 -1
  127. package/dist/auth/testing/fake-oauth.d.ts +1 -1
  128. package/dist/auth/testing/fake-oauth.js +1 -1
  129. package/dist/bundle/ama.cjs +41 -38
  130. package/dist/checkpoints/backend.js +6 -1
  131. package/dist/checkpoints/blobs.d.ts +1 -1
  132. package/dist/checkpoints/blobs.js +1 -1
  133. package/dist/checkpoints/gc.d.ts +1 -1
  134. package/dist/checkpoints/gc.js +1 -1
  135. package/dist/checkpoints/git-head.d.ts +1 -1
  136. package/dist/checkpoints/git-head.js +1 -1
  137. package/dist/checkpoints/index.d.ts +1 -1
  138. package/dist/checkpoints/index.js +1 -1
  139. package/dist/checkpoints/replay.d.ts +1 -1
  140. package/dist/checkpoints/replay.js +1 -1
  141. package/dist/checkpoints/restore.d.ts +1 -1
  142. package/dist/checkpoints/restore.js +1 -1
  143. package/dist/checkpoints/settings.d.ts +1 -1
  144. package/dist/checkpoints/settings.js +1 -1
  145. package/dist/checkpoints/shadow-git.d.ts +1 -1
  146. package/dist/checkpoints/shadow-git.js +1 -1
  147. package/dist/checkpoints/shadow-restore.d.ts +1 -1
  148. package/dist/checkpoints/shadow-restore.js +1 -1
  149. package/dist/checkpoints/tracker.d.ts +1 -1
  150. package/dist/checkpoints/tracker.js +1 -1
  151. package/dist/checkpoints/types.d.ts +1 -1
  152. package/dist/checkpoints/types.js +1 -1
  153. package/dist/cli/args.d.ts +2 -2
  154. package/dist/cli/args.js +1 -1
  155. package/dist/cli/bootstrap.js +1 -1
  156. package/dist/cli/choice-prompt.d.ts +1 -1
  157. package/dist/cli/choice-prompt.js +1 -1
  158. package/dist/cli/codemode-notice.d.ts +1 -1
  159. package/dist/cli/codemode-notice.js +1 -1
  160. package/dist/cli/compose-agents.d.ts +1 -1
  161. package/dist/cli/compose-agents.js +1 -1
  162. package/dist/cli/compose-extensions.d.ts +1 -1
  163. package/dist/cli/compose-extensions.js +1 -1
  164. package/dist/cli/compose-memory.d.ts +1 -1
  165. package/dist/cli/compose-memory.js +1 -1
  166. package/dist/cli/compose-providers.d.ts +1 -1
  167. package/dist/cli/compose-providers.js +1 -1
  168. package/dist/cli/compose-request.d.ts +1 -1
  169. package/dist/cli/compose-request.js +1 -1
  170. package/dist/cli/from-prompt.d.ts +1 -1
  171. package/dist/cli/from-prompt.js +1 -1
  172. package/dist/cli/main.d.ts +1 -1
  173. package/dist/cli/main.js +1 -1
  174. package/dist/cli/subcommands/auth.d.ts +1 -1
  175. package/dist/cli/subcommands/auth.js +1 -1
  176. package/dist/cli/subcommands/config-set.d.ts +1 -1
  177. package/dist/cli/subcommands/config-set.js +1 -1
  178. package/dist/cli/subcommands/doctor.js +1 -1
  179. package/dist/cli/subcommands/init.d.ts +1 -1
  180. package/dist/cli/subcommands/init.js +1 -1
  181. package/dist/cli/subcommands/memory.d.ts +1 -1
  182. package/dist/cli/subcommands/memory.js +1 -1
  183. package/dist/cli/subcommands/models.js +1 -1
  184. package/dist/cli/subcommands/providers-list.d.ts +1 -1
  185. package/dist/cli/subcommands/providers-list.js +1 -1
  186. package/dist/cli/subcommands/providers-plan.d.ts +1 -1
  187. package/dist/cli/subcommands/providers-plan.js +1 -1
  188. package/dist/cli/subcommands/providers.d.ts +1 -1
  189. package/dist/cli/subcommands/providers.js +1 -1
  190. package/dist/cli/subcommands/sessions-export.d.ts +1 -1
  191. package/dist/cli/subcommands/sessions-export.js +1 -1
  192. package/dist/cli/subcommands/sessions-trace.d.ts +1 -1
  193. package/dist/cli/subcommands/sessions-trace.js +1 -1
  194. package/dist/cli/subcommands/sessions.d.ts +1 -1
  195. package/dist/cli/subcommands/sessions.js +1 -1
  196. package/dist/cli/subcommands/stats.d.ts +1 -1
  197. package/dist/cli/subcommands/stats.js +1 -1
  198. package/dist/codemode/capability.d.ts +1 -1
  199. package/dist/codemode/capability.js +1 -1
  200. package/dist/codemode/host-side.d.ts +2 -2
  201. package/dist/codemode/host-side.js +2 -2
  202. package/dist/compaction/image-budget.d.ts +1 -1
  203. package/dist/compaction/image-budget.js +1 -1
  204. package/dist/config/edit.d.ts +1 -1
  205. package/dist/config/edit.js +1 -1
  206. package/dist/config/init.d.ts +1 -1
  207. package/dist/config/init.js +1 -1
  208. package/dist/config/json-schema.d.ts +2 -2
  209. package/dist/config/json-schema.js +2 -2
  210. package/dist/config/schema-w5.d.ts +1 -1
  211. package/dist/config/schema-w5.js +1 -1
  212. package/dist/config/schema-w6.d.ts +1 -1
  213. package/dist/config/schema-w6.js +1 -1
  214. package/dist/config/settings-registry.d.ts +1 -1
  215. package/dist/config/settings-registry.js +1 -1
  216. package/dist/config/types-w5.d.ts +2 -2
  217. package/dist/config/types-w5.js +2 -2
  218. package/dist/config/types-w6.d.ts +5 -5
  219. package/dist/config/types-w6.js +1 -1
  220. package/dist/config/types.d.ts +6 -6
  221. package/dist/config/types.js +1 -1
  222. package/dist/drivers/acp/client.d.ts +1 -1
  223. package/dist/drivers/acp/client.js +1 -1
  224. package/dist/drivers/acp/driver.d.ts +1 -1
  225. package/dist/drivers/acp/driver.js +1 -1
  226. package/dist/drivers/acp/testing/fake-agent.d.ts +1 -1
  227. package/dist/drivers/acp/testing/fake-agent.js +1 -1
  228. package/dist/drivers/acp/types.d.ts +1 -1
  229. package/dist/drivers/acp/types.js +1 -1
  230. package/dist/drivers/agents.d.ts +1 -1
  231. package/dist/drivers/agents.js +1 -1
  232. package/dist/drivers/base.d.ts +1 -1
  233. package/dist/drivers/base.js +1 -1
  234. package/dist/drivers/catalog.d.ts +1 -1
  235. package/dist/drivers/catalog.js +1 -1
  236. package/dist/drivers/env.d.ts +1 -1
  237. package/dist/drivers/env.js +1 -1
  238. package/dist/drivers/host-runners.d.ts +1 -1
  239. package/dist/drivers/host-runners.js +1 -1
  240. package/dist/drivers/jsonrpc.d.ts +1 -1
  241. package/dist/drivers/jsonrpc.js +1 -1
  242. package/dist/drivers/native/claude-normalize.d.ts +1 -1
  243. package/dist/drivers/native/claude-normalize.js +1 -1
  244. package/dist/drivers/native/claude-stream.d.ts +1 -1
  245. package/dist/drivers/native/claude-stream.js +1 -1
  246. package/dist/drivers/native/codex-app-server.d.ts +1 -1
  247. package/dist/drivers/native/codex-app-server.js +1 -1
  248. package/dist/drivers/native/codex-normalize.d.ts +1 -1
  249. package/dist/drivers/native/codex-normalize.js +1 -1
  250. package/dist/drivers/native/oneshot.d.ts +1 -1
  251. package/dist/drivers/native/oneshot.js +1 -1
  252. package/dist/drivers/permissions.d.ts +1 -1
  253. package/dist/drivers/permissions.js +1 -1
  254. package/dist/drivers/pids.d.ts +1 -1
  255. package/dist/drivers/pids.js +1 -1
  256. package/dist/drivers/pool.d.ts +1 -1
  257. package/dist/drivers/pool.js +1 -1
  258. package/dist/drivers/probe.d.ts +1 -1
  259. package/dist/drivers/probe.js +1 -1
  260. package/dist/drivers/process.d.ts +1 -1
  261. package/dist/drivers/process.js +1 -1
  262. package/dist/drivers/runner.d.ts +1 -1
  263. package/dist/drivers/runner.js +1 -1
  264. package/dist/drivers/store.d.ts +1 -1
  265. package/dist/drivers/store.js +1 -1
  266. package/dist/drivers/types.d.ts +1 -1
  267. package/dist/drivers/types.js +1 -1
  268. package/dist/git/info.d.ts +1 -1
  269. package/dist/git/info.js +1 -1
  270. package/dist/host/api-impl.d.ts +1 -1
  271. package/dist/host/api-impl.js +1 -1
  272. package/dist/host/types.d.ts +2 -2
  273. package/dist/i18n/catalog.d.ts +2 -2
  274. package/dist/i18n/catalog.js +2 -2
  275. package/dist/i18n/format.d.ts +1 -1
  276. package/dist/i18n/format.js +1 -1
  277. package/dist/i18n/index.d.ts +1 -1
  278. package/dist/i18n/index.js +1 -1
  279. package/dist/i18n/messages/acp.d.ts +1 -1
  280. package/dist/i18n/messages/acp.js +1 -1
  281. package/dist/i18n/messages/agents.d.ts +1 -1
  282. package/dist/i18n/messages/agents.js +1 -1
  283. package/dist/i18n/messages/approval.d.ts +1 -1
  284. package/dist/i18n/messages/approval.js +1 -1
  285. package/dist/i18n/messages/auth.d.ts +1 -1
  286. package/dist/i18n/messages/auth.js +1 -1
  287. package/dist/i18n/messages/cli.d.ts +1 -1
  288. package/dist/i18n/messages/cli.js +1 -1
  289. package/dist/i18n/messages/config-keys.js +12 -12
  290. package/dist/i18n/messages/config.d.ts +1 -1
  291. package/dist/i18n/messages/config.js +3 -3
  292. package/dist/i18n/messages/drivers.d.ts +1 -1
  293. package/dist/i18n/messages/drivers.js +1 -1
  294. package/dist/i18n/messages/errors.d.ts +1 -1
  295. package/dist/i18n/messages/errors.js +1 -1
  296. package/dist/i18n/messages/interactive-line.d.ts +1 -1
  297. package/dist/i18n/messages/interactive-line.js +1 -1
  298. package/dist/i18n/messages/interactive-startup.d.ts +1 -1
  299. package/dist/i18n/messages/interactive-startup.js +1 -1
  300. package/dist/i18n/messages/interactive-view.d.ts +1 -1
  301. package/dist/i18n/messages/interactive-view.js +1 -1
  302. package/dist/i18n/messages/interactive.d.ts +1 -1
  303. package/dist/i18n/messages/interactive.js +1 -1
  304. package/dist/i18n/messages/memory.d.ts +1 -1
  305. package/dist/i18n/messages/memory.js +1 -1
  306. package/dist/i18n/messages/panels.d.ts +1 -1
  307. package/dist/i18n/messages/panels.js +1 -1
  308. package/dist/i18n/messages/permissions.d.ts +1 -1
  309. package/dist/i18n/messages/permissions.js +1 -1
  310. package/dist/i18n/messages/plan.d.ts +1 -1
  311. package/dist/i18n/messages/plan.js +1 -1
  312. package/dist/i18n/messages/print.d.ts +2 -2
  313. package/dist/i18n/messages/print.js +2 -2
  314. package/dist/i18n/messages/report-context.d.ts +1 -1
  315. package/dist/i18n/messages/report-context.js +1 -1
  316. package/dist/i18n/messages/report.d.ts +1 -1
  317. package/dist/i18n/messages/report.js +1 -1
  318. package/dist/i18n/messages/rewind.d.ts +1 -1
  319. package/dist/i18n/messages/rewind.js +1 -1
  320. package/dist/i18n/messages/session.d.ts +1 -1
  321. package/dist/i18n/messages/session.js +1 -1
  322. package/dist/i18n/messages/settings.d.ts +1 -1
  323. package/dist/i18n/messages/settings.js +1 -1
  324. package/dist/i18n/messages/subcommands.d.ts +1 -1
  325. package/dist/i18n/messages/subcommands.js +1 -1
  326. package/dist/i18n/messages/trace.d.ts +1 -1
  327. package/dist/i18n/messages/trace.js +1 -1
  328. package/dist/i18n/types.d.ts +1 -1
  329. package/dist/i18n/types.js +1 -1
  330. package/dist/memory/frontmatter.d.ts +1 -1
  331. package/dist/memory/frontmatter.js +1 -1
  332. package/dist/memory/index.d.ts +1 -1
  333. package/dist/memory/index.js +1 -1
  334. package/dist/memory/lock.d.ts +1 -1
  335. package/dist/memory/lock.js +1 -1
  336. package/dist/memory/paths.d.ts +1 -1
  337. package/dist/memory/paths.js +1 -1
  338. package/dist/memory/runtime.d.ts +1 -1
  339. package/dist/memory/runtime.js +1 -1
  340. package/dist/memory/secrets.d.ts +1 -1
  341. package/dist/memory/secrets.js +1 -1
  342. package/dist/memory/section.d.ts +1 -1
  343. package/dist/memory/section.js +1 -1
  344. package/dist/memory/store.d.ts +1 -1
  345. package/dist/memory/store.js +1 -1
  346. package/dist/memory/tool.d.ts +1 -1
  347. package/dist/memory/tool.js +1 -1
  348. package/dist/modes/acp/acp-auth-gate.d.ts +1 -1
  349. package/dist/modes/acp/acp-auth-gate.js +1 -1
  350. package/dist/modes/acp/acp-config.d.ts +1 -1
  351. package/dist/modes/acp/acp-config.js +1 -1
  352. package/dist/modes/acp/acp-connection.d.ts +1 -1
  353. package/dist/modes/acp/acp-connection.js +1 -1
  354. package/dist/modes/acp/acp-events.d.ts +1 -1
  355. package/dist/modes/acp/acp-events.js +1 -1
  356. package/dist/modes/acp/acp-mode.d.ts +1 -1
  357. package/dist/modes/acp/acp-mode.js +1 -1
  358. package/dist/modes/acp/acp-server.d.ts +2 -2
  359. package/dist/modes/acp/acp-server.js +2 -2
  360. package/dist/modes/acp/acp-sessions.d.ts +2 -2
  361. package/dist/modes/acp/acp-sessions.js +2 -2
  362. package/dist/modes/acp/acp-tool-text.d.ts +1 -1
  363. package/dist/modes/acp/acp-tool-text.js +1 -1
  364. package/dist/modes/commands-core.js +1 -1
  365. package/dist/modes/image-input.d.ts +1 -1
  366. package/dist/modes/image-input.js +1 -1
  367. package/dist/modes/interactive/agent-bar.d.ts +1 -1
  368. package/dist/modes/interactive/agent-bar.js +1 -1
  369. package/dist/modes/interactive/agent-transcript.d.ts +1 -1
  370. package/dist/modes/interactive/agent-transcript.js +1 -1
  371. package/dist/modes/interactive/agent-view.d.ts +1 -1
  372. package/dist/modes/interactive/agent-view.js +1 -1
  373. package/dist/modes/interactive/approval-dock.d.ts +1 -1
  374. package/dist/modes/interactive/approval-dock.js +1 -1
  375. package/dist/modes/interactive/config-panel.d.ts +1 -1
  376. package/dist/modes/interactive/config-panel.js +1 -1
  377. package/dist/modes/interactive/config-ui.d.ts +1 -1
  378. package/dist/modes/interactive/config-ui.js +1 -1
  379. package/dist/modes/interactive/memory-panel.d.ts +1 -1
  380. package/dist/modes/interactive/memory-panel.js +1 -1
  381. package/dist/modes/interactive/plan-command.d.ts +1 -1
  382. package/dist/modes/interactive/plan-command.js +1 -1
  383. package/dist/modes/interactive/plan-dialog.d.ts +1 -1
  384. package/dist/modes/interactive/plan-dialog.js +1 -1
  385. package/dist/modes/interactive/plan-flow.d.ts +1 -1
  386. package/dist/modes/interactive/plan-flow.js +1 -1
  387. package/dist/modes/interactive/subagent-view.d.ts +1 -1
  388. package/dist/modes/interactive/subagent-view.js +1 -1
  389. package/dist/modes/interactive/task-background.d.ts +1 -1
  390. package/dist/modes/interactive/task-background.js +1 -1
  391. package/dist/modes/interactive/trace-view.d.ts +1 -1
  392. package/dist/modes/interactive/trace-view.js +1 -1
  393. package/dist/modes/print/json-event.d.ts +1 -1
  394. package/dist/modes/print/json-event.js +2 -2
  395. package/dist/modes/print/print-mode.d.ts +1 -1
  396. package/dist/modes/print/print-mode.js +1 -1
  397. package/dist/modes/print/search-hint.d.ts +1 -1
  398. package/dist/modes/print/search-hint.js +1 -1
  399. package/dist/modes/rpc/commands.js +2 -2
  400. package/dist/permissions/auto-safe.d.ts +1 -1
  401. package/dist/permissions/auto-safe.js +1 -1
  402. package/dist/permissions/bypass.d.ts +1 -1
  403. package/dist/permissions/bypass.js +1 -1
  404. package/dist/permissions/classifier.d.ts +1 -1
  405. package/dist/permissions/classifier.js +1 -1
  406. package/dist/permissions/memory-class.d.ts +1 -1
  407. package/dist/permissions/memory-class.js +1 -1
  408. package/dist/permissions/pipeline.d.ts +2 -2
  409. package/dist/permissions/pipeline.js +2 -2
  410. package/dist/permissions/protected.d.ts +1 -1
  411. package/dist/permissions/protected.js +1 -1
  412. package/dist/permissions/readonly-bash.d.ts +1 -1
  413. package/dist/permissions/readonly-bash.js +1 -1
  414. package/dist/permissions/types.d.ts +2 -2
  415. package/dist/plan/done-markers.d.ts +1 -1
  416. package/dist/plan/done-markers.js +1 -1
  417. package/dist/plan/extract.d.ts +1 -1
  418. package/dist/plan/extract.js +1 -1
  419. package/dist/plan/prompts.d.ts +1 -1
  420. package/dist/plan/prompts.js +1 -1
  421. package/dist/plan/store.d.ts +1 -1
  422. package/dist/plan/store.js +1 -1
  423. package/dist/rpc.d.ts +3 -3
  424. package/dist/rpc.js +3 -3
  425. package/dist/sandbox/bash.d.ts +1 -1
  426. package/dist/sandbox/bash.js +1 -1
  427. package/dist/sandbox/detect.d.ts +1 -1
  428. package/dist/sandbox/detect.js +1 -1
  429. package/dist/sandbox/index.d.ts +1 -1
  430. package/dist/sandbox/index.js +1 -1
  431. package/dist/sandbox/profile.d.ts +1 -1
  432. package/dist/sandbox/profile.js +1 -1
  433. package/dist/sandbox/wrap.d.ts +1 -1
  434. package/dist/sandbox/wrap.js +1 -1
  435. package/dist/sdk.d.ts +3 -3
  436. package/dist/sdk.js +2 -2
  437. package/dist/session/line-reader.d.ts +1 -1
  438. package/dist/session/line-reader.js +1 -1
  439. package/dist/session/list.d.ts +1 -1
  440. package/dist/session/list.js +1 -1
  441. package/dist/session/migrate.d.ts +1 -1
  442. package/dist/session/migrate.js +1 -1
  443. package/dist/session/store.d.ts +1 -1
  444. package/dist/session/store.js +1 -1
  445. package/dist/skills/builtin.js +2 -2
  446. package/dist/tools/background-jobs.d.ts +1 -1
  447. package/dist/tools/background-jobs.js +1 -1
  448. package/dist/tools/clipboard-image.d.ts +1 -1
  449. package/dist/tools/clipboard-image.js +1 -1
  450. package/dist/tools/edit.d.ts +1 -1
  451. package/dist/tools/edit.js +1 -1
  452. package/dist/tools/grep.d.ts +1 -1
  453. package/dist/tools/grep.js +1 -1
  454. package/dist/tools/image-resize.d.ts +1 -1
  455. package/dist/tools/image-resize.js +1 -1
  456. package/dist/tools/read-lines.d.ts +1 -1
  457. package/dist/tools/read-lines.js +1 -1
  458. package/dist/tools/read.d.ts +1 -1
  459. package/dist/tools/read.js +1 -1
  460. package/dist/tools/task-ctl.d.ts +1 -1
  461. package/dist/tools/task-ctl.js +1 -1
  462. package/dist/tools/task.d.ts +2 -2
  463. package/dist/tools/task.js +2 -2
  464. package/dist/tools/types.d.ts +3 -3
  465. package/dist/tools/types.js +1 -1
  466. package/dist/trace/build.d.ts +1 -1
  467. package/dist/trace/build.js +1 -1
  468. package/dist/trace/detail.d.ts +1 -1
  469. package/dist/trace/detail.js +1 -1
  470. package/dist/trace/flatten.d.ts +1 -1
  471. package/dist/trace/flatten.js +1 -1
  472. package/dist/trace/format.d.ts +1 -1
  473. package/dist/trace/format.js +1 -1
  474. package/dist/trace/html-template.d.ts +1 -1
  475. package/dist/trace/html-template.js +1 -1
  476. package/dist/trace/html.d.ts +1 -1
  477. package/dist/trace/html.js +1 -1
  478. package/dist/trace/query-session.d.ts +1 -1
  479. package/dist/trace/query-session.js +1 -1
  480. package/dist/trace/query.d.ts +1 -1
  481. package/dist/trace/query.js +1 -1
  482. package/dist/trace/types.d.ts +1 -1
  483. package/dist/trace/types.js +1 -1
  484. package/dist/tui/components/settings-list.d.ts +1 -1
  485. package/dist/tui/components/settings-list.js +1 -1
  486. package/docs/README.md +85 -0
  487. package/docs/assets/ama-wordmark-dark.svg +37 -0
  488. package/docs/assets/ama-wordmark-light.svg +37 -0
  489. package/docs/en/README.md +39 -0
  490. package/docs/en/{permissions.md → guides/permissions.md} +14 -14
  491. package/docs/en/{providers.md → guides/providers.md} +6 -6
  492. package/docs/en/{sessions.md → guides/sessions.md} +6 -6
  493. package/docs/en/{tui.md → guides/tui.md} +15 -15
  494. package/docs/en/{acp.md → reference/acp.md} +6 -6
  495. package/docs/en/{host-api.md → reference/host-api.md} +7 -7
  496. package/docs/en/{rpc.md → reference/rpc.md} +13 -13
  497. package/docs/{agents.md → guides/agents.md} +13 -13
  498. package/docs/{codemode.md → guides/codemode.md} +3 -3
  499. package/docs/{hooks.md → guides/hooks.md} +2 -2
  500. package/docs/guides/i18n.md +93 -0
  501. package/docs/{memory.md → guides/memory.md} +1 -1
  502. package/docs/{permissions.md → guides/permissions.md} +2 -2
  503. package/docs/{plan.md → guides/plan.md} +4 -4
  504. package/docs/{providers.md → guides/providers.md} +4 -4
  505. package/docs/{sessions.md → guides/sessions.md} +5 -5
  506. package/docs/{tui.md → guides/tui.md} +8 -8
  507. package/docs/{acp.md → reference/acp.md} +5 -5
  508. package/docs/{host-api.md → reference/host-api.md} +4 -4
  509. package/docs/{rpc.md → reference/rpc.md} +11 -11
  510. package/docs/{session-format.md → reference/session-format.md} +7 -7
  511. package/package.json +12 -23
  512. package/docs/rewind-plan.md +0 -181
  513. package/docs/tui-design.md +0 -764
  514. /package/docs/{sandbox.md → guides/sandbox.md} +0 -0
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 操作系统沙箱的参数生成(docs/sandbox.md「各平台实现」):纯函数,不探测、不读文件系统。
2
+ * 操作系统沙箱的参数生成(docs/guides/sandbox.md「各平台实现」):纯函数,不探测、不读文件系统。
3
3
  *
4
4
  * - `buildSbplProfile`:macOS `sandbox-exec -p` 的 SBPL 配置;
5
5
  * - `buildBwrapArgs`:Linux bubblewrap 的参数(到 `--` 为止);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 包装命令行(docs/sandbox.md「分层」):输入命令、参数与策略 → 输出经 OS 沙箱启动的命令行。使用方自己
2
+ * 包装命令行(docs/guides/sandbox.md「分层」):输入命令、参数与策略 → 输出经 OS 沙箱启动的命令行。使用方自己
3
3
  * spawn(进程组、stdio、环境都不变)。
4
4
  *
5
5
  * - 可写目录取 realpath(SBPL 按真实路径匹配,macOS 的 /tmp、/var 是符号链接;bwrap 绑定也要求存在),
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 包装命令行(docs/sandbox.md「分层」):输入命令、参数与策略 → 输出经 OS 沙箱启动的命令行。使用方自己
2
+ * 包装命令行(docs/guides/sandbox.md「分层」):输入命令、参数与策略 → 输出经 OS 沙箱启动的命令行。使用方自己
3
3
  * spawn(进程组、stdio、环境都不变)。
4
4
  *
5
5
  * - 可写目录取 realpath(SBPL 按真实路径匹配,macOS 的 /tmp、/var 是符号链接;bwrap 绑定也要求存在),
package/dist/sdk.d.ts CHANGED
@@ -10,10 +10,10 @@
10
10
  * summarizeFrom / summarizeUpTo / undoAbortedTurn`,内存会话只能仅对话)。
11
11
  *
12
12
  * 两者共用组装根(cli/compose*.ts),审批链、系统提示装配、工具预设与缓存行为与 CLI 一致。
13
- * - [W5-F] 计划(docs/plan.md):`CreateSessionOptions.plan`(plan.* 配置 + `onProposed` 审批回调);
13
+ * - [W5-F] 计划(docs/guides/plan.md):`CreateSessionOptions.plan`(plan.* 配置 + `onProposed` 审批回调);
14
14
  * 返回的会话带 `plan.current() / respond() / todos()`。没有 `onProposed` 时按 `plan.unattended`
15
15
  * (缺省 stop:计划落盘后停下,不替人批准)。
16
- * - [W6-C0] `language`(两个入口都有):界面语言,跟随宿主界面(docs/i18n.md);进程级,`AMA_LANG` 仍优先。
16
+ * - [W6-C0] `language`(两个入口都有):界面语言,跟随宿主界面(docs/guides/i18n.md);进程级,`AMA_LANG` 仍优先。
17
17
  */
18
18
  import type { ApiRegistry } from "./ai/apis/api.js";
19
19
  import type { ModelThinkingLevel, ProviderData } from "./ai/types.js";
@@ -135,7 +135,7 @@ export interface CreateSessionOptions {
135
135
  /** 命令式 Hook(缺省不加载文件系统里的 hooks.json)。 */
136
136
  hooks?: HookConfig | false;
137
137
  config?: Partial<AmaConfig>;
138
- /** [W5-F] 计划(plan.* 配置与审批回调),见 docs/plan.md。 */
138
+ /** [W5-F] 计划(plan.* 配置与审批回调),见 docs/guides/plan.md。 */
139
139
  plan?: SessionPlanOptions;
140
140
  unattended?: boolean;
141
141
  onWarning?: (message: string) => void;
package/dist/sdk.js CHANGED
@@ -10,10 +10,10 @@
10
10
  * summarizeFrom / summarizeUpTo / undoAbortedTurn`,内存会话只能仅对话)。
11
11
  *
12
12
  * 两者共用组装根(cli/compose*.ts),审批链、系统提示装配、工具预设与缓存行为与 CLI 一致。
13
- * - [W5-F] 计划(docs/plan.md):`CreateSessionOptions.plan`(plan.* 配置 + `onProposed` 审批回调);
13
+ * - [W5-F] 计划(docs/guides/plan.md):`CreateSessionOptions.plan`(plan.* 配置 + `onProposed` 审批回调);
14
14
  * 返回的会话带 `plan.current() / respond() / todos()`。没有 `onProposed` 时按 `plan.unattended`
15
15
  * (缺省 stop:计划落盘后停下,不替人批准)。
16
- * - [W6-C0] `language`(两个入口都有):界面语言,跟随宿主界面(docs/i18n.md);进程级,`AMA_LANG` 仍优先。
16
+ * - [W6-C0] `language`(两个入口都有):界面语言,跟随宿主界面(docs/guides/i18n.md);进程级,`AMA_LANG` 仍优先。
17
17
  */
18
18
  import { resolve } from "node:path";
19
19
  import { ProviderRegistry } from "./ai/providers/registry.js";
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 会话文件的字节级按行读取(docs/memory-plan.md D6、§2.4)。[M-C0] 实现与单测;调用方由 [M-C] 接入
2
+ * 会话文件的字节级按行读取(docs/history/memory-plan.md D6、§2.4)。[M-C0] 实现与单测;调用方由 [M-C] 接入
3
3
  * (`store.ts readSessionLines`、`scan.ts forEachLine`、`list.ts`)。
4
4
  *
5
5
  * - fd + 一块复用的缓冲(缺省 64 KiB)顺序 `readSync`,以 `indexOf(0x0a)` 切行;跨块的残片挪到缓冲
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 会话文件的字节级按行读取(docs/memory-plan.md D6、§2.4)。[M-C0] 实现与单测;调用方由 [M-C] 接入
2
+ * 会话文件的字节级按行读取(docs/history/memory-plan.md D6、§2.4)。[M-C0] 实现与单测;调用方由 [M-C] 接入
3
3
  * (`store.ts readSessionLines`、`scan.ts forEachLine`、`list.ts`)。
4
4
  *
5
5
  * - fd + 一块复用的缓冲(缺省 64 KiB)顺序 `readSync`,以 `indexOf(0x0a)` 切行;跨块的残片挪到缓冲
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 会话列表(`SessionManager.list` 的实现)。[M-C] 按块逐行读(docs/memory-plan.md D6、§2.4):
2
+ * 会话列表(`SessionManager.list` 的实现)。[M-C] 按块逐行读(docs/history/memory-plan.md D6、§2.4):
3
3
  * 只解析头、第一条条目、`leaf` / `session_info` 行、要取 `firstPrompt` 的那一条 user 消息与末行;
4
4
  * 其余 ama 写的行只看行首的 type / role(`lineTypeOf`),不生成全文字符串、不留条目对象。
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 会话列表(`SessionManager.list` 的实现)。[M-C] 按块逐行读(docs/memory-plan.md D6、§2.4):
2
+ * 会话列表(`SessionManager.list` 的实现)。[M-C] 按块逐行读(docs/history/memory-plan.md D6、§2.4):
3
3
  * 只解析头、第一条条目、`leaf` / `session_info` 行、要取 `firstPrompt` 的那一条 user 消息与末行;
4
4
  * 其余 ama 写的行只看行首的 type / role(`lineTypeOf`),不生成全文字符串、不留条目对象。
5
5
  *
@@ -8,7 +8,7 @@
8
8
  * - [W3-C1b] `leaf` 行(`/tree` 位置,第三波 A7)不是条目:不进 entries;最后一条 leaf 行若在
9
9
  * 最后一条条目之后,作为 `leafId` 返回(之后又追加了条目则作废)。id 须为字符串或 null。
10
10
  * 将来格式升级时在这里加「旧版本 → 当前」的内存迁移(文件只追加,不回写);`list.ts` 不经本函数、
11
- * 自己按 v1 规则流式统计,升级格式时要同时改它(docs/memory-plan.md R6)。
11
+ * 自己按 v1 规则流式统计,升级格式时要同时改它(docs/history/memory-plan.md R6)。
12
12
  */
13
13
  import type { SessionEntry, SessionHeader, SessionLine } from "./types.js";
14
14
  export interface MigratedSession {
@@ -8,7 +8,7 @@
8
8
  * - [W3-C1b] `leaf` 行(`/tree` 位置,第三波 A7)不是条目:不进 entries;最后一条 leaf 行若在
9
9
  * 最后一条条目之后,作为 `leafId` 返回(之后又追加了条目则作废)。id 须为字符串或 null。
10
10
  * 将来格式升级时在这里加「旧版本 → 当前」的内存迁移(文件只追加,不回写);`list.ts` 不经本函数、
11
- * 自己按 v1 规则流式统计,升级格式时要同时改它(docs/memory-plan.md R6)。
11
+ * 自己按 v1 规则流式统计,升级格式时要同时改它(docs/history/memory-plan.md R6)。
12
12
  */
13
13
  import { AmaError } from "../errors.js";
14
14
  import { SESSION_FORMAT_VERSION } from "./types.js";
@@ -30,7 +30,7 @@ export interface ReadResult {
30
30
  export declare function isBlankLine(line: Buffer): boolean;
31
31
  /**
32
32
  * 读并解析 JSONL。`repair: true` 时把末尾半行从文件里截掉(只截最后一行,且只在它无法解析时)。
33
- * 按块逐行读(line-reader.ts,docs/memory-plan.md §2.4):不生成全文字符串与 split 数组。
33
+ * 按块逐行读(line-reader.ts,docs/history/memory-plan.md §2.4):不生成全文字符串与 split 数组。
34
34
  */
35
35
  export declare function readSessionLines(file: string, options?: {
36
36
  repair?: boolean;
@@ -45,7 +45,7 @@ export function isBlankLine(line) {
45
45
  }
46
46
  /**
47
47
  * 读并解析 JSONL。`repair: true` 时把末尾半行从文件里截掉(只截最后一行,且只在它无法解析时)。
48
- * 按块逐行读(line-reader.ts,docs/memory-plan.md §2.4):不生成全文字符串与 split 数组。
48
+ * 按块逐行读(line-reader.ts,docs/history/memory-plan.md §2.4):不生成全文字符串与 split 数组。
49
49
  */
50
50
  export function readSessionLines(file, options = {}) {
51
51
  const lines = [];
@@ -14,7 +14,7 @@ import { dirname, join } from "node:path";
14
14
  export const BUILTIN_SKILLS_DIR = "builtin";
15
15
  const AMA_DOCS_BODY = `# ama quick reference
16
16
 
17
- ama is the coding agent running this session. Docs: https://github.com/Owlbay/armadra-agent (README.md, docs/).
17
+ ama is the coding agent running this session. Docs: https://github.com/AMA-Link/armadra-agent (README.md, docs/).
18
18
 
19
19
  ## Files
20
20
  - User config dir \`~/.config/ama/\` (\`AMA_CONFIG_DIR\`; Windows \`%APPDATA%\\ama\`): \`config.json\`, \`auth.json\` (keys, 0600), \`hooks.json\`, \`keybindings.json\`, \`trust.json\`, \`AGENTS.md\`, \`skills/\`, \`prompts/\`.
@@ -93,7 +93,7 @@ export async function withBuiltinSkills(skills, dataDir, builtins = BUILTIN_SKIL
93
93
  await ensureFile(location, builtinSkillText(builtin));
94
94
  }
95
95
  catch (error) {
96
- // 与 skills/ 其它加载告警一样固定英文(模型侧模块不 import i18n,见 docs/i18n.md)
96
+ // 与 skills/ 其它加载告警一样固定英文(模型侧模块不 import i18n,见 docs/guides/i18n.md)
97
97
  warnings.push(`built-in skill ${builtin.name} could not be written: ${error.message}`);
98
98
  continue;
99
99
  }
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 后台命令(docs/wave5-plan.md §8.3 H6,D29:不加新工具,`bash{background}` + `bash{job, action}`)。[W5-H2]
2
+ * 后台命令(docs/history/wave5-plan.md §8.3 H6,D29:不加新工具,`bash{background}` + `bash{job, action}`)。[W5-H2]
3
3
  *
4
4
  * - `start`:调用方(bash.ts)给出 `spawn(stdout)`——**进程只在 bash.ts 的 `spawnShell` 里创建**,
5
5
  * 这里只拿到 ChildProcess;stdout / stderr 直接写进 `outputPath`(文件描述符交给子进程,ama 退出也不
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 后台命令(docs/wave5-plan.md §8.3 H6,D29:不加新工具,`bash{background}` + `bash{job, action}`)。[W5-H2]
2
+ * 后台命令(docs/history/wave5-plan.md §8.3 H6,D29:不加新工具,`bash{background}` + `bash{job, action}`)。[W5-H2]
3
3
  *
4
4
  * - `start`:调用方(bash.ts)给出 `spawn(stdout)`——**进程只在 bash.ts 的 `spawnShell` 里创建**,
5
5
  * 这里只拿到 ChildProcess;stdout / stderr 直接写进 `outputPath`(文件描述符交给子进程,ama 退出也不
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 剪贴板图片(docs/wave5-plan.md §4、D12)。[W5-I] 界面接线(`Ctrl+V`、`/paste`)归 W5-U。
2
+ * 剪贴板图片(docs/history/wave5-plan.md §4、D12)。[W5-I] 界面接线(`Ctrl+V`、`/paste`)归 W5-U。
3
3
  *
4
4
  * 零依赖读不了剪贴板位图,按平台依次调系统命令,成功写 `<dataDir>/clipboard/<时间戳>.png` 并返回
5
5
  * 路径(编辑器插入 `@<路径>`,之后走 loadImageFile);没有工具或剪贴板里没有图返回 undefined:
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 剪贴板图片(docs/wave5-plan.md §4、D12)。[W5-I] 界面接线(`Ctrl+V`、`/paste`)归 W5-U。
2
+ * 剪贴板图片(docs/history/wave5-plan.md §4、D12)。[W5-I] 界面接线(`Ctrl+V`、`/paste`)归 W5-U。
3
3
  *
4
4
  * 零依赖读不了剪贴板位图,按平台依次调系统命令,成功写 `<dataDir>/clipboard/<时间戳>.png` 并返回
5
5
  * 路径(编辑器插入 `@<路径>`,之后走 loadImageFile);没有工具或剪贴板里没有图返回 undefined:
@@ -38,7 +38,7 @@ export declare function planEdits(content: string, edits: readonly EditOp[], rep
38
38
  export declare function unifiedDiff(oldText: string, newText: string, path: string, context?: number): string;
39
39
  /** 改前 / 改后全文([ACP-C] D6):任一侧超过 {@link FILE_CHANGE_TEXT_LIMIT} 返回 undefined。 */
40
40
  export declare function fileChangeOf(path: string, oldText: string | null, newText: string, firstChangedLine?: number): FileChange | undefined;
41
- /** 检查点:写前备份(docs/rewind-plan.md §2);钩子按约定不抛,这里再兜一层,不让编辑失败。 */
41
+ /** 检查点:写前备份(docs/history/rewind-plan.md §2);钩子按约定不抛,这里再兜一层,不让编辑失败。 */
42
42
  export declare function beforeWrite(ctx: ToolContext, abs: string): Promise<void>;
43
43
  export declare function executeEdit(input: EditInput, ctx: ToolContext): Promise<ToolResult>;
44
44
  export declare function createEditTool(): ToolDefinition<EditInput>;
@@ -177,7 +177,7 @@ export function fileChangeOf(path, oldText, newText, firstChangedLine) {
177
177
  // ---------------------------------------------------------------------------
178
178
  // 工具
179
179
  // ---------------------------------------------------------------------------
180
- /** 检查点:写前备份(docs/rewind-plan.md §2);钩子按约定不抛,这里再兜一层,不让编辑失败。 */
180
+ /** 检查点:写前备份(docs/history/rewind-plan.md §2);钩子按约定不抛,这里再兜一层,不让编辑失败。 */
181
181
  export async function beforeWrite(ctx, abs) {
182
182
  if (ctx.checkpoint === undefined)
183
183
  return;
@@ -6,7 +6,7 @@
6
6
  * 不相邻的组之间 `--`;匹配行截 500 字符;
7
7
  * - 匹配数到 limit(缺省 100)即停并提示;整体输出再按 50 KB 头截断。
8
8
  * - [S-A] `filesOnly`:只列命中文件(去重、按路径排序,每个文件命中一行即停),limit 按文件数计;
9
- * 给模型在大仓库里先缩范围(docs/search-plan.md §4.2)。
9
+ * 给模型在大仓库里先缩范围(docs/design/search-plan.md §4.2)。
10
10
  */
11
11
  import type { ToolContext, ToolDefinition, ToolResult } from "./types.js";
12
12
  export interface GrepInput {
@@ -6,7 +6,7 @@
6
6
  * 不相邻的组之间 `--`;匹配行截 500 字符;
7
7
  * - 匹配数到 limit(缺省 100)即停并提示;整体输出再按 50 KB 头截断。
8
8
  * - [S-A] `filesOnly`:只列命中文件(去重、按路径排序,每个文件命中一行即停),limit 按文件数计;
9
- * 给模型在大仓库里先缩范围(docs/search-plan.md §4.2)。
9
+ * 给模型在大仓库里先缩范围(docs/design/search-plan.md §4.2)。
10
10
  */
11
11
  import { readFile, stat } from "node:fs/promises";
12
12
  import { displayPath, resolvePath } from "./paths.js";
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 可选的图片缩放(docs/wave5-plan.md §4、D12)。[W5-I]
2
+ * 可选的图片缩放(docs/history/wave5-plan.md §4、D12)。[W5-I]
3
3
  *
4
4
  * 零依赖不能解码像素,只能调系统工具:macOS 依次试 `sips`、`magick`、`convert`;Linux 试
5
5
  * `magick`、`convert`;Windows 只试 `magick`(`convert.exe` 是系统的磁盘转换工具)。都没有就返回
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 可选的图片缩放(docs/wave5-plan.md §4、D12)。[W5-I]
2
+ * 可选的图片缩放(docs/history/wave5-plan.md §4、D12)。[W5-I]
3
3
  *
4
4
  * 零依赖不能解码像素,只能调系统工具:macOS 依次试 `sips`、`magick`、`convert`;Linux 试
5
5
  * `magick`、`convert`;Windows 只试 `magick`(`convert.exe` 是系统的磁盘转换工具)。都没有就返回
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `read` 大文件的字节窗口读取(docs/memory-plan.md D1、§2.1)。[M-E]
2
+ * `read` 大文件的字节窗口读取(docs/history/memory-plan.md D1、§2.1)。[M-E]
3
3
  *
4
4
  * fd + 64 KiB 块顺序扫描,只解码 `[offset, offset + limit)` 内且累计不超过 `maxBytes`(多收一行)
5
5
  * 的行,其余行只计数;口径与小文件路径(`splitBom` + `normalizeToLF` + 去末尾一个换行再 `split`)
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `read` 大文件的字节窗口读取(docs/memory-plan.md D1、§2.1)。[M-E]
2
+ * `read` 大文件的字节窗口读取(docs/history/memory-plan.md D1、§2.1)。[M-E]
3
3
  *
4
4
  * fd + 64 KiB 块顺序扫描,只解码 `[offset, offset + limit)` 内且累计不超过 `maxBytes`(多收一行)
5
5
  * 的行,其余行只计数;口径与小文件路径(`splitBom` + `normalizeToLF` + 去末尾一个换行再 `split`)
@@ -26,7 +26,7 @@ export interface ReadToolOptions {
26
26
  }
27
27
  export declare function isBinary(buf: Buffer): boolean;
28
28
  /**
29
- * [S-A] read 收到目录时的下一步提示:只指向模型当前真能调用的工具(docs/search-plan.md §4.2)。
29
+ * [S-A] read 收到目录时的下一步提示:只指向模型当前真能调用的工具(docs/design/search-plan.md §4.2)。
30
30
  * 活动集未知(宿主自建上下文)时沿用旧文案。
31
31
  */
32
32
  export declare function directoryHint(shown: string, ctx: Pick<ToolContext, "activeTools">): string;
@@ -29,7 +29,7 @@ function error(message) {
29
29
  return { content: message, isError: true };
30
30
  }
31
31
  /**
32
- * [S-A] read 收到目录时的下一步提示:只指向模型当前真能调用的工具(docs/search-plan.md §4.2)。
32
+ * [S-A] read 收到目录时的下一步提示:只指向模型当前真能调用的工具(docs/design/search-plan.md §4.2)。
33
33
  * 活动集未知(宿主自建上下文)时沿用旧文案。
34
34
  */
35
35
  export function directoryHint(shown, ctx) {
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * `task_ctl` 工具:查看 / 等待 / 停止后台子 Agent 任务,读输出,向任务追加消息
3
- * (docs/wave5-plan.md §7.3,D13)。[W5-C0 桩 → W5-G]
3
+ * (docs/history/wave5-plan.md §7.3,D13)。[W5-C0 桩 → W5-G]
4
4
  *
5
5
  * - 与 `task` 同进退(预设、`--tools`、`disable("task")`,见 registry.ts 的 `TOOL_COMPANIONS`);
6
6
  * - 控制面按会话 id 取(agents/task-control.ts,注册表登记);子会话里(depth ≥ 1)不可用——工具表
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * `task_ctl` 工具:查看 / 等待 / 停止后台子 Agent 任务,读输出,向任务追加消息
3
- * (docs/wave5-plan.md §7.3,D13)。[W5-C0 桩 → W5-G]
3
+ * (docs/history/wave5-plan.md §7.3,D13)。[W5-C0 桩 → W5-G]
4
4
  *
5
5
  * - 与 `task` 同进退(预设、`--tools`、`disable("task")`,见 registry.ts 的 `TOOL_COMPANIONS`);
6
6
  * - 控制面按会话 id 取(agents/task-control.ts,注册表登记);子会话里(depth ≥ 1)不可用——工具表
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `task` 工具:子 Agent 的统一入口(设计 §5.2、D14;第五波 docs/wave5-plan.md §7.3,D13、D23)。
2
+ * `task` 工具:子 Agent 的统一入口(设计 §5.2、D14;第五波 docs/history/wave5-plan.md §7.3,D13、D23)。
3
3
  * [B3 → W5-G]
4
4
  *
5
5
  * - `agent`:子 Agent 类型(内置 general / explore / plan、`.ama/agents/*.md`)或外部 Agent;缺省
@@ -55,7 +55,7 @@ export interface TaskToolOptions {
55
55
  export declare const TASK_CONTEXT_LEAD: string;
56
56
  /** 缺省前台(`-p`、`subagents.background: never`)时的描述。 */
57
57
  export declare const FOREGROUND_DESCRIPTION: string;
58
- /** [W7-B1] 缺省后台(交互 / RPC / ACP,docs/agents-concurrency-plan.md §2.6)时的描述。 */
58
+ /** [W7-B1] 缺省后台(交互 / RPC / ACP,docs/history/agents-concurrency-plan.md §2.6)时的描述。 */
59
59
  export declare const BACKGROUND_DESCRIPTION: string;
60
60
  /** 描述里类型清单的标题(清单本身另有 400 token 预算,见 agents/catalog.ts)。 */
61
61
  export declare const TASK_AGENTS_HEADING = "\nAgents:\n";
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `task` 工具:子 Agent 的统一入口(设计 §5.2、D14;第五波 docs/wave5-plan.md §7.3,D13、D23)。
2
+ * `task` 工具:子 Agent 的统一入口(设计 §5.2、D14;第五波 docs/history/wave5-plan.md §7.3,D13、D23)。
3
3
  * [B3 → W5-G]
4
4
  *
5
5
  * - `agent`:子 Agent 类型(内置 general / explore / plan、`.ama/agents/*.md`)或外部 Agent;缺省
@@ -64,7 +64,7 @@ export const TASK_CONTEXT_LEAD = "Delegate to a sub-agent (fresh context: give f
64
64
  /** 缺省前台(`-p`、`subagents.background: never`)时的描述。 */
65
65
  export const FOREGROUND_DESCRIPTION = `${TASK_CONTEXT_LEAD} Returns its final report. Parallel in one reply; writers use isolation ` +
66
66
  "worktree. background: returns a taskId (see task_ctl); taskId: continue it.";
67
- /** [W7-B1] 缺省后台(交互 / RPC / ACP,docs/agents-concurrency-plan.md §2.6)时的描述。 */
67
+ /** [W7-B1] 缺省后台(交互 / RPC / ACP,docs/history/agents-concurrency-plan.md §2.6)时的描述。 */
68
68
  export const BACKGROUND_DESCRIPTION = `${TASK_CONTEXT_LEAD} Runs in the background by default: returns a taskId; a ` +
69
69
  "<task-notification> follows; keep working. background:false waits for the result. " +
70
70
  "taskId: continue it. Parallel in one reply; writers use isolation worktree.";
@@ -12,7 +12,7 @@
12
12
  * - `defineTool()` 是恒等函数,只为推断 `I`;放在契约文件里供 SDK 再导出。
13
13
  * - `ToolRegistryApi` 是 Runtime 需要的最小接口,B3 的 `ToolRegistry` 实现它。
14
14
  * - (W3-C0)`SubagentResult.cache` 可选:子会话的命中率与重计费 token。
15
- * - (W5-C0)第五波(docs/wave5-plan.md §7.3–§7.6、§8.2 C4、§8.3 H1):`annotations.pollable /
15
+ * - (W5-C0)第五波(docs/history/wave5-plan.md §7.3–§7.6、§8.2 C4、§8.3 H1):`annotations.pollable /
16
16
  * keepInContext`;`SubagentRequest` 加 `agent / background / taskId / isolation / budgetUsd`;
17
17
  * `SubagentResult` 加 `taskId / status / outputFile / sessionRef`(契约要求向后兼容,全部可选);
18
18
  * 统一入口 `SubagentRunner / RunnerHandle / SubagentEvent`(ama 子会话、外部 CLI、宿主 runner);
@@ -158,7 +158,7 @@ export type SubagentEvent = {
158
158
  turn: number;
159
159
  }
160
160
  /**
161
- * [W6-C0] 外部 Agent 一个回合结束时的骨架(docs/wave6-plan.md §2.2):任务注册表写成父会话的
161
+ * [W6-C0] 外部 Agent 一个回合结束时的骨架(docs/history/wave6-plan.md §2.2):任务注册表写成父会话的
162
162
  * `ama.trace{kind:"external_turn"}`。只有种类、状态、时间与计数——不含工具标题、命令行、路径。
163
163
  */
164
164
  | {
@@ -281,7 +281,7 @@ export interface ToolContext {
281
281
  /** 活动分支上最近一条该类型 custom 条目的 data。 */
282
282
  lastCustom(customType: string): unknown;
283
283
  };
284
- /** 检查点(docs/rewind-plan.md §2):edit / write 写文件前后调用;未启用时为 undefined。 */
284
+ /** 检查点(docs/history/rewind-plan.md §2):edit / write 写文件前后调用;未启用时为 undefined。 */
285
285
  readonly checkpoint?: CheckpointHooks;
286
286
  /** 仅 depth 0 且 task 可用时存在。 */
287
287
  readonly spawnSubagent?: (request: SubagentRequest) => Promise<SubagentResult>;
@@ -12,7 +12,7 @@
12
12
  * - `defineTool()` 是恒等函数,只为推断 `I`;放在契约文件里供 SDK 再导出。
13
13
  * - `ToolRegistryApi` 是 Runtime 需要的最小接口,B3 的 `ToolRegistry` 实现它。
14
14
  * - (W3-C0)`SubagentResult.cache` 可选:子会话的命中率与重计费 token。
15
- * - (W5-C0)第五波(docs/wave5-plan.md §7.3–§7.6、§8.2 C4、§8.3 H1):`annotations.pollable /
15
+ * - (W5-C0)第五波(docs/history/wave5-plan.md §7.3–§7.6、§8.2 C4、§8.3 H1):`annotations.pollable /
16
16
  * keepInContext`;`SubagentRequest` 加 `agent / background / taskId / isolation / budgetUsd`;
17
17
  * `SubagentResult` 加 `taskId / status / outputFile / sessionRef`(契约要求向后兼容,全部可选);
18
18
  * 统一入口 `SubagentRunner / RunnerHandle / SubagentEvent`(ama 子会话、外部 CLI、宿主 runner);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹构建器(docs/wave6-plan.md §2.3、D6)。[W6-T1]
2
+ * 轨迹构建器(docs/history/wave6-plan.md §2.3、D6)。[W6-T1]
3
3
  *
4
4
  * `buildTrace(input, opts)` 把会话条目重建成 `Trace`(Turn → Step → Tool → Subcall / Subagent):
5
5
  * TUI `/trace`、`ama sessions trace`、RPC `get_trace` 三方共用同一棵树。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹构建器(docs/wave6-plan.md §2.3、D6)。[W6-T1]
2
+ * 轨迹构建器(docs/history/wave6-plan.md §2.3、D6)。[W6-T1]
3
3
  *
4
4
  * `buildTrace(input, opts)` 把会话条目重建成 `Trace`(Turn → Step → Tool → Subcall / Subagent):
5
5
  * TUI `/trace`、`ama sessions trace`、RPC `get_trace` 三方共用同一棵树。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹节点的正文预览与详情卡片(docs/wave6-plan.md §2.4:Enter 详情——概要 / 用量与缓存 / 参数与结果预览)。
2
+ * 轨迹节点的正文预览与详情卡片(docs/history/wave6-plan.md §2.4:Enter 详情——概要 / 用量与缓存 / 参数与结果预览)。
3
3
  * [W6-T1]
4
4
  *
5
5
  * 轨迹树不含正文;这里按节点的 `entryIds` 回会话条目取:回合 → 用户提示,请求 → 助手文字,工具 → 参数
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹节点的正文预览与详情卡片(docs/wave6-plan.md §2.4:Enter 详情——概要 / 用量与缓存 / 参数与结果预览)。
2
+ * 轨迹节点的正文预览与详情卡片(docs/history/wave6-plan.md §2.4:Enter 详情——概要 / 用量与缓存 / 参数与结果预览)。
3
3
  * [W6-T1]
4
4
  *
5
5
  * 轨迹树不含正文;这里按节点的 `entryIds` 回会话条目取:回合 → 用户提示,请求 → 助手文字,工具 → 参数
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹树扁平化(docs/wave6-plan.md §2.4)。[W6-T1]
2
+ * 轨迹树扁平化(docs/history/wave6-plan.md §2.4)。[W6-T1]
3
3
  *
4
4
  * 把 `Trace` 按展开状态摊成行数组(列表模型),TUI 只渲染可见窗口、line 模式整表输出。
5
5
  * - 行 key 是从根开始的路径(`t:<turnId>/s:<stepId>/x:<toolCallId>/a:<taskId>/…`),刷新后仍稳定,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹树扁平化(docs/wave6-plan.md §2.4)。[W6-T1]
2
+ * 轨迹树扁平化(docs/history/wave6-plan.md §2.4)。[W6-T1]
3
3
  *
4
4
  * 把 `Trace` 按展开状态摊成行数组(列表模型),TUI 只渲染可见窗口、line 模式整表输出。
5
5
  * - 行 key 是从根开始的路径(`t:<turnId>/s:<stepId>/x:<toolCallId>/a:<taskId>/…`),刷新后仍稳定,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹行的文本格式(docs/wave6-plan.md §2.4)。[W6-T1]
2
+ * 轨迹行的文本格式(docs/history/wave6-plan.md §2.4)。[W6-T1]
3
3
  *
4
4
  * 一行:`光标 缩进 折叠符 状态 标签 耗时 ▕████▒▒▒░░▏ ↑in ↓out 缓存%`
5
5
  * - 条形是所在回合的相对时间轴:`▒` = TTFT、`█` = 解码、`░` = 工具、`│` = 进行中节点的起点(不编造时长);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹行的文本格式(docs/wave6-plan.md §2.4)。[W6-T1]
2
+ * 轨迹行的文本格式(docs/history/wave6-plan.md §2.4)。[W6-T1]
3
3
  *
4
4
  * 一行:`光标 缩进 折叠符 状态 标签 耗时 ▕████▒▒▒░░▏ ↑in ↓out 缓存%`
5
5
  * - 条形是所在回合的相对时间轴:`▒` = TTFT、`█` = 解码、`░` = 工具、`│` = 进行中节点的起点(不编造时长);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹 HTML 的页面骨架、样式与脚本(docs/wave6-plan.md §2.5)。[W6-T2]
2
+ * 轨迹 HTML 的页面骨架、样式与脚本(docs/history/wave6-plan.md §2.5)。[W6-T2]
3
3
  *
4
4
  * 全部静态:页面只插入三样东西——`lang`、转义过的 `<title>`、已做脚本安全转义的 JSON(`html.ts`)。
5
5
  * 脚本只用 `textContent` / `createElement` 写 DOM,不用 `innerHTML`;没有任何外部资源(CSP 见 `CSP`)。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹 HTML 的页面骨架、样式与脚本(docs/wave6-plan.md §2.5)。[W6-T2]
2
+ * 轨迹 HTML 的页面骨架、样式与脚本(docs/history/wave6-plan.md §2.5)。[W6-T2]
3
3
  *
4
4
  * 全部静态:页面只插入三样东西——`lang`、转义过的 `<title>`、已做脚本安全转义的 JSON(`html.ts`)。
5
5
  * 脚本只用 `textContent` / `createElement` 写 DOM,不用 `innerHTML`;没有任何外部资源(CSP 见 `CSP`)。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹 HTML 导出:`ama sessions trace --html`(docs/wave6-plan.md §2.5、D7)。[W6-T2]
2
+ * 轨迹 HTML 导出:`ama sessions trace --html`(docs/history/wave6-plan.md §2.5、D7)。[W6-T2]
3
3
  *
4
4
  * 产物是**单文件、零依赖**的页面:样式与脚本内联(`html-template.ts`),数据放
5
5
  * `<script type="application/json">`,`<meta>` CSP 禁止一切外联。页面在浏览器里只用 `textContent` 写字,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹 HTML 导出:`ama sessions trace --html`(docs/wave6-plan.md §2.5、D7)。[W6-T2]
2
+ * 轨迹 HTML 导出:`ama sessions trace --html`(docs/history/wave6-plan.md §2.5、D7)。[W6-T2]
3
3
  *
4
4
  * 产物是**单文件、零依赖**的页面:样式与脚本内联(`html-template.ts`),数据放
5
5
  * `<script type="application/json">`,`<meta>` CSP 禁止一切外联。页面在浏览器里只用 `textContent` 写字,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 运行中会话的轨迹查询:RPC `get_trace` 与 SDK `session.trace()`(docs/wave6-plan.md §2.6、D29)。[W6-T2]
2
+ * 运行中会话的轨迹查询:RPC `get_trace` 与 SDK `session.trace()`(docs/history/wave6-plan.md §2.6、D29)。[W6-T2]
3
3
  *
4
4
  * 构建器输入取自会话(`traceInputOf`);运行中时叠一层 `{ running: true }`(没有结果的工具算 running 而不是
5
5
  * interrupted,不编造时长);子会话读取按会话缓存(mtime + 大小没变就不重读)。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 运行中会话的轨迹查询:RPC `get_trace` 与 SDK `session.trace()`(docs/wave6-plan.md §2.6、D29)。[W6-T2]
2
+ * 运行中会话的轨迹查询:RPC `get_trace` 与 SDK `session.trace()`(docs/history/wave6-plan.md §2.6、D29)。[W6-T2]
3
3
  *
4
4
  * 构建器输入取自会话(`traceInputOf`);运行中时叠一层 `{ running: true }`(没有结果的工具算 running 而不是
5
5
  * interrupted,不编造时长);子会话读取按会话缓存(mtime + 大小没变就不重读)。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹查询:RPC `get_trace`、SDK `session.trace()`、`ama sessions trace --json` 共用(docs/wave6-plan.md §2.6)。
2
+ * 轨迹查询:RPC `get_trace`、SDK `session.trace()`、`ama sessions trace --json` 共用(docs/history/wave6-plan.md §2.6)。
3
3
  * [W6-T2]
4
4
  *
5
5
  * - **窗口**:在 `Trace.turns` 上切。缺省尾部 `turnLimit`(50,上限 500)个回合;`before`(回合 id)向前翻页;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹查询:RPC `get_trace`、SDK `session.trace()`、`ama sessions trace --json` 共用(docs/wave6-plan.md §2.6)。
2
+ * 轨迹查询:RPC `get_trace`、SDK `session.trace()`、`ama sessions trace --json` 共用(docs/history/wave6-plan.md §2.6)。
3
3
  * [W6-T2]
4
4
  *
5
5
  * - **窗口**:在 `Trace.turns` 上切。缺省尾部 `turnLimit`(50,上限 500)个回合;`before`(回合 id)向前翻页;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹(docs/wave6-plan.md §2.1、§2.2、D5、D6)。[W6-C0] 纯类型,经 `@armadra/agent` 导出。
2
+ * 轨迹(docs/history/wave6-plan.md §2.1、§2.2、D5、D6)。[W6-C0] 纯类型,经 `@armadra/agent` 导出。
3
3
  *
4
4
  * 两部分:
5
5
  * - **持久化**:`custom{customType:"ama.trace"}` 条目的 `data`(`TraceEntryData`),由
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 轨迹(docs/wave6-plan.md §2.1、§2.2、D5、D6)。[W6-C0] 纯类型,经 `@armadra/agent` 导出。
2
+ * 轨迹(docs/history/wave6-plan.md §2.1、§2.2、D5、D6)。[W6-C0] 纯类型,经 `@armadra/agent` 导出。
3
3
  *
4
4
  * 两部分:
5
5
  * - **持久化**:`custom{customType:"ama.trace"}` 条目的 `data`(`TraceEntryData`),由
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Grouped settings list (docs/wave6-plan.md §6.3). [W6-S]
2
+ * Grouped settings list (docs/history/wave6-plan.md §6.3). [W6-S]
3
3
  *
4
4
  * Rows `› label value tag note` under muted group headers; the selected row uses the prompt glyph,
5
5
  * accent + bold and the `selection` background (same look as ChoiceDialog). A query filters rows by id,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Grouped settings list (docs/wave6-plan.md §6.3). [W6-S]
2
+ * Grouped settings list (docs/history/wave6-plan.md §6.3). [W6-S]
3
3
  *
4
4
  * Rows `› label value tag note` under muted group headers; the selected row uses the prompt glyph,
5
5
  * accent + bold and the `selection` background (same look as ChoiceDialog). A query filters rows by id,