@xopcai/xopc 0.0.351 → 0.0.353

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 (226) hide show
  1. package/README.md +2 -2
  2. package/README.zh-CN.md +2 -2
  3. package/dist/browser-ext/dist/sidepanel.js +1 -1
  4. package/dist/browser-ext/manifest.json +1 -1
  5. package/dist/extensions/telegram/xopc.extension.json +1 -1
  6. package/dist/gateway/static/root/assets/{agent-avatar-dicebear-Dc0yBlKV.js → agent-avatar-dicebear-BVIuZcCP.js} +1 -1
  7. package/dist/gateway/static/root/assets/{agent-defaults-settings-panel-BXFins6I.js → agent-defaults-settings-panel-CcTnphqy.js} +1 -1
  8. package/dist/gateway/static/root/assets/{agent-plugin-dialog-B-w6bJuj.js → agent-plugin-dialog-CdCzMPhC.js} +1 -1
  9. package/dist/gateway/static/root/assets/agents-BiNKpndr.js +66 -0
  10. package/dist/gateway/static/root/assets/{agents-admin-api-yUALtmym.js → agents-admin-api-Ck2x78jq.js} +1 -1
  11. package/dist/gateway/static/root/assets/{app-management-settings-panel-C7QjGlMZ.js → app-management-settings-panel-BvGDN5J6.js} +1 -1
  12. package/dist/gateway/static/root/assets/{appearance-settings-CgApGxhN.js → appearance-settings-BhQYkuQj.js} +1 -1
  13. package/dist/gateway/static/root/assets/{apps-page-DWii4stP.js → apps-page-BQZJuM-C.js} +1 -1
  14. package/dist/gateway/static/root/assets/{archive-plugin--oP0UmoE.js → archive-plugin-BZXXJvpX.js} +1 -1
  15. package/dist/gateway/static/root/assets/{automations-page-DkV4w6xr.js → automations-page-C7VKkDb5.js} +1 -1
  16. package/dist/gateway/static/root/assets/{automations-workspace-DT95Uk9d.js → automations-workspace-y4qcvlg8.js} +1 -1
  17. package/dist/gateway/static/root/assets/{binary-plugins-DIpBiw_8.js → binary-plugins-DoT3g5SP.js} +1 -1
  18. package/dist/gateway/static/root/assets/{block-editor-Di4X446B.js → block-editor-sqqrCafh.js} +1 -1
  19. package/dist/gateway/static/root/assets/{browser-automation-inputs-B0TlAcoB.js → browser-automation-inputs-CZOKsAaa.js} +1 -1
  20. package/dist/gateway/static/root/assets/{browser-automations-page-pKPvkGW8.js → browser-automations-page-TEeTmkGP.js} +1 -1
  21. package/dist/gateway/static/root/assets/{browser-settings-page-cJ200PlY.js → browser-settings-page--N4P7V0l.js} +1 -1
  22. package/dist/gateway/static/root/assets/{capabilities-e-fO70DK.js → capabilities-BOrLei_L.js} +1 -1
  23. package/dist/gateway/static/root/assets/{capabilities-page-CPKbJUDL.js → capabilities-page-F7OAv-iz.js} +2 -2
  24. package/dist/gateway/static/root/assets/{capabilities-settings-panel-D5xUFWBJ.js → capabilities-settings-panel-CaiIo1S1.js} +1 -1
  25. package/dist/gateway/static/root/assets/{capability-header-actions-9qDm8ioP.js → capability-header-actions-CR_O9_Vr.js} +1 -1
  26. package/dist/gateway/static/root/assets/{channels-CO_9_oIH.js → channels-Bb-8c4wl.js} +1 -1
  27. package/dist/gateway/static/root/assets/{chat-terminal-dock-DCFwzHu2.js → chat-terminal-dock-Q99iKyiO.js} +1 -1
  28. package/dist/gateway/static/root/assets/{computer-settings-page-bwWQ3axN.js → computer-settings-page-QuXZBfky.js} +1 -1
  29. package/dist/gateway/static/root/assets/{connector-service-page-BIIP-gX4.js → connector-service-page-BIqzVqCO.js} +1 -1
  30. package/dist/gateway/static/root/assets/{connectors-page-C0b5Xbca.js → connectors-page-CZ24DSBJ.js} +1 -1
  31. package/dist/gateway/static/root/assets/{date-picker-DBio7OE6.js → date-picker-Ck-FmYEL.js} +1 -1
  32. package/dist/gateway/static/root/assets/{dependency-picker-hyPm_1tB.js → dependency-picker-BjH8XrKb.js} +1 -1
  33. package/dist/gateway/static/root/assets/{desktop-pet-BDPfot60.js → desktop-pet-DyGxNAVW.js} +1 -1
  34. package/dist/gateway/static/root/assets/{desktop-pet-settings-C6IRO2iD.js → desktop-pet-settings-C1rKgB-S.js} +1 -1
  35. package/dist/gateway/static/root/assets/{device-pairing-wizard-CUOh38IK.js → device-pairing-wizard-UrPcOU6Q.js} +1 -1
  36. package/dist/gateway/static/root/assets/{directory-picker-path-field-ljXXfuLL.js → directory-picker-path-field-BYxUgMZb.js} +1 -1
  37. package/dist/gateway/static/root/assets/{extension-debug-page-DHw1dG1g.js → extension-debug-page-CGL0jpQA.js} +1 -1
  38. package/dist/gateway/static/root/assets/{extension-page-BjLN3E6q.js → extension-page-DPWf-tYg.js} +1 -1
  39. package/dist/gateway/static/root/assets/{extension-settings-page-BMp6v6zP.js → extension-settings-page-DZWBY39d.js} +1 -1
  40. package/dist/gateway/static/root/assets/{gateway-config-swr-CmjHbMj7.js → gateway-config-swr-B31I6Gbq.js} +1 -1
  41. package/dist/gateway/static/root/assets/{gateway-realtime-DzyR6LYb.js → gateway-realtime-D6ffOiPe.js} +1 -1
  42. package/dist/gateway/static/root/assets/gateway-realtime-store-DQuFWNjA.js +1 -0
  43. package/dist/gateway/static/root/assets/{gateway-settings-D76thCuX.js → gateway-settings-D5w5aYXK.js} +1 -1
  44. package/dist/gateway/static/root/assets/{gateway-startup-retry-CbOUnKv5.js → gateway-startup-retry-DVol958v.js} +1 -1
  45. package/dist/gateway/static/root/assets/{home-page-D1Tyeuul.js → home-page-DPQwxBGy.js} +1 -1
  46. package/dist/gateway/static/root/assets/{image-generation-api-BmLpVntI.js → image-generation-api-TVgJfz9r.js} +1 -1
  47. package/dist/gateway/static/root/assets/{imports-page-CabovqRQ.js → imports-page-CnRWDtGz.js} +1 -1
  48. package/dist/gateway/static/root/assets/index-B-w6Rk9Z.css +1 -0
  49. package/dist/gateway/static/root/assets/{index-Bb32g7Ll.js → index-DU5Eb1V8.js} +20 -20
  50. package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-DvN-2bcS.js → keyboard-shortcuts-settings-CoYdyBRh.js} +1 -1
  51. package/dist/gateway/static/root/assets/{local-app-workbench-page-CSEzRWxs.js → local-app-workbench-page-hjFeYlIq.js} +1 -1
  52. package/dist/gateway/static/root/assets/{local-apps-page-C3Wy2zG2.js → local-apps-page-CeBhXeoX.js} +1 -1
  53. package/dist/gateway/static/root/assets/local-session-drafts-wiq_12oN.js +1 -0
  54. package/dist/gateway/static/root/assets/{locale-store-WMaCMm3_.js → locale-store-Y1aBayM_.js} +1 -1
  55. package/dist/gateway/static/root/assets/{logs-page-YojQFX9o.js → logs-page-CzpZDjkA.js} +1 -1
  56. package/dist/gateway/static/root/assets/{management-settings-CNMk0HRn.js → management-settings-Beu_R_Rc.js} +1 -1
  57. package/dist/gateway/static/root/assets/{markdown-view-Oe4rXk1N.js → markdown-view-BlzX7Ze5.js} +1 -1
  58. package/dist/gateway/static/root/assets/{media-plugins-Ds7HF3EM.js → media-plugins-C9ya5rUH.js} +1 -1
  59. package/dist/gateway/static/root/assets/messages-DPw2X06D.js +3 -0
  60. package/dist/gateway/static/root/assets/{note-detail-panel-D8vQ_INI.js → note-detail-panel-D8bpTGwP.js} +3 -3
  61. package/dist/gateway/static/root/assets/{notes-page-CIFcEPAd.js → notes-page-OmgXowUG.js} +1 -1
  62. package/dist/gateway/static/root/assets/{page-context-capture-button-YKiYT0q2.js → page-context-capture-button-BjjjuLkz.js} +1 -1
  63. package/dist/gateway/static/root/assets/{page-tabs-ZUC486EH.js → page-tabs-_DiuzxyD.js} +1 -1
  64. package/dist/gateway/static/root/assets/{preview-open-alternatives-Ca9tBmOg.js → preview-open-alternatives-BKvUadws.js} +1 -1
  65. package/dist/gateway/static/root/assets/{product-open-page-BuGb8QPn.js → product-open-page-DUPsiVP9.js} +1 -1
  66. package/dist/gateway/static/root/assets/{project-detail-page-C6Awj1Ql.js → project-detail-page-CWlCg2x5.js} +1 -1
  67. package/dist/gateway/static/root/assets/{projects-page-CmO8Gb9G.js → projects-page-NbVNo0tP.js} +1 -1
  68. package/dist/gateway/static/root/assets/{registry-api-DEePN1Rc.js → registry-api-DqDOrPQ0.js} +1 -1
  69. package/dist/gateway/static/root/assets/{remote-access-hub-BsqHroXR.js → remote-access-hub-CD8HrqGC.js} +1 -1
  70. package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-Cva9t35o.js → runtime-tools-settings-panel-C25xEYTK.js} +1 -1
  71. package/dist/gateway/static/root/assets/{scenes-page-3_61bQHN.js → scenes-page-DbWaemwR.js} +1 -1
  72. package/dist/gateway/static/root/assets/{schema-form-DWHFyKEB.js → schema-form-_3LQ4hyB.js} +1 -1
  73. package/dist/gateway/static/root/assets/{session-api-Bv-hCMKS.js → session-api-CTN4qwiN.js} +1 -1
  74. package/dist/gateway/static/root/assets/{session-manager-BcDptzCN.js → session-manager-DsH1DZI_.js} +5 -5
  75. package/dist/gateway/static/root/assets/{sessions-page-BaHue2bK.js → sessions-page-B7ZUdXlb.js} +1 -1
  76. package/dist/gateway/static/root/assets/settings-advanced-gate-CpKzZMft.js +1 -0
  77. package/dist/gateway/static/root/assets/{settings-form-section-BwdrtX6k.js → settings-form-section-DS80hVSY.js} +1 -1
  78. package/dist/gateway/static/root/assets/settings-page-DqCJHcdG.js +1 -0
  79. package/dist/gateway/static/root/assets/{setup-status-panel-nMWHz-ra.js → setup-status-panel-De-kC3yJ.js} +1 -1
  80. package/dist/gateway/static/root/assets/{share-preview-page-DH0KHlev.js → share-preview-page-T-0g_rwr.js} +1 -1
  81. package/dist/gateway/static/root/assets/{shares-settings-KK-VNbMw.js → shares-settings-Dz33T3du.js} +1 -1
  82. package/dist/gateway/static/root/assets/{skill-api-BbNk-3Ig.js → skill-api-Cx6GGpSY.js} +1 -1
  83. package/dist/gateway/static/root/assets/skill-reload-api-DyJ-Duem.js +1 -0
  84. package/dist/gateway/static/root/assets/{skills-page-BQya9ygw.js → skills-page-B2iyN-kP.js} +1 -1
  85. package/dist/gateway/static/root/assets/{system-settings-panel-akm5mc8b.js → system-settings-panel-By3SZQR_.js} +1 -1
  86. package/dist/gateway/static/root/assets/{task-detail-page-wLGUc7Nu.js → task-detail-page-4yHUTs4_.js} +1 -1
  87. package/dist/gateway/static/root/assets/{tunnel-api-vZ7P_KIQ.js → tunnel-api-BoH0LBkw.js} +1 -1
  88. package/dist/gateway/static/root/assets/{usage-page-BV1KJ0EY.js → usage-page-dKU5X9zT.js} +1 -1
  89. package/dist/gateway/static/root/assets/{use-autosave-DQdLcZfO.js → use-autosave-YKCwQvqT.js} +1 -1
  90. package/dist/gateway/static/root/assets/{user-model-page-DnLTTyOE.js → user-model-page-Uht32LPP.js} +1 -1
  91. package/dist/gateway/static/root/assets/{voice-api-key-field-CJ-FjNHr.js → voice-api-key-field-DiqHIA8l.js} +1 -1
  92. package/dist/gateway/static/root/assets/{voice-config-api-DbjjZkIg.js → voice-config-api-BM75K3mR.js} +1 -1
  93. package/dist/gateway/static/root/assets/{work-discovery-overlay-BA1AAqaW.js → work-discovery-overlay-BnfD6w0k.js} +1 -1
  94. package/dist/gateway/static/root/assets/{workflow-run-setup-panel-BhIOKmjW.js → workflow-run-setup-panel-DSy57rBr.js} +1 -1
  95. package/dist/gateway/static/root/assets/{workflows-page-aYoObmuS.js → workflows-page-Cq3vRUbc.js} +1 -1
  96. package/dist/gateway/static/root/index.html +15 -15
  97. package/dist/package.js +1 -1
  98. package/dist/packages/gateway-contract/src/session-input-command.js +2 -1
  99. package/dist/src/agent/agent-manager.js +25 -11
  100. package/dist/src/agent/bootstrap/bootstrap-files.d.ts +0 -4
  101. package/dist/src/agent/bootstrap/bootstrap-files.js +3 -9
  102. package/dist/src/agent/bootstrap/load-bootstrap-files.js +2 -4
  103. package/dist/src/agent/context/workspace-seed.d.ts +1 -7
  104. package/dist/src/agent/context/workspace-seed.js +4 -13
  105. package/dist/src/agent/context/workspace-templates/AGENTS.md +1 -1
  106. package/dist/src/agent/context/workspace.d.ts +1 -3
  107. package/dist/src/agent/context/workspace.js +3 -7
  108. package/dist/src/agent/mcp/oauth/mcp-oauth-store.js +1 -1
  109. package/dist/src/agent/messaging/no-reply.d.ts +1 -0
  110. package/dist/src/agent/messaging/no-reply.js +4 -0
  111. package/dist/src/agent/messaging/outbound-coordinator.d.ts +0 -4
  112. package/dist/src/agent/messaging/outbound-coordinator.js +2 -4
  113. package/dist/src/agent/prompt/sections/agent-identity.d.ts +3 -0
  114. package/dist/src/agent/prompt/sections/agent-identity.js +13 -0
  115. package/dist/src/agent/prompt/sections/messaging-runtime.d.ts +0 -5
  116. package/dist/src/agent/prompt/sections/messaging-runtime.js +2 -16
  117. package/dist/src/agent/prompt/sections/project-context.d.ts +0 -3
  118. package/dist/src/agent/prompt/sections/project-context.js +2 -9
  119. package/dist/src/agent/prompt/sections/tooling.js +1 -1
  120. package/dist/src/agent/prompt/service-prompt-builder.d.ts +2 -0
  121. package/dist/src/agent/prompt/service-prompt-builder.js +3 -8
  122. package/dist/src/agent/prompt/subagent-context.js +1 -1
  123. package/dist/src/agent/prompt/system-prompt-params.d.ts +0 -4
  124. package/dist/src/agent/prompt/system-prompt-params.js +0 -2
  125. package/dist/src/agent/prompt/system-prompt.d.ts +2 -2
  126. package/dist/src/agent/prompt/system-prompt.js +8 -9
  127. package/dist/src/agent/service.js +0 -1
  128. package/dist/src/agent/skills/hub-lock.js +1 -1
  129. package/dist/src/agent/skills/index.js +1 -1
  130. package/dist/src/agent/skills/managed-store.js +1 -1
  131. package/dist/src/agent/skills/skill-manage-ops.js +1 -1
  132. package/dist/src/agent/starter-agents.d.ts +3 -4
  133. package/dist/src/agent/starter-agents.js +104 -90
  134. package/dist/src/agent/tool-manuals/xopc-use.d.ts +1 -1
  135. package/dist/src/agent/tool-manuals/xopc-use.js +7 -4
  136. package/dist/src/agent/tools/factory.d.ts +4 -2
  137. package/dist/src/agent/tools/factory.js +6 -3
  138. package/dist/src/agent/workflow/workflow-child-tools.js +2 -1
  139. package/dist/src/agent-catalog/migrations/identity-markdown-cutover.d.ts +5 -0
  140. package/dist/src/agent-catalog/migrations/identity-markdown-cutover.js +94 -0
  141. package/dist/src/agent-catalog/repository.js +7 -1
  142. package/dist/src/agent-catalog/service.js +2 -2
  143. package/dist/src/agent-config/resolver.js +2 -0
  144. package/dist/src/agent-config/schema.d.ts +21 -0
  145. package/dist/src/agent-config/schema.js +9 -4
  146. package/dist/src/auth/credentials.js +1 -1
  147. package/dist/src/auth/profiles/store.js +1 -1
  148. package/dist/src/auth/sync-provider-auth.js +1 -1
  149. package/dist/src/automations/events/event-repository.js +2 -1
  150. package/dist/src/bootstrap/application-state.js +2 -0
  151. package/dist/src/browser/providers/browser-ext-install.js +1 -1
  152. package/dist/src/chat-commands/agent-edit.js +4 -7
  153. package/dist/src/chat-commands/builtins/config.js +1 -1
  154. package/dist/src/cli/commands/auth.js +1 -1
  155. package/dist/src/cli/commands/doctor/checks/workspace-status.js +0 -1
  156. package/dist/src/cli/commands/gateway/lifecycle.js +1 -1
  157. package/dist/src/cli/commands/init.js +0 -33
  158. package/dist/src/cli/commands/onboard/model.js +2 -2
  159. package/dist/src/cli/commands/providers.js +1 -1
  160. package/dist/src/cli/templates.d.ts +1 -1
  161. package/dist/src/cli/templates.js +1 -23
  162. package/dist/src/config/index.js +3 -3
  163. package/dist/src/config/loader.js +1 -1
  164. package/dist/src/config/models-json.js +1 -1
  165. package/dist/src/config/paths.d.ts +0 -2
  166. package/dist/src/config/paths.js +1 -3
  167. package/dist/src/config/reload.d.ts +0 -1
  168. package/dist/src/config/reload.js +0 -4
  169. package/dist/src/config/rules.js +0 -5
  170. package/dist/src/config/schema.d.ts +0 -45
  171. package/dist/src/config/schema.js +2 -23
  172. package/dist/src/connectors/connection-recovery-service.js +5 -0
  173. package/dist/src/extensions/lockfile.js +1 -1
  174. package/dist/src/gateway/agents-admin.d.ts +2 -9
  175. package/dist/src/gateway/agents-admin.js +8 -32
  176. package/dist/src/gateway/file-path-classifier.js +1 -1
  177. package/dist/src/gateway/hono/lib/config-payload.js +1 -1
  178. package/dist/src/gateway/hono/routes/agents.js +8 -1
  179. package/dist/src/gateway/hono/routes/connectors.js +1 -1
  180. package/dist/src/gateway/hono/routes/device-push.js +1 -1
  181. package/dist/src/gateway/hono/routes/models.js +1 -1
  182. package/dist/src/gateway/host.d.ts +0 -2
  183. package/dist/src/gateway/host.js +2 -5
  184. package/dist/src/gateway/service.js +11 -11
  185. package/dist/src/home-intelligence/host.js +2 -2
  186. package/dist/src/infra/update-restart.js +1 -1
  187. package/dist/src/notifications/device-store.d.ts +0 -1
  188. package/dist/src/notifications/device-store.js +2 -7
  189. package/dist/src/notifications/service.d.ts +0 -1
  190. package/dist/src/notifications/service.js +13 -82
  191. package/dist/src/session/execution-detail.js +16 -0
  192. package/dist/src/storage/sqlite/notes-repository.js +19 -4
  193. package/dist/src/tui/backends/embedded-backend.js +1 -1
  194. package/dist/src/tui/tui-commands.js +1 -1
  195. package/dist/src/tui/tui-startup-resources.js +1 -1
  196. package/dist/src/tui/tui.js +1 -1
  197. package/dist/src/voice/audio/normalize.js +34 -1
  198. package/dist/src/voice/realtime/persona-context.d.ts +2 -2
  199. package/dist/src/voice/realtime/persona-context.js +19 -33
  200. package/package.json +11 -12
  201. package/dist/gateway/static/root/assets/agents-CuFzMN58.js +0 -70
  202. package/dist/gateway/static/root/assets/gateway-realtime-store-KyhksZSM.js +0 -1
  203. package/dist/gateway/static/root/assets/index-CPi50n0l.css +0 -1
  204. package/dist/gateway/static/root/assets/local-session-drafts-CxXjQ5Du.js +0 -1
  205. package/dist/gateway/static/root/assets/messages-sXePe3LQ.js +0 -3
  206. package/dist/gateway/static/root/assets/settings-advanced-gate-C4y4c2M7.js +0 -1
  207. package/dist/gateway/static/root/assets/settings-page-B6YZFEye.js +0 -1
  208. package/dist/gateway/static/root/assets/skill-reload-api-DUOG2Ig1.js +0 -1
  209. package/dist/src/agent/bootstrap/filter-bootstrap-files.d.ts +0 -3
  210. package/dist/src/agent/bootstrap/filter-bootstrap-files.js +0 -18
  211. package/dist/src/agent/context/workspace-templates/HEARTBEAT.md +0 -26
  212. package/dist/src/agent/context/workspace-templates/IDENTITY.md +0 -30
  213. package/dist/src/agent/service/parse-outbound-session-key.d.ts +0 -8
  214. package/dist/src/agent/service/parse-outbound-session-key.js +0 -44
  215. package/dist/src/heartbeat/active-hours.d.ts +0 -11
  216. package/dist/src/heartbeat/active-hours.js +0 -40
  217. package/dist/src/heartbeat/content-check.d.ts +0 -4
  218. package/dist/src/heartbeat/content-check.js +0 -17
  219. package/dist/src/heartbeat/event-prompt.d.ts +0 -4
  220. package/dist/src/heartbeat/event-prompt.js +0 -11
  221. package/dist/src/heartbeat/index.d.ts +0 -5
  222. package/dist/src/heartbeat/index.js +0 -6
  223. package/dist/src/heartbeat/tokens.d.ts +0 -15
  224. package/dist/src/heartbeat/tokens.js +0 -25
  225. package/dist/src/heartbeat/wake.d.ts +0 -13
  226. package/dist/src/heartbeat/wake.js +0 -46
@@ -81,7 +81,13 @@ var init_repository = __esmMin((() => {
81
81
  db.prepare(`INSERT OR IGNORE INTO agents
82
82
  (id, enabled, workspace_override, profile_json, overrides_json, provisioning_state,
83
83
  provisioning_error, revision, created_at, updated_at, deleted_at)
84
- VALUES (?, 1, NULL, ?, '{}', 'pending', NULL, 1, ?, ?, NULL)`).run(DEFAULT_AGENT_ID, JSON.stringify({ name: "Main" }), now, now);
84
+ VALUES (?, 1, NULL, ?, '{}', 'pending', NULL, 1, ?, ?, NULL)`).run(DEFAULT_AGENT_ID, JSON.stringify({
85
+ name: "Smart Assistant",
86
+ description: "General-purpose personal assistant.",
87
+ creature: "assistant",
88
+ language: "en",
89
+ emoji: "✨"
90
+ }), now, now);
85
91
  db.prepare(`INSERT OR IGNORE INTO agent_catalog_settings
86
92
  (singleton_id, default_agent_id, defaults_json, revision, created_at, updated_at)
87
93
  VALUES (1, ?, ?, 1, ?, ?)`).run(DEFAULT_AGENT_ID, JSON.stringify(AgentDefaultsSchema.parse(defaults)), now, now);
@@ -155,7 +155,7 @@ var AgentCatalogService = class {
155
155
  await mkdir(workspace, { recursive: true });
156
156
  await mkdir(resolveAgentDir(entry.id), { recursive: true });
157
157
  await mkdir(profileDir, { recursive: true });
158
- seedAgentProfileMarkdownFiles(profileDir, workspace, { displayName: entry.profile?.name ?? entry.id });
158
+ seedAgentProfileMarkdownFiles(profileDir, workspace);
159
159
  }
160
160
  provisionSync(entry) {
161
161
  const workspace = workspaceForEntry(entry, this.repository.getSettings().defaultAgentId);
@@ -163,7 +163,7 @@ var AgentCatalogService = class {
163
163
  mkdirSync(workspace, { recursive: true });
164
164
  mkdirSync(resolveAgentDir(entry.id), { recursive: true });
165
165
  mkdirSync(profileDir, { recursive: true });
166
- seedAgentProfileMarkdownFiles(profileDir, workspace, { displayName: entry.profile?.name ?? entry.id });
166
+ seedAgentProfileMarkdownFiles(profileDir, workspace);
167
167
  }
168
168
  purgeEntryDataSync(entry, defaultAgentId) {
169
169
  if (entry.id === "main") throw new Error("Refusing to purge the primary Agent");
@@ -95,6 +95,7 @@ function resolveEffectiveAgentConfig(params) {
95
95
  const workspace = agent.workspace ?? params.defaultWorkspace?.(agent.id) ?? `~/.xopc/workspace/${agent.id}`;
96
96
  sources.workspace = agent.workspace ? "agent" : "system";
97
97
  if (agent.profile) markObjectSources(agent.profile, "agent", "profile", sources);
98
+ if (agent.toolAllowlist) sources.toolAllowlist = "agent";
98
99
  return {
99
100
  config: EffectiveAgentConfigSchema.parse({
100
101
  id: agent.id,
@@ -104,6 +105,7 @@ function resolveEffectiveAgentConfig(params) {
104
105
  models,
105
106
  skills,
106
107
  tools,
108
+ ...agent.toolAllowlist ? { toolAllowlist: [...agent.toolAllowlist] } : {},
107
109
  workflows,
108
110
  runtime
109
111
  }),
@@ -243,6 +243,12 @@ export declare const AgentDefaultsSchema: z.ZodObject<{
243
243
  }, z.core.$strict>;
244
244
  export declare const AgentProfileSchema: z.ZodObject<{
245
245
  name: z.ZodString;
246
+ description: z.ZodOptional<z.ZodString>;
247
+ creature: z.ZodOptional<z.ZodString>;
248
+ style: z.ZodOptional<z.ZodString>;
249
+ language: z.ZodOptional<z.ZodString>;
250
+ emoji: z.ZodOptional<z.ZodString>;
251
+ avatar: z.ZodOptional<z.ZodString>;
246
252
  instructions: z.ZodOptional<z.ZodString>;
247
253
  }, z.core.$strict>;
248
254
  export declare const AgentEntrySchema: z.ZodObject<{
@@ -251,6 +257,12 @@ export declare const AgentEntrySchema: z.ZodObject<{
251
257
  workspace: z.ZodOptional<z.ZodString>;
252
258
  profile: z.ZodOptional<z.ZodObject<{
253
259
  name: z.ZodString;
260
+ description: z.ZodOptional<z.ZodString>;
261
+ creature: z.ZodOptional<z.ZodString>;
262
+ style: z.ZodOptional<z.ZodString>;
263
+ language: z.ZodOptional<z.ZodString>;
264
+ emoji: z.ZodOptional<z.ZodString>;
265
+ avatar: z.ZodOptional<z.ZodString>;
254
266
  instructions: z.ZodOptional<z.ZodString>;
255
267
  }, z.core.$strict>>;
256
268
  models: z.ZodOptional<z.ZodObject<{
@@ -302,6 +314,7 @@ export declare const AgentEntrySchema: z.ZodObject<{
302
314
  maxCallsPerTurn: z.ZodOptional<z.ZodNumber>;
303
315
  timeoutMs: z.ZodOptional<z.ZodNumber>;
304
316
  }, z.core.$strict>>>;
317
+ toolAllowlist: z.ZodOptional<z.ZodArray<z.ZodString>>;
305
318
  workflows: z.ZodOptional<z.ZodObject<{
306
319
  default: z.ZodOptional<z.ZodString>;
307
320
  allowed: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -339,6 +352,12 @@ export declare const EffectiveAgentConfigSchema: z.ZodObject<{
339
352
  workspace: z.ZodString;
340
353
  profile: z.ZodOptional<z.ZodObject<{
341
354
  name: z.ZodString;
355
+ description: z.ZodOptional<z.ZodString>;
356
+ creature: z.ZodOptional<z.ZodString>;
357
+ style: z.ZodOptional<z.ZodString>;
358
+ language: z.ZodOptional<z.ZodString>;
359
+ emoji: z.ZodOptional<z.ZodString>;
360
+ avatar: z.ZodOptional<z.ZodString>;
342
361
  instructions: z.ZodOptional<z.ZodString>;
343
362
  }, z.core.$strict>>;
344
363
  models: z.ZodObject<{
@@ -389,6 +408,7 @@ export declare const EffectiveAgentConfigSchema: z.ZodObject<{
389
408
  maxCallsPerTurn: z.ZodOptional<z.ZodNumber>;
390
409
  timeoutMs: z.ZodOptional<z.ZodNumber>;
391
410
  }, z.core.$strict>>;
411
+ toolAllowlist: z.ZodOptional<z.ZodArray<z.ZodString>>;
392
412
  workflows: z.ZodObject<{
393
413
  default: z.ZodOptional<z.ZodString>;
394
414
  allowed: z.ZodOptional<z.ZodArray<z.ZodString>>;
@@ -424,6 +444,7 @@ export type AgentModelsDefaults = z.infer<typeof AgentModelsDefaultsSchema>;
424
444
  export type AgentModelsOverride = z.infer<typeof AgentModelsOverrideSchema>;
425
445
  export type ModelIntent = z.infer<typeof ModelIntentSchema>;
426
446
  export type AgentDefaults = z.infer<typeof AgentDefaultsSchema>;
447
+ export type AgentProfile = z.infer<typeof AgentProfileSchema>;
427
448
  export type AgentEntry = z.infer<typeof AgentEntrySchema>;
428
449
  export type EffectiveAgentConfig = z.infer<typeof EffectiveAgentConfigSchema>;
429
450
  export type SkillDefaults = z.infer<typeof SkillDefaultsSchema>;
@@ -115,6 +115,12 @@ var init_schema = __esmMin((() => {
115
115
  }).strict();
116
116
  AgentProfileSchema = z.object({
117
117
  name: z.string().trim().min(1),
118
+ description: z.string().trim().optional(),
119
+ creature: z.string().trim().optional(),
120
+ style: z.string().trim().optional(),
121
+ language: z.string().trim().optional(),
122
+ emoji: z.string().trim().optional(),
123
+ avatar: z.string().trim().optional(),
118
124
  instructions: z.string().trim().min(1).optional()
119
125
  }).strict();
120
126
  AgentEntrySchema = z.object({
@@ -125,6 +131,7 @@ var init_schema = __esmMin((() => {
125
131
  models: AgentModelsOverrideSchema.optional(),
126
132
  skills: SkillOverrideSchema.optional(),
127
133
  tools: ToolPoliciesSchema.optional(),
134
+ toolAllowlist: z.array(z.string().min(1)).optional(),
128
135
  workflows: WorkflowPolicySchema.optional(),
129
136
  runtime: RuntimePolicySchema.optional()
130
137
  }).strict();
@@ -132,13 +139,11 @@ var init_schema = __esmMin((() => {
132
139
  id: AgentIdSchema,
133
140
  enabled: z.boolean(),
134
141
  workspace: z.string().min(1),
135
- profile: z.object({
136
- name: z.string().min(1),
137
- instructions: z.string().optional()
138
- }).strict().optional(),
142
+ profile: AgentProfileSchema.optional(),
139
143
  models: AgentModelsDefaultsSchema,
140
144
  skills: SkillDefaultsSchema,
141
145
  tools: ToolPoliciesSchema,
146
+ toolAllowlist: z.array(z.string().min(1)).optional(),
142
147
  workflows: WorkflowPolicySchema,
143
148
  runtime: RuntimePolicySchema
144
149
  }).strict();
@@ -1,8 +1,8 @@
1
1
  import { __esmMin } from "../../_virtual/_rolldown/runtime.js";
2
2
  import { createLogger } from "../utils/logger/index.js";
3
3
  import { init_logger } from "../utils/logger.js";
4
- import { init_paths, resolveAgentAuthProfilesPath, resolveAuthProfilesPath, resolveCredentialsDir, resolveOAuthPath } from "../config/paths.js";
5
4
  import { init_write_file_atomic, writeTextAtomic } from "../infra/write-file-atomic.js";
5
+ import { init_paths, resolveAgentAuthProfilesPath, resolveAuthProfilesPath, resolveCredentialsDir, resolveOAuthPath } from "../config/paths.js";
6
6
  import { getOAuthProviderDefinition, init_registry } from "./oauth/registry.js";
7
7
  import { getApiKeyFromEnv, init_env_keys } from "../providers/env-keys.js";
8
8
  import { init_oauth_provider_lock, withOAuthProviderLock } from "./oauth-provider-lock.js";
@@ -1,5 +1,5 @@
1
- import { init_paths, resolveCredentialsDir } from "../../config/paths.js";
2
1
  import { init_write_file_atomic, writeTextAtomicSync } from "../../infra/write-file-atomic.js";
2
+ import { init_paths, resolveCredentialsDir } from "../../config/paths.js";
3
3
  import path from "node:path";
4
4
  import { chmodSync, existsSync, mkdirSync, readFileSync } from "node:fs";
5
5
  //#region src/auth/profiles/store.ts
@@ -1,6 +1,6 @@
1
1
  import { __esmMin } from "../../_virtual/_rolldown/runtime.js";
2
- import { init_paths, resolveAgentAuthProfilesPath, resolveAuthProfilesPath, resolveOAuthPath } from "../config/paths.js";
3
2
  import { getDefaultAgentId, init_resolve_route } from "../routing/resolve-route.js";
3
+ import { init_paths, resolveAgentAuthProfilesPath, resolveAuthProfilesPath, resolveOAuthPath } from "../config/paths.js";
4
4
  import { init_registry, isOAuthOnlyProvider } from "./oauth/registry.js";
5
5
  import { existsSync, readFileSync } from "node:fs";
6
6
  //#region src/auth/sync-provider-auth.ts
@@ -98,7 +98,8 @@ function ingestAutomationEvent(input, options = {}) {
98
98
  deliveryCount: Number(db.prepare("SELECT count(*) AS count FROM automation_event_deliveries WHERE event_id = ?").get(existing.id)?.count ?? 0)
99
99
  };
100
100
  }
101
- const automations = options.targetAutomationIds ? options.targetAutomationIds.map(getAutomation).filter((automation) => Boolean(automation?.enabled)) : listAutomations().filter((automation) => automation.enabled && automation.trigger.kind === "event" && matchesEvent(automation.trigger, event));
101
+ const manualTarget = event.type === "automation.manual.requested" || event.type === "automation.rerun.requested";
102
+ const automations = options.targetAutomationIds ? options.targetAutomationIds.map(getAutomation).filter((automation) => Boolean(automation && (automation.enabled || manualTarget))) : listAutomations().filter((automation) => automation.enabled && automation.trigger.kind === "event" && matchesEvent(automation.trigger, event));
102
103
  const insertDelivery = db.prepare(`INSERT INTO automation_event_deliveries (
103
104
  event_id, automation_id, status, attempts, next_attempt_at_ms, created_at_ms, updated_at_ms
104
105
  ) VALUES (?, ?, 'pending', 0, ?, ?, ?)`);
@@ -4,6 +4,7 @@ import { AgentCatalogService } from "../agent-catalog/service.js";
4
4
  import { cutoverLegacyAgentConfig } from "../agent-catalog/migrations/legacy-config-cutover.js";
5
5
  import "../agent-catalog/index.js";
6
6
  import { ensureStarterAgentsInitialized } from "../agent/starter-agents.js";
7
+ import { migrateIdentityMarkdownToCatalog } from "../agent-catalog/migrations/identity-markdown-cutover.js";
7
8
  import { runBootstrapMigrationsSync } from "../migrations/runner.js";
8
9
  //#region src/bootstrap/application-state.ts
9
10
  init_sqlite();
@@ -16,6 +17,7 @@ function bootstrapApplicationStateSync(configPath) {
16
17
  const agentCatalog = cutoverLegacyAgentConfig({ configPath });
17
18
  const configMigration = runBootstrapMigrationsSync(configPath);
18
19
  ensureStarterAgentsInitialized();
20
+ migrateIdentityMarkdownToCatalog();
19
21
  new AgentCatalogService().resumePendingProvisioningSync();
20
22
  return {
21
23
  agentCatalog,
@@ -2,8 +2,8 @@ import { PACKAGE_VERSION, init_package_version } from "../../package-version.js"
2
2
  import { resolveStateDir } from "../../config/paths-state.js";
3
3
  import { createLogger } from "../../utils/logger/index.js";
4
4
  import { init_logger } from "../../utils/logger.js";
5
- import { init_paths, resolveBinDir, resolveConfigPath } from "../../config/paths.js";
6
5
  import { init_write_file_atomic, writeTextAtomic } from "../../infra/write-file-atomic.js";
6
+ import { init_paths, resolveBinDir, resolveConfigPath } from "../../config/paths.js";
7
7
  import { assertCacheDir } from "../cache-dir-policy.js";
8
8
  import { BROWSER_EXTENSION_ID, BROWSER_NATIVE_HOST_NAME } from "../extension-identity.js";
9
9
  import "../native-messaging-host.js";
@@ -1,7 +1,7 @@
1
1
  import { normalizeAgentId } from "../agent-catalog/id.js";
2
2
  import { init_agent_scope, resolveAgentProfileDir } from "../agent/agent-scope.js";
3
- import { WORKSPACE_FILES, init_paths } from "../config/paths.js";
4
3
  import { init_agent_session_key, resolveAgentIdFromConversationId } from "../routing/agent-session-key.js";
4
+ import { WORKSPACE_FILES, init_paths } from "../config/paths.js";
5
5
  import { commandRegistry } from "./registry.js";
6
6
  import { join } from "node:path";
7
7
  import { readFile } from "node:fs/promises";
@@ -14,10 +14,8 @@ init_agent_scope();
14
14
  init_paths();
15
15
  const PROFILE_FILE_NAMES = [
16
16
  WORKSPACE_FILES.SOUL,
17
- WORKSPACE_FILES.IDENTITY,
18
17
  WORKSPACE_FILES.TOOLS,
19
- WORKSPACE_FILES.AGENTS,
20
- WORKSPACE_FILES.HEARTBEAT
18
+ WORKSPACE_FILES.AGENTS
21
19
  ];
22
20
  const DEFAULT_PREVIEW_CHARS = 900;
23
21
  const MAX_PREVIEW_CHARS = 4e3;
@@ -70,7 +68,6 @@ function buildEditInstructions(agentId, fileNames) {
70
68
  "",
71
69
  "Tell me what to change, or say things like:",
72
70
  "- “Refine `SOUL.md` to sound warmer and more concise.”",
73
- "- “Update `IDENTITY.md` so this agent is focused on data analysis.”",
74
71
  "- “Read `SOUL.md` first, propose changes, then write them back.”",
75
72
  "",
76
73
  `Editable profile files: ${files}.`,
@@ -92,7 +89,7 @@ const agentEditCommand = {
92
89
  examples: [
93
90
  "/agent-edit",
94
91
  "/agent-edit SOUL.md",
95
- "/agent-edit IDENTITY.md --limit=2000"
92
+ "/agent-edit AGENTS.md --limit=2000"
96
93
  ],
97
94
  handler: async (ctx, args) => {
98
95
  await ctx.setTyping(true);
@@ -104,7 +101,7 @@ const agentEditCommand = {
104
101
  };
105
102
  const agentId = normalizeAgentId(resolveAgentIdFromConversationId(ctx.conversationId));
106
103
  const profileDir = resolveAgentProfileDir(agentId);
107
- const namesToShow = fileName ? [fileName] : [WORKSPACE_FILES.SOUL, WORKSPACE_FILES.IDENTITY];
104
+ const namesToShow = fileName ? [fileName] : [WORKSPACE_FILES.SOUL, WORKSPACE_FILES.AGENTS];
108
105
  const sections = [];
109
106
  for (const name of namesToShow) {
110
107
  const preview = await readPreview(join(profileDir, name), previewChars);
@@ -1,7 +1,7 @@
1
1
  import { createLogger } from "../../utils/logger/index.js";
2
2
  import { init_logger } from "../../utils/logger.js";
3
- import { init_paths, resolveConfigPath } from "../../config/paths.js";
4
3
  import { ConfigSchema, init_schema } from "../../config/schema.js";
4
+ import { init_paths, resolveConfigPath } from "../../config/paths.js";
5
5
  import { commandRegistry } from "../registry.js";
6
6
  import { parseConfigValue } from "../config-value.js";
7
7
  import { getConfigValueAtPath, parseConfigPath, setConfigValueAtPath, unsetConfigValueAtPath } from "../config-paths.js";
@@ -4,10 +4,10 @@ import { CredentialResolver, init_credentials } from "../../auth/credentials.js"
4
4
  import { getAllProviders, init_providers } from "../../providers/index.js";
5
5
  import { formatExamples, register } from "../registry.js";
6
6
  import { disconnectProvider } from "../../providers/provider-disconnect.js";
7
- import { colorizeStatus, colors } from "../utils/colors.js";
8
7
  import { listAllProfiles, listProfilesForProvider, removeAuthProfile, upsertAuthProfile } from "../../auth/profiles/profiles.js";
9
8
  import "../../auth/profiles/index.js";
10
9
  import { getOAuthProvider, getSupportedOAuthProviders } from "../utils/oauth-providers.js";
10
+ import { colorizeStatus, colors } from "../utils/colors.js";
11
11
  import { runCliOAuthLogin } from "../utils/oauth-login.js";
12
12
  import { Command } from "commander";
13
13
  //#region src/cli/commands/auth.ts
@@ -46,7 +46,6 @@ async function checkWorkspaceStatus(ctx) {
46
46
  };
47
47
  const missing = [];
48
48
  if (!hasProfileFile(WORKSPACE_FILES.SOUL)) missing.push(WORKSPACE_FILES.SOUL);
49
- if (!hasProfileFile(WORKSPACE_FILES.IDENTITY)) missing.push(WORKSPACE_FILES.IDENTITY);
50
49
  if (missing.length > 0) return {
51
50
  id: "workspace-status",
52
51
  label: "Workspace",
@@ -1,8 +1,8 @@
1
1
  import { init_paths, resolveConfigPath } from "../../../config/paths.js";
2
2
  import { loadConfig } from "../../../config/loader.js";
3
3
  import "../../../config/index.js";
4
- import { resolveGatewayService } from "../../../daemon/service.js";
5
4
  import { isRestartEnabled } from "../../../config/commands.flags.js";
5
+ import { resolveGatewayService } from "../../../daemon/service.js";
6
6
  import { authorizeGatewaySigusr1Restart, writeGatewayRestartIntentSync } from "../../../infra/restart.js";
7
7
  import { findVerifiedGatewayListenerPidsOnPortSync, formatGatewayPidList, signalVerifiedGatewayPidSync } from "../../../infra/gateway-processes.js";
8
8
  import { runServiceRestart, runServiceStop } from "./lifecycle-core.js";
@@ -85,29 +85,6 @@ _This file is yours to evolve. As you learn who you are, update it._
85
85
  `, "utf-8");
86
86
  log.info({ path: soulPath }, "Created SOUL.md");
87
87
  }
88
- const identityPath = join(profileDir, WORKSPACE_FILES.IDENTITY);
89
- if (!existsSync(identityPath)) {
90
- await writeFile(identityPath, `# IDENTITY.md - Who Am I?
91
-
92
- - **Name:** ${agentId}
93
- - **Creature:** AI Assistant
94
- - **Vibe:** Helpful, precise, no fluff.
95
- - **Emoji:** 🤖
96
-
97
- ## Core Expertise
98
-
99
- - General assistance and problem solving
100
- - Code and technical tasks
101
- - Research and analysis
102
-
103
- ## Decision Framework
104
-
105
- 1. **Simplicity first** - The simplest solution is usually the best
106
- 2. **Explicit over clever** - Clarity beats conciseness
107
- 3. **Actions over words** - Show, don't just tell
108
- `, "utf-8");
109
- log.info({ path: identityPath }, "Created IDENTITY.md");
110
- }
111
88
  const agentsPath = join(profileDir, WORKSPACE_FILES.AGENTS);
112
89
  if (!existsSync(agentsPath)) {
113
90
  await writeFile(agentsPath, `# AGENTS.md - Behavior Guidelines
@@ -167,16 +144,6 @@ Skills are shared. Your setup is yours.
167
144
  `, "utf-8");
168
145
  log.info({ path: toolsPath }, "Created TOOLS.md");
169
146
  }
170
- const heartbeatPath = join(profileDir, WORKSPACE_FILES.HEARTBEAT);
171
- if (!existsSync(heartbeatPath)) {
172
- await writeFile(heartbeatPath, `# HEARTBEAT.md
173
-
174
- # Keep this file empty (or with only comments) to skip heartbeat API calls.
175
-
176
- # Add tasks below when you want the agent to check something periodically.
177
- `, "utf-8");
178
- log.info({ path: heartbeatPath }, "Created HEARTBEAT.md");
179
- }
180
147
  }
181
148
  function createInitCommand(_ctx) {
182
149
  return new Command("init").description("Initialize xopc state directories, config, and agent workspace").addHelpText("after", formatExamples([
@@ -1,7 +1,7 @@
1
1
  import { AgentCatalogRepository, init_repository } from "../../../agent-catalog/repository.js";
2
- import { resolveModelsJsonPath } from "../../../config/paths.js";
3
2
  import { AgentCatalogService } from "../../../agent-catalog/service.js";
4
3
  import { getAgentDefaultModelRef, init_schema } from "../../../config/schema.js";
4
+ import { resolveModelsJsonPath } from "../../../config/paths.js";
5
5
  import { init_models_json, loadModelsJson, saveModelsJson } from "../../../config/models-json.js";
6
6
  import { getApiKeyFromEnv } from "../../../providers/env-keys.js";
7
7
  import { getModelRegistry } from "../../../providers/model-registry.js";
@@ -12,10 +12,10 @@ import { discoverProviderModels, isProviderApiDiscoverable } from "../../../prov
12
12
  import { getXopcCloudCatalogCoordinator } from "../../../providers/xopc-cloud-catalog-coordinator.js";
13
13
  import { getDomesticProviderBaseUrl, getDomesticProviderPreset, getDomesticProviderPresetIds, providerConfigFromDomesticPreset } from "../../../providers/domestic-presets.js";
14
14
  import { getProviderHint, getRecommendedModelsForProvider, sortModelsForPicker, sortProvidersForPicker } from "../../../providers/presentation.js";
15
- import { colors } from "../../utils/colors.js";
16
15
  import { listProfilesForProvider } from "../../../auth/profiles/profiles.js";
17
16
  import "../../../auth/profiles/index.js";
18
17
  import { getOAuthProvider } from "../../utils/oauth-providers.js";
18
+ import { colors } from "../../utils/colors.js";
19
19
  import { runCliOAuthLogin } from "../../utils/oauth-login.js";
20
20
  import { confirm, input, select } from "@inquirer/prompts";
21
21
  //#region src/cli/commands/onboard/model.ts
@@ -1,9 +1,9 @@
1
1
  import { PROVIDER_ENV_MAP, getApiKeyFromEnv } from "../../providers/env-keys.js";
2
2
  import { PROVIDER_META, getAllProviders, getSortedProviders, init_providers } from "../../providers/index.js";
3
3
  import { formatExamples, register } from "../registry.js";
4
- import { colors } from "../utils/colors.js";
5
4
  import { getProfile, listAllProfiles, listProfilesForProvider, removeAuthProfile, upsertAuthProfile } from "../../auth/profiles/profiles.js";
6
5
  import "../../auth/profiles/index.js";
6
+ import { colors } from "../utils/colors.js";
7
7
  import { SETUP_EXIT } from "./setup-shared/types.js";
8
8
  import { emitTask } from "./setup-shared/output.js";
9
9
  import { isPromptCancelled, promptSecret } from "./setup-shared/prompts.js";
@@ -3,7 +3,7 @@
3
3
  * Templates are stored in docs/reference/templates/ and loaded at runtime.
4
4
  */
5
5
  /** Profile Markdown template file names (seeded into `agents/<id>/profile/`). */
6
- export declare const TEMPLATE_FILES: readonly ["SOUL.md", "IDENTITY.md", "TOOLS.md", "AGENTS.md", "HEARTBEAT.md"];
6
+ export declare const TEMPLATE_FILES: readonly ["SOUL.md", "TOOLS.md", "AGENTS.md"];
7
7
  export type TemplateFile = (typeof TEMPLATE_FILES)[number];
8
8
  /** Alias for profile Markdown templates used by seed helpers. */
9
9
  export declare const PROFILE_MARKDOWN_TEMPLATE_FILES: readonly TemplateFile[];
@@ -10,10 +10,8 @@ const __dirname = dirname(fileURLToPath(import.meta.url));
10
10
  /** Profile Markdown template file names (seeded into `agents/<id>/profile/`). */
11
11
  const TEMPLATE_FILES = [
12
12
  "SOUL.md",
13
- "IDENTITY.md",
14
13
  "TOOLS.md",
15
- "AGENTS.md",
16
- "HEARTBEAT.md"
14
+ "AGENTS.md"
17
15
  ];
18
16
  /** Alias for profile Markdown templates used by seed helpers. */
19
17
  const PROFILE_MARKDOWN_TEMPLATE_FILES = [...TEMPLATE_FILES];
@@ -106,15 +104,6 @@ _You're not a chatbot. You're becoming someone._
106
104
  - Never send half-baked replies
107
105
 
108
106
  This file is yours to evolve.
109
- `,
110
- "IDENTITY.md": `# IDENTITY.md - Who Am I?
111
-
112
- _Fill this in during your first conversation._
113
-
114
- - **Name:**
115
- - **Creature:**
116
- - **Vibe:**
117
- - **Emoji:**
118
107
  `,
119
108
  "TOOLS.md": `# TOOLS.md - Local Notes
120
109
 
@@ -123,17 +112,6 @@ Environment-specific notes:
123
112
  - SSH hosts
124
113
  - API endpoints
125
114
  - Device nicknames
126
- `,
127
- "HEARTBEAT.md": `# HEARTBEAT.md - Periodic Checks
128
-
129
- Edit this file to define what you check during heartbeat polls.
130
-
131
- ## Example Checklist
132
-
133
- - [ ] Check email for urgent messages
134
- - [ ] Check calendar for upcoming events
135
-
136
- **Remember:** If nothing needs attention, reply \`HEARTBEAT_OK\`.
137
115
  `
138
116
  }[name] || `# ${name}\n\n(Template content missing)\n`;
139
117
  }
@@ -2,12 +2,12 @@ import { ENV_VARS, XOPC_DB_FILENAME, resolveHomeDir, resolveStateDir, resolveXop
2
2
  import { expandWorkspacePathString, init_workspace_path, normalizeWorkspaceDir, resolveWorkspaceRoot } from "./workspace-path.js";
3
3
  import { resolveDefaultAgentWorkspaceDir } from "./workspace-defaults.js";
4
4
  import { resolveAgentWorkspaceDir } from "../agent/agent-scope.js";
5
- import { FILENAMES, WORKSPACE_FILES, existsSync, hasBundledExtensionManifest, init_paths, resolveAgentAuthProfilesPath, resolveAgentDir, resolveAgentHomeDir, resolveAgentProfileDir, resolveAgentProfileMarkdownPath, resolveAuthProfilesPath, resolveBinDir, resolveBundledExtensionsDir, resolveBundledSkillsDir, resolveConfigPath, resolveCredentialsDir, resolveExtensionSdkPath, resolveExtensionsDir, resolveExtensionsLockPath, resolveInboxDir, resolveInboxMessagePath, resolveInboxPendingDir, resolveInboxProcessedDir, resolveLogPath, resolveLogsDir, resolveMcpOAuthPath, resolveModelsJsonPath, resolveNodeBinDir, resolveNodeBinPath, resolveNodeToolsDir, resolveNpmBinPath, resolveOAuthPath, resolvePidPath, resolveSkillPath, resolveSkillsCachePath, resolveSkillsDir, resolveSkillsLockPath, resolveSocketPath, resolveStatusPath, resolveToolsDir, resolveWorkspaceExtensionsDir, resolveWorkspaceFile, resolveWorkspaceStateDir, resolveWorkspaceStatePath, resolveXopcBinPath } from "./paths.js";
6
5
  import { TelegramAccountConfigSchema, TelegramConfigSchema, TelegramGroupConfigSchema, TelegramTopicConfigSchema } from "../../extensions/telegram/src/config-schema.js";
7
6
  import { WeixinAccountConfigSchema, WeixinConfigSchema } from "../../extensions/weixin/src/config-schema.js";
8
- import { AgentImageGenerationModelSchema, AgentModelRefSchema, AgentModelsSchema, BrowserConfigSchema, ChannelsConfigSchema, CommandsConfigSchema, ConfigSchema, ConnectorsConfigSchema, ExperimentalConfigSchema, ExtensionSecurityConfigSchema, ExtensionSlotsConfigSchema, ExtensionsConfigSchema, GatewayAuthRateLimitSchema, GatewayAuthSchema, GatewayBindModeSchema, GatewayChannelConnectDeferModeSchema, GatewayConfigSchema, GatewayModeSchema, GatewayRemoteSchema, GatewayScenesConfigSchema, GatewaySecuritySchema, GatewayTailscaleConsentSchema, GatewayTailscaleSchema, GatewayTlsSchema, GatewayTrustedProxySchema, GatewayWebchatConfigSchema, HeartbeatConfigSchema, McpConfigSchema, McpOAuthConfigSchema, McpServerSchema, MediaUnderstandingCapabilitiesSchema, MediaUnderstandingModelSchema, MessagesConfigSchema, ModelCatalogConfigSchema, ModelsDevConfigSchema, ProviderAuthConfigSchema, ProviderAzureConfigSchema, ProviderRequestOverridesSchema, ProvidersConfigSchema, RuntimeToolsConfigSchema, STTConfigSchema, STTFallbackConfigSchema, STTProviderConfigSchema, SearchProviderEntrySchema, SessionConfigSchema, SessionDmScopeSchema, SessionResetByTypeSchema, SessionResetConfigSchema, SessionResetModeSchema, SessionScopeSchema, SessionStorageConfigSchema, TTSConfigSchema, TTSEdgeConfigSchema, TTSFallbackConfigSchema, TTSModelOverridesConfigSchema, TTSProviderConfigSchema, TTSSummarizationConfigSchema, ToolsConfigSchema, ToolsMediaAudioConfigSchema, ToolsMediaConfigSchema, TunnelConfigSchema, TunnelConsentSchema, UpdateAutoConfigSchema, UpdateConfigSchema, VoiceConfigSchema, VoiceRefinementConfigSchema, WebSearchConfigSchema, WebToolsConfigSchema, WebsiteBlocklistSchema, WorkspaceConfigSchema, WorkspaceImportConfigSchema, getAgentDefaultImageGenerationModelConfig, getAgentDefaultImageModelConfig, getAgentDefaultModelRef, init_schema, parseModelRef } from "./schema.js";
7
+ import { AgentImageGenerationModelSchema, AgentModelRefSchema, AgentModelsSchema, BrowserConfigSchema, ChannelsConfigSchema, CommandsConfigSchema, ConfigSchema, ConnectorsConfigSchema, ExperimentalConfigSchema, ExtensionSecurityConfigSchema, ExtensionSlotsConfigSchema, ExtensionsConfigSchema, GatewayAuthRateLimitSchema, GatewayAuthSchema, GatewayBindModeSchema, GatewayChannelConnectDeferModeSchema, GatewayConfigSchema, GatewayModeSchema, GatewayRemoteSchema, GatewayScenesConfigSchema, GatewaySecuritySchema, GatewayTailscaleConsentSchema, GatewayTailscaleSchema, GatewayTlsSchema, GatewayTrustedProxySchema, GatewayWebchatConfigSchema, McpConfigSchema, McpOAuthConfigSchema, McpServerSchema, MediaUnderstandingCapabilitiesSchema, MediaUnderstandingModelSchema, MessagesConfigSchema, ModelCatalogConfigSchema, ModelsDevConfigSchema, ProviderAuthConfigSchema, ProviderAzureConfigSchema, ProviderRequestOverridesSchema, ProvidersConfigSchema, RuntimeToolsConfigSchema, STTConfigSchema, STTFallbackConfigSchema, STTProviderConfigSchema, SearchProviderEntrySchema, SessionConfigSchema, SessionDmScopeSchema, SessionResetByTypeSchema, SessionResetConfigSchema, SessionResetModeSchema, SessionScopeSchema, SessionStorageConfigSchema, TTSConfigSchema, TTSEdgeConfigSchema, TTSFallbackConfigSchema, TTSModelOverridesConfigSchema, TTSProviderConfigSchema, TTSSummarizationConfigSchema, ToolsConfigSchema, ToolsMediaAudioConfigSchema, ToolsMediaConfigSchema, TunnelConfigSchema, TunnelConsentSchema, UpdateAutoConfigSchema, UpdateConfigSchema, VoiceConfigSchema, VoiceRefinementConfigSchema, WebSearchConfigSchema, WebToolsConfigSchema, WebsiteBlocklistSchema, WorkspaceConfigSchema, WorkspaceImportConfigSchema, getAgentDefaultImageGenerationModelConfig, getAgentDefaultImageModelConfig, getAgentDefaultModelRef, init_schema, parseModelRef } from "./schema.js";
9
8
  import { applyConfigOverrides, getConfigOverrides, resetConfigOverrides, setConfigOverride, unsetConfigOverride } from "./runtime-overrides.js";
10
9
  import { extractProfileAgentId, resolveEffectiveAgentConfigForAgent, resolveEffectiveAgentConfigForSession, resolveEffectiveAgentProfile, resolveEffectiveAgentProfileForSession } from "./agent-profile.js";
10
+ import { FILENAMES, WORKSPACE_FILES, existsSync, hasBundledExtensionManifest, init_paths, resolveAgentAuthProfilesPath, resolveAgentDir, resolveAgentHomeDir, resolveAgentProfileDir, resolveAgentProfileMarkdownPath, resolveAuthProfilesPath, resolveBinDir, resolveBundledExtensionsDir, resolveBundledSkillsDir, resolveConfigPath, resolveCredentialsDir, resolveExtensionSdkPath, resolveExtensionsDir, resolveExtensionsLockPath, resolveInboxDir, resolveInboxMessagePath, resolveInboxPendingDir, resolveInboxProcessedDir, resolveLogPath, resolveLogsDir, resolveMcpOAuthPath, resolveModelsJsonPath, resolveNodeBinDir, resolveNodeBinPath, resolveNodeToolsDir, resolveNpmBinPath, resolveOAuthPath, resolvePidPath, resolveSkillPath, resolveSkillsCachePath, resolveSkillsDir, resolveSkillsLockPath, resolveSocketPath, resolveStatusPath, resolveToolsDir, resolveWorkspaceExtensionsDir, resolveWorkspaceFile, resolveWorkspaceStateDir, resolveWorkspaceStatePath, resolveXopcBinPath } from "./paths.js";
11
11
  import { clearConfigValueCache, getAllowedCommands, getCacheStats, init_resolve_config_value, resolveConfigValue, resolveHeaders, testApiKeyResolution } from "./resolve-config-value.js";
12
12
  import { CustomModelSchema, ImageGenerationCapabilitiesSchema, ImageGenerationModelSchema, ImageGenerationProviderSchema, ModelOverrideSchema, ModelsJsonSchema, OpenAICompatSchema, OpenAICompletionsCompatSchema, OpenAIResponsesCompatSchema, OpenRouterRoutingSchema, ProviderConfigSchema, VercelGatewayRoutingSchema, getDefaultModelValues, init_models_json, loadModelsJson, modelsJsonExists, saveModelsJson, validateModelsConfig } from "./models-json.js";
13
13
  import { canonicalizeConfiguredMcpServer, isKnownCliMcpTypeAlias, normalizeConfiguredMcpServers, resolveXopcMcpTransportAlias } from "./mcp-config-normalize.js";
@@ -26,4 +26,4 @@ init_workspace_path();
26
26
  init_models_json();
27
27
  init_resolve_config_value();
28
28
  //#endregion
29
- export { AgentImageGenerationModelSchema, AgentModelRefSchema, AgentModelsSchema, BASE_RELOAD_RULES, BrowserConfigSchema, ChannelsConfigSchema, CommandsConfigSchema, ConfigHotReloader, ConfigSchema, ConnectorsConfigSchema, CustomModelSchema, ENV_VARS, ExperimentalConfigSchema, ExtensionSecurityConfigSchema, ExtensionSlotsConfigSchema, ExtensionsConfigSchema, FILENAMES, GatewayAuthRateLimitSchema, GatewayAuthSchema, GatewayBindModeSchema, GatewayChannelConnectDeferModeSchema, GatewayConfigSchema, GatewayModeSchema, GatewayRemoteSchema, GatewayScenesConfigSchema, GatewaySecuritySchema, GatewayTailscaleConsentSchema, GatewayTailscaleSchema, GatewayTlsSchema, GatewayTrustedProxySchema, GatewayWebchatConfigSchema, HeartbeatConfigSchema, ImageGenerationCapabilitiesSchema, ImageGenerationModelSchema, ImageGenerationProviderSchema, McpConfigSchema, McpOAuthConfigSchema, McpServerSchema, MediaUnderstandingCapabilitiesSchema, MediaUnderstandingModelSchema, MessagesConfigSchema, ModelCatalogConfigSchema, ModelOverrideSchema, ModelsDevConfigSchema, ModelsJsonSchema, OpenAICompatSchema, OpenAICompletionsCompatSchema, OpenAIResponsesCompatSchema, OpenRouterRoutingSchema, ProfileManager, ProviderAuthConfigSchema, ProviderAzureConfigSchema, ProviderConfigSchema, ProviderRequestOverridesSchema, ProvidersConfigSchema, RuntimeToolsConfigSchema, STTConfigSchema, STTFallbackConfigSchema, STTProviderConfigSchema, SearchProviderEntrySchema, SessionConfigSchema, SessionDmScopeSchema, SessionResetByTypeSchema, SessionResetConfigSchema, SessionResetModeSchema, SessionScopeSchema, SessionStorageConfigSchema, TTSConfigSchema, TTSEdgeConfigSchema, TTSFallbackConfigSchema, TTSModelOverridesConfigSchema, TTSProviderConfigSchema, TTSSummarizationConfigSchema, TelegramAccountConfigSchema, TelegramConfigSchema, TelegramGroupConfigSchema, TelegramTopicConfigSchema, ToolsConfigSchema, ToolsMediaAudioConfigSchema, ToolsMediaConfigSchema, TunnelConfigSchema, TunnelConsentSchema, UpdateAutoConfigSchema, UpdateConfigSchema, VercelGatewayRoutingSchema, VoiceConfigSchema, VoiceRefinementConfigSchema, WORKSPACE_FILES, WebSearchConfigSchema, WebToolsConfigSchema, WebsiteBlocklistSchema, WeixinAccountConfigSchema, WeixinConfigSchema, WorkspaceConfigSchema, WorkspaceImportConfigSchema, XOPC_DB_FILENAME, applyConfigOverrides, assertConfigRewriteSafeForRunningGateway, buildReloadPlan, canonicalizeConfiguredMcpServer, clearConfigValueCache, createProfile, deleteProfile, diffConfigPaths, existsSync, expandWorkspacePathString, extractProfileAgentId, formatThinkingLevels, getAgentDefaultImageGenerationModelConfig, getAgentDefaultImageModelConfig, getAgentDefaultModelRef, getAllowedCommands, getCacheStats, getConfigOverrides, getCurrentProfile, getDefaultModelValues, resolveModelsJsonPath as getModelsJsonPath, getProfileManager, getProfileNameFromDir, getSwitchCommand, getWorkspacePath, hasBundledExtensionManifest, isKnownCliMcpTypeAlias, listAgentProfileMarkdownDirs, listAgentWorkspaceDirs, listProfiles, listThinkingLevels, loadConfig, loadModelsJson, matchReloadRule, modelsJsonExists, normalizeConfiguredMcpServers, normalizeElevatedMode, normalizeReasoningLevel, normalizeThinkLevel, normalizeVerboseLevel, normalizeWorkspaceDir, parseModelRef, resetConfigOverrides, resolveAgentAuthProfilesPath, resolveAgentDir, resolveAgentHomeDir, resolveAgentProfileDir, resolveAgentProfileMarkdownPath, resolveAgentWorkspaceDir, resolveAuthProfilesPath, resolveBinDir, resolveBundledExtensionsDir, resolveBundledSkillsDir, resolveConfigPath, resolveConfigValue, resolveCredentialsDir, resolveDefaultAgentWorkspaceDir, resolveEffectiveAgentConfigForAgent, resolveEffectiveAgentConfigForSession, resolveEffectiveAgentProfile, resolveEffectiveAgentProfileForSession, resolveExtensionSdkPath, resolveExtensionsDir, resolveExtensionsLockPath, resolveHeaders, resolveHomeDir, resolveInboxDir, resolveInboxMessagePath, resolveInboxPendingDir, resolveInboxProcessedDir, resolveLogPath, resolveLogsDir, resolveMcpOAuthPath, resolveModelsJsonPath, resolveNodeBinDir, resolveNodeBinPath, resolveNodeToolsDir, resolveNpmBinPath, resolveOAuthPath, resolvePidPath, resolveProfileStateDir, resolveSkillPath, resolveSkillsCachePath, resolveSkillsDir, resolveSkillsLockPath, resolveSocketPath, resolveStateDir, resolveStatusPath, resolveToolsDir, resolveWorkspaceExtensionsDir, resolveWorkspaceFile, resolveWorkspaceRoot, resolveWorkspaceStateDir, resolveWorkspaceStatePath, resolveXopcBinPath, resolveXopcCloudCatalogCachePath, resolveXopcDatabasePath, resolveXopcMcpTransportAlias, saveConfig, saveModelsJson, setConfigOverride, testApiKeyResolution, thinkLevelToNumber, unsetConfigOverride, validateModelsConfig };
29
+ export { AgentImageGenerationModelSchema, AgentModelRefSchema, AgentModelsSchema, BASE_RELOAD_RULES, BrowserConfigSchema, ChannelsConfigSchema, CommandsConfigSchema, ConfigHotReloader, ConfigSchema, ConnectorsConfigSchema, CustomModelSchema, ENV_VARS, ExperimentalConfigSchema, ExtensionSecurityConfigSchema, ExtensionSlotsConfigSchema, ExtensionsConfigSchema, FILENAMES, GatewayAuthRateLimitSchema, GatewayAuthSchema, GatewayBindModeSchema, GatewayChannelConnectDeferModeSchema, GatewayConfigSchema, GatewayModeSchema, GatewayRemoteSchema, GatewayScenesConfigSchema, GatewaySecuritySchema, GatewayTailscaleConsentSchema, GatewayTailscaleSchema, GatewayTlsSchema, GatewayTrustedProxySchema, GatewayWebchatConfigSchema, ImageGenerationCapabilitiesSchema, ImageGenerationModelSchema, ImageGenerationProviderSchema, McpConfigSchema, McpOAuthConfigSchema, McpServerSchema, MediaUnderstandingCapabilitiesSchema, MediaUnderstandingModelSchema, MessagesConfigSchema, ModelCatalogConfigSchema, ModelOverrideSchema, ModelsDevConfigSchema, ModelsJsonSchema, OpenAICompatSchema, OpenAICompletionsCompatSchema, OpenAIResponsesCompatSchema, OpenRouterRoutingSchema, ProfileManager, ProviderAuthConfigSchema, ProviderAzureConfigSchema, ProviderConfigSchema, ProviderRequestOverridesSchema, ProvidersConfigSchema, RuntimeToolsConfigSchema, STTConfigSchema, STTFallbackConfigSchema, STTProviderConfigSchema, SearchProviderEntrySchema, SessionConfigSchema, SessionDmScopeSchema, SessionResetByTypeSchema, SessionResetConfigSchema, SessionResetModeSchema, SessionScopeSchema, SessionStorageConfigSchema, TTSConfigSchema, TTSEdgeConfigSchema, TTSFallbackConfigSchema, TTSModelOverridesConfigSchema, TTSProviderConfigSchema, TTSSummarizationConfigSchema, TelegramAccountConfigSchema, TelegramConfigSchema, TelegramGroupConfigSchema, TelegramTopicConfigSchema, ToolsConfigSchema, ToolsMediaAudioConfigSchema, ToolsMediaConfigSchema, TunnelConfigSchema, TunnelConsentSchema, UpdateAutoConfigSchema, UpdateConfigSchema, VercelGatewayRoutingSchema, VoiceConfigSchema, VoiceRefinementConfigSchema, WORKSPACE_FILES, WebSearchConfigSchema, WebToolsConfigSchema, WebsiteBlocklistSchema, WeixinAccountConfigSchema, WeixinConfigSchema, WorkspaceConfigSchema, WorkspaceImportConfigSchema, XOPC_DB_FILENAME, applyConfigOverrides, assertConfigRewriteSafeForRunningGateway, buildReloadPlan, canonicalizeConfiguredMcpServer, clearConfigValueCache, createProfile, deleteProfile, diffConfigPaths, existsSync, expandWorkspacePathString, extractProfileAgentId, formatThinkingLevels, getAgentDefaultImageGenerationModelConfig, getAgentDefaultImageModelConfig, getAgentDefaultModelRef, getAllowedCommands, getCacheStats, getConfigOverrides, getCurrentProfile, getDefaultModelValues, resolveModelsJsonPath as getModelsJsonPath, getProfileManager, getProfileNameFromDir, getSwitchCommand, getWorkspacePath, hasBundledExtensionManifest, isKnownCliMcpTypeAlias, listAgentProfileMarkdownDirs, listAgentWorkspaceDirs, listProfiles, listThinkingLevels, loadConfig, loadModelsJson, matchReloadRule, modelsJsonExists, normalizeConfiguredMcpServers, normalizeElevatedMode, normalizeReasoningLevel, normalizeThinkLevel, normalizeVerboseLevel, normalizeWorkspaceDir, parseModelRef, resetConfigOverrides, resolveAgentAuthProfilesPath, resolveAgentDir, resolveAgentHomeDir, resolveAgentProfileDir, resolveAgentProfileMarkdownPath, resolveAgentWorkspaceDir, resolveAuthProfilesPath, resolveBinDir, resolveBundledExtensionsDir, resolveBundledSkillsDir, resolveConfigPath, resolveConfigValue, resolveCredentialsDir, resolveDefaultAgentWorkspaceDir, resolveEffectiveAgentConfigForAgent, resolveEffectiveAgentConfigForSession, resolveEffectiveAgentProfile, resolveEffectiveAgentProfileForSession, resolveExtensionSdkPath, resolveExtensionsDir, resolveExtensionsLockPath, resolveHeaders, resolveHomeDir, resolveInboxDir, resolveInboxMessagePath, resolveInboxPendingDir, resolveInboxProcessedDir, resolveLogPath, resolveLogsDir, resolveMcpOAuthPath, resolveModelsJsonPath, resolveNodeBinDir, resolveNodeBinPath, resolveNodeToolsDir, resolveNpmBinPath, resolveOAuthPath, resolvePidPath, resolveProfileStateDir, resolveSkillPath, resolveSkillsCachePath, resolveSkillsDir, resolveSkillsLockPath, resolveSocketPath, resolveStateDir, resolveStatusPath, resolveToolsDir, resolveWorkspaceExtensionsDir, resolveWorkspaceFile, resolveWorkspaceRoot, resolveWorkspaceStateDir, resolveWorkspaceStatePath, resolveXopcBinPath, resolveXopcCloudCatalogCachePath, resolveXopcDatabasePath, resolveXopcMcpTransportAlias, saveConfig, saveModelsJson, setConfigOverride, testApiKeyResolution, thinkLevelToNumber, unsetConfigOverride, validateModelsConfig };
@@ -1,8 +1,8 @@
1
1
  import { createLogger } from "../utils/logger/index.js";
2
2
  import { init_logger } from "../utils/logger.js";
3
- import { init_paths, resolveConfigPath } from "./paths.js";
4
3
  import { init_write_file_atomic, writeTextAtomic } from "../infra/write-file-atomic.js";
5
4
  import { ConfigSchema, init_schema } from "./schema.js";
5
+ import { init_paths, resolveConfigPath } from "./paths.js";
6
6
  import { init_resolution, setActivePlatformDiscovery } from "../platform/resolution.js";
7
7
  import { assertChannelPluginConfigs } from "./validate-channel-configs.js";
8
8
  import { isGatewayConfigLockedByAnotherProcessSync } from "../gateway/lock.js";
@@ -1,6 +1,6 @@
1
1
  import { __esmMin } from "../../_virtual/_rolldown/runtime.js";
2
- import { init_paths, resolveModelsJsonPath } from "./paths.js";
3
2
  import { init_write_file_atomic, writeTextAtomicSync } from "../infra/write-file-atomic.js";
3
+ import { init_paths, resolveModelsJsonPath } from "./paths.js";
4
4
  import { ComputerProfileSchema, init_src } from "../../packages/computer-control-contract/src/index.js";
5
5
  import { init_model_policy, isComputerModel } from "../computer/model-policy.js";
6
6
  import { existsSync, readFileSync } from "fs";
@@ -19,10 +19,8 @@ export declare const FILENAMES: {
19
19
  };
20
20
  export declare const WORKSPACE_FILES: {
21
21
  readonly SOUL: "SOUL.md";
22
- readonly IDENTITY: "IDENTITY.md";
23
22
  readonly AGENTS: "AGENTS.md";
24
23
  readonly TOOLS: "TOOLS.md";
25
- readonly HEARTBEAT: "HEARTBEAT.md";
26
24
  };
27
25
  /**
28
26
  * Resolve the main config file path
@@ -316,10 +316,8 @@ var init_paths = __esmMin((() => {
316
316
  };
317
317
  WORKSPACE_FILES = {
318
318
  SOUL: "SOUL.md",
319
- IDENTITY: "IDENTITY.md",
320
319
  AGENTS: "AGENTS.md",
321
- TOOLS: "TOOLS.md",
322
- HEARTBEAT: "HEARTBEAT.md"
320
+ TOOLS: "TOOLS.md"
323
321
  };
324
322
  }));
325
323
  //#endregion
@@ -20,7 +20,6 @@ export interface ReloadCallbacks {
20
20
  onModelsReload?: ReloadCallback;
21
21
  onChannelsReload?: ReloadCallback;
22
22
  onCronReload?: ReloadCallback;
23
- onHeartbeatReload?: ReloadCallback;
24
23
  onToolsReload?: ReloadCallback;
25
24
  onMcpReload?: ReloadCallback;
26
25
  onWebSearchReload?: ReloadCallback;
@@ -173,10 +173,6 @@ var ConfigHotReloader = class {
173
173
  if (this.callbacks.onCronReload) await Promise.resolve(this.callbacks.onCronReload(newConfig));
174
174
  return;
175
175
  }
176
- if (path === "gateway.heartbeat" || path.startsWith("gateway.heartbeat.")) {
177
- if (this.callbacks.onHeartbeatReload) await Promise.resolve(this.callbacks.onHeartbeatReload(newConfig));
178
- return;
179
- }
180
176
  if (path.startsWith("tools.")) {
181
177
  if (this.callbacks.onToolsReload) await Promise.resolve(this.callbacks.onToolsReload(newConfig));
182
178
  return;
@@ -118,11 +118,6 @@ const BASE_RELOAD_RULES = [
118
118
  kind: "hot",
119
119
  description: "Any channel subtree (e.g. future extensions)"
120
120
  },
121
- {
122
- prefix: "gateway.heartbeat",
123
- kind: "hot",
124
- description: "Heartbeat settings"
125
- },
126
121
  {
127
122
  prefix: "webSearch",
128
123
  kind: "hot",