@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
@@ -21,6 +21,8 @@ export function createCheckpointBackendFactory(settings) {
21
21
  return undefined;
22
22
  let tracker;
23
23
  let registered = false;
24
+ // 登记会话根目录的写入(mkdir → tmp → rename);snapshot 等它结束,收尾时不会还有文件在落盘
25
+ let registering = Promise.resolve();
24
26
  const warn = (message) => ctx.log("warn", message);
25
27
  const get = () => {
26
28
  tracker ??= new CheckpointTracker({
@@ -34,7 +36,7 @@ export function createCheckpointBackendFactory(settings) {
34
36
  });
35
37
  if (!registered && settings.sessionsRoot !== undefined) {
36
38
  registered = true;
37
- registerSessionRoot(settings.dataDir, settings.sessionsRoot).catch((error) => ctx.log("debug", msg().session.checkpoints.registerFailed(String(error))));
39
+ registering = registerSessionRoot(settings.dataDir, settings.sessionsRoot).catch((error) => ctx.log("debug", msg().session.checkpoints.registerFailed(String(error))));
38
40
  }
39
41
  return tracker;
40
42
  };
@@ -79,6 +81,9 @@ export function createCheckpointBackendFactory(settings) {
79
81
  hooks,
80
82
  snapshot: async (userEntryId) => {
81
83
  try {
84
+ // 先让登记写完再记检查点:检查点条目落盘之后请求马上发出,不能再被它拖住
85
+ get();
86
+ await registering;
82
87
  const shadowCommit = await shadowSnapshot(userEntryId);
83
88
  await get().snapshot(userEntryId, shadowCommit !== undefined ? { shadowCommit } : {});
84
89
  }
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 检查点备份存储(docs/rewind-plan.md §1.1)。[RW-A]
2
+ * 检查点备份存储(docs/history/rewind-plan.md §1.1)。[RW-A]
3
3
  *
4
4
  * - 位置 `<dataDir>/file-history/blobs/<sha256 前 2 位>/<sha256>`,内容为文件原字节;
5
5
  * 先写 `<name>.tmp-<pid>-<序号>` 再 rename,已存在即跳过(内容寻址,同内容只存一份)。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 检查点备份存储(docs/rewind-plan.md §1.1)。[RW-A]
2
+ * 检查点备份存储(docs/history/rewind-plan.md §1.1)。[RW-A]
3
3
  *
4
4
  * - 位置 `<dataDir>/file-history/blobs/<sha256 前 2 位>/<sha256>`,内容为文件原字节;
5
5
  * 先写 `<name>.tmp-<pid>-<序号>` 再 rename,已存在即跳过(内容寻址,同内容只存一份)。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 备份清理(docs/rewind-plan.md §1.4)。[RW-A]
2
+ * 备份清理(docs/history/rewind-plan.md §1.4)。[RW-A]
3
3
  *
4
4
  * - 标记:递归扫描会话根目录下全部 `*.jsonl`(含 `.trash/`,trash 里的会话还能找回),凡含
5
5
  * `ama.checkpoint` 的行,取其中所有 64 位十六进制串作为引用。不解析 JSON:损坏或未来格式的行也只会
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 备份清理(docs/rewind-plan.md §1.4)。[RW-A]
2
+ * 备份清理(docs/history/rewind-plan.md §1.4)。[RW-A]
3
3
  *
4
4
  * - 标记:递归扫描会话根目录下全部 `*.jsonl`(含 `.trash/`,trash 里的会话还能找回),凡含
5
5
  * `ama.checkpoint` 的行,取其中所有 64 位十六进制串作为引用。不解析 JSON:损坏或未来格式的行也只会
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 读 git HEAD(docs/rewind-plan.md §1.2、D6)。[RW-A]
2
+ * 读 git HEAD(docs/history/rewind-plan.md §1.2、D6)。[RW-A]
3
3
  *
4
4
  * 不起 git 进程:从 cwd 向上找 `.git`(目录,或 worktree / 子模块的 `gitdir: <路径>` 文件),读 `HEAD`;
5
5
  * 符号引用先查 gitdir 再查 `commondir`(worktree 的分支引用在主仓库),最后查 `packed-refs`。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 读 git HEAD(docs/rewind-plan.md §1.2、D6)。[RW-A]
2
+ * 读 git HEAD(docs/history/rewind-plan.md §1.2、D6)。[RW-A]
3
3
  *
4
4
  * 不起 git 进程:从 cwd 向上找 `.git`(目录,或 worktree / 子模块的 `gitdir: <路径>` 文件),读 `HEAD`;
5
5
  * 符号引用先查 gitdir 再查 `commondir`(worktree 的分支引用在主仓库),最后查 `packed-refs`。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 检查点(docs/rewind-plan.md)的对外入口。[RW-A]
2
+ * 检查点(docs/history/rewind-plan.md)的对外入口。[RW-A]
3
3
  *
4
4
  * 会话接线(RW-B)用 `createCheckpointBackendFactory` + `resolveCheckpointSettings`;
5
5
  * 其余导出给 CLI(GC、占用)与测试。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 检查点(docs/rewind-plan.md)的对外入口。[RW-A]
2
+ * 检查点(docs/history/rewind-plan.md)的对外入口。[RW-A]
3
3
  *
4
4
  * 会话接线(RW-B)用 `createCheckpointBackendFactory` + `resolveCheckpointSettings`;
5
5
  * 其余导出给 CLI(GC、占用)与测试。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 从会话条目重建检查点(docs/rewind-plan.md §1.2)。[RW-A]
2
+ * 从会话条目重建检查点(docs/history/rewind-plan.md §1.2)。[RW-A]
3
3
  *
4
4
  * - 按文件顺序重放全部条目(不限活动分支)里的 `ama.checkpoint` 与 `ama.checkpoint-track`;
5
5
  * track 并入对应 userEntryId 的检查点(检查点里已有该文件时不覆盖)。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 从会话条目重建检查点(docs/rewind-plan.md §1.2)。[RW-A]
2
+ * 从会话条目重建检查点(docs/history/rewind-plan.md §1.2)。[RW-A]
3
3
  *
4
4
  * - 按文件顺序重放全部条目(不限活动分支)里的 `ama.checkpoint` 与 `ama.checkpoint-track`;
5
5
  * track 并入对应 userEntryId 的检查点(检查点里已有该文件时不覆盖)。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 恢复代码(docs/rewind-plan.md §3.2)。[RW-A]
2
+ * 恢复代码(docs/history/rewind-plan.md §3.2)。[RW-A]
3
3
  *
4
4
  * 对每个已跟踪文件,取目标检查点里的记录,没有则取该文件最早的记录:
5
5
  * 1. 记录 `skipped` → 报告 too_large / not_regular;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 恢复代码(docs/rewind-plan.md §3.2)。[RW-A]
2
+ * 恢复代码(docs/history/rewind-plan.md §3.2)。[RW-A]
3
3
  *
4
4
  * 对每个已跟踪文件,取目标检查点里的记录,没有则取该文件最早的记录:
5
5
  * 1. 记录 `skipped` → 报告 too_large / not_regular;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 检查点配置解析(docs/rewind-plan.md §5)。[RW-A]
2
+ * 检查点配置解析(docs/history/rewind-plan.md §5)。[RW-A]
3
3
  *
4
4
  * `AMA_CHECKPOINTS`(tools | shadow-git | off)> config `checkpoints.mode` > 缺省 tools;
5
5
  * 无效的环境变量值 warn 后忽略。`maxFileBytes` / `keep` 取配置,缺省 5 MiB / 100。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 检查点配置解析(docs/rewind-plan.md §5)。[RW-A]
2
+ * 检查点配置解析(docs/history/rewind-plan.md §5)。[RW-A]
3
3
  *
4
4
  * `AMA_CHECKPOINTS`(tools | shadow-git | off)> config `checkpoints.mode` > 缺省 tools;
5
5
  * 无效的环境变量值 warn 后忽略。`maxFileBytes` / `keep` 取配置,缺省 5 MiB / 100。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 影子 git 仓库(docs/rewind-plan.md §6)。[RW-D]
2
+ * 影子 git 仓库(docs/history/rewind-plan.md §6)。[RW-D]
3
3
  *
4
4
  * - 位置 `<dataDir>/file-history/shadow/<sha256(cwd) 前 16>/`,用 `--git-dir` 指向它、`--work-tree` 指向 cwd;
5
5
  * 不碰用户仓库的对象、索引与引用。git 以子进程调用(零运行时依赖)。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 影子 git 仓库(docs/rewind-plan.md §6)。[RW-D]
2
+ * 影子 git 仓库(docs/history/rewind-plan.md §6)。[RW-D]
3
3
  *
4
4
  * - 位置 `<dataDir>/file-history/shadow/<sha256(cwd) 前 16>/`,用 `--git-dir` 指向它、`--work-tree` 指向 cwd;
5
5
  * 不碰用户仓库的对象、索引与引用。git 以子进程调用(零运行时依赖)。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 按影子提交恢复代码(docs/rewind-plan.md §6)。[RW-D]
2
+ * 按影子提交恢复代码(docs/history/rewind-plan.md §6)。[RW-D]
3
3
  *
4
4
  * 1. 把当前工作区写成树,与目标提交做 `diff-tree`:只处理有差异的文件,被忽略的文件不在两边的树里,不会被碰。
5
5
  * 目标里有、当前树里没有但磁盘上还在的文件(现在被忽略了)跳过。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 按影子提交恢复代码(docs/rewind-plan.md §6)。[RW-D]
2
+ * 按影子提交恢复代码(docs/history/rewind-plan.md §6)。[RW-D]
3
3
  *
4
4
  * 1. 把当前工作区写成树,与目标提交做 `diff-tree`:只处理有差异的文件,被忽略的文件不在两边的树里,不会被碰。
5
5
  * 目标里有、当前树里没有但磁盘上还在的文件(现在被忽略了)跳过。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 检查点运行时状态(docs/rewind-plan.md §1.3、§2)。[RW-A]
2
+ * 检查点运行时状态(docs/history/rewind-plan.md §1.3、§2)。[RW-A]
3
3
  *
4
4
  * - `beforeWrite`:文件在任何检查点里都没出现过 → 备份当前内容、追加 `ama.checkpoint-track`、
5
5
  * 加入已跟踪;出现过则什么都不做。失败只 warn,不抛(检查点是辅助,不能让编辑失败)。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 检查点运行时状态(docs/rewind-plan.md §1.3、§2)。[RW-A]
2
+ * 检查点运行时状态(docs/history/rewind-plan.md §1.3、§2)。[RW-A]
3
3
  *
4
4
  * - `beforeWrite`:文件在任何检查点里都没出现过 → 备份当前内容、追加 `ama.checkpoint-track`、
5
5
  * 加入已跟踪;出现过则什么都不做。失败只 warn,不抛(检查点是辅助,不能让编辑失败)。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 检查点与回滚契约(docs/rewind-plan.md §1、§3)。契约文件,实现归 RW-A(`src/checkpoints/**`)
2
+ * 检查点与回滚契约(docs/history/rewind-plan.md §1、§3)。契约文件,实现归 RW-A(`src/checkpoints/**`)
3
3
  * 与 RW-B(`src/agent/session-rewind.ts`)。
4
4
  *
5
5
  * - 会话条目两类,均为 `custom`(不进上下文):`ama.checkpoint`(新回合的用户消息之后)与
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 检查点与回滚契约(docs/rewind-plan.md §1、§3)。契约文件,实现归 RW-A(`src/checkpoints/**`)
2
+ * 检查点与回滚契约(docs/history/rewind-plan.md §1、§3)。契约文件,实现归 RW-A(`src/checkpoints/**`)
3
3
  * 与 RW-B(`src/agent/session-rewind.ts`)。
4
4
  *
5
5
  * - 会话条目两类,均为 `custom`(不进上下文):`ama.checkpoint`(新回合的用户消息之后)与
@@ -82,7 +82,7 @@ export interface ParsedArgs {
82
82
  prompt?: string;
83
83
  /** 原始位置参数。 */
84
84
  positionals: string[];
85
- /** [W6-C0] `--lang zh|en`:界面语言(`AMA_LANG` 优先,docs/i18n.md)。 */
85
+ /** [W6-C0] `--lang zh|en`:界面语言(`AMA_LANG` 优先,docs/guides/i18n.md)。 */
86
86
  lang?: Locale;
87
87
  /** [W6-C0] `--memory` → true、`--no-memory` → false:覆盖 `memory.enabled`(W6-M)。 */
88
88
  memory?: boolean;
@@ -102,7 +102,7 @@ export declare class UsageError extends AmaError {
102
102
  export { helpText } from "./help-text.js";
103
103
  export declare function emptyArgs(): ParsedArgs;
104
104
  /**
105
- * ACP terminal 型认证方法的入口(docs/acp.md「无模型时」):客户端把方法的 `args` **追加**到配置好的
105
+ * ACP terminal 型认证方法的入口(docs/reference/acp.md「无模型时」):客户端把方法的 `args` **追加**到配置好的
106
106
  * Agent 启动命令后面(规范原文 append),实际得到 `ama --mode acp … --acp-terminal-auth <id>`。
107
107
  * 见到这个标志就不再按启动参数解析,转成对应的 `auth` 子命令;同一条命令里的 `--auth-file`、`--lang` 一并带上。
108
108
  */
package/dist/cli/args.js CHANGED
@@ -312,7 +312,7 @@ function validate(args) {
312
312
  }
313
313
  }
314
314
  /**
315
- * ACP terminal 型认证方法的入口(docs/acp.md「无模型时」):客户端把方法的 `args` **追加**到配置好的
315
+ * ACP terminal 型认证方法的入口(docs/reference/acp.md「无模型时」):客户端把方法的 `args` **追加**到配置好的
316
316
  * Agent 启动命令后面(规范原文 append),实际得到 `ama --mode acp … --acp-terminal-auth <id>`。
317
317
  * 见到这个标志就不再按启动参数解析,转成对应的 `auth` 子命令;同一条命令里的 `--auth-file`、`--lang` 一并带上。
318
318
  */
@@ -416,7 +416,7 @@ export async function runCli(argv, deps, io) {
416
416
  }
417
417
  catch (error) {
418
418
  try {
419
- // [ACP-A] --mode acp 没有可用模型:认证门照常握手,会话方法重试 bootstrap(docs/acp-plan.md §2.2)
419
+ // [ACP-A] --mode acp 没有可用模型:认证门照常握手,会话方法重试 bootstrap(docs/history/acp-plan.md §2.2)
420
420
  if (acp && error instanceof StartupError && error.exitCode === ExitCode.NoModel)
421
421
  return await (await import("../modes/acp/acp-auth-gate.js")).runAcpAuthGate(args, deps, io, error);
422
422
  return reportError(error, io);
@@ -5,7 +5,7 @@
5
5
  * Esc / Ctrl+C / stdin 结束 = 取消;
6
6
  * - 结束后把列表收成一行「? 问题 答案」,恢复 raw 状态与光标,暂停 stdin;进程意外退出时也恢复;
7
7
  * - 颜色与字形按环境:`NO_COLOR` / 非 TTY 输出无色,`AMA_ASCII` / 区域设置决定 ASCII 字形(字形表见
8
- * docs/tui-design.md §2.2);
8
+ * docs/design/tui-design.md §2.2);
9
9
  * - 输入不是可开 raw 的 TTY(管道、CI)时 {@link confirmContinue} 回落为原来的文本 `[y/N]` 问答。
10
10
  */
11
11
  export interface ChoiceInput {
@@ -5,7 +5,7 @@
5
5
  * Esc / Ctrl+C / stdin 结束 = 取消;
6
6
  * - 结束后把列表收成一行「? 问题 答案」,恢复 raw 状态与光标,暂停 stdin;进程意外退出时也恢复;
7
7
  * - 颜色与字形按环境:`NO_COLOR` / 非 TTY 输出无色,`AMA_ASCII` / 区域设置决定 ASCII 字形(字形表见
8
- * docs/tui-design.md §2.2);
8
+ * docs/design/tui-design.md §2.2);
9
9
  * - 输入不是可开 raw 的 TTY(管道、CI)时 {@link confirmContinue} 回落为原来的文本 `[y/N]` 问答。
10
10
  */
11
11
  import { createInterface } from "node:readline/promises";
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * codemode 缺省关闭的一次性提示(设计 §5.5「默认开放」):`default` 预设跟随预设时只在沙箱 strict
3
- * (Node ≥ 25,或有可用的操作系统沙箱,docs/sandbox.md)开 codemode;否则缺省关闭,启动时提示一次
3
+ * (Node ≥ 25,或有可用的操作系统沙箱,docs/guides/sandbox.md)开 codemode;否则缺省关闭,启动时提示一次
4
4
  * 怎么显式开启。
5
5
  *
6
6
  * - 只在「跟随预设」且预设是 `default`、运行时不是 strict 时提示;显式写了 `codemode.mode`(含 off)
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * codemode 缺省关闭的一次性提示(设计 §5.5「默认开放」):`default` 预设跟随预设时只在沙箱 strict
3
- * (Node ≥ 25,或有可用的操作系统沙箱,docs/sandbox.md)开 codemode;否则缺省关闭,启动时提示一次
3
+ * (Node ≥ 25,或有可用的操作系统沙箱,docs/guides/sandbox.md)开 codemode;否则缺省关闭,启动时提示一次
4
4
  * 怎么显式开启。
5
5
  *
6
6
  * - 只在「跟随预设」且预设是 `default`、运行时不是 strict 时提示;显式写了 `codemode.mode`(含 off)
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 子 Agent 的组装(docs/wave5-plan.md §7.1、§7.4,D22–D24)。[W5-G]
2
+ * 子 Agent 的组装(docs/history/wave5-plan.md §7.1、§7.4,D22–D24)。[W5-G]
3
3
  *
4
4
  * 由 compose-extensions.ts 的一行接入:每次装配会话时发现定义文件(`--agent-dir` / profile
5
5
  * `agentDirs` → config `agents.dirs` → 用户级 → 项目级(需信任)),建类型目录并绑到 task 工具
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 子 Agent 的组装(docs/wave5-plan.md §7.1、§7.4,D22–D24)。[W5-G]
2
+ * 子 Agent 的组装(docs/history/wave5-plan.md §7.1、§7.4,D22–D24)。[W5-G]
3
3
  *
4
4
  * 由 compose-extensions.ts 的一行接入:每次装配会话时发现定义文件(`--agent-dir` / profile
5
5
  * `agentDirs` → config `agents.dirs` → 用户级 → 项目级(需信任)),建类型目录并绑到 task 工具
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 会话扩展的组装表(docs/wave5-plan.md §10.1,D30)。[W5-C0]
2
+ * 会话扩展的组装表(docs/history/wave5-plan.md §10.1,D30)。[W5-C0]
3
3
  *
4
4
  * 唯一允许多个批次各加一行的文件:每个批次在 `composeExtensions` 的数组里追加**一行**自己的工厂,
5
5
  * 实现放在各自文件(`src/agent/session-<名>.ts` 等)。表顺序即调用顺序:
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 会话扩展的组装表(docs/wave5-plan.md §10.1,D30)。[W5-C0]
2
+ * 会话扩展的组装表(docs/history/wave5-plan.md §10.1,D30)。[W5-C0]
3
3
  *
4
4
  * 唯一允许多个批次各加一行的文件:每个批次在 `composeExtensions` 的数组里追加**一行**自己的工厂,
5
5
  * 实现放在各自文件(`src/agent/session-<名>.ts` 等)。表顺序即调用顺序:
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 记忆的组装(docs/wave6-plan.md §3、D8、D9、D11、D12)。[W6-M]
2
+ * 记忆的组装(docs/history/wave6-plan.md §3、D8、D9、D11、D12)。[W6-M]
3
3
  *
4
4
  * - 开关:独立终端看合并后的 `memory.enabled`(用户级 / profile.config;项目级只能设 false;`--memory` /
5
5
  * `--no-memory`;`AMA_MEMORY=0|1` 经 bootstrap 并入命令行覆盖,命令行优先)。缺省关闭:不建运行期、不读盘、
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 记忆的组装(docs/wave6-plan.md §3、D8、D9、D11、D12)。[W6-M]
2
+ * 记忆的组装(docs/history/wave6-plan.md §3、D8、D9、D11、D12)。[W6-M]
3
3
  *
4
4
  * - 开关:独立终端看合并后的 `memory.enabled`(用户级 / profile.config;项目级只能设 false;`--memory` /
5
5
  * `--no-memory`;`AMA_MEMORY=0|1` 经 bootstrap 并入命令行覆盖,命令行优先)。缺省关闭:不建运行期、不读盘、
@@ -9,7 +9,7 @@
9
9
  * - SDK 追加的供应商(`ProviderData[]`)折成 `config.providers` 条目,走同一条合并路径。
10
10
  * - 零配置(设计 §10.0):没有 `defaultModel`、也没有任何需要 key 的供应商配了 key 时,探测本地
11
11
  * ollama / lmstudio(短超时),把枚举到的模型加进注册表,供 `pickDefaultModel` 选用。
12
- * - [W6-O] ChatGPT 登录(docs/wave6-plan.md D14):`chatgpt` 的缺省渠道按 auth.json 条目的 flavor 定(用户写了
12
+ * - [W6-O] ChatGPT 登录(docs/history/wave6-plan.md D14):`chatgpt` 的缺省渠道按 auth.json 条目的 flavor 定(用户写了
13
13
  * `defaultChannel` 时不动);`AMA_CHATGPT_BASE_URL` 改该渠道地址;`auth.chatgpt.originator` 改 codex 渠道的
14
14
  * `originator` 头;OAuth 刷新拿到 `auth.chatgpt` 配置与同一份 env。
15
15
  * - 发现缓存(`<dataDir>/models/discovered/<provider>.json`)并入模型表为空的供应商(discovered-cache.ts);
@@ -9,7 +9,7 @@
9
9
  * - SDK 追加的供应商(`ProviderData[]`)折成 `config.providers` 条目,走同一条合并路径。
10
10
  * - 零配置(设计 §10.0):没有 `defaultModel`、也没有任何需要 key 的供应商配了 key 时,探测本地
11
11
  * ollama / lmstudio(短超时),把枚举到的模型加进注册表,供 `pickDefaultModel` 选用。
12
- * - [W6-O] ChatGPT 登录(docs/wave6-plan.md D14):`chatgpt` 的缺省渠道按 auth.json 条目的 flavor 定(用户写了
12
+ * - [W6-O] ChatGPT 登录(docs/history/wave6-plan.md D14):`chatgpt` 的缺省渠道按 auth.json 条目的 flavor 定(用户写了
13
13
  * `defaultChannel` 时不动);`AMA_CHATGPT_BASE_URL` 改该渠道地址;`auth.chatgpt.originator` 改 codex 渠道的
14
14
  * `originator` 头;OAuth 刷新拿到 `auth.chatgpt` 配置与同一份 env。
15
15
  * - 发现缓存(`<dataDir>/models/discovered/<provider>.json`)并入模型表为空的供应商(discovered-cache.ts);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 模型请求的流中空闲超时(docs/model-efficiency-plan.md D18)。[ME-C]
2
+ * 模型请求的流中空闲超时(docs/history/model-efficiency-plan.md D18)。[ME-C]
3
3
  *
4
4
  * 等响应头仍由 `request.idleTimeoutMs` / `AMA_IDLE_TIMEOUT_MS`(compose-session.ts `idleTimeoutFrom`)
5
5
  * 决定;流开始后两块数据之间的上限读 `AMA_STREAM_IDLE_TIMEOUT_MS` > config
@@ -1,5 +1,5 @@
1
1
  /**
2
- * 模型请求的流中空闲超时(docs/model-efficiency-plan.md D18)。[ME-C]
2
+ * 模型请求的流中空闲超时(docs/history/model-efficiency-plan.md D18)。[ME-C]
3
3
  *
4
4
  * 等响应头仍由 `request.idleTimeoutMs` / `AMA_IDLE_TIMEOUT_MS`(compose-session.ts `idleTimeoutFrom`)
5
5
  * 决定;流开始后两块数据之间的上限读 `AMA_STREAM_IDLE_TIMEOUT_MS` > config
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `--from <会话 id>[#编号]`:用旧会话里的一条用户消息作为新提示(docs/sessions.md「复用」)。[W4-D]
2
+ * `--from <会话 id>[#编号]`:用旧会话里的一条用户消息作为新提示(docs/guides/sessions.md「复用」)。[W4-D]
3
3
  *
4
4
  * - 文本:那条消息的文本;命令行另有位置参数时接在后面(空一行);
5
5
  * - 图片:`-p` 时把图片块写进临时目录、追加到 `--image`(沿用 print 模式的图片校验:模型不收图片 →
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `--from <会话 id>[#编号]`:用旧会话里的一条用户消息作为新提示(docs/sessions.md「复用」)。[W4-D]
2
+ * `--from <会话 id>[#编号]`:用旧会话里的一条用户消息作为新提示(docs/guides/sessions.md「复用」)。[W4-D]
3
3
  *
4
4
  * - 文本:那条消息的文本;命令行另有位置参数时接在后面(空一行);
5
5
  * - 图片:`-p` 时把图片块写进临时目录、追加到 `--image`(沿用 print 模式的图片校验:模型不收图片 →
@@ -15,7 +15,7 @@
15
15
  * - 签名 `main(argv): Promise<number>` 与「直接执行才自动运行」判定保持不变:
16
16
  * src/bundle.ts 显式调用 `main()`。
17
17
  * - [W6-C0] 界面语言在解析参数后、任何输出前定一次:`AMA_LANG` > `--lang` > 用户级 `ui.language` >
18
- * `LC_ALL` / `LC_MESSAGES` / `LANG`(docs/i18n.md);profile / 项目级的 `ui.language` 由 bootstrap 合并后补定。
18
+ * `LC_ALL` / `LC_MESSAGES` / `LANG`(docs/guides/i18n.md);profile / 项目级的 `ui.language` 由 bootstrap 合并后补定。
19
19
  */
20
20
  import type { CliIo, RuntimeDeps, StdinKind } from "./deps.js";
21
21
  import { type LanguageSetting } from "../i18n/index.js";
package/dist/cli/main.js CHANGED
@@ -15,7 +15,7 @@
15
15
  * - 签名 `main(argv): Promise<number>` 与「直接执行才自动运行」判定保持不变:
16
16
  * src/bundle.ts 显式调用 `main()`。
17
17
  * - [W6-C0] 界面语言在解析参数后、任何输出前定一次:`AMA_LANG` > `--lang` > 用户级 `ui.language` >
18
- * `LC_ALL` / `LC_MESSAGES` / `LANG`(docs/i18n.md);profile / 项目级的 `ui.language` 由 bootstrap 合并后补定。
18
+ * `LC_ALL` / `LC_MESSAGES` / `LANG`(docs/guides/i18n.md);profile / 项目级的 `ui.language` 由 bootstrap 合并后补定。
19
19
  */
20
20
  import { fstatSync, readFileSync, realpathSync } from "node:fs";
21
21
  import { join } from "node:path";
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * `ama auth set|list|remove <provider>`(设计 §3.5、§16.2 B5 验收)。[B5]
3
- * `ama auth login|logout|status chatgpt`(docs/wave6-plan.md §4.2)。[W6-O] 实现在 auth/chatgpt/cli.ts。
3
+ * `ama auth login|logout|status chatgpt`(docs/history/wave6-plan.md §4.2)。[W6-O] 实现在 auth/chatgpt/cli.ts。
4
4
  *
5
5
  * - set:key 从 stdin 读取(TTY 下不回显),不经命令行参数,避免进 shell 历史;写 auth.json 0600。
6
6
  * [ACP-A] 不给 provider 且 stdin 是 TTY 时先用方向键选内置的需 key 供应商(ACP 终端登录方法
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * `ama auth set|list|remove <provider>`(设计 §3.5、§16.2 B5 验收)。[B5]
3
- * `ama auth login|logout|status chatgpt`(docs/wave6-plan.md §4.2)。[W6-O] 实现在 auth/chatgpt/cli.ts。
3
+ * `ama auth login|logout|status chatgpt`(docs/history/wave6-plan.md §4.2)。[W6-O] 实现在 auth/chatgpt/cli.ts。
4
4
  *
5
5
  * - set:key 从 stdin 读取(TTY 下不回显),不经命令行参数,避免进 shell 历史;写 auth.json 0600。
6
6
  * [ACP-A] 不给 provider 且 stdin 是 TTY 时先用方向键选内置的需 key 供应商(ACP 终端登录方法
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `ama config get | set | unset | list` (docs/wave6-plan.md §6.4, D24-D26). [W6-S]
2
+ * `ama config get | set | unset | list` (docs/history/wave6-plan.md §6.4, D24-D26). [W6-S]
3
3
  *
4
4
  * Thin layer over config/edit.ts (the `/config` panel uses the same core):
5
5
  * - `get <key> [--json]`: effective value, source layer and apply tier;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `ama config get | set | unset | list` (docs/wave6-plan.md §6.4, D24-D26). [W6-S]
2
+ * `ama config get | set | unset | list` (docs/history/wave6-plan.md §6.4, D24-D26). [W6-S]
3
3
  *
4
4
  * Thin layer over config/edit.ts (the `/config` panel uses the same core):
5
5
  * - `get <key> [--json]`: effective value, source layer and apply tier;
@@ -231,7 +231,7 @@ function proxySection(report, io) {
231
231
  for (const line of describeProxy(inspectProxy(io.env)))
232
232
  report.item(line);
233
233
  }
234
- /** 检查点备份占用(docs/rewind-plan.md §1.4)。 */
234
+ /** 检查点备份占用(docs/history/rewind-plan.md §1.4)。 */
235
235
  async function fileHistoryLine(report, dataDir) {
236
236
  try {
237
237
  const usage = await blobUsage(dataDir);
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `ama init [--force]`(docs/providers.md「配置目录」):建配置目录与缺省文件,逐个报告状态。
2
+ * `ama init [--force]`(docs/guides/providers.md「配置目录」):建配置目录与缺省文件,逐个报告状态。
3
3
  */
4
4
  import type { CliIo } from "../deps.js";
5
5
  export declare function initUsage(): string;
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `ama init [--force]`(docs/providers.md「配置目录」):建配置目录与缺省文件,逐个报告状态。
2
+ * `ama init [--force]`(docs/guides/providers.md「配置目录」):建配置目录与缺省文件,逐个报告状态。
3
3
  */
4
4
  import { describeInit, initConfigDir, initNextSteps } from "../../config/init.js";
5
5
  import { resolveConfigDir } from "../../config/paths.js";
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `ama memory list|show|edit|rm|path|enable|disable`(docs/wave6-plan.md §3.5)。[W6-M]
2
+ * `ama memory list|show|edit|rm|path|enable|disable`(docs/history/wave6-plan.md §3.5)。[W6-M]
3
3
  *
4
4
  * - 作用域按用户级配置(`memory.scopes`,缺省 user + project);项目作用域以 cwd 定位,需项目已受信任
5
5
  * (trust.json 记录),否则跳过并提示。`memory.enabled` 为 false 时照样能看、能改(条目保留但不使用)。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `ama memory list|show|edit|rm|path|enable|disable`(docs/wave6-plan.md §3.5)。[W6-M]
2
+ * `ama memory list|show|edit|rm|path|enable|disable`(docs/history/wave6-plan.md §3.5)。[W6-M]
3
3
  *
4
4
  * - 作用域按用户级配置(`memory.scopes`,缺省 user + project);项目作用域以 cwd 定位,需项目已受信任
5
5
  * (trust.json 记录),否则跳过并提示。`memory.enabled` 为 false 时照样能看、能改(条目保留但不使用)。
@@ -87,7 +87,7 @@ async function check(io, registry, ref) {
87
87
  }
88
88
  /**
89
89
  * `ama models refresh [--provider <id>[,<id>…]]`:显式联网拉 models.dev,按内置快照的清单裁剪,
90
- * 写用户级覆盖 `<dataDir>/models-dev.json`(docs/providers.md「模型元数据」)。启动与其它命令不联网。
90
+ * 写用户级覆盖 `<dataDir>/models-dev.json`(docs/guides/providers.md「模型元数据」)。启动与其它命令不联网。
91
91
  */
92
92
  const REFRESH_ACTION = {
93
93
  usage: "ama models refresh [--provider <id>[,<id>…]]",
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `ama providers list|channels|remove`(docs/providers.md「一键接入」):供应商 → 渠道 → 模型数与 key 来源
2
+ * `ama providers list|channels|remove`(docs/guides/providers.md「一键接入」):供应商 → 渠道 → 模型数与 key 来源
3
3
  * (从不显示 key);remove 删配置条目(先备份)与 auth.json 里该供应商及其渠道的 key。
4
4
  */
5
5
  import { type Ctx } from "./providers.js";
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `ama providers list|channels|remove`(docs/providers.md「一键接入」):供应商 → 渠道 → 模型数与 key 来源
2
+ * `ama providers list|channels|remove`(docs/guides/providers.md「一键接入」):供应商 → 渠道 → 模型数与 key 来源
3
3
  * (从不显示 key);remove 删配置条目(先备份)与 auth.json 里该供应商及其渠道的 key。
4
4
  */
5
5
  import { apiShortName } from "../../ai/providers/channels.js";
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `ama providers add|refresh` 的纯计算部分(docs/providers.md「一键接入」):候选渠道、模型列表的
2
+ * `ama providers add|refresh` 的纯计算部分(docs/guides/providers.md「一键接入」):候选渠道、模型列表的
3
3
  * 协议提示、探测结果 → 模型渠道、渠道收敛、追加式合并进配置、表格。
4
4
  *
5
5
  * 不读写文件、不联网(`fetchModelList` 除外,它只是一次 GET);命令流程在 providers.ts。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `ama providers add|refresh` 的纯计算部分(docs/providers.md「一键接入」):候选渠道、模型列表的
2
+ * `ama providers add|refresh` 的纯计算部分(docs/guides/providers.md「一键接入」):候选渠道、模型列表的
3
3
  * 协议提示、探测结果 → 模型渠道、渠道收敛、追加式合并进配置、表格。
4
4
  *
5
5
  * 不读写文件、不联网(`fetchModelList` 除外,它只是一次 GET);命令流程在 providers.ts。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `ama providers add|list|channels|remove|refresh`(docs/providers.md「一键接入」「渠道」)。
2
+ * `ama providers add|list|channels|remove|refresh`(docs/guides/providers.md「一键接入」「渠道」)。
3
3
  *
4
4
  * - add:只给 baseUrl 与 key,列出中转的模型(`GET /models`)、用 models.dev 补元数据、可选逐渠道
5
5
  * 探测,把渠道与模型追加进用户级 config.json(先备份);key 从 stdin 读(不回显)存 auth.json,
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `ama providers add|list|channels|remove|refresh`(docs/providers.md「一键接入」「渠道」)。
2
+ * `ama providers add|list|channels|remove|refresh`(docs/guides/providers.md「一键接入」「渠道」)。
3
3
  *
4
4
  * - add:只给 baseUrl 与 key,列出中转的模型(`GET /models`)、用 models.dev 补元数据、可选逐渠道
5
5
  * 探测,把渠道与模型追加进用户级 config.json(先备份);key 从 stdin 读(不回显)存 auth.json,
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * - `--format md|json|jsonl`(缺省 md);`--branch leaf|all`(缺省 leaf = 当前分支);
5
5
  * - `--output <文件>`:写文件(0600,已存在则覆盖),否则写 stdout;
6
- * - 导出内容先脱敏(session/redact.ts),格式说明见 docs/sessions.md「导出」。
6
+ * - 导出内容先脱敏(session/redact.ts),格式说明见 docs/guides/sessions.md「导出」。
7
7
  */
8
8
  import type { CliIo } from "../deps.js";
9
9
  export declare function sessionsExportUsage(): string;
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * - `--format md|json|jsonl`(缺省 md);`--branch leaf|all`(缺省 leaf = 当前分支);
5
5
  * - `--output <文件>`:写文件(0600,已存在则覆盖),否则写 stdout;
6
- * - 导出内容先脱敏(session/redact.ts),格式说明见 docs/sessions.md「导出」。
6
+ * - 导出内容先脱敏(session/redact.ts),格式说明见 docs/guides/sessions.md「导出」。
7
7
  */
8
8
  import { writeFileSync } from "node:fs";
9
9
  import { join, resolve } from "node:path";
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `ama sessions trace <id|文件>`:会话轨迹导出(docs/wave6-plan.md §2.5、D7)。[W6-T2]
2
+ * `ama sessions trace <id|文件>`:会话轨迹导出(docs/history/wave6-plan.md §2.5、D7)。[W6-T2]
3
3
  *
4
4
  * - 缺省 / `--html [文件]` / `--format html`:自包含 HTML(`trace/html.ts`);`--json` / `--format json`:与 RPC
5
5
  * `get_trace` 同形的 JSON(全部回合、已加载子会话、`previews` 只含本会话节点;`--no-content` 时没有)。
@@ -1,5 +1,5 @@
1
1
  /**
2
- * `ama sessions trace <id|文件>`:会话轨迹导出(docs/wave6-plan.md §2.5、D7)。[W6-T2]
2
+ * `ama sessions trace <id|文件>`:会话轨迹导出(docs/history/wave6-plan.md §2.5、D7)。[W6-T2]
3
3
  *
4
4
  * - 缺省 / `--html [文件]` / `--format html`:自包含 HTML(`trace/html.ts`);`--json` / `--format json`:与 RPC
5
5
  * `get_trace` 同形的 JSON(全部回合、已加载子会话、`previews` 只含本会话节点;`--no-content` 时没有)。