@xopcai/xopc 0.0.103 → 0.0.105

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 (950) hide show
  1. package/README.md +7 -4
  2. package/README.zh-CN.md +7 -4
  3. package/dist/_virtual/_rolldown/runtime.js +2 -3
  4. package/dist/browser-ext/manifest.json +1 -1
  5. package/dist/extensions/feishu/src/adapters/cli-login.d.ts +1 -1
  6. package/dist/extensions/feishu/src/adapters/cli-login.js +1 -1
  7. package/dist/extensions/feishu/src/adapters/cli-login.js.map +1 -1
  8. package/dist/extensions/feishu/src/adapters/gateway-setup.d.ts +2 -0
  9. package/dist/extensions/feishu/src/adapters/gateway-setup.js +225 -0
  10. package/dist/extensions/feishu/src/adapters/gateway-setup.js.map +1 -0
  11. package/dist/extensions/feishu/src/index.d.ts +8 -1
  12. package/dist/extensions/feishu/src/index.js +14 -1
  13. package/dist/extensions/feishu/src/index.js.map +1 -0
  14. package/dist/extensions/feishu/src/outbound/outbound-adapter.js +1 -1
  15. package/dist/extensions/feishu/src/plugin.d.ts +2 -1
  16. package/dist/extensions/feishu/src/plugin.js +2 -0
  17. package/dist/extensions/feishu/src/plugin.js.map +1 -1
  18. package/dist/extensions/feishu/src/streaming/streaming-adapter.js +1 -1
  19. package/dist/extensions/feishu/src/transport/webhook/monitor.js +1 -1
  20. package/dist/extensions/feishu/xopc.extension.json +66 -1
  21. package/dist/extensions/telegram/src/adapters/gateway-setup.d.ts +2 -0
  22. package/dist/extensions/telegram/src/adapters/gateway-setup.js +146 -0
  23. package/dist/extensions/telegram/src/adapters/gateway-setup.js.map +1 -0
  24. package/dist/extensions/telegram/src/adapters/security-adapter.js +1 -1
  25. package/dist/extensions/telegram/src/command-handler.js +1 -2
  26. package/dist/extensions/telegram/src/command-handler.js.map +1 -1
  27. package/dist/extensions/telegram/src/config-schema.js +2 -2
  28. package/dist/extensions/telegram/src/config-schema.js.map +1 -1
  29. package/dist/extensions/telegram/src/doctor.d.ts +1 -0
  30. package/dist/extensions/telegram/src/doctor.js +68 -0
  31. package/dist/extensions/telegram/src/doctor.js.map +1 -1
  32. package/dist/extensions/telegram/src/index.d.ts +8 -1
  33. package/dist/extensions/telegram/src/index.js +15 -2
  34. package/dist/extensions/telegram/src/index.js.map +1 -0
  35. package/dist/extensions/telegram/src/plugin.d.ts +13 -5
  36. package/dist/extensions/telegram/src/plugin.js +32 -12
  37. package/dist/extensions/telegram/src/plugin.js.map +1 -1
  38. package/dist/extensions/telegram/src/proxy-fetch.js +22 -5
  39. package/dist/extensions/telegram/src/proxy-fetch.js.map +1 -1
  40. package/dist/extensions/telegram/xopc.extension.json +412 -5
  41. package/dist/extensions/weixin/src/adapters/onboard-cli.js +2 -2
  42. package/dist/extensions/weixin/src/adapters/onboard-cli.js.map +1 -1
  43. package/dist/extensions/weixin/src/api/api.js +1 -1
  44. package/dist/extensions/weixin/src/index.d.ts +8 -0
  45. package/dist/extensions/weixin/src/index.js +12 -1
  46. package/dist/extensions/weixin/src/index.js.map +1 -0
  47. package/dist/extensions/weixin/src/messaging/process-message.js +1 -1
  48. package/dist/extensions/weixin/src/plugin.d.ts +2 -1
  49. package/dist/extensions/weixin/src/plugin.js +77 -2
  50. package/dist/extensions/weixin/src/plugin.js.map +1 -1
  51. package/dist/extensions/weixin/xopc.extension.json +52 -0
  52. package/dist/gateway/static/root/assets/agents-XzgIVKcI.js +396 -0
  53. package/dist/gateway/static/root/assets/{apps-page-C5RmwmTT.js → apps-page-B7Us3RMl.js} +1 -1
  54. package/dist/gateway/static/root/assets/browser-BLJWD7WI.js +8 -0
  55. package/dist/gateway/static/root/assets/channels-settings-BgeV6fzw.js +1 -0
  56. package/dist/gateway/static/root/assets/cron-page-DKGHEeAU.js +1 -0
  57. package/dist/gateway/static/root/assets/{dist-CWm8hTXZ.js → dist-DJDkNhu5.js} +1 -1
  58. package/dist/gateway/static/root/assets/{extension-debug-page-BzYgTkS9.js → extension-debug-page-DI1XJTJi.js} +1 -1
  59. package/dist/gateway/static/root/assets/{extension-page-BmTZH6gL.js → extension-page-SuafGTT_.js} +1 -1
  60. package/dist/gateway/static/root/assets/extension-settings-page-cKmGax9v.js +1 -0
  61. package/dist/gateway/static/root/assets/{fetch-CMoWY2Si.js → fetch-CkvRO30i.js} +1 -1
  62. package/dist/gateway/static/root/assets/gateway-startup-retry-BkKyRDrF.js +1 -0
  63. package/dist/gateway/static/root/assets/heartbeat-config-api-CRiDcxtt.js +1 -0
  64. package/dist/gateway/static/root/assets/index-50FVtgXU.js +4845 -0
  65. package/dist/gateway/static/root/assets/index-BPYKW7FB.css +1 -0
  66. package/dist/gateway/static/root/assets/{logs-page-BjdQjHwk.js → logs-page-DM8o5-Bm.js} +2 -2
  67. package/dist/gateway/static/root/assets/{note-detail-page-8Er4197b.js → note-detail-page-j53jtvq9.js} +53 -53
  68. package/dist/gateway/static/root/assets/{note-time-CF3vf1jm.js → note-time-Ck2H2Qpw.js} +1 -1
  69. package/dist/gateway/static/root/assets/notes-page-CsWIw35Q.js +1 -0
  70. package/dist/gateway/static/root/assets/schema-form-BvmGNxiJ.js +1 -0
  71. package/dist/gateway/static/root/assets/sessions-page-CLPsbyOW.js +1 -0
  72. package/dist/gateway/static/root/assets/settings-advanced-gate-DRdayl8P.js +2 -0
  73. package/dist/gateway/static/root/assets/{settings-form-section-C7qA7y0J.js → settings-form-section-BlIYg2gZ.js} +1 -1
  74. package/dist/gateway/static/root/assets/settings-page-CRGHT_bm.js +3 -0
  75. package/dist/gateway/static/root/assets/{share-preview-page-Tvr5Mtq5.js → share-preview-page-BlT6Akvk.js} +1 -1
  76. package/dist/gateway/static/root/assets/skills-page-Ce-RIH2y.js +2 -0
  77. package/dist/gateway/static/root/assets/{theme-store-HTvJlFLL.js → theme-store-DYgVdRB4.js} +1 -1
  78. package/dist/gateway/static/root/assets/url-DPEStU4M.js +3 -0
  79. package/dist/gateway/static/root/assets/voice-api-key-field-CJGTidqc.js +1 -0
  80. package/dist/gateway/static/root/assets/{workflow-page.utils-CeBkAjP7.js → workflow-page.utils-_sjXCMvi.js} +1 -1
  81. package/dist/gateway/static/root/assets/workflows-page-o63aaARK.js +27 -0
  82. package/dist/gateway/static/root/index.html +6 -5
  83. package/dist/package.js +1 -1
  84. package/dist/src/agent/agent-manager.d.ts +18 -6
  85. package/dist/src/agent/agent-manager.js +60 -35
  86. package/dist/src/agent/agent-manager.js.map +1 -1
  87. package/dist/src/agent/builtin-agent-ids.d.ts +2 -0
  88. package/dist/src/agent/builtin-agent-ids.js +17 -0
  89. package/dist/src/agent/builtin-agent-ids.js.map +1 -0
  90. package/dist/src/agent/child-agent-factory.d.ts +4 -0
  91. package/dist/src/agent/child-agent-factory.js +28 -8
  92. package/dist/src/agent/child-agent-factory.js.map +1 -1
  93. package/dist/src/agent/context/workspace-templates/AGENTS.md +23 -184
  94. package/dist/src/agent/embedded/run-turn.js +8 -2
  95. package/dist/src/agent/embedded/run-turn.js.map +1 -1
  96. package/dist/src/agent/embedded/session-tool-result-guard.js +1 -1
  97. package/dist/src/agent/embedded/subscribe-session.js +33 -51
  98. package/dist/src/agent/embedded/subscribe-session.js.map +1 -1
  99. package/dist/src/agent/embedded/types.d.ts +36 -35
  100. package/dist/src/agent/fallback/candidates.js +1 -1
  101. package/dist/src/agent/fallback/candidates.js.map +1 -1
  102. package/dist/src/agent/inbound/inbound-loop.js +1 -1
  103. package/dist/src/agent/inbound/turn-dispatcher.d.ts +3 -0
  104. package/dist/src/agent/inbound/turn-dispatcher.js +25 -5
  105. package/dist/src/agent/inbound/turn-dispatcher.js.map +1 -1
  106. package/dist/src/agent/models/manager.d.ts +1 -1
  107. package/dist/src/agent/models/manager.js +1 -1
  108. package/dist/src/agent/models/manager.js.map +1 -1
  109. package/dist/src/agent/orchestration/run-agent-turn-with-fallbacks.d.ts +1 -1
  110. package/dist/src/agent/orchestration/run-agent-turn-with-fallbacks.js +1 -1
  111. package/dist/src/agent/orchestration/run-agent-turn-with-fallbacks.js.map +1 -1
  112. package/dist/src/agent/prompt/memory/index.js +30 -2
  113. package/dist/src/agent/prompt/memory/index.js.map +1 -1
  114. package/dist/src/agent/prompt/sections/tooling.js +4 -0
  115. package/dist/src/agent/prompt/sections/tooling.js.map +1 -1
  116. package/dist/src/agent/service/direct-turn-helpers.d.ts +3 -0
  117. package/dist/src/agent/service/direct-turn-helpers.js +6 -3
  118. package/dist/src/agent/service/direct-turn-helpers.js.map +1 -1
  119. package/dist/src/agent/service/process-direct-streaming.d.ts +3 -0
  120. package/dist/src/agent/service/process-direct-streaming.js +50 -19
  121. package/dist/src/agent/service/process-direct-streaming.js.map +1 -1
  122. package/dist/src/agent/service-inbound-utils.d.ts +0 -1
  123. package/dist/src/agent/service-inbound-utils.js +1 -17
  124. package/dist/src/agent/service-inbound-utils.js.map +1 -1
  125. package/dist/src/agent/service.d.ts +4 -4
  126. package/dist/src/agent/service.js +29 -16
  127. package/dist/src/agent/service.js.map +1 -1
  128. package/dist/src/agent/service.types.d.ts +3 -0
  129. package/dist/src/agent/session/session-config-service.d.ts +1 -0
  130. package/dist/src/agent/session/session-config-service.js +9 -1
  131. package/dist/src/agent/session/session-config-service.js.map +1 -1
  132. package/dist/src/agent/session/session-inspector.d.ts +2 -1
  133. package/dist/src/agent/session/session-inspector.js +4 -0
  134. package/dist/src/agent/session/session-inspector.js.map +1 -1
  135. package/dist/src/agent/skills/config.js +1 -3
  136. package/dist/src/agent/skills/config.js.map +1 -1
  137. package/dist/src/agent/skills/format-skills-prompt.d.ts +1 -0
  138. package/dist/src/agent/skills/format-skills-prompt.js +3 -2
  139. package/dist/src/agent/skills/format-skills-prompt.js.map +1 -1
  140. package/dist/src/agent/skills/index.js +20 -5
  141. package/dist/src/agent/skills/index.js.map +1 -1
  142. package/dist/src/agent/skills/installer.js +14 -27
  143. package/dist/src/agent/skills/installer.js.map +1 -1
  144. package/dist/src/agent/skills/marketplace/adapters/clawhub/adapter.js +11 -1
  145. package/dist/src/agent/skills/marketplace/adapters/clawhub/adapter.js.map +1 -1
  146. package/dist/src/agent/skills/marketplace/adapters/skillhub/adapter.js +18 -4
  147. package/dist/src/agent/skills/marketplace/adapters/skillhub/adapter.js.map +1 -1
  148. package/dist/src/agent/skills/marketplace/adapters/store/adapter.js +11 -2
  149. package/dist/src/agent/skills/marketplace/adapters/store/adapter.js.map +1 -1
  150. package/dist/src/agent/skills/marketplace/adapters/store/store-api-client.d.ts +2 -2
  151. package/dist/src/agent/skills/marketplace/adapters/store/store-api-client.js.map +1 -1
  152. package/dist/src/agent/skills/skill-manager.d.ts +4 -1
  153. package/dist/src/agent/skills/skill-manager.js +3 -3
  154. package/dist/src/agent/skills/skill-manager.js.map +1 -1
  155. package/dist/src/agent/skills/skill-view-path.d.ts +1 -17
  156. package/dist/src/agent/skills/skill-view-path.js +3 -66
  157. package/dist/src/agent/skills/skill-view-path.js.map +1 -1
  158. package/dist/src/agent/skills/test-framework.js +2 -3
  159. package/dist/src/agent/skills/test-framework.js.map +1 -1
  160. package/dist/src/agent/source-context/index.d.ts +2 -0
  161. package/dist/src/agent/source-context/index.js +3 -0
  162. package/dist/src/agent/source-context/injector.d.ts +3 -0
  163. package/dist/src/agent/source-context/injector.js +36 -0
  164. package/dist/src/agent/source-context/injector.js.map +1 -0
  165. package/dist/src/agent/source-context/types.d.ts +19 -0
  166. package/dist/src/agent/source-context/types.js +10 -0
  167. package/dist/src/agent/source-context/types.js.map +1 -0
  168. package/dist/src/agent/streaming/reasoning-visibility-sse.js +1 -0
  169. package/dist/src/agent/streaming/reasoning-visibility-sse.js.map +1 -1
  170. package/dist/src/agent/tool-manuals/browser.d.ts +1 -0
  171. package/{skills/browser/SKILL.md → dist/src/agent/tool-manuals/browser.js} +51 -54
  172. package/dist/src/agent/tool-manuals/browser.js.map +1 -0
  173. package/dist/src/agent/tool-manuals/index.d.ts +10 -0
  174. package/dist/src/agent/tool-manuals/index.js +28 -0
  175. package/dist/src/agent/tool-manuals/index.js.map +1 -0
  176. package/dist/src/agent/tools/browser/tool/browser-use-tool.js +1 -1
  177. package/dist/src/agent/tools/browser/tool/browser-use-tool.js.map +1 -1
  178. package/dist/src/agent/tools/factory.js +2 -0
  179. package/dist/src/agent/tools/factory.js.map +1 -1
  180. package/dist/src/agent/tools/index.d.ts +1 -0
  181. package/dist/src/agent/tools/index.js +2 -1
  182. package/dist/src/agent/tools/skills-tools.js +37 -8
  183. package/dist/src/agent/tools/skills-tools.js.map +1 -1
  184. package/dist/src/agent/tools/tool-manual-tool.d.ts +6 -0
  185. package/dist/src/agent/tools/tool-manual-tool.js +34 -0
  186. package/dist/src/agent/tools/tool-manual-tool.js.map +1 -0
  187. package/dist/src/agent/workflow/catalog.d.ts +7 -2
  188. package/dist/src/agent/workflow/catalog.js +66 -25
  189. package/dist/src/agent/workflow/catalog.js.map +1 -1
  190. package/dist/src/agent/workflow/subagent-runner.d.ts +3 -0
  191. package/dist/src/agent/workflow/subagent-runner.js +50 -4
  192. package/dist/src/agent/workflow/subagent-runner.js.map +1 -1
  193. package/dist/src/agent/workflow/types.d.ts +10 -0
  194. package/dist/src/auth/credentials.js +10 -5
  195. package/dist/src/auth/credentials.js.map +1 -1
  196. package/dist/src/channels/catalog/channel-catalog-service.d.ts +11 -0
  197. package/dist/src/channels/catalog/channel-catalog-service.js +168 -0
  198. package/dist/src/channels/catalog/channel-catalog-service.js.map +1 -0
  199. package/dist/src/channels/catalog/channel-catalog-types.d.ts +22 -0
  200. package/dist/src/channels/catalog/channel-catalog-types.js +1 -0
  201. package/dist/src/channels/dock.d.ts +0 -7
  202. package/dist/src/channels/dock.js +1 -21
  203. package/dist/src/channels/index.d.ts +1 -3
  204. package/dist/src/channels/index.js +1 -5
  205. package/dist/src/channels/lifecycle-supervisor.d.ts +1 -0
  206. package/dist/src/channels/lifecycle-supervisor.js +11 -0
  207. package/dist/src/channels/lifecycle-supervisor.js.map +1 -1
  208. package/dist/src/channels/manager.d.ts +1 -0
  209. package/dist/src/channels/manager.js +3 -0
  210. package/dist/src/channels/manager.js.map +1 -1
  211. package/dist/src/channels/pairing/pairing-channel.d.ts +2 -3
  212. package/dist/src/channels/pairing/pairing-messages.js +1 -1
  213. package/dist/src/channels/pairing/pairing-messages.js.map +1 -1
  214. package/dist/src/channels/pairing/pairing-service.d.ts +1 -1
  215. package/dist/src/channels/pairing/pairing-service.js +8 -27
  216. package/dist/src/channels/pairing/pairing-service.js.map +1 -1
  217. package/dist/src/channels/plugin-types.d.ts +3 -1
  218. package/dist/src/channels/plugins/types.adapters.d.ts +55 -2
  219. package/dist/src/channels/telegram/index.js +1 -1
  220. package/dist/src/chat-commands/builtins/config.js +4 -4
  221. package/dist/src/chat-commands/builtins/config.js.map +1 -1
  222. package/dist/src/chat-commands/config-paths.js +1 -1
  223. package/dist/src/chat-commands/config-paths.js.map +1 -1
  224. package/dist/src/chat-commands/context.js +1 -1
  225. package/dist/src/chat-commands/context.js.map +1 -1
  226. package/dist/src/cli/bin.js +1 -1
  227. package/dist/src/cli/command-manifest.js +1 -1
  228. package/dist/src/cli/command-manifest.js.map +1 -1
  229. package/dist/src/cli/commands/agent.js +2 -2
  230. package/dist/src/cli/commands/agent.js.map +1 -1
  231. package/dist/src/cli/commands/agents.js +2 -4
  232. package/dist/src/cli/commands/agents.js.map +1 -1
  233. package/dist/src/cli/commands/auth.js +1 -1
  234. package/dist/src/cli/commands/channels.d.ts +1 -5
  235. package/dist/src/cli/commands/channels.js +115 -281
  236. package/dist/src/cli/commands/channels.js.map +1 -1
  237. package/dist/src/cli/commands/config.js +2 -2
  238. package/dist/src/cli/commands/config.js.map +1 -1
  239. package/dist/src/cli/commands/doctor/checks/channel-config.js +16 -69
  240. package/dist/src/cli/commands/doctor/checks/channel-config.js.map +1 -1
  241. package/dist/src/cli/commands/doctor/checks/channel-pairing-pending.js +6 -4
  242. package/dist/src/cli/commands/doctor/checks/channel-pairing-pending.js.map +1 -1
  243. package/dist/src/cli/commands/doctor/checks/channel-plugins.js +2 -2
  244. package/dist/src/cli/commands/doctor/checks/channel-plugins.js.map +1 -1
  245. package/dist/src/cli/commands/doctor/checks/database-schema.js +1 -1
  246. package/dist/src/cli/commands/doctor/checks/provider-auth.js +13 -9
  247. package/dist/src/cli/commands/doctor/checks/provider-auth.js.map +1 -1
  248. package/dist/src/cli/commands/extension-dev.js +2 -1
  249. package/dist/src/cli/commands/extension-dev.js.map +1 -1
  250. package/dist/src/cli/commands/extension-marketplace.js +2 -1
  251. package/dist/src/cli/commands/extension-marketplace.js.map +1 -1
  252. package/dist/src/cli/commands/extension-pack.js +2 -1
  253. package/dist/src/cli/commands/extension-pack.js.map +1 -1
  254. package/dist/src/cli/commands/models.js +7 -4
  255. package/dist/src/cli/commands/models.js.map +1 -1
  256. package/dist/src/cli/commands/onboard/channels/index.js +1 -1
  257. package/dist/src/cli/commands/onboard/channels/index.js.map +1 -1
  258. package/dist/src/cli/commands/onboard/channels/registry.d.ts +2 -1
  259. package/dist/src/cli/commands/onboard/channels/registry.js +32 -8
  260. package/dist/src/cli/commands/onboard/channels/registry.js.map +1 -1
  261. package/dist/src/cli/commands/onboard/model.js +8 -5
  262. package/dist/src/cli/commands/onboard/model.js.map +1 -1
  263. package/dist/src/cli/commands/onboard.js +4 -6
  264. package/dist/src/cli/commands/onboard.js.map +1 -1
  265. package/dist/src/cli/commands/setup-shared/runner.d.ts +1 -1
  266. package/dist/src/cli/commands/setup-shared/runner.js.map +1 -1
  267. package/dist/src/cli/commands/setup-shared/types.d.ts +1 -1
  268. package/dist/src/cli/commands/setup-shared/types.js.map +1 -1
  269. package/dist/src/cli/commands/tui.js +13 -5
  270. package/dist/src/cli/commands/tui.js.map +1 -1
  271. package/dist/src/cli/extension-cli-register.js +1 -1
  272. package/dist/src/commands/agents.config.d.ts +3 -3
  273. package/dist/src/commands/agents.config.js +7 -7
  274. package/dist/src/commands/agents.config.js.map +1 -1
  275. package/dist/src/config/agent-profile.d.ts +1 -1
  276. package/dist/src/config/agent-profile.js +6 -2
  277. package/dist/src/config/agent-profile.js.map +1 -1
  278. package/dist/src/config/agent-typed-models.d.ts +2 -2
  279. package/dist/src/config/agent-typed-models.js +13 -2
  280. package/dist/src/config/agent-typed-models.js.map +1 -1
  281. package/dist/src/config/index.js +3 -3
  282. package/dist/src/config/integration.d.ts +1 -1
  283. package/dist/src/config/loader.d.ts +0 -1
  284. package/dist/src/config/loader.js +4 -9
  285. package/dist/src/config/loader.js.map +1 -1
  286. package/dist/src/config/models-json.d.ts +6 -6
  287. package/dist/src/config/paths.d.ts +1 -0
  288. package/dist/src/config/paths.js +5 -1
  289. package/dist/src/config/paths.js.map +1 -1
  290. package/dist/src/config/rules.js +2 -12
  291. package/dist/src/config/rules.js.map +1 -1
  292. package/dist/src/config/schema.d.ts +74 -47
  293. package/dist/src/config/schema.js +28 -66
  294. package/dist/src/config/schema.js.map +1 -1
  295. package/dist/src/config/validate-channel-configs.d.ts +0 -3
  296. package/dist/src/config/validate-channel-configs.js +29 -10
  297. package/dist/src/config/validate-channel-configs.js.map +1 -1
  298. package/dist/src/cron/executor.js +1 -4
  299. package/dist/src/cron/executor.js.map +1 -1
  300. package/dist/src/document-understanding/extract.d.ts +13 -0
  301. package/dist/src/document-understanding/extract.js +63 -0
  302. package/dist/src/document-understanding/extract.js.map +1 -0
  303. package/dist/src/extensions/activation-context.js +3 -1
  304. package/dist/src/extensions/activation-context.js.map +1 -1
  305. package/dist/src/extensions/activation-planner.js +12 -0
  306. package/dist/src/extensions/activation-planner.js.map +1 -1
  307. package/dist/src/extensions/api.d.ts +5 -1
  308. package/dist/src/extensions/api.js +12 -0
  309. package/dist/src/extensions/api.js.map +1 -1
  310. package/dist/src/extensions/discover-extensions.js +17 -13
  311. package/dist/src/extensions/discover-extensions.js.map +1 -1
  312. package/dist/src/extensions/extension-metadata-snapshot.js +11 -5
  313. package/dist/src/extensions/extension-metadata-snapshot.js.map +1 -1
  314. package/dist/src/extensions/index.js +12 -4
  315. package/dist/src/extensions/index.js.map +1 -0
  316. package/dist/src/extensions/loader.d.ts +5 -1
  317. package/dist/src/extensions/loader.js +12 -11
  318. package/dist/src/extensions/loader.js.map +1 -1
  319. package/dist/src/extensions/manifest-registry.js +98 -93
  320. package/dist/src/extensions/manifest-registry.js.map +1 -1
  321. package/dist/src/extensions/normalize-manifest.js +91 -15
  322. package/dist/src/extensions/normalize-manifest.js.map +1 -1
  323. package/dist/src/extensions/sdk/index.js +1 -1
  324. package/dist/src/extensions/sdk/testing.js +4 -0
  325. package/dist/src/extensions/sdk/testing.js.map +1 -1
  326. package/dist/src/extensions/types/core.d.ts +32 -1
  327. package/dist/src/extensions/types/manifest.d.ts +60 -0
  328. package/dist/src/extensions/types/tui.d.ts +414 -5
  329. package/dist/src/gateway/agent-builtin-tools.d.ts +1 -1
  330. package/dist/src/gateway/agent-builtin-tools.js +16 -0
  331. package/dist/src/gateway/agent-builtin-tools.js.map +1 -1
  332. package/dist/src/gateway/agent-run-relay.d.ts +2 -3
  333. package/dist/src/gateway/agent-run-relay.js +10 -3
  334. package/dist/src/gateway/agent-run-relay.js.map +1 -1
  335. package/dist/src/gateway/agents-admin.d.ts +32 -19
  336. package/dist/src/gateway/agents-admin.js +113 -93
  337. package/dist/src/gateway/agents-admin.js.map +1 -1
  338. package/dist/src/gateway/chat-stream/mapper.d.ts +34 -0
  339. package/dist/src/gateway/chat-stream/mapper.js +244 -0
  340. package/dist/src/gateway/chat-stream/mapper.js.map +1 -0
  341. package/dist/src/gateway/chat-stream/protocol.d.ts +100 -0
  342. package/dist/src/gateway/chat-stream/protocol.js +1 -0
  343. package/dist/src/gateway/heartbeat/service.js +1 -1
  344. package/dist/src/gateway/hono/lib/agent-model.d.ts +4 -4
  345. package/dist/src/gateway/hono/lib/agent-model.js +13 -11
  346. package/dist/src/gateway/hono/lib/agent-model.js.map +1 -1
  347. package/dist/src/gateway/hono/lib/config-payload.d.ts +19 -7
  348. package/dist/src/gateway/hono/lib/config-payload.js +16 -15
  349. package/dist/src/gateway/hono/lib/config-payload.js.map +1 -1
  350. package/dist/src/gateway/hono/routes/agents.js +83 -48
  351. package/dist/src/gateway/hono/routes/agents.js.map +1 -1
  352. package/dist/src/gateway/hono/routes/channels.js +134 -214
  353. package/dist/src/gateway/hono/routes/channels.js.map +1 -1
  354. package/dist/src/gateway/hono/routes/commands-skills.js +10 -4
  355. package/dist/src/gateway/hono/routes/commands-skills.js.map +1 -1
  356. package/dist/src/gateway/hono/routes/config-patch/agents.js +26 -13
  357. package/dist/src/gateway/hono/routes/config-patch/agents.js.map +1 -1
  358. package/dist/src/gateway/hono/routes/config-patch/channels.d.ts +1 -11
  359. package/dist/src/gateway/hono/routes/config-patch/channels.js +18 -165
  360. package/dist/src/gateway/hono/routes/config-patch/channels.js.map +1 -1
  361. package/dist/src/gateway/hono/routes/config.js +5 -2
  362. package/dist/src/gateway/hono/routes/config.js.map +1 -1
  363. package/dist/src/gateway/hono/routes/dreaming.js +1 -1
  364. package/dist/src/gateway/hono/routes/lazy-bundles.js +13 -1
  365. package/dist/src/gateway/hono/routes/lazy-bundles.js.map +1 -1
  366. package/dist/src/gateway/hono/routes/notes.js +46 -27
  367. package/dist/src/gateway/hono/routes/notes.js.map +1 -1
  368. package/dist/src/gateway/hono/routes/public-gateway.js +2 -4
  369. package/dist/src/gateway/hono/routes/public-gateway.js.map +1 -1
  370. package/dist/src/gateway/hono/routes/sessions.js +179 -0
  371. package/dist/src/gateway/hono/routes/sessions.js.map +1 -1
  372. package/dist/src/gateway/hono/routes/tui.d.ts +3 -0
  373. package/dist/src/gateway/hono/routes/tui.js +16 -0
  374. package/dist/src/gateway/hono/routes/tui.js.map +1 -0
  375. package/dist/src/gateway/hono/routes/workflows.js +25 -1
  376. package/dist/src/gateway/hono/routes/workflows.js.map +1 -1
  377. package/dist/src/gateway/hono/sse.d.ts +5 -7
  378. package/dist/src/gateway/hono/sse.js +21 -38
  379. package/dist/src/gateway/hono/sse.js.map +1 -1
  380. package/dist/src/gateway/protocol.js.map +1 -1
  381. package/dist/src/gateway/service/agent-runner.d.ts +2 -4
  382. package/dist/src/gateway/service/agent-runner.js +1 -1
  383. package/dist/src/gateway/service/agent-runner.js.map +1 -1
  384. package/dist/src/gateway/service/marketplace-service.d.ts +4 -3
  385. package/dist/src/gateway/service/marketplace-service.js +7 -4
  386. package/dist/src/gateway/service/marketplace-service.js.map +1 -1
  387. package/dist/src/gateway/service/run-gateway-agent.d.ts +2 -6
  388. package/dist/src/gateway/service/run-gateway-agent.js +63 -36
  389. package/dist/src/gateway/service/run-gateway-agent.js.map +1 -1
  390. package/dist/src/gateway/service/sessions-api.d.ts +19 -0
  391. package/dist/src/gateway/service/sessions-api.js +12 -0
  392. package/dist/src/gateway/service/sessions-api.js.map +1 -1
  393. package/dist/src/gateway/service.d.ts +6 -0
  394. package/dist/src/gateway/service.js +84 -57
  395. package/dist/src/gateway/service.js.map +1 -1
  396. package/dist/src/heartbeat/index.js +1 -1
  397. package/dist/src/notes/agent-context.d.ts +40 -0
  398. package/dist/src/notes/agent-context.js +383 -0
  399. package/dist/src/notes/agent-context.js.map +1 -0
  400. package/dist/src/notes/index.d.ts +2 -0
  401. package/dist/src/notes/index.js +2 -1
  402. package/dist/src/notes/service.d.ts +5 -0
  403. package/dist/src/notes/service.js +22 -0
  404. package/dist/src/notes/service.js.map +1 -1
  405. package/dist/src/notes/store.js +2 -0
  406. package/dist/src/notes/store.js.map +1 -1
  407. package/dist/src/project-trust/trust-store.d.ts +30 -0
  408. package/dist/src/project-trust/trust-store.js +194 -0
  409. package/dist/src/project-trust/trust-store.js.map +1 -0
  410. package/dist/src/providers/index.d.ts +1 -1
  411. package/dist/src/providers/index.js +18 -7
  412. package/dist/src/providers/index.js.map +1 -1
  413. package/dist/src/routing/resolve-route.d.ts +0 -3
  414. package/dist/src/routing/resolve-route.js.map +1 -1
  415. package/dist/src/routing/resolve-tui-session-key.d.ts +2 -0
  416. package/dist/src/routing/resolve-tui-session-key.js +8 -3
  417. package/dist/src/routing/resolve-tui-session-key.js.map +1 -1
  418. package/dist/src/session/client-history.d.ts +32 -0
  419. package/dist/src/session/client-history.js +232 -1
  420. package/dist/src/session/client-history.js.map +1 -1
  421. package/dist/src/session/manager.d.ts +37 -4
  422. package/dist/src/session/manager.js +39 -15
  423. package/dist/src/session/manager.js.map +1 -1
  424. package/dist/src/session/session-context-for-llm.d.ts +93 -1
  425. package/dist/src/session/session-context-for-llm.js +105 -2
  426. package/dist/src/session/session-context-for-llm.js.map +1 -1
  427. package/dist/src/session/store.d.ts +37 -0
  428. package/dist/src/session/store.js +127 -2
  429. package/dist/src/session/store.js.map +1 -1
  430. package/dist/src/session/stored-rows-to-file-entries.js +37 -1
  431. package/dist/src/session/stored-rows-to-file-entries.js.map +1 -1
  432. package/dist/src/session/types.d.ts +14 -1
  433. package/dist/src/session/types.js.map +1 -1
  434. package/dist/src/storage/sqlite/index.d.ts +1 -0
  435. package/dist/src/storage/sqlite/index.js +2 -1
  436. package/dist/src/storage/sqlite/migrations/004_add_session_type_metadata.sql +15 -0
  437. package/dist/src/storage/sqlite/migrations/005_add_note_agent_contexts.sql +10 -0
  438. package/dist/src/storage/sqlite/migrations/runner.d.ts +1 -1
  439. package/dist/src/storage/sqlite/migrations/runner.js +3 -3
  440. package/dist/src/storage/sqlite/migrations/runner.js.map +1 -1
  441. package/dist/src/storage/sqlite/migrations/runner.ts +1 -1
  442. package/dist/src/storage/sqlite/note-agent-context-repository.d.ts +10 -0
  443. package/dist/src/storage/sqlite/note-agent-context-repository.js +35 -0
  444. package/dist/src/storage/sqlite/note-agent-context-repository.js.map +1 -0
  445. package/dist/src/storage/sqlite/row-mappers.d.ts +14 -1
  446. package/dist/src/storage/sqlite/row-mappers.js +14 -1
  447. package/dist/src/storage/sqlite/row-mappers.js.map +1 -1
  448. package/dist/src/storage/sqlite/schema.js +1 -1
  449. package/dist/src/storage/sqlite/session-metadata.js +1 -0
  450. package/dist/src/storage/sqlite/session-metadata.js.map +1 -1
  451. package/dist/src/storage/sqlite/session-repository.js +52 -25
  452. package/dist/src/storage/sqlite/session-repository.js.map +1 -1
  453. package/dist/src/tui/backends/embedded-backend.d.ts +53 -4
  454. package/dist/src/tui/backends/embedded-backend.js +227 -39
  455. package/dist/src/tui/backends/embedded-backend.js.map +1 -1
  456. package/dist/src/tui/backends/gateway-sse-backend.d.ts +59 -3
  457. package/dist/src/tui/backends/gateway-sse-backend.js +416 -26
  458. package/dist/src/tui/backends/gateway-sse-backend.js.map +1 -1
  459. package/dist/src/tui/chat-history.d.ts +5 -1
  460. package/dist/src/tui/chat-history.js +78 -8
  461. package/dist/src/tui/chat-history.js.map +1 -1
  462. package/dist/src/tui/clipboard-text.d.ts +5 -0
  463. package/dist/src/tui/clipboard-text.js +46 -0
  464. package/dist/src/tui/clipboard-text.js.map +1 -0
  465. package/dist/src/tui/components/assistant-message.d.ts +19 -3
  466. package/dist/src/tui/components/assistant-message.js +115 -9
  467. package/dist/src/tui/components/assistant-message.js.map +1 -1
  468. package/dist/src/tui/components/bash-execution.d.ts +3 -2
  469. package/dist/src/tui/components/bash-execution.js +31 -3
  470. package/dist/src/tui/components/bash-execution.js.map +1 -1
  471. package/dist/src/tui/components/bash-summary.d.ts +23 -0
  472. package/dist/src/tui/components/bash-summary.js +87 -0
  473. package/dist/src/tui/components/bash-summary.js.map +1 -0
  474. package/dist/src/tui/components/branch-message-summary.d.ts +17 -0
  475. package/dist/src/tui/components/branch-message-summary.js +43 -0
  476. package/dist/src/tui/components/branch-message-summary.js.map +1 -0
  477. package/dist/src/tui/components/branch-summary.d.ts +13 -0
  478. package/dist/src/tui/components/branch-summary.js +51 -0
  479. package/dist/src/tui/components/branch-summary.js.map +1 -0
  480. package/dist/src/tui/components/chat-log.d.ts +46 -6
  481. package/dist/src/tui/components/chat-log.js +183 -21
  482. package/dist/src/tui/components/chat-log.js.map +1 -1
  483. package/dist/src/tui/components/compaction-summary.d.ts +13 -0
  484. package/dist/src/tui/components/compaction-summary.js +46 -0
  485. package/dist/src/tui/components/compaction-summary.js.map +1 -0
  486. package/dist/src/tui/components/custom-editor.d.ts +1 -0
  487. package/dist/src/tui/components/custom-editor.js +2 -0
  488. package/dist/src/tui/components/custom-editor.js.map +1 -1
  489. package/dist/src/tui/components/custom-message.d.ts +23 -0
  490. package/dist/src/tui/components/custom-message.js +65 -0
  491. package/dist/src/tui/components/custom-message.js.map +1 -0
  492. package/dist/src/tui/components/extension-dialog.d.ts +42 -0
  493. package/dist/src/tui/components/extension-dialog.js +127 -0
  494. package/dist/src/tui/components/extension-dialog.js.map +1 -0
  495. package/dist/src/tui/components/scoped-models-selector.d.ts +7 -2
  496. package/dist/src/tui/components/scoped-models-selector.js +89 -16
  497. package/dist/src/tui/components/scoped-models-selector.js.map +1 -1
  498. package/dist/src/tui/components/searchable-select-list.d.ts +30 -3
  499. package/dist/src/tui/components/searchable-select-list.js +82 -10
  500. package/dist/src/tui/components/searchable-select-list.js.map +1 -1
  501. package/dist/src/tui/components/session-selector.d.ts +18 -4
  502. package/dist/src/tui/components/session-selector.js +207 -40
  503. package/dist/src/tui/components/session-selector.js.map +1 -1
  504. package/dist/src/tui/components/settings-selector.d.ts +6 -2
  505. package/dist/src/tui/components/settings-selector.js +126 -7
  506. package/dist/src/tui/components/settings-selector.js.map +1 -1
  507. package/dist/src/tui/components/thinking-selector.d.ts +12 -0
  508. package/dist/src/tui/components/thinking-selector.js +48 -0
  509. package/dist/src/tui/components/thinking-selector.js.map +1 -0
  510. package/dist/src/tui/components/tool-execution.d.ts +57 -3
  511. package/dist/src/tui/components/tool-execution.js +378 -28
  512. package/dist/src/tui/components/tool-execution.js.map +1 -1
  513. package/dist/src/tui/components/tui-bottom-bar.d.ts +9 -1
  514. package/dist/src/tui/components/tui-bottom-bar.js +56 -11
  515. package/dist/src/tui/components/tui-bottom-bar.js.map +1 -1
  516. package/dist/src/tui/components/tui-header.d.ts +9 -2
  517. package/dist/src/tui/components/tui-header.js +25 -5
  518. package/dist/src/tui/components/tui-header.js.map +1 -1
  519. package/dist/src/tui/components/user-message.d.ts +4 -2
  520. package/dist/src/tui/components/user-message.js +42 -9
  521. package/dist/src/tui/components/user-message.js.map +1 -1
  522. package/dist/src/tui/components/visual-truncate.d.ts +11 -0
  523. package/dist/src/tui/components/visual-truncate.js +27 -0
  524. package/dist/src/tui/components/visual-truncate.js.map +1 -0
  525. package/dist/src/tui/extension-host/autocomplete.d.ts +43 -0
  526. package/dist/src/tui/extension-host/autocomplete.js +116 -0
  527. package/dist/src/tui/extension-host/autocomplete.js.map +1 -0
  528. package/dist/src/tui/extension-host/host.d.ts +31 -1
  529. package/dist/src/tui/extension-host/host.js +123 -6
  530. package/dist/src/tui/extension-host/host.js.map +1 -1
  531. package/dist/src/tui/extension-host/load-extensions.d.ts +6 -1
  532. package/dist/src/tui/extension-host/load-extensions.js +4 -3
  533. package/dist/src/tui/extension-host/load-extensions.js.map +1 -1
  534. package/dist/src/tui/extension-host/runtime-context.d.ts +21 -0
  535. package/dist/src/tui/extension-host/runtime-context.js +152 -0
  536. package/dist/src/tui/extension-host/runtime-context.js.map +1 -0
  537. package/dist/src/tui/extension-host/runtime.d.ts +52 -4
  538. package/dist/src/tui/extension-host/runtime.js +547 -85
  539. package/dist/src/tui/extension-host/runtime.js.map +1 -1
  540. package/dist/src/tui/extension-host/surface.d.ts +20 -0
  541. package/dist/src/tui/extension-host/surface.js +30 -6
  542. package/dist/src/tui/extension-host/surface.js.map +1 -1
  543. package/dist/src/tui/extension-host/tool-renderers.d.ts +6 -3
  544. package/dist/src/tui/extension-host/tool-renderers.js +43 -5
  545. package/dist/src/tui/extension-host/tool-renderers.js.map +1 -1
  546. package/dist/src/tui/format-tui-hotkeys.d.ts +12 -2
  547. package/dist/src/tui/format-tui-hotkeys.js +22 -5
  548. package/dist/src/tui/format-tui-hotkeys.js.map +1 -1
  549. package/dist/src/tui/tui-agent-events.d.ts +8 -6
  550. package/dist/src/tui/tui-agent-events.js +200 -59
  551. package/dist/src/tui/tui-agent-events.js.map +1 -1
  552. package/dist/src/tui/tui-backend.d.ts +169 -3
  553. package/dist/src/tui/tui-command-formatters.d.ts +76 -0
  554. package/dist/src/tui/tui-command-formatters.js +594 -0
  555. package/dist/src/tui/tui-command-formatters.js.map +1 -0
  556. package/dist/src/tui/tui-commands.d.ts +57 -7
  557. package/dist/src/tui/tui-commands.js +639 -43
  558. package/dist/src/tui/tui-commands.js.map +1 -1
  559. package/dist/src/tui/tui-context-usage.d.ts +1 -1
  560. package/dist/src/tui/tui-context-usage.js +9 -1
  561. package/dist/src/tui/tui-context-usage.js.map +1 -1
  562. package/dist/src/tui/tui-extension-user-message.d.ts +8 -0
  563. package/dist/src/tui/tui-extension-user-message.js +32 -0
  564. package/dist/src/tui/tui-extension-user-message.js.map +1 -0
  565. package/dist/src/tui/tui-follow-up-queue.d.ts +9 -0
  566. package/dist/src/tui/tui-follow-up-queue.js +18 -0
  567. package/dist/src/tui/tui-follow-up-queue.js.map +1 -0
  568. package/dist/src/tui/tui-local-shell.d.ts +11 -1
  569. package/dist/src/tui/tui-local-shell.js +50 -8
  570. package/dist/src/tui/tui-local-shell.js.map +1 -1
  571. package/dist/src/tui/tui-model-picker.d.ts +26 -0
  572. package/dist/src/tui/tui-model-picker.js +152 -0
  573. package/dist/src/tui/tui-model-picker.js.map +1 -0
  574. package/dist/src/tui/tui-oauth-login.d.ts +16 -0
  575. package/dist/src/tui/tui-oauth-login.js +189 -0
  576. package/dist/src/tui/tui-oauth-login.js.map +1 -0
  577. package/dist/src/tui/tui-overlays.d.ts +3 -3
  578. package/dist/src/tui/tui-overlays.js +6 -7
  579. package/dist/src/tui/tui-overlays.js.map +1 -1
  580. package/dist/src/tui/tui-picker-overlay.d.ts +27 -32
  581. package/dist/src/tui/tui-picker-overlay.js +340 -30
  582. package/dist/src/tui/tui-picker-overlay.js.map +1 -1
  583. package/dist/src/tui/tui-picker-services.d.ts +41 -0
  584. package/dist/src/tui/tui-picker-services.js +1 -0
  585. package/dist/src/tui/tui-run-state.d.ts +11 -0
  586. package/dist/src/tui/tui-run-state.js +114 -0
  587. package/dist/src/tui/tui-run-state.js.map +1 -0
  588. package/dist/src/tui/tui-runtime-hints.d.ts +4 -0
  589. package/dist/src/tui/tui-runtime-hints.js +18 -0
  590. package/dist/src/tui/tui-runtime-hints.js.map +1 -0
  591. package/dist/src/tui/tui-scoped-models.d.ts +1 -1
  592. package/dist/src/tui/tui-scoped-models.js +2 -2
  593. package/dist/src/tui/tui-scoped-models.js.map +1 -1
  594. package/dist/src/tui/tui-session-actions.d.ts +5 -3
  595. package/dist/src/tui/tui-session-actions.js +21 -9
  596. package/dist/src/tui/tui-session-actions.js.map +1 -1
  597. package/dist/src/tui/tui-session-format.d.ts +4 -1
  598. package/dist/src/tui/tui-session-format.js +17 -3
  599. package/dist/src/tui/tui-session-format.js.map +1 -1
  600. package/dist/src/tui/tui-session-snapshot.d.ts +82 -0
  601. package/dist/src/tui/tui-session-snapshot.js +184 -0
  602. package/dist/src/tui/tui-session-snapshot.js.map +1 -0
  603. package/dist/src/tui/tui-session-stats.d.ts +3 -0
  604. package/dist/src/tui/tui-session-stats.js +59 -0
  605. package/dist/src/tui/tui-session-stats.js.map +1 -0
  606. package/dist/src/tui/tui-settings.d.ts +21 -0
  607. package/dist/src/tui/tui-settings.js +28 -1
  608. package/dist/src/tui/tui-settings.js.map +1 -1
  609. package/dist/src/tui/tui-skills-autocomplete.js +1 -1
  610. package/dist/src/tui/tui-skills-autocomplete.js.map +1 -1
  611. package/dist/src/tui/tui-startup-resources.d.ts +3 -0
  612. package/dist/src/tui/tui-startup-resources.js +39 -0
  613. package/dist/src/tui/tui-startup-resources.js.map +1 -0
  614. package/dist/src/tui/tui-startup-text.d.ts +10 -0
  615. package/dist/src/tui/tui-startup-text.js +58 -0
  616. package/dist/src/tui/tui-startup-text.js.map +1 -0
  617. package/dist/src/tui/tui-stdio-filter.d.ts +1 -0
  618. package/dist/src/tui/tui-stdio-filter.js +11 -7
  619. package/dist/src/tui/tui-stdio-filter.js.map +1 -1
  620. package/dist/src/tui/tui-submit.d.ts +2 -0
  621. package/dist/src/tui/tui-submit.js +2 -1
  622. package/dist/src/tui/tui-submit.js.map +1 -1
  623. package/dist/src/tui/tui-tool-diff.js +61 -7
  624. package/dist/src/tui/tui-tool-diff.js.map +1 -1
  625. package/dist/src/tui/tui-tool-result.d.ts +17 -0
  626. package/dist/src/tui/tui-tool-result.js +74 -0
  627. package/dist/src/tui/tui-tool-result.js.map +1 -0
  628. package/dist/src/tui/tui-transcript-tree-picker.d.ts +57 -0
  629. package/dist/src/tui/tui-transcript-tree-picker.js +604 -0
  630. package/dist/src/tui/tui-transcript-tree-picker.js.map +1 -0
  631. package/dist/src/tui/tui-transcript-tree.d.ts +7 -0
  632. package/dist/src/tui/tui-transcript-tree.js +316 -0
  633. package/dist/src/tui/tui-transcript-tree.js.map +1 -0
  634. package/dist/src/tui/tui-types.d.ts +25 -34
  635. package/dist/src/tui/tui-types.js +12 -0
  636. package/dist/src/tui/tui-types.js.map +1 -1
  637. package/dist/src/tui/tui.js +1288 -112
  638. package/dist/src/tui/tui.js.map +1 -1
  639. package/dist/src/tui/xopc-tui-keybindings.d.ts +127 -2
  640. package/dist/src/tui/xopc-tui-keybindings.js +127 -2
  641. package/dist/src/tui/xopc-tui-keybindings.js.map +1 -1
  642. package/dist/src/workflows/domain/definition-utils.d.ts +2 -1
  643. package/dist/src/workflows/domain/definition-utils.js +18 -8
  644. package/dist/src/workflows/domain/definition-utils.js.map +1 -1
  645. package/dist/src/workflows/domain/definition.d.ts +25 -0
  646. package/dist/src/workflows/domain/event.d.ts +1 -0
  647. package/dist/src/workflows/domain/result.d.ts +15 -0
  648. package/dist/src/workflows/domain/run.d.ts +2 -0
  649. package/dist/src/workflows/domain/run.js.map +1 -1
  650. package/dist/src/workflows/engine/projector.js +4 -0
  651. package/dist/src/workflows/engine/projector.js.map +1 -1
  652. package/dist/src/workflows/engine/workflow-engine.d.ts +37 -1
  653. package/dist/src/workflows/engine/workflow-engine.js +75 -11
  654. package/dist/src/workflows/engine/workflow-engine.js.map +1 -1
  655. package/dist/src/workflows/index.d.ts +1 -0
  656. package/dist/src/workflows/index.js +4 -1
  657. package/dist/src/workflows/registry/catalog-workflow-definition-registry.d.ts +9 -0
  658. package/dist/src/workflows/registry/catalog-workflow-definition-registry.js +40 -0
  659. package/dist/src/workflows/registry/catalog-workflow-definition-registry.js.map +1 -0
  660. package/dist/src/workflows/registry/index.d.ts +2 -0
  661. package/dist/src/workflows/registry/index.js +2 -0
  662. package/dist/src/workflows/registry/workflow-definition-registry.d.ts +15 -0
  663. package/dist/src/workflows/registry/workflow-definition-registry.js +1 -0
  664. package/dist/src/workflows/runtime/index.d.ts +2 -0
  665. package/dist/src/workflows/runtime/index.js +2 -1
  666. package/dist/src/workflows/runtime/script-workflow-runtime.d.ts +5 -0
  667. package/dist/src/workflows/runtime/script-workflow-runtime.js +15 -0
  668. package/dist/src/workflows/runtime/script-workflow-runtime.js.map +1 -0
  669. package/dist/src/workflows/runtime/workflow-runtime-port.d.ts +16 -0
  670. package/dist/src/workflows/runtime/workflow-runtime-port.js +1 -0
  671. package/dist/src/workflows/service/run-view-to-snapshot.js +3 -0
  672. package/dist/src/workflows/service/run-view-to-snapshot.js.map +1 -1
  673. package/dist/src/workflows/service/workflow-run-service.d.ts +3 -0
  674. package/dist/src/workflows/service/workflow-run-service.js +10 -15
  675. package/dist/src/workflows/service/workflow-run-service.js.map +1 -1
  676. package/dist/src/workflows/service/workflow-session-bridge.d.ts +1 -1
  677. package/dist/src/workflows/service/workflow-session-bridge.js +4 -1
  678. package/dist/src/workflows/service/workflow-session-bridge.js.map +1 -1
  679. package/package.json +23 -17
  680. package/skills/creative/frontend-design/SKILL.md +1 -1
  681. package/skills/creative/theme-factory/SKILL.md +1 -1
  682. package/skills/documents/xlsx/SKILL.md +1 -1
  683. package/skills/engineering/diagnose/SKILL.md +2 -2
  684. package/skills/engineering/tdd/SKILL.md +1 -1
  685. package/skills/tools/github/SKILL.md +6 -1
  686. package/skills/tools/webapp-testing/SKILL.md +4 -1
  687. package/dist/extensions/telegram/src/adapters/config-surface.d.ts +0 -2
  688. package/dist/extensions/telegram/src/adapters/config-surface.js +0 -26
  689. package/dist/extensions/telegram/src/adapters/config-surface.js.map +0 -1
  690. package/dist/extensions/weixin/src/__tests__/workflow-progress.test.js +0 -158
  691. package/dist/extensions/weixin/src/__tests__/workflow-progress.test.js.map +0 -1
  692. package/dist/gateway/static/root/assets/agents-BwXkia_W.js +0 -222
  693. package/dist/gateway/static/root/assets/channels-settings-tlOTdaXw.js +0 -1
  694. package/dist/gateway/static/root/assets/channels-status-swr-D4XjqwqC.js +0 -8
  695. package/dist/gateway/static/root/assets/cron-api-DcmfGuj0.js +0 -1
  696. package/dist/gateway/static/root/assets/cron-page-CijJ4G6F.js +0 -1
  697. package/dist/gateway/static/root/assets/extension-settings-page-CyJk_G64.js +0 -1
  698. package/dist/gateway/static/root/assets/field-primitives-C4GpxsDo.js +0 -1
  699. package/dist/gateway/static/root/assets/heartbeat-config-api-CLD0Gpi3.js +0 -1
  700. package/dist/gateway/static/root/assets/index-0HmunJW9.js +0 -4845
  701. package/dist/gateway/static/root/assets/index-Bk75Phrd.css +0 -1
  702. package/dist/gateway/static/root/assets/notes-page-BBnTh0uI.js +0 -1
  703. package/dist/gateway/static/root/assets/sessions-page-B0riYK7j.js +0 -1
  704. package/dist/gateway/static/root/assets/settings-advanced-gate-DiP_WHu_.js +0 -2
  705. package/dist/gateway/static/root/assets/settings-page-1ZPhcCZ9.js +0 -3
  706. package/dist/gateway/static/root/assets/skills-page-BQ1hllKD.js +0 -2
  707. package/dist/gateway/static/root/assets/url-F3_D_6zZ.js +0 -3
  708. package/dist/gateway/static/root/assets/utils-CPr3FBh2.js +0 -1
  709. package/dist/gateway/static/root/assets/voice-api-key-field-BkbDl6dH.js +0 -1
  710. package/dist/gateway/static/root/assets/workflows-page-D059ysoF.js +0 -27
  711. package/dist/src/agent/embedded/map-stream-events.d.ts +0 -9
  712. package/dist/src/agent/embedded/map-stream-events.js +0 -63
  713. package/dist/src/agent/embedded/map-stream-events.js.map +0 -1
  714. package/dist/src/channels/dock.js.map +0 -1
  715. package/dist/src/channels/plugins/bundled.d.ts +0 -11
  716. package/dist/src/channels/plugins/bundled.js +0 -10
  717. package/dist/src/channels/plugins/bundled.js.map +0 -1
  718. package/dist/src/channels/registry.d.ts +0 -25
  719. package/dist/src/channels/registry.js +0 -82
  720. package/dist/src/channels/registry.js.map +0 -1
  721. package/dist/src/config/localized-text.d.ts +0 -6
  722. package/dist/src/config/localized-text.js +0 -42
  723. package/dist/src/config/localized-text.js.map +0 -1
  724. package/dist/src/generated/bundled-channel-plugins.d.ts +0 -10
  725. package/dist/src/generated/bundled-channel-plugins.js +0 -16
  726. package/dist/src/generated/bundled-channel-plugins.js.map +0 -1
  727. package/dist/src/tui/stream-assembler.d.ts +0 -22
  728. package/dist/src/tui/stream-assembler.js +0 -63
  729. package/dist/src/tui/stream-assembler.js.map +0 -1
  730. package/skills/browser/SKILL-zh.md +0 -188
  731. package/skills/business/company-values/SKILL-zh.md +0 -80
  732. package/skills/business/company-values/SKILL.md +0 -80
  733. package/skills/business/find-community/SKILL-zh.md +0 -50
  734. package/skills/business/find-community/SKILL.md +0 -50
  735. package/skills/business/first-customers/SKILL-zh.md +0 -76
  736. package/skills/business/first-customers/SKILL.md +0 -76
  737. package/skills/business/grow-sustainably/SKILL-zh.md +0 -92
  738. package/skills/business/grow-sustainably/SKILL.md +0 -92
  739. package/skills/business/marketing-plan/SKILL-zh.md +0 -100
  740. package/skills/business/marketing-plan/SKILL.md +0 -100
  741. package/skills/business/minimalist-review/SKILL-zh.md +0 -82
  742. package/skills/business/minimalist-review/SKILL.md +0 -82
  743. package/skills/business/mvp/SKILL-zh.md +0 -81
  744. package/skills/business/mvp/SKILL.md +0 -81
  745. package/skills/business/pricing/SKILL-zh.md +0 -64
  746. package/skills/business/pricing/SKILL.md +0 -64
  747. package/skills/business/processize/SKILL-zh.md +0 -91
  748. package/skills/business/processize/SKILL.md +0 -91
  749. package/skills/business/validate-idea/SKILL-zh.md +0 -68
  750. package/skills/business/validate-idea/SKILL.md +0 -68
  751. package/skills/creative/algorithmic-art/LICENSE.txt +0 -202
  752. package/skills/creative/algorithmic-art/SKILL-zh.md +0 -405
  753. package/skills/creative/algorithmic-art/SKILL.md +0 -405
  754. package/skills/creative/algorithmic-art/templates/generator_template.js +0 -223
  755. package/skills/creative/algorithmic-art/templates/viewer.html +0 -599
  756. package/skills/creative/frontend-design/SKILL-zh.md +0 -42
  757. package/skills/creative/theme-factory/SKILL-zh.md +0 -59
  758. package/skills/creative/web-artifacts-builder/LICENSE.txt +0 -202
  759. package/skills/creative/web-artifacts-builder/SKILL-zh.md +0 -74
  760. package/skills/creative/web-artifacts-builder/SKILL.md +0 -74
  761. package/skills/creative/web-artifacts-builder/scripts/bundle-artifact.sh +0 -54
  762. package/skills/creative/web-artifacts-builder/scripts/init-artifact.sh +0 -322
  763. package/skills/creative/web-artifacts-builder/scripts/shadcn-components.tar.gz +0 -0
  764. package/skills/documents/doc-coauthoring/SKILL-zh.md +0 -375
  765. package/skills/documents/doc-coauthoring/SKILL.md +0 -375
  766. package/skills/documents/docx/LICENSE.txt +0 -30
  767. package/skills/documents/docx/SKILL-zh.md +0 -590
  768. package/skills/documents/docx/SKILL.md +0 -590
  769. package/skills/documents/docx/scripts/__init__.py +0 -1
  770. package/skills/documents/docx/scripts/accept_changes.py +0 -135
  771. package/skills/documents/docx/scripts/comment.py +0 -318
  772. package/skills/documents/docx/scripts/office/helpers/__init__.py +0 -0
  773. package/skills/documents/docx/scripts/office/helpers/merge_runs.py +0 -199
  774. package/skills/documents/docx/scripts/office/helpers/simplify_redlines.py +0 -197
  775. package/skills/documents/docx/scripts/office/pack.py +0 -159
  776. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +0 -1499
  777. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +0 -146
  778. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +0 -1085
  779. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +0 -11
  780. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +0 -3081
  781. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +0 -23
  782. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +0 -185
  783. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +0 -287
  784. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +0 -1676
  785. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +0 -28
  786. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +0 -144
  787. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +0 -174
  788. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +0 -25
  789. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +0 -18
  790. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +0 -59
  791. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +0 -56
  792. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +0 -195
  793. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +0 -582
  794. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +0 -25
  795. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +0 -4439
  796. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +0 -570
  797. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +0 -509
  798. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +0 -12
  799. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +0 -108
  800. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +0 -96
  801. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +0 -3646
  802. package/skills/documents/docx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +0 -116
  803. package/skills/documents/docx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +0 -42
  804. package/skills/documents/docx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +0 -50
  805. package/skills/documents/docx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +0 -49
  806. package/skills/documents/docx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +0 -33
  807. package/skills/documents/docx/scripts/office/schemas/mce/mc.xsd +0 -75
  808. package/skills/documents/docx/scripts/office/schemas/microsoft/wml-2010.xsd +0 -560
  809. package/skills/documents/docx/scripts/office/schemas/microsoft/wml-2012.xsd +0 -67
  810. package/skills/documents/docx/scripts/office/schemas/microsoft/wml-2018.xsd +0 -14
  811. package/skills/documents/docx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +0 -20
  812. package/skills/documents/docx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +0 -13
  813. package/skills/documents/docx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +0 -4
  814. package/skills/documents/docx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +0 -8
  815. package/skills/documents/docx/scripts/office/soffice.py +0 -183
  816. package/skills/documents/docx/scripts/office/unpack.py +0 -132
  817. package/skills/documents/docx/scripts/office/validate.py +0 -111
  818. package/skills/documents/docx/scripts/office/validators/__init__.py +0 -15
  819. package/skills/documents/docx/scripts/office/validators/base.py +0 -847
  820. package/skills/documents/docx/scripts/office/validators/docx.py +0 -446
  821. package/skills/documents/docx/scripts/office/validators/pptx.py +0 -275
  822. package/skills/documents/docx/scripts/office/validators/redlining.py +0 -247
  823. package/skills/documents/docx/scripts/templates/comments.xml +0 -3
  824. package/skills/documents/docx/scripts/templates/commentsExtended.xml +0 -3
  825. package/skills/documents/docx/scripts/templates/commentsExtensible.xml +0 -3
  826. package/skills/documents/docx/scripts/templates/commentsIds.xml +0 -3
  827. package/skills/documents/docx/scripts/templates/people.xml +0 -3
  828. package/skills/documents/pdf/LICENSE.txt +0 -30
  829. package/skills/documents/pdf/SKILL-zh.md +0 -314
  830. package/skills/documents/pdf/SKILL.md +0 -314
  831. package/skills/documents/pdf/forms.md +0 -294
  832. package/skills/documents/pdf/reference.md +0 -612
  833. package/skills/documents/pdf/scripts/check_bounding_boxes.py +0 -65
  834. package/skills/documents/pdf/scripts/check_fillable_fields.py +0 -11
  835. package/skills/documents/pdf/scripts/convert_pdf_to_images.py +0 -33
  836. package/skills/documents/pdf/scripts/create_validation_image.py +0 -37
  837. package/skills/documents/pdf/scripts/extract_form_field_info.py +0 -122
  838. package/skills/documents/pdf/scripts/extract_form_structure.py +0 -115
  839. package/skills/documents/pdf/scripts/fill_fillable_fields.py +0 -98
  840. package/skills/documents/pdf/scripts/fill_pdf_form_with_annotations.py +0 -107
  841. package/skills/documents/pptx/LICENSE.txt +0 -30
  842. package/skills/documents/pptx/SKILL-zh.md +0 -232
  843. package/skills/documents/pptx/SKILL.md +0 -232
  844. package/skills/documents/pptx/editing.md +0 -205
  845. package/skills/documents/pptx/pptxgenjs.md +0 -420
  846. package/skills/documents/pptx/scripts/__init__.py +0 -0
  847. package/skills/documents/pptx/scripts/add_slide.py +0 -195
  848. package/skills/documents/pptx/scripts/clean.py +0 -286
  849. package/skills/documents/pptx/scripts/office/helpers/__init__.py +0 -0
  850. package/skills/documents/pptx/scripts/office/helpers/merge_runs.py +0 -199
  851. package/skills/documents/pptx/scripts/office/helpers/simplify_redlines.py +0 -197
  852. package/skills/documents/pptx/scripts/office/pack.py +0 -159
  853. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +0 -1499
  854. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +0 -146
  855. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +0 -1085
  856. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +0 -11
  857. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +0 -3081
  858. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +0 -23
  859. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +0 -185
  860. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +0 -287
  861. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +0 -1676
  862. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +0 -28
  863. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +0 -144
  864. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +0 -174
  865. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +0 -25
  866. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +0 -18
  867. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +0 -59
  868. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +0 -56
  869. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +0 -195
  870. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +0 -582
  871. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +0 -25
  872. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +0 -4439
  873. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +0 -570
  874. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +0 -509
  875. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +0 -12
  876. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +0 -108
  877. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +0 -96
  878. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +0 -3646
  879. package/skills/documents/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +0 -116
  880. package/skills/documents/pptx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +0 -42
  881. package/skills/documents/pptx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +0 -50
  882. package/skills/documents/pptx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +0 -49
  883. package/skills/documents/pptx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +0 -33
  884. package/skills/documents/pptx/scripts/office/schemas/mce/mc.xsd +0 -75
  885. package/skills/documents/pptx/scripts/office/schemas/microsoft/wml-2010.xsd +0 -560
  886. package/skills/documents/pptx/scripts/office/schemas/microsoft/wml-2012.xsd +0 -67
  887. package/skills/documents/pptx/scripts/office/schemas/microsoft/wml-2018.xsd +0 -14
  888. package/skills/documents/pptx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +0 -20
  889. package/skills/documents/pptx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +0 -13
  890. package/skills/documents/pptx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +0 -4
  891. package/skills/documents/pptx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +0 -8
  892. package/skills/documents/pptx/scripts/office/soffice.py +0 -183
  893. package/skills/documents/pptx/scripts/office/unpack.py +0 -132
  894. package/skills/documents/pptx/scripts/office/validate.py +0 -111
  895. package/skills/documents/pptx/scripts/office/validators/__init__.py +0 -15
  896. package/skills/documents/pptx/scripts/office/validators/base.py +0 -847
  897. package/skills/documents/pptx/scripts/office/validators/docx.py +0 -446
  898. package/skills/documents/pptx/scripts/office/validators/pptx.py +0 -275
  899. package/skills/documents/pptx/scripts/office/validators/redlining.py +0 -247
  900. package/skills/documents/pptx/scripts/thumbnail.py +0 -289
  901. package/skills/documents/xlsx/SKILL-zh.md +0 -292
  902. package/skills/engineering/diagnose/SKILL-zh.md +0 -117
  903. package/skills/engineering/grill-with-docs/ADR-FORMAT.md +0 -47
  904. package/skills/engineering/grill-with-docs/CONTEXT-FORMAT.md +0 -77
  905. package/skills/engineering/grill-with-docs/SKILL-zh.md +0 -88
  906. package/skills/engineering/grill-with-docs/SKILL.md +0 -88
  907. package/skills/engineering/improve-codebase-architecture/DEEPENING.md +0 -37
  908. package/skills/engineering/improve-codebase-architecture/INTERFACE-DESIGN.md +0 -44
  909. package/skills/engineering/improve-codebase-architecture/LANGUAGE.md +0 -53
  910. package/skills/engineering/improve-codebase-architecture/SKILL-zh.md +0 -71
  911. package/skills/engineering/improve-codebase-architecture/SKILL.md +0 -71
  912. package/skills/engineering/tdd/SKILL-zh.md +0 -109
  913. package/skills/engineering/to-issues/SKILL-zh.md +0 -81
  914. package/skills/engineering/to-issues/SKILL.md +0 -81
  915. package/skills/engineering/to-prd/SKILL-zh.md +0 -76
  916. package/skills/engineering/to-prd/SKILL.md +0 -74
  917. package/skills/engineering/zoom-out/SKILL-zh.md +0 -7
  918. package/skills/engineering/zoom-out/SKILL.md +0 -7
  919. package/skills/tools/find-skills/SKILL-zh.md +0 -440
  920. package/skills/tools/github/SKILL-zh.md +0 -48
  921. package/skills/tools/internal-comms/LICENSE.txt +0 -202
  922. package/skills/tools/internal-comms/SKILL-zh.md +0 -32
  923. package/skills/tools/internal-comms/SKILL.md +0 -32
  924. package/skills/tools/internal-comms/examples/3p-updates.md +0 -47
  925. package/skills/tools/internal-comms/examples/company-newsletter.md +0 -65
  926. package/skills/tools/internal-comms/examples/faq-answers.md +0 -30
  927. package/skills/tools/internal-comms/examples/general-comms.md +0 -16
  928. package/skills/tools/skill-creator/LICENSE.txt +0 -202
  929. package/skills/tools/skill-creator/SKILL-zh.md +0 -483
  930. package/skills/tools/skill-creator/SKILL.md +0 -485
  931. package/skills/tools/skill-creator/agents/analyzer.md +0 -274
  932. package/skills/tools/skill-creator/agents/comparator.md +0 -202
  933. package/skills/tools/skill-creator/agents/grader.md +0 -223
  934. package/skills/tools/skill-creator/assets/eval_review.html +0 -146
  935. package/skills/tools/skill-creator/eval-viewer/generate_review.py +0 -471
  936. package/skills/tools/skill-creator/eval-viewer/viewer.html +0 -1325
  937. package/skills/tools/skill-creator/references/schemas.md +0 -430
  938. package/skills/tools/skill-creator/scripts/__init__.py +0 -0
  939. package/skills/tools/skill-creator/scripts/aggregate_benchmark.py +0 -401
  940. package/skills/tools/skill-creator/scripts/generate_report.py +0 -326
  941. package/skills/tools/skill-creator/scripts/improve_description.py +0 -247
  942. package/skills/tools/skill-creator/scripts/package_skill.py +0 -136
  943. package/skills/tools/skill-creator/scripts/quick_validate.py +0 -103
  944. package/skills/tools/skill-creator/scripts/run_eval.py +0 -310
  945. package/skills/tools/skill-creator/scripts/run_loop.py +0 -328
  946. package/skills/tools/skill-creator/scripts/utils.py +0 -47
  947. package/skills/tools/summarize/SKILL-zh.md +0 -47
  948. package/skills/tools/weather/SKILL-zh.md +0 -46
  949. package/skills/tools/weather/SKILL.md +0 -46
  950. package/skills/tools/webapp-testing/SKILL-zh.md +0 -96
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tui-command-formatters.js","names":[],"sources":["../../../src/tui/tui-command-formatters.ts"],"sourcesContent":["import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';\nimport { dirname, join } from 'node:path';\n\nimport { visibleWidth } from '@earendil-works/pi-tui';\n\nimport type {\n TuiCompactionResult,\n TuiExportFormat,\n TuiModelChoice,\n TuiShareAudience,\n TuiShareMode,\n TuiShareRequest,\n TuiShareResult,\n TuiSessionStats,\n TuiSessionItem,\n TuiTranscriptTreeEntry,\n} from './tui-backend.js';\nimport { computeContextUsagePercent, formatContextUsageLabel } from './tui-context-usage.js';\nimport type { TuiState } from './tui-types.js';\nimport { formatSessionPickerDescription } from './tui-session-format.js';\nimport { formatTuiTranscriptTreeEntryDisplayText } from './tui-transcript-tree.js';\nimport { createWorkflowCatalog, type CatalogEntry } from '../agent/workflow/catalog.js';\nimport { normalizeVerboseLevel, type VerboseLevel } from '../agent/transcript/thinking-types.js';\nimport type { AuthProfileEntry } from '../auth/profiles/index.js';\nimport type { Config } from '../config/schema.js';\nimport { resolveConfigPath } from '../config/index.js';\nimport type { ProjectTrustStoreEntry } from '../project-trust/trust-store.js';\nimport {\n getProviderDisplayName,\n getSortedProviders,\n providerSupportsApiKey,\n providerSupportsOAuth,\n} from '../providers/index.js';\nimport { parseAgentSessionKey } from '../routing/agent-session-key.js';\nimport { getLogDir, getRuntimeLogStats } from '../utils/logger.js';\n\nexport interface TuiExportRequest {\n format: TuiExportFormat;\n outputPath?: string;\n}\n\nexport interface TuiImportRequest {\n inputPath?: string;\n targetKey?: string;\n}\n\nexport type TuiDebugDeps = {\n state: TuiState;\n tui: unknown;\n};\n\nconst SHARE_AUDIENCES = new Set<TuiShareAudience>(['friend', 'colleague', 'public']);\nconst SHARE_MODES = new Set<TuiShareMode>(['auto', 'force-file', 'force-site', 'force-zip']);\n\nfunction formatMaybe(value: string | undefined | null): string {\n const trimmed = value?.trim();\n return trimmed ? trimmed : '-';\n}\n\nfunction formatNumber(value: number | undefined | null): string {\n return value == null ? '-' : value.toLocaleString();\n}\n\nexport function formatModelLabel(state: TuiState): string {\n const provider = state.sessionInfo.modelProvider?.trim();\n const model = state.sessionInfo.model?.trim();\n if (provider && model) {\n return `${provider}/${model}`;\n }\n return formatMaybe(model ?? provider);\n}\n\nexport function nextVerboseLevel(current: string | undefined | null): VerboseLevel {\n const normalized = normalizeVerboseLevel(current);\n if (normalized === 'off') return 'on';\n if (normalized === 'on') return 'full';\n return 'off';\n}\n\nfunction splitCommandArgs(input: string): string[] {\n const tokens: string[] = [];\n const re = /\"([^\"]*)\"|'([^']*)'|(\\S+)/g;\n for (const match of input.matchAll(re)) {\n tokens.push(match[1] ?? match[2] ?? match[3] ?? '');\n }\n return tokens;\n}\n\nfunction normalizeExportFormat(raw: string | undefined): TuiExportFormat | undefined {\n const value = raw?.trim().toLowerCase();\n if (value === 'json' || value === 'markdown' || value === 'md' || value === 'html') {\n return value === 'md' ? 'markdown' : value;\n }\n return undefined;\n}\n\nfunction inferExportFormatFromPath(path: string | undefined): TuiExportFormat | undefined {\n const lower = path?.trim().toLowerCase();\n if (!lower) return undefined;\n if (lower.endsWith('.json')) return 'json';\n if (lower.endsWith('.md') || lower.endsWith('.markdown')) return 'markdown';\n if (lower.endsWith('.html') || lower.endsWith('.htm')) return 'html';\n return undefined;\n}\n\nexport function parseTuiExportRequest(args: string): TuiExportRequest {\n const tokens = splitCommandArgs(args.trim());\n const first = tokens[0];\n const explicitFormat = normalizeExportFormat(first);\n if (explicitFormat) {\n const outputPath = tokens[1];\n return { format: explicitFormat, outputPath };\n }\n const outputPath = first;\n return {\n format: inferExportFormatFromPath(outputPath) ?? 'html',\n outputPath,\n };\n}\n\nexport function parseTuiImportRequest(args: string): TuiImportRequest {\n const tokens = splitCommandArgs(args.trim());\n return {\n inputPath: tokens[0],\n targetKey: tokens[1],\n };\n}\n\nexport function parseTuiShareRequest(args: string): TuiShareRequest | null {\n const tokens = splitCommandArgs(args.trim());\n const path = tokens.shift();\n if (!path) return null;\n\n const request: TuiShareRequest = { path };\n for (let i = 0; i < tokens.length; i++) {\n const token = tokens[i]!;\n const lower = token.toLowerCase();\n const next = tokens[i + 1];\n\n if (lower === '--friend' || lower === '--colleague' || lower === '--public') {\n request.audience = lower.slice(2) as TuiShareAudience;\n continue;\n }\n if (SHARE_AUDIENCES.has(lower as TuiShareAudience)) {\n request.audience = lower as TuiShareAudience;\n continue;\n }\n if (lower === '--file') {\n request.mode = 'force-file';\n continue;\n }\n if (lower === '--site') {\n request.mode = 'force-site';\n continue;\n }\n if (lower === '--zip') {\n request.mode = 'force-zip';\n continue;\n }\n if (SHARE_MODES.has(lower as TuiShareMode)) {\n request.mode = lower as TuiShareMode;\n continue;\n }\n if ((lower === '--title' || lower === '-t') && next) {\n request.title = next;\n i += 1;\n continue;\n }\n if ((lower === '--description' || lower === '--desc' || lower === '-d') && next) {\n request.description = next;\n i += 1;\n continue;\n }\n }\n return request;\n}\n\nexport function formatTuiShareResult(result: TuiShareResult): string {\n const lines = [\n 'Share',\n '',\n `Kind: ${result.kind}`,\n `URL: ${result.shareUrl}`,\n ];\n if (result.title?.trim()) lines.push(`Title: ${result.title.trim()}`);\n if (result.expiresAt?.trim()) lines.push(`Expires: ${result.expiresAt.trim()}`);\n if (result.maxViews != null) lines.push(`Max Views: ${formatNumber(result.maxViews)}`);\n if (result.reachability?.trim()) {\n lines.push(`Reachability: ${result.reachability.trim()}`);\n }\n if (result.reachabilityHint?.trim()) {\n lines.push(`Hint: ${result.reachabilityHint.trim()}`);\n }\n if (result.thumbnailUrl?.trim()) {\n lines.push(`Thumbnail: ${result.thumbnailUrl.trim()}`);\n }\n if (result.routingReason?.trim()) {\n lines.push(`Routing: ${result.routingReason.trim()}`);\n }\n if (result.routingHint?.trim()) {\n lines.push(`Routing Hint: ${result.routingHint.trim()}`);\n }\n return lines.join('\\n');\n}\n\nfunction formatModelChoice(choice: TuiModelChoice): string {\n const ref = `${choice.provider}/${choice.id}`;\n const name = choice.name?.trim();\n const suffix = name && name !== choice.id ? ` — ${name}` : '';\n return `${ref}${suffix}`;\n}\n\nfunction formatAuthProfileExpires(expires: number | undefined): string {\n if (!expires) return '';\n const date = new Date(expires);\n if (Number.isNaN(date.getTime())) return '';\n return `, expires ${date.toISOString()}`;\n}\n\nfunction formatAuthProfileLine(profile: AuthProfileEntry): string {\n const email = profile.email?.trim() ? `, ${profile.email.trim()}` : '';\n const key = profile.hasKey ? 'has credential' : 'empty credential';\n return ` ${profile.provider} — ${profile.profileId} (${profile.type}, ${key}${email}${formatAuthProfileExpires(profile.expires)})`;\n}\n\nexport function formatTuiStoredAuthProfilesInfo(\n profiles: AuthProfileEntry[],\n options: { authStorePath?: string } = {},\n): string {\n if (profiles.length === 0) {\n return [\n 'Auth Profiles',\n '',\n 'No stored auth profiles found.',\n 'Environment variables and config credentials are unchanged by /logout.',\n ].join('\\n');\n }\n\n const sorted = [...profiles].sort((a, b) => {\n const byProvider = a.provider.localeCompare(b.provider);\n return byProvider || a.profileId.localeCompare(b.profileId);\n });\n const lines = ['Auth Profiles', '', ...sorted.map(formatAuthProfileLine)];\n lines.push('', 'Use /logout <provider> to remove stored profiles for one provider.');\n lines.push('Environment variables and config credentials are unchanged.');\n if (options.authStorePath) {\n lines.push(`Store: ${options.authStorePath}`);\n }\n return lines.join('\\n');\n}\n\nexport function formatTuiLoginInfo(provider?: string): string {\n const trimmedProvider = provider?.trim();\n if (trimmedProvider) {\n const displayName = getProviderDisplayName(trimmedProvider);\n const lines = ['Login', '', `${trimmedProvider} — ${displayName}`, ''];\n if (providerSupportsOAuth(trimmedProvider)) {\n lines.push(`OAuth: /login ${trimmedProvider} (or xopc auth login ${trimmedProvider})`);\n }\n if (providerSupportsApiKey(trimmedProvider)) {\n lines.push(`API key: xopc auth set ${trimmedProvider} <key>`);\n }\n if (!providerSupportsOAuth(trimmedProvider) && !providerSupportsApiKey(trimmedProvider)) {\n lines.push('No direct xopc auth setup command is advertised for this provider.');\n }\n lines.push('', 'In the TUI, /login <provider> runs OAuth directly when supported.');\n lines.push('Stored credentials can be inspected with /logout and removed with /logout <provider>.');\n return lines.join('\\n');\n }\n\n const oauthProviders = getSortedProviders().filter(providerSupportsOAuth);\n const lines = ['Login', '', 'OAuth providers:'];\n if (oauthProviders.length === 0) {\n lines.push(' none detected');\n } else {\n for (const nextProvider of oauthProviders) {\n lines.push(` ${nextProvider} — ${getProviderDisplayName(nextProvider)}`);\n }\n }\n lines.push(\n '',\n 'Use /login <provider> to start OAuth directly when supported.',\n 'API keys: xopc auth set <provider> <key>',\n 'Stored credentials: /logout',\n );\n return lines.join('\\n');\n}\n\nexport function formatTuiChangelogInfo(markdown: string, sourcePath?: string): string {\n const trimmed = markdown.trim();\n if (!trimmed) {\n return 'What\\'s New\\n\\nNo changelog entries found.';\n }\n\n const lines = trimmed.split(/\\r?\\n/);\n const firstVersionIndex = lines.findIndex((line) => /^##\\s+/.test(line));\n const body = firstVersionIndex >= 0 ? lines.slice(firstVersionIndex).join('\\n').trim() : trimmed;\n const suffix = sourcePath ? `\\n\\nSource: ${sourcePath}` : '';\n return `What's New\\n\\n${body}${suffix}`;\n}\n\nexport function loadTuiChangelogInfo(): string {\n const candidates = [\n join(process.cwd(), 'CHANGELOG.md'),\n join(process.cwd(), 'CHANGELOG'),\n join(process.cwd(), 'docs', 'changelog.md'),\n ];\n const path = candidates.find((candidate) => existsSync(candidate));\n if (!path) {\n return formatTuiChangelogInfo('');\n }\n try {\n return formatTuiChangelogInfo(readFileSync(path, 'utf8'), path);\n } catch (err) {\n const errorMessage = err instanceof Error ? err.message : String(err);\n return `What's New\\n\\nFailed to read changelog: ${errorMessage}`;\n }\n}\n\nexport function formatTuiDebugInfo(params: {\n state: TuiState;\n terminal: { columns?: number; rows?: number };\n renderedLines: string[];\n logStats: unknown;\n}): string {\n const width = params.terminal.columns ?? 0;\n const height = params.terminal.rows ?? 0;\n return [\n `Debug output at ${new Date().toISOString()}`,\n `Terminal: ${width}x${height}`,\n `Total rendered lines: ${params.renderedLines.length}`,\n '',\n '=== TUI State ===',\n JSON.stringify(params.state, null, 2),\n '',\n '=== Runtime Log Stats ===',\n JSON.stringify(params.logStats, null, 2),\n '',\n '=== Rendered lines with visible widths ===',\n ...params.renderedLines.map((line, index) => `[${index}] (w=${visibleWidth(line)}) ${JSON.stringify(line)}`),\n '',\n ].join('\\n');\n}\n\nexport function writeTuiDebugInfo(deps: TuiDebugDeps): string {\n const debugPath = join(getLogDir(), 'xopc-tui-debug.log');\n const terminal = (deps.tui as unknown as { terminal?: { columns?: number; rows?: number } }).terminal ?? {};\n const width = terminal.columns ?? 100;\n const renderedLines =\n typeof (deps.tui as unknown as { render?: (width: number) => string[] }).render === 'function'\n ? (deps.tui as unknown as { render: (width: number) => string[] }).render(width)\n : [];\n const content = formatTuiDebugInfo({\n state: deps.state,\n terminal,\n renderedLines,\n logStats: getRuntimeLogStats(),\n });\n mkdirSync(dirname(debugPath), { recursive: true });\n writeFileSync(debugPath, content, 'utf8');\n return debugPath;\n}\n\nexport function formatTuiModelsInfo(models: TuiModelChoice[]): string {\n if (models.length === 0) {\n return 'Models\\n\\nNo models available.';\n }\n const lines = ['Models', '', ...models.map((model) => ` ${formatModelChoice(model)}`)];\n return lines.join('\\n');\n}\n\nexport function formatTuiSessionListInfo(\n sessions: TuiSessionItem[],\n options: { currentSessionKey?: string; limit?: number } = {},\n): string {\n if (sessions.length === 0) {\n return 'Sessions\\n\\nNo sessions found.';\n }\n const limit = options.limit ?? 20;\n const visible = sessions.slice(0, limit);\n const lines = ['Sessions', ''];\n for (const session of visible) {\n const current = session.key === options.currentSessionKey ? '* ' : ' ';\n const label = session.displayName?.trim() || session.key;\n const description = formatSessionPickerDescription(session, { showKey: Boolean(session.displayName) });\n lines.push(`${current}${label}${description ? ` — ${description}` : ''}`);\n }\n if (sessions.length > visible.length) {\n lines.push('', `Showing ${visible.length} of ${sessions.length} sessions. Use /resume to search.`);\n }\n return lines.join('\\n');\n}\n\nfunction sessionTreeGroup(session: TuiSessionItem): { agentId: string; root: string; leaf: string } {\n const parsed = parseAgentSessionKey(session.key);\n const agentId = parsed?.agentId ?? 'unknown';\n const rest = parsed?.rest ?? session.key;\n const parts = rest.split(':').filter(Boolean);\n const root = parts[0] ?? rest;\n const leaf = parts.length > 1 ? parts.slice(1).join(':') : rest;\n return { agentId, root, leaf };\n}\n\nexport function formatTuiSessionTreeInfo(\n sessions: TuiSessionItem[],\n options: { currentSessionKey?: string; limitPerGroup?: number } = {},\n): string {\n if (sessions.length === 0) {\n return 'Session Tree\\n\\nNo sessions found.';\n }\n const limitPerGroup = options.limitPerGroup ?? 8;\n const byKey = new Map(sessions.map((session) => [session.key, session]));\n const groups = new Map<string, TuiSessionItem[]>();\n for (const session of sessions) {\n const group = sessionTreeGroup(session);\n const key = `${group.agentId}:${group.root}`;\n const list = groups.get(key) ?? [];\n list.push(session);\n groups.set(key, list);\n }\n\n const lines = ['Session Tree', ''];\n const sortedGroups = [...groups.entries()].sort(([a], [b]) => a.localeCompare(b));\n for (const [groupKey, groupSessions] of sortedGroups) {\n const [agentId, ...rootParts] = groupKey.split(':');\n lines.push(`${agentId}/${rootParts.join(':')}`);\n const sorted = [...groupSessions].sort((a, b) => (b.updatedAt ?? 0) - (a.updatedAt ?? 0));\n const visible = sorted.slice(0, limitPerGroup);\n for (const session of visible) {\n const current = session.key === options.currentSessionKey ? '*' : ' ';\n const group = sessionTreeGroup(session);\n const label = session.displayName?.trim() || group.leaf;\n const description = formatSessionPickerDescription(session, {\n showKey: Boolean(session.displayName),\n });\n lines.push(` ${current} ${label}${description ? ` — ${description}` : ''}`);\n if (session.forkedFromSessionKey) {\n const source = byKey.get(session.forkedFromSessionKey);\n const sourceLabel = source?.displayName?.trim() || session.forkedFromSessionKey;\n lines.push(` forked from ${sourceLabel}`);\n }\n }\n if (sorted.length > visible.length) {\n lines.push(` ... ${sorted.length - visible.length} more`);\n }\n }\n lines.push('', 'Use /resume to search and open a session.');\n return lines.join('\\n');\n}\n\nexport function formatTuiTranscriptTreeInfo(\n entries: TuiTranscriptTreeEntry[],\n options: { limit?: number; allEntries?: TuiTranscriptTreeEntry[] } = {},\n): string {\n if (entries.length === 0) {\n return 'Transcript Tree\\n\\nNo transcript entries found.';\n }\n const limit = options.limit ?? 80;\n const visible = entries.slice(0, limit);\n const prefixes = transcriptTreeInfoPrefixes(visible, options.allEntries ?? entries);\n const lines = ['Transcript Tree', ''];\n for (const entry of visible) {\n const prefix = prefixes.get(entry.id) ?? (entry.depth === 0 ? '-' : ' └─');\n const activeMarker = entry.isOnActivePath || entry.isCurrentLeaf ? '• ' : '';\n const turn = entry.turn > 0 ? `#${entry.turn} ` : '';\n const userLabel = entry.userLabel ? `[${entry.userLabel}] ` : '';\n lines.push(`${prefix} ${activeMarker}${turn}${userLabel}${formatTuiTranscriptTreeEntryDisplayText(entry)}`);\n }\n if (entries.length > visible.length) {\n lines.push('', `Showing ${visible.length} of ${entries.length} entries.`);\n }\n lines.push('', 'Interactive /tree supports search, filters, folds, labels, and fork selection.');\n return lines.join('\\n');\n}\n\nfunction transcriptTreeInfoPrefixes(\n entries: TuiTranscriptTreeEntry[],\n allEntries: TuiTranscriptTreeEntry[] = entries,\n): Map<string, string> {\n const byId = new Map(allEntries.map((entry) => [entry.id, entry]));\n const visibleIds = new Set(entries.map((entry) => entry.id));\n const parentByEntryId = new Map<string, string | null>();\n const childrenByParentId = new Map<string | null, string[]>();\n\n const nearestVisibleParent = (entry: TuiTranscriptTreeEntry, index: number): string | null => {\n let parentId = entry.parentId;\n while (parentId) {\n if (visibleIds.has(parentId)) return parentId;\n parentId = byId.get(parentId)?.parentId;\n }\n if (entry.depth > 0) {\n for (let i = index - 1; i >= 0; i -= 1) {\n const candidate = entries[i];\n if (candidate && candidate.depth < entry.depth) return candidate.id;\n }\n }\n return null;\n };\n\n for (const [index, entry] of entries.entries()) {\n const parentId = nearestVisibleParent(entry, index);\n parentByEntryId.set(entry.id, parentId);\n const children = childrenByParentId.get(parentId) ?? [];\n children.push(entry.id);\n childrenByParentId.set(parentId, children);\n }\n\n const prefixes = new Map<string, string>();\n for (const entry of entries) {\n const visibleParentId = parentByEntryId.get(entry.id) ?? null;\n if (visibleParentId === null) {\n prefixes.set(entry.id, '-');\n continue;\n }\n\n const ancestors: string[] = [];\n let parentId: string | null | undefined = visibleParentId;\n while (parentId) {\n ancestors.unshift(parentId);\n parentId = parentByEntryId.get(parentId) ?? null;\n }\n\n let prefix = ' ';\n for (const ancestor of ancestors.slice(1)) {\n prefix += hasTranscriptTreeInfoFollowingSibling(\n ancestor,\n parentByEntryId.get(ancestor) ?? null,\n childrenByParentId,\n )\n ? '│ '\n : ' ';\n }\n prefix += hasTranscriptTreeInfoFollowingSibling(entry.id, visibleParentId, childrenByParentId)\n ? '├─'\n : '└─';\n prefixes.set(entry.id, prefix);\n }\n return prefixes;\n}\n\nfunction hasTranscriptTreeInfoFollowingSibling(\n entryId: string,\n parentId: string | null,\n childrenByParentId: Map<string | null, string[]>,\n): boolean {\n const siblings = childrenByParentId.get(parentId) ?? [];\n return siblings.indexOf(entryId) < siblings.length - 1;\n}\n\nexport function formatTuiWorkflowsInfo(entries: CatalogEntry[]): string {\n if (entries.length === 0) {\n return 'Workflows\\n\\nNo workflows found.';\n }\n const lines = ['Workflows', ''];\n for (const entry of entries) {\n const tags = entry.tags?.length ? ` [${entry.tags.join(', ')}]` : '';\n lines.push(` ${entry.name} (${entry.source})${tags}`);\n if (entry.description) {\n lines.push(` ${entry.description}`);\n }\n }\n lines.push('', 'Run a workflow with /<name>, or inspect one with /workflow view <name>.');\n return lines.join('\\n');\n}\n\nexport function formatTuiWorkflowDetail(name: string): string {\n const catalog = createWorkflowCatalog();\n const loaded = catalog.load(name);\n const meta = loaded.meta;\n const lines = [\n `Workflow: ${loaded.name}`,\n '',\n `Source: ${loaded.source}${loaded.path ? ` (${loaded.path})` : ''}`,\n `Description: ${meta.description}`,\n ];\n if (meta.whenToUse) {\n lines.push(`When to use: ${meta.whenToUse}`);\n }\n if (meta.tags?.length) {\n lines.push(`Tags: ${meta.tags.join(', ')}`);\n }\n if (meta.estimatedAgents) {\n lines.push(`Agents: ${meta.estimatedAgents.min}-${meta.estimatedAgents.max}`);\n }\n lines.push('', 'Script:', loaded.script.trim());\n return lines.join('\\n');\n}\n\nfunction formatTuiSessionStatsBlock(stats?: TuiSessionStats): string[] {\n if (!stats) return [];\n return [\n '',\n 'Messages',\n `User: ${formatNumber(stats.userMessages)}`,\n `Assistant: ${formatNumber(stats.assistantMessages)}`,\n `Tool Calls: ${formatNumber(stats.toolCalls)}`,\n `Tool Results: ${formatNumber(stats.toolResults)}`,\n `Context Rows: ${formatNumber(stats.contextRows)}`,\n `Total Rows: ${formatNumber(stats.totalMessages)}`,\n '',\n 'Token Usage',\n `Input: ${formatNumber(stats.tokens.input)}`,\n `Output: ${formatNumber(stats.tokens.output)}`,\n `Cache Read: ${formatNumber(stats.tokens.cacheRead)}`,\n `Cache Write: ${formatNumber(stats.tokens.cacheWrite)}`,\n `Total: ${formatNumber(stats.tokens.total)}`,\n ];\n}\n\nexport function formatTuiSessionInfo(state: TuiState, stats?: TuiSessionStats): string {\n const parsedKey = parseAgentSessionKey(state.currentSessionKey);\n const tokenEstimate = state.sessionInfo.totalTokens ?? state.sessionInfo.contextTokens;\n const contextPercent =\n state.sessionInfo.contextUsagePercent ??\n computeContextUsagePercent(tokenEstimate, state.sessionInfo.contextWindow);\n const contextLabel =\n formatContextUsageLabel(contextPercent, state.sessionInfo.contextWindow) ?? '-';\n const connectionLabel = state.isConnected ? 'connected' : 'disconnected';\n\n return [\n 'Session Info',\n '',\n `Name: ${formatMaybe(state.sessionInfo.displayName)}`,\n `Key: ${state.currentSessionKey}`,\n `Agent: ${formatMaybe(parsedKey?.agentId)}`,\n `Connection: ${connectionLabel} (${formatMaybe(state.connectionStatus)})`,\n `Activity: ${formatMaybe(state.activityStatus)}`,\n `Model: ${formatModelLabel(state)}`,\n `Thinking: ${formatMaybe(state.sessionInfo.thinkingLevel)}`,\n `Reasoning: ${formatMaybe(state.sessionInfo.reasoningLevel)}`,\n `Verbose: ${formatMaybe(state.sessionInfo.verboseLevel)}`,\n `Tokens: ${formatNumber(tokenEstimate)}`,\n `Context: ${contextLabel}`,\n `Tools: ${state.toolsExpanded ? 'expanded' : 'collapsed'}`,\n `Thinking Display: ${state.showThinking ? 'on' : 'off'}`,\n `Queue: ${state.messageFollowUpQueue.length}`,\n `Steering Queue: ${state.steeringQueue.length}`,\n ...formatTuiSessionStatsBlock(stats),\n ].join('\\n');\n}\n\nexport function formatTuiUsageInfo(state: TuiState, stats?: TuiSessionStats): string {\n const tokenEstimate = state.sessionInfo.totalTokens ?? state.sessionInfo.contextTokens;\n const contextPercent =\n state.sessionInfo.contextUsagePercent ??\n computeContextUsagePercent(tokenEstimate, state.sessionInfo.contextWindow);\n const contextLabel =\n formatContextUsageLabel(contextPercent, state.sessionInfo.contextWindow) ?? '-';\n\n return [\n 'Usage',\n '',\n `Estimated Tokens: ${formatNumber(tokenEstimate)}`,\n `Context Window: ${formatNumber(state.sessionInfo.contextWindow)}`,\n `Context Usage: ${contextLabel}`,\n `Model: ${formatModelLabel(state)}`,\n ...(stats\n ? [\n '',\n 'Transcript Tokens',\n `Input: ${formatNumber(stats.tokens.input)}`,\n `Output: ${formatNumber(stats.tokens.output)}`,\n `Cache Read: ${formatNumber(stats.tokens.cacheRead)}`,\n `Cache Write: ${formatNumber(stats.tokens.cacheWrite)}`,\n `Total: ${formatNumber(stats.tokens.total)}`,\n '',\n 'Transcript Rows',\n `User: ${formatNumber(stats.userMessages)}`,\n `Assistant: ${formatNumber(stats.assistantMessages)}`,\n `Tool Calls: ${formatNumber(stats.toolCalls)}`,\n `Tool Results: ${formatNumber(stats.toolResults)}`,\n `Context Rows: ${formatNumber(stats.contextRows)}`,\n `Total Rows: ${formatNumber(stats.totalMessages)}`,\n ]\n : []),\n ].join('\\n');\n}\n\nexport function formatTuiCompactionResult(result: TuiCompactionResult): string {\n if (!result.compacted) {\n return result.summary ?? 'Nothing to compact';\n }\n const before = formatNumber(result.tokensBefore);\n const after = formatNumber(result.tokensAfter);\n const summary = result.transcriptSummary?.trim();\n const lines = [\n '[compaction]',\n '',\n `Tokens: ${before} -> ${after}`,\n ];\n if (summary) {\n lines.push('', summary);\n } else if (result.summary) {\n lines.push('', result.summary);\n }\n return lines.join('\\n');\n}\n\nexport function formatTuiContextInfo(state: TuiState): string {\n const tokenEstimate = state.sessionInfo.totalTokens ?? state.sessionInfo.contextTokens;\n const contextPercent =\n state.sessionInfo.contextUsagePercent ??\n computeContextUsagePercent(tokenEstimate, state.sessionInfo.contextWindow);\n const contextLabel =\n formatContextUsageLabel(contextPercent, state.sessionInfo.contextWindow) ?? '-';\n const remaining =\n tokenEstimate != null && state.sessionInfo.contextWindow != null\n ? Math.max(0, state.sessionInfo.contextWindow - tokenEstimate)\n : null;\n\n return [\n 'Context',\n '',\n `Used: ${formatNumber(tokenEstimate)}`,\n `Window: ${formatNumber(state.sessionInfo.contextWindow)}`,\n `Remaining: ${formatNumber(remaining)}`,\n `Usage: ${contextLabel}`,\n ].join('\\n');\n}\n\nexport function formatTuiConfigInfo(state: TuiState): string {\n const scopedModels =\n state.scopedModelRefs == null\n ? 'all'\n : state.scopedModelRefs.length === 0\n ? 'none'\n : state.scopedModelRefs.join(', ');\n return [\n 'Config',\n '',\n `Session: ${state.currentSessionKey}`,\n `Model: ${formatModelLabel(state)}`,\n `Thinking: ${formatMaybe(state.sessionInfo.thinkingLevel)}`,\n `Reasoning: ${formatMaybe(state.sessionInfo.reasoningLevel)}`,\n `Verbose: ${formatMaybe(state.sessionInfo.verboseLevel)}`,\n `Workspace: ${formatMaybe(state.sessionInfo.effectiveWorkspacePath)}`,\n `Tools: ${state.toolsExpanded ? 'expanded' : 'collapsed'}`,\n `Thinking Display: ${state.showThinking ? 'on' : 'off'}`,\n `Scoped Models: ${scopedModels}`,\n ].join('\\n');\n}\n\ntype TuiTrustProvenance = {\n extensionId: string;\n source: string;\n installMethod?: string;\n};\n\nfunction extensionSecurityConfig(config: Config): {\n checkPermissions: boolean;\n allowUntrusted: boolean;\n allow: string[];\n trackProvenance: boolean;\n allowPromptInjection: boolean;\n} {\n const raw = (config.extensions as Record<string, unknown> | undefined)?.security;\n const sec = raw && typeof raw === 'object' ? raw as Record<string, unknown> : {};\n return {\n checkPermissions: sec.checkPermissions !== false,\n allowUntrusted: sec.allowUntrusted === true,\n allow: Array.isArray(sec.allow) ? sec.allow.filter((id): id is string => typeof id === 'string') : [],\n trackProvenance: sec.trackProvenance !== false,\n allowPromptInjection: sec.allowPromptInjection === true,\n };\n}\n\nexport function formatTuiTrustInfo(\n config: Config,\n options: {\n configPath?: string;\n provenance?: TuiTrustProvenance[];\n cwd?: string;\n projectTrustStorePath?: string;\n projectTrustEntry?: ProjectTrustStoreEntry | null;\n projectTrustSessionDecision?: boolean | null;\n hasProjectResources?: boolean;\n } = {},\n): string {\n const security = extensionSecurityConfig(config);\n const enabled = Array.isArray((config.extensions as Record<string, unknown> | undefined)?.enabled)\n ? ((config.extensions as Record<string, unknown>).enabled as unknown[])\n .filter((id): id is string => typeof id === 'string')\n : [];\n const disabled = Array.isArray((config.extensions as Record<string, unknown> | undefined)?.disabled)\n ? ((config.extensions as Record<string, unknown>).disabled as unknown[])\n .filter((id): id is string => typeof id === 'string')\n : [];\n const provenance = options.provenance ?? [];\n const projectTrustEntry = options.projectTrustEntry ?? null;\n const projectTrustStatus =\n options.projectTrustSessionDecision !== null && options.projectTrustSessionDecision !== undefined\n ? `${options.projectTrustSessionDecision ? 'trusted' : 'not trusted'} (this session)`\n : projectTrustEntry\n ? `${projectTrustEntry.decision ? 'trusted' : 'not trusted'} from ${projectTrustEntry.path}`\n : 'not saved';\n const lines = [\n 'Extension Trust',\n '',\n 'Project trust gates project-local xopc resources and extension UI context.',\n '',\n `Project: ${options.cwd ?? 'unknown'}`,\n `Project Resources: ${options.hasProjectResources === undefined ? 'unknown' : options.hasProjectResources ? 'detected' : 'none detected'}`,\n `Project Trust: ${projectTrustStatus}`,\n `Trust Store: ${options.projectTrustStorePath ?? '(default)'}`,\n '',\n `Config: ${options.configPath ?? resolveConfigPath()}`,\n `Permission Checks: ${security.checkPermissions ? 'on' : 'off'}`,\n `Allow Untrusted: ${security.allowUntrusted ? 'yes' : 'no'}`,\n `Prompt Injection Hooks: ${security.allowPromptInjection ? 'allowed' : 'blocked'}`,\n `Track Provenance: ${security.trackProvenance ? 'on' : 'off'}`,\n `Allowlist: ${security.allow.length ? security.allow.join(', ') : '(empty)'}`,\n `Enabled: ${enabled.length ? enabled.join(', ') : '(activation rules/defaults)'}`,\n `Disabled: ${disabled.length ? disabled.join(', ') : '(none)'}`,\n ];\n\n if (provenance.length > 0) {\n lines.push('', 'Loaded Extensions:');\n for (const item of provenance.slice(0, 20)) {\n const method = item.installMethod ? `, ${item.installMethod}` : '';\n lines.push(` ${item.extensionId} — ${item.source}${method}`);\n }\n if (provenance.length > 20) {\n lines.push(` ... ${provenance.length - 20} more`);\n }\n }\n\n lines.push(\n '',\n 'Use /trust to change project trust for this folder or its parent.',\n 'To trust specific extensions, add their ids to extensions.security.allow and run /reload.',\n 'To audit installed extensions, run: xopc extensions audit',\n );\n return lines.join('\\n');\n}\n"],"mappings":"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"}
@@ -1,21 +1,29 @@
1
1
  import type { KeybindingsManager, TUI } from '@earendil-works/pi-tui';
2
+ import type { TuiCompactionResult, TuiModelChoice, TuiShareRequest, TuiSessionStats, TuiSessionItem, TuiStartupResources, TuiTranscriptTreeEntry, TuiAgentInfo } from './tui-backend.js';
2
3
  import type { ChatLog } from './components/chat-log.js';
3
- import type { StreamAssembler } from './stream-assembler.js';
4
+ import { type TuiHotkeyExtensionShortcut } from './format-tui-hotkeys.js';
4
5
  import type { TuiState } from './tui-types.js';
6
+ import { type ReasoningLevel, type ThinkLevel, type VerboseLevel } from '../agent/transcript/thinking-types.js';
7
+ import { type AuthProfileEntry } from '../auth/profiles/index.js';
8
+ import type { TuiSlashCommandContext, TuiSlashCommandHandler } from '../extensions/types/tui.js';
9
+ import type { ProjectTrustStoreEntry } from '../project-trust/trust-store.js';
5
10
  interface SlashCommandDef {
6
11
  name: string;
12
+ originalName?: string;
7
13
  description: string;
8
14
  }
9
15
  export type TuiExtensionSlashCommandEntry = SlashCommandDef & {
10
- handler: (args: string) => void | Promise<void>;
16
+ handler: TuiSlashCommandHandler;
17
+ getContext?: () => TuiSlashCommandContext;
11
18
  };
12
- export declare function getSlashCommands(_isLocal: boolean): SlashCommandDef[];
13
- export declare function formatTuiHelpText(isLocal: boolean): string;
19
+ export declare function getSlashCommands(_isLocal: boolean, keybindings?: KeybindingsManager): SlashCommandDef[];
20
+ export declare function formatTuiHelpText(isLocal: boolean, keybindings?: KeybindingsManager, extraSlashCommands?: SlashCommandDef[]): string;
21
+ export declare function formatTuiStartText(state: TuiState, isLocal: boolean, keybindings?: KeybindingsManager, resources?: TuiStartupResources): string;
22
+ import { type TuiExportRequest, type TuiImportRequest } from './tui-command-formatters.js';
14
23
  export type CommandHandlerDeps = {
15
24
  state: TuiState;
16
25
  chatLog: ChatLog;
17
26
  tui: TUI;
18
- assembler: StreamAssembler;
19
27
  isLocalMode: boolean;
20
28
  abortActive: () => Promise<void>;
21
29
  sendMessage: (text: string) => void;
@@ -23,16 +31,58 @@ export type CommandHandlerDeps = {
23
31
  updateFooter: () => void;
24
32
  keybindings: KeybindingsManager;
25
33
  uiOverlays?: {
34
+ openModelPicker: (initialSearch?: string) => void;
35
+ openAgentPicker?: () => void;
26
36
  openSessionPicker: () => void;
37
+ openSessionTree: () => void;
38
+ openTranscriptTree: () => void;
39
+ openUserMessageFork: () => void;
27
40
  openScopedModels: () => void;
41
+ openThinkingSelector: () => void;
28
42
  openSettings: () => void;
29
- reloadKeybindings: () => void;
43
+ openProjectTrust: () => void;
44
+ reloadKeybindings: () => void | Promise<void>;
30
45
  };
31
- runCompaction?: () => void | Promise<void>;
46
+ setThinkingLevel?: (level: ThinkLevel) => void | Promise<void>;
47
+ setReasoningLevel?: (level: ReasoningLevel) => void | Promise<void>;
48
+ setVerboseLevel?: (level: VerboseLevel) => void | Promise<void>;
49
+ copyLastAssistant?: () => void | Promise<void>;
50
+ renameCurrentSession?: (name: string) => void | Promise<void>;
51
+ runCompaction?: (instructions?: string) => void | Promise<void | TuiCompactionResult>;
52
+ listModels?: () => TuiModelChoice[] | Promise<TuiModelChoice[]>;
53
+ switchModel?: (modelRef: string) => void | Promise<void>;
54
+ listSessions?: () => TuiSessionItem[] | Promise<TuiSessionItem[]>;
55
+ listAgents?: () => TuiAgentInfo[] | Promise<TuiAgentInfo[]>;
56
+ switchAgentSession?: (sessionKey: string, agentId: string) => void | Promise<void>;
57
+ getSessionStats?: () => TuiSessionStats | Promise<TuiSessionStats>;
58
+ getStartupResources?: () => TuiStartupResources | undefined;
59
+ loadTranscriptTree?: () => TuiTranscriptTreeEntry[] | Promise<TuiTranscriptTreeEntry[]>;
60
+ exportSession?: (request: TuiExportRequest) => void | Promise<void>;
61
+ importSession?: (request: TuiImportRequest) => void | Promise<void>;
62
+ createShare?: (request: TuiShareRequest) => void | Promise<void>;
63
+ authProfiles?: {
64
+ listAll: () => AuthProfileEntry[] | Promise<AuthProfileEntry[]>;
65
+ listProvider: (provider: string) => AuthProfileEntry[] | Promise<AuthProfileEntry[]>;
66
+ remove: (profileId: string) => boolean | Promise<boolean>;
67
+ getStorePath: () => string;
68
+ };
69
+ projectTrust?: {
70
+ cwd: string;
71
+ hasProjectResources: () => boolean;
72
+ getStorePath: () => string;
73
+ getEntry: () => ProjectTrustStoreEntry | null;
74
+ getSessionDecision: () => boolean | null;
75
+ };
76
+ runLogin?: (provider?: string) => void | Promise<void>;
77
+ runBtwQuery?: (question: string) => void | Promise<void>;
78
+ forkSession?: (rawKey?: string) => void | Promise<void>;
32
79
  extensionSlashCommands?: TuiExtensionSlashCommandEntry[];
80
+ extensionShortcuts?: TuiHotkeyExtensionShortcut[];
33
81
  currentAgentId?: string;
34
82
  setSession?: (rawKey: string) => Promise<void>;
35
83
  resetSession?: () => Promise<void>;
84
+ recoverStream?: () => void | Promise<void>;
85
+ retryLastMessage?: () => void | Promise<void>;
36
86
  };
37
87
  export declare function createTuiCommandHandler(deps: CommandHandlerDeps): (input: string) => void;
38
88
  export {};