@xopcai/xopc 0.0.116 → 0.0.118

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 (677) hide show
  1. package/README.md +44 -28
  2. package/README.zh-CN.md +63 -45
  3. package/dist/browser-ext/manifest.json +1 -1
  4. package/dist/extensions/demo-memory/src/index.d.ts +6 -0
  5. package/dist/extensions/demo-memory/src/index.js +132 -0
  6. package/dist/extensions/demo-memory/src/index.js.map +1 -0
  7. package/dist/extensions/demo-memory/xopc.extension.json +15 -0
  8. package/dist/extensions/feishu/src/outbound/media-load.js +1 -1
  9. package/dist/extensions/feishu/src/schema/config-schema.d.ts +3 -3
  10. package/dist/extensions/feishu/src/workflow-progress.js +1 -1
  11. package/dist/extensions/telegram/src/adapters/streaming-adapter.js +1 -1
  12. package/dist/extensions/telegram/src/command-handler.js +1 -2
  13. package/dist/extensions/telegram/src/command-handler.js.map +1 -1
  14. package/dist/extensions/telegram/src/config-schema.d.ts +8 -8
  15. package/dist/extensions/telegram/src/inbound-processor.js +1 -1
  16. package/dist/extensions/telegram/src/plugin.js +1 -1
  17. package/dist/extensions/telegram/src/routing-integration.js +2 -2
  18. package/dist/extensions/telegram/src/update-offset-store.js +1 -1
  19. package/dist/extensions/telegram/src/workflow-progress.js +1 -1
  20. package/dist/extensions/telegram/xopc.extension.json +1 -1
  21. package/dist/extensions/weixin/src/api/api.js +2 -2
  22. package/dist/extensions/weixin/src/auth/accounts.js +1 -1
  23. package/dist/extensions/weixin/src/cdn/upload.js +1 -1
  24. package/dist/extensions/weixin/src/config-schema.d.ts +3 -3
  25. package/dist/extensions/weixin/src/media/data-url.js +1 -1
  26. package/dist/extensions/weixin/src/messaging/debug-mode.js +1 -1
  27. package/dist/extensions/weixin/src/messaging/inbound.js +1 -1
  28. package/dist/extensions/weixin/src/messaging/process-message.js +1 -1
  29. package/dist/extensions/weixin/src/plugin.js +1 -1
  30. package/dist/extensions/weixin/src/storage/sync-buf.js +1 -1
  31. package/dist/extensions/weixin/src/workflow-progress.js +1 -1
  32. package/dist/gateway/static/root/assets/{agent-avatar-dicebear-CWM1UU5P.js → agent-avatar-dicebear-dzUrQoeZ.js} +1 -1
  33. package/dist/gateway/static/root/assets/agents-BCxZbkOw.js +2 -0
  34. package/dist/gateway/static/root/assets/{app-management-settings-panel-yXSXY_bu.js → app-management-settings-panel-bxYJVJpx.js} +1 -1
  35. package/dist/gateway/static/root/assets/{appearance-settings-DjY1P_ug.js → appearance-settings-BCIykXlI.js} +1 -1
  36. package/dist/gateway/static/root/assets/apps-page--wMEL00f.js +1 -0
  37. package/dist/gateway/static/root/assets/{archive-plugin-CytE5j-e.js → archive-plugin-Cki4SfU2.js} +1 -1
  38. package/dist/gateway/static/root/assets/{attachment-load-BvvrN6rF.js → attachment-load-D-KnS2Do.js} +1 -1
  39. package/dist/gateway/static/root/assets/{binary-plugins-IBWSitnj.js → binary-plugins-D2sgvJja.js} +1 -1
  40. package/dist/gateway/static/root/assets/{block-editor-C-wDpsf-.js → block-editor-DIq-4Gvb.js} +27 -27
  41. package/dist/gateway/static/root/assets/browser-settings-page-DRhKdn81.js +8 -0
  42. package/dist/gateway/static/root/assets/capability-presets-api-CorhiHlg.js +1 -0
  43. package/dist/gateway/static/root/assets/capability-presets-settings-panel-qFx9Jtce.js +1 -0
  44. package/dist/gateway/static/root/assets/channels-settings-BAwAkqIA.js +1 -0
  45. package/dist/gateway/static/root/assets/connectors-page-BQLcfitM.js +2 -0
  46. package/dist/gateway/static/root/assets/cron-api-qGwmL-24.js +1 -0
  47. package/dist/gateway/static/root/assets/cron-page-BBWMAj8-.js +3 -0
  48. package/dist/gateway/static/root/assets/dreaming-settings-Dw89Obml.js +1 -0
  49. package/dist/gateway/static/root/assets/{extension-debug-page-BAIyjDlq.js → extension-debug-page-DYu1KaFQ.js} +1 -1
  50. package/dist/gateway/static/root/assets/{extension-page-DEhv2GpC.js → extension-page-B3W6QwlZ.js} +1 -1
  51. package/dist/gateway/static/root/assets/{extension-settings-page-DOuAxTDW.js → extension-settings-page-D7VQ-cxE.js} +1 -1
  52. package/dist/gateway/static/root/assets/{fetch-CTsREQIe.js → fetch-B7xDPu-R.js} +1 -1
  53. package/dist/gateway/static/root/assets/{format-interval-label-D35Bfhtx.js → format-interval-label-BzxafKxR.js} +1 -1
  54. package/dist/gateway/static/root/assets/gateway-config-api-BTBLSeUu.js +1 -0
  55. package/dist/gateway/static/root/assets/gateway-settings-Cmwy58rS.js +1 -0
  56. package/dist/gateway/static/root/assets/{gateway-startup-retry-C1KAHrd2.js → gateway-startup-retry-CYj9FWCp.js} +1 -1
  57. package/dist/gateway/static/root/assets/goal-detail-page-l7mu5GWX.js +1 -0
  58. package/dist/gateway/static/root/assets/{goals-config-api-KnLGpu6h.js → goals-config-api-CQQgzPr3.js} +1 -1
  59. package/dist/gateway/static/root/assets/goals-page-BHitvJAv.js +2 -0
  60. package/dist/gateway/static/root/assets/{goals-settings-DtPtqZi8.js → goals-settings-CYVY4NGp.js} +1 -1
  61. package/dist/gateway/static/root/assets/{heartbeat-config-api-uKw1f0IG.js → heartbeat-config-api-DriO_CN9.js} +1 -1
  62. package/dist/gateway/static/root/assets/heartbeat-settings-CUQTKxg7.js +1 -0
  63. package/dist/gateway/static/root/assets/index-C17Tsd_b.css +1 -0
  64. package/dist/gateway/static/root/assets/index-Cc41r16l.js +191 -0
  65. package/dist/gateway/static/root/assets/{interval-presets-Dq0FXJ65.js → interval-presets-DFPCKW_W.js} +1 -1
  66. package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-C9_t4m7t.js → keyboard-shortcuts-settings-CcVcqstx.js} +1 -1
  67. package/dist/gateway/static/root/assets/{logs-page-SNkWzidV.js → logs-page-C2Uqvae9.js} +2 -2
  68. package/dist/gateway/static/root/assets/{markdown-split-Ca87W8-h.js → markdown-split-BwOFrJ2E.js} +1 -1
  69. package/dist/gateway/static/root/assets/{media-plugins-BAcUjPRJ.js → media-plugins-Cnz6Q5G6.js} +1 -1
  70. package/dist/gateway/static/root/assets/messages-B1iSKjiw.js +3 -0
  71. package/dist/gateway/static/root/assets/models-hub-panel-BfLfcta8.js +2 -0
  72. package/dist/gateway/static/root/assets/note-detail-page-BjwOQBfT.js +2 -0
  73. package/dist/gateway/static/root/assets/{note-image-lightbox-hnSX5SSn.js → note-image-lightbox-B-Svpmza.js} +1 -1
  74. package/dist/gateway/static/root/assets/notes-page-DktdBiwB.js +1 -0
  75. package/dist/gateway/static/root/assets/{preview-open-alternatives-CNgM20H5.js → preview-open-alternatives-Bss4TiwP.js} +1 -1
  76. package/dist/gateway/static/root/assets/remote-access-hub-rfVx96fq.js +1 -0
  77. package/dist/gateway/static/root/assets/{save-bar-controls-CcdjGcfT.js → save-bar-controls-BRNjdgKq.js} +1 -1
  78. package/dist/gateway/static/root/assets/{schedule-field-CYr39z76.js → schedule-field-CUCKODde.js} +1 -1
  79. package/dist/gateway/static/root/assets/{schema-form-BRAJgZQ2.js → schema-form-Dub9sy8r.js} +1 -1
  80. package/dist/gateway/static/root/assets/sessions-page-DbtMFuuH.js +1 -0
  81. package/dist/gateway/static/root/assets/settings-advanced-gate-5re5gAnP.js +1 -0
  82. package/dist/gateway/static/root/assets/{settings-collapsible-section-BhzjeGWi.js → settings-collapsible-section-BeFLavGi.js} +1 -1
  83. package/dist/gateway/static/root/assets/{settings-form-section-Cz3Pcr9b.js → settings-form-section-dmyaPOTG.js} +1 -1
  84. package/dist/gateway/static/root/assets/settings-page-D-WMyLlj.js +1 -0
  85. package/dist/gateway/static/root/assets/setup-status-panel-Cl-DEJAU.js +1 -0
  86. package/dist/gateway/static/root/assets/{share-preview-page-DL4y9K5e.js → share-preview-page-C8glrdqe.js} +1 -1
  87. package/dist/gateway/static/root/assets/shares-settings-CyPVvbLt.js +1 -0
  88. package/dist/gateway/static/root/assets/skill-reload-api-CleTH1oz.js +1 -0
  89. package/dist/gateway/static/root/assets/skills-page-Ck8hdXqR.js +2 -0
  90. package/dist/gateway/static/root/assets/{system-settings-panel-FD2jxRZ3.js → system-settings-panel-DI-LN_8G.js} +1 -1
  91. package/dist/gateway/static/root/assets/typed-models-lib-kX9duch4.js +1 -0
  92. package/dist/gateway/static/root/assets/{use-channel-catalog-BInPrfR5.js → use-channel-catalog-DqlWTsDb.js} +1 -1
  93. package/dist/gateway/static/root/assets/user-profile-settings-panel-B-UFPMXy.js +1 -0
  94. package/dist/gateway/static/root/assets/utils-Dm0hKalR.js +1 -0
  95. package/dist/gateway/static/root/assets/voice-api-key-field-C73IVZeC.js +1 -0
  96. package/dist/gateway/static/root/assets/{voice-player-store-1U3vFppm.js → voice-player-store-C_ArLJPM.js} +1 -1
  97. package/dist/gateway/static/root/assets/workflows-page-BtFGp2y_.js +18 -0
  98. package/dist/gateway/static/root/index.html +5 -5
  99. package/dist/package.js +1 -1
  100. package/dist/src/agent/agent-manager.d.ts +1 -1
  101. package/dist/src/agent/agent-manager.js +14 -14
  102. package/dist/src/agent/agent-manager.js.map +1 -1
  103. package/dist/src/agent/agent-scope.js +5 -9
  104. package/dist/src/agent/agent-scope.js.map +1 -1
  105. package/dist/src/agent/background-review/coordinator.js +0 -1
  106. package/dist/src/agent/background-review/coordinator.js.map +1 -1
  107. package/dist/src/agent/background-review/prompts.d.ts +2 -2
  108. package/dist/src/agent/background-review/prompts.js +2 -2
  109. package/dist/src/agent/background-review/prompts.js.map +1 -1
  110. package/dist/src/agent/background-review/run-background-review.d.ts +0 -2
  111. package/dist/src/agent/background-review/run-background-review.js +2 -4
  112. package/dist/src/agent/background-review/run-background-review.js.map +1 -1
  113. package/dist/src/agent/background-review/settings.d.ts +1 -1
  114. package/dist/src/agent/background-review/settings.js +8 -8
  115. package/dist/src/agent/background-review/settings.js.map +1 -1
  116. package/dist/src/agent/bootstrap/bootstrap-cache.d.ts +1 -0
  117. package/dist/src/agent/bootstrap/bootstrap-cache.js +4 -3
  118. package/dist/src/agent/bootstrap/bootstrap-cache.js.map +1 -1
  119. package/dist/src/agent/bootstrap/bootstrap-context.d.ts +2 -2
  120. package/dist/src/agent/bootstrap/bootstrap-context.js +4 -4
  121. package/dist/src/agent/bootstrap/bootstrap-context.js.map +1 -1
  122. package/dist/src/agent/bootstrap/bootstrap-files.d.ts +4 -0
  123. package/dist/src/agent/bootstrap/bootstrap-files.js +4 -3
  124. package/dist/src/agent/bootstrap/bootstrap-files.js.map +1 -1
  125. package/dist/src/agent/bootstrap/filter-bootstrap-files.js +4 -2
  126. package/dist/src/agent/bootstrap/filter-bootstrap-files.js.map +1 -1
  127. package/dist/src/agent/bootstrap/load-bootstrap-files.d.ts +2 -1
  128. package/dist/src/agent/bootstrap/load-bootstrap-files.js +18 -17
  129. package/dist/src/agent/bootstrap/load-bootstrap-files.js.map +1 -1
  130. package/dist/src/agent/bootstrap/project-agents-context.js +1 -1
  131. package/dist/src/agent/bootstrap/types.d.ts +1 -1
  132. package/dist/src/agent/context/workspace-seed.js +3 -3
  133. package/dist/src/agent/context/workspace-state.js +1 -1
  134. package/dist/src/agent/context/workspace-templates/AGENTS.md +1 -1
  135. package/dist/src/agent/context/workspace.d.ts +4 -2
  136. package/dist/src/agent/context/workspace.js +6 -5
  137. package/dist/src/agent/context/workspace.js.map +1 -1
  138. package/dist/src/agent/embedded/run-for-session.js +4 -1
  139. package/dist/src/agent/embedded/run-for-session.js.map +1 -1
  140. package/dist/src/agent/fallback/candidates.js +11 -9
  141. package/dist/src/agent/fallback/candidates.js.map +1 -1
  142. package/dist/src/agent/goals/goal-locale.js +2 -2
  143. package/dist/src/agent/goals/post-turn.js +3 -3
  144. package/dist/src/agent/image/generation/runtime-types.d.ts +2 -0
  145. package/dist/src/agent/image/generation/runtime.js +1 -1
  146. package/dist/src/agent/image/generation/runtime.js.map +1 -1
  147. package/dist/src/agent/image/image-helpers.d.ts +1 -1
  148. package/dist/src/agent/image/image-helpers.js +4 -17
  149. package/dist/src/agent/image/image-helpers.js.map +1 -1
  150. package/dist/src/agent/image/image-model-fallback.js +1 -1
  151. package/dist/src/agent/image/image-model-fallback.js.map +1 -1
  152. package/dist/src/agent/image/inbound-image-handling.js +1 -1
  153. package/dist/src/agent/image/inbound-image-handling.js.map +1 -1
  154. package/dist/src/agent/image/load-image-media.js +2 -2
  155. package/dist/src/agent/image/tool-model-config.d.ts +1 -1
  156. package/dist/src/agent/image/tool-model-config.js +2 -2
  157. package/dist/src/agent/image/tool-model-config.js.map +1 -1
  158. package/dist/src/agent/ipc/inbox.js +3 -3
  159. package/dist/src/agent/ipc/socket.js +1 -1
  160. package/dist/src/agent/mcp/bundle-mcp-materialize.js +1 -1
  161. package/dist/src/agent/mcp/bundle-mcp-runtime.js +1 -1
  162. package/dist/src/agent/mcp/mcp-transport-config.js +1 -1
  163. package/dist/src/agent/mcp/mcp-transport.js +1 -1
  164. package/dist/src/agent/mcp/resolve-embedded-mcp-tools.js +1 -1
  165. package/dist/src/agent/mcp/resolve-embedded-mcp-tools.js.map +1 -1
  166. package/dist/src/agent/media-generation/runtime-shared.d.ts +5 -2
  167. package/dist/src/agent/media-generation/runtime-shared.js +1 -1
  168. package/dist/src/agent/media-generation/runtime-shared.js.map +1 -1
  169. package/dist/src/agent/memory/builtin-memory-store.d.ts +6 -2
  170. package/dist/src/agent/memory/builtin-memory-store.js +15 -6
  171. package/dist/src/agent/memory/builtin-memory-store.js.map +1 -1
  172. package/dist/src/agent/memory/builtin-provider.d.ts +31 -9
  173. package/dist/src/agent/memory/builtin-provider.js +290 -11
  174. package/dist/src/agent/memory/builtin-provider.js.map +1 -1
  175. package/dist/src/agent/memory/candidate-extractor.d.ts +6 -0
  176. package/dist/src/agent/memory/candidate-extractor.js +60 -0
  177. package/dist/src/agent/memory/candidate-extractor.js.map +1 -0
  178. package/dist/src/agent/memory/context-assembler.d.ts +10 -0
  179. package/dist/src/agent/memory/context-assembler.js +26 -0
  180. package/dist/src/agent/memory/context-assembler.js.map +1 -0
  181. package/dist/src/agent/memory/create-memory-manager.js +25 -7
  182. package/dist/src/agent/memory/create-memory-manager.js.map +1 -1
  183. package/dist/src/agent/memory/dreaming/config.d.ts +1 -6
  184. package/dist/src/agent/memory/dreaming/config.js +8 -8
  185. package/dist/src/agent/memory/dreaming/config.js.map +1 -1
  186. package/dist/src/agent/memory/dreaming/deep-promotion.d.ts +2 -0
  187. package/dist/src/agent/memory/dreaming/deep-promotion.js +25 -1
  188. package/dist/src/agent/memory/dreaming/deep-promotion.js.map +1 -1
  189. package/dist/src/agent/memory/dreaming/events.js +1 -1
  190. package/dist/src/agent/memory/dreaming/last-run.js +1 -1
  191. package/dist/src/agent/memory/dreaming/light-sweep.js +1 -1
  192. package/dist/src/agent/memory/dreaming/preview.js +1 -1
  193. package/dist/src/agent/memory/dreaming/rem-patterns.js +1 -1
  194. package/dist/src/agent/memory/dreaming/short-term-store.js +1 -1
  195. package/dist/src/agent/memory/dreaming/utils.js +1 -1
  196. package/dist/src/agent/memory/index.d.ts +1 -0
  197. package/dist/src/agent/memory/index.js +4 -3
  198. package/dist/src/agent/memory/inject-prefetch.js +6 -2
  199. package/dist/src/agent/memory/inject-prefetch.js.map +1 -1
  200. package/dist/src/agent/memory/manager.d.ts +39 -2
  201. package/dist/src/agent/memory/manager.js +355 -39
  202. package/dist/src/agent/memory/manager.js.map +1 -1
  203. package/dist/src/agent/memory/memory-config.js +15 -15
  204. package/dist/src/agent/memory/memory-config.js.map +1 -1
  205. package/dist/src/agent/memory/memory-flush.js +1 -1
  206. package/dist/src/agent/memory/plugin-discovery.d.ts +19 -5
  207. package/dist/src/agent/memory/plugin-discovery.js +97 -31
  208. package/dist/src/agent/memory/plugin-discovery.js.map +1 -1
  209. package/dist/src/agent/memory/prefetch-coordinator.js.map +1 -1
  210. package/dist/src/agent/memory/provider.d.ts +20 -15
  211. package/dist/src/agent/memory/stub-memory-provider.d.ts +17 -2
  212. package/dist/src/agent/memory/stub-memory-provider.js +20 -3
  213. package/dist/src/agent/memory/stub-memory-provider.js.map +1 -1
  214. package/dist/src/agent/memory/types.d.ts +162 -3
  215. package/dist/src/agent/models/manager.d.ts +1 -1
  216. package/dist/src/agent/models/manager.js +2 -2
  217. package/dist/src/agent/models/manager.js.map +1 -1
  218. package/dist/src/agent/orchestration/agent-orchestrator.d.ts +1 -1
  219. package/dist/src/agent/orchestration/agent-orchestrator.js +2 -1
  220. package/dist/src/agent/orchestration/agent-orchestrator.js.map +1 -1
  221. package/dist/src/agent/orchestration/run-agent-turn-with-fallbacks.d.ts +2 -2
  222. package/dist/src/agent/orchestration/run-agent-turn-with-fallbacks.js +1 -1
  223. package/dist/src/agent/orchestration/run-agent-turn-with-fallbacks.js.map +1 -1
  224. package/dist/src/agent/orchestration/run-agent-turn-with-timeout.d.ts +2 -6
  225. package/dist/src/agent/orchestration/run-agent-turn-with-timeout.js +2 -8
  226. package/dist/src/agent/orchestration/run-agent-turn-with-timeout.js.map +1 -1
  227. package/dist/src/agent/prompt/memory/index.d.ts +4 -2
  228. package/dist/src/agent/prompt/memory/index.js +19 -13
  229. package/dist/src/agent/prompt/memory/index.js.map +1 -1
  230. package/dist/src/agent/prompt/sections/memory-skills.js +1 -1
  231. package/dist/src/agent/prompt/sections/memory-skills.js.map +1 -1
  232. package/dist/src/agent/prompt/service-prompt-builder.js +5 -20
  233. package/dist/src/agent/prompt/service-prompt-builder.js.map +1 -1
  234. package/dist/src/agent/reply/post-compaction-context.js +10 -7
  235. package/dist/src/agent/reply/post-compaction-context.js.map +1 -1
  236. package/dist/src/agent/reply/startup-context.js +7 -12
  237. package/dist/src/agent/reply/startup-context.js.map +1 -1
  238. package/dist/src/agent/reply/workspace-boundary-read.js +1 -1
  239. package/dist/src/agent/sandbox/path-policy.js +2 -2
  240. package/dist/src/agent/service/process-direct-streaming.js +1 -4
  241. package/dist/src/agent/service/process-direct-streaming.js.map +1 -1
  242. package/dist/src/agent/service/session-context-report.js +1 -1
  243. package/dist/src/agent/service/session-context-report.js.map +1 -1
  244. package/dist/src/agent/service.d.ts +3 -3
  245. package/dist/src/agent/service.js +30 -35
  246. package/dist/src/agent/service.js.map +1 -1
  247. package/dist/src/agent/service.types.d.ts +1 -2
  248. package/dist/src/agent/session/session-hydrator.js +1 -2
  249. package/dist/src/agent/session/session-hydrator.js.map +1 -1
  250. package/dist/src/agent/session/session-inspector.d.ts +1 -1
  251. package/dist/src/agent/session/session-inspector.js +10 -15
  252. package/dist/src/agent/session/session-inspector.js.map +1 -1
  253. package/dist/src/agent/skills/config.js +2 -2
  254. package/dist/src/agent/skills/filesystem-watcher.js +1 -1
  255. package/dist/src/agent/skills/hub-hash.js +2 -2
  256. package/dist/src/agent/skills/hub-lock.js +1 -1
  257. package/dist/src/agent/skills/hub-pull.js +3 -3
  258. package/dist/src/agent/skills/index.js +2 -2
  259. package/dist/src/agent/skills/installer.js +2 -2
  260. package/dist/src/agent/skills/managed-store.js +1 -1
  261. package/dist/src/agent/skills/skill-manage-ops.js +1 -1
  262. package/dist/src/agent/skills/skill-manager.js +1 -1
  263. package/dist/src/agent/skills/skill-view-path.js +1 -1
  264. package/dist/src/agent/skills/test-framework.js +1 -1
  265. package/dist/src/agent/starter-agents.d.ts +1 -3
  266. package/dist/src/agent/starter-agents.js +14 -22
  267. package/dist/src/agent/starter-agents.js.map +1 -1
  268. package/dist/src/agent/tools/browser/tool/browser-use-tool.js +1 -2
  269. package/dist/src/agent/tools/browser/tool/browser-use-tool.js.map +1 -1
  270. package/dist/src/agent/tools/curated-memory-tool.d.ts +2 -5
  271. package/dist/src/agent/tools/curated-memory-tool.js +77 -18
  272. package/dist/src/agent/tools/curated-memory-tool.js.map +1 -1
  273. package/dist/src/agent/tools/dreaming-tool.js +1 -1
  274. package/dist/src/agent/tools/factory.d.ts +0 -4
  275. package/dist/src/agent/tools/factory.js +19 -58
  276. package/dist/src/agent/tools/factory.js.map +1 -1
  277. package/dist/src/agent/tools/find.js +1 -1
  278. package/dist/src/agent/tools/grep.js +1 -1
  279. package/dist/src/agent/tools/image-generate-tool.d.ts +1 -1
  280. package/dist/src/agent/tools/image-generate-tool.js +20 -15
  281. package/dist/src/agent/tools/image-generate-tool.js.map +1 -1
  282. package/dist/src/agent/tools/image-tool.js +1 -3
  283. package/dist/src/agent/tools/image-tool.js.map +1 -1
  284. package/dist/src/agent/tools/memory-tool.d.ts +2 -2
  285. package/dist/src/agent/tools/memory-tool.js +39 -14
  286. package/dist/src/agent/tools/memory-tool.js.map +1 -1
  287. package/dist/src/agent/tools/session-search-tool.js +1 -3
  288. package/dist/src/agent/tools/session-search-tool.js.map +1 -1
  289. package/dist/src/agent/tools/skill-manage-tool.js +1 -1
  290. package/dist/src/agent/tools/web-extract.js +8 -9
  291. package/dist/src/agent/tools/web-extract.js.map +1 -1
  292. package/dist/src/agent/tools/workflow-tool.js +1 -1
  293. package/dist/src/agent/workflow/catalog.js +1 -1
  294. package/dist/src/agent/workflow/subagent-runner.js +1 -3
  295. package/dist/src/agent/workflow/subagent-runner.js.map +1 -1
  296. package/dist/src/agent-manifest/index.d.ts +4 -0
  297. package/dist/src/agent-manifest/index.js +10 -0
  298. package/dist/src/agent-manifest/index.js.map +1 -0
  299. package/dist/src/agent-manifest/prompt.d.ts +2 -0
  300. package/dist/src/agent-manifest/prompt.js +57 -0
  301. package/dist/src/agent-manifest/prompt.js.map +1 -0
  302. package/dist/src/agent-manifest/resolver.d.ts +12 -0
  303. package/dist/src/agent-manifest/resolver.js +95 -0
  304. package/dist/src/agent-manifest/resolver.js.map +1 -0
  305. package/dist/src/agent-manifest/schema.d.ts +1010 -0
  306. package/dist/src/agent-manifest/schema.js +269 -0
  307. package/dist/src/agent-manifest/schema.js.map +1 -0
  308. package/dist/src/agent-manifest/validator.d.ts +25 -0
  309. package/dist/src/agent-manifest/validator.js +88 -0
  310. package/dist/src/agent-manifest/validator.js.map +1 -0
  311. package/dist/src/agent-runtime/boundary-guard.d.ts +12 -0
  312. package/dist/src/agent-runtime/boundary-guard.js +23 -0
  313. package/dist/src/agent-runtime/boundary-guard.js.map +1 -0
  314. package/dist/src/agent-runtime/index.d.ts +7 -0
  315. package/dist/src/agent-runtime/index.js +8 -0
  316. package/dist/src/agent-runtime/memory-runtime.d.ts +21 -0
  317. package/dist/src/agent-runtime/memory-runtime.js +50 -0
  318. package/dist/src/agent-runtime/memory-runtime.js.map +1 -0
  319. package/dist/src/agent-runtime/model-router.d.ts +11 -0
  320. package/dist/src/agent-runtime/model-router.js +16 -0
  321. package/dist/src/agent-runtime/model-router.js.map +1 -0
  322. package/dist/src/agent-runtime/run-trace.d.ts +27 -0
  323. package/dist/src/agent-runtime/run-trace.js +53 -0
  324. package/dist/src/agent-runtime/run-trace.js.map +1 -0
  325. package/dist/src/agent-runtime/runtime-profile.d.ts +24 -0
  326. package/dist/src/agent-runtime/runtime-profile.js +44 -0
  327. package/dist/src/agent-runtime/runtime-profile.js.map +1 -0
  328. package/dist/src/agent-runtime/tool-registry.d.ts +28 -0
  329. package/dist/src/agent-runtime/tool-registry.js +52 -0
  330. package/dist/src/agent-runtime/tool-registry.js.map +1 -0
  331. package/dist/src/agent-runtime/workflow-runtime.d.ts +31 -0
  332. package/dist/src/agent-runtime/workflow-runtime.js +34 -0
  333. package/dist/src/agent-runtime/workflow-runtime.js.map +1 -0
  334. package/dist/src/ai-assist/text-assist.js +1 -1
  335. package/dist/src/auth/credentials.js +2 -2
  336. package/dist/src/auth/profiles/store.js +2 -2
  337. package/dist/src/auth/sync-provider-auth.js +1 -1
  338. package/dist/src/browser/actions/extension-registry-bridge.js +1 -1
  339. package/dist/src/browser/actions/extension-registry-bridge.js.map +1 -1
  340. package/dist/src/browser/actions/registry.js +5 -8
  341. package/dist/src/browser/actions/registry.js.map +1 -1
  342. package/dist/src/browser/backend-from-config.d.ts +1 -1
  343. package/dist/src/browser/backend-from-config.js +50 -71
  344. package/dist/src/browser/backend-from-config.js.map +1 -1
  345. package/dist/src/browser/browser-command-timeout.d.ts +0 -1
  346. package/dist/src/browser/browser-command-timeout.js +3 -7
  347. package/dist/src/browser/browser-command-timeout.js.map +1 -1
  348. package/dist/src/browser/cache-dir-policy.js +1 -1
  349. package/dist/src/browser/cdp-local-launcher.js +2 -2
  350. package/dist/src/browser/pipeline/source.js +1 -1
  351. package/dist/src/browser/providers/browser-ext-install.d.ts +2 -12
  352. package/dist/src/browser/providers/browser-ext-install.js +7 -12
  353. package/dist/src/browser/providers/browser-ext-install.js.map +1 -1
  354. package/dist/src/browser/providers/cloakbrowser.js +5 -5
  355. package/dist/src/browser/providers/playwright-doctor.js +1 -1
  356. package/dist/src/browser/readiness.js +16 -16
  357. package/dist/src/browser/readiness.js.map +1 -1
  358. package/dist/src/browser/schemas.js +1 -1
  359. package/dist/src/browser/schemas.js.map +1 -1
  360. package/dist/src/browser/stealth.js +1 -1
  361. package/dist/src/channels/catalog/channel-catalog-service.js +1 -1
  362. package/dist/src/channels/outbound/persist-store.js +1 -1
  363. package/dist/src/channels/pairing/allow-from-file.js +1 -1
  364. package/dist/src/channels/pairing/pairing-store.js +2 -2
  365. package/dist/src/channels/pipeline.d.ts +1 -1
  366. package/dist/src/channels/pipeline.js.map +1 -1
  367. package/dist/src/chat-commands/agent-edit.js +2 -3
  368. package/dist/src/chat-commands/agent-edit.js.map +1 -1
  369. package/dist/src/chat-commands/builtins/config.js +6 -6
  370. package/dist/src/chat-commands/builtins/config.js.map +1 -1
  371. package/dist/src/chat-commands/builtins/model.js +2 -2
  372. package/dist/src/chat-commands/builtins/model.js.map +1 -1
  373. package/dist/src/chat-commands/builtins/thinking.js +16 -42
  374. package/dist/src/chat-commands/builtins/thinking.js.map +1 -1
  375. package/dist/src/chat-commands/config-paths.js +1 -1
  376. package/dist/src/chat-commands/config-paths.js.map +1 -1
  377. package/dist/src/chat-commands/context.js +3 -4
  378. package/dist/src/chat-commands/context.js.map +1 -1
  379. package/dist/src/cli/command-manifest.d.ts +1 -1
  380. package/dist/src/cli/command-manifest.js +2 -2
  381. package/dist/src/cli/command-manifest.js.map +1 -1
  382. package/dist/src/cli/commands/agent.js +3 -1
  383. package/dist/src/cli/commands/agent.js.map +1 -1
  384. package/dist/src/cli/commands/agents.js +3 -6
  385. package/dist/src/cli/commands/agents.js.map +1 -1
  386. package/dist/src/cli/commands/browser-cli-helpers.js +9 -11
  387. package/dist/src/cli/commands/browser-cli-helpers.js.map +1 -1
  388. package/dist/src/cli/commands/config.js +6 -6
  389. package/dist/src/cli/commands/config.js.map +1 -1
  390. package/dist/src/cli/commands/doctor/checks/config-health.js +1 -1
  391. package/dist/src/cli/commands/doctor/checks/database-schema.js +1 -1
  392. package/dist/src/cli/commands/doctor/checks/provider-auth.js +3 -18
  393. package/dist/src/cli/commands/doctor/checks/provider-auth.js.map +1 -1
  394. package/dist/src/cli/commands/doctor/checks/state-integrity.js +1 -1
  395. package/dist/src/cli/commands/doctor/checks/workspace-status.js +1 -2
  396. package/dist/src/cli/commands/doctor/checks/workspace-status.js.map +1 -1
  397. package/dist/src/cli/commands/extension-create.js +1 -1
  398. package/dist/src/cli/commands/extension-dev.js +2 -2
  399. package/dist/src/cli/commands/extension-marketplace.js +2 -2
  400. package/dist/src/cli/commands/extension-pack.js +2 -2
  401. package/dist/src/cli/commands/extension.js +3 -3
  402. package/dist/src/cli/commands/gateway/logs.js +1 -1
  403. package/dist/src/cli/commands/goal.js +1 -1
  404. package/dist/src/cli/commands/image.js +13 -372
  405. package/dist/src/cli/commands/image.js.map +1 -1
  406. package/dist/src/cli/commands/init.js +7 -6
  407. package/dist/src/cli/commands/init.js.map +1 -1
  408. package/dist/src/cli/commands/models.js +14 -16
  409. package/dist/src/cli/commands/models.js.map +1 -1
  410. package/dist/src/cli/commands/onboard/channels/registry.js.map +1 -1
  411. package/dist/src/cli/commands/onboard/model.js +28 -23
  412. package/dist/src/cli/commands/onboard/model.js.map +1 -1
  413. package/dist/src/cli/commands/onboard.js +3 -3
  414. package/dist/src/cli/commands/onboard.js.map +1 -1
  415. package/dist/src/cli/commands/skills-test.js +1 -1
  416. package/dist/src/cli/commands/tui.js +2 -2
  417. package/dist/src/cli/commands/tui.js.map +1 -1
  418. package/dist/src/cli/index.d.ts +1 -0
  419. package/dist/src/cli/index.js +10 -5
  420. package/dist/src/cli/index.js.map +1 -1
  421. package/dist/src/cli/registry.js +1 -1
  422. package/dist/src/cli/registry.js.map +1 -1
  423. package/dist/src/cli/templates.d.ts +1 -1
  424. package/dist/src/cli/templates.js +2 -12
  425. package/dist/src/cli/templates.js.map +1 -1
  426. package/dist/src/cli/utils/gateway-client.js +1 -1
  427. package/dist/src/cli/utils/init-workspace-core.d.ts +1 -4
  428. package/dist/src/cli/utils/init-workspace-core.js +9 -8
  429. package/dist/src/cli/utils/init-workspace-core.js.map +1 -1
  430. package/dist/src/commands/agents.config.d.ts +0 -1
  431. package/dist/src/commands/agents.config.js +59 -13
  432. package/dist/src/commands/agents.config.js.map +1 -1
  433. package/dist/src/config/agent-profile.d.ts +5 -17
  434. package/dist/src/config/agent-profile.js +32 -64
  435. package/dist/src/config/agent-profile.js.map +1 -1
  436. package/dist/src/config/agent-typed-models.d.ts +1 -1
  437. package/dist/src/config/agent-typed-models.js +3 -6
  438. package/dist/src/config/agent-typed-models.js.map +1 -1
  439. package/dist/src/config/gateway-bind.js +1 -1
  440. package/dist/src/config/index.js +9 -9
  441. package/dist/src/config/integration.d.ts +1 -1
  442. package/dist/src/config/loader.js +4 -4
  443. package/dist/src/config/models-json.js +2 -2
  444. package/dist/src/config/paths-state.js +1 -1
  445. package/dist/src/config/paths.d.ts +8 -1
  446. package/dist/src/config/paths.js +17 -4
  447. package/dist/src/config/paths.js.map +1 -1
  448. package/dist/src/config/profile.js +1 -1
  449. package/dist/src/config/reload.js +2 -2
  450. package/dist/src/config/reload.js.map +1 -1
  451. package/dist/src/config/rules.js +6 -56
  452. package/dist/src/config/rules.js.map +1 -1
  453. package/dist/src/config/schema.d.ts +916 -779
  454. package/dist/src/config/schema.js +174 -423
  455. package/dist/src/config/schema.js.map +1 -1
  456. package/dist/src/config/workspace-path.js +1 -1
  457. package/dist/src/connectors/composio-triggers.js +1 -1
  458. package/dist/src/cron/executor.js +1 -1
  459. package/dist/src/cron/index.js +1 -1
  460. package/dist/src/cron/service.js +2 -2
  461. package/dist/src/cron/validation.d.ts +3 -3
  462. package/dist/src/daemon/constants.js +1 -1
  463. package/dist/src/daemon/install-plan.js +2 -2
  464. package/dist/src/daemon/launchd.js +2 -2
  465. package/dist/src/daemon/schtasks.js +2 -2
  466. package/dist/src/daemon/systemd.js +2 -2
  467. package/dist/src/extensions/activation-context.js +13 -7
  468. package/dist/src/extensions/activation-context.js.map +1 -1
  469. package/dist/src/extensions/bundle-mcp.js +1 -1
  470. package/dist/src/extensions/discover-extensions.js +2 -2
  471. package/dist/src/extensions/health.js +1 -1
  472. package/dist/src/extensions/install.js +2 -2
  473. package/dist/src/extensions/loader.js +2 -2
  474. package/dist/src/extensions/lockfile.js +3 -3
  475. package/dist/src/extensions/security.js +1 -1
  476. package/dist/src/extensions/update.js +2 -2
  477. package/dist/src/gateway/agents-admin.d.ts +24 -18
  478. package/dist/src/gateway/agents-admin.js +158 -92
  479. package/dist/src/gateway/agents-admin.js.map +1 -1
  480. package/dist/src/gateway/capability-presets-admin.d.ts +56 -0
  481. package/dist/src/gateway/capability-presets-admin.js +214 -0
  482. package/dist/src/gateway/capability-presets-admin.js.map +1 -0
  483. package/dist/src/gateway/chat-stream/mapper.js +9 -2
  484. package/dist/src/gateway/chat-stream/mapper.js.map +1 -1
  485. package/dist/src/gateway/file-path-classifier.js +2 -2
  486. package/dist/src/gateway/global-defaults-admin.d.ts +36 -0
  487. package/dist/src/gateway/global-defaults-admin.js +146 -0
  488. package/dist/src/gateway/global-defaults-admin.js.map +1 -0
  489. package/dist/src/gateway/hono/lib/agent-model.d.ts +1 -1
  490. package/dist/src/gateway/hono/lib/agent-model.js +1 -1
  491. package/dist/src/gateway/hono/lib/agent-model.js.map +1 -1
  492. package/dist/src/gateway/hono/lib/config-payload.d.ts +234 -127
  493. package/dist/src/gateway/hono/lib/config-payload.js +14 -38
  494. package/dist/src/gateway/hono/lib/config-payload.js.map +1 -1
  495. package/dist/src/gateway/hono/lib/extension-store.js +2 -2
  496. package/dist/src/gateway/hono/lib/static-ui.js +2 -2
  497. package/dist/src/gateway/hono/routes/agents.js +88 -33
  498. package/dist/src/gateway/hono/routes/agents.js.map +1 -1
  499. package/dist/src/gateway/hono/routes/auth-registry-extensions.js +1 -1
  500. package/dist/src/gateway/hono/routes/browser.js +8 -15
  501. package/dist/src/gateway/hono/routes/browser.js.map +1 -1
  502. package/dist/src/gateway/hono/routes/capability-presets.d.ts +3 -0
  503. package/dist/src/gateway/hono/routes/capability-presets.js +145 -0
  504. package/dist/src/gateway/hono/routes/capability-presets.js.map +1 -0
  505. package/dist/src/gateway/hono/routes/commands-skills.js +4 -5
  506. package/dist/src/gateway/hono/routes/commands-skills.js.map +1 -1
  507. package/dist/src/gateway/hono/routes/config-patch/agents.d.ts +1 -17
  508. package/dist/src/gateway/hono/routes/config-patch/agents.js +2 -443
  509. package/dist/src/gateway/hono/routes/config-patch/agents.js.map +1 -1
  510. package/dist/src/gateway/hono/routes/config-patch/misc.js +7 -1
  511. package/dist/src/gateway/hono/routes/config-patch/misc.js.map +1 -1
  512. package/dist/src/gateway/hono/routes/config.js +1 -1
  513. package/dist/src/gateway/hono/routes/config.js.map +1 -1
  514. package/dist/src/gateway/hono/routes/dreaming.js +8 -1
  515. package/dist/src/gateway/hono/routes/dreaming.js.map +1 -1
  516. package/dist/src/gateway/hono/routes/global-defaults.d.ts +3 -0
  517. package/dist/src/gateway/hono/routes/global-defaults.js +61 -0
  518. package/dist/src/gateway/hono/routes/global-defaults.js.map +1 -0
  519. package/dist/src/gateway/hono/routes/host-fs.js +2 -2
  520. package/dist/src/gateway/hono/routes/index.js +2 -0
  521. package/dist/src/gateway/hono/routes/index.js.map +1 -1
  522. package/dist/src/gateway/hono/routes/lazy-bundles.js +17 -1
  523. package/dist/src/gateway/hono/routes/lazy-bundles.js.map +1 -1
  524. package/dist/src/gateway/hono/routes/memory.d.ts +3 -0
  525. package/dist/src/gateway/hono/routes/memory.js +361 -0
  526. package/dist/src/gateway/hono/routes/memory.js.map +1 -0
  527. package/dist/src/gateway/hono/routes/models.js +2 -2
  528. package/dist/src/gateway/hono/routes/shares.js +1 -1
  529. package/dist/src/gateway/hono/routes/workflows.js +1 -1
  530. package/dist/src/gateway/hono/routes/workspace.js +2 -2
  531. package/dist/src/gateway/lock.js +3 -3
  532. package/dist/src/gateway/ports.js +1 -1
  533. package/dist/src/gateway/service/config-coordinator.js +1 -1
  534. package/dist/src/gateway/service/marketplace-service.d.ts +4 -4
  535. package/dist/src/gateway/service/marketplace-service.js +13 -9
  536. package/dist/src/gateway/service/marketplace-service.js.map +1 -1
  537. package/dist/src/gateway/service.d.ts +1 -1
  538. package/dist/src/gateway/service.js +15 -16
  539. package/dist/src/gateway/service.js.map +1 -1
  540. package/dist/src/gateway/workspace-fs-file-list.js +1 -1
  541. package/dist/src/goals/goal-workflow-judge.js +2 -2
  542. package/dist/src/i18n/goals-bundle.js +1 -1
  543. package/dist/src/i18n/index.js +1 -1
  544. package/dist/src/i18n/share-tool-bundle.js +2 -2
  545. package/dist/src/infra/brew.js +1 -1
  546. package/dist/src/infra/package-json.js +1 -1
  547. package/dist/src/infra/package-update-steps.js +1 -1
  548. package/dist/src/infra/path-env.js +2 -2
  549. package/dist/src/infra/restart.js +1 -1
  550. package/dist/src/infra/stable-node-path.js +1 -1
  551. package/dist/src/infra/update-check.js +1 -1
  552. package/dist/src/infra/update-global.js +1 -1
  553. package/dist/src/infra/update-lock.js +2 -2
  554. package/dist/src/infra/update-restart.js +1 -1
  555. package/dist/src/infra/update-runner.js +1 -1
  556. package/dist/src/infra/update-startup.js +1 -1
  557. package/dist/src/infra/write-file-atomic.js +2 -2
  558. package/dist/src/media/store.js +1 -1
  559. package/dist/src/notes/agent-context.js +3 -3
  560. package/dist/src/notes/service.js +4 -2
  561. package/dist/src/notes/service.js.map +1 -1
  562. package/dist/src/notes/store.js +2 -2
  563. package/dist/src/project-trust/trust-store.js +2 -2
  564. package/dist/src/providers/auth-runtime/auth-profile-store.js +1 -1
  565. package/dist/src/providers/index.d.ts +5 -6
  566. package/dist/src/providers/index.js +26 -30
  567. package/dist/src/providers/index.js.map +1 -1
  568. package/dist/src/providers/model-registry.js +4 -4
  569. package/dist/src/session/index.js +1 -1
  570. package/dist/src/session/init-session-turn.js +1 -1
  571. package/dist/src/session/resolve-session.js +1 -1
  572. package/dist/src/session/session-title.js +2 -2
  573. package/dist/src/session/store.js +1 -1
  574. package/dist/src/session/thinking-resolve.d.ts +1 -1
  575. package/dist/src/session/thinking-resolve.js +1 -1
  576. package/dist/src/session/thinking-resolve.js.map +1 -1
  577. package/dist/src/share/share-auto.js +2 -2
  578. package/dist/src/share/share-store.js +3 -3
  579. package/dist/src/share/share-thumbnail.js +2 -2
  580. package/dist/src/share/share-zip.js +1 -1
  581. package/dist/src/share/site-share-store.js +3 -3
  582. package/dist/src/share/site-static-serve.js +1 -1
  583. package/dist/src/storage/sqlite/connection.js +2 -2
  584. package/dist/src/storage/sqlite/index.d.ts +1 -0
  585. package/dist/src/storage/sqlite/index.js +2 -1
  586. package/dist/src/storage/sqlite/memory-index-repository.d.ts +1 -0
  587. package/dist/src/storage/sqlite/memory-index-repository.js +17 -16
  588. package/dist/src/storage/sqlite/memory-index-repository.js.map +1 -1
  589. package/dist/src/storage/sqlite/memory-records-repository.d.ts +144 -0
  590. package/dist/src/storage/sqlite/memory-records-repository.js +453 -0
  591. package/dist/src/storage/sqlite/memory-records-repository.js.map +1 -0
  592. package/dist/src/storage/sqlite/migrations/012_memory_records.sql +63 -0
  593. package/dist/src/storage/sqlite/migrations/013_memory_trace_events.sql +21 -0
  594. package/dist/src/storage/sqlite/migrations/014_memory_record_governance.sql +10 -0
  595. package/dist/src/storage/sqlite/migrations/015_memory_trace_feedback.sql +4 -0
  596. package/dist/src/storage/sqlite/migrations/discover.js +1 -1
  597. package/dist/src/storage/sqlite/migrations/runner.d.ts +1 -1
  598. package/dist/src/storage/sqlite/migrations/runner.js +4 -4
  599. package/dist/src/storage/sqlite/migrations/runner.js.map +1 -1
  600. package/dist/src/storage/sqlite/migrations/runner.ts +1 -1
  601. package/dist/src/storage/sqlite/schema.js +2 -2
  602. package/dist/src/storage/sqlite/schema.sql +86 -0
  603. package/dist/src/tui/backends/embedded-backend.d.ts +3 -0
  604. package/dist/src/tui/backends/embedded-backend.js +43 -24
  605. package/dist/src/tui/backends/embedded-backend.js.map +1 -1
  606. package/dist/src/tui/backends/gateway-sse-backend.d.ts +1 -0
  607. package/dist/src/tui/backends/gateway-sse-backend.js +16 -3
  608. package/dist/src/tui/backends/gateway-sse-backend.js.map +1 -1
  609. package/dist/src/tui/clipboard-image.js +3 -3
  610. package/dist/src/tui/components/tui-header.d.ts +0 -1
  611. package/dist/src/tui/components/tui-header.js +3 -8
  612. package/dist/src/tui/components/tui-header.js.map +1 -1
  613. package/dist/src/tui/extension-host/load-extensions.js +1 -1
  614. package/dist/src/tui/extension-host/load-extensions.js.map +1 -1
  615. package/dist/src/tui/theme-manager.js +1 -1
  616. package/dist/src/tui/tui-command-formatters.js +4 -4
  617. package/dist/src/tui/tui-commands.js +2 -2
  618. package/dist/src/tui/tui-keybindings-file.js +1 -1
  619. package/dist/src/tui/tui-scoped-models.js +2 -2
  620. package/dist/src/tui/tui-settings.js +1 -1
  621. package/dist/src/tui/tui-startup-resources.js +2 -1
  622. package/dist/src/tui/tui-startup-resources.js.map +1 -1
  623. package/dist/src/tui/tui-startup-text.js +12 -12
  624. package/dist/src/tui/tui-startup-text.js.map +1 -1
  625. package/dist/src/tui/tui.js +10 -7
  626. package/dist/src/tui/tui.js.map +1 -1
  627. package/dist/src/tunnel/frpc-binary.js +4 -4
  628. package/dist/src/tunnel/frpc-config.js +1 -1
  629. package/dist/src/tunnel/frpc-extract.js +1 -1
  630. package/dist/src/tunnel/tunnel-state.js +1 -1
  631. package/dist/src/utils/logger/audit.js +1 -1
  632. package/dist/src/utils/logger/log-store.js +1 -1
  633. package/dist/src/utils/logger/rotation.js +1 -1
  634. package/dist/src/utils/logger/streams.js +1 -1
  635. package/dist/src/voice/tts/audio.js +1 -1
  636. package/dist/src/voice/tts/providers/edge-speech.js +2 -2
  637. package/dist/src/workflows/draft/workflow-draft-service.js +1 -1
  638. package/dist/src/workflows/service/workflow-run-service.js +4 -5
  639. package/dist/src/workflows/service/workflow-run-service.js.map +1 -1
  640. package/dist/src/workflows/service/workflow-session-bridge.js +1 -1
  641. package/dist/src/workflows/store/event-store.js +1 -1
  642. package/dist/src/workflows/store/run-store.js +1 -1
  643. package/package.json +3 -2
  644. package/dist/gateway/static/root/assets/agent-browser-settings-page-D1SyFYeh.js +0 -6
  645. package/dist/gateway/static/root/assets/agent-defaults-tabbed-page-C9YxgvuI.js +0 -1
  646. package/dist/gateway/static/root/assets/agents-CteVs3UO.js +0 -71
  647. package/dist/gateway/static/root/assets/apps-page-CVQ1M8Ax.js +0 -1
  648. package/dist/gateway/static/root/assets/channels-settings-Cd3JbeQ1.js +0 -1
  649. package/dist/gateway/static/root/assets/config-api-C4RAtTKW.js +0 -3
  650. package/dist/gateway/static/root/assets/connectors-page-MsMa5qBr.js +0 -2
  651. package/dist/gateway/static/root/assets/cron-api-sJNMqB6P.js +0 -1
  652. package/dist/gateway/static/root/assets/cron-page-D30CSwkn.js +0 -3
  653. package/dist/gateway/static/root/assets/dreaming-settings-6fCUWRQf.js +0 -1
  654. package/dist/gateway/static/root/assets/gateway-config-api-C6989a-W.js +0 -1
  655. package/dist/gateway/static/root/assets/gateway-settings-BpF26t91.js +0 -1
  656. package/dist/gateway/static/root/assets/goal-detail-page-DOjhmRyf.js +0 -1
  657. package/dist/gateway/static/root/assets/goals-page-Xl9_wrFc.js +0 -2
  658. package/dist/gateway/static/root/assets/heartbeat-settings-DN9vEj9P.js +0 -1
  659. package/dist/gateway/static/root/assets/index-C8ytlAF2.js +0 -122
  660. package/dist/gateway/static/root/assets/index-CVpJW2NS.css +0 -1
  661. package/dist/gateway/static/root/assets/messages-BqzIDrlr.js +0 -3
  662. package/dist/gateway/static/root/assets/models-hub-panel-BO4o-GmO.js +0 -2
  663. package/dist/gateway/static/root/assets/note-detail-page-DLV_XDmT.js +0 -2
  664. package/dist/gateway/static/root/assets/notes-page-ycsDlkFA.js +0 -1
  665. package/dist/gateway/static/root/assets/remote-access-hub-DQpnE8K9.js +0 -1
  666. package/dist/gateway/static/root/assets/sessions-page-BZui7iAY.js +0 -1
  667. package/dist/gateway/static/root/assets/settings-advanced-gate-DEfzZ1ax.js +0 -1
  668. package/dist/gateway/static/root/assets/settings-page-CLuSsu1-.js +0 -1
  669. package/dist/gateway/static/root/assets/setup-status-panel-Cq4qpXLi.js +0 -1
  670. package/dist/gateway/static/root/assets/shares-settings-B9F3HyYQ.js +0 -1
  671. package/dist/gateway/static/root/assets/skill-reload-api-Bp9UPPwm.js +0 -1
  672. package/dist/gateway/static/root/assets/skills-page-BIoBsfSV.js +0 -2
  673. package/dist/gateway/static/root/assets/use-agent-defaults-form-Cz2_pPzu.js +0 -1
  674. package/dist/gateway/static/root/assets/use-settings-tab-guard-nuHMmZQv.js +0 -1
  675. package/dist/gateway/static/root/assets/voice-api-key-field-BUIrKb8s.js +0 -1
  676. package/dist/gateway/static/root/assets/workflows-page-qE3SexnO.js +0 -18
  677. package/dist/src/agent/context/workspace-templates/USER.md +0 -24
@@ -2,8 +2,8 @@ import { resolveStateDir } from "../config/paths-state.js";
2
2
  import { init_paths } from "../config/paths.js";
3
3
  import { palette } from "./theme/dark.js";
4
4
  import { palette as palette$1 } from "./theme/light.js";
5
- import { existsSync, readFileSync, readdirSync } from "node:fs";
6
5
  import { join } from "node:path";
6
+ import { existsSync, readFileSync, readdirSync } from "node:fs";
7
7
  import chalk from "chalk";
8
8
  //#region src/tui/theme-manager.ts
9
9
  init_paths();
@@ -1,9 +1,9 @@
1
- import { resolveConfigPath } from "../config/paths.js";
1
+ import { parseAgentSessionKey } from "../routing/session-key-utils.js";
2
+ import { init_agent_session_key } from "../routing/agent-session-key.js";
2
3
  import { getLogDir } from "../utils/logger/config.js";
3
4
  import { getRuntimeLogStats } from "../utils/logger/stats.js";
4
5
  import { init_logger } from "../utils/logger.js";
5
- import { parseAgentSessionKey } from "../routing/session-key-utils.js";
6
- import { init_agent_session_key } from "../routing/agent-session-key.js";
6
+ import { resolveConfigPath } from "../config/paths.js";
7
7
  import { getProviderDisplayName, getSortedProviders, init_providers, providerSupportsApiKey, providerSupportsOAuth } from "../providers/index.js";
8
8
  import { createWorkflowCatalog } from "../agent/workflow/catalog.js";
9
9
  import { normalizeVerboseLevel } from "../agent/transcript/thinking-types.js";
@@ -11,8 +11,8 @@ import "../config/index.js";
11
11
  import { computeContextUsagePercent, formatContextUsageLabel } from "./tui-context-usage.js";
12
12
  import { formatSessionPickerDescription } from "./tui-session-format.js";
13
13
  import { formatTuiTranscriptTreeEntryDisplayText } from "./tui-transcript-tree.js";
14
- import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
15
14
  import { dirname, join } from "node:path";
15
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
16
16
  import { visibleWidth } from "@earendil-works/pi-tui";
17
17
  //#region src/tui/tui-command-formatters.ts
18
18
  init_providers();
@@ -1,7 +1,7 @@
1
- import { resolveConfigPath } from "../config/paths.js";
2
- import { loadConfig } from "../config/loader.js";
3
1
  import { parseAgentSessionKey } from "../routing/session-key-utils.js";
4
2
  import { init_agent_session_key, isValidAgentId, normalizeAgentId } from "../routing/agent-session-key.js";
3
+ import { resolveConfigPath } from "../config/paths.js";
4
+ import { loadConfig } from "../config/loader.js";
5
5
  import { init_providers, providerSupportsOAuth } from "../providers/index.js";
6
6
  import { createWorkflowCatalog } from "../agent/workflow/catalog.js";
7
7
  import { normalizeReasoningLevel, normalizeThinkLevel, normalizeVerboseLevel } from "../agent/transcript/thinking-types.js";
@@ -1,8 +1,8 @@
1
1
  import { resolveStateDir } from "../config/paths-state.js";
2
2
  import { init_paths } from "../config/paths.js";
3
3
  import { XOPC_TUI_KEYBINDINGS } from "./xopc-tui-keybindings.js";
4
- import { existsSync, readFileSync } from "node:fs";
5
4
  import { join } from "node:path";
5
+ import { existsSync, readFileSync } from "node:fs";
6
6
  import { KeybindingsManager } from "@earendil-works/pi-tui";
7
7
  //#region src/tui/tui-keybindings-file.ts
8
8
  init_paths();
@@ -1,6 +1,6 @@
1
- import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
2
- import { join } from "node:path";
3
1
  import { homedir } from "node:os";
2
+ import { join } from "node:path";
3
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
4
4
  //#region src/tui/tui-scoped-models.ts
5
5
  const STORE_PATH = join(homedir(), ".xopc", "tui-scoped-models.json");
6
6
  function normalizeWorkspaceKey(cwd) {
@@ -1,7 +1,7 @@
1
1
  import { resolveStateDir } from "../config/paths-state.js";
2
2
  import { init_paths } from "../config/paths.js";
3
- import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
4
3
  import { join } from "node:path";
4
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
5
5
  //#region src/tui/tui-settings.ts
6
6
  init_paths();
7
7
  const DEFAULT_TUI_SETTINGS = {
@@ -1,6 +1,6 @@
1
1
  import { resolveStateDir } from "../config/paths-state.js";
2
- import { init_paths, resolveAgentProfileDir, resolveBundledSkillsDir } from "../config/paths.js";
3
2
  import { resolveEffectiveAgentProfileForSession } from "../config/agent-profile.js";
3
+ import { init_paths, resolveAgentProfileDir, resolveBundledSkillsDir, resolveUserProfilePath } from "../config/paths.js";
4
4
  import { resolveBootstrapFilesSync } from "../agent/bootstrap/bootstrap-files.js";
5
5
  import { createWorkflowCatalog } from "../agent/workflow/catalog.js";
6
6
  import { createSkillConfigManager, isSkillEnabled } from "../agent/skills/config.js";
@@ -20,6 +20,7 @@ function collectTuiStartupResources(config, sessionKey) {
20
20
  const workspaceDir = profile.resolvedWorkspacePath || getWorkspacePath(config);
21
21
  const context = uniqueSorted(resolveBootstrapFilesSync({
22
22
  profileDir,
23
+ userProfilePath: resolveUserProfilePath(),
23
24
  sessionKey
24
25
  }).filter((file) => !file.missing).map((file) => file.name || basename(file.path)));
25
26
  const skillsConfig = createSkillConfigManager(resolveStateDir()).load();
@@ -1 +1 @@
1
- {"version":3,"file":"tui-startup-resources.js","names":[],"sources":["../../../src/tui/tui-startup-resources.ts"],"sourcesContent":["import { basename } from 'node:path';\n\nimport { resolveBootstrapFilesSync } from '../agent/bootstrap/bootstrap-files.js';\nimport { loadSkills } from '../agent/skills/index.js';\nimport { isSkillEnabled, createSkillConfigManager } from '../agent/skills/config.js';\nimport { createWorkflowCatalog } from '../agent/workflow/catalog.js';\nimport { resolveEffectiveAgentProfileForSession } from '../config/agent-profile.js';\nimport { getWorkspacePath } from '../config/index.js';\nimport { resolveAgentProfileDir, resolveBundledSkillsDir, resolveStateDir } from '../config/paths.js';\nimport { listConnectorInstances } from '../connectors/instances.js';\nimport type { Config } from '../config/schema.js';\nimport type { TuiStartupResources } from './tui-backend.js';\n\nfunction uniqueSorted(values: Iterable<string>): string[] {\n return [...new Set([...values].map((value) => value.trim()).filter(Boolean))]\n .sort((a, b) => a.localeCompare(b));\n}\n\nexport function collectTuiStartupResources(config: Config, sessionKey?: string): TuiStartupResources {\n const profile = resolveEffectiveAgentProfileForSession(config, sessionKey);\n const profileDir = resolveAgentProfileDir(config, profile.agentId);\n const workspaceDir = profile.resolvedWorkspacePath || getWorkspacePath(config);\n\n const context = uniqueSorted(\n resolveBootstrapFilesSync({ profileDir, sessionKey })\n .filter((file) => !file.missing)\n .map((file) => file.name || basename(file.path)),\n );\n\n const skillsConfig = createSkillConfigManager(resolveStateDir()).load();\n const skills = uniqueSorted(\n loadSkills({\n workspaceDir,\n builtinDir: resolveBundledSkillsDir() ?? undefined,\n }).skills\n .filter((skill) => !skill.disableModelInvocation && isSkillEnabled(skill, skillsConfig))\n .map((skill) => skill.name),\n );\n\n const workflows = uniqueSorted(createWorkflowCatalog().list().map((entry) => entry.name));\n const connectors = uniqueSorted(\n listConnectorInstances(config).map((instance) => instance.displayName || instance.connectorId || instance.instanceId),\n );\n\n return { context, skills, workflows, connectors };\n}\n"],"mappings":";;;;;;;;;;;;YAQsG;AAKtG,SAAS,aAAa,QAAoC;AACxD,QAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,UAAU,MAAM,MAAM,CAAC,CAAC,OAAO,QAAQ,CAAC,CAAC,CAC1E,MAAM,GAAG,MAAM,EAAE,cAAc,EAAE,CAAC;;AAGvC,SAAgB,2BAA2B,QAAgB,YAA0C;CACnG,MAAM,UAAU,uCAAuC,QAAQ,WAAW;CAC1E,MAAM,aAAa,uBAAuB,QAAQ,QAAQ,QAAQ;CAClE,MAAM,eAAe,QAAQ,yBAAyB,iBAAiB,OAAO;CAE9E,MAAM,UAAU,aACd,0BAA0B;EAAE;EAAY;EAAY,CAAC,CAClD,QAAQ,SAAS,CAAC,KAAK,QAAQ,CAC/B,KAAK,SAAS,KAAK,QAAQ,SAAS,KAAK,KAAK,CAAC,CACnD;CAED,MAAM,eAAe,yBAAyB,iBAAiB,CAAC,CAAC,MAAM;AAevE,QAAO;EAAE;EAAS,QAdH,aACb,WAAW;GACT;GACA,YAAY,yBAAyB,IAAI,KAAA;GAC1C,CAAC,CAAC,OACA,QAAQ,UAAU,CAAC,MAAM,0BAA0B,eAAe,OAAO,aAAa,CAAC,CACvF,KAAK,UAAU,MAAM,KAAK,CAQP;EAAE,WALR,aAAa,uBAAuB,CAAC,MAAM,CAAC,KAAK,UAAU,MAAM,KAAK,CAKrD;EAAE,YAJlB,aACjB,uBAAuB,OAAO,CAAC,KAAK,aAAa,SAAS,eAAe,SAAS,eAAe,SAAS,WAAW,CAGxE;EAAE"}
1
+ {"version":3,"file":"tui-startup-resources.js","names":[],"sources":["../../../src/tui/tui-startup-resources.ts"],"sourcesContent":["import { basename } from 'node:path';\n\nimport { resolveBootstrapFilesSync } from '../agent/bootstrap/bootstrap-files.js';\nimport { loadSkills } from '../agent/skills/index.js';\nimport { isSkillEnabled, createSkillConfigManager } from '../agent/skills/config.js';\nimport { createWorkflowCatalog } from '../agent/workflow/catalog.js';\nimport { resolveEffectiveAgentProfileForSession } from '../config/agent-profile.js';\nimport { getWorkspacePath } from '../config/index.js';\nimport {\n resolveAgentProfileDir,\n resolveBundledSkillsDir,\n resolveStateDir,\n resolveUserProfilePath,\n} from '../config/paths.js';\nimport { listConnectorInstances } from '../connectors/instances.js';\nimport type { Config } from '../config/schema.js';\nimport type { TuiStartupResources } from './tui-backend.js';\n\nfunction uniqueSorted(values: Iterable<string>): string[] {\n return [...new Set([...values].map((value) => value.trim()).filter(Boolean))]\n .sort((a, b) => a.localeCompare(b));\n}\n\nexport function collectTuiStartupResources(config: Config, sessionKey?: string): TuiStartupResources {\n const profile = resolveEffectiveAgentProfileForSession(config, sessionKey);\n const profileDir = resolveAgentProfileDir(config, profile.agentId);\n const workspaceDir = profile.resolvedWorkspacePath || getWorkspacePath(config);\n\n const context = uniqueSorted(\n resolveBootstrapFilesSync({ profileDir, userProfilePath: resolveUserProfilePath(), sessionKey })\n .filter((file) => !file.missing)\n .map((file) => file.name || basename(file.path)),\n );\n\n const skillsConfig = createSkillConfigManager(resolveStateDir()).load();\n const skills = uniqueSorted(\n loadSkills({\n workspaceDir,\n builtinDir: resolveBundledSkillsDir() ?? undefined,\n }).skills\n .filter((skill) => !skill.disableModelInvocation && isSkillEnabled(skill, skillsConfig))\n .map((skill) => skill.name),\n );\n\n const workflows = uniqueSorted(createWorkflowCatalog().list().map((entry) => entry.name));\n const connectors = uniqueSorted(\n listConnectorInstances(config).map((instance) => instance.displayName || instance.connectorId || instance.instanceId),\n );\n\n return { context, skills, workflows, connectors };\n}\n"],"mappings":";;;;;;;;;;;;YAa4B;AAK5B,SAAS,aAAa,QAAoC;AACxD,QAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,UAAU,MAAM,MAAM,CAAC,CAAC,OAAO,QAAQ,CAAC,CAAC,CAC1E,MAAM,GAAG,MAAM,EAAE,cAAc,EAAE,CAAC;;AAGvC,SAAgB,2BAA2B,QAAgB,YAA0C;CACnG,MAAM,UAAU,uCAAuC,QAAQ,WAAW;CAC1E,MAAM,aAAa,uBAAuB,QAAQ,QAAQ,QAAQ;CAClE,MAAM,eAAe,QAAQ,yBAAyB,iBAAiB,OAAO;CAE9E,MAAM,UAAU,aACd,0BAA0B;EAAE;EAAY,iBAAiB,wBAAwB;EAAE;EAAY,CAAC,CAC7F,QAAQ,SAAS,CAAC,KAAK,QAAQ,CAC/B,KAAK,SAAS,KAAK,QAAQ,SAAS,KAAK,KAAK,CAAC,CACnD;CAED,MAAM,eAAe,yBAAyB,iBAAiB,CAAC,CAAC,MAAM;AAevE,QAAO;EAAE;EAAS,QAdH,aACb,WAAW;GACT;GACA,YAAY,yBAAyB,IAAI,KAAA;GAC1C,CAAC,CAAC,OACA,QAAQ,UAAU,CAAC,MAAM,0BAA0B,eAAe,OAAO,aAAa,CAAC,CACvF,KAAK,UAAU,MAAM,KAAK,CAQP;EAAE,WALR,aAAa,uBAAuB,CAAC,MAAM,CAAC,KAAK,UAAU,MAAM,KAAK,CAKrD;EAAE,YAJlB,aACjB,uBAAuB,OAAO,CAAC,KAAK,aAAa,SAAS,eAAe,SAAS,eAAe,SAAS,WAAW,CAGxE;EAAE"}
@@ -37,18 +37,18 @@ function formatTuiStartupText(input) {
37
37
  lines.push("");
38
38
  }
39
39
  lines.push(compactKeyLine(input.keybindings));
40
- lines.push("Press /start to show full startup help and loaded resources.");
41
- lines.push("");
42
- lines.push("xopc can use skills, workflows, connectors, and project context. Ask it how to automate or connect services.");
43
- if (expanded) lines.push("", "Ask xopc:", " \"what workflows are available?\"", " \"use a connector to check issues or docs\"", " \"what skills can help with this task?\"");
44
- lines.push("");
45
- lines.push(...formatResourceSection("Context", input.resources?.context, { expanded }));
46
- lines.push("");
47
- lines.push(...formatResourceSection("Skills", input.resources?.skills, { expanded }));
48
- lines.push("");
49
- lines.push(...formatResourceSection("Workflows", input.resources?.workflows, { expanded }));
50
- lines.push("");
51
- lines.push(...formatResourceSection("Connectors", input.resources?.connectors, { expanded }));
40
+ lines.push("Press /start to show full startup help.");
41
+ if (expanded) lines.push("", "xopc can use skills, workflows, connectors, and project context. Ask it how to automate or connect services.", "", "Ask xopc:", " \"what workflows are available?\"", " \"use a connector to check issues or docs\"", " \"what skills can help with this task?\"");
42
+ if (expanded) {
43
+ lines.push("");
44
+ lines.push(...formatResourceSection("Context", input.resources?.context, { expanded }));
45
+ lines.push("");
46
+ lines.push(...formatResourceSection("Skills", input.resources?.skills, { expanded }));
47
+ lines.push("");
48
+ lines.push(...formatResourceSection("Workflows", input.resources?.workflows, { expanded }));
49
+ lines.push("");
50
+ lines.push(...formatResourceSection("Connectors", input.resources?.connectors, { expanded }));
51
+ }
52
52
  if (expanded) lines.push("", "Useful commands:", " /help — Show all commands and shortcuts", " /workflow list — List saved workflows", " /models — List available models", " /settings — Open TUI settings", " /export — Export current session");
53
53
  return lines.join("\n");
54
54
  }
@@ -1 +1 @@
1
- {"version":3,"file":"tui-startup-text.js","names":[],"sources":["../../../src/tui/tui-startup-text.ts"],"sourcesContent":["import type { KeybindingsManager } from '@earendil-works/pi-tui';\n\nimport { formatKeyIds } from './format-tui-hotkeys.js';\nimport { formatModelLabel } from './tui-command-formatters.js';\nimport type { TuiStartupResources } from './tui-backend.js';\nimport type { TuiState } from './tui-types.js';\n\nconst DEFAULT_LIMIT = 6;\n\nfunction keyLabel(\n keybindings: KeybindingsManager | undefined,\n id: Parameters<KeybindingsManager['getKeys']>[0],\n fallback: string,\n): string {\n return keybindings ? formatKeyIds(keybindings, id, { capitalize: false }) : fallback;\n}\n\nfunction compactKeyLine(keybindings?: KeybindingsManager): string {\n const interrupt = keyLabel(keybindings, 'app.interrupt', 'escape');\n const clear = keyLabel(keybindings, 'app.clear', 'ctrl+c');\n const exit = keyLabel(keybindings, 'app.exit', 'ctrl+d');\n const tools = keyLabel(keybindings, 'app.tools.expand', 'ctrl+o');\n return `${interrupt} interrupt · ${clear}/${exit} clear/exit · / commands · ! bash · ${tools} tools`;\n}\n\nfunction formatResourceSection(\n title: string,\n values: readonly string[] | undefined,\n options: { expanded: boolean },\n): string[] {\n const list = [...new Set((values ?? []).map((v) => v.trim()).filter(Boolean))]\n .sort((a, b) => a.localeCompare(b));\n const lines = [`[${title}]`];\n if (list.length === 0) {\n lines.push(' none');\n return lines;\n }\n if (!options.expanded) {\n const visible = list.slice(0, DEFAULT_LIMIT);\n const suffix = list.length > visible.length ? `, ... ${list.length - visible.length} more` : '';\n lines.push(` ${visible.join(', ')}${suffix}`);\n return lines;\n }\n const visible = list.slice(0, 30);\n for (const value of visible) {\n lines.push(` ${value}`);\n }\n if (list.length > visible.length) {\n lines.push(` ... ${list.length - visible.length} more`);\n }\n return lines;\n}\n\nexport function formatTuiStartupText(input: {\n state: TuiState;\n isLocal: boolean;\n keybindings?: KeybindingsManager;\n resources?: TuiStartupResources;\n expanded?: boolean;\n}): string {\n const expanded = input.expanded === true;\n const lines: string[] = [];\n\n if (expanded) {\n lines.push('xopc TUI', '');\n lines.push(`Session: ${input.state.currentSessionKey}`);\n lines.push(`Mode: ${input.isLocal ? 'local embedded' : 'gateway'}`);\n lines.push(`Model: ${formatModelLabel(input.state)}`);\n lines.push('');\n }\n\n lines.push(compactKeyLine(input.keybindings));\n lines.push('Press /start to show full startup help and loaded resources.');\n lines.push('');\n lines.push(\n 'xopc can use skills, workflows, connectors, and project context. Ask it how to automate or connect services.',\n );\n\n if (expanded) {\n lines.push(\n '',\n 'Ask xopc:',\n ' \"what workflows are available?\"',\n ' \"use a connector to check issues or docs\"',\n ' \"what skills can help with this task?\"',\n );\n }\n\n lines.push('');\n lines.push(...formatResourceSection('Context', input.resources?.context, { expanded }));\n lines.push('');\n lines.push(...formatResourceSection('Skills', input.resources?.skills, { expanded }));\n lines.push('');\n lines.push(...formatResourceSection('Workflows', input.resources?.workflows, { expanded }));\n lines.push('');\n lines.push(...formatResourceSection('Connectors', input.resources?.connectors, { expanded }));\n\n if (expanded) {\n lines.push(\n '',\n 'Useful commands:',\n ' /help — Show all commands and shortcuts',\n ' /workflow list — List saved workflows',\n ' /models — List available models',\n ' /settings — Open TUI settings',\n ' /export — Export current session',\n );\n }\n\n return lines.join('\\n');\n}\n"],"mappings":";;;AAOA,MAAM,gBAAgB;AAEtB,SAAS,SACP,aACA,IACA,UACQ;AACR,QAAO,cAAc,aAAa,aAAa,IAAI,EAAE,YAAY,OAAO,CAAC,GAAG;;AAG9E,SAAS,eAAe,aAA0C;AAKhE,QAAO,GAJW,SAAS,aAAa,iBAAiB,SAItC,CAAC,eAHN,SAAS,aAAa,aAAa,SAGT,CAAC,GAF5B,SAAS,aAAa,YAAY,SAEC,CAAC,sCADnC,SAAS,aAAa,oBAAoB,SACoC,CAAC;;AAG/F,SAAS,sBACP,OACA,QACA,SACU;CACV,MAAM,OAAO,CAAC,GAAG,IAAI,KAAK,UAAU,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,CAAC,CAAC,OAAO,QAAQ,CAAC,CAAC,CAC3E,MAAM,GAAG,MAAM,EAAE,cAAc,EAAE,CAAC;CACrC,MAAM,QAAQ,CAAC,IAAI,MAAM,GAAG;AAC5B,KAAI,KAAK,WAAW,GAAG;AACrB,QAAM,KAAK,SAAS;AACpB,SAAO;;AAET,KAAI,CAAC,QAAQ,UAAU;EACrB,MAAM,UAAU,KAAK,MAAM,GAAG,cAAc;EAC5C,MAAM,SAAS,KAAK,SAAS,QAAQ,SAAS,SAAS,KAAK,SAAS,QAAQ,OAAO,SAAS;AAC7F,QAAM,KAAK,KAAK,QAAQ,KAAK,KAAK,GAAG,SAAS;AAC9C,SAAO;;CAET,MAAM,UAAU,KAAK,MAAM,GAAG,GAAG;AACjC,MAAK,MAAM,SAAS,QAClB,OAAM,KAAK,KAAK,QAAQ;AAE1B,KAAI,KAAK,SAAS,QAAQ,OACxB,OAAM,KAAK,SAAS,KAAK,SAAS,QAAQ,OAAO,OAAO;AAE1D,QAAO;;AAGT,SAAgB,qBAAqB,OAM1B;CACT,MAAM,WAAW,MAAM,aAAa;CACpC,MAAM,QAAkB,EAAE;AAE1B,KAAI,UAAU;AACZ,QAAM,KAAK,YAAY,GAAG;AAC1B,QAAM,KAAK,YAAY,MAAM,MAAM,oBAAoB;AACvD,QAAM,KAAK,SAAS,MAAM,UAAU,mBAAmB,YAAY;AACnE,QAAM,KAAK,UAAU,iBAAiB,MAAM,MAAM,GAAG;AACrD,QAAM,KAAK,GAAG;;AAGhB,OAAM,KAAK,eAAe,MAAM,YAAY,CAAC;AAC7C,OAAM,KAAK,+DAA+D;AAC1E,OAAM,KAAK,GAAG;AACd,OAAM,KACJ,+GACD;AAED,KAAI,SACF,OAAM,KACJ,IACA,aACA,uCACA,iDACA,6CACD;AAGH,OAAM,KAAK,GAAG;AACd,OAAM,KAAK,GAAG,sBAAsB,WAAW,MAAM,WAAW,SAAS,EAAE,UAAU,CAAC,CAAC;AACvF,OAAM,KAAK,GAAG;AACd,OAAM,KAAK,GAAG,sBAAsB,UAAU,MAAM,WAAW,QAAQ,EAAE,UAAU,CAAC,CAAC;AACrF,OAAM,KAAK,GAAG;AACd,OAAM,KAAK,GAAG,sBAAsB,aAAa,MAAM,WAAW,WAAW,EAAE,UAAU,CAAC,CAAC;AAC3F,OAAM,KAAK,GAAG;AACd,OAAM,KAAK,GAAG,sBAAsB,cAAc,MAAM,WAAW,YAAY,EAAE,UAAU,CAAC,CAAC;AAE7F,KAAI,SACF,OAAM,KACJ,IACA,oBACA,6CACA,2CACA,qCACA,mCACA,qCACD;AAGH,QAAO,MAAM,KAAK,KAAK"}
1
+ {"version":3,"file":"tui-startup-text.js","names":[],"sources":["../../../src/tui/tui-startup-text.ts"],"sourcesContent":["import type { KeybindingsManager } from '@earendil-works/pi-tui';\n\nimport { formatKeyIds } from './format-tui-hotkeys.js';\nimport { formatModelLabel } from './tui-command-formatters.js';\nimport type { TuiStartupResources } from './tui-backend.js';\nimport type { TuiState } from './tui-types.js';\n\nconst DEFAULT_LIMIT = 6;\n\nfunction keyLabel(\n keybindings: KeybindingsManager | undefined,\n id: Parameters<KeybindingsManager['getKeys']>[0],\n fallback: string,\n): string {\n return keybindings ? formatKeyIds(keybindings, id, { capitalize: false }) : fallback;\n}\n\nfunction compactKeyLine(keybindings?: KeybindingsManager): string {\n const interrupt = keyLabel(keybindings, 'app.interrupt', 'escape');\n const clear = keyLabel(keybindings, 'app.clear', 'ctrl+c');\n const exit = keyLabel(keybindings, 'app.exit', 'ctrl+d');\n const tools = keyLabel(keybindings, 'app.tools.expand', 'ctrl+o');\n return `${interrupt} interrupt · ${clear}/${exit} clear/exit · / commands · ! bash · ${tools} tools`;\n}\n\nfunction formatResourceSection(\n title: string,\n values: readonly string[] | undefined,\n options: { expanded: boolean },\n): string[] {\n const list = [...new Set((values ?? []).map((v) => v.trim()).filter(Boolean))]\n .sort((a, b) => a.localeCompare(b));\n const lines = [`[${title}]`];\n if (list.length === 0) {\n lines.push(' none');\n return lines;\n }\n if (!options.expanded) {\n const visible = list.slice(0, DEFAULT_LIMIT);\n const suffix = list.length > visible.length ? `, ... ${list.length - visible.length} more` : '';\n lines.push(` ${visible.join(', ')}${suffix}`);\n return lines;\n }\n const visible = list.slice(0, 30);\n for (const value of visible) {\n lines.push(` ${value}`);\n }\n if (list.length > visible.length) {\n lines.push(` ... ${list.length - visible.length} more`);\n }\n return lines;\n}\n\nexport function formatTuiStartupText(input: {\n state: TuiState;\n isLocal: boolean;\n keybindings?: KeybindingsManager;\n resources?: TuiStartupResources;\n expanded?: boolean;\n}): string {\n const expanded = input.expanded === true;\n const lines: string[] = [];\n\n if (expanded) {\n lines.push('xopc TUI', '');\n lines.push(`Session: ${input.state.currentSessionKey}`);\n lines.push(`Mode: ${input.isLocal ? 'local embedded' : 'gateway'}`);\n lines.push(`Model: ${formatModelLabel(input.state)}`);\n lines.push('');\n }\n\n lines.push(compactKeyLine(input.keybindings));\n lines.push('Press /start to show full startup help.');\n\n if (expanded) {\n lines.push(\n '',\n 'xopc can use skills, workflows, connectors, and project context. Ask it how to automate or connect services.',\n '',\n 'Ask xopc:',\n ' \"what workflows are available?\"',\n ' \"use a connector to check issues or docs\"',\n ' \"what skills can help with this task?\"',\n );\n }\n\n if (expanded) {\n lines.push('');\n lines.push(...formatResourceSection('Context', input.resources?.context, { expanded }));\n lines.push('');\n lines.push(...formatResourceSection('Skills', input.resources?.skills, { expanded }));\n lines.push('');\n lines.push(...formatResourceSection('Workflows', input.resources?.workflows, { expanded }));\n lines.push('');\n lines.push(...formatResourceSection('Connectors', input.resources?.connectors, { expanded }));\n }\n\n if (expanded) {\n lines.push(\n '',\n 'Useful commands:',\n ' /help — Show all commands and shortcuts',\n ' /workflow list — List saved workflows',\n ' /models — List available models',\n ' /settings — Open TUI settings',\n ' /export — Export current session',\n );\n }\n\n return lines.join('\\n');\n}\n"],"mappings":";;;AAOA,MAAM,gBAAgB;AAEtB,SAAS,SACP,aACA,IACA,UACQ;AACR,QAAO,cAAc,aAAa,aAAa,IAAI,EAAE,YAAY,OAAO,CAAC,GAAG;;AAG9E,SAAS,eAAe,aAA0C;AAKhE,QAAO,GAJW,SAAS,aAAa,iBAAiB,SAItC,CAAC,eAHN,SAAS,aAAa,aAAa,SAGT,CAAC,GAF5B,SAAS,aAAa,YAAY,SAEC,CAAC,sCADnC,SAAS,aAAa,oBAAoB,SACoC,CAAC;;AAG/F,SAAS,sBACP,OACA,QACA,SACU;CACV,MAAM,OAAO,CAAC,GAAG,IAAI,KAAK,UAAU,EAAE,EAAE,KAAK,MAAM,EAAE,MAAM,CAAC,CAAC,OAAO,QAAQ,CAAC,CAAC,CAC3E,MAAM,GAAG,MAAM,EAAE,cAAc,EAAE,CAAC;CACrC,MAAM,QAAQ,CAAC,IAAI,MAAM,GAAG;AAC5B,KAAI,KAAK,WAAW,GAAG;AACrB,QAAM,KAAK,SAAS;AACpB,SAAO;;AAET,KAAI,CAAC,QAAQ,UAAU;EACrB,MAAM,UAAU,KAAK,MAAM,GAAG,cAAc;EAC5C,MAAM,SAAS,KAAK,SAAS,QAAQ,SAAS,SAAS,KAAK,SAAS,QAAQ,OAAO,SAAS;AAC7F,QAAM,KAAK,KAAK,QAAQ,KAAK,KAAK,GAAG,SAAS;AAC9C,SAAO;;CAET,MAAM,UAAU,KAAK,MAAM,GAAG,GAAG;AACjC,MAAK,MAAM,SAAS,QAClB,OAAM,KAAK,KAAK,QAAQ;AAE1B,KAAI,KAAK,SAAS,QAAQ,OACxB,OAAM,KAAK,SAAS,KAAK,SAAS,QAAQ,OAAO,OAAO;AAE1D,QAAO;;AAGT,SAAgB,qBAAqB,OAM1B;CACT,MAAM,WAAW,MAAM,aAAa;CACpC,MAAM,QAAkB,EAAE;AAE1B,KAAI,UAAU;AACZ,QAAM,KAAK,YAAY,GAAG;AAC1B,QAAM,KAAK,YAAY,MAAM,MAAM,oBAAoB;AACvD,QAAM,KAAK,SAAS,MAAM,UAAU,mBAAmB,YAAY;AACnE,QAAM,KAAK,UAAU,iBAAiB,MAAM,MAAM,GAAG;AACrD,QAAM,KAAK,GAAG;;AAGhB,OAAM,KAAK,eAAe,MAAM,YAAY,CAAC;AAC7C,OAAM,KAAK,0CAA0C;AAErD,KAAI,SACF,OAAM,KACJ,IACA,gHACA,IACA,aACA,uCACA,iDACA,6CACD;AAGH,KAAI,UAAU;AACZ,QAAM,KAAK,GAAG;AACd,QAAM,KAAK,GAAG,sBAAsB,WAAW,MAAM,WAAW,SAAS,EAAE,UAAU,CAAC,CAAC;AACvF,QAAM,KAAK,GAAG;AACd,QAAM,KAAK,GAAG,sBAAsB,UAAU,MAAM,WAAW,QAAQ,EAAE,UAAU,CAAC,CAAC;AACrF,QAAM,KAAK,GAAG;AACd,QAAM,KAAK,GAAG,sBAAsB,aAAa,MAAM,WAAW,WAAW,EAAE,UAAU,CAAC,CAAC;AAC3F,QAAM,KAAK,GAAG;AACd,QAAM,KAAK,GAAG,sBAAsB,cAAc,MAAM,WAAW,YAAY,EAAE,UAAU,CAAC,CAAC;;AAG/F,KAAI,SACF,OAAM,KACJ,IACA,oBACA,6CACA,2CACA,qCACA,mCACA,qCACD;AAGH,QAAO,MAAM,KAAK,KAAK"}
@@ -1,11 +1,11 @@
1
1
  import { version } from "../../package.js";
2
2
  import { resolveStateDir, resolveXopcDatabasePath } from "../config/paths-state.js";
3
- import { init_paths } from "../config/paths.js";
4
- import { loadConfig } from "../config/loader.js";
5
3
  import { parseAgentSessionKey } from "../routing/session-key-utils.js";
6
4
  import { init_agent_session_key } from "../routing/agent-session-key.js";
7
- import { getAllModels, getAllProviders, getApiKey, init_providers, isProviderConfiguredSync } from "../providers/index.js";
8
5
  import { resolveEffectiveAgentProfileForSession } from "../config/agent-profile.js";
6
+ import { init_paths } from "../config/paths.js";
7
+ import { loadConfig } from "../config/loader.js";
8
+ import { getAllModels, getAllProviders, getApiKey, init_providers, isProviderConfiguredSync } from "../providers/index.js";
9
9
  import { renderWorkflowFinalSummary, renderWorkflowPanel } from "../agent/workflow/snapshot.js";
10
10
  import { runViewToSnapshot } from "../workflows/service/run-view-to-snapshot.js";
11
11
  import { ProjectTrustStore, hasTrustRequiringProjectResources } from "../project-trust/trust-store.js";
@@ -51,10 +51,10 @@ import { TuiBottomBar } from "./components/tui-bottom-bar.js";
51
51
  import { TuiHeader } from "./components/tui-header.js";
52
52
  import { loadExtensionsForTuiLocalMode } from "./extension-host/load-extensions.js";
53
53
  import { createTuiExtensionRuntime } from "./extension-host/runtime.js";
54
- import { randomUUID } from "node:crypto";
55
- import { mkdirSync, mkdtempSync, readFileSync, unlinkSync, writeFileSync } from "node:fs";
56
- import { dirname, isAbsolute, join, relative, resolve } from "node:path";
57
54
  import { tmpdir } from "node:os";
55
+ import { dirname, isAbsolute, join, relative, resolve } from "node:path";
56
+ import { mkdirSync, mkdtempSync, readFileSync, unlinkSync, writeFileSync } from "node:fs";
57
+ import { randomUUID } from "node:crypto";
58
58
  import { spawnSync } from "node:child_process";
59
59
  import { Container, Loader, ProcessTerminal, TUI, setKeybindings } from "@earendil-works/pi-tui";
60
60
  import { Buffer } from "node:buffer";
@@ -1976,9 +1976,12 @@ async function runTui(opts) {
1976
1976
  }
1977
1977
  await refreshSessionInfoWithBorder();
1978
1978
  await refreshModelChoices();
1979
- await refreshStartupResources();
1980
1979
  await loadSessionHistory({ merge: true });
1981
1980
  showStartupCardOnce();
1981
+ refreshStartupResources().then(() => {
1982
+ updateFooter();
1983
+ tui.requestRender();
1984
+ });
1982
1985
  if (state.activeRunId) recoverActiveRunFromHistory("broadcast reconnect");
1983
1986
  updateHeader();
1984
1987
  updateFooter();