@jingyi0605/codingns 0.4.0 → 0.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/codingns.mjs +425 -1
- package/dist/public/assets/AdaptiveButlerPage-B153lk5H.css +1 -0
- package/dist/public/assets/AdaptiveButlerPage-SffCV4Vb.js +3 -0
- package/dist/public/assets/App-DUAg5urj.css +1 -0
- package/dist/public/assets/App-WOLwMld_.js +30 -0
- package/dist/public/assets/BootstrapPage--zExdgfM.js +1 -0
- package/dist/public/assets/ConversationPage-D9pzRmOg.js +2 -0
- package/dist/public/assets/DesktopDetachPreviewPage-DvI9CIKi.js +1 -0
- package/dist/public/assets/DesktopWindowPage-D8FpOSLE.js +2 -0
- package/dist/public/assets/FileContextPanel-C8T7oqRN.js +1 -0
- package/dist/public/assets/GitSidebar-Bze7DNnc.js +6 -0
- package/dist/public/assets/MobileCreateSessionSheet-CXSKMnYn.js +1 -0
- package/dist/public/assets/MobileSheet-Gzc14EpR.js +1 -0
- package/dist/public/assets/MobileTopHeaderFrame-BWorAJ1C.js +1 -0
- package/dist/public/assets/MobileWorkspaceSwitcherHeader-DOr4pTUq.js +1 -0
- package/dist/public/assets/ServerSettingsModal-BYB0GvTl.js +1 -0
- package/dist/public/assets/SessionIndexPage-CR3IARXX.js +1 -0
- package/dist/public/assets/SettingsPage-B_BQtnwE.js +1 -0
- package/dist/public/assets/TerminalManagerPanel-PQ-EM64j.js +1 -0
- package/dist/public/assets/{TerminalPage-6jHZV9Mh.js → TerminalPage-CvnHXBhw.js} +19 -19
- package/dist/public/assets/TerminalRuntimeFallbackModal-D7Aq186N.js +1 -0
- package/dist/public/assets/ToolFilesPage-Qzkc6K2I.js +1 -0
- package/dist/public/assets/ToolGitPage-BdNDN-cV.js +1 -0
- package/dist/public/assets/ToolProcessesPage-EXJ9DHWI.js +1 -0
- package/dist/public/assets/ToolsHomePage-CjF3CWzR.js +1 -0
- package/dist/public/assets/WorkbenchLandingPage-DZPk4SmX.js +1 -0
- package/dist/public/assets/WorkbenchLayout-rwQib5In.js +3 -0
- package/dist/public/assets/WorkbenchModal-B09hC9b5.js +1 -0
- package/dist/public/assets/WorkbenchShellRoute-Cerk5uK7.js +1 -0
- package/dist/public/assets/WorkbenchShellRoute-DsW4mBTX.css +1 -0
- package/dist/public/assets/WorkspaceDebugDetailPage-Bcq8s-Ma.js +1 -0
- package/dist/public/assets/WorkspaceDetailPage-DNAa8pKr.js +1 -0
- package/dist/public/assets/WorkspaceHomePage-BoiLuACV.js +1 -0
- package/dist/public/assets/butler-records-events-DgWCG364.js +1 -0
- package/dist/public/assets/client-runtime-manager-CRQ-F5d2.js +1 -0
- package/dist/public/assets/default-session-permission-mode-D0wZ9Jek.js +1 -0
- package/dist/public/assets/event-DvH9tcej.js +1 -0
- package/dist/public/assets/file-tree-icon-Dp_xhVfD.js +31 -0
- package/dist/public/assets/index-C2G8Gmf1.js +42 -0
- package/dist/public/assets/index-CpPTUeA3.css +1 -0
- package/dist/public/assets/preferences-service-gOt2ZjKZ.js +1 -0
- package/dist/public/assets/session-runtime-machine-Dq3pW-UF.js +17 -0
- package/dist/public/assets/styles-BWPBZvze.css +1 -0
- package/dist/public/assets/styles-CSUx5LGe.js +1 -0
- package/dist/public/assets/terminal-runtime-meta-BMT-rSEe.js +1 -0
- package/dist/public/assets/useRegisteredDebugTemplates-zMcEOGca.js +1 -0
- package/dist/public/assets/window-BWqRixxq.js +1 -0
- package/dist/public/index.html +2 -2
- package/dist/server/middlewares/auth-guard.d.ts +4 -0
- package/dist/server/middlewares/auth-guard.js +42 -4
- package/dist/server/middlewares/auth-guard.js.map +1 -1
- package/dist/server/modules/assistant-capability/assistant-capability-controller.d.ts +62 -1
- package/dist/server/modules/assistant-capability/assistant-capability-controller.js +58 -0
- package/dist/server/modules/assistant-capability/assistant-capability-controller.js.map +1 -1
- package/dist/server/modules/assistant-capability/assistant-capability-service.d.ts +66 -3
- package/dist/server/modules/assistant-capability/assistant-capability-service.js +173 -1
- package/dist/server/modules/assistant-capability/assistant-capability-service.js.map +1 -1
- package/dist/server/modules/auth/auth-controller.d.ts +11 -1
- package/dist/server/modules/auth/auth-controller.js +61 -2
- package/dist/server/modules/auth/auth-controller.js.map +1 -1
- package/dist/server/modules/auth/auth-device-display-name.d.ts +10 -0
- package/dist/server/modules/auth/auth-device-display-name.js +190 -0
- package/dist/server/modules/auth/auth-device-display-name.js.map +1 -0
- package/dist/server/modules/auth/auth-service.d.ts +80 -5
- package/dist/server/modules/auth/auth-service.js +333 -23
- package/dist/server/modules/auth/auth-service.js.map +1 -1
- package/dist/server/modules/butler/assistant-automation-service.d.ts +2 -0
- package/dist/server/modules/butler/assistant-automation-service.js +46 -0
- package/dist/server/modules/butler/assistant-automation-service.js.map +1 -1
- package/dist/server/modules/butler/assistant-sandbox-cleanup-scheduler.d.ts +32 -0
- package/dist/server/modules/butler/assistant-sandbox-cleanup-scheduler.js +93 -0
- package/dist/server/modules/butler/assistant-sandbox-cleanup-scheduler.js.map +1 -0
- package/dist/server/modules/butler/assistant-sandbox-service.d.ts +16 -2
- package/dist/server/modules/butler/assistant-sandbox-service.js +137 -4
- package/dist/server/modules/butler/assistant-sandbox-service.js.map +1 -1
- package/dist/server/modules/butler/butler-auth-service.js +7 -2
- package/dist/server/modules/butler/butler-auth-service.js.map +1 -1
- package/dist/server/modules/butler/butler-control-session-service.d.ts +4 -1
- package/dist/server/modules/butler/butler-control-session-service.js +20 -1
- package/dist/server/modules/butler/butler-control-session-service.js.map +1 -1
- package/dist/server/modules/butler/butler-follow-up-evaluation-instruction-adapter.d.ts +2 -1
- package/dist/server/modules/butler/butler-follow-up-evaluation-instruction-adapter.js +27 -25
- package/dist/server/modules/butler/butler-follow-up-evaluation-instruction-adapter.js.map +1 -1
- package/dist/server/modules/butler/butler-follow-up-service.d.ts +32 -4
- package/dist/server/modules/butler/butler-follow-up-service.js +436 -331
- package/dist/server/modules/butler/butler-follow-up-service.js.map +1 -1
- package/dist/server/modules/butler/butler-inbox-analysis-service.d.ts +1 -1
- package/dist/server/modules/butler/butler-inbox-analysis-service.js.map +1 -1
- package/dist/server/modules/butler/butler-inbox-service.js +1 -0
- package/dist/server/modules/butler/butler-inbox-service.js.map +1 -1
- package/dist/server/modules/butler/butler-session-service.d.ts +3 -1
- package/dist/server/modules/butler/butler-session-service.js +15 -1
- package/dist/server/modules/butler/butler-session-service.js.map +1 -1
- package/dist/server/modules/butler/butler-workspace-context.d.ts +1 -1
- package/dist/server/modules/butler/butler-workspace-context.js +54 -28
- package/dist/server/modules/butler/butler-workspace-context.js.map +1 -1
- package/dist/server/modules/client/client-controller.js +1 -1
- package/dist/server/modules/client/client-controller.js.map +1 -1
- package/dist/server/modules/client/client-service.d.ts +16 -2
- package/dist/server/modules/client/client-service.js +21 -3
- package/dist/server/modules/client/client-service.js.map +1 -1
- package/dist/server/modules/provider/provider-controller.d.ts +1 -1
- package/dist/server/modules/provider/provider-controller.js.map +1 -1
- package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-identity-service.d.ts +10 -0
- package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-identity-service.js +48 -0
- package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-identity-service.js.map +1 -0
- package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-packets.d.ts +48 -0
- package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-packets.js +11 -0
- package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-packets.js.map +1 -0
- package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-protocol.d.ts +74 -0
- package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-protocol.js +302 -0
- package/dist/server/modules/relay-tunnel/crypto/relay-tunnel-protocol.js.map +1 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-controller.d.ts +33 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-controller.js +57 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-controller.js.map +1 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-edge-proof.d.ts +9 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-edge-proof.js +25 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-edge-proof.js.map +1 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.d.ts +18 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.js +230 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.js.map +1 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-runtime-adapter.d.ts +41 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-runtime-adapter.js +443 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-runtime-adapter.js.map +1 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-service.d.ts +112 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-service.js +966 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-service.js.map +1 -0
- package/dist/server/modules/sessions/codex-app-server-helper-client.d.ts +2 -1
- package/dist/server/modules/sessions/codex-app-server-helper-client.js +78 -0
- package/dist/server/modules/sessions/codex-app-server-helper-client.js.map +1 -1
- package/dist/server/modules/sessions/codex-app-server-helper-process.js +84 -2
- package/dist/server/modules/sessions/codex-app-server-helper-process.js.map +1 -1
- package/dist/server/modules/sessions/provider-session-delete-cli.d.ts +15 -0
- package/dist/server/modules/sessions/provider-session-delete-cli.js +148 -0
- package/dist/server/modules/sessions/provider-session-delete-cli.js.map +1 -0
- package/dist/server/modules/sessions/session-controller.d.ts +4 -1
- package/dist/server/modules/sessions/session-controller.js +4 -0
- package/dist/server/modules/sessions/session-controller.js.map +1 -1
- package/dist/server/modules/sessions/session-history-service.d.ts +17 -0
- package/dist/server/modules/sessions/session-history-service.js +150 -1
- package/dist/server/modules/sessions/session-history-service.js.map +1 -1
- package/dist/server/modules/sessions/session-live-runtime-router-service.d.ts +25 -0
- package/dist/server/modules/sessions/session-live-runtime-router-service.js +42 -0
- package/dist/server/modules/sessions/session-live-runtime-router-service.js.map +1 -0
- package/dist/server/modules/sessions/session-live-runtime-service.js +34 -18
- package/dist/server/modules/sessions/session-live-runtime-service.js.map +1 -1
- package/dist/server/modules/sessions/session-message-attachment-service.d.ts +1 -0
- package/dist/server/modules/sessions/session-message-attachment-service.js +22 -0
- package/dist/server/modules/sessions/session-message-attachment-service.js.map +1 -1
- package/dist/server/modules/sessions/session-permission-request-service.d.ts +1 -0
- package/dist/server/modules/sessions/session-permission-request-service.js +200 -5
- package/dist/server/modules/sessions/session-permission-request-service.js.map +1 -1
- package/dist/server/modules/sessions/session-provider-error-mapper.js +32 -0
- package/dist/server/modules/sessions/session-provider-error-mapper.js.map +1 -1
- package/dist/server/modules/sessions/session-provider-usage-guard-service.d.ts +37 -0
- package/dist/server/modules/sessions/session-provider-usage-guard-service.js +179 -0
- package/dist/server/modules/sessions/session-provider-usage-guard-service.js.map +1 -0
- package/dist/server/modules/sessions/session-provider-usage-limit.d.ts +17 -0
- package/dist/server/modules/sessions/session-provider-usage-limit.js +465 -0
- package/dist/server/modules/sessions/session-provider-usage-limit.js.map +1 -0
- package/dist/server/modules/skills/assistant-runtime-skill-catalog.d.ts +8 -0
- package/dist/server/modules/skills/assistant-runtime-skill-catalog.js +26 -0
- package/dist/server/modules/skills/assistant-runtime-skill-catalog.js.map +1 -0
- package/dist/server/modules/skills/assistant-runtime-skill-cleanup.d.ts +9 -0
- package/dist/server/modules/skills/assistant-runtime-skill-cleanup.js +55 -0
- package/dist/server/modules/skills/assistant-runtime-skill-cleanup.js.map +1 -0
- package/dist/server/modules/skills/builtin-skill-service.js +1 -6
- package/dist/server/modules/skills/builtin-skill-service.js.map +1 -1
- package/dist/server/modules/skills/skill-controller.d.ts +2 -2
- package/dist/server/modules/skills/skill-controller.js +9 -1
- package/dist/server/modules/skills/skill-controller.js.map +1 -1
- package/dist/server/modules/skills/skill-manager-service.d.ts +26 -1
- package/dist/server/modules/skills/skill-manager-service.js +346 -90
- package/dist/server/modules/skills/skill-manager-service.js.map +1 -1
- package/dist/server/modules/skills/skill-name-policy.d.ts +2 -0
- package/dist/server/modules/skills/skill-name-policy.js +10 -0
- package/dist/server/modules/skills/skill-name-policy.js.map +1 -0
- package/dist/server/modules/tailscale/tailscale-service.d.ts +2 -0
- package/dist/server/modules/tailscale/tailscale-service.js +21 -8
- package/dist/server/modules/tailscale/tailscale-service.js.map +1 -1
- package/dist/server/modules/tasks/task-types.d.ts +3 -0
- package/dist/server/modules/tasks/task-types.js +3 -0
- package/dist/server/modules/tasks/task-types.js.map +1 -1
- package/dist/server/modules/terminal/template-reverse-proxy-service.js +71 -3
- package/dist/server/modules/terminal/template-reverse-proxy-service.js.map +1 -1
- package/dist/server/modules/workbench/snapshot-revision.d.ts +4 -0
- package/dist/server/modules/workbench/snapshot-revision.js +13 -0
- package/dist/server/modules/workbench/snapshot-revision.js.map +1 -0
- package/dist/server/modules/workbench/workbench-service.d.ts +1 -0
- package/dist/server/modules/workbench/workbench-service.js +3 -2
- package/dist/server/modules/workbench/workbench-service.js.map +1 -1
- package/dist/server/modules/workbench/workspace-panel-snapshot-service.d.ts +6 -1
- package/dist/server/modules/workbench/workspace-panel-snapshot-service.js +10 -8
- package/dist/server/modules/workbench/workspace-panel-snapshot-service.js.map +1 -1
- package/dist/server/routes/assistant.js +30 -0
- package/dist/server/routes/assistant.js.map +1 -1
- package/dist/server/routes/auth.js +4 -0
- package/dist/server/routes/auth.js.map +1 -1
- package/dist/server/routes/sessions.js +1 -0
- package/dist/server/routes/sessions.js.map +1 -1
- package/dist/server/routes/system.d.ts +2 -1
- package/dist/server/routes/system.js +13 -1
- package/dist/server/routes/system.js.map +1 -1
- package/dist/server/server/create-server.d.ts +10 -0
- package/dist/server/server/create-server.js +83 -13
- package/dist/server/server/create-server.js.map +1 -1
- package/dist/server/shared/utils/tokens.d.ts +3 -1
- package/dist/server/shared/utils/tokens.js +9 -2
- package/dist/server/shared/utils/tokens.js.map +1 -1
- package/dist/server/storage/repositories/assistant-automation-task-repository.d.ts +2 -0
- package/dist/server/storage/repositories/assistant-automation-task-repository.js +8 -2
- package/dist/server/storage/repositories/assistant-automation-task-repository.js.map +1 -1
- package/dist/server/storage/repositories/assistant-sandbox-workspace-repository.d.ts +1 -0
- package/dist/server/storage/repositories/assistant-sandbox-workspace-repository.js +27 -0
- package/dist/server/storage/repositories/assistant-sandbox-workspace-repository.js.map +1 -1
- package/dist/server/storage/repositories/auth-device-repository.d.ts +22 -0
- package/dist/server/storage/repositories/auth-device-repository.js +97 -0
- package/dist/server/storage/repositories/auth-device-repository.js.map +1 -0
- package/dist/server/storage/repositories/auth-device-session-repository.d.ts +17 -0
- package/dist/server/storage/repositories/auth-device-session-repository.js +82 -0
- package/dist/server/storage/repositories/auth-device-session-repository.js.map +1 -0
- package/dist/server/storage/repositories/auth-login-event-repository.d.ts +9 -0
- package/dist/server/storage/repositories/auth-login-event-repository.js +53 -0
- package/dist/server/storage/repositories/auth-login-event-repository.js.map +1 -0
- package/dist/server/storage/repositories/auth-token-repository.d.ts +4 -0
- package/dist/server/storage/repositories/auth-token-repository.js +58 -5
- package/dist/server/storage/repositories/auth-token-repository.js.map +1 -1
- package/dist/server/storage/repositories/butler-follow-up-task-repository.js +21 -3
- package/dist/server/storage/repositories/butler-follow-up-task-repository.js.map +1 -1
- package/dist/server/storage/repositories/instance-relay-tunnel-identity-repository.d.ts +8 -0
- package/dist/server/storage/repositories/instance-relay-tunnel-identity-repository.js +52 -0
- package/dist/server/storage/repositories/instance-relay-tunnel-identity-repository.js.map +1 -0
- package/dist/server/storage/repositories/instance-relay-tunnel-repository.d.ts +10 -0
- package/dist/server/storage/repositories/instance-relay-tunnel-repository.js +153 -0
- package/dist/server/storage/repositories/instance-relay-tunnel-repository.js.map +1 -0
- package/dist/server/storage/repositories/instance-tailscale-repository.js +6 -3
- package/dist/server/storage/repositories/instance-tailscale-repository.js.map +1 -1
- package/dist/server/storage/repositories/managed-skill-repository.d.ts +2 -1
- package/dist/server/storage/repositories/managed-skill-repository.js +14 -4
- package/dist/server/storage/repositories/managed-skill-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-message-attachment-repository.d.ts +2 -0
- package/dist/server/storage/repositories/session-message-attachment-repository.js +24 -0
- package/dist/server/storage/repositories/session-message-attachment-repository.js.map +1 -1
- package/dist/server/storage/sqlite/client.js +297 -2
- package/dist/server/storage/sqlite/client.js.map +1 -1
- package/dist/server/storage/sqlite/schema.sql +122 -4
- package/dist/server/types/domain.d.ts +91 -1
- package/dist/server/ws/workbench-ws-hub.js +225 -99
- package/dist/server/ws/workbench-ws-hub.js.map +1 -1
- package/dist/server/ws/ws-auth-guard.js +1 -4
- package/dist/server/ws/ws-auth-guard.js.map +1 -1
- package/dist/server/ws/ws-server.d.ts +1 -1
- package/dist/server/ws/ws-server.js.map +1 -1
- package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.d.ts +1 -0
- package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.js +80 -0
- package/node_modules/@codingns/session-sync-core/dist/codex-resume-history.js.map +1 -0
- package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.d.ts +1 -0
- package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.js +11 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/claude-code.js.map +1 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/codex.d.ts +11 -0
- package/node_modules/@codingns/session-sync-core/dist/providers/codex.js +132 -21
- package/node_modules/@codingns/session-sync-core/dist/providers/codex.js.map +1 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/gemini.d.ts +2 -0
- package/node_modules/@codingns/session-sync-core/dist/providers/gemini.js +53 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/gemini.js.map +1 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/kimi.d.ts +1 -0
- package/node_modules/@codingns/session-sync-core/dist/providers/kimi.js +10 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/kimi.js.map +1 -1
- package/node_modules/@codingns/session-sync-core/dist/providers/opencode.d.ts +1 -0
- package/node_modules/@codingns/session-sync-core/dist/providers/opencode.js +30 -0
- package/node_modules/@codingns/session-sync-core/dist/providers/opencode.js.map +1 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.d.ts +5 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js +145 -58
- package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js.map +1 -1
- package/node_modules/@codingns/session-sync-core/dist/services.d.ts +1 -0
- package/node_modules/@codingns/session-sync-core/dist/services.js +7 -0
- package/node_modules/@codingns/session-sync-core/dist/services.js.map +1 -1
- package/node_modules/@codingns/session-sync-core/dist/types.d.ts +2 -0
- package/package.json +1 -1
- package/scripts/postinstall.mjs +0 -33
- package/dist/public/assets/index-CSVhg7I8.js +0 -123
- package/dist/public/assets/index-Ce1VX19m.css +0 -1
|
@@ -2,6 +2,7 @@ import { listTerminalShellOptions } from "../terminal/terminal-shell.js";
|
|
|
2
2
|
import { isTerminalDebugEnabled, logTerminalDebug, terminalDebugNowMs } from "../../shared/utils/terminal-debug-log.js";
|
|
3
3
|
import { createTaskManager } from "../tasks/task-manager.js";
|
|
4
4
|
import { HOST_TASK_TYPES } from "../tasks/task-types.js";
|
|
5
|
+
import { withSnapshotRevision } from "./snapshot-revision.js";
|
|
5
6
|
const FILE_TREE_CACHE_MAX_AGE_MS = 5_000;
|
|
6
7
|
const GIT_SNAPSHOT_CACHE_MAX_AGE_MS = 15_000;
|
|
7
8
|
const TERMINAL_MANAGER_CACHE_MAX_AGE_MS = 4_000;
|
|
@@ -44,11 +45,11 @@ export class WorkspacePanelSnapshotService {
|
|
|
44
45
|
return inflight;
|
|
45
46
|
}
|
|
46
47
|
const task = Promise.resolve().then(() => {
|
|
47
|
-
const snapshot = {
|
|
48
|
+
const snapshot = withSnapshotRevision({
|
|
48
49
|
workspaceId,
|
|
49
50
|
path: normalizedPath,
|
|
50
51
|
items: this.fileTreeService.list(workspaceId, normalizedPath || undefined, options?.limit)
|
|
51
|
-
};
|
|
52
|
+
});
|
|
52
53
|
this.fileTreeCache.set(cacheKey, {
|
|
53
54
|
snapshot,
|
|
54
55
|
cachedAt: Date.now()
|
|
@@ -105,14 +106,14 @@ export class WorkspacePanelSnapshotService {
|
|
|
105
106
|
this.gitReadService.getHistory(workspaceId, null, GIT_HISTORY_LIMIT, controller.signal),
|
|
106
107
|
this.gitReadService.getBranches(workspaceId, controller.signal)
|
|
107
108
|
]);
|
|
108
|
-
const snapshot = {
|
|
109
|
+
const snapshot = withSnapshotRevision({
|
|
109
110
|
workspaceId,
|
|
110
111
|
status,
|
|
111
112
|
history: historyPage.items,
|
|
112
113
|
historyTotalCount: historyPage.totalCount,
|
|
113
114
|
historyNextCursor: historyPage.nextCursor,
|
|
114
115
|
branches
|
|
115
|
-
};
|
|
116
|
+
});
|
|
116
117
|
this.gitSnapshotCache.set(workspaceId, {
|
|
117
118
|
snapshot,
|
|
118
119
|
cachedAt: Date.now()
|
|
@@ -163,11 +164,12 @@ export class WorkspacePanelSnapshotService {
|
|
|
163
164
|
}
|
|
164
165
|
const task = this.workspaceService.getManagementSummary(workspaceId)
|
|
165
166
|
.then((snapshot) => {
|
|
167
|
+
const nextSnapshot = withSnapshotRevision(snapshot);
|
|
166
168
|
this.workspaceManagementCache.set(workspaceId, {
|
|
167
|
-
snapshot,
|
|
169
|
+
snapshot: nextSnapshot,
|
|
168
170
|
cachedAt: Date.now()
|
|
169
171
|
});
|
|
170
|
-
return
|
|
172
|
+
return nextSnapshot;
|
|
171
173
|
})
|
|
172
174
|
.finally(() => {
|
|
173
175
|
this.workspaceManagementInflight.delete(workspaceId);
|
|
@@ -258,13 +260,13 @@ export class WorkspacePanelSnapshotService {
|
|
|
258
260
|
const shellOptions = listTerminalShellOptions();
|
|
259
261
|
const shellOptionsMs = terminalDebugNowMs() - shellOptionsStartedAtMs;
|
|
260
262
|
const assembleStartedAtMs = terminalDebugNowMs();
|
|
261
|
-
const snapshot = {
|
|
263
|
+
const snapshot = withSnapshotRevision({
|
|
262
264
|
workspaceId,
|
|
263
265
|
terminals,
|
|
264
266
|
templates,
|
|
265
267
|
templateStatuses,
|
|
266
268
|
shellOptions
|
|
267
|
-
};
|
|
269
|
+
});
|
|
268
270
|
const assembleMs = terminalDebugNowMs() - assembleStartedAtMs;
|
|
269
271
|
this.terminalManagerCache.set(workspaceId, {
|
|
270
272
|
snapshot,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-panel-snapshot-service.js","sourceRoot":"","sources":["../../../../src/modules/workbench/workspace-panel-snapshot-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workspace-panel-snapshot-service.js","sourceRoot":"","sources":["../../../../src/modules/workbench/workspace-panel-snapshot-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,17 @@
|
|
|
1
1
|
export async function registerAssistantCapabilityRoutes(app, assistantCapabilityController) {
|
|
2
|
+
app.addHook("preSerialization", async (request, _reply, payload) => {
|
|
3
|
+
const routePath = request.url.split("?")[0] ?? request.url;
|
|
4
|
+
if (!routePath.startsWith("/api/assistant/")) {
|
|
5
|
+
return payload;
|
|
6
|
+
}
|
|
7
|
+
if (!request.auth?.callerKind || !isAssistantCapabilityReceipt(payload)) {
|
|
8
|
+
return payload;
|
|
9
|
+
}
|
|
10
|
+
return {
|
|
11
|
+
...payload,
|
|
12
|
+
callerKind: request.auth.callerKind
|
|
13
|
+
};
|
|
14
|
+
});
|
|
2
15
|
app.get("/api/assistant/capabilities", assistantCapabilityController.listCapabilities);
|
|
3
16
|
app.get("/api/assistant/projects", assistantCapabilityController.listProjects);
|
|
4
17
|
app.get("/api/assistant/projects/:projectId", assistantCapabilityController.getProject);
|
|
@@ -6,6 +19,7 @@ export async function registerAssistantCapabilityRoutes(app, assistantCapability
|
|
|
6
19
|
app.post("/api/assistant/projects/:projectId/sessions", assistantCapabilityController.startProjectSession);
|
|
7
20
|
app.post("/api/assistant/sessions/start", assistantCapabilityController.startSession);
|
|
8
21
|
app.get("/api/assistant/sessions/:sessionId", assistantCapabilityController.getSession);
|
|
22
|
+
app.delete("/api/assistant/sessions/:sessionId", assistantCapabilityController.deleteSession);
|
|
9
23
|
app.get("/api/assistant/sessions/:sessionId/messages", assistantCapabilityController.listSessionMessages);
|
|
10
24
|
app.get("/api/assistant/sessions/:sessionId/runtime", assistantCapabilityController.getSessionRuntime);
|
|
11
25
|
app.post("/api/assistant/sessions/:sessionId/messages", assistantCapabilityController.sendSessionMessage);
|
|
@@ -27,6 +41,13 @@ export async function registerAssistantCapabilityRoutes(app, assistantCapability
|
|
|
27
41
|
app.get("/api/assistant/timers/:timerId", assistantCapabilityController.getTimer);
|
|
28
42
|
app.post("/api/assistant/timers", assistantCapabilityController.createTimer);
|
|
29
43
|
app.post("/api/assistant/timers/:timerId/cancel", assistantCapabilityController.cancelTimer);
|
|
44
|
+
app.get("/api/assistant/follow-ups", assistantCapabilityController.listFollowUps);
|
|
45
|
+
app.get("/api/assistant/follow-ups/:taskId", assistantCapabilityController.getFollowUp);
|
|
46
|
+
app.post("/api/assistant/follow-ups", assistantCapabilityController.createFollowUp);
|
|
47
|
+
app.post("/api/assistant/follow-ups/:taskId/continue", assistantCapabilityController.continueFollowUp);
|
|
48
|
+
app.post("/api/assistant/follow-ups/:taskId/waiting-user", assistantCapabilityController.markFollowUpWaitingUser);
|
|
49
|
+
app.post("/api/assistant/follow-ups/:taskId/complete", assistantCapabilityController.completeFollowUp);
|
|
50
|
+
app.post("/api/assistant/follow-ups/:taskId/fail", assistantCapabilityController.failFollowUp);
|
|
30
51
|
app.get("/api/assistant/terminals", assistantCapabilityController.listTerminals);
|
|
31
52
|
app.get("/api/assistant/terminals/:terminalId/history", assistantCapabilityController.readTerminalHistory);
|
|
32
53
|
app.post("/api/assistant/terminals/:terminalId/input", assistantCapabilityController.sendTerminalInput);
|
|
@@ -55,4 +76,13 @@ export async function registerAssistantCapabilityRoutes(app, assistantCapability
|
|
|
55
76
|
app.get("/api/assistant/debug-targets/:targetId/runtimes", assistantCapabilityController.listDebugRuntimes);
|
|
56
77
|
app.get("/api/assistant/debug-runtimes/:runtimeId", assistantCapabilityController.getDebugRuntime);
|
|
57
78
|
}
|
|
79
|
+
function isAssistantCapabilityReceipt(payload) {
|
|
80
|
+
if (typeof payload !== "object" || payload === null) {
|
|
81
|
+
return false;
|
|
82
|
+
}
|
|
83
|
+
const candidate = payload;
|
|
84
|
+
return (candidate.ok === true
|
|
85
|
+
&& typeof candidate.capability === "string"
|
|
86
|
+
&& typeof candidate.auditId === "string");
|
|
87
|
+
}
|
|
58
88
|
//# sourceMappingURL=assistant.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assistant.js","sourceRoot":"","sources":["../../../src/routes/assistant.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"assistant.js","sourceRoot":"","sources":["../../../src/routes/assistant.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,5 +2,9 @@ export async function registerAuthRoutes(app, authController) {
|
|
|
2
2
|
app.post("/api/auth/login", authController.login);
|
|
3
3
|
app.post("/api/auth/refresh", authController.refresh);
|
|
4
4
|
app.post("/api/auth/logout", authController.logout);
|
|
5
|
+
app.get("/api/auth/devices", authController.getDevices);
|
|
6
|
+
app.post("/api/auth/devices/current/primary", authController.updateCurrentDevicePrimary);
|
|
7
|
+
app.post("/api/auth/devices/logout-others", authController.logoutOtherDevices);
|
|
8
|
+
app.post("/api/auth/devices/:deviceId/logout", authController.logoutDevice);
|
|
5
9
|
}
|
|
6
10
|
//# sourceMappingURL=auth.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/routes/auth.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,GAAoB,EACpB,cAA8B;IAE9B,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;IAClD,GAAG,CAAC,IAAI,CAAC,mBAAmB,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IACtD,GAAG,CAAC,IAAI,CAAC,kBAAkB,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/routes/auth.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,GAAoB,EACpB,cAA8B;IAE9B,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC;IAClD,GAAG,CAAC,IAAI,CAAC,mBAAmB,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IACtD,GAAG,CAAC,IAAI,CAAC,kBAAkB,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;IACpD,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAAE,cAAc,CAAC,UAAU,CAAC,CAAC;IACxD,GAAG,CAAC,IAAI,CAAC,mCAAmC,EAAE,cAAc,CAAC,0BAA0B,CAAC,CAAC;IACzF,GAAG,CAAC,IAAI,CAAC,iCAAiC,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAC/E,GAAG,CAAC,IAAI,CAAC,oCAAoC,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;AAC9E,CAAC"}
|
|
@@ -31,6 +31,7 @@ export async function registerSessionRoutes(app, sessionController) {
|
|
|
31
31
|
app.post("/api/sessions/start-live", {
|
|
32
32
|
bodyLimit: SESSION_MESSAGE_BODY_LIMIT_BYTES
|
|
33
33
|
}, sessionController.startLive);
|
|
34
|
+
app.delete("/api/sessions/:sessionId", sessionController.deleteSession);
|
|
34
35
|
app.delete("/api/sessions/:sessionId/queue/:queueItemId", sessionController.deleteQueuedMessage);
|
|
35
36
|
}
|
|
36
37
|
//# sourceMappingURL=sessions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/routes/sessions.ts"],"names":[],"mappings":"AAIA,uDAAuD;AACvD,iDAAiD;AACjD,MAAM,CAAC,MAAM,gCAAgC,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAEjE,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,GAAoB,EACpB,iBAAoC;IAEpC,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACjD,GAAG,CAAC,GAAG,CAAC,0BAA0B,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACjE,GAAG,CAAC,GAAG,CAAC,wCAAwC,EAAE,iBAAiB,CAAC,eAAe,CAAC,CAAC;IACrF,GAAG,CAAC,GAAG,CAAC,mCAAmC,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC7E,GAAG,CAAC,GAAG,CAAC,4DAA4D,EAAE,iBAAiB,CAAC,cAAc,CAAC,CAAC;IACxG,GAAG,CAAC,GAAG,CAAC,uCAAuC,EAAE,iBAAiB,CAAC,eAAe,CAAC,CAAC;IACpF,GAAG,CAAC,GAAG,CAAC,8CAA8C,EAAE,iBAAiB,CAAC,sBAAsB,CAAC,CAAC;IAClG,GAAG,CAAC,GAAG,CAAC,gCAAgC,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACvE,GAAG,CAAC,GAAG,CAAC,kCAAkC,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC1E,GAAG,CAAC,KAAK,CAAC,gCAAgC,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC3E,GAAG,CAAC,KAAK,CAAC,kCAAkC,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IACpF,GAAG,CAAC,KAAK,CAAC,mCAAmC,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;IACtF,GAAG,CAAC,IAAI,CAAC,gCAAgC,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACnE,GAAG,CAAC,IAAI,CAAC,mCAAmC,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC7E,GAAG,CAAC,IAAI,CACN,wCAAwC,EACxC;QACE,SAAS,EAAE,gCAAgC;KAC5C,EACD,iBAAiB,CAAC,eAAe,CAClC,CAAC;IACF,GAAG,CAAC,IAAI,CACN,+DAA+D,EAC/D,iBAAiB,CAAC,sBAAsB,CACzC,CAAC;IACF,GAAG,CAAC,IAAI,CACN,gCAAgC,EAChC;QACE,SAAS,EAAE,gCAAgC;KAC5C,EACD,iBAAiB,CAAC,kBAAkB,CACrC,CAAC;IACF,GAAG,CAAC,IAAI,CAAC,mDAAmD,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IACpG,GAAG,CAAC,IAAI,CAAC,oCAAoC,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC5E,GAAG,CAAC,IAAI,CAAC,+BAA+B,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACtE,GAAG,CAAC,IAAI,CAAC,iCAAiC,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACtE,GAAG,CAAC,IAAI,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACzD,GAAG,CAAC,IAAI,CACN,0BAA0B,EAC1B;QACE,SAAS,EAAE,gCAAgC;KAC5C,EACD,iBAAiB,CAAC,SAAS,CAC5B,CAAC;IACF,GAAG,CAAC,MAAM,CAAC,6CAA6C,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;AACnG,CAAC"}
|
|
1
|
+
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/routes/sessions.ts"],"names":[],"mappings":"AAIA,uDAAuD;AACvD,iDAAiD;AACjD,MAAM,CAAC,MAAM,gCAAgC,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAEjE,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,GAAoB,EACpB,iBAAoC;IAEpC,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACjD,GAAG,CAAC,GAAG,CAAC,0BAA0B,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACjE,GAAG,CAAC,GAAG,CAAC,wCAAwC,EAAE,iBAAiB,CAAC,eAAe,CAAC,CAAC;IACrF,GAAG,CAAC,GAAG,CAAC,mCAAmC,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC7E,GAAG,CAAC,GAAG,CAAC,4DAA4D,EAAE,iBAAiB,CAAC,cAAc,CAAC,CAAC;IACxG,GAAG,CAAC,GAAG,CAAC,uCAAuC,EAAE,iBAAiB,CAAC,eAAe,CAAC,CAAC;IACpF,GAAG,CAAC,GAAG,CAAC,8CAA8C,EAAE,iBAAiB,CAAC,sBAAsB,CAAC,CAAC;IAClG,GAAG,CAAC,GAAG,CAAC,gCAAgC,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACvE,GAAG,CAAC,GAAG,CAAC,kCAAkC,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC1E,GAAG,CAAC,KAAK,CAAC,gCAAgC,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC3E,GAAG,CAAC,KAAK,CAAC,kCAAkC,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IACpF,GAAG,CAAC,KAAK,CAAC,mCAAmC,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;IACtF,GAAG,CAAC,IAAI,CAAC,gCAAgC,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACnE,GAAG,CAAC,IAAI,CAAC,mCAAmC,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC7E,GAAG,CAAC,IAAI,CACN,wCAAwC,EACxC;QACE,SAAS,EAAE,gCAAgC;KAC5C,EACD,iBAAiB,CAAC,eAAe,CAClC,CAAC;IACF,GAAG,CAAC,IAAI,CACN,+DAA+D,EAC/D,iBAAiB,CAAC,sBAAsB,CACzC,CAAC;IACF,GAAG,CAAC,IAAI,CACN,gCAAgC,EAChC;QACE,SAAS,EAAE,gCAAgC;KAC5C,EACD,iBAAiB,CAAC,kBAAkB,CACrC,CAAC;IACF,GAAG,CAAC,IAAI,CAAC,mDAAmD,EAAE,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IACpG,GAAG,CAAC,IAAI,CAAC,oCAAoC,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC5E,GAAG,CAAC,IAAI,CAAC,+BAA+B,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACtE,GAAG,CAAC,IAAI,CAAC,iCAAiC,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACtE,GAAG,CAAC,IAAI,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACzD,GAAG,CAAC,IAAI,CACN,0BAA0B,EAC1B;QACE,SAAS,EAAE,gCAAgC;KAC5C,EACD,iBAAiB,CAAC,SAAS,CAC5B,CAAC;IACF,GAAG,CAAC,MAAM,CAAC,0BAA0B,EAAE,iBAAiB,CAAC,aAAa,CAAC,CAAC;IACxE,GAAG,CAAC,MAAM,CAAC,6CAA6C,EAAE,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;AACnG,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { FastifyInstance } from "fastify";
|
|
2
2
|
import type { ModelSwitchController } from "../modules/model-switch/model-switch-controller.js";
|
|
3
|
+
import type { RelayTunnelController } from "../modules/relay-tunnel/relay-tunnel-controller.js";
|
|
3
4
|
import type { TailscaleController } from "../modules/tailscale/tailscale-controller.js";
|
|
4
|
-
export declare function registerSystemRoutes(app: FastifyInstance, tailscaleController: TailscaleController, modelSwitchController: ModelSwitchController): Promise<void>;
|
|
5
|
+
export declare function registerSystemRoutes(app: FastifyInstance, tailscaleController: TailscaleController, relayTunnelController: RelayTunnelController, modelSwitchController: ModelSwitchController): Promise<void>;
|
|
@@ -1,10 +1,22 @@
|
|
|
1
|
-
export async function registerSystemRoutes(app, tailscaleController, modelSwitchController) {
|
|
1
|
+
export async function registerSystemRoutes(app, tailscaleController, relayTunnelController, modelSwitchController) {
|
|
2
2
|
app.get("/api/system/tailscale/status", tailscaleController.getStatus);
|
|
3
3
|
app.put("/api/system/tailscale/config", tailscaleController.updateConfig);
|
|
4
4
|
app.post("/api/system/tailscale/enable", tailscaleController.enable);
|
|
5
5
|
app.post("/api/system/tailscale/disable", tailscaleController.disable);
|
|
6
6
|
app.post("/api/system/tailscale/login", tailscaleController.login);
|
|
7
7
|
app.post("/api/system/tailscale/logout", tailscaleController.logout);
|
|
8
|
+
app.get("/api/system/relay-tunnel/status", relayTunnelController.getStatus);
|
|
9
|
+
app.post("/api/system/relay-tunnel/identity/ensure", relayTunnelController.ensureIdentity);
|
|
10
|
+
app.put("/api/system/relay-tunnel/config", relayTunnelController.updateConfig);
|
|
11
|
+
app.post("/api/system/relay-tunnel/control/login", relayTunnelController.loginControl);
|
|
12
|
+
app.post("/api/system/relay-tunnel/control/logout", relayTunnelController.logoutControl);
|
|
13
|
+
app.get("/api/system/relay-tunnel/control/host-label-availability", relayTunnelController.checkHostLabelAvailability);
|
|
14
|
+
app.post("/api/system/relay-tunnel/control/bind", relayTunnelController.bindControlHost);
|
|
15
|
+
app.get("/api/system/relay-tunnel/control/wallet", relayTunnelController.getTrafficWallet);
|
|
16
|
+
app.post("/api/system/relay-tunnel/bind", relayTunnelController.bind);
|
|
17
|
+
app.post("/api/system/relay-tunnel/unbind", relayTunnelController.unbind);
|
|
18
|
+
app.post("/api/system/relay-tunnel/enable", relayTunnelController.enable);
|
|
19
|
+
app.post("/api/system/relay-tunnel/disable", relayTunnelController.disable);
|
|
8
20
|
app.get("/api/system/model-switch", modelSwitchController.getSnapshot);
|
|
9
21
|
app.post("/api/system/model-switch", modelSwitchController.switchPreset);
|
|
10
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"system.js","sourceRoot":"","sources":["../../../src/routes/system.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"system.js","sourceRoot":"","sources":["../../../src/routes/system.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,GAAoB,EACpB,mBAAwC,EACxC,qBAA4C,EAC5C,qBAA4C;IAE5C,GAAG,CAAC,GAAG,CAAC,8BAA8B,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC;IACvE,GAAG,CAAC,GAAG,CAAC,8BAA8B,EAAE,mBAAmB,CAAC,YAAY,CAAC,CAAC;IAC1E,GAAG,CAAC,IAAI,CAAC,8BAA8B,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACrE,GAAG,CAAC,IAAI,CAAC,+BAA+B,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC;IACvE,GAAG,CAAC,IAAI,CAAC,6BAA6B,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACnE,GAAG,CAAC,IAAI,CAAC,8BAA8B,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC;IACrE,GAAG,CAAC,GAAG,CAAC,iCAAiC,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC;IAC5E,GAAG,CAAC,IAAI,CAAC,0CAA0C,EAAE,qBAAqB,CAAC,cAAc,CAAC,CAAC;IAC3F,GAAG,CAAC,GAAG,CAAC,iCAAiC,EAAE,qBAAqB,CAAC,YAAY,CAAC,CAAC;IAC/E,GAAG,CAAC,IAAI,CAAC,wCAAwC,EAAE,qBAAqB,CAAC,YAAY,CAAC,CAAC;IACvF,GAAG,CAAC,IAAI,CAAC,yCAAyC,EAAE,qBAAqB,CAAC,aAAa,CAAC,CAAC;IACzF,GAAG,CAAC,GAAG,CACL,0DAA0D,EAC1D,qBAAqB,CAAC,0BAA0B,CACjD,CAAC;IACF,GAAG,CAAC,IAAI,CAAC,uCAAuC,EAAE,qBAAqB,CAAC,eAAe,CAAC,CAAC;IACzF,GAAG,CAAC,GAAG,CAAC,yCAAyC,EAAE,qBAAqB,CAAC,gBAAgB,CAAC,CAAC;IAC3F,GAAG,CAAC,IAAI,CAAC,+BAA+B,EAAE,qBAAqB,CAAC,IAAI,CAAC,CAAC;IACtE,GAAG,CAAC,IAAI,CAAC,iCAAiC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC1E,GAAG,CAAC,IAAI,CAAC,iCAAiC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC1E,GAAG,CAAC,IAAI,CAAC,kCAAkC,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC5E,GAAG,CAAC,GAAG,CAAC,0BAA0B,EAAE,qBAAqB,CAAC,WAAW,CAAC,CAAC;IACvE,GAAG,CAAC,IAAI,CAAC,0BAA0B,EAAE,qBAAqB,CAAC,YAAY,CAAC,CAAC;AAC3E,CAAC"}
|
|
@@ -53,6 +53,9 @@ import { WorkspaceService } from "../modules/workspace/workspace-service.js";
|
|
|
53
53
|
import { AssistantAutomationRunRepository } from "../storage/repositories/assistant-automation-run-repository.js";
|
|
54
54
|
import { AssistantSandboxWorkspaceRepository } from "../storage/repositories/assistant-sandbox-workspace-repository.js";
|
|
55
55
|
import { AssistantAutomationTaskRepository } from "../storage/repositories/assistant-automation-task-repository.js";
|
|
56
|
+
import { AuthDeviceRepository } from "../storage/repositories/auth-device-repository.js";
|
|
57
|
+
import { AuthDeviceSessionRepository } from "../storage/repositories/auth-device-session-repository.js";
|
|
58
|
+
import { AuthLoginEventRepository } from "../storage/repositories/auth-login-event-repository.js";
|
|
56
59
|
import { AuthTokenRepository } from "../storage/repositories/auth-token-repository.js";
|
|
57
60
|
import { AuthLoginAttemptRepository } from "../storage/repositories/auth-login-attempt-repository.js";
|
|
58
61
|
import { AuthUserRepository } from "../storage/repositories/auth-user-repository.js";
|
|
@@ -94,6 +97,8 @@ import { SessionSendQueueRepository } from "../storage/repositories/session-send
|
|
|
94
97
|
import { SessionStateRepository } from "../storage/repositories/session-state-repository.js";
|
|
95
98
|
import { SessionStatusSnapshotRepository } from "../storage/repositories/session-status-snapshot-repository.js";
|
|
96
99
|
import { InstanceTailscaleRepository } from "../storage/repositories/instance-tailscale-repository.js";
|
|
100
|
+
import { InstanceRelayTunnelIdentityRepository } from "../storage/repositories/instance-relay-tunnel-identity-repository.js";
|
|
101
|
+
import { InstanceRelayTunnelRepository } from "../storage/repositories/instance-relay-tunnel-repository.js";
|
|
97
102
|
import { SkillTargetBindingRepository } from "../storage/repositories/skill-target-binding-repository.js";
|
|
98
103
|
import { TerminalCommandTemplateRepository } from "../storage/repositories/terminal-command-template-repository.js";
|
|
99
104
|
import { TerminalInstanceRepository } from "../storage/repositories/terminal-instance-repository.js";
|
|
@@ -116,6 +121,9 @@ export declare function createServer(config: HostConfig): {
|
|
|
116
121
|
bootstrapStateRepository: BootstrapStateRepository;
|
|
117
122
|
authUserRepository: AuthUserRepository;
|
|
118
123
|
authTokenRepository: AuthTokenRepository;
|
|
124
|
+
authDeviceRepository: AuthDeviceRepository;
|
|
125
|
+
authDeviceSessionRepository: AuthDeviceSessionRepository;
|
|
126
|
+
authLoginEventRepository: AuthLoginEventRepository;
|
|
119
127
|
authLoginAttemptRepository: AuthLoginAttemptRepository;
|
|
120
128
|
assistantAutomationTaskRepository: AssistantAutomationTaskRepository;
|
|
121
129
|
assistantAutomationRunRepository: AssistantAutomationRunRepository;
|
|
@@ -160,6 +168,8 @@ export declare function createServer(config: HostConfig): {
|
|
|
160
168
|
sessionStateRepository: SessionStateRepository;
|
|
161
169
|
sessionStatusSnapshotRepository: SessionStatusSnapshotRepository;
|
|
162
170
|
instanceTailscaleRepository: InstanceTailscaleRepository;
|
|
171
|
+
instanceRelayTunnelIdentityRepository: InstanceRelayTunnelIdentityRepository;
|
|
172
|
+
instanceRelayTunnelRepository: InstanceRelayTunnelRepository;
|
|
163
173
|
skillTargetBindingRepository: SkillTargetBindingRepository;
|
|
164
174
|
userQuickPhrasePreferenceRepository: UserQuickPhrasePreferenceRepository;
|
|
165
175
|
userPreferenceProfileRepository: UserPreferenceProfileRepository;
|
|
@@ -10,6 +10,7 @@ import { BootstrapController } from "../modules/bootstrap/bootstrap-controller.j
|
|
|
10
10
|
import { BootstrapService } from "../modules/bootstrap/bootstrap-service.js";
|
|
11
11
|
import { AssistantAutomationService } from "../modules/butler/assistant-automation-service.js";
|
|
12
12
|
import { AssistantSandboxService } from "../modules/butler/assistant-sandbox-service.js";
|
|
13
|
+
import { AssistantSandboxCleanupScheduler } from "../modules/butler/assistant-sandbox-cleanup-scheduler.js";
|
|
13
14
|
import { ButlerControlTimerScheduler } from "../modules/butler/butler-control-timer-scheduler.js";
|
|
14
15
|
import { ButlerControlTimerService } from "../modules/butler/butler-control-timer-service.js";
|
|
15
16
|
import { ButlerControlSessionService } from "../modules/butler/butler-control-session-service.js";
|
|
@@ -70,6 +71,9 @@ import { ProfileController } from "../modules/preferences/profile-controller.js"
|
|
|
70
71
|
import { PreferenceProfileService } from "../modules/preferences/profile-service.js";
|
|
71
72
|
import { QuickPhraseController } from "../modules/preferences/quick-phrase-controller.js";
|
|
72
73
|
import { QuickPhraseService } from "../modules/preferences/quick-phrase-service.js";
|
|
74
|
+
import { RelayTunnelController } from "../modules/relay-tunnel/relay-tunnel-controller.js";
|
|
75
|
+
import { RelayTunnelRuntimeEdgeAdapter } from "../modules/relay-tunnel/relay-tunnel-runtime-adapter.js";
|
|
76
|
+
import { RelayTunnelService } from "../modules/relay-tunnel/relay-tunnel-service.js";
|
|
73
77
|
import { CcSwitchAdapter } from "../modules/model-switch/cc-switch-adapter.js";
|
|
74
78
|
import { ModelSwitchController } from "../modules/model-switch/model-switch-controller.js";
|
|
75
79
|
import { ModelSwitchService } from "../modules/model-switch/model-switch-service.js";
|
|
@@ -77,6 +81,7 @@ import { ProviderController } from "../modules/provider/provider-controller.js";
|
|
|
77
81
|
import { disposeSharedProviderDiscoveryHelperClient } from "../modules/provider/provider-discovery-helper-client.js";
|
|
78
82
|
import { SkillController } from "../modules/skills/skill-controller.js";
|
|
79
83
|
import { syncBuiltinSkillsOnStartup } from "../modules/skills/builtin-skill-service.js";
|
|
84
|
+
import { cleanupLegacyAssistantRuntimeSkillCopies } from "../modules/skills/assistant-runtime-skill-cleanup.js";
|
|
80
85
|
import { SkillManagerService } from "../modules/skills/skill-manager-service.js";
|
|
81
86
|
import { createDefaultSkillTargetAdapters } from "../modules/skills/skill-target-adapter.js";
|
|
82
87
|
import { TailscaleManager } from "../modules/tailscale/tailscale-manager.js";
|
|
@@ -87,7 +92,9 @@ import { SessionController } from "../modules/sessions/session-controller.js";
|
|
|
87
92
|
import { SessionChangedFileService } from "../modules/sessions/session-changed-file-service.js";
|
|
88
93
|
import { SessionActivityAuthorityService } from "../modules/sessions/session-activity-authority-service.js";
|
|
89
94
|
import { SessionHistoryService } from "../modules/sessions/session-history-service.js";
|
|
95
|
+
import { SessionLiveRuntimeRouterService } from "../modules/sessions/session-live-runtime-router-service.js";
|
|
90
96
|
import { SessionLiveRuntimeService } from "../modules/sessions/session-live-runtime-service.js";
|
|
97
|
+
import { SessionProviderUsageLimitGuardService } from "../modules/sessions/session-provider-usage-guard-service.js";
|
|
91
98
|
import { SessionMessageAttachmentService } from "../modules/sessions/session-message-attachment-service.js";
|
|
92
99
|
import { EventLoopMonitor } from "../modules/tasks/event-loop-monitor.js";
|
|
93
100
|
import { ObservabilityController } from "../modules/tasks/observability-controller.js";
|
|
@@ -138,6 +145,9 @@ import { startTerminalDebugEventLoopLagMonitor } from "../shared/utils/terminal-
|
|
|
138
145
|
import { AssistantAutomationRunRepository } from "../storage/repositories/assistant-automation-run-repository.js";
|
|
139
146
|
import { AssistantSandboxWorkspaceRepository } from "../storage/repositories/assistant-sandbox-workspace-repository.js";
|
|
140
147
|
import { AssistantAutomationTaskRepository } from "../storage/repositories/assistant-automation-task-repository.js";
|
|
148
|
+
import { AuthDeviceRepository } from "../storage/repositories/auth-device-repository.js";
|
|
149
|
+
import { AuthDeviceSessionRepository } from "../storage/repositories/auth-device-session-repository.js";
|
|
150
|
+
import { AuthLoginEventRepository } from "../storage/repositories/auth-login-event-repository.js";
|
|
141
151
|
import { AuthTokenRepository } from "../storage/repositories/auth-token-repository.js";
|
|
142
152
|
import { AuthLoginAttemptRepository } from "../storage/repositories/auth-login-attempt-repository.js";
|
|
143
153
|
import { AuthUserRepository } from "../storage/repositories/auth-user-repository.js";
|
|
@@ -179,6 +189,8 @@ import { SessionSendQueueRepository } from "../storage/repositories/session-send
|
|
|
179
189
|
import { SessionStateRepository } from "../storage/repositories/session-state-repository.js";
|
|
180
190
|
import { SessionStatusSnapshotRepository } from "../storage/repositories/session-status-snapshot-repository.js";
|
|
181
191
|
import { InstanceTailscaleRepository } from "../storage/repositories/instance-tailscale-repository.js";
|
|
192
|
+
import { InstanceRelayTunnelIdentityRepository } from "../storage/repositories/instance-relay-tunnel-identity-repository.js";
|
|
193
|
+
import { InstanceRelayTunnelRepository } from "../storage/repositories/instance-relay-tunnel-repository.js";
|
|
182
194
|
import { SkillTargetBindingRepository } from "../storage/repositories/skill-target-binding-repository.js";
|
|
183
195
|
import { TerminalCommandTemplateRepository } from "../storage/repositories/terminal-command-template-repository.js";
|
|
184
196
|
import { TerminalInstanceRepository } from "../storage/repositories/terminal-instance-repository.js";
|
|
@@ -211,6 +223,9 @@ export function createServer(config) {
|
|
|
211
223
|
bootstrapStateRepository: new BootstrapStateRepository(database.db),
|
|
212
224
|
authUserRepository: new AuthUserRepository(database.db),
|
|
213
225
|
authTokenRepository: new AuthTokenRepository(database.db),
|
|
226
|
+
authDeviceRepository: new AuthDeviceRepository(database.db),
|
|
227
|
+
authDeviceSessionRepository: new AuthDeviceSessionRepository(database.db),
|
|
228
|
+
authLoginEventRepository: new AuthLoginEventRepository(database.db),
|
|
214
229
|
authLoginAttemptRepository: new AuthLoginAttemptRepository(database.db),
|
|
215
230
|
assistantAutomationTaskRepository: new AssistantAutomationTaskRepository(database.db),
|
|
216
231
|
assistantAutomationRunRepository: new AssistantAutomationRunRepository(database.db),
|
|
@@ -255,6 +270,8 @@ export function createServer(config) {
|
|
|
255
270
|
sessionStateRepository: new SessionStateRepository(database.db),
|
|
256
271
|
sessionStatusSnapshotRepository: new SessionStatusSnapshotRepository(database.db),
|
|
257
272
|
instanceTailscaleRepository: new InstanceTailscaleRepository(database.db),
|
|
273
|
+
instanceRelayTunnelIdentityRepository: new InstanceRelayTunnelIdentityRepository(database.db),
|
|
274
|
+
instanceRelayTunnelRepository: new InstanceRelayTunnelRepository(database.db),
|
|
258
275
|
skillTargetBindingRepository: new SkillTargetBindingRepository(database.db),
|
|
259
276
|
userQuickPhrasePreferenceRepository: new UserQuickPhrasePreferenceRepository(database.db),
|
|
260
277
|
userPreferenceProfileRepository: new UserPreferenceProfileRepository(database.db),
|
|
@@ -275,7 +292,7 @@ export function createServer(config) {
|
|
|
275
292
|
const demoServices = (demoCleanupService && demoOnlineTracker)
|
|
276
293
|
? { cleanupService: demoCleanupService, onlineTracker: demoOnlineTracker }
|
|
277
294
|
: undefined;
|
|
278
|
-
const authService = new AuthService(repositories.bootstrapStateRepository, repositories.authUserRepository, repositories.authTokenRepository, repositories.authLoginAttemptRepository, effectiveConfig, demoServices);
|
|
295
|
+
const authService = new AuthService(repositories.bootstrapStateRepository, repositories.authUserRepository, repositories.authTokenRepository, repositories.authDeviceRepository, repositories.authDeviceSessionRepository, repositories.authLoginEventRepository, repositories.authLoginAttemptRepository, effectiveConfig, demoServices);
|
|
279
296
|
const butlerProfileService = new ButlerProfileService(repositories.butlerProfileRepository, repositories.butlerProjectRepository, path.dirname(config.databasePath));
|
|
280
297
|
const gitCommandRunner = new GitCommandRunner({
|
|
281
298
|
preferHelperProcess: !process.env.VITEST
|
|
@@ -287,7 +304,6 @@ export function createServer(config) {
|
|
|
287
304
|
const taskManager = createTaskManager(taskActivityLog, createHostTaskLaneExecutors());
|
|
288
305
|
const npmGlobalPackageService = new NpmGlobalPackageService(config);
|
|
289
306
|
const serviceUpdateTaskService = new ServiceUpdateTaskService(taskManager, npmGlobalPackageService);
|
|
290
|
-
const clientService = new ClientService(config, npmGlobalPackageService, serviceUpdateTaskService);
|
|
291
307
|
const workspaceService = new WorkspaceService(repositories.workspaceRepository, gitCommandRunner, repositories.workspaceNavigationStateRepository, butlerProfileService, repositories.workspaceWorktreeRepository, taskManager);
|
|
292
308
|
const fileAccessGuard = new FileAccessGuard(workspaceService, app.log);
|
|
293
309
|
const recentFileService = new RecentFileService(repositories.recentFileRepository);
|
|
@@ -312,13 +328,33 @@ export function createServer(config) {
|
|
|
312
328
|
const tailscaleService = new TailscaleService(database.db, repositories.instanceTailscaleRepository, tailscaleManager, {
|
|
313
329
|
databasePath: config.databasePath
|
|
314
330
|
});
|
|
331
|
+
const relayTunnelService = new RelayTunnelService(database.db, repositories.bootstrapStateRepository, repositories.instanceRelayTunnelIdentityRepository, repositories.instanceRelayTunnelRepository, {
|
|
332
|
+
defaultLocalTargetBaseUrl: `http://127.0.0.1:${config.webUiPort}`,
|
|
333
|
+
legacyLocalTargetBaseUrl: config.webUiPort !== config.port
|
|
334
|
+
? `http://127.0.0.1:${config.port}`
|
|
335
|
+
: null,
|
|
336
|
+
controlSessionSecret: config.gitCredentialSecret
|
|
337
|
+
}, taskManager, new RelayTunnelRuntimeEdgeAdapter(repositories.instanceRelayTunnelIdentityRepository, repositories.instanceRelayTunnelRepository, {
|
|
338
|
+
controlSessionSecret: config.gitCredentialSecret
|
|
339
|
+
}));
|
|
340
|
+
const clientService = new ClientService(config, npmGlobalPackageService, serviceUpdateTaskService, relayTunnelService);
|
|
315
341
|
const modelSwitchService = new ModelSwitchService(new CcSwitchAdapter({
|
|
316
342
|
commandPath: config.ccSwitchCliPath,
|
|
317
343
|
dbPath: config.ccSwitchDbPath
|
|
318
344
|
}));
|
|
319
|
-
const
|
|
345
|
+
const skillTargetAdapters = createDefaultSkillTargetAdapters(config);
|
|
346
|
+
const skillManagerService = new SkillManagerService(repositories.managedSkillRepository, repositories.skillTargetBindingRepository, skillTargetAdapters, {
|
|
320
347
|
ssotRootDir: path.join(path.dirname(config.databasePath), "skills")
|
|
321
348
|
});
|
|
349
|
+
for (const result of cleanupLegacyAssistantRuntimeSkillCopies(skillTargetAdapters)) {
|
|
350
|
+
if (result.status === "removed_legacy_copy") {
|
|
351
|
+
console.info(`[host] 已清理公共 Skill 根目录里的旧助手副本 ${result.targetCli}: ${result.targetPath}`);
|
|
352
|
+
continue;
|
|
353
|
+
}
|
|
354
|
+
if (result.status === "kept_drifted_copy" || result.status === "invalid_entry") {
|
|
355
|
+
console.warn(`[host] 保留公共 Skill 根目录里的助手专用目录 ${result.targetCli}: ${result.targetPath} (${result.detail ?? "unknown"})`);
|
|
356
|
+
}
|
|
357
|
+
}
|
|
322
358
|
for (const result of syncBuiltinSkillsOnStartup(skillManagerService)) {
|
|
323
359
|
if (result.ok) {
|
|
324
360
|
console.info(`[host] 已同步内置 Skill ${result.directoryName} -> ${result.targetCli.join(",")}`);
|
|
@@ -358,12 +394,24 @@ export function createServer(config) {
|
|
|
358
394
|
sessionHistoryService.registerLiveActivityObservationResolver((sessionId) => butlerSummarySessionLiveRuntimeService.resolveLiveActivityObservation(sessionId));
|
|
359
395
|
const butlerFollowUpSessionLiveRuntimeService = new SessionLiveRuntimeService(sessionHistoryService, sessionMessageAttachmentService, workspaceService, sessionChangedFileService, repositories.sessionBindingRepository, repositories.authUserRepository, repositories.sessionSendQueueRepository, repositories.sessionIndexRepository, repositories.sessionStateRepository, repositories.sessionStatusSnapshotRepository, butlerFollowUpRuntimeConfig, sessionActivityAuthorityService);
|
|
360
396
|
sessionHistoryService.registerLiveActivityObservationResolver((sessionId) => butlerFollowUpSessionLiveRuntimeService.resolveLiveActivityObservation(sessionId));
|
|
397
|
+
const routedSessionLiveRuntimeService = new SessionLiveRuntimeRouterService(sessionLiveRuntimeService, [
|
|
398
|
+
butlerSessionLiveRuntimeService,
|
|
399
|
+
butlerSummarySessionLiveRuntimeService,
|
|
400
|
+
butlerFollowUpSessionLiveRuntimeService
|
|
401
|
+
]);
|
|
402
|
+
const sessionProviderUsageLimitGuardService = new SessionProviderUsageLimitGuardService(sessionHistoryService);
|
|
361
403
|
const workbenchService = new WorkbenchService(repositories.workspaceRepository, repositories.workspaceNavigationStateRepository, sessionHistoryService, butlerProfileService, repositories.butlerControlSessionRepository, repositories.workspaceWorktreeRepository, taskManager);
|
|
362
404
|
const butlerProjectService = new ButlerProjectService(repositories.butlerProjectRepository, repositories.butlerSessionRepository, repositories.workspaceRepository, butlerProfileService, repositories.assistantSandboxWorkspaceRepository);
|
|
363
|
-
const assistantSandboxService = new AssistantSandboxService(repositories.assistantSandboxWorkspaceRepository, butlerProfileService, workspaceService, butlerProjectService);
|
|
405
|
+
const assistantSandboxService = new AssistantSandboxService(repositories.assistantSandboxWorkspaceRepository, butlerProfileService, workspaceService, butlerProjectService, taskManager);
|
|
406
|
+
sessionHistoryService.registerSessionDeletedObserver(async ({ workspaceId, userId, remainingWorkspaceSessionCount }) => {
|
|
407
|
+
if (remainingWorkspaceSessionCount > 0) {
|
|
408
|
+
return;
|
|
409
|
+
}
|
|
410
|
+
assistantSandboxService.markSandboxOrphanedByWorkspaceId(workspaceId, userId);
|
|
411
|
+
});
|
|
364
412
|
const butlerInboxService = new ButlerInboxService(repositories.butlerProjectRepository, repositories.butlerInboxItemRepository, taskManager);
|
|
365
413
|
const butlerNotificationService = new ButlerNotificationService(repositories.butlerNotificationArchiveRepository);
|
|
366
|
-
const butlerSessionService = new ButlerSessionService(repositories.butlerProjectRepository, repositories.butlerSessionRepository, repositories.sessionCheckpointRepository, repositories.sessionBindingRepository, repositories.sessionIndexRepository, repositories.sessionStateRepository, sessionLiveRuntimeService, sessionHistoryService, repositories.sessionMessageOriginRepository);
|
|
414
|
+
const butlerSessionService = new ButlerSessionService(repositories.butlerProjectRepository, repositories.butlerSessionRepository, repositories.sessionCheckpointRepository, repositories.sessionBindingRepository, repositories.sessionIndexRepository, repositories.sessionStateRepository, sessionLiveRuntimeService, sessionHistoryService, repositories.sessionMessageOriginRepository, sessionProviderUsageLimitGuardService);
|
|
367
415
|
const projectMemoryService = new ProjectMemoryService(repositories.butlerProjectRepository, repositories.projectMemoryRepository);
|
|
368
416
|
const patrolPlanService = new PatrolPlanService(repositories.butlerProjectRepository, repositories.patrolPlanRepository);
|
|
369
417
|
const patrolRunService = new PatrolRunService(repositories.butlerProjectRepository, repositories.patrolPlanRepository, repositories.patrolRunRepository);
|
|
@@ -398,7 +446,7 @@ export function createServer(config) {
|
|
|
398
446
|
summaryCodexHomeDir: butlerSummaryRuntimeConfig.codexHomeDir,
|
|
399
447
|
sourceCodexHomeDir: config.codexHomeDir
|
|
400
448
|
});
|
|
401
|
-
const butlerFollowUpService = new ButlerFollowUpService(butlerProfileService, butlerProjectService, butlerSessionService, repositories.butlerFollowUpTaskRepository, sessionHistoryService, repositories.sessionIndexRepository, sessionLiveRuntimeService, workspaceService, followUpProviderAdapterRegistry, butlerFollowUpEvaluationInstructionAdapter, butlerFollowUpRuntimeConfig.codexHomeDir, config.codexHomeDir, repositories.sessionMessageOriginRepository);
|
|
449
|
+
const butlerFollowUpService = new ButlerFollowUpService(butlerProfileService, butlerProjectService, butlerSessionService, repositories.butlerFollowUpTaskRepository, sessionHistoryService, repositories.sessionIndexRepository, sessionLiveRuntimeService, workspaceService, followUpProviderAdapterRegistry, butlerFollowUpEvaluationInstructionAdapter, butlerFollowUpRuntimeConfig.codexHomeDir, config.codexHomeDir, repositories.sessionMessageOriginRepository, sessionProviderUsageLimitGuardService);
|
|
402
450
|
const butlerActionContextService = new ButlerActionContextService(butlerProjectService, butlerSessionService, butlerFollowUpService, verificationRunService);
|
|
403
451
|
const sessionSummaryScheduler = new SessionSummaryScheduler(butlerSessionSummaryService, {
|
|
404
452
|
schedulerMetrics
|
|
@@ -406,10 +454,13 @@ export function createServer(config) {
|
|
|
406
454
|
const butlerFollowUpScheduler = new ButlerFollowUpScheduler(butlerFollowUpService, {
|
|
407
455
|
schedulerMetrics
|
|
408
456
|
});
|
|
457
|
+
const assistantSandboxCleanupScheduler = new AssistantSandboxCleanupScheduler(assistantSandboxService, {
|
|
458
|
+
schedulerMetrics
|
|
459
|
+
});
|
|
409
460
|
const butlerFollowUpTerminalSubscription = sessionLiveRuntimeService.registerTerminalStateListener(async (event) => {
|
|
410
461
|
await butlerFollowUpService.handleSessionTerminal(event.sessionId, event.timestamp);
|
|
411
462
|
});
|
|
412
|
-
const butlerControlSessionService = new ButlerControlSessionService(butlerProfileService, repositories.butlerControlSessionRepository, workspaceService, sessionHistoryService, butlerSessionLiveRuntimeService, butlerContextAggregator, butlerAuthService, skillManagerService, butlerRuntimeConfig.codexHomeDir, config.codexHomeDir, butlerRuntimeConfig.claudeCodeHomeDir, config.claudeCodeHomeDir, repositories.sessionMessageOriginRepository, assistantSandboxService);
|
|
463
|
+
const butlerControlSessionService = new ButlerControlSessionService(butlerProfileService, repositories.butlerControlSessionRepository, workspaceService, sessionHistoryService, butlerSessionLiveRuntimeService, butlerContextAggregator, butlerAuthService, skillManagerService, butlerRuntimeConfig.codexHomeDir, config.codexHomeDir, butlerRuntimeConfig.claudeCodeHomeDir, config.claudeCodeHomeDir, repositories.sessionMessageOriginRepository, assistantSandboxService, sessionProviderUsageLimitGuardService);
|
|
413
464
|
const assistantAutomationService = new AssistantAutomationService(butlerProfileService, butlerControlSessionService, repositories.assistantAutomationTaskRepository, repositories.assistantAutomationRunRepository, taskManager, {
|
|
414
465
|
gitCommandRunner,
|
|
415
466
|
sessionLiveRuntimeService: butlerSessionLiveRuntimeService
|
|
@@ -456,11 +507,12 @@ export function createServer(config) {
|
|
|
456
507
|
const worktreeController = new WorktreeController(worktreeManager, worktreeSyncService, worktreeMergeService, worktreeCleanupService);
|
|
457
508
|
const workbenchController = new WorkbenchController(workbenchService);
|
|
458
509
|
const butlerController = new ButlerController(butlerProfileService, butlerControlSessionService, butlerControlActionService, butlerContextAggregator, butlerFollowUpService, butlerInboxService, butlerNotificationService, butlerProjectService, butlerSessionService, projectMemoryService, patrolPlanService, patrolRunService, patrolExecutionService, verificationRunService, butlerActionContextService, butlerControlTimerService);
|
|
459
|
-
const sessionController = new SessionController(sessionHistoryService,
|
|
460
|
-
const assistantCapabilityController = new AssistantCapabilityController(new AssistantCapabilityService(butlerProjectService, butlerSessionService, butlerControlSessionService, assistantAutomationService, assistantSandboxService, butlerControlTimerService, sessionHistoryService, sessionLiveRuntimeService, terminalService, debugTargetService, workspaceService, worktreeManager, worktreeSyncService, worktreeMergeService, worktreeCleanupService, repositories.sessionMessageOriginRepository));
|
|
461
|
-
const providerController = new ProviderController(sessionHistoryService,
|
|
510
|
+
const sessionController = new SessionController(sessionHistoryService, routedSessionLiveRuntimeService, repositories.butlerControlSessionRepository);
|
|
511
|
+
const assistantCapabilityController = new AssistantCapabilityController(new AssistantCapabilityService(butlerProjectService, butlerSessionService, butlerControlSessionService, assistantAutomationService, assistantSandboxService, butlerControlTimerService, sessionHistoryService, sessionLiveRuntimeService, terminalService, debugTargetService, workspaceService, worktreeManager, worktreeSyncService, worktreeMergeService, worktreeCleanupService, repositories.sessionMessageOriginRepository, butlerFollowUpService));
|
|
512
|
+
const providerController = new ProviderController(sessionHistoryService, routedSessionLiveRuntimeService, config);
|
|
462
513
|
const skillController = new SkillController(skillManagerService);
|
|
463
514
|
const tailscaleController = new TailscaleController(tailscaleService);
|
|
515
|
+
const relayTunnelController = new RelayTunnelController(relayTunnelService);
|
|
464
516
|
const modelSwitchController = new ModelSwitchController(modelSwitchService);
|
|
465
517
|
const quickPhraseController = new QuickPhraseController(quickPhraseService);
|
|
466
518
|
const profileController = new ProfileController(preferenceProfileService);
|
|
@@ -469,7 +521,7 @@ export function createServer(config) {
|
|
|
469
521
|
const gitController = new GitController(gitReadService, gitWriteService, commitOrchestrator);
|
|
470
522
|
const terminalController = new TerminalController(terminalService, commandTemplateService);
|
|
471
523
|
const observabilityController = new ObservabilityController(runtimeObservabilityService);
|
|
472
|
-
const wsHandle = createWsServer(app.server, new WsAuthGuard(authService), sessionHistoryService,
|
|
524
|
+
const wsHandle = createWsServer(app.server, new WsAuthGuard(authService), sessionHistoryService, routedSessionLiveRuntimeService, new TerminalWsHub(terminalService), new WorkbenchWsHub(workbenchService, workspacePanelSnapshotService, fileWatcher, terminalService), butlerActionContextService);
|
|
473
525
|
app.server.on("upgrade", (request, socket, head) => {
|
|
474
526
|
templateReverseProxyService.handleWebSocketUpgrade(request, socket, head);
|
|
475
527
|
});
|
|
@@ -500,6 +552,14 @@ export function createServer(config) {
|
|
|
500
552
|
error: error instanceof Error ? error.message : String(error)
|
|
501
553
|
});
|
|
502
554
|
});
|
|
555
|
+
void relayTunnelService.restoreOnStartup().catch((error) => {
|
|
556
|
+
if (shuttingDown) {
|
|
557
|
+
return;
|
|
558
|
+
}
|
|
559
|
+
console.error("[startup-recovery] 公共隧道启动恢复失败", {
|
|
560
|
+
error: error instanceof Error ? error.message : String(error)
|
|
561
|
+
});
|
|
562
|
+
});
|
|
503
563
|
});
|
|
504
564
|
// Demo 模式:自动创建演示用户
|
|
505
565
|
if (config.demoMode) {
|
|
@@ -522,7 +582,7 @@ export function createServer(config) {
|
|
|
522
582
|
void registerSessionRoutes(app, sessionController);
|
|
523
583
|
void registerPreferenceRoutes(app, quickPhraseController, profileController);
|
|
524
584
|
void registerSkillRoutes(app, skillController);
|
|
525
|
-
void registerSystemRoutes(app, tailscaleController, modelSwitchController);
|
|
585
|
+
void registerSystemRoutes(app, tailscaleController, relayTunnelController, modelSwitchController);
|
|
526
586
|
void registerFileRoutes(app, fileController);
|
|
527
587
|
void registerSessionContextRoutes(app, fileContextController);
|
|
528
588
|
void registerTerminalRoutes(app, terminalController);
|
|
@@ -531,6 +591,7 @@ export function createServer(config) {
|
|
|
531
591
|
patrolScheduler.start();
|
|
532
592
|
sessionSummaryScheduler.start();
|
|
533
593
|
butlerFollowUpScheduler.start();
|
|
594
|
+
assistantSandboxCleanupScheduler.start();
|
|
534
595
|
butlerControlTimerScheduler.start();
|
|
535
596
|
debugRuntimeReconciliationScheduler.start();
|
|
536
597
|
if (config.webUiDir) {
|
|
@@ -544,6 +605,7 @@ export function createServer(config) {
|
|
|
544
605
|
await patrolScheduler.dispose();
|
|
545
606
|
await sessionSummaryScheduler.dispose();
|
|
546
607
|
await butlerFollowUpScheduler.dispose();
|
|
608
|
+
await assistantSandboxCleanupScheduler.dispose();
|
|
547
609
|
await butlerControlTimerScheduler.dispose();
|
|
548
610
|
await debugRuntimeReconciliationScheduler.dispose();
|
|
549
611
|
terminalService.off("exit", handleDebugTargetTerminalExit);
|
|
@@ -632,9 +694,17 @@ function applyCorsHeaders(origin, reply, demoMode) {
|
|
|
632
694
|
reply.header("Access-Control-Allow-Origin", allowedOrigin);
|
|
633
695
|
reply.header("Vary", "Origin");
|
|
634
696
|
reply.header("Access-Control-Allow-Credentials", "true");
|
|
635
|
-
reply.header("Access-Control-Allow-Headers",
|
|
697
|
+
reply.header("Access-Control-Allow-Headers", CORS_ALLOWED_HEADERS);
|
|
636
698
|
reply.header("Access-Control-Allow-Methods", "GET,POST,PUT,PATCH,DELETE,OPTIONS");
|
|
637
699
|
}
|
|
700
|
+
const CORS_ALLOWED_HEADERS = [
|
|
701
|
+
"Authorization",
|
|
702
|
+
"Content-Type",
|
|
703
|
+
"x-codingns-client-type",
|
|
704
|
+
"x-codingns-client-instance-id",
|
|
705
|
+
"x-codingns-assistant-source",
|
|
706
|
+
"x-codingns-hook-token"
|
|
707
|
+
].join(", ");
|
|
638
708
|
function resolveAllowedCorsOrigin(origin, demoMode) {
|
|
639
709
|
if (!origin) {
|
|
640
710
|
return null;
|