dsh-plugin-guide 0.3.41 → 0.4.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 (892) hide show
  1. package/LICENSE +0 -0
  2. package/NOTICE.md +8 -23
  3. package/PRIVACY.md +11 -0
  4. package/README-zh.md +45 -418
  5. package/README.md +50 -435
  6. package/SKILL.md +41 -99
  7. package/STANDARDS.md +14 -5
  8. package/cordis.patch.yml +0 -0
  9. package/docs/boost.md +75 -0
  10. package/docs/entry.md +60 -0
  11. package/docs/flow.md +57 -0
  12. package/docs/levels.md +76 -0
  13. package/icon.svg +0 -0
  14. package/index.js +7 -24
  15. package/locale/en.json +2 -2
  16. package/locale/zh.json +2 -2
  17. package/package.json +29 -78
  18. package/README-es.md +0 -453
  19. package/README-hi.md +0 -453
  20. package/README-pt.md +0 -453
  21. package/bin/dsh-plugin-dev.js +0 -6
  22. package/data/facts.json +0 -66
  23. package/data/seams/index.json +0 -397
  24. package/data/standards.json +0 -300
  25. package/dist/dsh-plugin-dev.js +0 -2261
  26. package/guide/choosing-a-plugin.md +0 -412
  27. package/guide/choosing-a-plugin.zh-CN.md +0 -414
  28. package/guide/family-toolchain.md +0 -260
  29. package/guide/links.md +0 -112
  30. package/guide/migration-0.2.md +0 -275
  31. package/guide/plugin-dev-guide.md +0 -629
  32. package/guide/quick-reference.es.md +0 -185
  33. package/guide/quick-reference.hi.md +0 -185
  34. package/guide/quick-reference.md +0 -185
  35. package/guide/quick-reference.pt.md +0 -185
  36. package/guide/quick-reference.zh-CN.md +0 -184
  37. package/guide/release-engineering.md +0 -198
  38. package/guide/release-engineering.zh-CN.md +0 -198
  39. package/guide/standards.md +0 -141
  40. package/guide/standards.zh-CN.md +0 -141
  41. package/guide/unfixed-issues.md +0 -155
  42. package/guide/version-matrix.md +0 -309
  43. package/guide/when-to-retire-a-plugin.md +0 -127
  44. package/guide/when-to-retire-a-plugin.zh-CN.md +0 -127
  45. package/index.d.ts +0 -32
  46. package/references/cli-positioning-decision.md +0 -78
  47. package/references/community-ecosystem.md +0 -202
  48. package/references/community-repo-deep-dive.md +0 -660
  49. package/references/cordis-paper-and-community.md +0 -326
  50. package/references/dev-resource-landscape.md +0 -294
  51. package/references/harness-repo.md +0 -673
  52. package/references/mirror-scope-decision.md +0 -79
  53. package/references/official-docs/AGENTS.md +0 -185
  54. package/references/official-docs/BENCHMARK.md +0 -3
  55. package/references/official-docs/CLAUDE.md +0 -1
  56. package/references/official-docs/CONTRIBUTING.i18n.yaml +0 -7
  57. package/references/official-docs/CONTRIBUTING.md +0 -23
  58. package/references/official-docs/CONTRIBUTING.zh.md +0 -23
  59. package/references/official-docs/LICENSE +0 -21
  60. package/references/official-docs/README.i18n.yaml +0 -34
  61. package/references/official-docs/README.md +0 -35
  62. package/references/official-docs/README.zh.md +0 -96
  63. package/references/official-docs/SNAPSHOT.md +0 -14
  64. package/references/official-docs/THIRD_PARTY_NOTICES.md +0 -304
  65. package/references/official-docs/docs/AGENTS.md +0 -77
  66. package/references/official-docs/docs/agent-lifecycle.i18n.yaml +0 -10
  67. package/references/official-docs/docs/agent-lifecycle.md +0 -91
  68. package/references/official-docs/docs/agent-lifecycle.zh.md +0 -93
  69. package/references/official-docs/docs/api-gateway.i18n.yaml +0 -31
  70. package/references/official-docs/docs/api-gateway.md +0 -172
  71. package/references/official-docs/docs/api-gateway.zh.md +0 -178
  72. package/references/official-docs/docs/architecture.i18n.yaml +0 -37
  73. package/references/official-docs/docs/architecture.md +0 -165
  74. package/references/official-docs/docs/architecture.zh.md +0 -169
  75. package/references/official-docs/docs/capability-seams.i18n.yaml +0 -10
  76. package/references/official-docs/docs/capability-seams.md +0 -714
  77. package/references/official-docs/docs/capability-seams.zh.md +0 -716
  78. package/references/official-docs/docs/cli-help.i18n.yaml +0 -34
  79. package/references/official-docs/docs/cli-help.md +0 -203
  80. package/references/official-docs/docs/cli-help.zh.md +0 -205
  81. package/references/official-docs/docs/config-catalog.i18n.yaml +0 -19
  82. package/references/official-docs/docs/config-catalog.md +0 -4801
  83. package/references/official-docs/docs/config-catalog.zh.md +0 -4803
  84. package/references/official-docs/docs/cookbook/adding-a-package.i18n.yaml +0 -28
  85. package/references/official-docs/docs/cookbook/adding-a-package.md +0 -170
  86. package/references/official-docs/docs/cookbook/adding-a-package.zh.md +0 -170
  87. package/references/official-docs/docs/cookbook/adding-a-plugin-preview.i18n.yaml +0 -22
  88. package/references/official-docs/docs/cookbook/adding-a-plugin-preview.md +0 -52
  89. package/references/official-docs/docs/cookbook/adding-a-plugin-preview.zh.md +0 -52
  90. package/references/official-docs/docs/cookbook/adding-a-remote-api.i18n.yaml +0 -25
  91. package/references/official-docs/docs/cookbook/adding-a-remote-api.md +0 -197
  92. package/references/official-docs/docs/cookbook/adding-a-remote-api.zh.md +0 -197
  93. package/references/official-docs/docs/cookbook/adding-a-session-format-version.i18n.yaml +0 -40
  94. package/references/official-docs/docs/cookbook/adding-a-session-format-version.md +0 -153
  95. package/references/official-docs/docs/cookbook/adding-a-session-format-version.zh.md +0 -153
  96. package/references/official-docs/docs/cookbook/adding-a-settings-card.i18n.yaml +0 -22
  97. package/references/official-docs/docs/cookbook/adding-a-settings-card.md +0 -72
  98. package/references/official-docs/docs/cookbook/adding-a-settings-card.zh.md +0 -72
  99. package/references/official-docs/docs/cookbook/adding-a-tool.i18n.yaml +0 -31
  100. package/references/official-docs/docs/cookbook/adding-a-tool.md +0 -101
  101. package/references/official-docs/docs/cookbook/adding-a-tool.zh.md +0 -103
  102. package/references/official-docs/docs/cookbook/adding-a-vendored-package.i18n.yaml +0 -19
  103. package/references/official-docs/docs/cookbook/adding-a-vendored-package.md +0 -59
  104. package/references/official-docs/docs/cookbook/adding-a-vendored-package.zh.md +0 -59
  105. package/references/official-docs/docs/cookbook/adding-an-llm-adapter.i18n.yaml +0 -19
  106. package/references/official-docs/docs/cookbook/adding-an-llm-adapter.md +0 -43
  107. package/references/official-docs/docs/cookbook/adding-an-llm-adapter.zh.md +0 -43
  108. package/references/official-docs/docs/cookbook/extension-cookbook.i18n.yaml +0 -25
  109. package/references/official-docs/docs/cookbook/extension-cookbook.md +0 -132
  110. package/references/official-docs/docs/cookbook/extension-cookbook.zh.md +0 -136
  111. package/references/official-docs/docs/cookbook/maintaining-dsh-code-review.i18n.yaml +0 -22
  112. package/references/official-docs/docs/cookbook/maintaining-dsh-code-review.md +0 -64
  113. package/references/official-docs/docs/cookbook/maintaining-dsh-code-review.zh.md +0 -64
  114. package/references/official-docs/docs/cookbook/responding-to-pr-review-on-a-stack.i18n.yaml +0 -16
  115. package/references/official-docs/docs/cookbook/responding-to-pr-review-on-a-stack.md +0 -32
  116. package/references/official-docs/docs/cookbook/responding-to-pr-review-on-a-stack.zh.md +0 -32
  117. package/references/official-docs/docs/cookbook/reviewing-persistence-type-changes.i18n.yaml +0 -31
  118. package/references/official-docs/docs/cookbook/reviewing-persistence-type-changes.md +0 -122
  119. package/references/official-docs/docs/cookbook/reviewing-persistence-type-changes.zh.md +0 -122
  120. package/references/official-docs/docs/cordis-api/context.i18n.yaml +0 -73
  121. package/references/official-docs/docs/cordis-api/context.md +0 -364
  122. package/references/official-docs/docs/cordis-api/context.zh.md +0 -366
  123. package/references/official-docs/docs/cordis-api/events.i18n.yaml +0 -37
  124. package/references/official-docs/docs/cordis-api/events.md +0 -207
  125. package/references/official-docs/docs/cordis-api/events.zh.md +0 -209
  126. package/references/official-docs/docs/cordis-api/fiber.i18n.yaml +0 -76
  127. package/references/official-docs/docs/cordis-api/fiber.md +0 -375
  128. package/references/official-docs/docs/cordis-api/fiber.zh.md +0 -377
  129. package/references/official-docs/docs/cordis-api/inherited.md +0 -38
  130. package/references/official-docs/docs/cordis-api/registry.i18n.yaml +0 -22
  131. package/references/official-docs/docs/cordis-api/registry.md +0 -152
  132. package/references/official-docs/docs/cordis-api/registry.zh.md +0 -154
  133. package/references/official-docs/docs/cordis-api/service.i18n.yaml +0 -37
  134. package/references/official-docs/docs/cordis-api/service.md +0 -102
  135. package/references/official-docs/docs/cordis-api/service.zh.md +0 -104
  136. package/references/official-docs/docs/cordis-primer.i18n.yaml +0 -22
  137. package/references/official-docs/docs/cordis-primer.md +0 -45
  138. package/references/official-docs/docs/cordis-primer.zh.md +0 -51
  139. package/references/official-docs/docs/cordis-tutorial/01-first-plugin.i18n.yaml +0 -22
  140. package/references/official-docs/docs/cordis-tutorial/01-first-plugin.md +0 -95
  141. package/references/official-docs/docs/cordis-tutorial/01-first-plugin.zh.md +0 -95
  142. package/references/official-docs/docs/cordis-tutorial/02-lifecycle-and-effects.i18n.yaml +0 -16
  143. package/references/official-docs/docs/cordis-tutorial/02-lifecycle-and-effects.md +0 -98
  144. package/references/official-docs/docs/cordis-tutorial/02-lifecycle-and-effects.zh.md +0 -98
  145. package/references/official-docs/docs/cordis-tutorial/03-services.i18n.yaml +0 -22
  146. package/references/official-docs/docs/cordis-tutorial/03-services.md +0 -98
  147. package/references/official-docs/docs/cordis-tutorial/03-services.zh.md +0 -98
  148. package/references/official-docs/docs/cordis-tutorial/04-events.i18n.yaml +0 -16
  149. package/references/official-docs/docs/cordis-tutorial/04-events.md +0 -144
  150. package/references/official-docs/docs/cordis-tutorial/04-events.zh.md +0 -144
  151. package/references/official-docs/docs/cordis-tutorial/05-config.i18n.yaml +0 -19
  152. package/references/official-docs/docs/cordis-tutorial/05-config.md +0 -111
  153. package/references/official-docs/docs/cordis-tutorial/05-config.zh.md +0 -111
  154. package/references/official-docs/docs/cordis-tutorial/06-composition-and-hmr.i18n.yaml +0 -16
  155. package/references/official-docs/docs/cordis-tutorial/06-composition-and-hmr.md +0 -113
  156. package/references/official-docs/docs/cordis-tutorial/06-composition-and-hmr.zh.md +0 -113
  157. package/references/official-docs/docs/cordis-tutorial/07-into-the-harness.i18n.yaml +0 -19
  158. package/references/official-docs/docs/cordis-tutorial/07-into-the-harness.md +0 -108
  159. package/references/official-docs/docs/cordis-tutorial/07-into-the-harness.zh.md +0 -108
  160. package/references/official-docs/docs/cordis-tutorial/index.i18n.yaml +0 -16
  161. package/references/official-docs/docs/cordis-tutorial/index.md +0 -60
  162. package/references/official-docs/docs/cordis-tutorial/index.zh.md +0 -62
  163. package/references/official-docs/docs/deepseek-llm-api-wire-extensions.i18n.yaml +0 -34
  164. package/references/official-docs/docs/deepseek-llm-api-wire-extensions.md +0 -162
  165. package/references/official-docs/docs/deepseek-llm-api-wire-extensions.zh.md +0 -162
  166. package/references/official-docs/docs/defensive-patterns/README.i18n.yaml +0 -10
  167. package/references/official-docs/docs/defensive-patterns/README.md +0 -25
  168. package/references/official-docs/docs/defensive-patterns/README.zh.md +0 -27
  169. package/references/official-docs/docs/defensive-patterns/client-components.i18n.yaml +0 -46
  170. package/references/official-docs/docs/defensive-patterns/client-components.md +0 -493
  171. package/references/official-docs/docs/defensive-patterns/client-components.zh.md +0 -495
  172. package/references/official-docs/docs/defensive-patterns/conversation-and-session.i18n.yaml +0 -31
  173. package/references/official-docs/docs/defensive-patterns/conversation-and-session.md +0 -316
  174. package/references/official-docs/docs/defensive-patterns/conversation-and-session.zh.md +0 -316
  175. package/references/official-docs/docs/defensive-patterns/general.i18n.yaml +0 -52
  176. package/references/official-docs/docs/defensive-patterns/general.md +0 -222
  177. package/references/official-docs/docs/defensive-patterns/general.zh.md +0 -252
  178. package/references/official-docs/docs/defensive-patterns/package-surface.i18n.yaml +0 -28
  179. package/references/official-docs/docs/defensive-patterns/package-surface.md +0 -231
  180. package/references/official-docs/docs/defensive-patterns/package-surface.zh.md +0 -231
  181. package/references/official-docs/docs/defensive-patterns/remote-and-api.i18n.yaml +0 -16
  182. package/references/official-docs/docs/defensive-patterns/remote-and-api.md +0 -115
  183. package/references/official-docs/docs/defensive-patterns/remote-and-api.zh.md +0 -115
  184. package/references/official-docs/docs/dependency-catalog.json +0 -7312
  185. package/references/official-docs/docs/development.i18n.yaml +0 -49
  186. package/references/official-docs/docs/development.md +0 -214
  187. package/references/official-docs/docs/development.zh.md +0 -221
  188. package/references/official-docs/docs/event-producer-consumer.i18n.yaml +0 -13
  189. package/references/official-docs/docs/event-producer-consumer.md +0 -110
  190. package/references/official-docs/docs/event-producer-consumer.zh.md +0 -112
  191. package/references/official-docs/docs/experimental-persistence-catalog.i18n.yaml +0 -10
  192. package/references/official-docs/docs/experimental-persistence-catalog.md +0 -17
  193. package/references/official-docs/docs/experimental-persistence-catalog.zh.md +0 -17
  194. package/references/official-docs/docs/glossary.i18n.yaml +0 -25
  195. package/references/official-docs/docs/glossary.md +0 -46
  196. package/references/official-docs/docs/glossary.zh.md +0 -46
  197. package/references/official-docs/docs/graph-atlas.i18n.yaml +0 -10
  198. package/references/official-docs/docs/graph-atlas.md +0 -22
  199. package/references/official-docs/docs/graph-atlas.zh.md +0 -24
  200. package/references/official-docs/docs/i18n/README.i18n.yaml +0 -19
  201. package/references/official-docs/docs/i18n/README.md +0 -69
  202. package/references/official-docs/docs/i18n/README.zh.md +0 -71
  203. package/references/official-docs/docs/i18n/style-samples.md +0 -87
  204. package/references/official-docs/docs/i18n/terminology.md +0 -215
  205. package/references/official-docs/docs/i18n/translation-prompt.md +0 -263
  206. package/references/official-docs/docs/i18n/translation-rules.i18n.yaml +0 -28
  207. package/references/official-docs/docs/i18n/translation-rules.md +0 -69
  208. package/references/official-docs/docs/i18n/translation-rules.zh.md +0 -69
  209. package/references/official-docs/docs/module-graph.i18n.yaml +0 -10
  210. package/references/official-docs/docs/module-graph.md +0 -1776
  211. package/references/official-docs/docs/module-graph.zh.md +0 -1778
  212. package/references/official-docs/docs/persistence-catalog.i18n.yaml +0 -2152
  213. package/references/official-docs/docs/persistence-catalog.md +0 -9140
  214. package/references/official-docs/docs/persistence-catalog.zh.md +0 -9142
  215. package/references/official-docs/docs/persistence-changes/2026-09-11-initial.i18n.yaml +0 -28
  216. package/references/official-docs/docs/persistence-changes/2026-09-11-initial.md +0 -280
  217. package/references/official-docs/docs/persistence-changes/2026-09-11-initial.schema.json +0 -13557
  218. package/references/official-docs/docs/persistence-changes/2026-09-11-initial.zh.md +0 -280
  219. package/references/official-docs/docs/persistence-changes/2026-09-12-auto-review-error-metadata.i18n.yaml +0 -28
  220. package/references/official-docs/docs/persistence-changes/2026-09-12-auto-review-error-metadata.md +0 -52
  221. package/references/official-docs/docs/persistence-changes/2026-09-12-auto-review-error-metadata.schema.json +0 -910
  222. package/references/official-docs/docs/persistence-changes/2026-09-12-auto-review-error-metadata.zh.md +0 -52
  223. package/references/official-docs/docs/persistence-changes/2026-09-13-working-directory.i18n.yaml +0 -28
  224. package/references/official-docs/docs/persistence-changes/2026-09-13-working-directory.md +0 -48
  225. package/references/official-docs/docs/persistence-changes/2026-09-13-working-directory.schema.json +0 -76
  226. package/references/official-docs/docs/persistence-changes/2026-09-13-working-directory.zh.md +0 -48
  227. package/references/official-docs/docs/persistence-changes/2026-09-14-image-offload.i18n.yaml +0 -28
  228. package/references/official-docs/docs/persistence-changes/2026-09-14-image-offload.md +0 -96
  229. package/references/official-docs/docs/persistence-changes/2026-09-14-image-offload.schema.json +0 -8478
  230. package/references/official-docs/docs/persistence-changes/2026-09-14-image-offload.zh.md +0 -96
  231. package/references/official-docs/docs/persistence-changes/2026-09-14-workspace-changes-event.i18n.yaml +0 -28
  232. package/references/official-docs/docs/persistence-changes/2026-09-14-workspace-changes-event.md +0 -48
  233. package/references/official-docs/docs/persistence-changes/2026-09-14-workspace-changes-event.schema.json +0 -72
  234. package/references/official-docs/docs/persistence-changes/2026-09-14-workspace-changes-event.zh.md +0 -48
  235. package/references/official-docs/docs/persistence-changes/2026-09-16-session-format-v4.i18n.yaml +0 -28
  236. package/references/official-docs/docs/persistence-changes/2026-09-16-session-format-v4.md +0 -120
  237. package/references/official-docs/docs/persistence-changes/2026-09-16-session-format-v4.schema.json +0 -16212
  238. package/references/official-docs/docs/persistence-changes/2026-09-16-session-format-v4.zh.md +0 -120
  239. package/references/official-docs/docs/persistence-changes/2026-09-18-schedule-optional-title.i18n.yaml +0 -28
  240. package/references/official-docs/docs/persistence-changes/2026-09-18-schedule-optional-title.md +0 -48
  241. package/references/official-docs/docs/persistence-changes/2026-09-18-schedule-optional-title.schema.json +0 -302
  242. package/references/official-docs/docs/persistence-changes/2026-09-18-schedule-optional-title.zh.md +0 -48
  243. package/references/official-docs/docs/persistence-changes/2026-09-19-external-subagent-catalog.i18n.yaml +0 -28
  244. package/references/official-docs/docs/persistence-changes/2026-09-19-external-subagent-catalog.md +0 -48
  245. package/references/official-docs/docs/persistence-changes/2026-09-19-external-subagent-catalog.schema.json +0 -290
  246. package/references/official-docs/docs/persistence-changes/2026-09-19-external-subagent-catalog.zh.md +0 -48
  247. package/references/official-docs/docs/persistence-changes/2026-09-20-unknown-child-catalog.i18n.yaml +0 -28
  248. package/references/official-docs/docs/persistence-changes/2026-09-20-unknown-child-catalog.md +0 -48
  249. package/references/official-docs/docs/persistence-changes/2026-09-20-unknown-child-catalog.schema.json +0 -250
  250. package/references/official-docs/docs/persistence-changes/2026-09-20-unknown-child-catalog.zh.md +0 -48
  251. package/references/official-docs/docs/persistence-changes/2026-09-21-user-question-reply.i18n.yaml +0 -28
  252. package/references/official-docs/docs/persistence-changes/2026-09-21-user-question-reply.md +0 -60
  253. package/references/official-docs/docs/persistence-changes/2026-09-21-user-question-reply.schema.json +0 -11405
  254. package/references/official-docs/docs/persistence-changes/2026-09-21-user-question-reply.zh.md +0 -60
  255. package/references/official-docs/docs/persistence-changes/2026-09-30-job-session-lifecycle.i18n.yaml +0 -28
  256. package/references/official-docs/docs/persistence-changes/2026-09-30-job-session-lifecycle.md +0 -52
  257. package/references/official-docs/docs/persistence-changes/2026-09-30-job-session-lifecycle.schema.json +0 -297
  258. package/references/official-docs/docs/persistence-changes/2026-09-30-job-session-lifecycle.zh.md +0 -52
  259. package/references/official-docs/docs/persistence-changes/2026-10-05-ptc-operation-metadata.i18n.yaml +0 -28
  260. package/references/official-docs/docs/persistence-changes/2026-10-05-ptc-operation-metadata.md +0 -48
  261. package/references/official-docs/docs/persistence-changes/2026-10-05-ptc-operation-metadata.schema.json +0 -457
  262. package/references/official-docs/docs/persistence-changes/2026-10-05-ptc-operation-metadata.zh.md +0 -48
  263. package/references/official-docs/docs/persistence-changes/2026-10-05-working-directory-attribution.i18n.yaml +0 -28
  264. package/references/official-docs/docs/persistence-changes/2026-10-05-working-directory-attribution.md +0 -60
  265. package/references/official-docs/docs/persistence-changes/2026-10-05-working-directory-attribution.schema.json +0 -11474
  266. package/references/official-docs/docs/persistence-changes/2026-10-05-working-directory-attribution.zh.md +0 -60
  267. package/references/official-docs/docs/persistence-changes/2026-10-07-title-reasoning-effort.i18n.yaml +0 -28
  268. package/references/official-docs/docs/persistence-changes/2026-10-07-title-reasoning-effort.md +0 -48
  269. package/references/official-docs/docs/persistence-changes/2026-10-07-title-reasoning-effort.schema.json +0 -2990
  270. package/references/official-docs/docs/persistence-changes/2026-10-07-title-reasoning-effort.zh.md +0 -48
  271. package/references/official-docs/docs/persistence-changes/2026-10-13-deepseek-search-thinking.i18n.yaml +0 -28
  272. package/references/official-docs/docs/persistence-changes/2026-10-13-deepseek-search-thinking.md +0 -48
  273. package/references/official-docs/docs/persistence-changes/2026-10-13-deepseek-search-thinking.schema.json +0 -231
  274. package/references/official-docs/docs/persistence-changes/2026-10-13-deepseek-search-thinking.zh.md +0 -48
  275. package/references/official-docs/docs/persistence-changes/2026-10-13-user-rpc-principal.i18n.yaml +0 -28
  276. package/references/official-docs/docs/persistence-changes/2026-10-13-user-rpc-principal.md +0 -60
  277. package/references/official-docs/docs/persistence-changes/2026-10-13-user-rpc-principal.schema.json +0 -11559
  278. package/references/official-docs/docs/persistence-changes/2026-10-13-user-rpc-principal.zh.md +0 -60
  279. package/references/official-docs/docs/persistence-changes/README.i18n.yaml +0 -28
  280. package/references/official-docs/docs/persistence-changes/README.md +0 -90
  281. package/references/official-docs/docs/persistence-changes/README.zh.md +0 -90
  282. package/references/official-docs/docs/persistence-changes/finalized/v4.json +0 -379
  283. package/references/official-docs/docs/persistence-changes/historical-formats/README.i18n.yaml +0 -28
  284. package/references/official-docs/docs/persistence-changes/historical-formats/README.md +0 -75
  285. package/references/official-docs/docs/persistence-changes/historical-formats/README.zh.md +0 -75
  286. package/references/official-docs/docs/persistence-changes/historical-formats/v0.i18n.yaml +0 -1285
  287. package/references/official-docs/docs/persistence-changes/historical-formats/v0.md +0 -5105
  288. package/references/official-docs/docs/persistence-changes/historical-formats/v0.schema.json +0 -49308
  289. package/references/official-docs/docs/persistence-changes/historical-formats/v0.zh.md +0 -5105
  290. package/references/official-docs/docs/persistence-changes/historical-formats/v1.i18n.yaml +0 -1285
  291. package/references/official-docs/docs/persistence-changes/historical-formats/v1.md +0 -5107
  292. package/references/official-docs/docs/persistence-changes/historical-formats/v1.schema.json +0 -49411
  293. package/references/official-docs/docs/persistence-changes/historical-formats/v1.zh.md +0 -5107
  294. package/references/official-docs/docs/persistence-changes/historical-formats/v2.i18n.yaml +0 -1345
  295. package/references/official-docs/docs/persistence-changes/historical-formats/v2.md +0 -5362
  296. package/references/official-docs/docs/persistence-changes/historical-formats/v2.schema.json +0 -56466
  297. package/references/official-docs/docs/persistence-changes/historical-formats/v2.zh.md +0 -5362
  298. package/references/official-docs/docs/persistence-changes/historical-formats/v3.i18n.yaml +0 -1441
  299. package/references/official-docs/docs/persistence-changes/historical-formats/v3.md +0 -5634
  300. package/references/official-docs/docs/persistence-changes/historical-formats/v3.schema.json +0 -61307
  301. package/references/official-docs/docs/persistence-changes/historical-formats/v3.zh.md +0 -5634
  302. package/references/official-docs/docs/persistence-changes/releases/README.i18n.yaml +0 -31
  303. package/references/official-docs/docs/persistence-changes/releases/README.md +0 -103
  304. package/references/official-docs/docs/persistence-changes/releases/README.zh.md +0 -103
  305. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.1.i18n.yaml +0 -31
  306. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.1.md +0 -201
  307. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.1.schema.json +0 -39868
  308. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.1.zh.md +0 -201
  309. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.2.i18n.yaml +0 -31
  310. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.2.md +0 -261
  311. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.2.schema.json +0 -43342
  312. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.2.zh.md +0 -261
  313. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.3.i18n.yaml +0 -31
  314. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.3.md +0 -126
  315. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.3.schema.json +0 -19452
  316. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.3.zh.md +0 -126
  317. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.4.i18n.yaml +0 -31
  318. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.4.md +0 -75
  319. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.4.schema.json +0 -5
  320. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.4.zh.md +0 -75
  321. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.5.i18n.yaml +0 -31
  322. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.5.md +0 -75
  323. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.5.schema.json +0 -5
  324. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.0.1-rc.5.zh.md +0 -75
  325. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.1.i18n.yaml +0 -31
  326. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.1.md +0 -75
  327. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.1.schema.json +0 -5
  328. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.1.zh.md +0 -75
  329. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.2.i18n.yaml +0 -31
  330. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.2.md +0 -75
  331. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.2.schema.json +0 -5
  332. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.2.zh.md +0 -75
  333. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.3.i18n.yaml +0 -31
  334. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.3.md +0 -75
  335. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.3.schema.json +0 -5
  336. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.3.zh.md +0 -75
  337. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.5.i18n.yaml +0 -31
  338. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.5.md +0 -75
  339. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.5.schema.json +0 -5
  340. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.5.zh.md +0 -75
  341. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.6.i18n.yaml +0 -31
  342. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.6.md +0 -75
  343. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.6.schema.json +0 -5
  344. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.6.zh.md +0 -75
  345. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.7.i18n.yaml +0 -31
  346. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.7.md +0 -82
  347. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.7.schema.json +0 -5320
  348. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.7.zh.md +0 -82
  349. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.8.i18n.yaml +0 -31
  350. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.8.md +0 -110
  351. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.8.schema.json +0 -21258
  352. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.0-rc.8.zh.md +0 -110
  353. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.1.i18n.yaml +0 -31
  354. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.1.md +0 -82
  355. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.1.schema.json +0 -417
  356. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.1.zh.md +0 -82
  357. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.2.i18n.yaml +0 -31
  358. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.2.md +0 -119
  359. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.2.schema.json +0 -29672
  360. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.1-rc.2.zh.md +0 -119
  361. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.1.i18n.yaml +0 -31
  362. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.1.md +0 -295
  363. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.1.schema.json +0 -48429
  364. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.1.zh.md +0 -295
  365. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.2.i18n.yaml +0 -31
  366. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.2.md +0 -286
  367. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.2.schema.json +0 -49347
  368. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.2.zh.md +0 -286
  369. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.3.i18n.yaml +0 -31
  370. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.3.md +0 -75
  371. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.3.schema.json +0 -5
  372. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.3.zh.md +0 -75
  373. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.4.i18n.yaml +0 -31
  374. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.4.md +0 -95
  375. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.4.schema.json +0 -17642
  376. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.4.zh.md +0 -95
  377. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.5.i18n.yaml +0 -31
  378. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.5.md +0 -75
  379. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.5.schema.json +0 -5
  380. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-alpha.5.zh.md +0 -75
  381. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-rc.1.i18n.yaml +0 -31
  382. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-rc.1.md +0 -75
  383. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-rc.1.schema.json +0 -5
  384. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.2-rc.1.zh.md +0 -75
  385. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.1.i18n.yaml +0 -31
  386. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.1.md +0 -154
  387. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.1.schema.json +0 -38678
  388. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.1.zh.md +0 -154
  389. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.2.i18n.yaml +0 -31
  390. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.2.md +0 -86
  391. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.2.schema.json +0 -783
  392. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.3-alpha.2.zh.md +0 -86
  393. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.1.i18n.yaml +0 -31
  394. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.1.md +0 -139
  395. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.1.schema.json +0 -24597
  396. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.1.zh.md +0 -139
  397. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.2.i18n.yaml +0 -31
  398. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.2.md +0 -95
  399. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.2.schema.json +0 -2132
  400. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-alpha.2.zh.md +0 -95
  401. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.1.i18n.yaml +0 -31
  402. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.1.md +0 -75
  403. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.1.schema.json +0 -5
  404. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.1.zh.md +0 -75
  405. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.2.i18n.yaml +0 -31
  406. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.2.md +0 -75
  407. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.2.schema.json +0 -5
  408. package/references/official-docs/docs/persistence-changes/releases/dsh-v0.1.5-rc.2.zh.md +0 -75
  409. package/references/official-docs/docs/persistence-changes/releases/manifest.json +0 -162
  410. package/references/official-docs/docs/persistence-schema.json +0 -26177
  411. package/references/official-docs/docs/postmortem/0001-acp-default-export-drops-inject.i18n.yaml +0 -34
  412. package/references/official-docs/docs/postmortem/0001-acp-default-export-drops-inject.md +0 -113
  413. package/references/official-docs/docs/postmortem/0001-acp-default-export-drops-inject.zh.md +0 -113
  414. package/references/official-docs/docs/postmortem/0002-js-expression-disabled-filesystem-tools.i18n.yaml +0 -28
  415. package/references/official-docs/docs/postmortem/0002-js-expression-disabled-filesystem-tools.md +0 -47
  416. package/references/official-docs/docs/postmortem/0002-js-expression-disabled-filesystem-tools.zh.md +0 -47
  417. package/references/official-docs/docs/postmortem/0003-web-agent-gui-feedback-loop.i18n.yaml +0 -28
  418. package/references/official-docs/docs/postmortem/0003-web-agent-gui-feedback-loop.md +0 -53
  419. package/references/official-docs/docs/postmortem/0003-web-agent-gui-feedback-loop.zh.md +0 -53
  420. package/references/official-docs/docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.i18n.yaml +0 -28
  421. package/references/official-docs/docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.md +0 -55
  422. package/references/official-docs/docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.zh.md +0 -55
  423. package/references/official-docs/docs/postmortem/README.i18n.yaml +0 -7
  424. package/references/official-docs/docs/postmortem/README.md +0 -18
  425. package/references/official-docs/docs/postmortem/README.zh.md +0 -18
  426. package/references/official-docs/docs/rescope.i18n.yaml +0 -19
  427. package/references/official-docs/docs/rescope.md +0 -53
  428. package/references/official-docs/docs/rescope.zh.md +0 -53
  429. package/references/official-docs/docs/session-format-status.i18n.yaml +0 -28
  430. package/references/official-docs/docs/session-format-status.md +0 -63
  431. package/references/official-docs/docs/session-format-status.zh.md +0 -63
  432. package/references/official-docs/docs/subsystems/README.i18n.yaml +0 -7
  433. package/references/official-docs/docs/subsystems/README.md +0 -76
  434. package/references/official-docs/docs/subsystems/README.zh.md +0 -76
  435. package/references/official-docs/docs/subsystems/agent-team.i18n.yaml +0 -22
  436. package/references/official-docs/docs/subsystems/agent-team.md +0 -231
  437. package/references/official-docs/docs/subsystems/agent-team.zh.md +0 -231
  438. package/references/official-docs/docs/subsystems/approval.i18n.yaml +0 -19
  439. package/references/official-docs/docs/subsystems/approval.md +0 -170
  440. package/references/official-docs/docs/subsystems/approval.zh.md +0 -170
  441. package/references/official-docs/docs/subsystems/attachment.i18n.yaml +0 -13
  442. package/references/official-docs/docs/subsystems/attachment.md +0 -361
  443. package/references/official-docs/docs/subsystems/attachment.zh.md +0 -361
  444. package/references/official-docs/docs/subsystems/boot.i18n.yaml +0 -16
  445. package/references/official-docs/docs/subsystems/boot.md +0 -447
  446. package/references/official-docs/docs/subsystems/boot.zh.md +0 -447
  447. package/references/official-docs/docs/subsystems/browser-use.i18n.yaml +0 -19
  448. package/references/official-docs/docs/subsystems/browser-use.md +0 -67
  449. package/references/official-docs/docs/subsystems/browser-use.zh.md +0 -67
  450. package/references/official-docs/docs/subsystems/claude-code-mods.i18n.yaml +0 -28
  451. package/references/official-docs/docs/subsystems/claude-code-mods.md +0 -146
  452. package/references/official-docs/docs/subsystems/claude-code-mods.zh.md +0 -146
  453. package/references/official-docs/docs/subsystems/client-modules.i18n.yaml +0 -19
  454. package/references/official-docs/docs/subsystems/client-modules.md +0 -198
  455. package/references/official-docs/docs/subsystems/client-modules.zh.md +0 -198
  456. package/references/official-docs/docs/subsystems/client-resources.i18n.yaml +0 -22
  457. package/references/official-docs/docs/subsystems/client-resources.md +0 -92
  458. package/references/official-docs/docs/subsystems/client-resources.zh.md +0 -92
  459. package/references/official-docs/docs/subsystems/commands.i18n.yaml +0 -19
  460. package/references/official-docs/docs/subsystems/commands.md +0 -223
  461. package/references/official-docs/docs/subsystems/commands.zh.md +0 -223
  462. package/references/official-docs/docs/subsystems/compaction.i18n.yaml +0 -22
  463. package/references/official-docs/docs/subsystems/compaction.md +0 -284
  464. package/references/official-docs/docs/subsystems/compaction.zh.md +0 -284
  465. package/references/official-docs/docs/subsystems/computer-use.i18n.yaml +0 -16
  466. package/references/official-docs/docs/subsystems/computer-use.md +0 -59
  467. package/references/official-docs/docs/subsystems/computer-use.zh.md +0 -59
  468. package/references/official-docs/docs/subsystems/conversation.i18n.yaml +0 -31
  469. package/references/official-docs/docs/subsystems/conversation.md +0 -301
  470. package/references/official-docs/docs/subsystems/conversation.zh.md +0 -303
  471. package/references/official-docs/docs/subsystems/core.i18n.yaml +0 -37
  472. package/references/official-docs/docs/subsystems/core.md +0 -1113
  473. package/references/official-docs/docs/subsystems/core.zh.md +0 -1125
  474. package/references/official-docs/docs/subsystems/credentials.i18n.yaml +0 -25
  475. package/references/official-docs/docs/subsystems/credentials.md +0 -493
  476. package/references/official-docs/docs/subsystems/credentials.zh.md +0 -493
  477. package/references/official-docs/docs/subsystems/deliverables.i18n.yaml +0 -28
  478. package/references/official-docs/docs/subsystems/deliverables.md +0 -178
  479. package/references/official-docs/docs/subsystems/deliverables.zh.md +0 -178
  480. package/references/official-docs/docs/subsystems/extensions.i18n.yaml +0 -7
  481. package/references/official-docs/docs/subsystems/extensions.md +0 -384
  482. package/references/official-docs/docs/subsystems/extensions.zh.md +0 -384
  483. package/references/official-docs/docs/subsystems/feedback.i18n.yaml +0 -28
  484. package/references/official-docs/docs/subsystems/feedback.md +0 -400
  485. package/references/official-docs/docs/subsystems/feedback.zh.md +0 -400
  486. package/references/official-docs/docs/subsystems/filesystem.i18n.yaml +0 -34
  487. package/references/official-docs/docs/subsystems/filesystem.md +0 -530
  488. package/references/official-docs/docs/subsystems/filesystem.zh.md +0 -530
  489. package/references/official-docs/docs/subsystems/goal.i18n.yaml +0 -19
  490. package/references/official-docs/docs/subsystems/goal.md +0 -313
  491. package/references/official-docs/docs/subsystems/goal.zh.md +0 -313
  492. package/references/official-docs/docs/subsystems/jobs.i18n.yaml +0 -28
  493. package/references/official-docs/docs/subsystems/jobs.md +0 -554
  494. package/references/official-docs/docs/subsystems/jobs.zh.md +0 -554
  495. package/references/official-docs/docs/subsystems/llm-streaming.i18n.yaml +0 -49
  496. package/references/official-docs/docs/subsystems/llm-streaming.md +0 -1196
  497. package/references/official-docs/docs/subsystems/llm-streaming.zh.md +0 -1202
  498. package/references/official-docs/docs/subsystems/lsp.i18n.yaml +0 -19
  499. package/references/official-docs/docs/subsystems/lsp.md +0 -202
  500. package/references/official-docs/docs/subsystems/lsp.zh.md +0 -202
  501. package/references/official-docs/docs/subsystems/mcp.i18n.yaml +0 -34
  502. package/references/official-docs/docs/subsystems/mcp.md +0 -139
  503. package/references/official-docs/docs/subsystems/mcp.zh.md +0 -139
  504. package/references/official-docs/docs/subsystems/office-to-pdf.i18n.yaml +0 -19
  505. package/references/official-docs/docs/subsystems/office-to-pdf.md +0 -87
  506. package/references/official-docs/docs/subsystems/office-to-pdf.zh.md +0 -87
  507. package/references/official-docs/docs/subsystems/otel.i18n.yaml +0 -7
  508. package/references/official-docs/docs/subsystems/otel.md +0 -44
  509. package/references/official-docs/docs/subsystems/otel.zh.md +0 -44
  510. package/references/official-docs/docs/subsystems/permission-presets.i18n.yaml +0 -19
  511. package/references/official-docs/docs/subsystems/permission-presets.md +0 -167
  512. package/references/official-docs/docs/subsystems/permission-presets.zh.md +0 -167
  513. package/references/official-docs/docs/subsystems/persistence.i18n.yaml +0 -37
  514. package/references/official-docs/docs/subsystems/persistence.md +0 -418
  515. package/references/official-docs/docs/subsystems/persistence.zh.md +0 -418
  516. package/references/official-docs/docs/subsystems/plan.i18n.yaml +0 -22
  517. package/references/official-docs/docs/subsystems/plan.md +0 -87
  518. package/references/official-docs/docs/subsystems/plan.zh.md +0 -87
  519. package/references/official-docs/docs/subsystems/product-telemetry.i18n.yaml +0 -10
  520. package/references/official-docs/docs/subsystems/product-telemetry.md +0 -81
  521. package/references/official-docs/docs/subsystems/product-telemetry.zh.md +0 -81
  522. package/references/official-docs/docs/subsystems/ptc-runtime.i18n.yaml +0 -19
  523. package/references/official-docs/docs/subsystems/ptc-runtime.md +0 -250
  524. package/references/official-docs/docs/subsystems/ptc-runtime.zh.md +0 -250
  525. package/references/official-docs/docs/subsystems/sandbox.i18n.yaml +0 -19
  526. package/references/official-docs/docs/subsystems/sandbox.md +0 -221
  527. package/references/official-docs/docs/subsystems/sandbox.zh.md +0 -221
  528. package/references/official-docs/docs/subsystems/schedule.i18n.yaml +0 -40
  529. package/references/official-docs/docs/subsystems/schedule.md +0 -550
  530. package/references/official-docs/docs/subsystems/schedule.zh.md +0 -550
  531. package/references/official-docs/docs/subsystems/scope.i18n.yaml +0 -16
  532. package/references/official-docs/docs/subsystems/scope.md +0 -59
  533. package/references/official-docs/docs/subsystems/scope.zh.md +0 -61
  534. package/references/official-docs/docs/subsystems/session-projection.i18n.yaml +0 -16
  535. package/references/official-docs/docs/subsystems/session-projection.md +0 -356
  536. package/references/official-docs/docs/subsystems/session-projection.zh.md +0 -356
  537. package/references/official-docs/docs/subsystems/session-query.i18n.yaml +0 -28
  538. package/references/official-docs/docs/subsystems/session-query.md +0 -511
  539. package/references/official-docs/docs/subsystems/session-query.zh.md +0 -511
  540. package/references/official-docs/docs/subsystems/session-reference.i18n.yaml +0 -19
  541. package/references/official-docs/docs/subsystems/session-reference.md +0 -224
  542. package/references/official-docs/docs/subsystems/session-reference.zh.md +0 -224
  543. package/references/official-docs/docs/subsystems/session-telemetry.i18n.yaml +0 -22
  544. package/references/official-docs/docs/subsystems/session-telemetry.md +0 -212
  545. package/references/official-docs/docs/subsystems/session-telemetry.zh.md +0 -212
  546. package/references/official-docs/docs/subsystems/session-title.i18n.yaml +0 -16
  547. package/references/official-docs/docs/subsystems/session-title.md +0 -213
  548. package/references/official-docs/docs/subsystems/session-title.zh.md +0 -213
  549. package/references/official-docs/docs/subsystems/session.i18n.yaml +0 -70
  550. package/references/official-docs/docs/subsystems/session.md +0 -1339
  551. package/references/official-docs/docs/subsystems/session.zh.md +0 -1343
  552. package/references/official-docs/docs/subsystems/settings.i18n.yaml +0 -13
  553. package/references/official-docs/docs/subsystems/settings.md +0 -155
  554. package/references/official-docs/docs/subsystems/settings.zh.md +0 -155
  555. package/references/official-docs/docs/subsystems/shell.i18n.yaml +0 -25
  556. package/references/official-docs/docs/subsystems/shell.md +0 -314
  557. package/references/official-docs/docs/subsystems/shell.zh.md +0 -314
  558. package/references/official-docs/docs/subsystems/sidebar-right.i18n.yaml +0 -37
  559. package/references/official-docs/docs/subsystems/sidebar-right.md +0 -160
  560. package/references/official-docs/docs/subsystems/sidebar-right.zh.md +0 -160
  561. package/references/official-docs/docs/subsystems/skills.i18n.yaml +0 -28
  562. package/references/official-docs/docs/subsystems/skills.md +0 -352
  563. package/references/official-docs/docs/subsystems/skills.zh.md +0 -352
  564. package/references/official-docs/docs/subsystems/slots.i18n.yaml +0 -28
  565. package/references/official-docs/docs/subsystems/slots.md +0 -200
  566. package/references/official-docs/docs/subsystems/slots.zh.md +0 -204
  567. package/references/official-docs/docs/subsystems/spill.i18n.yaml +0 -16
  568. package/references/official-docs/docs/subsystems/spill.md +0 -124
  569. package/references/official-docs/docs/subsystems/spill.zh.md +0 -124
  570. package/references/official-docs/docs/subsystems/ssh.i18n.yaml +0 -22
  571. package/references/official-docs/docs/subsystems/ssh.md +0 -146
  572. package/references/official-docs/docs/subsystems/ssh.zh.md +0 -146
  573. package/references/official-docs/docs/subsystems/storage.i18n.yaml +0 -25
  574. package/references/official-docs/docs/subsystems/storage.md +0 -259
  575. package/references/official-docs/docs/subsystems/storage.zh.md +0 -259
  576. package/references/official-docs/docs/subsystems/subagent.i18n.yaml +0 -28
  577. package/references/official-docs/docs/subsystems/subagent.md +0 -686
  578. package/references/official-docs/docs/subsystems/subagent.zh.md +0 -688
  579. package/references/official-docs/docs/subsystems/subprocess.i18n.yaml +0 -31
  580. package/references/official-docs/docs/subsystems/subprocess.md +0 -321
  581. package/references/official-docs/docs/subsystems/subprocess.zh.md +0 -321
  582. package/references/official-docs/docs/subsystems/system-prompt.i18n.yaml +0 -19
  583. package/references/official-docs/docs/subsystems/system-prompt.md +0 -254
  584. package/references/official-docs/docs/subsystems/system-prompt.zh.md +0 -254
  585. package/references/official-docs/docs/subsystems/terminal.i18n.yaml +0 -19
  586. package/references/official-docs/docs/subsystems/terminal.md +0 -184
  587. package/references/official-docs/docs/subsystems/terminal.zh.md +0 -184
  588. package/references/official-docs/docs/subsystems/todo.i18n.yaml +0 -13
  589. package/references/official-docs/docs/subsystems/todo.md +0 -32
  590. package/references/official-docs/docs/subsystems/todo.zh.md +0 -32
  591. package/references/official-docs/docs/subsystems/token-meter.i18n.yaml +0 -13
  592. package/references/official-docs/docs/subsystems/token-meter.md +0 -106
  593. package/references/official-docs/docs/subsystems/token-meter.zh.md +0 -106
  594. package/references/official-docs/docs/subsystems/tools.i18n.yaml +0 -25
  595. package/references/official-docs/docs/subsystems/tools.md +0 -747
  596. package/references/official-docs/docs/subsystems/tools.zh.md +0 -747
  597. package/references/official-docs/docs/subsystems/translation.i18n.yaml +0 -19
  598. package/references/official-docs/docs/subsystems/translation.md +0 -103
  599. package/references/official-docs/docs/subsystems/translation.zh.md +0 -103
  600. package/references/official-docs/docs/subsystems/typert.i18n.yaml +0 -25
  601. package/references/official-docs/docs/subsystems/typert.md +0 -690
  602. package/references/official-docs/docs/subsystems/typert.zh.md +0 -690
  603. package/references/official-docs/docs/subsystems/user-questions.i18n.yaml +0 -28
  604. package/references/official-docs/docs/subsystems/user-questions.md +0 -307
  605. package/references/official-docs/docs/subsystems/user-questions.zh.md +0 -307
  606. package/references/official-docs/docs/subsystems/voice-input.i18n.yaml +0 -19
  607. package/references/official-docs/docs/subsystems/voice-input.md +0 -164
  608. package/references/official-docs/docs/subsystems/voice-input.zh.md +0 -164
  609. package/references/official-docs/docs/subsystems/web-client.i18n.yaml +0 -37
  610. package/references/official-docs/docs/subsystems/web-client.md +0 -100
  611. package/references/official-docs/docs/subsystems/web-client.zh.md +0 -100
  612. package/references/official-docs/docs/subsystems/web-server.i18n.yaml +0 -16
  613. package/references/official-docs/docs/subsystems/web-server.md +0 -302
  614. package/references/official-docs/docs/subsystems/web-server.zh.md +0 -302
  615. package/references/official-docs/docs/subsystems/web.i18n.yaml +0 -28
  616. package/references/official-docs/docs/subsystems/web.md +0 -206
  617. package/references/official-docs/docs/subsystems/web.zh.md +0 -206
  618. package/references/official-docs/docs/subsystems/webhook.i18n.yaml +0 -19
  619. package/references/official-docs/docs/subsystems/webhook.md +0 -70
  620. package/references/official-docs/docs/subsystems/webhook.zh.md +0 -70
  621. package/references/official-docs/docs/subsystems/workflow.i18n.yaml +0 -28
  622. package/references/official-docs/docs/subsystems/workflow.md +0 -278
  623. package/references/official-docs/docs/subsystems/workflow.zh.md +0 -278
  624. package/references/official-docs/docs/subsystems/working-directory.i18n.yaml +0 -13
  625. package/references/official-docs/docs/subsystems/working-directory.md +0 -64
  626. package/references/official-docs/docs/subsystems/working-directory.zh.md +0 -64
  627. package/references/official-docs/docs/subsystems/workspace.i18n.yaml +0 -28
  628. package/references/official-docs/docs/subsystems/workspace.md +0 -647
  629. package/references/official-docs/docs/subsystems/workspace.zh.md +0 -647
  630. package/references/official-docs/docs/subsystems/worktrees.i18n.yaml +0 -13
  631. package/references/official-docs/docs/subsystems/worktrees.md +0 -76
  632. package/references/official-docs/docs/subsystems/worktrees.zh.md +0 -76
  633. package/references/official-docs/docs/testing.i18n.yaml +0 -34
  634. package/references/official-docs/docs/testing.md +0 -55
  635. package/references/official-docs/docs/testing.zh.md +0 -55
  636. package/references/official-docs/docs/tool-catalog.i18n.yaml +0 -331
  637. package/references/official-docs/docs/tool-catalog.md +0 -2824
  638. package/references/official-docs/docs/tool-catalog.zh.md +0 -2832
  639. package/references/official-docs/docs/tool-execution-pipeline.i18n.yaml +0 -10
  640. package/references/official-docs/docs/tool-execution-pipeline.md +0 -65
  641. package/references/official-docs/docs/tool-execution-pipeline.zh.md +0 -67
  642. package/references/official-docs/docs/ui-radius.i18n.yaml +0 -31
  643. package/references/official-docs/docs/ui-radius.md +0 -117
  644. package/references/official-docs/docs/ui-radius.zh.md +0 -117
  645. package/references/official-docs/docs/upgrade-guide/v0.1.7-rc.2/schedule-optional-bundle/guide.i18n.yaml +0 -16
  646. package/references/official-docs/docs/upgrade-guide/v0.1.7-rc.2/schedule-optional-bundle/guide.md +0 -22
  647. package/references/official-docs/docs/upgrade-guide/v0.1.7-rc.2/schedule-optional-bundle/guide.zh.md +0 -22
  648. package/references/official-docs/docs/upgrade-guide/v0.1.7-rc.2/transcript-view-legacy-normal/guide.i18n.yaml +0 -16
  649. package/references/official-docs/docs/upgrade-guide/v0.1.7-rc.2/transcript-view-legacy-normal/guide.md +0 -25
  650. package/references/official-docs/docs/upgrade-guide/v0.1.7-rc.2/transcript-view-legacy-normal/guide.zh.md +0 -25
  651. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/account-sign-in-errors/guide.i18n.yaml +0 -16
  652. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/account-sign-in-errors/guide.md +0 -18
  653. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/account-sign-in-errors/guide.zh.md +0 -18
  654. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/bundled-python-tests/guide.i18n.yaml +0 -16
  655. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/bundled-python-tests/guide.md +0 -18
  656. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/bundled-python-tests/guide.zh.md +0 -18
  657. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/primary-runtime-python-aliases/guide.i18n.yaml +0 -16
  658. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/primary-runtime-python-aliases/guide.md +0 -18
  659. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/primary-runtime-python-aliases/guide.zh.md +0 -18
  660. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/remove-runtime-invariants/guide.i18n.yaml +0 -16
  661. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/remove-runtime-invariants/guide.md +0 -23
  662. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/remove-runtime-invariants/guide.zh.md +0 -23
  663. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/schedule-bundle-retired/guide.i18n.yaml +0 -16
  664. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/schedule-bundle-retired/guide.md +0 -22
  665. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/schedule-bundle-retired/guide.zh.md +0 -22
  666. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/subpath-plugin-display-manifest/guide.i18n.yaml +0 -16
  667. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/subpath-plugin-display-manifest/guide.md +0 -27
  668. package/references/official-docs/docs/upgrade-guide/v0.2.0-rc.2/subpath-plugin-display-manifest/guide.zh.md +0 -27
  669. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/deepseek-model-discovery/guide.i18n.yaml +0 -16
  670. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/deepseek-model-discovery/guide.md +0 -17
  671. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/deepseek-model-discovery/guide.zh.md +0 -17
  672. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/desktop-test-auth-popup/guide.i18n.yaml +0 -16
  673. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/desktop-test-auth-popup/guide.md +0 -18
  674. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/desktop-test-auth-popup/guide.zh.md +0 -18
  675. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/experimental-package-composition/guide.i18n.yaml +0 -16
  676. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/experimental-package-composition/guide.md +0 -28
  677. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/experimental-package-composition/guide.zh.md +0 -28
  678. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/instruction-home-override/guide.i18n.yaml +0 -16
  679. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/instruction-home-override/guide.md +0 -20
  680. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/instruction-home-override/guide.zh.md +0 -20
  681. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/job-id-identity/guide.i18n.yaml +0 -16
  682. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/job-id-identity/guide.md +0 -18
  683. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/job-id-identity/guide.zh.md +0 -18
  684. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/jsonl-persistence-plugin/guide.i18n.yaml +0 -16
  685. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/jsonl-persistence-plugin/guide.md +0 -18
  686. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/jsonl-persistence-plugin/guide.zh.md +0 -18
  687. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/mock-messages-events/guide.i18n.yaml +0 -16
  688. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/mock-messages-events/guide.md +0 -17
  689. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/mock-messages-events/guide.zh.md +0 -17
  690. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/native-subagent-bundle-tools/guide.i18n.yaml +0 -16
  691. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/native-subagent-bundle-tools/guide.md +0 -31
  692. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/native-subagent-bundle-tools/guide.zh.md +0 -31
  693. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/new-session-generations/guide.i18n.yaml +0 -16
  694. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/new-session-generations/guide.md +0 -20
  695. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/new-session-generations/guide.zh.md +0 -20
  696. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/plugin-option-placement/guide.i18n.yaml +0 -16
  697. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/plugin-option-placement/guide.md +0 -20
  698. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/plugin-option-placement/guide.zh.md +0 -20
  699. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/python-optional-resources/guide.i18n.yaml +0 -16
  700. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/python-optional-resources/guide.md +0 -18
  701. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/python-optional-resources/guide.zh.md +0 -18
  702. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/python-ptc-sandbox/guide.i18n.yaml +0 -16
  703. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/python-ptc-sandbox/guide.md +0 -21
  704. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/python-ptc-sandbox/guide.zh.md +0 -21
  705. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/session-title-adapters/guide.i18n.yaml +0 -16
  706. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/session-title-adapters/guide.md +0 -18
  707. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/session-title-adapters/guide.zh.md +0 -18
  708. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/session-title-provider-strategy/guide.i18n.yaml +0 -16
  709. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/session-title-provider-strategy/guide.md +0 -20
  710. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/session-title-provider-strategy/guide.zh.md +0 -20
  711. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/ssh-helper-launch/guide.i18n.yaml +0 -16
  712. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/ssh-helper-launch/guide.md +0 -19
  713. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/ssh-helper-launch/guide.zh.md +0 -19
  714. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/subagent-activations/guide.i18n.yaml +0 -16
  715. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/subagent-activations/guide.md +0 -59
  716. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/subagent-activations/guide.zh.md +0 -59
  717. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/subagent-preset-composition/guide.i18n.yaml +0 -16
  718. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/subagent-preset-composition/guide.md +0 -21
  719. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/subagent-preset-composition/guide.zh.md +0 -21
  720. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/team-direct-inbox/guide.i18n.yaml +0 -16
  721. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/team-direct-inbox/guide.md +0 -21
  722. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/team-direct-inbox/guide.zh.md +0 -21
  723. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/terminal-command-labels/guide.i18n.yaml +0 -16
  724. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/terminal-command-labels/guide.md +0 -18
  725. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/terminal-command-labels/guide.zh.md +0 -18
  726. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/tool-presentation-mode/guide.i18n.yaml +0 -16
  727. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/tool-presentation-mode/guide.md +0 -21
  728. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/tool-presentation-mode/guide.zh.md +0 -21
  729. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/web-listener-trust-config/guide.i18n.yaml +0 -16
  730. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/web-listener-trust-config/guide.md +0 -36
  731. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/web-listener-trust-config/guide.zh.md +0 -36
  732. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/working-directory/guide.i18n.yaml +0 -16
  733. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/working-directory/guide.md +0 -25
  734. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.1/working-directory/guide.zh.md +0 -25
  735. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/deepseek-account-identity-watch/guide.i18n.yaml +0 -16
  736. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/deepseek-account-identity-watch/guide.md +0 -18
  737. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/deepseek-account-identity-watch/guide.zh.md +0 -18
  738. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/deepseek-account-model-catalog/guide.i18n.yaml +0 -16
  739. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/deepseek-account-model-catalog/guide.md +0 -27
  740. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/deepseek-account-model-catalog/guide.zh.md +0 -27
  741. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/desktop-font-size-shortcuts/guide.i18n.yaml +0 -16
  742. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/desktop-font-size-shortcuts/guide.md +0 -18
  743. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/desktop-font-size-shortcuts/guide.zh.md +0 -18
  744. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/from-default-profile-replaces-target/guide.i18n.yaml +0 -16
  745. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/from-default-profile-replaces-target/guide.md +0 -20
  746. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/from-default-profile-replaces-target/guide.zh.md +0 -20
  747. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/operator-connect/guide.i18n.yaml +0 -16
  748. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/operator-connect/guide.md +0 -18
  749. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/operator-connect/guide.zh.md +0 -18
  750. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/pi-ai-azure-provider/guide.i18n.yaml +0 -16
  751. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/pi-ai-azure-provider/guide.md +0 -19
  752. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/pi-ai-azure-provider/guide.zh.md +0 -19
  753. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/pi-ai-model-discovery/guide.i18n.yaml +0 -16
  754. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/pi-ai-model-discovery/guide.md +0 -17
  755. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/pi-ai-model-discovery/guide.zh.md +0 -17
  756. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/plugin-install-over-installed/guide.i18n.yaml +0 -16
  757. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/plugin-install-over-installed/guide.md +0 -20
  758. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/plugin-install-over-installed/guide.zh.md +0 -20
  759. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/sdk-minimal-image-compaction/guide.i18n.yaml +0 -16
  760. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/sdk-minimal-image-compaction/guide.md +0 -32
  761. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/sdk-minimal-image-compaction/guide.zh.md +0 -32
  762. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/stored-credentials-precedence/guide.i18n.yaml +0 -16
  763. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/stored-credentials-precedence/guide.md +0 -25
  764. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.2/stored-credentials-precedence/guide.zh.md +0 -25
  765. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.3/plugin-engines-dsh/guide.i18n.yaml +0 -16
  766. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.3/plugin-engines-dsh/guide.md +0 -21
  767. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.3/plugin-engines-dsh/guide.zh.md +0 -21
  768. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.4/account-notification-fields/guide.i18n.yaml +0 -16
  769. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.4/account-notification-fields/guide.md +0 -18
  770. package/references/official-docs/docs/upgrade-guide/v0.2.1-alpha.4/account-notification-fields/guide.zh.md +0 -18
  771. package/references/official-docs/docs/user/develop/basic/config.i18n.yaml +0 -28
  772. package/references/official-docs/docs/user/develop/basic/config.md +0 -106
  773. package/references/official-docs/docs/user/develop/basic/config.zh.md +0 -106
  774. package/references/official-docs/docs/user/develop/basic/index.i18n.yaml +0 -37
  775. package/references/official-docs/docs/user/develop/basic/index.md +0 -144
  776. package/references/official-docs/docs/user/develop/basic/index.zh.md +0 -144
  777. package/references/official-docs/docs/user/develop/basic/publish.i18n.yaml +0 -31
  778. package/references/official-docs/docs/user/develop/basic/publish.md +0 -191
  779. package/references/official-docs/docs/user/develop/basic/publish.zh.md +0 -191
  780. package/references/official-docs/docs/user/develop/basic/tool.i18n.yaml +0 -16
  781. package/references/official-docs/docs/user/develop/basic/tool.md +0 -52
  782. package/references/official-docs/docs/user/develop/basic/tool.zh.md +0 -52
  783. package/references/official-docs/docs/user/develop/framework/events.i18n.yaml +0 -46
  784. package/references/official-docs/docs/user/develop/framework/events.md +0 -143
  785. package/references/official-docs/docs/user/develop/framework/events.zh.md +0 -143
  786. package/references/official-docs/docs/user/develop/framework/index.i18n.yaml +0 -31
  787. package/references/official-docs/docs/user/develop/framework/index.md +0 -137
  788. package/references/official-docs/docs/user/develop/framework/index.zh.md +0 -137
  789. package/references/official-docs/docs/user/develop/framework/service.i18n.yaml +0 -40
  790. package/references/official-docs/docs/user/develop/framework/service.md +0 -148
  791. package/references/official-docs/docs/user/develop/framework/service.zh.md +0 -150
  792. package/references/official-docs/docs/user/develop/practice/dynamic-cordis.i18n.yaml +0 -10
  793. package/references/official-docs/docs/user/develop/practice/dynamic-cordis.md +0 -15
  794. package/references/official-docs/docs/user/develop/practice/dynamic-cordis.zh.md +0 -15
  795. package/references/official-docs/docs/user/develop/practice/index.i18n.yaml +0 -46
  796. package/references/official-docs/docs/user/develop/practice/index.md +0 -155
  797. package/references/official-docs/docs/user/develop/practice/index.zh.md +0 -155
  798. package/references/official-docs/docs/user/develop/practice/llm-adapter.i18n.yaml +0 -34
  799. package/references/official-docs/docs/user/develop/practice/llm-adapter.md +0 -189
  800. package/references/official-docs/docs/user/develop/practice/llm-adapter.zh.md +0 -189
  801. package/references/official-docs/docs/user/guide/github-review.i18n.yaml +0 -25
  802. package/references/official-docs/docs/user/guide/github-review.md +0 -99
  803. package/references/official-docs/docs/user/guide/github-review.zh.md +0 -99
  804. package/references/official-docs/docs/user/guide/index.i18n.yaml +0 -19
  805. package/references/official-docs/docs/user/guide/index.md +0 -31
  806. package/references/official-docs/docs/user/guide/index.zh.md +0 -31
  807. package/references/official-docs/docs/user/guide/mcp-memory.i18n.yaml +0 -37
  808. package/references/official-docs/docs/user/guide/mcp-memory.md +0 -101
  809. package/references/official-docs/docs/user/guide/mcp-memory.zh.md +0 -101
  810. package/references/official-docs/docs/user/guide/network-proxy.i18n.yaml +0 -25
  811. package/references/official-docs/docs/user/guide/network-proxy.md +0 -85
  812. package/references/official-docs/docs/user/guide/network-proxy.zh.md +0 -85
  813. package/references/official-docs/docs/user/guide/plugin-market.i18n.yaml +0 -34
  814. package/references/official-docs/docs/user/guide/plugin-market.md +0 -148
  815. package/references/official-docs/docs/user/guide/plugin-market.zh.md +0 -148
  816. package/references/official-docs/docs/user/guide/providers-custom-form.png +0 -0
  817. package/references/official-docs/docs/user/guide/providers-custom-form.zh.png +0 -0
  818. package/references/official-docs/docs/user/guide/providers-models-page.png +0 -0
  819. package/references/official-docs/docs/user/guide/providers-models-page.zh.png +0 -0
  820. package/references/official-docs/docs/user/guide/providers.i18n.yaml +0 -40
  821. package/references/official-docs/docs/user/guide/providers.md +0 -227
  822. package/references/official-docs/docs/user/guide/providers.zh.md +0 -227
  823. package/references/official-docs/docs/user/guide/public-deployments.i18n.yaml +0 -19
  824. package/references/official-docs/docs/user/guide/public-deployments.md +0 -37
  825. package/references/official-docs/docs/user/guide/public-deployments.zh.md +0 -37
  826. package/references/official-docs/docs/user/guide/python-sdk.i18n.yaml +0 -28
  827. package/references/official-docs/docs/user/guide/python-sdk.md +0 -185
  828. package/references/official-docs/docs/user/guide/python-sdk.zh.md +0 -185
  829. package/references/official-docs/docs/user/guide/schedule.i18n.yaml +0 -31
  830. package/references/official-docs/docs/user/guide/schedule.md +0 -79
  831. package/references/official-docs/docs/user/guide/schedule.zh.md +0 -79
  832. package/references/official-docs/docs/user/index.i18n.yaml +0 -10
  833. package/references/official-docs/docs/user/index.md +0 -11
  834. package/references/official-docs/docs/user/index.zh.md +0 -11
  835. package/references/official-docs/docs/web-styling.i18n.yaml +0 -19
  836. package/references/official-docs/docs/web-styling.md +0 -39
  837. package/references/official-docs/docs/web-styling.zh.md +0 -39
  838. package/references/official-docs/packages/AGENTS.md +0 -29
  839. package/references/official-docs/packages/README.md +0 -117
  840. package/references/official-docs/vendor/README.md +0 -73
  841. package/references/official-docs/website-docs.ts +0 -591
  842. package/references/official-plugin-dev-skill.md +0 -124
  843. package/references/sources.md +0 -143
  844. package/references/upstream-cordis.md +0 -594
  845. package/references/website-pages.md +0 -673
  846. package/scripts/archive-discussions.ps1 +0 -162
  847. package/scripts/build-llms-full.mjs +0 -73
  848. package/scripts/check-docs-drift-detail.mjs +0 -145
  849. package/scripts/check-docs-drift.ps1 +0 -55
  850. package/scripts/check-facts.mjs +0 -162
  851. package/scripts/check-ps1-bom.mjs +0 -68
  852. package/scripts/check-readme-parity.mjs +0 -149
  853. package/scripts/check-readme-sync.mjs +0 -96
  854. package/scripts/download-community-articles.ps1 +0 -188
  855. package/scripts/download-community-repos.ps1 +0 -232
  856. package/scripts/download-sources.ps1 +0 -195
  857. package/scripts/gen-topic-snapshot.ps1 +0 -91
  858. package/scripts/install-skill.ps1 +0 -63
  859. package/scripts/measure-mirror-references.mjs +0 -117
  860. package/scripts/sync-official-docs.ps1 +0 -138
  861. package/scripts/verify-artifacts.mjs +0 -145
  862. package/scripts/verify-kit.ps1 +0 -197
  863. package/templates/js/LICENSE +0 -15
  864. package/templates/js/README-es.md +0 -46
  865. package/templates/js/README-hi.md +0 -46
  866. package/templates/js/README-pt.md +0 -46
  867. package/templates/js/README-zh.md +0 -46
  868. package/templates/js/README.md +0 -46
  869. package/templates/js/cordis.patch.yml +0 -10
  870. package/templates/js/icon.svg +0 -4
  871. package/templates/js/index.js +0 -38
  872. package/templates/js/locale/en.json +0 -6
  873. package/templates/js/locale/zh.json +0 -6
  874. package/templates/js/package.json +0 -49
  875. package/templates/js/tests/index.test.js +0 -12
  876. package/templates/ts/LICENSE +0 -15
  877. package/templates/ts/README-es.md +0 -48
  878. package/templates/ts/README-hi.md +0 -48
  879. package/templates/ts/README-pt.md +0 -48
  880. package/templates/ts/README-zh.md +0 -48
  881. package/templates/ts/README.md +0 -48
  882. package/templates/ts/cordis.patch.yml +0 -10
  883. package/templates/ts/icon.svg +0 -4
  884. package/templates/ts/locale/en.json +0 -6
  885. package/templates/ts/locale/zh.json +0 -6
  886. package/templates/ts/package.json +0 -58
  887. package/templates/ts/src/config.ts +0 -12
  888. package/templates/ts/src/index.ts +0 -36
  889. package/templates/ts/tests/index.test.ts +0 -12
  890. package/templates/ts/tsconfig.json +0 -17
  891. package/templates/ts/tsdown.config.mjs +0 -21
  892. package/templates/ts/vitest.config.ts +0 -8
@@ -1,1202 +0,0 @@
1
- # LLM(大语言模型)流式输出
2
-
3
- [English](llm-streaming.md) | 中文
4
-
5
- [`packages/llm`](../../packages/llm/README.zh.md) 提供对话与流式输出类型:持久 `Message` 值、仅供请求使用的 user 输入、共用的 `ContentBlock` 变体、完整组装的模型请求、原始 `StreamChunk` 协议、每个适配器必须实现的适配器约定(adapter contract),以及共享的 assembler。[核心包](core.zh.md)在每个轮次持有并记录这些值;本页声明它们。
6
-
7
- 源码:[`packages/llm/llm/src/types.ts`](../../packages/llm/llm/src/types.ts)
8
-
9
- <a id="content-blocks-and-messages"></a>
10
-
11
- ## 内容块与消息
12
-
13
- 一段对话由 `Message` 组成;一条消息是一个类型化**内容块**的数组。块的联合类型从 `ContentBlockMap` 派生。
14
-
15
- 源码:[`packages/llm/llm/src/types.ts`](../../packages/llm/llm/src/types.ts)
16
-
17
- ```ts type-equiv
18
- /**
19
- * Merge-extensible content blocks keyed by `type`. New core blocks must land
20
- * with adapter, UI, and compaction support. Tool-change blocks belong to
21
- * developer messages; `projectToolUpdates` selects what each route receives.
22
- */
23
- interface ContentBlockMap {
24
- 'text': TextBlock
25
- 'reasoning': ReasoningBlock
26
- 'image': ImageBlock
27
- 'file': FileBlock
28
- 'tool-call': ToolCallBlock
29
- 'tool-addition': ToolAdditionBlock
30
- 'tool-removal': ToolRemovalBlock
31
- }
32
- ```
33
-
34
- 各块接口(完整字段见源码):`TextBlock`(`text`)、`ReasoningBlock`(thinking,区别于可见文本)、`ImageBlock`(一个持久的[图片附件](attachment.zh.md))、`FileBlock`(一个持久的原样[文件附件](attachment.zh.md),请求组装对每条路由都把它投影为 handle 文本)和 `ToolCallBlock`(`id: ToolCallId`、`name`、原始 JSON `arguments`)。工具结果是一等 `ToolResultMessage`,含有 `toolCallId`、结果 `content` 与可选的 `isError`;它不是内容块。`ContentBlock = ContentBlockMap[ContentBlockType]`。仅当适配器、UI、压缩(compaction)和持久回放路径均支持某种新模态时,才将其纳入可合并扩展的 map。 Developer 工具变更块按已解析路由的能力投影。
35
-
36
- 图片访问方式属于请求序列化,不属于持久附件或确定性请求图片版本。`resolveImageAttachmentAccess()` 把附件提供方可选的宿主对象路径,与消费方为当前工具执行文件系统提供的映射组合起来。结果只适用于本次请求,不参与 `variantId`。
37
-
38
- 源码:[`packages/llm/llm/src/content.ts`](../../packages/llm/llm/src/content.ts)
39
-
40
- ```ts type-equiv
41
- /** Execution-world path that model tools can use to read one normalized attachment. */
42
- interface ImageAttachmentAccess {
43
- /** Absolute path to immutable normalized bytes; callers must treat it as read-only. */
44
- readonlyPath: string
45
- }
46
- ```
47
-
48
- 源码:[`packages/llm/llm/src/message.ts`](../../packages/llm/llm/src/message.ts)
49
-
50
- `Message` 是一个带标识且不可变的角色/来源/内容值。模型生成的 assistant 消息会在来源中记录生成它的提供方和模型,以及可选的适配器私有回放数据:
51
-
52
- ```ts type-equiv
53
- /** Provider/model identity and adapter-private replay data for an assistant message. */
54
- interface AssistantProviderMetadata {
55
- /** Provider route that produced the message. */
56
- provider: string
57
- /** Provider model id that produced the message. */
58
- model: string
59
- /**
60
- * Lossless-JSON adapter state needed to replay the provider response.
61
- * `LlmRuntime` exposes it to a target adapter only when that adapter instance
62
- * currently owns both this historical provider and the target provider.
63
- */
64
- replayState?: unknown
65
- }
66
- ```
67
-
68
- ```ts type-equiv
69
- /** Any persisted conversation message, discriminated by its `role`. */
70
- type Message = MessageRoleMap[keyof MessageRoleMap]
71
- ```
72
-
73
- `DeveloperMessage` 以 `developer` 角色按对话顺序记录增量智能体 Session 变更。`ToolAdditionBlock.toolName` 激活由所在 Session 事件的历史请求头引用所选定的定义;`ToolRemovalBlock.toolName` 移除当前生效的定义。其他消息角色拒绝这两种内容块。`deferLoading` 独立控制工具定义的加载请求,不要求存在添加记录。请求头绑定见 [Session](../../packages/core/session/README.zh.md),提供方支持限制见 [LLM 包](../../packages/llm/llm/README.zh.md#known-limitations-and-deferred-work)。 已解析和已准备模型元数据中的 `ToolUpdate` 为 `in-history` 或 `addition-only`。`GenerateOptions.toolHistory` 携带 `ToolHistory`:初始 `tools` 和有序 `updates`,每项把 developer `messageId` 绑定到已解析历史定义的 `additions`。运行时将此状态投影为提供方声明,不修改已记录请求头中的有效工具列表。
74
-
75
- 消息来源本身也是一个可合并扩展的和类型:
76
-
77
- ```ts type-equiv
78
- /**
79
- * Where a message (or injected content) came from, in the harness's own
80
- * vocabulary. Merge-extensible sum type — each producer declares its own
81
- * `kind` in its own module; there is no shared catch-all `plugin` kind.
82
- * Model and tool sources answer their role messages; user messages carry any
83
- * producer's kind, and consumers fall through unknown kinds.
84
- */
85
- interface MessageSourceMap {
86
- user: { kind: 'user' }
87
- model: ModelMessageSource
88
- tool: ToolMessageSource
89
- 'system-prompt': SystemPromptMessageSource
90
- }
91
- ```
92
-
93
- 生产方标识与呈现形式相互独立。`kind` 回答「由谁产生」;可选的 `form` 回答「这是什么类型的信息」,消费方决定如何呈现。多个生产方可以共用一种 `form`,一个生产方在一次会话中也可以发出多种 `form`。这些取值描述语义,并逐个增加;未声明或无法识别的值使用文档规定的默认值,按不透明内容呈现:
94
-
95
- ```ts type-equiv
96
- /**
97
- * The kind of information in producer-supplied context, declared by the
98
- * producer in the same `MessageSource`.
99
- *
100
- * `MessageSource.kind` answers *who produced this*; `form` answers *what kind
101
- * of thing it is*, and the two axes are deliberately independent — several
102
- * producers share one form, and one producer may emit more than one form over
103
- * a session.
104
- *
105
- * The vocabulary is SEMANTIC, never visual: a value states that the content is
106
- * a file's instructions or a catalog of available items, and a consumer decides
107
- * what that looks like. Colors, icons, ordering, and collapse defaults are the
108
- * consumer's business and must not enter this union. It grows one value at a
109
- * time as producers gain the structured fields their form needs; an absent or
110
- * unknown value is the documented default, presented as opaque content.
111
- */
112
- type ContextForm =
113
- /** Instructions read out of workspace files the model is expected to follow. */
114
- | 'instructions'
115
- /** A catalog of items available in this session, republished as it changes. */
116
- | 'catalog'
117
- /** Current state, where a later snapshot from the same producer supersedes an earlier one. */
118
- | 'snapshot'
119
- /** A one-off account of something that just happened; it supersedes nothing. */
120
- | 'notice'
121
- /** A message another agent addressed to this one. */
122
- | 'relay'
123
- /** Material lifted out of another session's log, possibly reduced on the way in. */
124
- | 'recall'
125
- ```
126
-
127
- ```ts type-equiv
128
- /** One named contribution to a `snapshot`-form context, in assembly order. */
129
- interface ContextSnapshotSection {
130
- /** The contributing subsystem's name. */
131
- readonly name: string
132
- /** That contribution's model-facing text, exactly as assembled. */
133
- readonly text: string
134
- }
135
- ```
136
-
137
- ```ts type-equiv
138
- /**
139
- * Producer-declared {@link ContextForm} and the fields that form requires,
140
- * mixed into the source types that carry one.
141
- *
142
- * Discriminated by `form` so a producer cannot select a form without the
143
- * fields needed to present it: a `notice` must record its one-line
144
- * account, a `snapshot` its sections. Omitting `form` stays valid — an
145
- * undeclared context is the documented default.
146
- */
147
- type ContextFormed =
148
- | { readonly form?: never }
149
- | { readonly form: 'instructions' }
150
- | { readonly form: 'catalog' }
151
- | {
152
- readonly form: 'snapshot'
153
- /** The named contributions this snapshot assembled, in order. */
154
- readonly sections: readonly ContextSnapshotSection[]
155
- }
156
- | {
157
- readonly form: 'notice'
158
- /** One-line account of what happened, shown without expanding the row. */
159
- readonly summary: string
160
- }
161
- | { readonly form: 'relay' }
162
- | { readonly form: 'recall' }
163
- ```
164
-
165
- <a id="streamchunk--the-raw-protocol"></a>
166
-
167
- ## `StreamChunk`:原始协议
168
-
169
- 一个流式响应交错包含多种类型的块(文本、推理(reasoning)、多个工具调用)。`index` 将每个 delta 关联到其所属块;`block-end` 携带完整组装好的 `ContentBlock`,消费方无需自行重新组装 delta。这是一个**封闭的**可辨识联合类型:对 `type` 的 `switch` 以 `assertNever` 结尾,因此新增变体会在每个必须处理它的消费方处触发编译错误。
170
-
171
- ```ts type-equiv
172
- /**
173
- * Adapter-private lossless-JSON state for replaying a successful response,
174
- * carried by a terminal `finish` chunk and stored on the assembled assistant
175
- * message's model source. Both halves stay opaque to the harness; only the
176
- * split is shared vocabulary, so assembly can keep stored metadata aligned
177
- * with stored content without reading either half.
178
- */
179
- interface ReplayEnvelope {
180
- /** Response-level adapter-private metadata (ids, native stop reason). */
181
- response: unknown
182
- /**
183
- * Per-block adapter-private metadata, one entry per emitted block in
184
- * first-seen stream order. When assembly drops a block it drops the entry at
185
- * the same position; entries whose length does not match the emitted block
186
- * count discard the whole envelope. An adapter whose metadata is independent
187
- * of block structure omits this field and the envelope passes through
188
- * assembly unchanged.
189
- */
190
- blocks?: readonly unknown[]
191
- }
192
- ```
193
-
194
- ```ts type-equiv
195
- /**
196
- * Raw streaming protocol emitted by adapters.
197
- * Block indexes correlate interleaved deltas, and `block-end` carries the
198
- * assembled block. Adapters emit usage before the terminal finish and nothing
199
- * afterward; tool arguments remain raw JSON strings. An adapter implementation
200
- * may throw, but `LlmRuntime.stream()` normalizes that failure to a terminal
201
- * `error` or `aborted` finish before exposing it to consumers.
202
- */
203
- type StreamChunk =
204
- | { type: 'block-start'; index: number; blockType: ContentBlockType }
205
- | { type: 'text-delta'; index: number; text: string }
206
- | { type: 'reasoning-delta'; index: number; text: string }
207
- | { type: 'tool-call-delta'; index: number; id: ToolCallId; name?: string; argumentsDelta: string }
208
- | { type: 'block-end'; index: number; block: ContentBlock }
209
- | { type: 'usage'; usage: TokenUsage }
210
- | {
211
- type: 'finish'
212
- reason: FinishReason
213
- /** Replay metadata for a successful response; see {@link ReplayEnvelope}. */
214
- replayState?: ReplayEnvelope
215
- }
216
- ```
217
-
218
- <a id="compact-assistant-streams"></a>
219
-
220
- ## 紧凑 Assistant stream
221
-
222
- `AssistantStreamAccumulator` 把每个 `StreamChunk` 与其原始安全整数时间戳配对,并生成 `AssistantStreamRecord[]`。同一 block 的连续 text、reasoning 或 tool argument delta 会变成一个 record,使用 `time0`、精确时间戳间隔和每个原始 delta 对应的一个数组成员;其他 chunk 保留为带时间戳的 raw record。该表示会移除重复 event envelope,但不会合并 token 边界,也不会丢弃 terminal、usage、block、failure 或 replay 事实。
223
-
224
- `snapshot()` 返回分离且不可变的 stream。`expandAssistantStream()` 会严格检查 record key、成员数、index、时间戳、tool-call identity 与无损 JSON,再重建精确的带时间 chunk 序列。Session 日志会把该 stream 嵌入作为 surface result 的 `assistant/message`,或嵌入没有 surface message 的 `assistant/attempt`。
225
-
226
- 进程本地 `agent/assistant-stream` frame 承载实时呈现。持久回放与恢复校验仍会展开内嵌 settlement;遥测、token 记账与 Host 折叠直接读取紧凑记录。记录级读取器(`assistantStreamFirstTokenTime`、`assistantStreamHasVisibleContent`、`assistantStreamHasVisibleText`、`lastAssistantStreamChunk`、`assistantStreamChunks`、`joinAssistantStreamText`、`assembleAssistantStream` 以及按 run 的 `runFirstTokenTime` 与 `runFirstVisibleTime`)以提前退出在一次扫描内回答消费方问题,因此大历史每次结算的代价为 O(records) 而非 O(members) 展开([折叠参考](../../packages/llm/llm/README.zh.md))。`expandAssistantStream()` 仍是持久边界读取记录与需要每个成员的消费方的校验路径。
227
-
228
- <a id="llmfailure"></a>
229
-
230
- ## `LlmFailure`
231
-
232
- 每个抛出的失败或最终适配器的带内失败都会规范化为一种可序列化、提供方无关的 payload。`providerRetryAfterMs` 是经校验、由提供方请求的正数延迟,而不是重试决策;`ProviderRequestId` 是用于诊断的不透明品牌字符串。
233
-
234
- ```ts type-equiv
235
- /** Serializable provider or transport failure facts; policy decides whether they are retryable. */
236
- interface LlmFailure {
237
- /** Human-readable provider or transport failure. */
238
- readonly message: string
239
- /** Stable provider-neutral machine-routing code. */
240
- readonly code: string
241
- /** HTTP status returned by the provider, when available. */
242
- readonly status?: number
243
- /** Provider-requested delay in milliseconds, when valid and available. */
244
- readonly providerRetryAfterMs?: number
245
- /** Opaque provider-issued request identifier for diagnostics. */
246
- readonly requestId?: ProviderRequestId
247
- /**
248
- * With code `IMAGE_OFFLOAD_REQUIRED`: how many more of the oldest retained
249
- * image occurrences the route needs offloaded before the same request fits
250
- * its exact byte accounting. `dsh-compaction-image-offload` records the
251
- * selected occurrences in an `image/offload` event and retries the step.
252
- */
253
- readonly offloadImages?: number
254
- }
255
- ```
256
-
257
- ## 请求图片定价
258
-
259
- 提供方对请求图片收取视觉 token 的适配器通过覆写 `LlmAdapter.imageRequestPricing` 声明按路由的定价,消费方经 `ctx.llm.imageRequestPricing(provider, model)` 同步解析。token 计量服务在每次计量时解析路由模型的定价,使 compaction 的压力、保留与选段都按路由请求实际发送的形式为图片历史计价;DeepSeek 适配器按模型的请求目标用官方公布的视觉计量为每个保留的出现位置定价,并把日志中的图片省略决策选中的出现位置按其占位文本定价,已完成请求仍以 provider usage 为权威锚点。
260
-
261
- ```ts type-equiv
262
- /**
263
- * Request price of one ordered image occurrence under one exact model route's
264
- * request projection. Every occurrence resolves to the pair the wire actually
265
- * carries: provider visual tokens for a retained image, plus the model-visible
266
- * text sent with or instead of it (request-preview handle, offload placeholder,
267
- * or text-only substitution). The caller prices `text` with its own text
268
- * estimator so provider pricing never fixes a text tokenization.
269
- */
270
- interface LlmImageRequestPrice {
271
- /** Provider visual tokens for the retained request image; 0 when only text represents this occurrence. */
272
- visualTokens: number
273
- /** Model-visible text sent for this occurrence, to be priced by the caller's text estimator. */
274
- text: string
275
- }
276
- ```
277
-
278
- ```ts type-equiv
279
- /**
280
- * Provider-side request-image pricing for one exact model route. Implemented
281
- * by adapters whose provider charges visual tokens; consumers (the token
282
- * meter) resolve it synchronously per measurement, so implementations must not
283
- * perform I/O.
284
- */
285
- interface LlmImageRequestPricing {
286
- /**
287
- * Price every image occurrence of one request projection.
288
- * @param images - surface image blocks in request order, one entry per occurrence; an `offloaded` block
289
- * is priced as its placeholder text.
290
- * @returns one price per occurrence, aligned by index with `images`.
291
- */
292
- priceImages(images: readonly ImageBlock[]): readonly LlmImageRequestPrice[]
293
- }
294
- ```
295
-
296
- ## 适配器约定
297
-
298
- 每个适配器必须遵守以下规则,每个消费方可以依赖它们:
299
-
300
- - **`usage` 在 `finish` 之前,`finish` 之后不再有任何分片。** 将两者都推迟到提供方的流结束标记,这样尾部的 usage-only 分片就不会违反顺序。
301
- - **工具调用的 `arguments` 全程保持原始 JSON 字符串。** 部分片段通过 `argumentsDelta` 流式传输;如果提供方返回的是已解析的对象,适配器在 `block-end` 时重新序列化为字符串。
302
- - **两条受支持的错误路径,共用一个 `LlmFailure` 类型。** 失败可以从 `stream()` 抛出(传输/协议错误),**或者**以 `finish {kind:'error'|'aborted', failure}` 结束流(无法在流中途抛异常的适配器用它表示提供方带内错误)。`LlmError.failure` 携带同一个 `LlmFailure`。调用选定适配器后,流会保留被抛出的确切 `Error` 对象,并将不可变事实以及实际服务注册所对应的不可变重试策略关联到该调用;agent loop(智能体循环)先把 attempt stream 提交为 `assistant/attempt`,再关闭失败步骤,并把错误、事实、不可变的先前已重试失败事实、实际服务策略和轮次信号提供给 `agent/request-error`。处理该错误的 listener 在其 await 的修复完成后返回 `{ kind: 'retry' }`;若未恢复,结构化失败会成为轮次错误,并且该次 attempt 不会提交 surface Assistant message 或工具副作用。
303
- - **一次适配器调用就是一次提供方尝试。** 适配器禁用库重试。agent 层恢复会打开另一个持久、带编号的轮次;直接调用 `ctx.llm.stream()` 的调用方仍然只尝试一次。
304
- - **提供方停顿在传输层受到时限约束。** 两个已交付的远程适配器都暴露正数且有限的 `streamIdleTimeoutMs`,默认五分钟。watchdog 只在 iterator `next()` 尚未完成时启动,整个请求使用同一个稳定 signal,把自身到期映射为 `TIMEOUT`,并把更早发生的调用方中止保留为 `ABORTED`。
305
- - **上下文溢出只有一个规范 code。** 两个 DeepSeek 适配器都通过 `isContextWindowExceededError()` 对提供方的显式细节分类并暴露 `CONTEXT_WINDOW_EXCEEDED`,无论失败以抛出的 HTTP `LlmError` 还是带内 finish error 到达。消费方按 code 路由,绝不依赖提供方文本。
306
- - **空 completion 是可重试错误,而不是静默的成功结果。** 两个适配器都把没有携带任何内容块的终止性 `stop` 结束映射为携带规范 `EMPTY_RESPONSE` code 的 `finish {kind:'error'}`,`dsh-llm-retry` 默认会重试它。
307
- - **每个提供方 HTTP 请求都携带应用归属头。** 适配器发送 `attributionHeaders()`(见下文)作为 `User-Agent` 基线,并通过协议级测试加以证明。
308
- - **回放状态归适配器所有;其切分是共享词汇。** 成功的 `finish` 可以携带一个 `ReplayEnvelope`:不透明的响应级元数据,加上与发射块序列对齐的可选逐块条目。对齐关系是 harness 的词汇——组装丢弃某个块时,同一位置的条目一并丢弃,因此存储的元数据始终描述存储的内容。循环把裁剪后的数据与组装后的 assistant 消息一起存储。后续请求中,仅当历史提供方与目标提供方当前注册到完全相同的适配器实例时,`LlmRuntime` 才会传递该状态。该适配器负责校验状态并拥有所有跨模型或跨提供方转换;其他适配器只会收到提供方无关的内容以及提供方/模型字段,不会收到私有状态。持久化内容保持权威:读取适配器无法使用的已存状态只会把这一条消息降级为提供方无关转换并带出诊断,而不是让请求失败。
309
-
310
- ## `ResolvedRetryPolicy`
311
-
312
- 重试配置会在路由注册前解析为不可变的可辨识联合。normal mode 携带 `mode: 'normal'`、有限的 `maxRetries`、`retryableCodes`,以及必填的 `initialDelayMs`、`maxDelayMs` 与 `jitterRatio`;always mode 携带 `mode: 'always'` 和相同的必填退避字段,但没有有限上限。省略提供方策略时使用重试五次的 normal 默认值。分层 settings 在切换到 always 模式后可能保留仅属于 normal 的 `maxRetries` 或 `retryableCodes`;解析器会忽略这些未启用字段,并捕获纯 always 策略。`LlmRuntime.providerRetryPolicy(provider)` 返回注册值;调用选定实际提供服务的注册后,`llmRetryPolicyOf(stream)` 返回从中捕获的值,因此之后释放或替换路由都无法改变进行中失败的恢复策略。可选配置输入字段由[生成的配置目录](../config-catalog.zh.md)列出。
313
-
314
- ## `AppIdentity`:应用归属
315
-
316
- 每个适配器都会向提供方发送的静态公开应用标识([`packages/llm/llm/src/attribution.ts`](../../packages/llm/llm/src/attribution.ts))。`attributionHeaders(identity?)` 只把它映射到标准 `User-Agent` header;该约定有意不支持 OpenRouter 特有的应用归属 header。默认 `APP_IDENTITY` 从包 manifest(元数据清单)获取版本;每个字段都是公开产品事实——不含 secret、路径、会话 id 或逐用户标识,且任何逐请求信息都不得影响这些值。
317
-
318
- ```ts type-equiv
319
- /**
320
- * Static public application identity sent to LLM providers.
321
- *
322
- * Every field is a public product fact, safe on every request: no secrets,
323
- * local paths, session ids, prompt text, or per-user identifiers belong here,
324
- * and nothing per-request may influence the values.
325
- */
326
- interface AppIdentity {
327
- /** `User-Agent` product token (lowercase, hyphenated). */
328
- product: string
329
- /** Product version; sourced from package metadata, never hand-copied. */
330
- version: string
331
- /** Repository home URL of the app, used as the `User-Agent` comment. */
332
- url: string
333
- }
334
- ```
335
-
336
- <a id="tokenusage"></a>
337
-
338
- ## `TokenUsage`
339
-
340
- 逐调用 token 记账。各计数**互不重叠**:`inputTokens` 只包含未缓存输入;缓存输入单独报告,计费输入是三者之和。若提供方把缓存命中折入单一提示词总数(如 DeepSeek 的 `prompt_tokens`),适配器会再将其扣除。可选的 `totalTokens` 是精确的提示词与输出聚合计数,由适配器保留提供方原值或从权威聚合计数重建;不可用或不一致时省略。`reasoningTokens` 存在时只是信息性细节,已经包含在 `outputTokens` 中;汇总时不得重复相加。
341
-
342
- ```ts type-equiv
343
- /**
344
- * Token accounting for one model call (cache fields are optional).
345
- *
346
- * Counts are DISJOINT: `inputTokens` is uncached input only; cached input is
347
- * reported separately as `cacheReadTokens`/`cacheWriteTokens` (billed input =
348
- * sum of the three). Adapters whose providers fold cache hits into a total
349
- * prompt count (DeepSeek's `prompt_tokens`) subtract them out.
350
- */
351
- interface TokenUsage {
352
- inputTokens: number
353
- outputTokens: number
354
- /**
355
- * Exact full-call total including aggregate prompt and output tokens.
356
- *
357
- * Adapters preserve a provider total or derive it from authoritative
358
- * aggregate prompt/output counters; they omit it when unavailable or
359
- * inconsistent.
360
- */
361
- totalTokens?: number
362
- cacheReadTokens?: number
363
- cacheWriteTokens?: number
364
- reasoningTokens?: number
365
- }
366
- ```
367
-
368
- <a id="blockassembler"></a>
369
-
370
- ## `BlockAssembler`
371
-
372
- `BlockAssembler`([`packages/llm/llm/src/assembler.ts`](../../packages/llm/llm/src/assembler.ts))是唯一的共享实现,负责把 `StreamChunk` 流折叠回 `ContentBlock`、usage、结束原因与回放状态。循环在记录原始分片的同时,把同一批分片送入 assembler,再将组装后的 assistant 内容连同生成它的提供方和模型一起存储。需要组装结果、又不想重新实现 fold 的消费方使用它。
373
-
374
- 内容与元数据共用同一次保留/丢弃决定:`max-tokens` 结束会丢弃每个工具调用,因为被截断的调用不能安全执行,而同一决定会在每个被丢弃的位置裁剪回放数据的逐块条目。无论组装移除什么,`blocks()` 与 `replayState` 都不可能不一致。
375
-
376
- ```ts public-api
377
- /**
378
- * Incrementally assembles raw {@link StreamChunk}s into complete
379
- * {@link ContentBlock}s and a final assistant {@link Message}.
380
- *
381
- * The agent loop feeds it while logging raw chunks for replay fidelity, then
382
- * reads `blocks()` / `message()` / `usage` / `finish` once the stream ends,
383
- * or `interruptedBlocks()` when cancellation cut the stream short.
384
- *
385
- * Tolerant of delta-only protocols (no block-start/end); deltas arriving for
386
- * an index already closed by `block-end` are ignored (malformed stream) so a
387
- * misbehaving adapter cannot grow memory or corrupt a completed block.
388
- */
389
- declare class BlockAssembler {
390
- /**
391
- * Feed one chunk into the assembly state.
392
- * @param chunk - the next raw chunk, in stream order.
393
- */
394
- push(chunk: StreamChunk): void;
395
- /**
396
- * Assemble all blocks seen so far, in stream order.
397
- * @returns one block per seen index, except that max-token truncation drops
398
- * tool calls that cannot be executed safely; an open block assembles from
399
- * its accumulated deltas (an unknown block type never closed by `block-end` throws).
400
- */
401
- blocks(): ContentBlock[];
402
- /**
403
- * Assemble the prefix an interrupted stream can safely finalize: closed and
404
- * open text/reasoning blocks with non-whitespace content, in stream order.
405
- * Tool calls are omitted because interruption precedes dispatch; retaining
406
- * one would require a fabricated result. Open unknown blocks are also omitted.
407
- * @returns the kept blocks; empty when nothing streamed before the interruption.
408
- */
409
- interruptedBlocks(): ContentBlock[];
410
- /** Usage from the `usage` chunk; undefined until one arrives. */
411
- get usage(): TokenUsage | undefined;
412
- /** Finish reason from the `finish` chunk; `{kind: 'stop'}` when the stream ended without one. */
413
- get finish(): FinishReason;
414
- /**
415
- * Replay metadata from the terminal finish chunk, if any, with per-block
416
- * entries pruned in step with {@link blocks}. Undefined when the envelope's
417
- * entries do not align with the emitted blocks.
418
- */
419
- get replayState(): ReplayEnvelope | undefined;
420
- /**
421
- * The assembled assistant message.
422
- * @param source - provider/model attribution (without the `kind` tag) for the assembled message.
423
- * @returns a frozen assistant-role message over `blocks()` (same open-block assembly rules).
424
- */
425
- message(source: Omit<ModelMessageSource, 'kind'>): AssistantMessage;
426
- }
427
- ```
428
-
429
- <a id="the-model-request-and-result"></a>
430
-
431
- ## 模型请求
432
-
433
- 一次模型调用是一个完全组装好的 `GenerateOptions`。适配器以原始 [`StreamChunk`](#streamchunk--the-raw-protocol) 流作答;消费方用 [`BlockAssembler`](#blockassembler) 组装它。
434
-
435
- 源码:[`packages/llm/llm/src/types.ts`](../../packages/llm/llm/src/types.ts)
436
-
437
- 提供方与模型发现使用小型、提供方无关的描述符。模型目录仅供参考:路由仍以已注册提供方为键。
438
-
439
- 注册适配器会返回一个句柄:既是释放器,也带有原子的路由替换——路由集合由用户配置决定的插件正需要它。
440
-
441
- ```ts type-equiv
442
- /**
443
- * What {@link LlmRuntime.registerAdapter} returns: the disposer, plus an
444
- * atomic route replacement for the same adapter instance.
445
- */
446
- interface AdapterRegistrationHandle {
447
- /** Release every route this registration currently holds. */
448
- (): void
449
- /**
450
- * Replace this registration's routes with `providers`, keeping the same
451
- * adapter instance. The candidate set is validated in full first — a
452
- * conflict with another adapter, an invalid name, or bad provider metadata
453
- * throws and leaves the current routes untouched — and the swap itself is
454
- * one synchronous section, so no request can observe a gap. An empty array
455
- * is legal here (a settings section that emptied holds zero routes while
456
- * staying registered), unlike an empty initial registration.
457
- *
458
- * Throws `LlmError` with code `REGISTRATION_DISPOSED` once the registration
459
- * has been released: its routes are gone and its disposer has already run,
460
- * so anything registered afterwards would have no owner left to release it.
461
- * @param providers - the complete next route set for this registration.
462
- */
463
- replace(providers: string[]): void
464
- }
465
- ```
466
-
467
- ```ts type-equiv
468
- /** Display metadata for one registered provider route. */
469
- interface LlmProviderInfo {
470
- /** Provider route key used by {@link GenerateOptions.provider}. */
471
- id: string
472
- /** Human-readable provider name for selectors and diagnostics. */
473
- name: string
474
- }
475
- ```
476
-
477
- 适配器插件还会通过 `registerConfigurableProviders()` 声明哪些路由*可以*运行,并指明每条路由的用户设置分节,使配置界面能在任何路由注册之前就呈现休眠的提供方。
478
-
479
- ```ts type-equiv
480
- /**
481
- * One provider route an adapter plugin can activate through configuration,
482
- * whether or not the route is currently registered. Configuration surfaces
483
- * merge this directory with `listProviders()` to offer every configurable
484
- * provider alongside its live/dormant state.
485
- */
486
- interface LlmConfigurableProvider {
487
- /** Provider route key this entry activates when configured. */
488
- provider: string
489
- /** Human-readable provider name for configuration surfaces. */
490
- displayName: string
491
- /** User-settings namespace whose section configures this provider. */
492
- settingsNs: string
493
- /**
494
- * Path from that namespace's section root to this provider's profile
495
- * object; empty when the whole section is the profile.
496
- */
497
- settingsPath: readonly string[]
498
- /**
499
- * Whether the owning adapter knows this route only because configuration
500
- * declared it — a gateway or self-hosted server it ships nothing about.
501
- * Absent means the adapter draws no such distinction; false means it does
502
- * and this route is one of its own. Only the adapter can answer: a stored
503
- * profile is how a user-added route AND a corrected shipped one both look
504
- * from outside.
505
- */
506
- declared?: boolean
507
- /**
508
- * Route endpoint the adapter uses when the profile sets no `baseURL`; the
509
- * adapter may still send an individual model to that model's own endpoint.
510
- * Absent when the route has no fixed endpoint.
511
- */
512
- defaultBaseURL?: string
513
- /** Environment variables used to construct a provider endpoint; absent when none are reported. */
514
- baseURLEnv?: readonly string[]
515
- /** Authentication the adapter performs when the profile names no credential reference; absent when it reports none. */
516
- nativeAuth?: LlmNativeAuth
517
- /** Configuration diagnostic for repair; unaffected models may remain serviceable. */
518
- error?: string
519
- }
520
- ```
521
-
522
- 设置编辑器在提供方配置未设置端点或凭据引用时显示 `defaultBaseURL`、`baseURLEnv` 中的端点配置变量,以及 `nativeAuth`。两个变量列表都只包含名称,不包含值。
523
-
524
- ```ts type-equiv
525
- /** Authentication a provider route performs without a credential reference in its profile. */
526
- interface LlmNativeAuth {
527
- /** Environment variables the route's authentication reads, in lookup order; empty when it reads none. */
528
- env: readonly string[]
529
- /** Whether a stored OAuth sign-in can authenticate the route. */
530
- oauth: boolean
531
- }
532
- ```
533
-
534
- ```ts type-equiv
535
- /** One adapter-discovered model; catalog membership is advisory, not request validation. */
536
- interface LlmModelInfo {
537
- /** Provider route that owns this model entry. */
538
- provider: string
539
- /** Model id passed to {@link GenerateOptions.model}. */
540
- id: string
541
- /** Human-readable model name for selectors. */
542
- name: string
543
- /** Optional user-facing distinction from otherwise similar models. */
544
- description?: string
545
- /** Accepted request modalities; absent means unknown, while an explicit omission is negative capability. */
546
- inputModalities?: readonly ModelModality[]
547
- }
548
- ```
549
-
550
- 对正确性敏感的元数据与参考目录分开解析,并归服务该确切路由的适配器所有。上下文容量、适配器调用默认值、推理选项和系统提示词更新模式共用同一个确切模型结果,消费方因而无需重复执行权威模型解析。`SystemPromptUpdate` 只有一个值 `'in-history'`:模型把 `messages` 中任意位置最新的 `system` 消息读作完整的有效系统提示词,因此 agent loop 可以把变化后的提示词追加到已缓存历史之后,而不是改写第 0 条消息([决策规则](../../packages/core/agent-loop/README.zh.md#understand-the-implementation));模式缺失表示只读取开头的 system 消息,`normalizeModelInfo` 以 `INVALID_MODEL_INFO` 拒绝任何其他值。
551
-
552
- ```ts type-equiv
553
- /** Provider-owned context capacity for one exact provider/model route. */
554
- interface LlmModelContext {
555
- /** Maximum combined request and response context in tokens. */
556
- contextWindow: number
557
- }
558
- ```
559
-
560
- 推理强度是另一项确切路由能力。核心为标识符添加品牌类型,但不枚举其值;每个适配器负责按强度递增排列的选项、显示名称与可选部署默认值。该顺序比较可选控制,不预测 token 用量、成本或延迟。
561
-
562
- ```ts type-equiv
563
- /** Adapter-owned identifier for one model's selectable reasoning effort. */
564
- type ReasoningEffortId = Branded<'ReasoningEffortId'>
565
- ```
566
-
567
- ```ts type-equiv
568
- /** Display metadata for one adapter-owned reasoning effort. */
569
- interface LlmReasoningEffortInfo {
570
- /** Opaque stable value accepted by {@link GenerateOptions.reasoningEffort}. */
571
- id: ReasoningEffortId
572
- /** Human-readable effort name for selectors and diagnostics. */
573
- name: string
574
- /** Optional user-facing distinction from otherwise similar efforts. */
575
- description?: string
576
- }
577
- ```
578
-
579
- ```ts type-equiv
580
- /** Selectable reasoning efforts for one exact provider/model route. */
581
- interface LlmModelReasoningInfo {
582
- /** Supported efforts from least to greatest selectable reasoning effort, not predicted token use or latency. */
583
- efforts: readonly LlmReasoningEffortInfo[]
584
- /**
585
- * Adapter-configured default materialized into requests when callers omit
586
- * an effort. Absence preserves the provider's own default.
587
- */
588
- defaultEffort?: ReasoningEffortId
589
- }
590
- ```
591
-
592
- ```ts type-equiv
593
- /** Exact-route model metadata resolved by its owning adapter. */
594
- interface LlmResolvedModelInfo extends LlmModelInfo {
595
- /** Provider-owned context capacity when known. */
596
- context?: LlmModelContext
597
- /** Adapter-configured per-request output cap materialized when callers omit one. */
598
- defaultMaxTokens?: number
599
- /** Adapter-owned selectable reasoning levels when exposed. */
600
- reasoning?: LlmModelReasoningInfo
601
- /** Declared mid-conversation system prompt handling; absent means only a leading system message is read. */
602
- systemPromptUpdate?: SystemPromptUpdate
603
- /** Declared mid-conversation tool declaration handling; absent means every request declares the complete tool list. */
604
- toolUpdate?: ToolUpdate
605
- }
606
- ```
607
-
608
- 辅助调用方可以提供不含持久身份或来源的 user 内容。既有 `Message[]` 历史仍然是有效的请求输入。Session 写入、Agent 投递和已记录的标题请求仍然要求持久消息。
609
-
610
- ```ts type-equiv
611
- /** User input for one LLM request; it has no durable Session identity or source. */
612
- interface RequestUserInput {
613
- readonly role: 'user'
614
- readonly content: UserMessage['content']
615
- readonly id?: never
616
- readonly source?: never
617
- }
618
- ```
619
-
620
- ```ts type-equiv
621
- /** A durable conversation message or a user input used only for one request. */
622
- type RequestMessage = Message | RequestUserInput
623
- ```
624
-
625
- ```ts type-equiv
626
- /** A single model request, fully assembled. */
627
- interface GenerateOptions {
628
- /** Registered provider route selecting the adapter instance. */
629
- provider: string
630
- model: string
631
- /** Adapter-owned reasoning effort selected for this exact model. */
632
- reasoningEffort?: ReasoningEffortId
633
- /**
634
- * Ordered conversation messages, exactly as the provider sees them. A
635
- * loop-built request passes the derived history (dsh-agent-loop), whose
636
- * leading system-role message carries the system prompt; a hand-built
637
- * one-shot may include identity-free user inputs.
638
- */
639
- messages: RequestMessage[]
640
- /**
641
- * System prompt text for one-shot callers; adapters map it to the provider's
642
- * system slot ahead of `messages`. Loop-built requests leave it undefined.
643
- */
644
- system?: string
645
- /** Tool schemas (adapters map to the provider's `tools` field). */
646
- tools?: ToolSchema[]
647
- /** Session-folded tool history used for route projection; omission sends complete declarations without tool updates. */
648
- toolHistory?: ToolHistory
649
- temperature?: number
650
- maxTokens?: number
651
- /**
652
- * Stop sequences: generation halts as soon as the model produces any one of
653
- * these strings (adapters map to the provider's stop field, e.g. OpenAI
654
- * `stop`). The stop string itself is not included in the output.
655
- */
656
- stop?: string[]
657
- signal?: AbortSignal
658
- /**
659
- * Session identity stamped by the loop for request routing. Replay uses it
660
- * to separate cursors; adapters may map it to model-hidden transport metadata.
661
- */
662
- sessionId?: Branded<'SessionId'>
663
- /**
664
- * Provider-neutral classification for an auxiliary model call. Adapters may
665
- * map the purpose to model-hidden transport metadata. Ordinary conversation
666
- * requests leave it unset.
667
- */
668
- purpose?: 'compaction' | 'session-title'
669
- }
670
- ```
671
-
672
- 模型响应为何停止由可合并扩展的原因表示。提供方终态失败携带流式约定的 [`LlmFailure`](#llmfailure):
673
-
674
- ```ts type-equiv
675
- /**
676
- * Why a model response stopped.
677
- * Merge-extensible so adapters can surface provider-specific reasons.
678
- */
679
- interface FinishReasonMap {
680
- 'stop': { kind: 'stop' }
681
- 'tool-calls': { kind: 'tool-calls' }
682
- 'max-tokens': { kind: 'max-tokens' }
683
- 'aborted': { kind: 'aborted'; failure: LlmFailure }
684
- 'error': { kind: 'error'; failure: LlmFailure }
685
- }
686
- ```
687
-
688
- `FinishReason = FinishReasonMap[keyof FinishReasonMap]`。`TokenUsage`(逐调用计量,含不相交的缓存字段)详见[下文](#tokenusage)。
689
-
690
- `GenerateOptions.tools` 携带 `ToolSchema`——工具的 JSON Schema 描述,发送给模型。它声明在 dsh-llm(而非 dsh-tools)中,正是因为它是循环每一步组装请求的一部分:
691
-
692
- ```ts type-equiv
693
- /**
694
- * JSON-schema description of a tool, as sent to the model.
695
- *
696
- * Declared here (not in dsh-tools) because it is part of {@link GenerateOptions};
697
- * dsh-tools' ToolDefinition and dsh-system-prompt's PromptAssembly both import
698
- * it from this package.
699
- */
700
- interface ToolSchema {
701
- /**
702
- * Requests deferred loading of the tool definition into model context,
703
- * independently of whether a tool-addition block records the tool.
704
- * Uses Anthropic's defer_loading terminology.
705
- */
706
- deferLoading?: true
707
- name: string
708
- description: string
709
- /** JSON Schema object for the arguments. */
710
- parameters: Record<string, unknown>
711
- }
712
- ```
713
-
714
- 面向模型的 `ToolSchema` 是协议类型;产出它的已注册 `ToolDefinition`(schema + `execute`)在 [tools.md](tools.zh.md) 中。
715
-
716
- 界面正在起草的提供方既没有路由也没有 catalog,因此询问被单独描述:请求携带用户正在编辑的草稿,回复是界面可以采纳的候选,而不是它必须服务的 catalog。
717
-
718
- ```ts type-equiv
719
- /**
720
- * One interrogation of a provider endpoint that configuration has not stored
721
- * yet. Configuration surfaces send the draft a user is still editing, so the
722
- * request carries the endpoint and credential directly instead of naming a
723
- * route: a provider being added has no route to name.
724
- */
725
- interface LlmModelDiscoveryRequest {
726
- /**
727
- * Route the draft is editing, when it edits an existing one. A route whose
728
- * adapter already knows its models answers from that knowledge instead of
729
- * asking the endpoint — the adapter's own registry is the better answer, and
730
- * it costs no network call.
731
- */
732
- provider?: string
733
- /**
734
- * Endpoint to interrogate. Optional because a route the adapter already
735
- * describes needs none; a route it does not must supply one.
736
- */
737
- baseURL?: string
738
- /** Wire protocol the endpoint speaks, when the draft names one. */
739
- api?: string
740
- /** Credential for this interrogation alone; the harness never stores it. */
741
- apiKey?: string
742
- }
743
- ```
744
-
745
- ```ts type-equiv
746
- /**
747
- * One model an endpoint reports about itself. Every field but the id is
748
- * optional because most provider listings disclose an id and nothing else;
749
- * a surface adopting one of these still owes the capacities its adapter needs.
750
- */
751
- interface LlmDiscoveredModel {
752
- /** Model id the endpoint accepts. */
753
- id: string
754
- /** Human-readable name when the endpoint supplies one. */
755
- name?: string
756
- /** Maximum combined request and response context, when disclosed. */
757
- contextWindow?: number
758
- /** Maximum output tokens, when disclosed. */
759
- maxTokens?: number
760
- /** Accepted input types when disclosed by the catalog or endpoint; absent means unknown. */
761
- inputModalities?: readonly ModelModality[]
762
- }
763
- ```
764
-
765
- ### 请求信封:`LlmCallConfig` 与记录的 header
766
-
767
- 循环从已记录状态构建每个请求。`EpochHeader` 记录调用配置,标记由适配器默认值提供的字段,并通过完整的 `request/header` 快照记录权威返回工具顺序(由 `toolOrder` 配置;未配置时按字典序)。渲染后的提示词是派生历史——surface 第 0 号节点上的 `system/message`,加上 `in-history` 路由追加的任何后续系统节点——因此请求头与派生历史共同使请求可由会话日志重建。见 [session.md](session.zh.md#the-request-header-event-requestheader) 与[可重建性 Agent Note](../../.agents/notes/implemented/architecture/2026-07-05-reconstructable-requests.zh.md)。
768
-
769
- `agent/request` 接收冻结的调用配置种子,并可返回替代值以切换提供方、模型、推理强度或采样参数。waterfall(瀑布式事件)开始前,循环会移除标记为适配器默认值的值,使确切模型准备过程填入所选路由的当前值;未带标记的显式设置仍保留在提议中。waterfall 结束后,准备过程会在轮次信号控制下拒绝显式指定但不受支持的推理强度 ID(不自动调整),并记录生效配置以及由适配器默认值提供的字段。步骤准入时,该 waterfall 与准备过程在组装和 `step/start` 之后、系统提示词与已接纳用户批次提交之前运行;在任一阶段取消都不会提交这两者。已准备调用的能力决定提示词协调,调用直至分派完成始终持有同一项适配器注册。到达 `llm/stream` 的请求会被深度冻结,因此变更会抛异常;请求还携带进程本地循环标识,使观察者不会把单独记录的冻结辅助调用误认成对话请求。
770
-
771
- 在协议中,循环构建的请求只有派生历史:渲染后的提示词作为开头的 `system` 角色消息(surface 第 0 号节点,即一个 `system/message` 事件)传输,并且当已准备调用声明 `systemPromptUpdate: 'in-history'` 时,变化后的非空提示词可以作为后续的 `system` 角色消息跟在已缓存历史之后,由模型读作有效提示词;请求的 `system` 字段不设置——`GenerateOptions.system` 服务于标题提供方等直接单次调用方。空渲染文本使派生历史不包含任何系统消息,即使先前请求保留了多个提示词版本。已记录的请求会以最新的 `user/message`(轮次首步)或上一步的工具结果(后续步骤)结尾。
772
-
773
- FIXME(call-config-shape):重新审视其余哪些字段出于缓存目的确实属于 epoch 层级(`model` 和模型持有的推理强度已明确属于;采样标量目前出于谨慎保留在此)。
774
-
775
- ```ts type-equiv
776
- /** Concrete generation settings; omitted controls use the selected route's defaults. */
777
- interface LlmCallControls {
778
- reasoningEffort?: ReasoningEffortId
779
- temperature?: number
780
- maxTokens?: number
781
- stop?: string[]
782
- }
783
- ```
784
-
785
- ```ts type-equiv
786
- /**
787
- * Provider, model, reasoning effort, and sampling scalars of one conversation's
788
- * requests. Every field maps 1:1 onto the same-named `GenerateOptions` field;
789
- * the loop builds requests from the logged header rather than accepting these
790
- * per call.
791
- */
792
- interface LlmCallConfig extends LlmCallControls {
793
- provider: string
794
- model: string
795
- }
796
- ```
797
-
798
- ```ts type-equiv
799
- /**
800
- * Synchronous, pure configuration of one call before defaults and validation.
801
- * Compose functions in the desired order; later writes replace earlier ones.
802
- * The returned controls cannot change the captured route. Errors reject
803
- * preparation before dispatch; only the resolved configuration is recordable.
804
- * @param controls - detached, deeply frozen proposed controls, without defaults.
805
- * @param model - detached, deeply frozen metadata from the captured adapter generation.
806
- * @returns concrete controls; omitted fields receive the route's defaults.
807
- */
808
- type ConfigureCall = (
809
- controls: Readonly<LlmCallControls>,
810
- model: Readonly<LlmResolvedModelInfo>,
811
- ) => LlmCallControls
812
- ```
813
-
814
- ```ts type-equiv
815
- /**
816
- * Effective config fields supplied by exact-model adapter resolution rather
817
- * than by the caller's request proposal.
818
- */
819
- interface LlmCallConfigAdapterDefaults {
820
- reasoningEffort?: true
821
- maxTokens?: true
822
- }
823
- ```
824
-
825
- ## DeepSeek 官方请求扩展
826
-
827
- `ctx.deepseekLlmApiExtensions` 是用于向 `deepseek-official` 请求添加顶层字段的提供方特定注册表。贡献插件通过 `register(field, provider)` 认领一个字段;适配器在序列化基础正文后调用 `prepare(request)`,并在 HTTP 前合并返回字段。已准备的 `accept()` 事务会在 2xx 后运行,因此贡献方可以提交交付状态,而不会把传输失败或提供方拒绝当作接受。贡献方准备时抛错会被记录并在该次请求中省略,接受失败只记录告警而不使请求失败;与基础字段冲突时使用 `REQUEST_EXTENSION` 并使模型请求失败。合并后的正文无法序列化时,请求不带扩展字段发出,跳过接受,并由提供方插件记录被省略的字段名。
828
-
829
- [协议参考](../deepseek-llm-api-wire-extensions.zh.md)定义确切的请求标头、扩展事务、字段版本和接收方义务。随附组合会将 [`dsh_session_log`](../../packages/session/session-log-deepseek/README.zh.md) 注册为无损增量权威日志后缀,并将 [`dsh_plugin_packages`](../../packages/llm/plugin-package-inventory-deepseek/README.zh.md) 注册为完整存活 Loader 包集合。这些字段仍位于模型消息之外,也不会进入 pi-ai 适配器路径。
830
-
831
- ## 服务与提供方约定
832
-
833
- `LlmAdapter` 是提供方约定:创建子类、实现 `stream()`,再用 `ctx.llm.registerAdapter(providers, adapter)` 注册一个适配器实例。`GenerateOptions.provider` 选择已注册适配器;`GenerateOptions.model` 会传给该适配器,无需在生命周期启动时注册。重复提供方路由会原子失败。可选的 `providerRetryPolicy()` 会按路由捕获并填入 normal 默认值,`providerInfo()` 与异步 `listModels()` 方法则为 `LlmRuntime.listProviders()` / `listModels()` 提供分离的 selector 元数据。该目录仅供参考,不是请求白名单:适配器仍是权威,并可接受未列出的模型 id。单次异步 `resolveModel()` 查询返回确切模型身份,以及可选的对正确性敏感的上下文容量、适配器配置的 `defaultMaxTokens`、由模型持有的有序推理强度 ID 和可选的部署默认值;字段缺失表示元数据不可用或保留提供方持有的行为,而不表示目录成员关系无效。解析器会接收可选的取消信号,并且必须在信号中止后迅速完成结算。`LlmRuntime.resolveModelInfo()` 会校验聚合结果并返回分离值。在最终适配器边界,`resolveCallConfig()` 仅在 `maxTokens` 缺失时填入输出默认值,并校验和填入推理强度,因此直接调用也无法绕过任何一项已配置行为;直接分派会在等待解析前捕获一项适配器注册。agent loop 则使用 `prepareCall()`,使模型解析、请求头持久记录和分派全程使用同一项注册,保留来自同一次查询的分离上下文元数据,并报告适配器填入的配置字段。适配器查找发生在 `llm/stream` waterfall 的终端 continuation,因此 listener 可以在查找前短路调用,或路由一个可变的一次性请求。AgentLoop 在外层 waterfall 返回流句柄时观察到一次请求尝试;这个有限边界不能证明惰性终端适配器已构造完成或开始提供方 I/O。`block-start` / `block-end` 的 `index` 关联与 assembler 共同意味着适配器只需 emit 格式正确的分片——块重组不是每个适配器各自的问题。`ctx.llm.stream()` 与 `llm/stream` waterfall 在一个轮次中的位置见 [architecture.md](../architecture.zh.md#turn-flow)。
834
-
835
- ```ts type-equiv
836
- /** One model call whose config and adapter registration were resolved together. */
837
- interface PreparedLlmCall {
838
- /** Detached, deep-frozen config with any adapter-owned default materialized. */
839
- readonly config: LlmCallConfig
840
- /** Immutable retry policy captured with the adapter registration. */
841
- readonly retryPolicy: ResolvedRetryPolicy
842
- /** Detached context metadata resolved with the registration-bound call. */
843
- readonly context?: LlmModelContext
844
- /** Exact model modalities captured with the adapter dispatch generation. */
845
- readonly inputModalities?: readonly ModelModality[]
846
- /** Exact model system prompt update mode captured with the adapter dispatch generation. */
847
- readonly systemPromptUpdate?: SystemPromptUpdate
848
- /** Exact model tool update mode captured with the adapter dispatch generation. */
849
- readonly toolUpdate?: ToolUpdate
850
- /** Config fields materialized by the captured adapter rather than proposed by the caller. */
851
- readonly adapterDefaults: LlmCallConfigAdapterDefaults
852
- /**
853
- * Dispatch this call once through the registration captured during
854
- * preparation. The request's call-config fields must match {@link config};
855
- * reuse or mismatch fails with `INVALID_PREPARED_CALL`.
856
- * @param options - fully assembled request carrying the prepared config.
857
- * @returns the chunk stream, including the `llm/stream` waterfall.
858
- */
859
- stream(options: GenerateOptions): AsyncIterable<StreamChunk>
860
- }
861
- ```
862
-
863
- ```ts public-api
864
- /**
865
- * Provider-wire adapter for the harness message and stream vocabulary. Register implementations
866
- * with `ctx.llm.registerAdapter(providers, adapter)`. Every provider HTTP request must include
867
- * `attributionHeaders()`; prove the headers are added in the wire request or library header hook. The direct-fetch
868
- * DeepSeek and library-backed pi-ai adapters meet this contract through different internals.
869
- */
870
- declare abstract class LlmAdapter {
871
- /**
872
- * Describe one provider route owned by this adapter.
873
- * @param provider - a route passed to `registerAdapter()` for this instance.
874
- * @returns detached display metadata whose id must equal `provider`.
875
- */
876
- providerInfo(provider: string): LlmProviderInfo;
877
- /**
878
- * Return the provider-owned retry policy captured with this route.
879
- * @param _provider - a route passed to `registerAdapter()` for this instance.
880
- * @returns a resolved policy, or `undefined` to use the normal defaults.
881
- */
882
- providerRetryPolicy(_provider: string): ResolvedRetryPolicy | undefined;
883
- /**
884
- * Resolve provider-side request-image pricing for one exact model route.
885
- * The default declares none, so consumers fall back to their own neutral
886
- * estimate. Implementations must answer synchronously without I/O; the
887
- * token meter resolves this per measurement.
888
- * @param _provider - a route passed to `registerAdapter()` for this instance.
889
- * @param _model - exact model id passed to {@link GenerateOptions.model}.
890
- * @returns route-owned image pricing, or `undefined` when the route declares none.
891
- */
892
- imageRequestPricing(_provider: string, _model: string): LlmImageRequestPricing | undefined;
893
- /**
894
- * Resolve the image dimensions and byte target this adapter sends to the model.
895
- * The default preserves normalized images; adapters that resize must override it.
896
- * @param _provider - registered provider route.
897
- * @param _model - exact model id.
898
- * @param image - normalized image whose request projection is being resolved.
899
- * @returns the same target used by request serialization, before provider-internal processing.
900
- */
901
- imageRequestTarget(_provider: string, _model: string, image: ImageAttachmentRef): ImageRequestTarget;
902
- /**
903
- * List models this adapter can currently advertise for one owned provider.
904
- * Core routing accepts unlisted model ids; catalog-driven entry points such
905
- * as the GUI may require membership. Adapters used there must advertise
906
- * their available models; the base empty catalog offers no GUI selection.
907
- * @param _provider - one provider route owned by this adapter.
908
- * @returns discoverable models in adapter-preferred order.
909
- */
910
- listModels(_provider: string): Promise<readonly LlmModelInfo[]>;
911
- /**
912
- * Resolve all metadata available for one exact model. This query is
913
- * independent of the advisory catalog and does not validate request routing.
914
- * @param provider - one provider route owned by this adapter.
915
- * @param model - exact model id passed to {@link GenerateOptions.model}.
916
- * @param _signal - cancellation for this exact-model lookup; asynchronous
917
- * implementations must settle promptly after it aborts.
918
- * @returns provider/model identity plus any context, call-default, and reasoning metadata.
919
- */
920
- resolveModel(
921
- provider: string,
922
- model: string,
923
- _signal?: AbortSignal,
924
- ): Promise<LlmResolvedModelInfo>;
925
- /**
926
- * Bind exact model metadata and the eventual request dispatch to one adapter generation.
927
- * Dynamic adapters override this so settings changes between preparation and
928
- * dispatch cannot combine one generation's capabilities with another's endpoint.
929
- * @param provider - registered provider route.
930
- * @param model - exact model id.
931
- * @param signal - cancellation for model resolution.
932
- * @returns model metadata and a one-generation stream entry point.
933
- */
934
- async prepareCall(provider: string, model: string, signal?: AbortSignal): Promise<PreparedAdapterCall>;
935
- /**
936
- * Stream one model call as raw chunks. The only required method.
937
- * @param options - the fully-assembled request; implementations must honor `options.signal`.
938
- * @returns the chunk stream, obeying the adapter contract documented on `StreamChunk`.
939
- */
940
- abstract stream(options: GenerateOptions): AsyncIterable<StreamChunk>;
941
- }
942
- ```
943
-
944
- `ContentBlockType`(带 `index` 关联的块所携带的键集合)从上文的 [`ContentBlockMap`](#content-blocks-and-messages) 派生。
945
-
946
- <!-- BEGIN GENERATED cordis-surface (gen-cordis-catalog.ts) — do not edit between markers -->
947
-
948
- <a id="cordis-surface"></a>
949
-
950
- ## Cordis API
951
-
952
- Generated from source by `scripts/gen-cordis-catalog.ts` (verified fresh by `pnpm run verify-cordis-catalog` in doc-sync; regenerate with `pnpm run gen-cordis-catalog`) — the language sides differ only in locale-specific paired document paths. Signature blocks use a `ts cordis-catalog` fence and keep the original source JSDoc; dispatch modes are defined in the [primer](../cordis-primer.zh.md#dispatch-modes), and the framework-inherited `ctx` API lives in [cordis-api/inherited.md](../cordis-api/inherited.md).
953
-
954
- <a id="ctxdeepseekllmapiextensions--deepseekllmapiextensionregistry"></a>
955
-
956
- ### `ctx.deepseekLlmApiExtensions` — `DeepSeekLlmApiExtensionRegistry`
957
-
958
- Registry of independently owned top-level fields for official DeepSeek requests.
959
-
960
- ```ts cordis-catalog
961
- /**
962
- * Register the sole provider of one top-level request field. Registration is effect-scoped.
963
- * @param field - declaration-merged field owned by the provider.
964
- * @param provider - request-time field preparation and optional acceptance behavior.
965
- * @returns disposer that releases the field.
966
- */
967
- register<K extends keyof DeepSeekLlmApiExtensionMap>( field: K, provider: DeepSeekLlmApiExtensionProvider<DeepSeekLlmApiExtensionMap[K]>, ): () => Promise<void>
968
-
969
- /**
970
- * Prepare every currently registered field from one immutable base request.
971
- * A provider whose preparation throws, or whose value cannot be cloned, is omitted
972
- * from this request; the first such failure per field is logged. Only cancellation rejects. Field values are cloned
973
- * and frozen; providers retain no mutable alias to the outgoing request.
974
- * @param request - exact serialized request facts before extension fields.
975
- * @returns detached fields and their idempotent joint acceptance transaction.
976
- */
977
- async prepare(request: DeepSeekLlmApiExtensionRequest): Promise<PreparedDeepSeekLlmApiExtensions>
978
- ```
979
-
980
- Source: [`packages/llm/deepseek-llm-api-extensions/src/index.ts`](../../packages/llm/deepseek-llm-api-extensions/src/index.ts)
981
-
982
- <a id="ctxllm--llmruntime"></a>
983
-
984
- ### `ctx.llm` — `LlmRuntime`
985
-
986
- The abstract `llm` service: an adapter registry plus a streaming model-call API, interceptable via the `llm/stream` waterfall.
987
-
988
- ```ts cordis-catalog
989
- /**
990
- * Register an adapter for the given provider routes. Throws `LlmError` with code
991
- * `DUPLICATE_ADAPTER` if any provider already has an adapter (all-or-nothing).
992
- * Disposed with the fiber.
993
- * @param providers - every provider route this adapter should serve.
994
- * @param adapter - the adapter that streams calls for those providers.
995
- * @returns the disposer, carrying {@link AdapterRegistrationHandle.replace}.
996
- */
997
- registerAdapter(providers: string[], adapter: LlmAdapter): AdapterRegistrationHandle
998
-
999
- /**
1000
- * Describe provider routes with a registered adapter.
1001
- * @returns detached provider metadata in registration order.
1002
- */
1003
- @Remote listProviders(): LlmProviderInfo[]
1004
-
1005
- /**
1006
- * Declare provider routes an adapter plugin can activate through
1007
- * configuration. Registration is all-or-nothing: an empty list, invalid
1008
- * entry, or a provider already declared by any registration throws
1009
- * `LlmError` without registering the rest. Disposed with the fiber.
1010
- * @param entries - every configurable provider this plugin owns.
1011
- * @returns a handle that withdraws all of them, and can atomically replace them.
1012
- */
1013
- registerConfigurableProviders(entries: readonly LlmConfigurableProvider[]): DirectoryRegistrationHandle
1014
-
1015
- /**
1016
- * List every declared configurable provider, registered or dormant.
1017
- * @returns detached directory entries in declaration order.
1018
- */
1019
- @Remote listConfigurableProviders(): LlmConfigurableProvider[]
1020
-
1021
- /**
1022
- * Offer to interrogate provider endpoints on behalf of the settings
1023
- * namespace this plugin owns. The namespace is the key because that is what
1024
- * a configuration surface already holds from the configurable-provider
1025
- * directory, and because a provider being *added* has no route to name yet.
1026
- * Disposed with the fiber.
1027
- * @param settingsNs - the namespace whose profiles this discovery serves.
1028
- * @param discover - interrogates one endpoint and must honor the supplied signal.
1029
- * @returns the disposer that withdraws the offer.
1030
- */
1031
- registerModelDiscovery( settingsNs: string, discover: ( request: LlmModelDiscoveryRequest, signal?: AbortSignal, ) => Promise<readonly LlmDiscoveredModel[]>, ): () => void
1032
-
1033
- /**
1034
- * Interrogate one provider endpoint for the models it advertises. The
1035
- * request describes a draft, not a stored route, so nothing here reads or
1036
- * writes settings or credentials — the caller owns both, and the reply is
1037
- * candidate metadata a surface may offer for adoption.
1038
- * @param settingsNs - namespace whose registered discovery serves this draft.
1039
- * @param request - the endpoint, protocol, and one-shot credential to use.
1040
- * @param signal - caller cancellation.
1041
- * @returns the advertised models, deduplicated in endpoint order.
1042
- */
1043
- async discoverModels( settingsNs: string, request: LlmModelDiscoveryRequest, signal?: AbortSignal, ): Promise<LlmDiscoveredModel[]>
1044
-
1045
- /**
1046
- * Remote adapter for one draft provider interrogation.
1047
- * @param settingsNs - namespace whose registered discovery serves this draft.
1048
- * @param request - endpoint, protocol, and one-shot credential to use.
1049
- * @param signal - caller cancellation supplied by the Remote carrier.
1050
- * @returns advertised models in endpoint order.
1051
- * @throws RemoteError with `llm/model-discovery-rejected` when discovery refuses or fails.
1052
- */
1053
- @Remote('discoverModels') async remoteDiscoverModels( settingsNs: string, request: LlmModelDiscoveryRequest, signal: AbortSignal, ): Promise<LlmDiscoveredModel[]>
1054
-
1055
- /**
1056
- * Resolve the retry policy captured when one provider route was registered.
1057
- * @param provider - registered provider route to inspect.
1058
- * @returns the provider-owned policy, with normal defaults already resolved.
1059
- */
1060
- providerRetryPolicy(provider: string): ResolvedRetryPolicy
1061
-
1062
- /**
1063
- * Resolve provider-side request-image pricing for one exact route, or
1064
- * `undefined` when the provider is unregistered or declares none. Unknown
1065
- * providers degrade to `undefined` rather than throwing because callers
1066
- * price durable history whose route may no longer be mounted.
1067
- * @param provider - provider route named by a request header.
1068
- * @param model - exact model id named by the same header.
1069
- * @returns the owning adapter's image pricing for the route, when declared.
1070
- */
1071
- imageRequestPricing(provider: string, model: string): LlmImageRequestPricing | undefined
1072
-
1073
- /**
1074
- * Resolve the image projection for an exact registered model route.
1075
- * @param provider - registered provider route.
1076
- * @param model - exact model id.
1077
- * @param image - normalized image reference.
1078
- * @returns dimensions and byte target used by the adapter's request serializer.
1079
- */
1080
- imageRequestTarget(provider: string, model: string, image: ImageAttachmentRef): ImageRequestTarget
1081
-
1082
- /**
1083
- * Resolve the exact text one durable file occurrence contributes to every
1084
- * provider request in the current execution environment.
1085
- * @param ref - durable verbatim file reference from model history.
1086
- * @returns the same deterministic handle text used at adapter dispatch.
1087
- */
1088
- fileRequestText(ref: FileAttachmentRef): string
1089
-
1090
- /**
1091
- * Discover models advertised by one registered provider. Catalog membership
1092
- * does not constrain core routing. Catalog-driven entry points may restrict
1093
- * selection and submission to the advertised models.
1094
- * @param provider - registered provider route to inspect.
1095
- * @returns detached model metadata in adapter-preferred order.
1096
- */
1097
- async listModels(provider: string): Promise<LlmModelInfo[]>
1098
-
1099
- /**
1100
- * Resolve and validate all metadata from the adapter that owns one exact
1101
- * route. The result is detached from adapter-owned objects; catalog
1102
- * membership remains advisory and does not control request routing.
1103
- * @param provider - registered provider route to inspect.
1104
- * @param model - exact model id passed to the adapter.
1105
- * @param signal - optional cancellation for adapter-owned asynchronous lookup.
1106
- * @returns exact model identity plus available context and reasoning metadata.
1107
- */
1108
- async resolveModelInfo( provider: string, model: string, signal?: AbortSignal, ): Promise<LlmResolvedModelInfo>
1109
-
1110
- /**
1111
- * Validate a conversation call config against its exact model capability and
1112
- * materialize adapter-configured defaults. Unsupported explicit efforts
1113
- * reject before provider I/O; no clamping or aliasing is performed. This
1114
- * standalone query does not bind a later dispatch; use {@link prepareCall}
1115
- * when logging and streaming must share one adapter registration.
1116
- * @param config - provider/model route and optional request controls.
1117
- * @param signal - optional cancellation for adapter-owned capability lookup.
1118
- * @returns a detached config only when a default must be materialized.
1119
- */
1120
- async resolveCallConfig(config: LlmCallConfig, signal?: AbortSignal): Promise<LlmCallConfig>
1121
-
1122
- /**
1123
- * Resolve one call under its current adapter registration. The returned
1124
- * one-shot handle keeps that registration across header logging and dispatch,
1125
- * so HMR cannot combine one adapter's capability result with another adapter.
1126
- * An optional synchronous callback selects concrete controls using captured
1127
- * model metadata. Defaults and validation apply to its result. Callback
1128
- * failures and cancellation reject preparation before dispatch.
1129
- * @param config - provider/model route and optional concrete request controls.
1130
- * @param signal - optional cancellation for adapter-owned capability lookup.
1131
- * @param configure - pure control selection, called once before defaults and validation.
1132
- * @returns a prepared config and its registration-bound stream entry point.
1133
- */
1134
- async prepareCall( config: LlmCallConfig, signal?: AbortSignal, configure?: ConfigureCall, ): Promise<PreparedLlmCall>
1135
-
1136
- /**
1137
- * Stream one model call as raw chunks (token-level deltas). Replay state is
1138
- * retained only when the same adapter instance owns its historical provider
1139
- * and the target provider. Final adapter selection remains fixed through
1140
- * asynchronous exact-model resolution and dispatch. Adapter selection,
1141
- * dispatch, and iteration failures become terminal `error` or `aborted`
1142
- * finish chunks; middleware, nested-call, cleanup, and consumer failures
1143
- * remain thrown.
1144
- * @param options - the full request; `options.provider` selects the adapter.
1145
- * @returns the chunk stream, possibly wrapped by `llm/stream` listeners.
1146
- */
1147
- stream(options: GenerateOptions): AsyncIterable<StreamChunk>
1148
- ```
1149
-
1150
- Types: [FileAttachmentRef](attachment.zh.md) · [ImageAttachmentRef](attachment.zh.md) · [ImageRequestTarget](attachment.zh.md)
1151
-
1152
- Source: [`packages/llm/llm/src/index.ts`](../../packages/llm/llm/src/index.ts)
1153
-
1154
- <a id="llm-events"></a>
1155
-
1156
- ### `llm/*` events
1157
-
1158
- <a id="llmadapters-updated--emit"></a>
1159
-
1160
- #### `llm/adapters-updated` — emit
1161
-
1162
- The provider topology changed: an adapter registered or unregistered routes, or the configurable-provider directory gained or lost entries. This payload-free registry notification fires at each commit point (including registration disposal); consumers re-read `listProviders()`, `listModels()`, or `listConfigurableProviders()` for the new state. Observer failures are contained and cannot veto the registry mutation.
1163
-
1164
- ```ts cordis-catalog
1165
- /**
1166
- * The provider topology changed: an adapter registered or unregistered
1167
- * routes, or the configurable-provider directory gained or lost entries.
1168
- * This payload-free registry notification fires at each commit point
1169
- * (including registration disposal); consumers re-read `listProviders()`,
1170
- * `listModels()`, or `listConfigurableProviders()` for the new state.
1171
- * Observer failures are contained and cannot veto the registry mutation.
1172
- * @mode emit
1173
- */
1174
- 'llm/adapters-updated'(): void
1175
- ```
1176
-
1177
- Source: [`packages/llm/llm/src/types.ts`](../../packages/llm/llm/src/types.ts)
1178
-
1179
- <a id="llmstream--waterfall"></a>
1180
-
1181
- #### `llm/stream` — waterfall
1182
-
1183
- Waterfall around every streaming model call (retry, replay, routing). Bound to the LlmRuntime; call `next()` to reach the resolved adapter's stream, or yield your own chunks to short-circuit.
1184
-
1185
- ```ts cordis-catalog
1186
- /**
1187
- * Waterfall around every streaming model call (retry, replay, routing).
1188
- * Bound to the {@link LlmRuntime}; call `next()` to reach the resolved
1189
- * adapter's stream, or yield your own chunks to short-circuit.
1190
- * @param options - the full request. A LOOP-built request carries the
1191
- * process-local {@link markAgentLoopRequest} identity and arrives deep-frozen
1192
- * (mutation throws): its content is a pure function of the session log (the
1193
- * reconstructability Agent Note), so listeners read it, never rewrite it.
1194
- * Hand-built calls do not carry that marker; callers own their request
1195
- * inputs and must keep them unchanged until the stream settles.
1196
- * @mode waterfall
1197
- */
1198
- 'llm/stream'(this: LlmRuntime, options: GenerateOptions, next: () => AsyncIterable<StreamChunk>): AsyncIterable<StreamChunk>
1199
- ```
1200
-
1201
- Source: [`packages/llm/llm/src/index.ts`](../../packages/llm/llm/src/index.ts)
1202
- <!-- END GENERATED cordis-surface -->