dsh-plugin-guide 0.3.1 → 0.3.3

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 (371) hide show
  1. package/README.es.md +1 -1
  2. package/README.hi.md +1 -1
  3. package/README.md +1 -1
  4. package/README.pt.md +1 -1
  5. package/README.zh.md +1 -1
  6. package/SKILL.md +1 -1
  7. package/dist/dsh-plugin-dev.js +5 -5
  8. package/guide/links.md +1 -1
  9. package/guide/plugin-dev-guide.md +1 -1
  10. package/guide/quick-reference.es.md +2 -2
  11. package/guide/quick-reference.hi.md +1 -1
  12. package/guide/quick-reference.md +2 -2
  13. package/guide/quick-reference.pt.md +2 -2
  14. package/guide/quick-reference.zh-CN.md +2 -2
  15. package/package.json +3 -3
  16. package/references/cordis-paper-and-community.md +1 -1
  17. package/references/official-docs/AGENTS.md +28 -23
  18. package/references/official-docs/README.i18n.yaml +2 -2
  19. package/references/official-docs/README.md +1 -1
  20. package/references/official-docs/README.zh.md +19 -9
  21. package/references/official-docs/SNAPSHOT.md +5 -5
  22. package/references/official-docs/THIRD_PARTY_NOTICES.md +36 -13
  23. package/references/official-docs/docs/AGENTS.md +4 -4
  24. package/references/official-docs/docs/agent-lifecycle.i18n.yaml +2 -2
  25. package/references/official-docs/docs/agent-lifecycle.md +1 -1
  26. package/references/official-docs/docs/agent-lifecycle.zh.md +2 -2
  27. package/references/official-docs/docs/api-gateway.i18n.yaml +2 -2
  28. package/references/official-docs/docs/api-gateway.md +8 -8
  29. package/references/official-docs/docs/api-gateway.zh.md +8 -8
  30. package/references/official-docs/docs/architecture.i18n.yaml +2 -2
  31. package/references/official-docs/docs/architecture.md +25 -8
  32. package/references/official-docs/docs/architecture.zh.md +38 -21
  33. package/references/official-docs/docs/capability-seams.i18n.yaml +2 -2
  34. package/references/official-docs/docs/capability-seams.md +134 -67
  35. package/references/official-docs/docs/capability-seams.zh.md +134 -67
  36. package/references/official-docs/docs/config-catalog.i18n.yaml +2 -2
  37. package/references/official-docs/docs/config-catalog.md +731 -403
  38. package/references/official-docs/docs/config-catalog.zh.md +747 -419
  39. package/references/official-docs/docs/cookbook/adding-a-package.i18n.yaml +2 -2
  40. package/references/official-docs/docs/cookbook/adding-a-package.md +3 -4
  41. package/references/official-docs/docs/cookbook/adding-a-package.zh.md +9 -8
  42. package/references/official-docs/docs/cookbook/{adding-a-conversation-node.i18n.yaml → adding-a-remote-api.i18n.yaml} +3 -3
  43. package/references/official-docs/docs/cookbook/adding-a-remote-api.md +197 -0
  44. package/references/official-docs/docs/cookbook/adding-a-remote-api.zh.md +197 -0
  45. package/references/official-docs/docs/cookbook/adding-a-settings-card.i18n.yaml +6 -0
  46. package/references/official-docs/docs/cookbook/adding-a-settings-card.md +102 -0
  47. package/references/official-docs/docs/cookbook/adding-a-settings-card.zh.md +102 -0
  48. package/references/official-docs/docs/cookbook/adding-a-tool.i18n.yaml +2 -2
  49. package/references/official-docs/docs/cookbook/adding-a-tool.md +11 -4
  50. package/references/official-docs/docs/cookbook/adding-a-tool.zh.md +16 -9
  51. package/references/official-docs/docs/cookbook/adding-a-vendored-package.i18n.yaml +2 -2
  52. package/references/official-docs/docs/cookbook/adding-a-vendored-package.md +2 -2
  53. package/references/official-docs/docs/cookbook/adding-a-vendored-package.zh.md +4 -4
  54. package/references/official-docs/docs/cookbook/adding-an-llm-adapter.i18n.yaml +2 -2
  55. package/references/official-docs/docs/cookbook/adding-an-llm-adapter.md +1 -1
  56. package/references/official-docs/docs/cookbook/adding-an-llm-adapter.zh.md +3 -3
  57. package/references/official-docs/docs/cookbook/extension-cookbook.i18n.yaml +2 -2
  58. package/references/official-docs/docs/cookbook/extension-cookbook.md +9 -8
  59. package/references/official-docs/docs/cookbook/extension-cookbook.zh.md +17 -14
  60. package/references/official-docs/docs/cookbook/maintaining-dsh-code-review.i18n.yaml +1 -1
  61. package/references/official-docs/docs/cookbook/maintaining-dsh-code-review.zh.md +1 -1
  62. package/references/official-docs/docs/cookbook/responding-to-pr-review-on-a-stack.i18n.yaml +1 -1
  63. package/references/official-docs/docs/cookbook/responding-to-pr-review-on-a-stack.zh.md +1 -1
  64. package/references/official-docs/docs/cordis-api/context.i18n.yaml +1 -1
  65. package/references/official-docs/docs/cordis-api/context.zh.md +1 -1
  66. package/references/official-docs/docs/cordis-api/events.i18n.yaml +1 -1
  67. package/references/official-docs/docs/cordis-api/events.zh.md +1 -1
  68. package/references/official-docs/docs/cordis-api/inherited.md +1 -1
  69. package/references/official-docs/docs/cordis-primer.i18n.yaml +2 -2
  70. package/references/official-docs/docs/cordis-primer.md +2 -1
  71. package/references/official-docs/docs/cordis-primer.zh.md +3 -2
  72. package/references/official-docs/docs/cordis-tutorial/01-first-plugin.i18n.yaml +1 -1
  73. package/references/official-docs/docs/cordis-tutorial/01-first-plugin.zh.md +4 -4
  74. package/references/official-docs/docs/cordis-tutorial/02-lifecycle-and-effects.i18n.yaml +1 -1
  75. package/references/official-docs/docs/cordis-tutorial/02-lifecycle-and-effects.zh.md +4 -4
  76. package/references/official-docs/docs/cordis-tutorial/03-services.i18n.yaml +1 -1
  77. package/references/official-docs/docs/cordis-tutorial/03-services.zh.md +4 -4
  78. package/references/official-docs/docs/cordis-tutorial/04-events.i18n.yaml +1 -1
  79. package/references/official-docs/docs/cordis-tutorial/04-events.zh.md +4 -4
  80. package/references/official-docs/docs/cordis-tutorial/05-config.i18n.yaml +1 -1
  81. package/references/official-docs/docs/cordis-tutorial/05-config.zh.md +2 -2
  82. package/references/official-docs/docs/cordis-tutorial/06-composition-and-hmr.i18n.yaml +1 -1
  83. package/references/official-docs/docs/cordis-tutorial/06-composition-and-hmr.zh.md +3 -3
  84. package/references/official-docs/docs/cordis-tutorial/07-into-the-harness.i18n.yaml +2 -2
  85. package/references/official-docs/docs/cordis-tutorial/07-into-the-harness.md +5 -4
  86. package/references/official-docs/docs/cordis-tutorial/07-into-the-harness.zh.md +11 -10
  87. package/references/official-docs/docs/cordis-tutorial/index.i18n.yaml +1 -1
  88. package/references/official-docs/docs/cordis-tutorial/index.zh.md +10 -10
  89. package/references/official-docs/docs/deepseek-llm-api-wire-extensions.i18n.yaml +6 -0
  90. package/references/official-docs/docs/deepseek-llm-api-wire-extensions.md +159 -0
  91. package/references/official-docs/docs/deepseek-llm-api-wire-extensions.zh.md +159 -0
  92. package/references/official-docs/docs/defensive-patterns.i18n.yaml +1 -1
  93. package/references/official-docs/docs/defensive-patterns.zh.md +3 -1
  94. package/references/official-docs/docs/development.i18n.yaml +2 -2
  95. package/references/official-docs/docs/development.md +9 -13
  96. package/references/official-docs/docs/development.zh.md +23 -21
  97. package/references/official-docs/docs/event-producer-consumer.i18n.yaml +2 -2
  98. package/references/official-docs/docs/event-producer-consumer.md +55 -46
  99. package/references/official-docs/docs/event-producer-consumer.zh.md +55 -46
  100. package/references/official-docs/docs/glossary.i18n.yaml +2 -2
  101. package/references/official-docs/docs/glossary.md +1 -1
  102. package/references/official-docs/docs/glossary.zh.md +1 -1
  103. package/references/official-docs/docs/graph-atlas.i18n.yaml +2 -2
  104. package/references/official-docs/docs/graph-atlas.md +0 -2
  105. package/references/official-docs/docs/graph-atlas.zh.md +7 -9
  106. package/references/official-docs/docs/i18n/README.i18n.yaml +2 -2
  107. package/references/official-docs/docs/i18n/README.md +7 -7
  108. package/references/official-docs/docs/i18n/README.zh.md +11 -9
  109. package/references/official-docs/docs/i18n/style-samples.md +3 -3
  110. package/references/official-docs/docs/i18n/translation-prompt.md +3 -3
  111. package/references/official-docs/docs/i18n/translation-rules.i18n.yaml +2 -2
  112. package/references/official-docs/docs/i18n/translation-rules.md +2 -2
  113. package/references/official-docs/docs/i18n/translation-rules.zh.md +3 -3
  114. package/references/official-docs/docs/module-graph.i18n.yaml +2 -2
  115. package/references/official-docs/docs/module-graph.md +660 -909
  116. package/references/official-docs/docs/module-graph.zh.md +662 -911
  117. package/references/official-docs/docs/persistence-catalog.i18n.yaml +2 -2
  118. package/references/official-docs/docs/persistence-catalog.md +185 -53
  119. package/references/official-docs/docs/persistence-catalog.zh.md +193 -61
  120. package/references/official-docs/docs/postmortem/0001-acp-default-export-drops-inject.i18n.yaml +2 -2
  121. package/references/official-docs/docs/postmortem/0001-acp-default-export-drops-inject.md +2 -2
  122. package/references/official-docs/docs/postmortem/0001-acp-default-export-drops-inject.zh.md +3 -3
  123. package/references/official-docs/docs/postmortem/0002-js-expression-disabled-filesystem-tools.i18n.yaml +2 -2
  124. package/references/official-docs/docs/postmortem/0002-js-expression-disabled-filesystem-tools.md +2 -2
  125. package/references/official-docs/docs/postmortem/0002-js-expression-disabled-filesystem-tools.zh.md +2 -2
  126. package/references/official-docs/docs/postmortem/0003-web-agent-gui-feedback-loop.i18n.yaml +2 -2
  127. package/references/official-docs/docs/postmortem/0003-web-agent-gui-feedback-loop.md +2 -2
  128. package/references/official-docs/docs/postmortem/0003-web-agent-gui-feedback-loop.zh.md +2 -2
  129. package/references/official-docs/docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.i18n.yaml +2 -2
  130. package/references/official-docs/docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.md +1 -1
  131. package/references/official-docs/docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.zh.md +2 -2
  132. package/references/official-docs/docs/postmortem/README.i18n.yaml +1 -1
  133. package/references/official-docs/docs/postmortem/README.zh.md +5 -5
  134. package/references/official-docs/docs/rescope.i18n.yaml +2 -2
  135. package/references/official-docs/docs/rescope.md +2 -2
  136. package/references/official-docs/docs/rescope.zh.md +3 -3
  137. package/references/official-docs/docs/subsystems/README.i18n.yaml +2 -2
  138. package/references/official-docs/docs/subsystems/README.md +8 -2
  139. package/references/official-docs/docs/subsystems/README.zh.md +53 -47
  140. package/references/official-docs/docs/subsystems/agent-team.i18n.yaml +6 -0
  141. package/references/official-docs/docs/subsystems/agent-team.md +207 -0
  142. package/references/official-docs/docs/subsystems/agent-team.zh.md +207 -0
  143. package/references/official-docs/docs/subsystems/approval.i18n.yaml +2 -2
  144. package/references/official-docs/docs/subsystems/approval.md +12 -12
  145. package/references/official-docs/docs/subsystems/approval.zh.md +13 -13
  146. package/references/official-docs/docs/subsystems/attachment.i18n.yaml +2 -2
  147. package/references/official-docs/docs/subsystems/attachment.md +90 -7
  148. package/references/official-docs/docs/subsystems/attachment.zh.md +90 -7
  149. package/references/official-docs/docs/subsystems/client-modules.i18n.yaml +2 -2
  150. package/references/official-docs/docs/subsystems/client-modules.md +69 -19
  151. package/references/official-docs/docs/subsystems/client-modules.zh.md +69 -19
  152. package/references/official-docs/docs/subsystems/code-runtime.i18n.yaml +2 -2
  153. package/references/official-docs/docs/subsystems/code-runtime.md +12 -8
  154. package/references/official-docs/docs/subsystems/code-runtime.zh.md +13 -9
  155. package/references/official-docs/docs/subsystems/commands.i18n.yaml +2 -2
  156. package/references/official-docs/docs/subsystems/commands.md +30 -7
  157. package/references/official-docs/docs/subsystems/commands.zh.md +31 -8
  158. package/references/official-docs/docs/subsystems/compaction.i18n.yaml +2 -2
  159. package/references/official-docs/docs/subsystems/compaction.md +14 -14
  160. package/references/official-docs/docs/subsystems/compaction.zh.md +19 -19
  161. package/references/official-docs/docs/subsystems/conversation.i18n.yaml +6 -0
  162. package/references/official-docs/docs/{cookbook/adding-a-conversation-node.md → subsystems/conversation.md} +49 -24
  163. package/references/official-docs/docs/{cookbook/adding-a-conversation-node.zh.md → subsystems/conversation.zh.md} +49 -24
  164. package/references/official-docs/docs/subsystems/core.i18n.yaml +2 -2
  165. package/references/official-docs/docs/subsystems/core.md +114 -36
  166. package/references/official-docs/docs/subsystems/core.zh.md +145 -65
  167. package/references/official-docs/docs/subsystems/credentials.i18n.yaml +2 -2
  168. package/references/official-docs/docs/subsystems/credentials.md +207 -11
  169. package/references/official-docs/docs/subsystems/credentials.zh.md +207 -11
  170. package/references/official-docs/docs/subsystems/extensions.i18n.yaml +2 -2
  171. package/references/official-docs/docs/subsystems/extensions.md +27 -9
  172. package/references/official-docs/docs/subsystems/extensions.zh.md +30 -12
  173. package/references/official-docs/docs/subsystems/feedback.i18n.yaml +2 -2
  174. package/references/official-docs/docs/subsystems/feedback.md +6 -6
  175. package/references/official-docs/docs/subsystems/feedback.zh.md +6 -6
  176. package/references/official-docs/docs/subsystems/filesystem.i18n.yaml +2 -2
  177. package/references/official-docs/docs/subsystems/filesystem.md +17 -7
  178. package/references/official-docs/docs/subsystems/filesystem.zh.md +19 -9
  179. package/references/official-docs/docs/subsystems/goal.i18n.yaml +2 -2
  180. package/references/official-docs/docs/subsystems/goal.md +4 -4
  181. package/references/official-docs/docs/subsystems/goal.zh.md +8 -8
  182. package/references/official-docs/docs/subsystems/invariants.i18n.yaml +2 -2
  183. package/references/official-docs/docs/subsystems/invariants.md +2 -2
  184. package/references/official-docs/docs/subsystems/invariants.zh.md +5 -5
  185. package/references/official-docs/docs/subsystems/jobs.i18n.yaml +2 -2
  186. package/references/official-docs/docs/subsystems/jobs.md +3 -3
  187. package/references/official-docs/docs/subsystems/jobs.zh.md +6 -6
  188. package/references/official-docs/docs/subsystems/llm-streaming.i18n.yaml +2 -2
  189. package/references/official-docs/docs/subsystems/llm-streaming.md +193 -22
  190. package/references/official-docs/docs/subsystems/llm-streaming.zh.md +199 -28
  191. package/references/official-docs/docs/subsystems/lsp.i18n.yaml +2 -2
  192. package/references/official-docs/docs/subsystems/lsp.md +2 -2
  193. package/references/official-docs/docs/subsystems/lsp.zh.md +3 -3
  194. package/references/official-docs/docs/subsystems/permission-presets.i18n.yaml +2 -2
  195. package/references/official-docs/docs/subsystems/permission-presets.md +8 -8
  196. package/references/official-docs/docs/subsystems/permission-presets.zh.md +8 -8
  197. package/references/official-docs/docs/subsystems/persistence.i18n.yaml +2 -2
  198. package/references/official-docs/docs/subsystems/persistence.md +183 -173
  199. package/references/official-docs/docs/subsystems/persistence.zh.md +182 -172
  200. package/references/official-docs/docs/subsystems/plan.i18n.yaml +2 -2
  201. package/references/official-docs/docs/subsystems/plan.md +4 -4
  202. package/references/official-docs/docs/subsystems/plan.zh.md +10 -10
  203. package/references/official-docs/docs/subsystems/sandbox.i18n.yaml +2 -2
  204. package/references/official-docs/docs/subsystems/sandbox.md +5 -3
  205. package/references/official-docs/docs/subsystems/sandbox.zh.md +8 -6
  206. package/references/official-docs/docs/subsystems/schedule.i18n.yaml +2 -2
  207. package/references/official-docs/docs/subsystems/schedule.md +9 -3
  208. package/references/official-docs/docs/subsystems/schedule.zh.md +11 -5
  209. package/references/official-docs/docs/subsystems/scope.i18n.yaml +1 -1
  210. package/references/official-docs/docs/subsystems/scope.zh.md +1 -1
  211. package/references/official-docs/docs/subsystems/session-projection.i18n.yaml +2 -2
  212. package/references/official-docs/docs/subsystems/session-projection.md +148 -75
  213. package/references/official-docs/docs/subsystems/session-projection.zh.md +148 -75
  214. package/references/official-docs/docs/subsystems/session-query.i18n.yaml +2 -2
  215. package/references/official-docs/docs/subsystems/session-query.md +30 -16
  216. package/references/official-docs/docs/subsystems/session-query.zh.md +31 -17
  217. package/references/official-docs/docs/subsystems/session-reference.i18n.yaml +2 -2
  218. package/references/official-docs/docs/subsystems/session-reference.md +94 -7
  219. package/references/official-docs/docs/subsystems/session-reference.zh.md +95 -8
  220. package/references/official-docs/docs/subsystems/session-telemetry.i18n.yaml +2 -2
  221. package/references/official-docs/docs/subsystems/session-telemetry.md +5 -6
  222. package/references/official-docs/docs/subsystems/session-telemetry.zh.md +9 -10
  223. package/references/official-docs/docs/subsystems/session-title.i18n.yaml +2 -2
  224. package/references/official-docs/docs/subsystems/session-title.md +8 -8
  225. package/references/official-docs/docs/subsystems/session-title.zh.md +10 -10
  226. package/references/official-docs/docs/subsystems/session.i18n.yaml +2 -2
  227. package/references/official-docs/docs/subsystems/session.md +376 -71
  228. package/references/official-docs/docs/subsystems/session.zh.md +392 -85
  229. package/references/official-docs/docs/subsystems/settings.i18n.yaml +2 -2
  230. package/references/official-docs/docs/subsystems/settings.md +105 -10
  231. package/references/official-docs/docs/subsystems/settings.zh.md +105 -10
  232. package/references/official-docs/docs/subsystems/shell.i18n.yaml +2 -2
  233. package/references/official-docs/docs/subsystems/shell.md +3 -3
  234. package/references/official-docs/docs/subsystems/shell.zh.md +11 -11
  235. package/references/official-docs/docs/subsystems/skills.i18n.yaml +2 -2
  236. package/references/official-docs/docs/subsystems/skills.md +26 -3
  237. package/references/official-docs/docs/subsystems/skills.zh.md +29 -6
  238. package/references/official-docs/docs/subsystems/slots.i18n.yaml +6 -0
  239. package/references/official-docs/docs/subsystems/slots.md +175 -0
  240. package/references/official-docs/docs/subsystems/slots.zh.md +175 -0
  241. package/references/official-docs/docs/subsystems/spill.i18n.yaml +2 -2
  242. package/references/official-docs/docs/subsystems/spill.md +4 -4
  243. package/references/official-docs/docs/subsystems/spill.zh.md +6 -6
  244. package/references/official-docs/docs/subsystems/storage.i18n.yaml +2 -2
  245. package/references/official-docs/docs/subsystems/storage.md +38 -7
  246. package/references/official-docs/docs/subsystems/storage.zh.md +41 -10
  247. package/references/official-docs/docs/subsystems/subagent.i18n.yaml +2 -2
  248. package/references/official-docs/docs/subsystems/subagent.md +148 -116
  249. package/references/official-docs/docs/subsystems/subagent.zh.md +158 -124
  250. package/references/official-docs/docs/subsystems/subprocess.i18n.yaml +2 -2
  251. package/references/official-docs/docs/subsystems/subprocess.md +3 -3
  252. package/references/official-docs/docs/subsystems/subprocess.zh.md +5 -5
  253. package/references/official-docs/docs/subsystems/system-prompt.i18n.yaml +2 -2
  254. package/references/official-docs/docs/subsystems/system-prompt.md +21 -8
  255. package/references/official-docs/docs/subsystems/system-prompt.zh.md +23 -10
  256. package/references/official-docs/docs/subsystems/terminal.i18n.yaml +2 -2
  257. package/references/official-docs/docs/subsystems/terminal.md +2 -2
  258. package/references/official-docs/docs/subsystems/terminal.zh.md +4 -4
  259. package/references/official-docs/docs/subsystems/todo.i18n.yaml +6 -0
  260. package/references/official-docs/docs/subsystems/todo.md +32 -0
  261. package/references/official-docs/docs/subsystems/todo.zh.md +32 -0
  262. package/references/official-docs/docs/subsystems/token-meter.i18n.yaml +2 -2
  263. package/references/official-docs/docs/subsystems/token-meter.md +29 -14
  264. package/references/official-docs/docs/subsystems/token-meter.zh.md +30 -15
  265. package/references/official-docs/docs/subsystems/tools.i18n.yaml +2 -2
  266. package/references/official-docs/docs/subsystems/tools.md +46 -46
  267. package/references/official-docs/docs/subsystems/tools.zh.md +54 -54
  268. package/references/official-docs/docs/subsystems/typert.i18n.yaml +2 -2
  269. package/references/official-docs/docs/subsystems/typert.md +65 -58
  270. package/references/official-docs/docs/subsystems/typert.zh.md +67 -60
  271. package/references/official-docs/docs/subsystems/user-questions.i18n.yaml +2 -2
  272. package/references/official-docs/docs/subsystems/user-questions.md +35 -35
  273. package/references/official-docs/docs/subsystems/user-questions.zh.md +35 -35
  274. package/references/official-docs/docs/subsystems/web-client.i18n.yaml +6 -0
  275. package/references/official-docs/docs/subsystems/web-client.md +95 -0
  276. package/references/official-docs/docs/subsystems/web-client.zh.md +95 -0
  277. package/references/official-docs/docs/subsystems/web-server.i18n.yaml +2 -2
  278. package/references/official-docs/docs/subsystems/web-server.md +55 -9
  279. package/references/official-docs/docs/subsystems/web-server.zh.md +56 -10
  280. package/references/official-docs/docs/subsystems/web.i18n.yaml +2 -2
  281. package/references/official-docs/docs/subsystems/web.md +14 -7
  282. package/references/official-docs/docs/subsystems/web.zh.md +16 -9
  283. package/references/official-docs/docs/subsystems/webhook.i18n.yaml +6 -0
  284. package/references/official-docs/docs/subsystems/webhook.md +70 -0
  285. package/references/official-docs/docs/subsystems/webhook.zh.md +70 -0
  286. package/references/official-docs/docs/subsystems/workflow.i18n.yaml +2 -2
  287. package/references/official-docs/docs/subsystems/workflow.md +8 -8
  288. package/references/official-docs/docs/subsystems/workflow.zh.md +13 -13
  289. package/references/official-docs/docs/subsystems/workspace.i18n.yaml +2 -2
  290. package/references/official-docs/docs/subsystems/workspace.md +98 -5
  291. package/references/official-docs/docs/subsystems/workspace.zh.md +102 -9
  292. package/references/official-docs/docs/testing.i18n.yaml +2 -2
  293. package/references/official-docs/docs/testing.md +15 -10
  294. package/references/official-docs/docs/testing.zh.md +15 -10
  295. package/references/official-docs/docs/tool-catalog.i18n.yaml +2 -2
  296. package/references/official-docs/docs/tool-catalog.md +413 -61
  297. package/references/official-docs/docs/tool-catalog.zh.md +418 -63
  298. package/references/official-docs/docs/tool-execution-pipeline.i18n.yaml +2 -2
  299. package/references/official-docs/docs/tool-execution-pipeline.md +1 -1
  300. package/references/official-docs/docs/tool-execution-pipeline.zh.md +1 -1
  301. package/references/official-docs/docs/user/develop/basic/config.i18n.yaml +2 -2
  302. package/references/official-docs/docs/user/develop/basic/config.md +1 -1
  303. package/references/official-docs/docs/user/develop/basic/config.zh.md +4 -4
  304. package/references/official-docs/docs/user/develop/basic/index.i18n.yaml +1 -1
  305. package/references/official-docs/docs/user/develop/basic/index.zh.md +5 -5
  306. package/references/official-docs/docs/user/develop/basic/publish.i18n.yaml +2 -2
  307. package/references/official-docs/docs/user/develop/basic/publish.md +3 -3
  308. package/references/official-docs/docs/user/develop/basic/publish.zh.md +7 -7
  309. package/references/official-docs/docs/user/develop/basic/tool.i18n.yaml +2 -2
  310. package/references/official-docs/docs/user/develop/basic/tool.md +3 -3
  311. package/references/official-docs/docs/user/develop/basic/tool.zh.md +4 -4
  312. package/references/official-docs/docs/user/develop/framework/events.i18n.yaml +2 -2
  313. package/references/official-docs/docs/user/develop/framework/events.md +2 -2
  314. package/references/official-docs/docs/user/develop/framework/events.zh.md +3 -3
  315. package/references/official-docs/docs/user/develop/framework/index.i18n.yaml +1 -1
  316. package/references/official-docs/docs/user/develop/framework/index.zh.md +3 -3
  317. package/references/official-docs/docs/user/develop/framework/service.i18n.yaml +2 -2
  318. package/references/official-docs/docs/user/develop/framework/service.md +1 -1
  319. package/references/official-docs/docs/user/develop/framework/service.zh.md +3 -3
  320. package/references/official-docs/docs/user/develop/practice/dynamic-cordis.i18n.yaml +6 -0
  321. package/references/official-docs/docs/user/develop/practice/dynamic-cordis.md +15 -0
  322. package/references/official-docs/docs/user/develop/practice/dynamic-cordis.zh.md +15 -0
  323. package/references/official-docs/docs/user/develop/practice/index.i18n.yaml +2 -2
  324. package/references/official-docs/docs/user/develop/practice/index.md +1 -1
  325. package/references/official-docs/docs/user/develop/practice/index.zh.md +3 -3
  326. package/references/official-docs/docs/user/develop/practice/llm-adapter.i18n.yaml +2 -2
  327. package/references/official-docs/docs/user/develop/practice/llm-adapter.md +4 -3
  328. package/references/official-docs/docs/user/develop/practice/llm-adapter.zh.md +4 -3
  329. package/references/official-docs/docs/user/guide/github-review.i18n.yaml +6 -0
  330. package/references/official-docs/docs/user/guide/github-review.md +102 -0
  331. package/references/official-docs/docs/user/guide/github-review.zh.md +102 -0
  332. package/references/official-docs/docs/user/guide/index.i18n.yaml +2 -2
  333. package/references/official-docs/docs/user/guide/index.md +2 -2
  334. package/references/official-docs/docs/user/guide/index.zh.md +8 -8
  335. package/references/official-docs/docs/user/guide/mcp-memory.i18n.yaml +6 -0
  336. package/references/official-docs/docs/user/guide/mcp-memory.md +101 -0
  337. package/references/official-docs/docs/user/guide/mcp-memory.zh.md +101 -0
  338. package/references/official-docs/docs/user/guide/providers.i18n.yaml +2 -2
  339. package/references/official-docs/docs/user/guide/providers.md +40 -1
  340. package/references/official-docs/docs/user/guide/providers.zh.md +41 -2
  341. package/references/official-docs/docs/user/guide/python-sdk.i18n.yaml +2 -2
  342. package/references/official-docs/docs/user/guide/python-sdk.md +80 -34
  343. package/references/official-docs/docs/user/guide/python-sdk.zh.md +87 -41
  344. package/references/official-docs/docs/user/guide/schedule.i18n.yaml +6 -0
  345. package/references/official-docs/docs/user/guide/schedule.md +21 -0
  346. package/references/official-docs/docs/user/guide/schedule.zh.md +21 -0
  347. package/references/official-docs/docs/web-styling.i18n.yaml +2 -2
  348. package/references/official-docs/docs/web-styling.md +3 -0
  349. package/references/official-docs/docs/web-styling.zh.md +5 -2
  350. package/references/official-docs/packages/AGENTS.md +4 -3
  351. package/references/official-docs/packages/README.md +104 -59
  352. package/references/official-docs/vendor/README.md +1 -0
  353. package/references/official-docs/website-docs.ts +52 -11
  354. package/references/sources.md +2 -2
  355. package/references/website-pages.md +3 -3
  356. package/scripts/download-sources.ps1 +1 -1
  357. package/scripts/sync-official-docs.ps1 +19 -11
  358. package/scripts/verify-kit.ps1 +0 -4
  359. package/templates/js/README.es.md +1 -1
  360. package/templates/js/README.hi.md +1 -1
  361. package/templates/js/README.md +1 -1
  362. package/templates/js/README.pt.md +1 -1
  363. package/templates/js/README.zh.md +1 -1
  364. package/templates/js/package.json +4 -4
  365. package/templates/ts/README.es.md +1 -1
  366. package/templates/ts/README.hi.md +1 -1
  367. package/templates/ts/README.md +1 -1
  368. package/templates/ts/README.pt.md +1 -1
  369. package/templates/ts/README.zh.md +1 -1
  370. package/templates/ts/package.json +4 -4
  371. package/references/official-docs/examples/AGENTS.md +0 -20
@@ -157,7 +157,7 @@ Registration is a trusted same-process contract. The registry borrows the typed
157
157
  ```ts type-equiv
158
158
  /**
159
159
  * Per-scope filter over global tools. Restrictions intersect and do not affect
160
- * scoped registrations or the reserved Code Mode transport.
160
+ * scoped registrations or the reserved PTC mode transport.
161
161
  */
162
162
  interface ToolRestriction {
163
163
  /** Global tool names that stay visible; everything else is removed. */
@@ -183,23 +183,23 @@ type ToolExecutionToken = symbol & { readonly [toolExecutionTokenBrand]: true }
183
183
  * callers do not choose that token.
184
184
  */
185
185
  interface ToolExecutionInput {
186
- readonly callId: CallId
186
+ readonly callId: ToolCallId
187
187
  /**
188
188
  * Root model-requested call owning this execution tree. Callers omit it for
189
189
  * a root execution; nested dispatchers propagate the enclosing value.
190
190
  */
191
- readonly rootCallId?: CallId
191
+ readonly rootCallId?: ToolCallId
192
192
  readonly name: string
193
193
  /** Losslessly JSON-serializable parsed arguments (tools validate their own schema). */
194
194
  readonly arguments: unknown
195
195
  /** The agent on whose behalf the call runs (set by the agent loop). */
196
196
  readonly agent?: Agent
197
197
  /**
198
- * Opaque token of the enclosing transport execution, when one exists. Code
199
- * Mode sets this on SDK sub-dispatches so commit-style observers can wait for
198
+ * Opaque token of the enclosing transport execution, when one exists. PTC
199
+ * mode sets this on SDK sub-dispatches so commit-style observers can wait for
200
200
  * the outer `run_code` outcome without receiving its live mutable execution.
201
201
  * The token also marks the call as a transport sub-dispatch rather than a
202
- * model-direct call: under `mode: 'code'`, only calls WITH a parent may
202
+ * model-direct call: under `mode: 'ptc'`, only calls WITH a parent may
203
203
  * execute a native tool name — a model-direct call (no parent) is denied as
204
204
  * `UNKNOWN_TOOL` before the policy pipeline. See {@link ToolRuntime.execute}.
205
205
  */
@@ -252,25 +252,25 @@ type ToolExecutionMode =
252
252
  | { kind: 'exclusive' }
253
253
  ```
254
254
 
255
- Code Mode's bridge additionally exposes each settled sub-dispatch to the `tools/code-dispatch-log` waterfall, which may change the durable event's copy of the content (the program's value and model-visible result remain untouched):
255
+ PTC mode's bridge additionally exposes each settled sub-dispatch to the `tools/ptc-dispatch-log` waterfall, which may change the durable event's copy of the content (the program's value and model-visible result remain untouched):
256
256
 
257
257
  ```ts type-equiv
258
258
  /**
259
259
  * One settled `run_code` sub-dispatch about to be logged, as seen by the
260
- * `tools/code-dispatch-log` waterfall: the parent execution (session owner,
260
+ * `tools/ptc-dispatch-log` waterfall: the parent execution (session owner,
261
261
  * outer call identity), the sub-call identity, and the outcome whose durable
262
262
  * copy a listener may reshape. `content` is the RENDERED result projection
263
263
  * (what a native `tool/result` would carry) — the program itself received
264
264
  * the structured `value` (or just the error message on failure); only the
265
265
  * `tool/code-dispatch` event's copy changes.
266
266
  */
267
- interface CodeDispatchLog {
267
+ interface PtcDispatchLog {
268
268
  /** The outer `run_code` execution. */
269
269
  readonly exec: ToolExecution
270
270
  /** The calling agent (the scope routing key and the spill owner), when the outer call has one. */
271
271
  readonly agent?: Agent
272
272
  /** Deterministic sub-call id (`<parent>:code:<n>`). */
273
- readonly subCallId: CallId
273
+ readonly subCallId: ToolCallId
274
274
  /** The dispatched sub-tool name. */
275
275
  readonly name: string
276
276
  /** Whether the sub-call settled as an error. */
@@ -290,7 +290,7 @@ interface CodeDispatchLog {
290
290
  */
291
291
  interface ToolExecution extends ToolExecutionInput {
292
292
  /** Root model-requested call, resolved for every root and nested execution. */
293
- readonly rootCallId: CallId
293
+ readonly rootCallId: ToolCallId
294
294
  /** Registry-assigned identity shared with nested calls only as their opaque `parent` token. */
295
295
  readonly token: ToolExecutionToken
296
296
  }
@@ -473,7 +473,7 @@ The full presentation field docs live in [`packages/core/tools/src/presentation.
473
473
 
474
474
  ## Cordis API
475
475
 
476
- 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`) — this section is byte-identical in both language sides of the page. Signature blocks use a `ts cordis-catalog` fence and keep the original source JSDoc; dispatch modes are defined in the [primer](../cordis-primer.md#dispatch-modes), and the framework-inherited `ctx` API lives in [cordis-api/inherited.md](../cordis-api/inherited.md).
476
+ 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.md#dispatch-modes), and the framework-inherited `ctx` API lives in [cordis-api/inherited.md](../cordis-api/inherited.md).
477
477
 
478
478
  <a id="ctxtools--toolruntime"></a>
479
479
 
@@ -488,7 +488,7 @@ Tool registry and execution pipeline. Scoped registrations shadow globals; one v
488
488
  * declaration covers every agent joined under it.
489
489
  *
490
490
  * Scoped only, and one declaration per scope: this is how an agent preset
491
- * composes Code Mode agents beside native ones in the same process, and a
491
+ * composes PTC mode agents beside native ones in the same process, and a
492
492
  * process-global override would be the `mode` config field instead.
493
493
  * @param mode - the presentation the covered agents' models see.
494
494
  * @returns the exact disposer that restores the deployment default.
@@ -571,7 +571,7 @@ async execute(exec: ToolExecutionInput): Promise<ToolExecutionResult>
571
571
 
572
572
  Types: [ScopeKey](scope.md)
573
573
 
574
- Source: [`packages/core/tools/src/index.ts:787`](../../packages/core/tools/src/index.ts)
574
+ Source: [`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts)
575
575
 
576
576
  <a id="tools-events"></a>
577
577
 
@@ -596,34 +596,7 @@ A tool was registered or unregistered, or a scoped restriction changed (the avai
596
596
  'tools/change'(): void
597
597
  ```
598
598
 
599
- Source: [`packages/core/tools/src/index.ts:207`](../../packages/core/tools/src/index.ts)
600
-
601
- <a id="toolscode-dispatch-log--waterfall"></a>
602
-
603
- #### `tools/code-dispatch-log` — waterfall
604
-
605
- Allow a listener to replace content in the DURABLE LOG COPY of one `run_code` sub-dispatch outcome before the bridge appends its `tool/code-dispatch` event. `next()` keeps the content unchanged; a listener may return replacement blocks (e.g. the spill policy's preview + locator for an oversized text result). Only the logged copy is affected — the program already received the complete value, and the model sees neither. A throwing listener is contained: the bridge falls back to logging the original settled content. Scope-filtered dispatch (`@deepseek-ai/dsh-scope`): agent-scoped listeners receive only that agent's dispatches.
606
-
607
- ```ts cordis-catalog
608
- /**
609
- * Allow a listener to replace content in the DURABLE LOG COPY of one
610
- * `run_code` sub-dispatch outcome before the bridge appends its
611
- * `tool/code-dispatch` event. `next()` keeps the
612
- * content unchanged; a listener may return replacement blocks (e.g. the
613
- * spill policy's preview + locator for an oversized text result). Only the
614
- * logged copy is affected — the program already received the complete
615
- * value, and the model sees neither. A throwing listener is contained:
616
- * the bridge falls back to logging the original settled content.
617
- * Scope-filtered dispatch (`@deepseek-ai/dsh-scope`): agent-scoped listeners receive only that agent's dispatches.
618
- * @param dispatch - the parent execution, sub-call identity, and the settled content to log.
619
- * @mode waterfall
620
- */
621
- 'tools/code-dispatch-log'(this: Scoped<ToolRuntime>, dispatch: CodeDispatchLog, next: () => Promise<ContentBlock[]>): Promise<ContentBlock[]>
622
- ```
623
-
624
- Types: [ContentBlock](llm-streaming.md) · [Scoped](scope.md)
625
-
626
- Source: [`packages/core/tools/src/index.ts:189`](../../packages/core/tools/src/index.ts)
599
+ Source: [`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts)
627
600
 
628
601
  <a id="toolsexecute--waterfall"></a>
629
602
 
@@ -647,7 +620,7 @@ Around-dispatch waterfall for timeout, retry, or metrics. `next()` returns a nor
647
620
 
648
621
  Types: [Scoped](scope.md)
649
622
 
650
- Source: [`packages/core/tools/src/index.ts:163`](../../packages/core/tools/src/index.ts)
623
+ Source: [`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts)
651
624
 
652
625
  <a id="toolspost-execute--waterfall"></a>
653
626
 
@@ -672,7 +645,7 @@ Accept, replace, enrich, or block a normalized dispatch result. `next()` accepts
672
645
 
673
646
  Types: [Scoped](scope.md)
674
647
 
675
- Source: [`packages/core/tools/src/index.ts:175`](../../packages/core/tools/src/index.ts)
648
+ Source: [`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts)
676
649
 
677
650
  <a id="toolspre-execute--waterfall"></a>
678
651
 
@@ -695,7 +668,34 @@ Allow, deny, or ask before dispatch. `next()` delegates to allow; missing approv
695
668
 
696
669
  Types: [Scoped](scope.md)
697
670
 
698
- Source: [`packages/core/tools/src/index.ts:152`](../../packages/core/tools/src/index.ts)
671
+ Source: [`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts)
672
+
673
+ <a id="toolsptc-dispatch-log--waterfall"></a>
674
+
675
+ #### `tools/ptc-dispatch-log` — waterfall
676
+
677
+ Allow a listener to replace content in the DURABLE LOG COPY of one `run_code` sub-dispatch outcome before the bridge appends its `tool/code-dispatch` event. `next()` keeps the content unchanged; a listener may return replacement blocks (e.g. the spill policy's preview + locator for an oversized text result). Only the logged copy is affected — the program already received the complete value, and the model sees neither. A throwing listener is contained: the bridge falls back to logging the original settled content. Scope-filtered dispatch (`@deepseek-ai/dsh-scope`): agent-scoped listeners receive only that agent's dispatches.
678
+
679
+ ```ts cordis-catalog
680
+ /**
681
+ * Allow a listener to replace content in the DURABLE LOG COPY of one
682
+ * `run_code` sub-dispatch outcome before the bridge appends its
683
+ * `tool/code-dispatch` event. `next()` keeps the
684
+ * content unchanged; a listener may return replacement blocks (e.g. the
685
+ * spill policy's preview + locator for an oversized text result). Only the
686
+ * logged copy is affected — the program already received the complete
687
+ * value, and the model sees neither. A throwing listener is contained:
688
+ * the bridge falls back to logging the original settled content.
689
+ * Scope-filtered dispatch (`@deepseek-ai/dsh-scope`): agent-scoped listeners receive only that agent's dispatches.
690
+ * @param dispatch - the parent execution, sub-call identity, and the settled content to log.
691
+ * @mode waterfall
692
+ */
693
+ 'tools/ptc-dispatch-log'(this: Scoped<ToolRuntime>, dispatch: PtcDispatchLog, next: () => Promise<ContentBlock[]>): Promise<ContentBlock[]>
694
+ ```
695
+
696
+ Types: [ContentBlock](llm-streaming.md) · [Scoped](scope.md)
697
+
698
+ Source: [`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts)
699
699
 
700
700
  <a id="toolsresult--emit"></a>
701
701
 
@@ -716,5 +716,5 @@ Observe the frozen, lossless-JSON final outcome. Listener failures are contained
716
716
 
717
717
  Types: [Scoped](scope.md)
718
718
 
719
- Source: [`packages/core/tools/src/index.ts:197`](../../packages/core/tools/src/index.ts)
719
+ Source: [`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts)
720
720
  <!-- END GENERATED cordis-surface -->
@@ -2,7 +2,7 @@
2
2
 
3
3
  [English](tools.md) | 中文
4
4
 
5
- [dsh-tools](../../packages/core/tools) 的工具流水线。[core.md](core.md) 介绍了核心包共用、用于编写流水线的类型 `ToolDefinition`;面向模型的 [`ToolSchema`](llm-streaming.md#the-model-request-and-result) 协议类型与模型请求一起声明。本页记录 `ToolDefinition` 的每个字段、用于构建它的类型化 schema DSL、带守卫的执行类型和 UI 展示类型。
5
+ [dsh-tools](../../packages/core/tools) 的工具流水线。[core.md](core.zh.md) 介绍了核心包共用、用于编写流水线的类型 `ToolDefinition`;面向模型的 [`ToolSchema`](llm-streaming.zh.md#the-model-request-and-result) 协议类型与模型请求一起声明。本页记录 `ToolDefinition` 的每个字段、用于构建它的类型化 schema DSL、带守卫的执行类型和 UI 展示类型。
6
6
 
7
7
  源码:[`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts) · [`packages/core/tools/src/schema.ts`](../../packages/core/tools/src/schema.ts) · [`packages/core/tools/src/presentation.ts`](../../packages/core/tools/src/presentation.ts)
8
8
 
@@ -157,7 +157,7 @@ type InferArgs<S> = InferProperties<S, []>
157
157
  ```ts type-equiv
158
158
  /**
159
159
  * Per-scope filter over global tools. Restrictions intersect and do not affect
160
- * scoped registrations or the reserved Code Mode transport.
160
+ * scoped registrations or the reserved PTC mode transport.
161
161
  */
162
162
  interface ToolRestriction {
163
163
  /** Global tool names that stay visible; everything else is removed. */
@@ -183,23 +183,23 @@ type ToolExecutionToken = symbol & { readonly [toolExecutionTokenBrand]: true }
183
183
  * callers do not choose that token.
184
184
  */
185
185
  interface ToolExecutionInput {
186
- readonly callId: CallId
186
+ readonly callId: ToolCallId
187
187
  /**
188
188
  * Root model-requested call owning this execution tree. Callers omit it for
189
189
  * a root execution; nested dispatchers propagate the enclosing value.
190
190
  */
191
- readonly rootCallId?: CallId
191
+ readonly rootCallId?: ToolCallId
192
192
  readonly name: string
193
193
  /** Losslessly JSON-serializable parsed arguments (tools validate their own schema). */
194
194
  readonly arguments: unknown
195
195
  /** The agent on whose behalf the call runs (set by the agent loop). */
196
196
  readonly agent?: Agent
197
197
  /**
198
- * Opaque token of the enclosing transport execution, when one exists. Code
199
- * Mode sets this on SDK sub-dispatches so commit-style observers can wait for
198
+ * Opaque token of the enclosing transport execution, when one exists. PTC
199
+ * mode sets this on SDK sub-dispatches so commit-style observers can wait for
200
200
  * the outer `run_code` outcome without receiving its live mutable execution.
201
201
  * The token also marks the call as a transport sub-dispatch rather than a
202
- * model-direct call: under `mode: 'code'`, only calls WITH a parent may
202
+ * model-direct call: under `mode: 'ptc'`, only calls WITH a parent may
203
203
  * execute a native tool name — a model-direct call (no parent) is denied as
204
204
  * `UNKNOWN_TOOL` before the policy pipeline. See {@link ToolRuntime.execute}.
205
205
  */
@@ -252,25 +252,25 @@ type ToolExecutionMode =
252
252
  | { kind: 'exclusive' }
253
253
  ```
254
254
 
255
- Code Mode 的桥接层还会把每个已结算的子分派暴露给 `tools/code-dispatch-log` waterfall,该 waterfall 可以更改持久事件所存的内容副本(程序取得的值和模型可见结果均不受影响):
255
+ PTC mode 的桥接层还会把每个已结算的子分派暴露给 `tools/ptc-dispatch-log` waterfall,该 waterfall 可以更改持久事件所存的内容副本(程序取得的值和模型可见结果均不受影响):
256
256
 
257
257
  ```ts type-equiv
258
258
  /**
259
259
  * One settled `run_code` sub-dispatch about to be logged, as seen by the
260
- * `tools/code-dispatch-log` waterfall: the parent execution (session owner,
260
+ * `tools/ptc-dispatch-log` waterfall: the parent execution (session owner,
261
261
  * outer call identity), the sub-call identity, and the outcome whose durable
262
262
  * copy a listener may reshape. `content` is the RENDERED result projection
263
263
  * (what a native `tool/result` would carry) — the program itself received
264
264
  * the structured `value` (or just the error message on failure); only the
265
265
  * `tool/code-dispatch` event's copy changes.
266
266
  */
267
- interface CodeDispatchLog {
267
+ interface PtcDispatchLog {
268
268
  /** The outer `run_code` execution. */
269
269
  readonly exec: ToolExecution
270
270
  /** The calling agent (the scope routing key and the spill owner), when the outer call has one. */
271
271
  readonly agent?: Agent
272
272
  /** Deterministic sub-call id (`<parent>:code:<n>`). */
273
- readonly subCallId: CallId
273
+ readonly subCallId: ToolCallId
274
274
  /** The dispatched sub-tool name. */
275
275
  readonly name: string
276
276
  /** Whether the sub-call settled as an error. */
@@ -290,7 +290,7 @@ interface CodeDispatchLog {
290
290
  */
291
291
  interface ToolExecution extends ToolExecutionInput {
292
292
  /** Root model-requested call, resolved for every root and nested execution. */
293
- readonly rootCallId: CallId
293
+ readonly rootCallId: ToolCallId
294
294
  /** Registry-assigned identity shared with nested calls only as their opaque `parent` token. */
295
295
  readonly token: ToolExecutionToken
296
296
  }
@@ -463,9 +463,9 @@ type ObjectJsonSchema = JsonSchemaNode & { type: 'object' }
463
463
  - `ToolCallView`(待执行):`{ card: 'generic', title, kind?, rawInput?, content?, locations? }`(默认卡片;`locations` 是 `{ path, line? }[]`,表示调用读取/修改的文件,供编辑器跟随)、`{ card: 'terminal', title, description?, cwd? }`(shell 命令→终端卡片)、或 `{ card: 'diff', title, diffs, locations? }`(文件创建/修改→行内 diff 卡片;`diffs` 是 `{ path, oldText, newText }[]`,新文件时 `oldText: null`)。
464
464
  - `ToolResultView`(已完成):`{ card: 'generic', title?, content? }`、`{ card: 'terminal', title?, output?, exitCode?, signal? }`(捕获的运行输出 + 退出状态;有能力的 UI 显示退出状态标签,其他 UI 可以派生围栏 ` ```console ` 回退)、`{ card: 'diff', title?, diffs }`(已完成的文件变更→要展示的变更,通常是从变更前后内容计算出带上下文行的已应用 hunk,或在没有前像时的整文件 diff)、`{ card: 'search', shape, title?, truncated, total, … }`(已完成的发现型搜索→`shape: 'matches'`(grep)为按文件分组的匹配,`shape: 'paths'`(glob)为扁平路径列表;`truncated`/`total` 报告内联结果是否被截断,使 UI 永不把部分结果当作完整结果呈现;该视图不携带结果文本——无 search 卡片的 UI 回退到原始结果内容)、`{ card: 'read', title?, path, offset, lines, totalLines, lang?, content? }`(已完成的文件读取→带行号、可选语法高亮的代码视图;`offset` 是窗口请求的 1-based 起始行,即使 `lines` 为空也保留;`lang` 是从扩展名推得的语言提示,`content` 是无读取能力的 UI 回退时使用的去信封文本)、或 `{ card: 'web', kind: 'search' | 'fetch', title?, … }`(已完成的 web 检索;`kind: 'search'` 携带结构化的 `sources`/`answer?`/`truncated`,`kind: 'fetch'` 携带 `url`/`statusCode`/`truncated`,不具备 `web` 能力的 UI 回退到原始结果内容——正文不会重复进视图)。已完成视图会替换待执行视图,因此变更工具即使与调用时的片段重复也要返回 diff 结果;搜索和 web 检索都没有 `card` 的调用时对应视图(其 pending 状态保持为 generic 卡片,因为结构化结果只在 `execute` 之后才存在)。
465
465
 
466
- `ToolCallKind`(`'read' | 'edit' | 'delete' | 'move' | 'search' | 'execute' | 'fetch' | 'other'`)用于为通用卡片选择图标。`FileLocation`(`{ path, line? }`)、`FileDiff`(`{ path, oldText, newText }`)与 `ReadFileLine`(`{ number, text }`,读取窗口中一行带 1-based 行号的内容)是共享的文件卡片词汇。该设计由[渲染意图联合类型 Agent Note](../../.agents/notes/implemented/architecture/2026-07-02-tool-render-intent-union.md)固定;host/client 运行时将这套中性词汇投影为各自的视图。
466
+ `ToolCallKind`(`'read' | 'edit' | 'delete' | 'move' | 'search' | 'execute' | 'fetch' | 'other'`)用于为通用卡片选择图标。`FileLocation`(`{ path, line? }`)、`FileDiff`(`{ path, oldText, newText }`)与 `ReadFileLine`(`{ number, text }`,读取窗口中一行带 1-based 行号的内容)是共享的文件卡片词汇。该设计由[渲染意图联合类型 Agent Note](../../.agents/notes/implemented/architecture/2026-07-02-tool-render-intent-union.zh.md)固定;host/client 运行时将这套中性词汇投影为各自的视图。
467
467
 
468
- 完整的展示字段文档见 [`packages/core/tools/src/presentation.ts`](../../packages/core/tools/src/presentation.ts)。`bash` schema 与执行器见 [shell.md](shell.md);通用后台控制见 [jobs.md](jobs.md)。
468
+ 完整的展示字段文档见 [`packages/core/tools/src/presentation.ts`](../../packages/core/tools/src/presentation.ts)。`bash` schema 与执行器见 [shell.md](shell.zh.md);通用后台控制见 [jobs.md](jobs.zh.md)。
469
469
 
470
470
  <!-- BEGIN GENERATED cordis-surface (gen-cordis-catalog.ts) — do not edit between markers -->
471
471
 
@@ -473,7 +473,7 @@ type ObjectJsonSchema = JsonSchemaNode & { type: 'object' }
473
473
 
474
474
  ## Cordis API
475
475
 
476
- 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`) — this section is byte-identical in both language sides of the page. Signature blocks use a `ts cordis-catalog` fence and keep the original source JSDoc; dispatch modes are defined in the [primer](../cordis-primer.md#dispatch-modes), and the framework-inherited `ctx` API lives in [cordis-api/inherited.md](../cordis-api/inherited.md).
476
+ 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).
477
477
 
478
478
  <a id="ctxtools--toolruntime"></a>
479
479
 
@@ -488,7 +488,7 @@ Tool registry and execution pipeline. Scoped registrations shadow globals; one v
488
488
  * declaration covers every agent joined under it.
489
489
  *
490
490
  * Scoped only, and one declaration per scope: this is how an agent preset
491
- * composes Code Mode agents beside native ones in the same process, and a
491
+ * composes PTC mode agents beside native ones in the same process, and a
492
492
  * process-global override would be the `mode` config field instead.
493
493
  * @param mode - the presentation the covered agents' models see.
494
494
  * @returns the exact disposer that restores the deployment default.
@@ -569,9 +569,9 @@ executionMode(exec: ToolExecutionInput): ToolExecutionMode
569
569
  async execute(exec: ToolExecutionInput): Promise<ToolExecutionResult>
570
570
  ```
571
571
 
572
- Types: [ScopeKey](scope.md)
572
+ Types: [ScopeKey](scope.zh.md)
573
573
 
574
- Source: [`packages/core/tools/src/index.ts:787`](../../packages/core/tools/src/index.ts)
574
+ Source: [`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts)
575
575
 
576
576
  <a id="tools-events"></a>
577
577
 
@@ -596,34 +596,7 @@ A tool was registered or unregistered, or a scoped restriction changed (the avai
596
596
  'tools/change'(): void
597
597
  ```
598
598
 
599
- Source: [`packages/core/tools/src/index.ts:207`](../../packages/core/tools/src/index.ts)
600
-
601
- <a id="toolscode-dispatch-log--waterfall"></a>
602
-
603
- #### `tools/code-dispatch-log` — waterfall
604
-
605
- Allow a listener to replace content in the DURABLE LOG COPY of one `run_code` sub-dispatch outcome before the bridge appends its `tool/code-dispatch` event. `next()` keeps the content unchanged; a listener may return replacement blocks (e.g. the spill policy's preview + locator for an oversized text result). Only the logged copy is affected — the program already received the complete value, and the model sees neither. A throwing listener is contained: the bridge falls back to logging the original settled content. Scope-filtered dispatch (`@deepseek-ai/dsh-scope`): agent-scoped listeners receive only that agent's dispatches.
606
-
607
- ```ts cordis-catalog
608
- /**
609
- * Allow a listener to replace content in the DURABLE LOG COPY of one
610
- * `run_code` sub-dispatch outcome before the bridge appends its
611
- * `tool/code-dispatch` event. `next()` keeps the
612
- * content unchanged; a listener may return replacement blocks (e.g. the
613
- * spill policy's preview + locator for an oversized text result). Only the
614
- * logged copy is affected — the program already received the complete
615
- * value, and the model sees neither. A throwing listener is contained:
616
- * the bridge falls back to logging the original settled content.
617
- * Scope-filtered dispatch (`@deepseek-ai/dsh-scope`): agent-scoped listeners receive only that agent's dispatches.
618
- * @param dispatch - the parent execution, sub-call identity, and the settled content to log.
619
- * @mode waterfall
620
- */
621
- 'tools/code-dispatch-log'(this: Scoped<ToolRuntime>, dispatch: CodeDispatchLog, next: () => Promise<ContentBlock[]>): Promise<ContentBlock[]>
622
- ```
623
-
624
- Types: [ContentBlock](llm-streaming.md) · [Scoped](scope.md)
625
-
626
- Source: [`packages/core/tools/src/index.ts:189`](../../packages/core/tools/src/index.ts)
599
+ Source: [`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts)
627
600
 
628
601
  <a id="toolsexecute--waterfall"></a>
629
602
 
@@ -645,9 +618,9 @@ Around-dispatch waterfall for timeout, retry, or metrics. `next()` returns a nor
645
618
  'tools/execute'(this: Scoped<ToolRuntime>, exec: ToolDispatchExecution, next: () => Promise<ToolExecutionResult>): Promise<ToolExecutionResult>
646
619
  ```
647
620
 
648
- Types: [Scoped](scope.md)
621
+ Types: [Scoped](scope.zh.md)
649
622
 
650
- Source: [`packages/core/tools/src/index.ts:163`](../../packages/core/tools/src/index.ts)
623
+ Source: [`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts)
651
624
 
652
625
  <a id="toolspost-execute--waterfall"></a>
653
626
 
@@ -670,9 +643,9 @@ Accept, replace, enrich, or block a normalized dispatch result. `next()` accepts
670
643
  'tools/post-execute'(this: Scoped<ToolRuntime>, exec: ToolExecution, result: Readonly<ToolExecutionResult>, next: () => Promise<PostToolDecision>): Promise<PostToolDecision>
671
644
  ```
672
645
 
673
- Types: [Scoped](scope.md)
646
+ Types: [Scoped](scope.zh.md)
674
647
 
675
- Source: [`packages/core/tools/src/index.ts:175`](../../packages/core/tools/src/index.ts)
648
+ Source: [`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts)
676
649
 
677
650
  <a id="toolspre-execute--waterfall"></a>
678
651
 
@@ -693,9 +666,36 @@ Allow, deny, or ask before dispatch. `next()` delegates to allow; missing approv
693
666
  'tools/pre-execute'(this: Scoped<ToolRuntime>, exec: ToolExecution, next: () => Promise<PreToolDecision>): Promise<PreToolDecision>
694
667
  ```
695
668
 
696
- Types: [Scoped](scope.md)
669
+ Types: [Scoped](scope.zh.md)
670
+
671
+ Source: [`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts)
672
+
673
+ <a id="toolsptc-dispatch-log--waterfall"></a>
674
+
675
+ #### `tools/ptc-dispatch-log` — waterfall
676
+
677
+ Allow a listener to replace content in the DURABLE LOG COPY of one `run_code` sub-dispatch outcome before the bridge appends its `tool/code-dispatch` event. `next()` keeps the content unchanged; a listener may return replacement blocks (e.g. the spill policy's preview + locator for an oversized text result). Only the logged copy is affected — the program already received the complete value, and the model sees neither. A throwing listener is contained: the bridge falls back to logging the original settled content. Scope-filtered dispatch (`@deepseek-ai/dsh-scope`): agent-scoped listeners receive only that agent's dispatches.
678
+
679
+ ```ts cordis-catalog
680
+ /**
681
+ * Allow a listener to replace content in the DURABLE LOG COPY of one
682
+ * `run_code` sub-dispatch outcome before the bridge appends its
683
+ * `tool/code-dispatch` event. `next()` keeps the
684
+ * content unchanged; a listener may return replacement blocks (e.g. the
685
+ * spill policy's preview + locator for an oversized text result). Only the
686
+ * logged copy is affected — the program already received the complete
687
+ * value, and the model sees neither. A throwing listener is contained:
688
+ * the bridge falls back to logging the original settled content.
689
+ * Scope-filtered dispatch (`@deepseek-ai/dsh-scope`): agent-scoped listeners receive only that agent's dispatches.
690
+ * @param dispatch - the parent execution, sub-call identity, and the settled content to log.
691
+ * @mode waterfall
692
+ */
693
+ 'tools/ptc-dispatch-log'(this: Scoped<ToolRuntime>, dispatch: PtcDispatchLog, next: () => Promise<ContentBlock[]>): Promise<ContentBlock[]>
694
+ ```
695
+
696
+ Types: [ContentBlock](llm-streaming.zh.md) · [Scoped](scope.zh.md)
697
697
 
698
- Source: [`packages/core/tools/src/index.ts:152`](../../packages/core/tools/src/index.ts)
698
+ Source: [`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts)
699
699
 
700
700
  <a id="toolsresult--emit"></a>
701
701
 
@@ -714,7 +714,7 @@ Observe the frozen, lossless-JSON final outcome. Listener failures are contained
714
714
  'tools/result'(this: Scoped<ToolRuntime>, exec: Readonly<ToolExecution>, result: Readonly<ToolExecutionResult>): undefined
715
715
  ```
716
716
 
717
- Types: [Scoped](scope.md)
717
+ Types: [Scoped](scope.zh.md)
718
718
 
719
- Source: [`packages/core/tools/src/index.ts:197`](../../packages/core/tools/src/index.ts)
719
+ Source: [`packages/core/tools/src/index.ts`](../../packages/core/tools/src/index.ts)
720
720
  <!-- END GENERATED cordis-surface -->
@@ -2,5 +2,5 @@
2
2
  # side as of the last confirmed-consistent state. Both languages carry equal authority;
3
3
  # after editing either side, bring the other along and re-record with:
4
4
  # pnpm run verify-translation-pairing --write docs/subsystems/typert.md
5
- typert.md: 863ab9821bbf3681ae43df817cc04018e275390c
6
- typert.zh.md: 4883b4be51a09d8e63001284e42bd7e60497bf1d
5
+ typert.md: 0f3d2b1afdc1b7713402abc5885dc9551e16ac14
6
+ typert.zh.md: a3c06489707e18433ed9018363c57ec76732e606