create-windy 0.8.2 → 0.9.1

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 (574) hide show
  1. package/dist/cli.js +855 -560
  2. package/package.json +1 -1
  3. package/template/.windy-template.json +2 -2
  4. package/template/apps/agent-server/Dockerfile +92 -22
  5. package/template/apps/agent-server/README.md +47 -85
  6. package/template/apps/agent-server/documents/office.py +216 -0
  7. package/template/apps/agent-server/documents/query_report.py +136 -0
  8. package/template/apps/agent-server/documents/smoke.py +177 -0
  9. package/template/apps/agent-server/documents/test_boundaries.py +185 -0
  10. package/template/apps/agent-server/host-contracts.ts +56 -0
  11. package/template/apps/agent-server/install-native.ts +167 -0
  12. package/template/apps/agent-server/main.ts +179 -0
  13. package/template/apps/agent-server/native/EXTENSIONS.md +46 -0
  14. package/template/apps/agent-server/native/admission.ts +73 -0
  15. package/template/apps/agent-server/native/authorization.test.ts +176 -0
  16. package/template/apps/agent-server/native/authorization.ts +118 -0
  17. package/template/apps/agent-server/native/boundary-io.ts +93 -0
  18. package/template/apps/agent-server/native/boundary-product.ts +107 -0
  19. package/template/apps/agent-server/native/boundary-project.test.ts +247 -0
  20. package/template/apps/agent-server/native/boundary-project.ts +188 -0
  21. package/template/apps/agent-server/native/boundary.ts +188 -0
  22. package/template/apps/agent-server/native/compaction-policy.test.ts +175 -0
  23. package/template/apps/agent-server/native/config.ts +95 -0
  24. package/template/apps/agent-server/native/conversation-instructions.ts +9 -0
  25. package/template/apps/agent-server/native/extensions.test.ts +190 -0
  26. package/template/apps/agent-server/native/extensions.ts +31 -0
  27. package/template/apps/agent-server/native/host-profile.test.ts +91 -0
  28. package/template/apps/agent-server/native/host-profile.ts +33 -0
  29. package/template/apps/agent-server/native/host-test-fixture.ts +13 -0
  30. package/template/apps/agent-server/native/http.ts +129 -0
  31. package/template/apps/agent-server/native/lifecycle.test.ts +285 -0
  32. package/template/apps/agent-server/native/lifecycle.ts +136 -0
  33. package/template/apps/agent-server/native/manager.ts +292 -0
  34. package/template/apps/agent-server/native/native.test.ts +207 -0
  35. package/template/apps/agent-server/native/office-preview.test.ts +50 -0
  36. package/template/apps/agent-server/native/office-preview.ts +25 -0
  37. package/template/apps/agent-server/native/parallel-harness.ts +242 -0
  38. package/template/apps/agent-server/native/parallel-mcp-fixture.ts +97 -0
  39. package/template/apps/agent-server/native/parallel.test.ts +256 -0
  40. package/template/apps/agent-server/native/profile-composition.test.ts +147 -0
  41. package/template/apps/agent-server/native/profile.ts +307 -0
  42. package/template/apps/agent-server/native/request.ts +61 -0
  43. package/template/apps/agent-server/native/session-conflict.test.ts +235 -0
  44. package/template/apps/agent-server/native/session-conflict.ts +21 -0
  45. package/template/apps/agent-server/native/shared-skills.test.ts +128 -0
  46. package/template/apps/agent-server/native/shared-skills.ts +240 -0
  47. package/template/apps/agent-server/native/socket-lifecycle.test.ts +48 -0
  48. package/template/apps/agent-server/native/socket.ts +130 -0
  49. package/template/apps/agent-server/native/storage-lifecycle.test.ts +217 -0
  50. package/template/apps/agent-server/native/storage.ts +188 -0
  51. package/template/apps/agent-server/native/stream-authorization.test.ts +89 -0
  52. package/template/apps/agent-server/native/worker.ts +77 -0
  53. package/template/apps/agent-server/native-download.test.ts +119 -0
  54. package/template/apps/agent-server/native-download.ts +145 -0
  55. package/template/apps/agent-server/package.json +63 -0
  56. package/template/apps/agent-server/plugins/access.mjs +126 -0
  57. package/template/apps/agent-server/plugins/branding/README.md +9 -0
  58. package/template/apps/agent-server/plugins/branding/brand.css +85 -0
  59. package/template/apps/agent-server/plugins/branding/client.js +338 -0
  60. package/template/apps/agent-server/plugins/branding/index.mjs +35 -0
  61. package/template/apps/agent-server/plugins/branding/loading.d.mts +2 -0
  62. package/template/apps/agent-server/plugins/branding/loading.mjs +66 -0
  63. package/template/apps/agent-server/plugins/branding/loading.test.ts +89 -0
  64. package/template/apps/agent-server/plugins/branding/package.json +21 -0
  65. package/template/apps/agent-server/plugins/branding.test.ts +294 -0
  66. package/template/apps/agent-server/plugins/compaction.mjs +83 -0
  67. package/template/apps/agent-server/plugins/compaction.test.ts +91 -0
  68. package/template/apps/agent-server/plugins/confine-network.py +57 -0
  69. package/template/apps/agent-server/plugins/default-skills.test.ts +62 -0
  70. package/template/apps/agent-server/plugins/downloads/README.md +28 -0
  71. package/template/apps/agent-server/plugins/downloads/client.js +126 -0
  72. package/template/apps/agent-server/plugins/downloads/downloads.test.ts +222 -0
  73. package/template/apps/agent-server/plugins/downloads/index.d.mts +19 -0
  74. package/template/apps/agent-server/plugins/downloads/index.mjs +180 -0
  75. package/template/apps/agent-server/plugins/downloads/package.json +20 -0
  76. package/template/apps/agent-server/plugins/drop-overlay/README.md +24 -0
  77. package/template/apps/agent-server/plugins/drop-overlay/drop-overlay.test.ts +199 -0
  78. package/template/apps/agent-server/plugins/drop-overlay/index.d.mts +8 -0
  79. package/template/apps/agent-server/plugins/drop-overlay/index.mjs +12 -0
  80. package/template/apps/agent-server/plugins/drop-overlay/style.css +102 -0
  81. package/template/apps/agent-server/plugins/locale/client.js +61 -0
  82. package/template/apps/agent-server/plugins/locale/index.d.mts +9 -0
  83. package/template/apps/agent-server/plugins/locale/index.mjs +16 -0
  84. package/template/apps/agent-server/plugins/locale/locale.test.ts +217 -0
  85. package/template/apps/agent-server/plugins/locale/package.json +19 -0
  86. package/template/apps/agent-server/plugins/parallel.mjs +146 -0
  87. package/template/apps/agent-server/plugins/preset-registry.d.mts +2 -0
  88. package/template/apps/agent-server/plugins/preset-registry.mjs +41 -0
  89. package/template/apps/agent-server/plugins/preset-registry.test.ts +46 -0
  90. package/template/apps/agent-server/plugins/questions.d.mts +25 -0
  91. package/template/apps/agent-server/plugins/questions.mjs +142 -0
  92. package/template/apps/agent-server/plugins/questions.test.ts +105 -0
  93. package/template/apps/agent-server/plugins/settings/README.md +17 -0
  94. package/template/apps/agent-server/plugins/settings/client.js +102 -0
  95. package/template/apps/agent-server/plugins/settings/index.mjs +17 -0
  96. package/template/apps/agent-server/plugins/settings/package.json +19 -0
  97. package/template/apps/agent-server/plugins/settings/settings.test.ts +129 -0
  98. package/template/apps/agent-server/plugins/settings-controller.d.mts +4 -0
  99. package/template/apps/agent-server/plugins/settings-controller.mjs +31 -0
  100. package/template/apps/agent-server/plugins/settings-controller.test.ts +17 -0
  101. package/template/apps/agent-server/plugins/settings-dispatch.test.ts +34 -0
  102. package/template/apps/agent-server/plugins/shared-skills.d.mts +15 -0
  103. package/template/apps/agent-server/plugins/shared-skills.mjs +82 -0
  104. package/template/apps/agent-server/plugins/shared-skills.test.ts +51 -0
  105. package/template/apps/agent-server/plugins/skill-library/README.md +11 -0
  106. package/template/apps/agent-server/plugins/skill-library/archive.test.ts +43 -0
  107. package/template/apps/agent-server/plugins/skill-library/bundle.mjs +234 -0
  108. package/template/apps/agent-server/plugins/skill-library/client-chunks.test.ts +107 -0
  109. package/template/apps/agent-server/plugins/skill-library/client-form-mount.test.ts +139 -0
  110. package/template/apps/agent-server/plugins/skill-library/client-form.test.ts +261 -0
  111. package/template/apps/agent-server/plugins/skill-library/client-ui.test.ts +268 -0
  112. package/template/apps/agent-server/plugins/skill-library/client-use.test.ts +158 -0
  113. package/template/apps/agent-server/plugins/skill-library/client.editor.js +93 -0
  114. package/template/apps/agent-server/plugins/skill-library/client.form.js +316 -0
  115. package/template/apps/agent-server/plugins/skill-library/client.js +348 -0
  116. package/template/apps/agent-server/plugins/skill-library/client.request.js +52 -0
  117. package/template/apps/agent-server/plugins/skill-library/client.transfer.js +48 -0
  118. package/template/apps/agent-server/plugins/skill-library/client.use.js +46 -0
  119. package/template/apps/agent-server/plugins/skill-library/default-roots.test.ts +84 -0
  120. package/template/apps/agent-server/plugins/skill-library/draft.d.mts +17 -0
  121. package/template/apps/agent-server/plugins/skill-library/draft.mjs +152 -0
  122. package/template/apps/agent-server/plugins/skill-library/draft.test.ts +287 -0
  123. package/template/apps/agent-server/plugins/skill-library/index.d.mts +49 -0
  124. package/template/apps/agent-server/plugins/skill-library/index.mjs +226 -0
  125. package/template/apps/agent-server/plugins/skill-library/package.json +24 -0
  126. package/template/apps/agent-server/plugins/skill-library/presentation/README.md +27 -0
  127. package/template/apps/agent-server/plugins/skill-library/presentation/UPSTREAM.md +54 -0
  128. package/template/apps/agent-server/plugins/skill-library/presentation/boot.test.ts +150 -0
  129. package/template/apps/agent-server/plugins/skill-library/presentation/client.js +146 -0
  130. package/template/apps/agent-server/plugins/skill-library/presentation/client.test.ts +195 -0
  131. package/template/apps/agent-server/plugins/skill-library/presentation/index.d.mts +9 -0
  132. package/template/apps/agent-server/plugins/skill-library/presentation/index.mjs +30 -0
  133. package/template/apps/agent-server/plugins/skill-library/presentation/metadata.test.ts +82 -0
  134. package/template/apps/agent-server/plugins/skill-library/presentation/package.json +21 -0
  135. package/template/apps/agent-server/plugins/skill-library/presentation/react-boot.test.ts +162 -0
  136. package/template/apps/agent-server/plugins/skill-library/skills.test.ts +342 -0
  137. package/template/apps/agent-server/plugins/skill-library/storage.mjs +293 -0
  138. package/template/apps/agent-server/plugins/skill-library/style.css +229 -0
  139. package/template/apps/agent-server/plugins/skill-library/test-fixture.ts +77 -0
  140. package/template/apps/agent-server/plugins/skill-library/workflow.d.mts +18 -0
  141. package/template/apps/agent-server/plugins/skill-library/workflow.mjs +189 -0
  142. package/template/apps/agent-server/plugins/skill-library/workflow.test.ts +164 -0
  143. package/template/apps/agent-server/plugins/skills/README.md +5 -0
  144. package/template/apps/agent-server/plugins/skills/windy-data-summary/SKILL.md +14 -0
  145. package/template/apps/agent-server/plugins/skills/windy-extension-guide/SKILL.md +14 -0
  146. package/template/apps/agent-server/plugins/skills/windy-office/SKILL.md +14 -0
  147. package/template/apps/agent-server/plugins/skills/windy-skill-capture/SKILL.md +14 -0
  148. package/template/apps/agent-server/plugins/skills/windy-source-compare/SKILL.md +14 -0
  149. package/template/apps/agent-server/plugins/subprocess.mjs +40 -0
  150. package/template/apps/agent-server/plugins/theme/README.md +18 -0
  151. package/template/apps/agent-server/plugins/theme/client.js +18 -0
  152. package/template/apps/agent-server/plugins/theme/index.d.mts +9 -0
  153. package/template/apps/agent-server/plugins/theme/index.mjs +18 -0
  154. package/template/apps/agent-server/plugins/theme/package.json +19 -0
  155. package/template/apps/agent-server/plugins/theme/source-tokens.ts +82 -0
  156. package/template/apps/agent-server/plugins/theme/sync-tokens.ts +12 -0
  157. package/template/apps/agent-server/plugins/theme/theme.test.ts +193 -0
  158. package/template/apps/agent-server/plugins/theme/tokens.json +166 -0
  159. package/template/apps/agent-server/plugins/tool-catalog/README.md +79 -0
  160. package/template/apps/agent-server/plugins/tool-catalog/categories.mjs +111 -0
  161. package/template/apps/agent-server/plugins/tool-catalog/categories.test.ts +118 -0
  162. package/template/apps/agent-server/plugins/tool-catalog/client-cache.test.ts +264 -0
  163. package/template/apps/agent-server/plugins/tool-catalog/client.js +333 -0
  164. package/template/apps/agent-server/plugins/tool-catalog/client.test.ts +136 -0
  165. package/template/apps/agent-server/plugins/tool-catalog/discovery.d.mts +42 -0
  166. package/template/apps/agent-server/plugins/tool-catalog/discovery.mjs +242 -0
  167. package/template/apps/agent-server/plugins/tool-catalog/discovery.test.ts +229 -0
  168. package/template/apps/agent-server/plugins/tool-catalog/index.d.mts +5 -0
  169. package/template/apps/agent-server/plugins/tool-catalog/index.mjs +91 -0
  170. package/template/apps/agent-server/plugins/tool-catalog/package.json +23 -0
  171. package/template/apps/agent-server/plugins/tool-catalog/presentation.d.mts +21 -0
  172. package/template/apps/agent-server/plugins/tool-catalog/presentation.mjs +153 -0
  173. package/template/apps/agent-server/plugins/tool-catalog/presentation.test.ts +166 -0
  174. package/template/apps/agent-server/plugins/tool-catalog/routes.test.ts +209 -0
  175. package/template/apps/agent-server/plugins/tool-catalog/style.css +155 -0
  176. package/template/apps/agent-server/plugins/tool-catalog/use-tool.test.ts +160 -0
  177. package/template/apps/agent-server/plugins/tool-presentation/README.md +7 -0
  178. package/template/apps/agent-server/plugins/tool-presentation/build-client.ts +29 -0
  179. package/template/apps/agent-server/plugins/tool-presentation/client.js +312 -0
  180. package/template/apps/agent-server/plugins/tool-presentation/client.results.js +9 -0
  181. package/template/apps/agent-server/plugins/tool-presentation/client.test.ts +178 -0
  182. package/template/apps/agent-server/plugins/tool-presentation/index.mjs +10 -0
  183. package/template/apps/agent-server/plugins/tool-presentation/package.json +24 -0
  184. package/template/apps/agent-server/plugins/tool-presentation/result-discovery.mjs +43 -0
  185. package/template/apps/agent-server/plugins/tool-presentation/result-model.d.mts +51 -0
  186. package/template/apps/agent-server/plugins/tool-presentation/result-model.mjs +96 -0
  187. package/template/apps/agent-server/plugins/workspace/README.md +5 -0
  188. package/template/apps/agent-server/plugins/workspace/index.mjs +8 -0
  189. package/template/apps/agent-server/plugins/workspace/package.json +10 -0
  190. package/template/apps/agent-server/plugins/workspace/style.css +124 -0
  191. package/template/apps/agent-server/project/host.ts +13 -0
  192. package/template/apps/agent-server/runtime/artifacts.ts +115 -0
  193. package/template/apps/agent-server/runtime/audit.nodecheck.ts +60 -0
  194. package/template/apps/agent-server/runtime/capacity.ts +61 -0
  195. package/template/apps/agent-server/runtime/client-completion-budget.nodecheck.ts +92 -0
  196. package/template/apps/agent-server/runtime/compatibility.ts +33 -0
  197. package/template/apps/agent-server/runtime/completions.ts +320 -0
  198. package/template/apps/agent-server/runtime/config.ts +246 -0
  199. package/template/apps/agent-server/runtime/context-budget.ts +70 -0
  200. package/template/apps/agent-server/runtime/context-plugin.ts +306 -0
  201. package/template/apps/agent-server/runtime/context.nodecheck.ts +241 -0
  202. package/template/apps/agent-server/runtime/contracts.ts +201 -0
  203. package/template/apps/agent-server/runtime/dsh-engine.ts +196 -0
  204. package/template/apps/agent-server/runtime/evaluation-plugin.ts +115 -0
  205. package/template/apps/agent-server/runtime/evaluation.nodecheck.ts +194 -0
  206. package/template/apps/agent-server/runtime/events.ts +71 -0
  207. package/template/apps/agent-server/runtime/governance.ts +194 -0
  208. package/template/apps/agent-server/runtime/index.ts +339 -0
  209. package/template/apps/agent-server/runtime/internal-output.ts +37 -0
  210. package/template/apps/agent-server/runtime/isolation.nodecheck.ts +287 -0
  211. package/template/apps/agent-server/runtime/model-payload.ts +97 -0
  212. package/template/apps/agent-server/runtime/model-plugin.ts +308 -0
  213. package/template/apps/agent-server/runtime/model-route.ts +34 -0
  214. package/template/apps/agent-server/runtime/model-usage.ts +51 -0
  215. package/template/apps/agent-server/runtime/model-wire.ts +45 -0
  216. package/template/apps/agent-server/runtime/native-authorization.nodecheck.ts +126 -0
  217. package/template/apps/agent-server/runtime/native-completion.nodecheck.ts +81 -0
  218. package/template/apps/agent-server/runtime/output-validation.ts +66 -0
  219. package/template/apps/agent-server/runtime/production-capacity.nodecheck.ts +121 -0
  220. package/template/apps/agent-server/runtime/questions-workflow.nodecheck.ts +249 -0
  221. package/template/apps/agent-server/runtime/report-breakdown.ts +79 -0
  222. package/template/apps/agent-server/runtime/reporting.ts +219 -0
  223. package/template/apps/agent-server/runtime/run-completion.ts +39 -0
  224. package/template/apps/agent-server/runtime/run-request-digest.ts +18 -0
  225. package/template/apps/agent-server/runtime/runtime-test-fixtures.ts +264 -0
  226. package/template/apps/agent-server/runtime/runtime.nodecheck.ts +150 -0
  227. package/template/apps/agent-server/runtime/store-idempotency.nodecheck.ts +74 -0
  228. package/template/apps/agent-server/runtime/store.ts +324 -0
  229. package/template/apps/agent-server/runtime/structured-output-mode.nodecheck.ts +51 -0
  230. package/template/apps/agent-server/runtime/tool-name.ts +6 -0
  231. package/template/apps/agent-server/runtime/tool-plugin.ts +201 -0
  232. package/template/apps/agent-server/runtime/vision-readiness.ts +200 -0
  233. package/template/apps/agent-server/scripts/confinement-check.mjs +103 -0
  234. package/template/apps/agent-server/scripts/coordinator-check.mjs +344 -0
  235. package/template/apps/agent-server/scripts/documents-delivery-check.mjs +309 -0
  236. package/template/apps/agent-server/scripts/office-preview-check.mjs +92 -0
  237. package/template/apps/agent-server/scripts/test-confinement.ts +58 -0
  238. package/template/apps/agent-server/scripts/test-coordinator.ts +36 -0
  239. package/template/apps/agent-server/scripts/test-runtime.ts +46 -0
  240. package/template/apps/agent-server/tsconfig.json +21 -0
  241. package/template/apps/server/Dockerfile +3 -0
  242. package/template/apps/server/package.json +5 -1
  243. package/template/apps/server/scripts/check-dsh-platform-example.ts +251 -0
  244. package/template/apps/server/src/agent/admin-catalog-bootstrap.ts +25 -0
  245. package/template/apps/server/src/agent/agent-session-bootstrap.ts +7 -8
  246. package/template/apps/server/src/agent/agent-session-facade.ts +12 -0
  247. package/template/apps/server/src/agent/agent-session-validation.ts +43 -0
  248. package/template/apps/server/src/agent/dsh-runtime-wire.test.ts +33 -0
  249. package/template/apps/server/src/agent/governance-runtime.ts +41 -0
  250. package/template/apps/server/src/agent/operation-catalog.test.ts +202 -0
  251. package/template/apps/server/src/agent/operation-catalog.ts +135 -0
  252. package/template/apps/server/src/agent/remote-runtime-response.ts +1 -1
  253. package/template/apps/server/src/agent/run-browser-visibility.test.ts +59 -0
  254. package/template/apps/server/src/agent/run-browser-visibility.ts +11 -0
  255. package/template/apps/server/src/agent/run-contracts.ts +1 -0
  256. package/template/apps/server/src/agent/run-definition-support.ts +9 -0
  257. package/template/apps/server/src/agent/run-operation-policy.ts +1 -0
  258. package/template/apps/server/src/agent/run-route-response.ts +35 -0
  259. package/template/apps/server/src/agent/run-routes.ts +46 -43
  260. package/template/apps/server/src/agent/runtime-bootstrap.ts +21 -20
  261. package/template/apps/server/src/agent/runtime-disabled-composition.ts +28 -0
  262. package/template/apps/server/src/agent/runtime-tool-composition.ts +2 -0
  263. package/template/apps/server/src/agent/session-projection-facade.ts +8 -9
  264. package/template/apps/server/src/agent/session-projection-governance.ts +10 -0
  265. package/template/apps/server/src/agent/session-projection-view.ts +19 -16
  266. package/template/apps/server/src/agent/session-recording-reader.contract.test.ts +131 -0
  267. package/template/apps/server/src/agent/session-recording-reader.ts +62 -0
  268. package/template/apps/server/src/agent/tool-catalog-audit.ts +22 -0
  269. package/template/apps/server/src/agent/tool-catalog-availability.ts +21 -0
  270. package/template/apps/server/src/agent/tool-catalog-routes.test.ts +103 -0
  271. package/template/apps/server/src/agent/tool-catalog-routes.ts +62 -0
  272. package/template/apps/server/src/agent/tool-catalog.test.ts +122 -0
  273. package/template/apps/server/src/agent/tool-catalog.ts +44 -0
  274. package/template/apps/server/src/agent/tool-registry.ts +45 -14
  275. package/template/apps/server/src/agent/workbench-bootstrap.ts +39 -0
  276. package/template/apps/server/src/agent/workbench-event-projection.ts +115 -0
  277. package/template/apps/server/src/agent/workbench-facade.contract.test.ts +189 -0
  278. package/template/apps/server/src/agent/workbench-facade.ts +339 -0
  279. package/template/apps/server/src/agent/workbench-recording.contract.test.ts +328 -0
  280. package/template/apps/server/src/agent/workbench-routes.ts +97 -0
  281. package/template/apps/server/src/agent/workbench-run-integration.test.ts +231 -0
  282. package/template/apps/server/src/agent/workbench-run-reader.ts +187 -0
  283. package/template/apps/server/src/agent/workbench-safe-result.ts +61 -0
  284. package/template/apps/server/src/agent/workbench-sse.ts +50 -0
  285. package/template/apps/server/src/agent/workflow-runtime-bootstrap.ts +9 -0
  286. package/template/apps/server/src/agent-skills/access.ts +88 -0
  287. package/template/apps/server/src/agent-skills/bootstrap.ts +49 -0
  288. package/template/apps/server/src/agent-skills/builtin-registration.ts +83 -0
  289. package/template/apps/server/src/agent-skills/builtins.ts +19 -0
  290. package/template/apps/server/src/agent-skills/bundle-zip.ts +163 -0
  291. package/template/apps/server/src/agent-skills/bundle.test.ts +79 -0
  292. package/template/apps/server/src/agent-skills/bundle.ts +133 -0
  293. package/template/apps/server/src/agent-skills/contracts.ts +46 -0
  294. package/template/apps/server/src/agent-skills/drizzle-repository.ts +125 -0
  295. package/template/apps/server/src/agent-skills/input.ts +29 -0
  296. package/template/apps/server/src/agent-skills/postgres.integration.test.ts +348 -0
  297. package/template/apps/server/src/agent-skills/read-routes.test.ts +116 -0
  298. package/template/apps/server/src/agent-skills/reader.ts +108 -0
  299. package/template/apps/server/src/agent-skills/repository.ts +105 -0
  300. package/template/apps/server/src/agent-skills/routes.ts +176 -0
  301. package/template/apps/server/src/agent-skills/service.test.ts +295 -0
  302. package/template/apps/server/src/agent-skills/service.ts +301 -0
  303. package/template/apps/server/src/agent-workflow/preset-registry.test.ts +137 -0
  304. package/template/apps/server/src/agent-workflow/preset-registry.ts +191 -0
  305. package/template/apps/server/src/agent-workflow/preset-routes.test.ts +94 -0
  306. package/template/apps/server/src/agent-workflow/preset-routes.ts +45 -0
  307. package/template/apps/server/src/agent-workflow/query-service.ts +36 -0
  308. package/template/apps/server/src/agent-workflow/recording-projection.contract.test.ts +196 -0
  309. package/template/apps/server/src/agent-workflow/recording-projection.ts +86 -0
  310. package/template/apps/server/src/ai-runtime-report/service.test.ts +10 -7
  311. package/template/apps/server/src/ai-runtime-report/service.ts +1 -1
  312. package/template/apps/server/src/app/agent-workflow-presets.ts +4 -0
  313. package/template/apps/server/src/app/dsh-skill-draft-audit.test.ts +195 -0
  314. package/template/apps/server/src/app/dsh-skill-draft-audit.ts +115 -0
  315. package/template/apps/server/src/app/dsh-workbench-audit.test.ts +71 -0
  316. package/template/apps/server/src/app/dsh-workbench-audit.ts +34 -0
  317. package/template/apps/server/src/app/dsh-workbench-handshake.test.ts +63 -0
  318. package/template/apps/server/src/app/dsh-workbench-handshake.ts +48 -0
  319. package/template/apps/server/src/app/dsh-workbench-http.test.ts +96 -0
  320. package/template/apps/server/src/app/dsh-workbench-lan-origin.test.ts +114 -0
  321. package/template/apps/server/src/app/dsh-workbench-launch.test.ts +70 -0
  322. package/template/apps/server/src/app/dsh-workbench-origin.test.ts +54 -0
  323. package/template/apps/server/src/app/dsh-workbench-proxy.ts +205 -0
  324. package/template/apps/server/src/app/dsh-workbench-session-conflict.test.ts +61 -0
  325. package/template/apps/server/src/app/dsh-workbench-session.ts +59 -0
  326. package/template/apps/server/src/app/dsh-workbench-socket-audit.test.ts +115 -0
  327. package/template/apps/server/src/app/dsh-workbench-socket.test.ts +246 -0
  328. package/template/apps/server/src/app/dsh-workbench-socket.ts +272 -0
  329. package/template/apps/server/src/app/dsh-workbench-test-support.ts +158 -0
  330. package/template/apps/server/src/app/dsh-workbench.test.ts +213 -0
  331. package/template/apps/server/src/app/dsh-workbench.ts +279 -0
  332. package/template/apps/server/src/app/workbench-public-origin.ts +16 -0
  333. package/template/apps/server/src/data-governance/user-plaintext-routes.test.ts +3 -0
  334. package/template/apps/server/src/http-app.ts +31 -0
  335. package/template/apps/server/src/mcp/adapter.ts +1 -0
  336. package/template/apps/server/src/module-composition.test.ts +23 -0
  337. package/template/apps/server/src/module-composition.ts +9 -2
  338. package/template/apps/server/src/observability/bootstrap.ts +12 -0
  339. package/template/apps/server/src/observability/diagnostic-failure-recorder.ts +94 -0
  340. package/template/apps/server/src/observability/diagnostic-http-contract.test.ts +42 -0
  341. package/template/apps/server/src/observability/diagnostic-index.test.ts +89 -0
  342. package/template/apps/server/src/observability/diagnostic-index.ts +88 -0
  343. package/template/apps/server/src/observability/diagnostic-repository.ts +67 -0
  344. package/template/apps/server/src/platform-app-bootstrap.ts +42 -0
  345. package/template/apps/server/src/platform-http-runtime.ts +6 -0
  346. package/template/apps/server/src/runtime-development.test.ts +25 -0
  347. package/template/apps/server/src/runtime-development.ts +6 -44
  348. package/template/apps/server/src/system/diagnostic-routes.test.ts +78 -0
  349. package/template/apps/server/src/system/diagnostic-routes.ts +66 -0
  350. package/template/apps/web/Dockerfile +9 -1
  351. package/template/apps/web/dev/start.ts +21 -10
  352. package/template/apps/web/dsh-workbench-location.ts +21 -0
  353. package/template/apps/web/dsh-workbench-proxy.test.ts +121 -0
  354. package/template/apps/web/dsh-workbench-proxy.ts +194 -0
  355. package/template/apps/web/package.json +3 -1
  356. package/template/apps/web/server.ts +27 -6
  357. package/template/apps/web/src/composables/useLoginFlow.ts +13 -1
  358. package/template/apps/web/src/pages/errors/PlatformErrorPage.vue +6 -0
  359. package/template/apps/web/src/pages/errors/PlatformErrorPage.webtest.ts +14 -1
  360. package/template/apps/web/src/pages/errors/error-page-extension.ts +1 -0
  361. package/template/apps/web/src/pages/system/AgentDebugPage.vue +14 -0
  362. package/template/apps/web/src/pages/system/AgentNativePage.vue +44 -0
  363. package/template/apps/web/src/pages/system/AgentSessionPage.vue +29 -8
  364. package/template/apps/web/src/pages/system/AgentToolsPage.vue +76 -0
  365. package/template/apps/web/src/pages/system/AgentWorkflowPage.vue +20 -7
  366. package/template/apps/web/src/pages/system/DiagnosticLookupPage.vue +56 -0
  367. package/template/apps/web/src/pages/system/DiagnosticLookupPage.webtest.ts +99 -0
  368. package/template/apps/web/src/pages/system/SystemAgentSkillsPage.vue +88 -0
  369. package/template/apps/web/src/pages/system/components/DiagnosticRecordDetails.vue +52 -0
  370. package/template/apps/web/src/pages/system/components/agent-skills/AgentSkillDetailDialog.vue +166 -0
  371. package/template/apps/web/src/pages/system/components/agent-skills/AgentSkillGovernanceActionDialog.vue +51 -0
  372. package/template/apps/web/src/pages/system/components/agent-skills/AgentSkillImportDialog.vue +320 -0
  373. package/template/apps/web/src/pages/system/components/agent-skills/AgentSkillImportDialog.webtest.ts +96 -0
  374. package/template/apps/web/src/pages/system/components/agent-skills/AgentSkillsTable.vue +69 -0
  375. package/template/apps/web/src/pages/system/components/agent-workbench/AgentWorkbench.vue +236 -0
  376. package/template/apps/web/src/pages/system/components/agent-workbench/DraftLeaveDialog.vue +34 -0
  377. package/template/apps/web/src/pages/system/components/agent-workbench/ReplayEventDetail.vue +175 -0
  378. package/template/apps/web/src/pages/system/components/agent-workbench/SessionReplayTimeline.vue +142 -0
  379. package/template/apps/web/src/pages/system/components/agent-workbench/SessionReplayTimeline.webtest.ts +242 -0
  380. package/template/apps/web/src/pages/system/components/agent-workbench/TestRunComposer.vue +97 -0
  381. package/template/apps/web/src/pages/system/components/agent-workbench/ToolCatalogPanel.vue +100 -0
  382. package/template/apps/web/src/pages/system/components/agent-workbench/ToolCatalogPanel.webtest.ts +55 -0
  383. package/template/apps/web/src/pages/system/components/agent-workbench/ToolRuleDetail.vue +81 -0
  384. package/template/apps/web/src/pages/system/components/agent-workbench/WorkbenchSessionList.vue +57 -0
  385. package/template/apps/web/src/pages/system/components/agent-workbench/catalog-presenter.ts +20 -0
  386. package/template/apps/web/src/pages/system/components/agent-workbench/replay-presenter.ts +94 -0
  387. package/template/apps/web/src/pages/system/components/agent-workflow/WorkflowPresetCatalog.vue +82 -0
  388. package/template/apps/web/src/pages/system/components/agent-workflow/WorkflowPresetCatalog.webtest.ts +57 -0
  389. package/template/apps/web/src/pages/system/composables/useAgentSkillsGovernance.ts +105 -0
  390. package/template/apps/web/src/pages/system/composables/useAgentWorkbench.ts +298 -0
  391. package/template/apps/web/src/pages/system/composables/useAgentWorkbench.webtest.ts +164 -0
  392. package/template/apps/web/src/pages/system/composables/useAgentWorkflowPresets.ts +44 -0
  393. package/template/apps/web/src/pages/system/composables/useDiagnosticLookup.ts +64 -0
  394. package/template/apps/web/src/pages/system/composables/useSessionReplay.ts +48 -0
  395. package/template/apps/web/src/router/error-navigation.ts +3 -1
  396. package/template/apps/web/src/router/error-navigation.webtest.ts +14 -2
  397. package/template/apps/web/src/router/index.ts +8 -45
  398. package/template/apps/web/src/router/platform-admin-pages.ts +79 -0
  399. package/template/apps/web/src/router/platform-admin-route-bindings.ts +12 -0
  400. package/template/apps/web/src/services/agent-admin-api.ts +155 -0
  401. package/template/apps/web/src/services/agent-admin-api.webtest.ts +120 -0
  402. package/template/apps/web/src/services/agent-skills-api.ts +55 -0
  403. package/template/apps/web/src/services/agent-workbench-event.ts +60 -0
  404. package/template/apps/web/src/services/agent-workflow-api.ts +12 -0
  405. package/template/apps/web/src/services/diagnostics-api.ts +12 -0
  406. package/template/apps/web/src/services/http.ts +18 -0
  407. package/template/apps/web/src/services/http.webtest.ts +51 -0
  408. package/template/apps/web/vite.config.ts +39 -0
  409. package/template/deploy/dsh/README.md +5 -0
  410. package/template/deploy/dsh/documents/README.md +9 -0
  411. package/template/deploy/dsh/documents/requirements.in +6 -0
  412. package/template/deploy/dsh/documents/requirements.lock +72 -0
  413. package/template/docker-compose.yml +24 -10
  414. package/template/docs/adr/0004-embedded-dsh-runtime.md +9 -0
  415. package/template/docs/architecture/agent-admin-workbench-implementation.md +73 -0
  416. package/template/docs/architecture/agent-admin-workbench-plan.md +41 -0
  417. package/template/docs/architecture/agent-harness.md +6 -0
  418. package/template/docs/architecture/agent-runtime-compatibility.md +2 -0
  419. package/template/docs/architecture/embedded-dsh-integration.md +44 -0
  420. package/template/docs/development/dsh-plugins.md +55 -0
  421. package/template/docs/operations/dsh-agent-migration.md +98 -0
  422. package/template/docs/platform/agent-production-store.md +5 -78
  423. package/template/docs/platform/agent-runtime-observability.md +2 -0
  424. package/template/docs/platform/agent-runtime.md +2 -0
  425. package/template/docs/platform/agent-skills.md +25 -0
  426. package/template/package.json +4 -3
  427. package/template/packages/database/drizzle/0064_dsh_skills_diagnostics.sql +42 -0
  428. package/template/packages/database/drizzle/meta/0064_snapshot.json +15349 -0
  429. package/template/packages/database/drizzle/meta/_journal.json +7 -0
  430. package/template/packages/database/package.json +2 -2
  431. package/template/packages/database/src/schema/agent-skills.ts +65 -0
  432. package/template/packages/database/src/schema/diagnostics.ts +27 -0
  433. package/template/packages/database/src/schema/index.ts +8 -0
  434. package/template/packages/modules/package.json +1 -1
  435. package/template/packages/modules/src/ai-operation-composition.ts +9 -0
  436. package/template/packages/modules/src/ai-operation-visibility.test.ts +33 -0
  437. package/template/packages/modules/src/manifest.ts +2 -0
  438. package/template/packages/modules/src/system-admin-routes.ts +40 -0
  439. package/template/packages/modules/src/system-admin-ui-catalog.ts +24 -11
  440. package/template/packages/modules/src/system-agent-admin-bindings.ts +44 -0
  441. package/template/packages/modules/src/system-agent-admin-menus.ts +46 -0
  442. package/template/packages/modules/src/system-agent-admin-registration.test.ts +52 -0
  443. package/template/packages/modules/src/system-agent-audit-actions.ts +8 -0
  444. package/template/packages/modules/src/system-agent-dsh.ts +119 -0
  445. package/template/packages/modules/src/system-ai-api-bindings.ts +2 -0
  446. package/template/packages/modules/src/system-api-permissions.ts +9 -0
  447. package/template/packages/modules/src/system-audit-actions.ts +36 -0
  448. package/template/packages/modules/src/system-features.ts +24 -0
  449. package/template/packages/modules/src/system-module-audit-selection.ts +25 -0
  450. package/template/packages/modules/src/system-module-catalog.ts +22 -40
  451. package/template/packages/modules/src/system-module-ownership.ts +12 -0
  452. package/template/packages/modules/src/system-modules.ts +16 -3
  453. package/template/packages/modules/src/system-permissions.ts +15 -0
  454. package/template/packages/server-sdk/index.ts +2 -0
  455. package/template/packages/server-sdk/package.json +2 -2
  456. package/template/packages/server-sdk/src/agent-session-provider.ts +19 -0
  457. package/template/packages/shared/index.ts +14 -0
  458. package/template/packages/shared/package.json +1 -1
  459. package/template/packages/shared/src/agent-admin-catalog.ts +73 -0
  460. package/template/packages/shared/src/agent-skills.ts +68 -0
  461. package/template/packages/shared/src/agent-workbench.ts +100 -0
  462. package/template/packages/shared/src/agent-workflow-presets.ts +26 -0
  463. package/template/packages/shared/src/diagnostics.ts +13 -0
  464. package/template/packages/shared/src/rbac.ts +1 -0
  465. package/template/apps/agent-server/install-python-dependencies.sh +0 -92
  466. package/template/apps/agent-server/pyproject.toml +0 -51
  467. package/template/apps/agent-server/src/southwind_agent_server/__init__.py +0 -5
  468. package/template/apps/agent-server/src/southwind_agent_server/app.py +0 -344
  469. package/template/apps/agent-server/src/southwind_agent_server/approval_resolution.py +0 -30
  470. package/template/apps/agent-server/src/southwind_agent_server/artifact_input.py +0 -153
  471. package/template/apps/agent-server/src/southwind_agent_server/asgi.py +0 -8
  472. package/template/apps/agent-server/src/southwind_agent_server/attempt_context.py +0 -199
  473. package/template/apps/agent-server/src/southwind_agent_server/attempt_context_projection.py +0 -203
  474. package/template/apps/agent-server/src/southwind_agent_server/client_completion_contracts.py +0 -61
  475. package/template/apps/agent-server/src/southwind_agent_server/client_completion_governance.py +0 -82
  476. package/template/apps/agent-server/src/southwind_agent_server/client_completion_routes.py +0 -121
  477. package/template/apps/agent-server/src/southwind_agent_server/client_completion_runtime.py +0 -158
  478. package/template/apps/agent-server/src/southwind_agent_server/config.py +0 -267
  479. package/template/apps/agent-server/src/southwind_agent_server/context_message_digest.py +0 -24
  480. package/template/apps/agent-server/src/southwind_agent_server/context_version_contracts.py +0 -71
  481. package/template/apps/agent-server/src/southwind_agent_server/context_version_port.py +0 -307
  482. package/template/apps/agent-server/src/southwind_agent_server/contracts.py +0 -297
  483. package/template/apps/agent-server/src/southwind_agent_server/deterministic.py +0 -63
  484. package/template/apps/agent-server/src/southwind_agent_server/engine.py +0 -134
  485. package/template/apps/agent-server/src/southwind_agent_server/engine_capacity.py +0 -31
  486. package/template/apps/agent-server/src/southwind_agent_server/engine_identity.py +0 -2
  487. package/template/apps/agent-server/src/southwind_agent_server/fingerprint.py +0 -61
  488. package/template/apps/agent-server/src/southwind_agent_server/health_routes.py +0 -93
  489. package/template/apps/agent-server/src/southwind_agent_server/http_helpers.py +0 -62
  490. package/template/apps/agent-server/src/southwind_agent_server/lease.py +0 -15
  491. package/template/apps/agent-server/src/southwind_agent_server/multimodal.py +0 -76
  492. package/template/apps/agent-server/src/southwind_agent_server/openai_engine.py +0 -329
  493. package/template/apps/agent-server/src/southwind_agent_server/openai_engine_validation.py +0 -165
  494. package/template/apps/agent-server/src/southwind_agent_server/openai_provider.py +0 -345
  495. package/template/apps/agent-server/src/southwind_agent_server/postgres_report_insert.py +0 -37
  496. package/template/apps/agent-server/src/southwind_agent_server/postgres_report_queries.py +0 -235
  497. package/template/apps/agent-server/src/southwind_agent_server/postgres_report_replay.py +0 -44
  498. package/template/apps/agent-server/src/southwind_agent_server/postgres_report_status.py +0 -83
  499. package/template/apps/agent-server/src/southwind_agent_server/postgres_report_store.py +0 -336
  500. package/template/apps/agent-server/src/southwind_agent_server/postgres_report_summary.py +0 -304
  501. package/template/apps/agent-server/src/southwind_agent_server/postgres_store.py +0 -335
  502. package/template/apps/agent-server/src/southwind_agent_server/postgres_store_backend.py +0 -333
  503. package/template/apps/agent-server/src/southwind_agent_server/provider_audit.py +0 -144
  504. package/template/apps/agent-server/src/southwind_agent_server/provider_governance.py +0 -309
  505. package/template/apps/agent-server/src/southwind_agent_server/provider_output_guidance.py +0 -34
  506. package/template/apps/agent-server/src/southwind_agent_server/readiness_pin.py +0 -37
  507. package/template/apps/agent-server/src/southwind_agent_server/report_lifecycle.py +0 -218
  508. package/template/apps/agent-server/src/southwind_agent_server/report_metrics.py +0 -149
  509. package/template/apps/agent-server/src/southwind_agent_server/report_presenter.py +0 -300
  510. package/template/apps/agent-server/src/southwind_agent_server/report_routes.py +0 -132
  511. package/template/apps/agent-server/src/southwind_agent_server/report_store.py +0 -298
  512. package/template/apps/agent-server/src/southwind_agent_server/report_store_protocol.py +0 -75
  513. package/template/apps/agent-server/src/southwind_agent_server/report_types.py +0 -118
  514. package/template/apps/agent-server/src/southwind_agent_server/run_admission.py +0 -64
  515. package/template/apps/agent-server/src/southwind_agent_server/run_capacity.py +0 -59
  516. package/template/apps/agent-server/src/southwind_agent_server/runtime_budget.py +0 -74
  517. package/template/apps/agent-server/src/southwind_agent_server/runtime_compatibility.py +0 -89
  518. package/template/apps/agent-server/src/southwind_agent_server/runtime_factory.py +0 -105
  519. package/template/apps/agent-server/src/southwind_agent_server/runtime_logging.py +0 -57
  520. package/template/apps/agent-server/src/southwind_agent_server/service.py +0 -325
  521. package/template/apps/agent-server/src/southwind_agent_server/service_control.py +0 -64
  522. package/template/apps/agent-server/src/southwind_agent_server/service_errors.py +0 -4
  523. package/template/apps/agent-server/src/southwind_agent_server/service_execution.py +0 -34
  524. package/template/apps/agent-server/src/southwind_agent_server/service_tasks.py +0 -34
  525. package/template/apps/agent-server/src/southwind_agent_server/signal_events.py +0 -53
  526. package/template/apps/agent-server/src/southwind_agent_server/sqlite_catalog.py +0 -118
  527. package/template/apps/agent-server/src/southwind_agent_server/sqlite_errors.py +0 -2
  528. package/template/apps/agent-server/src/southwind_agent_server/sqlite_schema.py +0 -73
  529. package/template/apps/agent-server/src/southwind_agent_server/sqlite_serialization.py +0 -16
  530. package/template/apps/agent-server/src/southwind_agent_server/sqlite_store.py +0 -350
  531. package/template/apps/agent-server/src/southwind_agent_server/sse.py +0 -41
  532. package/template/apps/agent-server/src/southwind_agent_server/store.py +0 -255
  533. package/template/apps/agent-server/src/southwind_agent_server/store_cipher.py +0 -40
  534. package/template/apps/agent-server/src/southwind_agent_server/structured_logging.py +0 -145
  535. package/template/apps/agent-server/src/southwind_agent_server/telemetry.py +0 -93
  536. package/template/apps/agent-server/src/southwind_agent_server/tool_host.py +0 -152
  537. package/template/apps/agent-server/src/southwind_agent_server/trajectory.py +0 -137
  538. package/template/apps/agent-server/src/southwind_agent_server/unavailable_engine.py +0 -58
  539. package/template/apps/agent-server/src/southwind_agent_server/vision_probe.py +0 -87
  540. package/template/apps/agent-server/src/southwind_agent_server/vision_requirement.py +0 -28
  541. package/template/apps/agent-server/src/southwind_agent_server/vlm_readiness.py +0 -247
  542. package/template/apps/agent-server/tests/__init__.py +0 -1
  543. package/template/apps/agent-server/tests/openai_provider_test_support.py +0 -131
  544. package/template/apps/agent-server/tests/test_api.py +0 -305
  545. package/template/apps/agent-server/tests/test_artifact_input.py +0 -110
  546. package/template/apps/agent-server/tests/test_client_completion.py +0 -230
  547. package/template/apps/agent-server/tests/test_config.py +0 -106
  548. package/template/apps/agent-server/tests/test_fingerprint.py +0 -10
  549. package/template/apps/agent-server/tests/test_multimodal.py +0 -81
  550. package/template/apps/agent-server/tests/test_openai_provider.py +0 -320
  551. package/template/apps/agent-server/tests/test_postgres_report_status.py +0 -59
  552. package/template/apps/agent-server/tests/test_postgres_report_summary.py +0 -298
  553. package/template/apps/agent-server/tests/test_postgres_store.py +0 -135
  554. package/template/apps/agent-server/tests/test_provider_attempt_reporting.py +0 -140
  555. package/template/apps/agent-server/tests/test_provider_governance.py +0 -276
  556. package/template/apps/agent-server/tests/test_report_attempt_lifecycle.py +0 -126
  557. package/template/apps/agent-server/tests/test_report_resilience.py +0 -183
  558. package/template/apps/agent-server/tests/test_report_routes.py +0 -143
  559. package/template/apps/agent-server/tests/test_report_store.py +0 -347
  560. package/template/apps/agent-server/tests/test_report_summary_parity.py +0 -116
  561. package/template/apps/agent-server/tests/test_report_terminal_sync.py +0 -177
  562. package/template/apps/agent-server/tests/test_run_capacity.py +0 -112
  563. package/template/apps/agent-server/tests/test_run_operational_logging.py +0 -114
  564. package/template/apps/agent-server/tests/test_runtime_compatibility.py +0 -119
  565. package/template/apps/agent-server/tests/test_runtime_factory_readiness.py +0 -52
  566. package/template/apps/agent-server/tests/test_sqlite_store.py +0 -182
  567. package/template/apps/agent-server/tests/test_structured_logging.py +0 -142
  568. package/template/apps/agent-server/tests/test_telemetry.py +0 -25
  569. package/template/apps/agent-server/tests/test_tool_approval.py +0 -28
  570. package/template/apps/agent-server/tests/test_tool_structured_output.py +0 -347
  571. package/template/apps/agent-server/tests/test_trajectory.py +0 -91
  572. package/template/apps/agent-server/tests/test_vision_readiness_enforcement.py +0 -72
  573. package/template/apps/agent-server/tests/test_vlm_readiness.py +0 -106
  574. package/template/apps/agent-server/uv.lock +0 -831
@@ -1,5 +1,8 @@
1
1
  import * as shared from "@southwind-ai/shared";
2
2
  import type { ModuleManifest } from "./manifest.js";
3
+ // @windy-module system.agent begin
4
+ import { dshFeatures } from "./system-agent-dsh.js";
5
+ // @windy-module system.agent end
3
6
 
4
7
  // @windy-module system.scheduler begin
5
8
  const standardAndAdvanced = ["standard", "advanced"].map(
@@ -90,6 +93,7 @@ export const systemFeatures: ModuleManifest["features"] = [
90
93
  "审计日志",
91
94
  "记录关键配置、权限拒绝与业务操作,支持安全追溯。",
92
95
  ),
96
+ feature("system.diagnostics", "错误诊断", "按诊断编号查询脱敏失败索引。"),
93
97
  // @windy-module system.audit end
94
98
  // @windy-module system.storage begin
95
99
  feature(
@@ -129,6 +133,26 @@ export const systemFeatures: ModuleManifest["features"] = [
129
133
  dependencies: [shared.featureKey("system.agent")],
130
134
  allowedLicenseVersions: [shared.licenseVersionKey("advanced")],
131
135
  },
136
+ {
137
+ ...feature(
138
+ "system.agent-tools",
139
+ "Agent 工具目录",
140
+ "查看已安装模块工具的契约、治理规则和当前调用条件。",
141
+ ),
142
+ dependencies: [shared.featureKey("system.agent")],
143
+ },
144
+ {
145
+ ...feature(
146
+ "system.agent-debug",
147
+ "Agent 调试工作台",
148
+ "创建受治理的测试会话,回放授权业务会话并定位实际调用流程。",
149
+ ),
150
+ dependencies: [
151
+ shared.featureKey("system.agent"),
152
+ shared.featureKey("system.agent-session"),
153
+ ],
154
+ },
155
+ ...dshFeatures,
132
156
  // @windy-module system.agent end
133
157
  // @windy-module system.operations begin
134
158
  feature(
@@ -0,0 +1,25 @@
1
+ import type { ModuleManifest } from "./manifest.js";
2
+ import { auditActionKey } from "./system-module-ownership.js";
3
+ // @windy-module system.agent begin
4
+ import { agentAuditActionKeys } from "./system-agent-audit-actions.js";
5
+ // @windy-module system.agent end
6
+ const agentActions = new Set<string>();
7
+ // @windy-module system.agent begin
8
+ for (const key of agentAuditActionKeys) agentActions.add(key);
9
+ // @windy-module system.agent end
10
+ export function selectSystemAuditActions(
11
+ name: string,
12
+ actions: ModuleManifest["auditActions"],
13
+ ) {
14
+ return actions.filter((action) => {
15
+ const key = auditActionKey(action);
16
+ if (name === "system.identity")
17
+ return key === "system.user-directory.query";
18
+ if (name === "system.agent") return agentActions.has(key);
19
+ return (
20
+ name === "system" &&
21
+ key !== "system.user-directory.query" &&
22
+ !agentActions.has(key)
23
+ );
24
+ });
25
+ }
@@ -1,17 +1,9 @@
1
1
  import type { ModuleFactory, ModuleManifest } from "./manifest.js";
2
+ import { permissionResource } from "./system-module-ownership.js";
2
3
  import { selectSystemMenus } from "./system-module-menu-selection.js";
3
4
  import { systemFoundationModule } from "./system-modules.js";
4
5
  import { selectSystemJsonSchemas } from "./system-module-schema-catalog.js";
5
- // @windy-module system.agent begin
6
- import { agentAuditActionKeys } from "./system-agent-audit-actions.js";
7
- // @windy-module system.agent end
8
-
9
- const catalogAgentModuleNames = new Set<string>();
10
- const catalogAgentAuditActionKeys = new Set<string>();
11
- // @windy-module system.agent begin
12
- catalogAgentModuleNames.add("system.agent");
13
- for (const key of agentAuditActionKeys) catalogAgentAuditActionKeys.add(key);
14
- // @windy-module system.agent end
6
+ import { selectSystemAuditActions } from "./system-module-audit-selection.js";
15
7
 
16
8
  export interface SystemModuleDefinition {
17
9
  name: string;
@@ -109,8 +101,8 @@ export const systemModuleDefinitions = [
109
101
  label: "审计日志",
110
102
  description: "关键操作、权限拒绝和系统异常的安全追溯。",
111
103
  dependencies: ["system"],
112
- resources: ["audit"],
113
- featureKeys: ["system.audit"],
104
+ resources: ["audit", "diagnostics"],
105
+ featureKeys: ["system.audit", "system.diagnostics"],
114
106
  },
115
107
  // @windy-module system.audit end
116
108
  // @windy-module system.storage begin
@@ -138,9 +130,22 @@ export const systemModuleDefinitions = [
138
130
  "system.scheduler",
139
131
  "system.workflow",
140
132
  ],
141
- resources: ["agent", "agent-session", "agent-workflow", "ai-runtime"],
133
+ resources: [
134
+ "agent",
135
+ "agent-tools",
136
+ "agent-debug",
137
+ "agent-workbench",
138
+ "agent-skill",
139
+ "agent-session",
140
+ "agent-workflow",
141
+ "ai-runtime",
142
+ ],
142
143
  featureKeys: [
143
144
  "system.agent",
145
+ "system.agent-tools",
146
+ "system.agent-debug",
147
+ "system.agent-workbench",
148
+ "system.agent-skill",
144
149
  "system.agent-session",
145
150
  "system.agent-workflow",
146
151
  "system.ai-runtime",
@@ -310,22 +315,10 @@ function createSystemCapabilityModule(
310
315
  definition.name === "system.data-governance"
311
316
  ? aggregate.dataPolicies
312
317
  : [],
313
- auditActions: isCore
314
- ? aggregate.auditActions.filter(
315
- (action) =>
316
- auditActionKey(action) !== "system.user-directory.query" &&
317
- !catalogAgentAuditActionKeys.has(auditActionKey(action)),
318
- )
319
- : definition.name === "system.identity"
320
- ? aggregate.auditActions.filter(
321
- (action) =>
322
- auditActionKey(action) === "system.user-directory.query",
323
- )
324
- : catalogAgentModuleNames.has(definition.name)
325
- ? aggregate.auditActions.filter((action) =>
326
- catalogAgentAuditActionKeys.has(auditActionKey(action)),
327
- )
328
- : [],
318
+ auditActions: selectSystemAuditActions(
319
+ definition.name,
320
+ aggregate.auditActions,
321
+ ),
329
322
  metadata: {
330
323
  kind: "platform-capability",
331
324
  ...(definition.runtimeActivation
@@ -334,14 +327,3 @@ function createSystemCapabilityModule(
334
327
  },
335
328
  };
336
329
  }
337
-
338
- function auditActionKey(
339
- action: ModuleManifest["auditActions"][number],
340
- ): string {
341
- return typeof action === "string" ? action : action.key;
342
- }
343
-
344
- function permissionResource(permissionKey: string): string {
345
- const parts = permissionKey.split(".");
346
- return parts.length >= 3 ? parts.slice(1, -1).join(".") : "";
347
- }
@@ -0,0 +1,12 @@
1
+ import type { ModuleManifest } from "./manifest.js";
2
+
3
+ export function auditActionKey(
4
+ action: ModuleManifest["auditActions"][number],
5
+ ): string {
6
+ return typeof action === "string" ? action : action.key;
7
+ }
8
+
9
+ export function permissionResource(permissionKey: string): string {
10
+ const parts = permissionKey.split(".");
11
+ return parts.length >= 3 ? parts.slice(1, -1).join(".") : "";
12
+ }
@@ -4,6 +4,7 @@ import {
4
4
  systemAgentToolSchemas,
5
5
  systemAgentTools,
6
6
  } from "./system-agent-tools.js";
7
+ import { systemAgentAdminMenus } from "./system-agent-admin-menus.js";
7
8
  import { systemAgentSupervisorSchemas } from "./system-agent-supervisor.js";
8
9
  // @windy-module system.agent end
9
10
  import { systemAdminRoutes } from "./system-admin-routes.js";
@@ -216,6 +217,17 @@ export function systemFoundationModule(): ModuleManifest {
216
217
  permissionKey: "system.audit.read",
217
218
  featureKey: "system.audit",
218
219
  },
220
+ {
221
+ key: "system.diagnostics",
222
+ title: "错误诊断",
223
+ type: "menu",
224
+ order: 25,
225
+ visible: true,
226
+ path: "/admin/system/diagnostics",
227
+ icon: "bug",
228
+ permissionKey: "system.diagnostics.read",
229
+ featureKey: "system.diagnostics",
230
+ },
219
231
  // @windy-module system.audit end
220
232
  ],
221
233
  },
@@ -241,11 +253,12 @@ export function systemFoundationModule(): ModuleManifest {
241
253
  },
242
254
  // @windy-module system.operations end
243
255
  // @windy-module system.agent begin
256
+ ...systemAgentAdminMenus,
244
257
  {
245
258
  key: "system.agent-session",
246
259
  title: "Agent 会话",
247
260
  type: "menu",
248
- order: 14,
261
+ order: 16,
249
262
  visible: true,
250
263
  path: "/admin/system/agent-sessions",
251
264
  icon: "messages-square",
@@ -256,7 +269,7 @@ export function systemFoundationModule(): ModuleManifest {
256
269
  key: "system.ai-runtime",
257
270
  title: "AI Runtime 报表",
258
271
  type: "menu",
259
- order: 15,
272
+ order: 17,
260
273
  visible: true,
261
274
  path: "/admin/system/ai-runtime",
262
275
  icon: "activity",
@@ -267,7 +280,7 @@ export function systemFoundationModule(): ModuleManifest {
267
280
  key: "system.agent-workflow",
268
281
  title: "Agent Workflow",
269
282
  type: "menu",
270
- order: 16,
283
+ order: 18,
271
284
  visible: true,
272
285
  path: "/admin/system/agent-workflows",
273
286
  icon: "git-fork",
@@ -19,9 +19,14 @@ const systemResourceLabels = {
19
19
  profile: "个人设置",
20
20
  license: "许可证管理",
21
21
  audit: "审计日志",
22
+ diagnostics: "错误诊断",
22
23
  // @windy-module system.agent begin
23
24
  agent: "智能代理",
24
25
  "agent-session": "Agent 长期会话",
26
+ "agent-tools": "Agent 工具目录",
27
+ "agent-debug": "Agent 调试工作台",
28
+ "agent-workbench": "Agent 原生工作台",
29
+ "agent-skill": "Agent 技能治理",
25
30
  "agent-workflow": "Agent Workflow",
26
31
  "ai-runtime": "AI Runtime 报表",
27
32
  // @windy-module system.agent end
@@ -36,6 +41,8 @@ const systemResourceLabels = {
36
41
  type SystemResource = keyof typeof systemResourceLabels;
37
42
  type SystemAction =
38
43
  | "access"
44
+ | "use"
45
+ | "execute"
39
46
  | "read"
40
47
  | "create"
41
48
  | "approve"
@@ -126,9 +133,17 @@ export const systemPermissions: ModuleManifest["permissions"] = [
126
133
  // @windy-module system.license end
127
134
  // @windy-module system.audit begin
128
135
  permission("audit", "read"),
136
+ permission("diagnostics", "read"),
129
137
  // @windy-module system.audit end
130
138
  // @windy-module system.agent begin
131
139
  permission("agent", "read"),
140
+ permission("agent-tools", "read"),
141
+ permission("agent-debug", "read"),
142
+ permission("agent-debug", "manage"),
143
+ permission("agent-workbench", "use"),
144
+ permission("agent-skill", "read"),
145
+ permission("agent-skill", "manage"),
146
+ permission("agent-skill", "execute"),
132
147
  permission("agent-session", "read"),
133
148
  permission("agent-session", "manage"),
134
149
  permission("agent-workflow", "read", "sensitive-disclosure"),
@@ -78,6 +78,8 @@ export type {
78
78
  ModuleAgentSessionGetInputV1,
79
79
  ModuleAgentSessionListInputV1,
80
80
  ModuleAgentSessionMessageV1,
81
+ ModuleAgentSessionRunReferenceV1,
82
+ ModuleAgentSessionWorkflowReferenceV1,
81
83
  ModuleAgentSessionPageV1,
82
84
  ModuleAgentSessionProviderV1,
83
85
  ModuleAgentSessionSummaryV1,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@southwind-ai/server-sdk",
3
- "version": "0.5.1",
3
+ "version": "0.5.2",
4
4
  "license": "UNLICENSED",
5
5
  "type": "module",
6
6
  "engines": {
@@ -68,7 +68,7 @@
68
68
  "dependencies": {
69
69
  "@southwind-ai/jobs": "workspace:^",
70
70
  "@southwind-ai/modules": "workspace:^",
71
- "@southwind-ai/shared": "workspace:^0.3.0",
71
+ "@southwind-ai/shared": "workspace:^0.3.2",
72
72
  "@southwind-ai/storage": "workspace:^"
73
73
  },
74
74
  "exports": {
@@ -43,6 +43,25 @@ export interface ModuleAgentSessionMessageV1 {
43
43
 
44
44
  export interface ModuleAgentSessionV1 extends ModuleAgentSessionSummaryV1 {
45
45
  readonly messages: readonly ModuleAgentSessionMessageV1[];
46
+ /** Provider 返回了有界历史窗口;不得把该窗口当作完整会话。 */
47
+ readonly truncated?: boolean;
48
+ /** 当前 get() 已按业务来源重授权的关联事实;Host 仍逐 Run/Workflow 重授权。 */
49
+ readonly runRefs?: readonly ModuleAgentSessionRunReferenceV1[];
50
+ readonly workflowRefs?: readonly ModuleAgentSessionWorkflowReferenceV1[];
51
+ }
52
+
53
+ export interface ModuleAgentSessionRunReferenceV1 {
54
+ readonly runId: string;
55
+ readonly operationKey: string;
56
+ readonly messageSequence?: number;
57
+ readonly sessionId?: string;
58
+ readonly turnId?: string;
59
+ readonly workflowRunId?: string;
60
+ }
61
+
62
+ export interface ModuleAgentSessionWorkflowReferenceV1 {
63
+ readonly workflowRunId: string;
64
+ readonly messageSequence?: number;
46
65
  }
47
66
 
48
67
  /**
@@ -2,6 +2,8 @@ export * from "./src/audit.js";
2
2
  export * from "./src/ai-operation-readiness.js";
3
3
  // @windy-module system.agent begin
4
4
  export * from "./src/ai-runtime-report.js";
5
+ export * from "./src/agent-admin-catalog.js";
6
+ export * from "./src/agent-workbench.js";
5
7
  export * from "./src/agent-workflow.js";
6
8
  export * from "./src/agent-workflow-events.js";
7
9
  export * from "./src/agent-workflow-evaluation.js";
@@ -33,3 +35,15 @@ export * from "./src/stable-key.js";
33
35
  export * from "./src/workflow.js";
34
36
 
35
37
  export * from "./src/license-console-capabilities.js";
38
+
39
+ // @windy-module system.agent begin
40
+ export * from "./src/agent-skills.js";
41
+ // @windy-module system.agent end
42
+
43
+ // @windy-module system.audit begin
44
+ export * from "./src/diagnostics.js";
45
+ // @windy-module system.audit end
46
+
47
+ // @windy-module system.agent begin
48
+ export * from "./src/agent-workflow-presets.js";
49
+ // @windy-module system.agent end
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@southwind-ai/shared",
3
- "version": "0.3.1",
3
+ "version": "0.3.2",
4
4
  "license": "UNLICENSED",
5
5
  "type": "module",
6
6
  "engines": {
@@ -0,0 +1,73 @@
1
+ import type { JsonObject } from "./json.js";
2
+ import type { CandidateRole } from "./workflow.js";
3
+
4
+ /** Public, bounded categories; never include raw Guard events or Provider bodies. */
5
+ export type AgentAdminAvailabilityReason =
6
+ | "allowed"
7
+ | "permission-denied"
8
+ | "feature-unavailable"
9
+ | "license-unavailable"
10
+ | "scope-unavailable"
11
+ | "runtime-unavailable"
12
+ | "workflow-only"
13
+ | "internal-operation"
14
+ | "unsupported-operation"
15
+ | "handler-unavailable"
16
+ | "governance-unavailable";
17
+
18
+ export interface AgentAdminToolCatalogItem {
19
+ readonly key: string;
20
+ readonly label: string;
21
+ readonly description: string;
22
+ readonly module: string;
23
+ readonly operation: "query" | "command" | "background";
24
+ readonly featureKey: string;
25
+ readonly permissionKey: string;
26
+ readonly auditAction: string;
27
+ readonly scopeMode: "platform" | "request";
28
+ readonly executionMode: "host" | "sandbox";
29
+ readonly dataClassification: "public" | "internal" | "sensitive";
30
+ readonly approval: "none" | "required";
31
+ readonly approvalRoles?: readonly CandidateRole[];
32
+ readonly approvalTimeoutSeconds?: number;
33
+ readonly idempotency: "none" | "supported" | "required";
34
+ readonly limits: AgentAdminCatalogLimits;
35
+ readonly inputSchemaKey: string;
36
+ readonly outputSchemaKey: string;
37
+ readonly inputSchema: JsonObject;
38
+ readonly outputSchema: JsonObject;
39
+ readonly allowedOperationKeys: readonly string[];
40
+ /** Current Guard + Scope eligibility, not an execution or approval grant. */
41
+ readonly allowed: boolean;
42
+ readonly availabilityReason: AgentAdminAvailabilityReason;
43
+ }
44
+
45
+ export interface AgentAdminCatalogLimits {
46
+ readonly maxDurationSeconds: number;
47
+ readonly maxInputBytes: number;
48
+ readonly maxOutputBytes: number;
49
+ }
50
+
51
+ export interface AgentAdminOperationCatalogItem {
52
+ readonly key: string;
53
+ readonly module: string;
54
+ readonly moduleLabel: string;
55
+ readonly kind: string;
56
+ readonly visibility: "public" | "internal";
57
+ readonly execution: string;
58
+ readonly featureKey: string;
59
+ readonly permissionKey: string;
60
+ readonly auditAction: string;
61
+ readonly dataClassification: "public" | "internal" | "sensitive";
62
+ readonly requiredCapabilities: readonly string[];
63
+ readonly inputModalities: readonly string[];
64
+ readonly inputSchemaKey: string;
65
+ readonly outputSchemaKey: string;
66
+ readonly inputSchema?: JsonObject;
67
+ readonly outputSchema?: JsonObject;
68
+ readonly allowedToolKeys: readonly string[];
69
+ readonly limits: AgentAdminCatalogLimits;
70
+ readonly launchAuthority: "direct" | "workflow-artifact";
71
+ readonly selectable: boolean;
72
+ readonly availabilityReason: AgentAdminAvailabilityReason;
73
+ }
@@ -0,0 +1,68 @@
1
+ /** DSH 技能是工作方法与文件包,不能授予业务权限或承载可执行授权。 */
2
+ export type AgentSkillScope = "personal" | "department" | "tenant";
3
+ export type AgentSkillOrigin = "builtin" | "shared";
4
+ export type AgentSkillStatus = "published" | "disabled";
5
+ export interface AgentSkillRequirement {
6
+ readonly toolKey: string;
7
+ readonly featureKey: string;
8
+ readonly permissionKey: string;
9
+ }
10
+ export interface AgentSkillFile {
11
+ readonly path: string;
12
+ readonly contentBase64: string;
13
+ }
14
+ export interface AgentSkillBundle {
15
+ readonly name: string;
16
+ readonly displayName: string;
17
+ readonly description: string;
18
+ readonly digest: string;
19
+ readonly files: readonly AgentSkillFile[];
20
+ }
21
+ export interface AgentSkillVersion {
22
+ readonly key: string;
23
+ readonly version: number;
24
+ readonly tenantId: string;
25
+ readonly ownerActorId: string;
26
+ readonly departmentId?: string;
27
+ readonly scope: AgentSkillScope;
28
+ readonly origin: AgentSkillOrigin;
29
+ readonly status: AgentSkillStatus;
30
+ readonly name: string;
31
+ readonly description: string;
32
+ readonly digest: string;
33
+ readonly requirements: readonly AgentSkillRequirement[];
34
+ readonly safetyConstraints: readonly string[];
35
+ readonly createdAt: string;
36
+ readonly createdBy: string;
37
+ readonly restoredFromVersion?: number;
38
+ readonly source: string;
39
+ }
40
+ export interface AgentSkillGovernanceItem {
41
+ readonly skill: AgentSkillVersion;
42
+ readonly available: boolean;
43
+ readonly governable: boolean;
44
+ }
45
+ export interface ImportAgentSkillRequest {
46
+ readonly format: "markdown" | "zip";
47
+ /** SKILL.md 正文,或 ZIP 的标准 base64。 */
48
+ readonly content: string;
49
+ readonly scope: AgentSkillScope;
50
+ readonly expectedVersion: number;
51
+ readonly requirements?: readonly AgentSkillRequirement[];
52
+ readonly safetyConstraints?: readonly string[];
53
+ }
54
+ export interface AgentSkillCommandRequest {
55
+ readonly expectedVersion: number;
56
+ readonly version?: number;
57
+ }
58
+ export interface PublishedAgentSkillBundle {
59
+ readonly skill: AgentSkillVersion;
60
+ readonly bundle: AgentSkillBundle;
61
+ }
62
+
63
+ export interface AgentSkillRuntimeBundle {
64
+ readonly key: string;
65
+ readonly version: number;
66
+ readonly digest: string;
67
+ readonly files: readonly AgentSkillFile[];
68
+ }
@@ -0,0 +1,100 @@
1
+ import type { JsonValue } from "./json.js";
2
+
3
+ export type AgentWorkbenchRecordingSourceV1 = "harness" | "business";
4
+ export type AgentWorkbenchCorrelationStatusV1 =
5
+ | "complete"
6
+ | "partial"
7
+ | "missing";
8
+
9
+ export interface AgentWorkbenchEventV1 {
10
+ readonly sequence: number;
11
+ readonly type: string;
12
+ readonly summary: string;
13
+ readonly occurredAt?: string;
14
+ readonly runId?: string;
15
+ readonly turnId?: string;
16
+ readonly stepId?: string;
17
+ readonly modelAttemptId?: string;
18
+ readonly attemptSequence?: number;
19
+ readonly toolCallId?: string;
20
+ readonly toolKey?: string;
21
+ readonly workItemId?: string;
22
+ readonly artifactId?: string;
23
+ readonly workflowRunId?: string;
24
+ readonly nodeRunId?: string;
25
+ readonly outcome?: string;
26
+ readonly usage?: {
27
+ readonly inputTokens?: number;
28
+ readonly outputTokens?: number;
29
+ readonly totalTokens?: number;
30
+ readonly costMicros?: number;
31
+ };
32
+ }
33
+
34
+ export interface AgentWorkbenchRunV1 {
35
+ readonly runId: string;
36
+ readonly operationKey: string;
37
+ readonly sessionId?: string;
38
+ readonly turnId?: string;
39
+ readonly messageSequence?: number;
40
+ readonly status: string;
41
+ readonly events: readonly AgentWorkbenchEventV1[];
42
+ readonly result?: { readonly output?: JsonValue; readonly status?: string };
43
+ readonly correlationStatus: AgentWorkbenchCorrelationStatusV1;
44
+ readonly missing: readonly string[];
45
+ }
46
+
47
+ export interface AgentWorkbenchWorkflowV1 {
48
+ readonly workflowRunId: string;
49
+ readonly sessionId?: string;
50
+ readonly messageSequence?: number;
51
+ readonly workflowKey: string;
52
+ readonly title: string;
53
+ readonly status: string;
54
+ readonly parentRunId?: string;
55
+ readonly parentNodeRunId?: string;
56
+ readonly nodes: readonly {
57
+ readonly nodeRunId: string;
58
+ readonly nodeId: string;
59
+ readonly type: string;
60
+ readonly status: string;
61
+ readonly attempt: number;
62
+ readonly previousNodeRunId?: string;
63
+ readonly agentRunId?: string;
64
+ readonly workItemId?: string;
65
+ readonly selectedBranch?: string;
66
+ readonly artifactIds: readonly string[];
67
+ }[];
68
+ readonly events: readonly AgentWorkbenchEventV1[];
69
+ }
70
+
71
+ export interface AgentWorkbenchRecordingSummaryV1 {
72
+ readonly source: AgentWorkbenchRecordingSourceV1;
73
+ readonly sessionId: string;
74
+ readonly title: string;
75
+ readonly updatedAt: string;
76
+ readonly operationKey?: string;
77
+ readonly sessionStatus?: "active" | "archived";
78
+ }
79
+
80
+ export interface AgentWorkbenchRecordingV1 extends AgentWorkbenchRecordingSummaryV1 {
81
+ readonly mode: "read-only";
82
+ readonly sideEffectPolicy: "no-reexecution";
83
+ readonly correlationStatus: AgentWorkbenchCorrelationStatusV1;
84
+ readonly messages: readonly {
85
+ readonly sequence: number;
86
+ readonly role: "user" | "assistant";
87
+ readonly content: string;
88
+ readonly createdAt: string;
89
+ }[];
90
+ readonly timeline: readonly AgentWorkbenchEventV1[];
91
+ /** Parent forks retain separate original ledger sequences, never renumbered. */
92
+ readonly segments?: readonly {
93
+ readonly sessionId: string;
94
+ readonly throughSequence: number;
95
+ readonly timeline: readonly AgentWorkbenchEventV1[];
96
+ }[];
97
+ readonly runs: readonly AgentWorkbenchRunV1[];
98
+ readonly workflows: readonly AgentWorkbenchWorkflowV1[];
99
+ readonly missing: readonly string[];
100
+ }
@@ -0,0 +1,26 @@
1
+ import type { AgentWorkflowBudget } from "./agent-workflow-run.js";
2
+ import type { AgentWorkflowNodeType } from "./agent-workflow-definition.js";
3
+
4
+ export interface AgentWorkflowPresetSummary {
5
+ readonly key: string;
6
+ readonly moduleKey: string;
7
+ readonly label: string;
8
+ readonly description: string;
9
+ readonly workflowKey: string;
10
+ readonly version: string;
11
+ readonly budget: AgentWorkflowBudget;
12
+ readonly nodes: readonly {
13
+ readonly id: string;
14
+ readonly label: string;
15
+ readonly type: AgentWorkflowNodeType;
16
+ }[];
17
+ readonly availability: "available" | "unavailable";
18
+ readonly safeCode?: string;
19
+ readonly blockedReason?: string;
20
+ /** 由所属模块注册的业务入口;目录本身不发布或启动 Workflow。 */
21
+ readonly entry?: { readonly path: string; readonly label: string };
22
+ }
23
+
24
+ export interface AgentWorkflowPresetListResponse {
25
+ readonly items: readonly AgentWorkflowPresetSummary[];
26
+ }
@@ -0,0 +1,13 @@
1
+ /** 可向授权运维人员公开的失败索引,不包含业务正文、异常堆栈或身份凭据。 */
2
+ export interface DiagnosticRecord {
3
+ readonly diagnosticId: string;
4
+ readonly requestId: string;
5
+ readonly occurredAt: string;
6
+ readonly expiresAt: string;
7
+ readonly service: "server";
8
+ readonly stage: "http";
9
+ readonly method: string;
10
+ readonly route: string;
11
+ readonly statusCode: number;
12
+ readonly errorCode: string;
13
+ }
@@ -24,6 +24,7 @@ export type PermissionAction =
24
24
  | "reveal"
25
25
  | "approve"
26
26
  | "execute"
27
+ | "use"
27
28
  | "retry"
28
29
  | "manage";
29
30