@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.
- package/README.md +2 -2
- package/README.zh-CN.md +2 -2
- package/dist/browser-ext/dist/sidepanel.js +1 -1
- package/dist/browser-ext/manifest.json +1 -1
- package/dist/extensions/telegram/xopc.extension.json +1 -1
- package/dist/gateway/static/root/assets/{agent-avatar-dicebear-Dc0yBlKV.js → agent-avatar-dicebear-BVIuZcCP.js} +1 -1
- package/dist/gateway/static/root/assets/{agent-defaults-settings-panel-BXFins6I.js → agent-defaults-settings-panel-CcTnphqy.js} +1 -1
- package/dist/gateway/static/root/assets/{agent-plugin-dialog-B-w6bJuj.js → agent-plugin-dialog-CdCzMPhC.js} +1 -1
- package/dist/gateway/static/root/assets/agents-BiNKpndr.js +66 -0
- package/dist/gateway/static/root/assets/{agents-admin-api-yUALtmym.js → agents-admin-api-Ck2x78jq.js} +1 -1
- package/dist/gateway/static/root/assets/{app-management-settings-panel-C7QjGlMZ.js → app-management-settings-panel-BvGDN5J6.js} +1 -1
- package/dist/gateway/static/root/assets/{appearance-settings-CgApGxhN.js → appearance-settings-BhQYkuQj.js} +1 -1
- package/dist/gateway/static/root/assets/{apps-page-DWii4stP.js → apps-page-BQZJuM-C.js} +1 -1
- package/dist/gateway/static/root/assets/{archive-plugin--oP0UmoE.js → archive-plugin-BZXXJvpX.js} +1 -1
- package/dist/gateway/static/root/assets/{automations-page-DkV4w6xr.js → automations-page-C7VKkDb5.js} +1 -1
- package/dist/gateway/static/root/assets/{automations-workspace-DT95Uk9d.js → automations-workspace-y4qcvlg8.js} +1 -1
- package/dist/gateway/static/root/assets/{binary-plugins-DIpBiw_8.js → binary-plugins-DoT3g5SP.js} +1 -1
- package/dist/gateway/static/root/assets/{block-editor-Di4X446B.js → block-editor-sqqrCafh.js} +1 -1
- package/dist/gateway/static/root/assets/{browser-automation-inputs-B0TlAcoB.js → browser-automation-inputs-CZOKsAaa.js} +1 -1
- package/dist/gateway/static/root/assets/{browser-automations-page-pKPvkGW8.js → browser-automations-page-TEeTmkGP.js} +1 -1
- package/dist/gateway/static/root/assets/{browser-settings-page-cJ200PlY.js → browser-settings-page--N4P7V0l.js} +1 -1
- package/dist/gateway/static/root/assets/{capabilities-e-fO70DK.js → capabilities-BOrLei_L.js} +1 -1
- package/dist/gateway/static/root/assets/{capabilities-page-CPKbJUDL.js → capabilities-page-F7OAv-iz.js} +2 -2
- package/dist/gateway/static/root/assets/{capabilities-settings-panel-D5xUFWBJ.js → capabilities-settings-panel-CaiIo1S1.js} +1 -1
- package/dist/gateway/static/root/assets/{capability-header-actions-9qDm8ioP.js → capability-header-actions-CR_O9_Vr.js} +1 -1
- package/dist/gateway/static/root/assets/{channels-CO_9_oIH.js → channels-Bb-8c4wl.js} +1 -1
- package/dist/gateway/static/root/assets/{chat-terminal-dock-DCFwzHu2.js → chat-terminal-dock-Q99iKyiO.js} +1 -1
- package/dist/gateway/static/root/assets/{computer-settings-page-bwWQ3axN.js → computer-settings-page-QuXZBfky.js} +1 -1
- package/dist/gateway/static/root/assets/{connector-service-page-BIIP-gX4.js → connector-service-page-BIqzVqCO.js} +1 -1
- package/dist/gateway/static/root/assets/{connectors-page-C0b5Xbca.js → connectors-page-CZ24DSBJ.js} +1 -1
- package/dist/gateway/static/root/assets/{date-picker-DBio7OE6.js → date-picker-Ck-FmYEL.js} +1 -1
- package/dist/gateway/static/root/assets/{dependency-picker-hyPm_1tB.js → dependency-picker-BjH8XrKb.js} +1 -1
- package/dist/gateway/static/root/assets/{desktop-pet-BDPfot60.js → desktop-pet-DyGxNAVW.js} +1 -1
- package/dist/gateway/static/root/assets/{desktop-pet-settings-C6IRO2iD.js → desktop-pet-settings-C1rKgB-S.js} +1 -1
- package/dist/gateway/static/root/assets/{device-pairing-wizard-CUOh38IK.js → device-pairing-wizard-UrPcOU6Q.js} +1 -1
- package/dist/gateway/static/root/assets/{directory-picker-path-field-ljXXfuLL.js → directory-picker-path-field-BYxUgMZb.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-debug-page-DHw1dG1g.js → extension-debug-page-CGL0jpQA.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-page-BjLN3E6q.js → extension-page-DPWf-tYg.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-settings-page-BMp6v6zP.js → extension-settings-page-DZWBY39d.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-config-swr-CmjHbMj7.js → gateway-config-swr-B31I6Gbq.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-realtime-DzyR6LYb.js → gateway-realtime-D6ffOiPe.js} +1 -1
- package/dist/gateway/static/root/assets/gateway-realtime-store-DQuFWNjA.js +1 -0
- package/dist/gateway/static/root/assets/{gateway-settings-D76thCuX.js → gateway-settings-D5w5aYXK.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-startup-retry-CbOUnKv5.js → gateway-startup-retry-DVol958v.js} +1 -1
- package/dist/gateway/static/root/assets/{home-page-D1Tyeuul.js → home-page-DPQwxBGy.js} +1 -1
- package/dist/gateway/static/root/assets/{image-generation-api-BmLpVntI.js → image-generation-api-TVgJfz9r.js} +1 -1
- package/dist/gateway/static/root/assets/{imports-page-CabovqRQ.js → imports-page-CnRWDtGz.js} +1 -1
- package/dist/gateway/static/root/assets/index-B-w6Rk9Z.css +1 -0
- package/dist/gateway/static/root/assets/{index-Bb32g7Ll.js → index-DU5Eb1V8.js} +20 -20
- package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-DvN-2bcS.js → keyboard-shortcuts-settings-CoYdyBRh.js} +1 -1
- package/dist/gateway/static/root/assets/{local-app-workbench-page-CSEzRWxs.js → local-app-workbench-page-hjFeYlIq.js} +1 -1
- package/dist/gateway/static/root/assets/{local-apps-page-C3Wy2zG2.js → local-apps-page-CeBhXeoX.js} +1 -1
- package/dist/gateway/static/root/assets/local-session-drafts-wiq_12oN.js +1 -0
- package/dist/gateway/static/root/assets/{locale-store-WMaCMm3_.js → locale-store-Y1aBayM_.js} +1 -1
- package/dist/gateway/static/root/assets/{logs-page-YojQFX9o.js → logs-page-CzpZDjkA.js} +1 -1
- package/dist/gateway/static/root/assets/{management-settings-CNMk0HRn.js → management-settings-Beu_R_Rc.js} +1 -1
- package/dist/gateway/static/root/assets/{markdown-view-Oe4rXk1N.js → markdown-view-BlzX7Ze5.js} +1 -1
- package/dist/gateway/static/root/assets/{media-plugins-Ds7HF3EM.js → media-plugins-C9ya5rUH.js} +1 -1
- package/dist/gateway/static/root/assets/messages-DPw2X06D.js +3 -0
- package/dist/gateway/static/root/assets/{note-detail-panel-D8vQ_INI.js → note-detail-panel-D8bpTGwP.js} +3 -3
- package/dist/gateway/static/root/assets/{notes-page-CIFcEPAd.js → notes-page-OmgXowUG.js} +1 -1
- package/dist/gateway/static/root/assets/{page-context-capture-button-YKiYT0q2.js → page-context-capture-button-BjjjuLkz.js} +1 -1
- package/dist/gateway/static/root/assets/{page-tabs-ZUC486EH.js → page-tabs-_DiuzxyD.js} +1 -1
- package/dist/gateway/static/root/assets/{preview-open-alternatives-Ca9tBmOg.js → preview-open-alternatives-BKvUadws.js} +1 -1
- package/dist/gateway/static/root/assets/{product-open-page-BuGb8QPn.js → product-open-page-DUPsiVP9.js} +1 -1
- package/dist/gateway/static/root/assets/{project-detail-page-C6Awj1Ql.js → project-detail-page-CWlCg2x5.js} +1 -1
- package/dist/gateway/static/root/assets/{projects-page-CmO8Gb9G.js → projects-page-NbVNo0tP.js} +1 -1
- package/dist/gateway/static/root/assets/{registry-api-DEePN1Rc.js → registry-api-DqDOrPQ0.js} +1 -1
- package/dist/gateway/static/root/assets/{remote-access-hub-BsqHroXR.js → remote-access-hub-CD8HrqGC.js} +1 -1
- package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-Cva9t35o.js → runtime-tools-settings-panel-C25xEYTK.js} +1 -1
- package/dist/gateway/static/root/assets/{scenes-page-3_61bQHN.js → scenes-page-DbWaemwR.js} +1 -1
- package/dist/gateway/static/root/assets/{schema-form-DWHFyKEB.js → schema-form-_3LQ4hyB.js} +1 -1
- package/dist/gateway/static/root/assets/{session-api-Bv-hCMKS.js → session-api-CTN4qwiN.js} +1 -1
- package/dist/gateway/static/root/assets/{session-manager-BcDptzCN.js → session-manager-DsH1DZI_.js} +5 -5
- package/dist/gateway/static/root/assets/{sessions-page-BaHue2bK.js → sessions-page-B7ZUdXlb.js} +1 -1
- package/dist/gateway/static/root/assets/settings-advanced-gate-CpKzZMft.js +1 -0
- package/dist/gateway/static/root/assets/{settings-form-section-BwdrtX6k.js → settings-form-section-DS80hVSY.js} +1 -1
- package/dist/gateway/static/root/assets/settings-page-DqCJHcdG.js +1 -0
- package/dist/gateway/static/root/assets/{setup-status-panel-nMWHz-ra.js → setup-status-panel-De-kC3yJ.js} +1 -1
- package/dist/gateway/static/root/assets/{share-preview-page-DH0KHlev.js → share-preview-page-T-0g_rwr.js} +1 -1
- package/dist/gateway/static/root/assets/{shares-settings-KK-VNbMw.js → shares-settings-Dz33T3du.js} +1 -1
- package/dist/gateway/static/root/assets/{skill-api-BbNk-3Ig.js → skill-api-Cx6GGpSY.js} +1 -1
- package/dist/gateway/static/root/assets/skill-reload-api-DyJ-Duem.js +1 -0
- package/dist/gateway/static/root/assets/{skills-page-BQya9ygw.js → skills-page-B2iyN-kP.js} +1 -1
- package/dist/gateway/static/root/assets/{system-settings-panel-akm5mc8b.js → system-settings-panel-By3SZQR_.js} +1 -1
- package/dist/gateway/static/root/assets/{task-detail-page-wLGUc7Nu.js → task-detail-page-4yHUTs4_.js} +1 -1
- package/dist/gateway/static/root/assets/{tunnel-api-vZ7P_KIQ.js → tunnel-api-BoH0LBkw.js} +1 -1
- package/dist/gateway/static/root/assets/{usage-page-BV1KJ0EY.js → usage-page-dKU5X9zT.js} +1 -1
- package/dist/gateway/static/root/assets/{use-autosave-DQdLcZfO.js → use-autosave-YKCwQvqT.js} +1 -1
- package/dist/gateway/static/root/assets/{user-model-page-DnLTTyOE.js → user-model-page-Uht32LPP.js} +1 -1
- package/dist/gateway/static/root/assets/{voice-api-key-field-CJ-FjNHr.js → voice-api-key-field-DiqHIA8l.js} +1 -1
- package/dist/gateway/static/root/assets/{voice-config-api-DbjjZkIg.js → voice-config-api-BM75K3mR.js} +1 -1
- package/dist/gateway/static/root/assets/{work-discovery-overlay-BA1AAqaW.js → work-discovery-overlay-BnfD6w0k.js} +1 -1
- package/dist/gateway/static/root/assets/{workflow-run-setup-panel-BhIOKmjW.js → workflow-run-setup-panel-DSy57rBr.js} +1 -1
- package/dist/gateway/static/root/assets/{workflows-page-aYoObmuS.js → workflows-page-Cq3vRUbc.js} +1 -1
- package/dist/gateway/static/root/index.html +15 -15
- package/dist/package.js +1 -1
- package/dist/packages/gateway-contract/src/session-input-command.js +2 -1
- package/dist/src/agent/agent-manager.js +25 -11
- package/dist/src/agent/bootstrap/bootstrap-files.d.ts +0 -4
- package/dist/src/agent/bootstrap/bootstrap-files.js +3 -9
- package/dist/src/agent/bootstrap/load-bootstrap-files.js +2 -4
- package/dist/src/agent/context/workspace-seed.d.ts +1 -7
- package/dist/src/agent/context/workspace-seed.js +4 -13
- package/dist/src/agent/context/workspace-templates/AGENTS.md +1 -1
- package/dist/src/agent/context/workspace.d.ts +1 -3
- package/dist/src/agent/context/workspace.js +3 -7
- package/dist/src/agent/mcp/oauth/mcp-oauth-store.js +1 -1
- package/dist/src/agent/messaging/no-reply.d.ts +1 -0
- package/dist/src/agent/messaging/no-reply.js +4 -0
- package/dist/src/agent/messaging/outbound-coordinator.d.ts +0 -4
- package/dist/src/agent/messaging/outbound-coordinator.js +2 -4
- package/dist/src/agent/prompt/sections/agent-identity.d.ts +3 -0
- package/dist/src/agent/prompt/sections/agent-identity.js +13 -0
- package/dist/src/agent/prompt/sections/messaging-runtime.d.ts +0 -5
- package/dist/src/agent/prompt/sections/messaging-runtime.js +2 -16
- package/dist/src/agent/prompt/sections/project-context.d.ts +0 -3
- package/dist/src/agent/prompt/sections/project-context.js +2 -9
- package/dist/src/agent/prompt/sections/tooling.js +1 -1
- package/dist/src/agent/prompt/service-prompt-builder.d.ts +2 -0
- package/dist/src/agent/prompt/service-prompt-builder.js +3 -8
- package/dist/src/agent/prompt/subagent-context.js +1 -1
- package/dist/src/agent/prompt/system-prompt-params.d.ts +0 -4
- package/dist/src/agent/prompt/system-prompt-params.js +0 -2
- package/dist/src/agent/prompt/system-prompt.d.ts +2 -2
- package/dist/src/agent/prompt/system-prompt.js +8 -9
- package/dist/src/agent/service.js +0 -1
- package/dist/src/agent/skills/hub-lock.js +1 -1
- package/dist/src/agent/skills/index.js +1 -1
- package/dist/src/agent/skills/managed-store.js +1 -1
- package/dist/src/agent/skills/skill-manage-ops.js +1 -1
- package/dist/src/agent/starter-agents.d.ts +3 -4
- package/dist/src/agent/starter-agents.js +104 -90
- package/dist/src/agent/tool-manuals/xopc-use.d.ts +1 -1
- package/dist/src/agent/tool-manuals/xopc-use.js +7 -4
- package/dist/src/agent/tools/factory.d.ts +4 -2
- package/dist/src/agent/tools/factory.js +6 -3
- package/dist/src/agent/workflow/workflow-child-tools.js +2 -1
- package/dist/src/agent-catalog/migrations/identity-markdown-cutover.d.ts +5 -0
- package/dist/src/agent-catalog/migrations/identity-markdown-cutover.js +94 -0
- package/dist/src/agent-catalog/repository.js +7 -1
- package/dist/src/agent-catalog/service.js +2 -2
- package/dist/src/agent-config/resolver.js +2 -0
- package/dist/src/agent-config/schema.d.ts +21 -0
- package/dist/src/agent-config/schema.js +9 -4
- package/dist/src/auth/credentials.js +1 -1
- package/dist/src/auth/profiles/store.js +1 -1
- package/dist/src/auth/sync-provider-auth.js +1 -1
- package/dist/src/automations/events/event-repository.js +2 -1
- package/dist/src/bootstrap/application-state.js +2 -0
- package/dist/src/browser/providers/browser-ext-install.js +1 -1
- package/dist/src/chat-commands/agent-edit.js +4 -7
- package/dist/src/chat-commands/builtins/config.js +1 -1
- package/dist/src/cli/commands/auth.js +1 -1
- package/dist/src/cli/commands/doctor/checks/workspace-status.js +0 -1
- package/dist/src/cli/commands/gateway/lifecycle.js +1 -1
- package/dist/src/cli/commands/init.js +0 -33
- package/dist/src/cli/commands/onboard/model.js +2 -2
- package/dist/src/cli/commands/providers.js +1 -1
- package/dist/src/cli/templates.d.ts +1 -1
- package/dist/src/cli/templates.js +1 -23
- package/dist/src/config/index.js +3 -3
- package/dist/src/config/loader.js +1 -1
- package/dist/src/config/models-json.js +1 -1
- package/dist/src/config/paths.d.ts +0 -2
- package/dist/src/config/paths.js +1 -3
- package/dist/src/config/reload.d.ts +0 -1
- package/dist/src/config/reload.js +0 -4
- package/dist/src/config/rules.js +0 -5
- package/dist/src/config/schema.d.ts +0 -45
- package/dist/src/config/schema.js +2 -23
- package/dist/src/connectors/connection-recovery-service.js +5 -0
- package/dist/src/extensions/lockfile.js +1 -1
- package/dist/src/gateway/agents-admin.d.ts +2 -9
- package/dist/src/gateway/agents-admin.js +8 -32
- package/dist/src/gateway/file-path-classifier.js +1 -1
- package/dist/src/gateway/hono/lib/config-payload.js +1 -1
- package/dist/src/gateway/hono/routes/agents.js +8 -1
- package/dist/src/gateway/hono/routes/connectors.js +1 -1
- package/dist/src/gateway/hono/routes/device-push.js +1 -1
- package/dist/src/gateway/hono/routes/models.js +1 -1
- package/dist/src/gateway/host.d.ts +0 -2
- package/dist/src/gateway/host.js +2 -5
- package/dist/src/gateway/service.js +11 -11
- package/dist/src/home-intelligence/host.js +2 -2
- package/dist/src/infra/update-restart.js +1 -1
- package/dist/src/notifications/device-store.d.ts +0 -1
- package/dist/src/notifications/device-store.js +2 -7
- package/dist/src/notifications/service.d.ts +0 -1
- package/dist/src/notifications/service.js +13 -82
- package/dist/src/session/execution-detail.js +16 -0
- package/dist/src/storage/sqlite/notes-repository.js +19 -4
- package/dist/src/tui/backends/embedded-backend.js +1 -1
- package/dist/src/tui/tui-commands.js +1 -1
- package/dist/src/tui/tui-startup-resources.js +1 -1
- package/dist/src/tui/tui.js +1 -1
- package/dist/src/voice/audio/normalize.js +34 -1
- package/dist/src/voice/realtime/persona-context.d.ts +2 -2
- package/dist/src/voice/realtime/persona-context.js +19 -33
- package/package.json +11 -12
- package/dist/gateway/static/root/assets/agents-CuFzMN58.js +0 -70
- package/dist/gateway/static/root/assets/gateway-realtime-store-KyhksZSM.js +0 -1
- package/dist/gateway/static/root/assets/index-CPi50n0l.css +0 -1
- package/dist/gateway/static/root/assets/local-session-drafts-CxXjQ5Du.js +0 -1
- package/dist/gateway/static/root/assets/messages-sXePe3LQ.js +0 -3
- package/dist/gateway/static/root/assets/settings-advanced-gate-C4y4c2M7.js +0 -1
- package/dist/gateway/static/root/assets/settings-page-B6YZFEye.js +0 -1
- package/dist/gateway/static/root/assets/skill-reload-api-DUOG2Ig1.js +0 -1
- package/dist/src/agent/bootstrap/filter-bootstrap-files.d.ts +0 -3
- package/dist/src/agent/bootstrap/filter-bootstrap-files.js +0 -18
- package/dist/src/agent/context/workspace-templates/HEARTBEAT.md +0 -26
- package/dist/src/agent/context/workspace-templates/IDENTITY.md +0 -30
- package/dist/src/agent/service/parse-outbound-session-key.d.ts +0 -8
- package/dist/src/agent/service/parse-outbound-session-key.js +0 -44
- package/dist/src/heartbeat/active-hours.d.ts +0 -11
- package/dist/src/heartbeat/active-hours.js +0 -40
- package/dist/src/heartbeat/content-check.d.ts +0 -4
- package/dist/src/heartbeat/content-check.js +0 -17
- package/dist/src/heartbeat/event-prompt.d.ts +0 -4
- package/dist/src/heartbeat/event-prompt.js +0 -11
- package/dist/src/heartbeat/index.d.ts +0 -5
- package/dist/src/heartbeat/index.js +0 -6
- package/dist/src/heartbeat/tokens.d.ts +0 -15
- package/dist/src/heartbeat/tokens.js +0 -25
- package/dist/src/heartbeat/wake.d.ts +0 -13
- 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({
|
|
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
|
|
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
|
|
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:
|
|
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
|
|
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
|
|
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.
|
|
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", "
|
|
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
|
}
|
package/dist/src/config/index.js
CHANGED
|
@@ -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,
|
|
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,
|
|
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
|
package/dist/src/config/paths.js
CHANGED
|
@@ -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;
|
package/dist/src/config/rules.js
CHANGED
|
@@ -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",
|