@wrongstack/webui-server 0.293.0 → 0.295.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/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19499 -14317
- package/dist/index.js.map +4 -4
- package/dist/protocol/client-conversation.d.ts +3 -0
- package/dist/protocol/client-conversation.d.ts.map +1 -0
- package/dist/protocol/client-integrations.d.ts +3 -0
- package/dist/protocol/client-integrations.d.ts.map +1 -0
- package/dist/protocol/client-operations.d.ts +3 -0
- package/dist/protocol/client-operations.d.ts.map +1 -0
- package/dist/protocol/client-workspace.d.ts +3 -0
- package/dist/protocol/client-workspace.d.ts.map +1 -0
- package/dist/protocol/connection-fsm.d.ts +39 -0
- package/dist/protocol/connection-fsm.d.ts.map +1 -0
- package/dist/protocol/decoder.d.ts +6 -0
- package/dist/protocol/decoder.d.ts.map +1 -0
- package/dist/protocol/index.d.ts +8 -0
- package/dist/protocol/index.d.ts.map +1 -0
- package/dist/protocol/index.js +874 -0
- package/dist/protocol/index.js.map +7 -0
- package/dist/protocol/projections.d.ts +113 -0
- package/dist/protocol/projections.d.ts.map +1 -0
- package/dist/protocol/registry.d.ts +6 -0
- package/dist/protocol/registry.d.ts.map +1 -0
- package/dist/protocol/replay-payload.d.ts +41 -0
- package/dist/protocol/replay-payload.d.ts.map +1 -0
- package/dist/protocol/server-conversation.d.ts +3 -0
- package/dist/protocol/server-conversation.d.ts.map +1 -0
- package/dist/protocol/server-integrations.d.ts +3 -0
- package/dist/protocol/server-integrations.d.ts.map +1 -0
- package/dist/protocol/server-operations.d.ts +4 -0
- package/dist/protocol/server-operations.d.ts.map +1 -0
- package/dist/protocol/server-workspace.d.ts +3 -0
- package/dist/protocol/server-workspace.d.ts.map +1 -0
- package/dist/protocol/types.d.ts +24 -0
- package/dist/protocol/types.d.ts.map +1 -0
- package/dist/protocol/version.d.ts +20 -0
- package/dist/protocol/version.d.ts.map +1 -0
- package/dist/server/agent-roster-handlers.d.ts +31 -0
- package/dist/server/agent-roster-handlers.d.ts.map +1 -0
- package/dist/server/agent-roster-routes.d.ts +8 -0
- package/dist/server/agent-roster-routes.d.ts.map +1 -0
- package/dist/server/autonomy-routes.d.ts +9 -0
- package/dist/server/autonomy-routes.d.ts.map +1 -0
- package/dist/server/backend-services.d.ts +19 -6
- package/dist/server/backend-services.d.ts.map +1 -1
- package/dist/server/boot.d.ts +4 -1
- package/dist/server/boot.d.ts.map +1 -1
- package/dist/server/brain-handlers.d.ts +47 -0
- package/dist/server/brain-handlers.d.ts.map +1 -0
- package/dist/server/chronicle-routes.d.ts +14 -0
- package/dist/server/chronicle-routes.d.ts.map +1 -0
- package/dist/server/client-presence.d.ts +26 -0
- package/dist/server/client-presence.d.ts.map +1 -0
- package/dist/server/client-transport-routes.d.ts +8 -0
- package/dist/server/client-transport-routes.d.ts.map +1 -0
- package/dist/server/codebase-indexing.d.ts +3 -1
- package/dist/server/codebase-indexing.d.ts.map +1 -1
- package/dist/server/codemap-cache.d.ts +14 -0
- package/dist/server/codemap-cache.d.ts.map +1 -0
- package/dist/server/codemap-handlers.d.ts +2 -3
- package/dist/server/codemap-handlers.d.ts.map +1 -1
- package/dist/server/codemap-telemetry.d.ts.map +1 -1
- package/dist/server/collaboration-ws-handler.d.ts +3 -1
- package/dist/server/collaboration-ws-handler.d.ts.map +1 -1
- package/dist/server/completion-handlers.d.ts +2 -1
- package/dist/server/completion-handlers.d.ts.map +1 -1
- package/dist/server/completion-routes.d.ts +7 -0
- package/dist/server/completion-routes.d.ts.map +1 -0
- package/dist/server/config-doctor.d.ts +11 -0
- package/dist/server/config-doctor.d.ts.map +1 -0
- package/dist/server/connection-handler.d.ts +9 -46
- package/dist/server/connection-handler.d.ts.map +1 -1
- package/dist/server/connection-lifecycle.d.ts +43 -0
- package/dist/server/connection-lifecycle.d.ts.map +1 -0
- package/dist/server/content-routes.d.ts +15 -0
- package/dist/server/content-routes.d.ts.map +1 -0
- package/dist/server/conversation-operations.d.ts +28 -0
- package/dist/server/conversation-operations.d.ts.map +1 -0
- package/dist/server/conversation-routes.d.ts +10 -0
- package/dist/server/conversation-routes.d.ts.map +1 -0
- package/dist/server/custom-context-modes.d.ts +1 -1
- package/dist/server/custom-context-modes.d.ts.map +1 -1
- package/dist/server/design-handlers.d.ts +8 -0
- package/dist/server/design-handlers.d.ts.map +1 -1
- package/dist/server/discover-mailbox-bridge.d.ts.map +1 -1
- package/dist/server/embedded-host-adapters.d.ts +96 -0
- package/dist/server/embedded-host-adapters.d.ts.map +1 -0
- package/dist/server/embedded-lifecycle.d.ts +113 -0
- package/dist/server/embedded-lifecycle.d.ts.map +1 -0
- package/dist/server/embedded-message-router.d.ts +64 -0
- package/dist/server/embedded-message-router.d.ts.map +1 -0
- package/dist/server/entry.js +17227 -14052
- package/dist/server/entry.js.map +4 -4
- package/dist/server/eternal-iteration-broadcast.d.ts +1 -1
- package/dist/server/eternal-iteration-broadcast.d.ts.map +1 -1
- package/dist/server/file-handlers.d.ts.map +1 -1
- package/dist/server/frontend-static-serve.d.ts +133 -0
- package/dist/server/frontend-static-serve.d.ts.map +1 -0
- package/dist/server/git-process.d.ts +4 -0
- package/dist/server/git-process.d.ts.map +1 -0
- package/dist/server/goal-snapshot-routes.d.ts +7 -0
- package/dist/server/goal-snapshot-routes.d.ts.map +1 -0
- package/dist/server/goal-ws-handler.d.ts +3 -1
- package/dist/server/goal-ws-handler.d.ts.map +1 -1
- package/dist/server/handlers/worklist-handlers.d.ts +14 -20
- package/dist/server/handlers/worklist-handlers.d.ts.map +1 -1
- package/dist/server/handlers.js +150 -121
- package/dist/server/handlers.js.map +3 -3
- package/dist/server/host-routes.d.ts +7 -0
- package/dist/server/host-routes.d.ts.map +1 -0
- package/dist/server/http-server/analytics-handler.d.ts +2 -0
- package/dist/server/http-server/analytics-handler.d.ts.map +1 -1
- package/dist/server/http-server/api-handlers.d.ts.map +1 -1
- package/dist/server/http-server.d.ts +20 -23
- package/dist/server/http-server.d.ts.map +1 -1
- package/dist/server/index.d.ts +57 -22
- package/dist/server/index.d.ts.map +1 -1
- package/dist/server/instance-registry.d.ts +1 -3
- package/dist/server/instance-registry.d.ts.map +1 -1
- package/dist/server/introspection-routes.d.ts +19 -0
- package/dist/server/introspection-routes.d.ts.map +1 -0
- package/dist/server/kanban-board-watcher.d.ts +19 -0
- package/dist/server/kanban-board-watcher.d.ts.map +1 -0
- package/dist/server/kanban-dispatch.d.ts +42 -0
- package/dist/server/kanban-dispatch.d.ts.map +1 -0
- package/dist/server/kanban-host-routes.d.ts +10 -0
- package/dist/server/kanban-host-routes.d.ts.map +1 -0
- package/dist/server/kanban-routes.d.ts +13 -3
- package/dist/server/kanban-routes.d.ts.map +1 -1
- package/dist/server/kanban-run-mirror.d.ts +76 -0
- package/dist/server/kanban-run-mirror.d.ts.map +1 -0
- package/dist/server/kanban-supervisor.d.ts +47 -0
- package/dist/server/kanban-supervisor.d.ts.map +1 -0
- package/dist/server/mailbox-handlers.d.ts +12 -4
- package/dist/server/mailbox-handlers.d.ts.map +1 -1
- package/dist/server/mailbox-routes.d.ts +8 -0
- package/dist/server/mailbox-routes.d.ts.map +1 -1
- package/dist/server/mcp-handlers.d.ts +4 -0
- package/dist/server/mcp-handlers.d.ts.map +1 -1
- package/dist/server/memory-handlers.d.ts +54 -46
- package/dist/server/memory-handlers.d.ts.map +1 -1
- package/dist/server/memory-routes.d.ts +11 -0
- package/dist/server/memory-routes.d.ts.map +1 -0
- package/dist/server/message-dispatcher.d.ts +3 -4
- package/dist/server/message-dispatcher.d.ts.map +1 -1
- package/dist/server/mode-handlers.d.ts +6 -15
- package/dist/server/mode-handlers.d.ts.map +1 -1
- package/dist/server/mode-operations.d.ts +24 -0
- package/dist/server/mode-operations.d.ts.map +1 -0
- package/dist/server/mode-routes.d.ts +2 -0
- package/dist/server/mode-routes.d.ts.map +1 -1
- package/dist/server/model-auto-discovery.d.ts +1 -1
- package/dist/server/model-auto-discovery.d.ts.map +1 -1
- package/dist/server/model-catalog.d.ts +1 -1
- package/dist/server/model-catalog.d.ts.map +1 -1
- package/dist/server/model-operations.d.ts +29 -0
- package/dist/server/model-operations.d.ts.map +1 -0
- package/dist/server/network-info.d.ts +50 -0
- package/dist/server/network-info.d.ts.map +1 -0
- package/dist/server/path-containment.d.ts.map +1 -1
- package/dist/server/port-utils.d.ts +18 -25
- package/dist/server/port-utils.d.ts.map +1 -1
- package/dist/server/pre-context-services.d.ts +32 -5
- package/dist/server/pre-context-services.d.ts.map +1 -1
- package/dist/server/pref-helpers.d.ts +1 -3
- package/dist/server/pref-helpers.d.ts.map +1 -1
- package/dist/server/prefs-handlers.d.ts +22 -0
- package/dist/server/prefs-handlers.d.ts.map +1 -0
- package/dist/server/prefs-routes.d.ts +5 -0
- package/dist/server/prefs-routes.d.ts.map +1 -1
- package/dist/server/privileged-actions.d.ts +16 -0
- package/dist/server/privileged-actions.d.ts.map +1 -0
- package/dist/server/process-handlers.d.ts +8 -6
- package/dist/server/process-handlers.d.ts.map +1 -1
- package/dist/server/process-routes.d.ts +9 -0
- package/dist/server/process-routes.d.ts.map +1 -0
- package/dist/server/project-handlers.d.ts +25 -33
- package/dist/server/project-handlers.d.ts.map +1 -1
- package/dist/server/projects-manifest.d.ts +8 -0
- package/dist/server/projects-manifest.d.ts.map +1 -1
- package/dist/server/prompts-handlers.d.ts +2 -1
- package/dist/server/prompts-handlers.d.ts.map +1 -1
- package/dist/server/provider-config-io.d.ts +2 -2
- package/dist/server/provider-config-io.d.ts.map +1 -1
- package/dist/server/provider-config-standalone.d.ts +5 -3
- package/dist/server/provider-config-standalone.d.ts.map +1 -1
- package/dist/server/provider-handlers.d.ts +63 -6
- package/dist/server/provider-handlers.d.ts.map +1 -1
- package/dist/server/provider-keys.d.ts +1 -1
- package/dist/server/provider-keys.d.ts.map +1 -1
- package/dist/server/provider-routes.d.ts +28 -2
- package/dist/server/provider-routes.d.ts.map +1 -1
- package/dist/server/provider-store.d.ts +5 -4
- package/dist/server/provider-store.d.ts.map +1 -1
- package/dist/server/route-family-dispatcher.d.ts +71 -0
- package/dist/server/route-family-dispatcher.d.ts.map +1 -0
- package/dist/server/routes.d.ts +17 -7
- package/dist/server/routes.d.ts.map +1 -1
- package/dist/server/sdd-board-ws-handler.d.ts +5 -1
- package/dist/server/sdd-board-ws-handler.d.ts.map +1 -1
- package/dist/server/sdd-wizard-wiring.d.ts +14 -3
- package/dist/server/sdd-wizard-wiring.d.ts.map +1 -1
- package/dist/server/sdd-wizard-ws-handler.d.ts.map +1 -1
- package/dist/server/server-runtime.d.ts +16 -12
- package/dist/server/server-runtime.d.ts.map +1 -1
- package/dist/server/session-handlers.d.ts +30 -11
- package/dist/server/session-handlers.d.ts.map +1 -1
- package/dist/server/session-history.d.ts +1 -1
- package/dist/server/session-history.d.ts.map +1 -1
- package/dist/server/setup-event-projection.d.ts +10 -0
- package/dist/server/setup-event-projection.d.ts.map +1 -0
- package/dist/server/setup-events-watcher.d.ts +13 -0
- package/dist/server/setup-events-watcher.d.ts.map +1 -0
- package/dist/server/setup-events.d.ts +11 -21
- package/dist/server/setup-events.d.ts.map +1 -1
- package/dist/server/setup-screen.d.ts +2 -1
- package/dist/server/setup-screen.d.ts.map +1 -1
- package/dist/server/shell-open.d.ts +26 -2
- package/dist/server/shell-open.d.ts.map +1 -1
- package/dist/server/skills-handlers.d.ts +2 -2
- package/dist/server/skills-handlers.d.ts.map +1 -1
- package/dist/server/specs-ws-handler.d.ts.map +1 -1
- package/dist/server/standalone-session-identity.d.ts +3 -2
- package/dist/server/standalone-session-identity.d.ts.map +1 -1
- package/dist/server/start-webui.d.ts +9 -1
- package/dist/server/start-webui.d.ts.map +1 -1
- package/dist/server/stream-coalescer.d.ts +49 -0
- package/dist/server/stream-coalescer.d.ts.map +1 -0
- package/dist/server/techstack-handlers.d.ts +12 -2
- package/dist/server/techstack-handlers.d.ts.map +1 -1
- package/dist/server/terminal-ws-handler.d.ts +5 -3
- package/dist/server/terminal-ws-handler.d.ts.map +1 -1
- package/dist/server/types.d.ts +10 -3
- package/dist/server/types.d.ts.map +1 -1
- package/dist/server/worklist-routes.d.ts +21 -0
- package/dist/server/worklist-routes.d.ts.map +1 -0
- package/dist/server/worktree-routes.d.ts +10 -0
- package/dist/server/worktree-routes.d.ts.map +1 -0
- package/dist/server/worktree-ws-handler.d.ts +2 -1
- package/dist/server/worktree-ws-handler.d.ts.map +1 -1
- package/dist/server/ws-auth.d.ts.map +1 -1
- package/dist/server/ws-payload-validation.d.ts +11 -0
- package/dist/server/ws-payload-validation.d.ts.map +1 -1
- package/dist/server/ws-utils.d.ts +8 -0
- package/dist/server/ws-utils.d.ts.map +1 -1
- package/package.json +14 -10
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process-routes.d.ts","sourceRoot":"","sources":["../../src/server/process-routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACpE,IAAI,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IACpE,OAAO,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,eAAe,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CACxE;AAED,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,SAAS,EACb,GAAG,EAAE,eAAe,EACpB,QAAQ,EAAE,oBAAoB,GAC7B,OAAO,CAAC,OAAO,CAAC,CAclB"}
|
|
@@ -1,52 +1,44 @@
|
|
|
1
|
+
import { DefaultSessionStore } from '@wrongstack/core/storage';
|
|
2
|
+
import type { Context } from '@wrongstack/core/agent';
|
|
3
|
+
import type { SessionStore, TokenCounter } from '@wrongstack/core/types';
|
|
1
4
|
import type { WebSocket } from 'ws';
|
|
2
|
-
import type { Context, DefaultSessionStore, MemoryStore, DefaultModeStore, SkillLoader, ToolRegistry } from '@wrongstack/core';
|
|
3
|
-
import type { DefaultTokenCounter } from '@wrongstack/core/infrastructure';
|
|
4
|
-
import type { ConnectedClient } from './types.js';
|
|
5
5
|
import type { ProjectRouteHandlers } from './project-routes.js';
|
|
6
|
-
type
|
|
7
|
-
type
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
maxContext: number;
|
|
12
|
-
inputCost: number;
|
|
13
|
-
outputCost: number;
|
|
14
|
-
cacheReadCost: number;
|
|
15
|
-
projectName: string;
|
|
16
|
-
projectRoot: string;
|
|
17
|
-
cwd: string;
|
|
18
|
-
mode: string;
|
|
19
|
-
contextMode: string;
|
|
6
|
+
import type { ConnectedClient } from './types.js';
|
|
7
|
+
type Session = Awaited<ReturnType<SessionStore['create']>>;
|
|
8
|
+
type OutboundMessage = {
|
|
9
|
+
type: string;
|
|
10
|
+
payload: unknown;
|
|
20
11
|
};
|
|
21
|
-
type ModelCapabilities = unknown;
|
|
22
12
|
export interface ProjectHandlersContext {
|
|
23
13
|
globalConfigPath: string;
|
|
24
14
|
wpaths: {
|
|
25
15
|
globalRoot: string;
|
|
26
16
|
};
|
|
27
|
-
clients
|
|
17
|
+
clients?: Map<WebSocket, ConnectedClient>;
|
|
18
|
+
sendMessage?: (ws: WebSocket, message: OutboundMessage) => void;
|
|
19
|
+
broadcastMessage?: (message: OutboundMessage) => void;
|
|
28
20
|
context: Context;
|
|
29
|
-
|
|
30
|
-
memoryStore: MemoryStore;
|
|
31
|
-
skillLoader: SkillLoader | undefined;
|
|
32
|
-
modelCapabilities: ModelCapabilities;
|
|
33
|
-
toolRegistry: ToolRegistry;
|
|
34
|
-
tokenCounter: DefaultTokenCounter;
|
|
21
|
+
tokenCounter: TokenCounter;
|
|
35
22
|
config: {
|
|
36
23
|
provider: string;
|
|
37
24
|
model: string;
|
|
38
25
|
};
|
|
39
|
-
|
|
26
|
+
getConfig?: () => {
|
|
27
|
+
provider: string;
|
|
28
|
+
model: string;
|
|
29
|
+
};
|
|
40
30
|
getProjectRoot: () => string;
|
|
41
31
|
getSession: () => Session;
|
|
42
|
-
setProjectRoot: (
|
|
43
|
-
setWorkingDir: (
|
|
44
|
-
setSession: (
|
|
45
|
-
setSessionStore: (
|
|
46
|
-
setSessionStartedAt
|
|
47
|
-
/** Abort + clear any in-flight runLock before switching projects. */
|
|
32
|
+
setProjectRoot: (projectRoot: string) => void;
|
|
33
|
+
setWorkingDir: (workingDir: string) => void;
|
|
34
|
+
setSession: (session: Session) => void;
|
|
35
|
+
setSessionStore: (store: DefaultSessionStore) => void;
|
|
36
|
+
setSessionStartedAt?: (startedAt: number) => void;
|
|
48
37
|
abortRunLock: () => void;
|
|
49
|
-
|
|
38
|
+
abortAllRuns?: () => void;
|
|
39
|
+
onSessionSwapped?: (sessionId: string) => void | Promise<void>;
|
|
40
|
+
allowProjectMutations?: boolean;
|
|
41
|
+
sessionStartPayload: (overrides?: Record<string, unknown>) => Promise<unknown>;
|
|
50
42
|
}
|
|
51
43
|
export declare function createProjectHandlers(ctx: ProjectHandlersContext): ProjectRouteHandlers;
|
|
52
44
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-handlers.d.ts","sourceRoot":"","sources":["../../src/server/project-handlers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"project-handlers.d.ts","sourceRoot":"","sources":["../../src/server/project-handlers.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,mBAAmB,EACpB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAEpC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEhE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAQlD,KAAK,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC3D,KAAK,eAAe,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AAE1D,MAAM,WAAW,sBAAsB;IACrC,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/B,OAAO,CAAC,EAAE,GAAG,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IAC1C,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;IAChE,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,CAAC;IACtD,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,YAAY,CAAC;IAC3B,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACtD,cAAc,EAAE,MAAM,MAAM,CAAC;IAC7B,UAAU,EAAE,MAAM,OAAO,CAAC;IAC1B,cAAc,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,aAAa,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,UAAU,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,eAAe,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IACtD,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,gBAAgB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,mBAAmB,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAChF;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,sBAAsB,GAAG,oBAAoB,CA0MvF"}
|
|
@@ -2,6 +2,8 @@ export interface ProjectEntry {
|
|
|
2
2
|
name: string;
|
|
3
3
|
root: string;
|
|
4
4
|
slug: string;
|
|
5
|
+
/** Repo-committed identity shared by clones, worktrees, and machines. */
|
|
6
|
+
projectId?: string | undefined;
|
|
5
7
|
lastSeen?: string | undefined;
|
|
6
8
|
createdAt?: string | undefined;
|
|
7
9
|
/** Working directory of the most recent session (may differ from root). */
|
|
@@ -15,4 +17,10 @@ export declare function loadManifest(globalConfigPath: string): Promise<Projects
|
|
|
15
17
|
export declare function saveManifest(manifest: ProjectsManifest, globalConfigPath: string): Promise<void>;
|
|
16
18
|
export declare function generateProjectSlug(rootPath: string): string;
|
|
17
19
|
export declare function ensureProjectDataDir(slug: string, globalConfigPath: string): Promise<string>;
|
|
20
|
+
/** Register or refresh a project with a serialized read-modify-write. */
|
|
21
|
+
export declare function touchProjectInManifest(options: {
|
|
22
|
+
projectRoot: string;
|
|
23
|
+
workingDir?: string | undefined;
|
|
24
|
+
name?: string | undefined;
|
|
25
|
+
}, globalConfigPath: string): Promise<ProjectEntry>;
|
|
18
26
|
//# sourceMappingURL=projects-manifest.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"projects-manifest.d.ts","sourceRoot":"","sources":["../../src/server/projects-manifest.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"projects-manifest.d.ts","sourceRoot":"","sources":["../../src/server/projects-manifest.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,2EAA2E;IAC3E,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACrC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED,wBAAgB,gBAAgB,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAGjE;AAED,wBAAsB,YAAY,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAQtF;AAED,wBAAsB,YAAY,CAChC,QAAQ,EAAE,gBAAgB,EAC1B,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,IAAI,CAAC,CAIf;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAI5D;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,MAAM,CAAC,CAKjB;AAED,yEAAyE;AACzE,wBAAsB,sBAAsB,CAC1C,OAAO,EAAE;IACP,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B,EACD,gBAAgB,EAAE,MAAM,GACvB,OAAO,CAAC,YAAY,CAAC,CAiCvB"}
|
|
@@ -15,7 +15,8 @@
|
|
|
15
15
|
* handlers never execute it; the client inserts a chosen prompt into the chat
|
|
16
16
|
* input as an ordinary user turn.
|
|
17
17
|
*/
|
|
18
|
-
import type {
|
|
18
|
+
import type { PromptUsageStore } from '@wrongstack/core/storage';
|
|
19
|
+
import type { PromptLoader } from '@wrongstack/core/types';
|
|
19
20
|
import { send } from './ws-utils.js';
|
|
20
21
|
export interface PromptsContext {
|
|
21
22
|
/** Backs all prompt ops. Absent ⇒ feature unavailable. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts-handlers.d.ts","sourceRoot":"","sources":["../../src/server/prompts-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"prompts-handlers.d.ts","sourceRoot":"","sources":["../../src/server/prompts-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAe,YAAY,EAAkB,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAAc,IAAI,EAAE,MAAM,eAAe,CAAC;AA+BjD,MAAM,WAAW,cAAc;IAC7B,0DAA0D;IAC1D,YAAY,EAAE,YAAY,GAAG,SAAS,CAAC;IACvC,yEAAyE;IACzE,WAAW,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;CAC5C;AAiBD,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBtF;AAED,wBAAsB,mBAAmB,CACvC,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,OAAO,GACX,OAAO,CAAC,IAAI,CAAC,CAkBf;AAED,wBAAsB,oBAAoB,CACxC,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,OAAO,GACX,OAAO,CAAC,IAAI,CAAC,CAoCf;AAED,wBAAsB,qBAAqB,CACzC,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,OAAO,GACX,OAAO,CAAC,IAAI,CAAC,CAyBf;AAED,wBAAsB,mBAAmB,CACvC,EAAE,EAAE,MAAM,EACV,GAAG,EAAE,cAAc,EACnB,GAAG,EAAE,OAAO,GACX,OAAO,CAAC,IAAI,CAAC,CAoDf;AAED,mFAAmF;AACnF,wBAAsB,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAYpG;AAED,6FAA6F;AAC7F,wBAAsB,mBAAmB,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAWxF;AAED,6EAA6E;AAC7E,KAAK,MAAM,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { type ProviderConfig, type SecretVault } from '@wrongstack/core';
|
|
1
|
+
import { type ProviderConfig, type SecretVault } from '@wrongstack/core/types';
|
|
2
2
|
/**
|
|
3
|
-
* Read the `providers` section from
|
|
3
|
+
* Read the `providers` section from a profile config, decrypting
|
|
4
4
|
* secret-bearing fields. Returns an empty record when the config file
|
|
5
5
|
* doesn't exist or has no `providers` key.
|
|
6
6
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-config-io.d.ts","sourceRoot":"","sources":["../../src/server/provider-config-io.ts"],"names":[],"mappings":"AAUA,OAAO,EAAe,KAAK,cAAc,EAAE,KAAK,WAAW,
|
|
1
|
+
{"version":3,"file":"provider-config-io.d.ts","sourceRoot":"","sources":["../../src/server/provider-config-io.ts"],"names":[],"mappings":"AAUA,OAAO,EAAe,KAAK,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAI5F;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,WAAW,GACjB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAezC;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CACjC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,EACzC,iBAAiB,CAAC,EAAE,MAAM,GAAG,SAAS,GACrC,OAAO,CAAC,IAAI,CAAC,CAqCf"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { ProviderConfig } from '@wrongstack/core/types';
|
|
2
2
|
/**
|
|
3
3
|
* Small helper for the standalone WebUI entry point: create a
|
|
4
|
-
* `{ load, save }` pair from a config path alone
|
|
5
|
-
*
|
|
4
|
+
* `{ load, save }` pair from a config path alone. Profile configs still use
|
|
5
|
+
* the shared `~/.wrongstack/.key` vault key. The `--webui`
|
|
6
6
|
* CLI mode and the standalone server both need to read/write the
|
|
7
7
|
* `providers` map identically.
|
|
8
8
|
*/
|
|
@@ -10,4 +10,6 @@ export declare function createProviderConfigIO(configPath: string): {
|
|
|
10
10
|
load: () => Promise<Record<string, ProviderConfig>>;
|
|
11
11
|
save: (providers: Record<string, ProviderConfig>) => Promise<void>;
|
|
12
12
|
};
|
|
13
|
+
/** Resolve the shared vault key for either a root bootstrap or profile config path. */
|
|
14
|
+
export declare function vaultKeyFileForConfigPath(configPath: string): string;
|
|
13
15
|
//# sourceMappingURL=provider-config-standalone.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-config-standalone.d.ts","sourceRoot":"","sources":["../../src/server/provider-config-standalone.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"provider-config-standalone.d.ts","sourceRoot":"","sources":["../../src/server/provider-config-standalone.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7D;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM;IAKrD,IAAI;IACJ,IAAI,cAAc,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC;EAGnD;AAED,uFAAuF;AACvF,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAKpE"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { ModelsRegistry, ProviderConfig } from '@wrongstack/core';
|
|
1
|
+
import type { ModelsRegistry, ProviderConfig } from '@wrongstack/core/types';
|
|
3
2
|
import { type OAuthKind } from '@wrongstack/providers/oauth';
|
|
3
|
+
import type { WebSocket } from 'ws';
|
|
4
4
|
import type { ConnectedClient, WSServerMessage } from './types.js';
|
|
5
5
|
/**
|
|
6
6
|
* Wire shape of one saved provider as broadcast over `providers.saved`.
|
|
@@ -46,10 +46,9 @@ export declare function probeModelDescriptors(cfg: ProviderConfig): Promise<Arra
|
|
|
46
46
|
capabilities: [];
|
|
47
47
|
}>>;
|
|
48
48
|
export interface ProviderHandlerDeps {
|
|
49
|
-
|
|
50
|
-
/** Path to the active profile config. */
|
|
49
|
+
/** Path to the active profile config; the only provider mutation target. */
|
|
51
50
|
profileConfigPath: string;
|
|
52
|
-
vault: import('@wrongstack/core').SecretVault;
|
|
51
|
+
vault: import('@wrongstack/core/types').SecretVault;
|
|
53
52
|
/** Shared config write lock — serialized via chained promises */
|
|
54
53
|
setConfigWriteLock: (lock: Promise<void>) => void;
|
|
55
54
|
getConfigWriteLock: () => Promise<void>;
|
|
@@ -59,8 +58,66 @@ export interface ProviderHandlerDeps {
|
|
|
59
58
|
clients: Map<WebSocket, ConnectedClient>;
|
|
60
59
|
/** Used by the ChatGPT OAuth flow's tier-2 model lookup (best-effort). */
|
|
61
60
|
modelsRegistry?: ModelsRegistry | undefined;
|
|
61
|
+
hasActiveModel?: (() => boolean) | undefined;
|
|
62
|
+
onProvidersLoaded?: ((providers: Record<string, ProviderConfig>) => void | Promise<void>) | undefined;
|
|
63
|
+
applyModelSwitch?: ((providerId: string, modelId: string) => Promise<void>) | undefined;
|
|
64
|
+
}
|
|
65
|
+
export interface ProviderPersistence {
|
|
66
|
+
load(): Promise<Record<string, ProviderConfig>>;
|
|
67
|
+
save(providers: Record<string, ProviderConfig>): Promise<void>;
|
|
68
|
+
}
|
|
69
|
+
export interface ProviderOperationsDeps {
|
|
70
|
+
providerStore: ProviderPersistence;
|
|
71
|
+
broadcast: (message: WSServerMessage) => void;
|
|
72
|
+
send?: ((ws: WebSocket, message: WSServerMessage) => void) | undefined;
|
|
73
|
+
modelsRegistry?: ModelsRegistry | undefined;
|
|
74
|
+
log?: ((message: string) => void) | undefined;
|
|
75
|
+
hasActiveModel?: (() => boolean) | undefined;
|
|
76
|
+
onProvidersLoaded?: ((providers: Record<string, ProviderConfig>) => void | Promise<void>) | undefined;
|
|
77
|
+
applyModelSwitch?: ((providerId: string, modelId: string) => Promise<void>) | undefined;
|
|
62
78
|
}
|
|
79
|
+
export declare function createProviderOperations(deps: ProviderOperationsDeps): {
|
|
80
|
+
handleProvidersList: (ws: WebSocket) => Promise<void>;
|
|
81
|
+
handleProvidersSaved: (ws: WebSocket) => Promise<void>;
|
|
82
|
+
handleProviderModels: (ws: WebSocket, providerId: string) => Promise<void>;
|
|
83
|
+
adoptDefaultProviderIfUnset: (providerId: string) => Promise<void>;
|
|
84
|
+
broadcastSaved: (providers: Record<string, ProviderConfig>) => void;
|
|
85
|
+
handleKeyUpsert: (ws: WebSocket, providerId: string, label: string, apiKey: string) => Promise<void>;
|
|
86
|
+
handleKeyDelete: (ws: WebSocket, providerId: string, label: string) => Promise<void>;
|
|
87
|
+
handleKeySetActive: (ws: WebSocket, providerId: string, label: string) => Promise<void>;
|
|
88
|
+
handleProviderAdd: (ws: WebSocket, payload: {
|
|
89
|
+
id: string;
|
|
90
|
+
family: string;
|
|
91
|
+
baseUrl?: string | undefined;
|
|
92
|
+
apiKey?: string | undefined;
|
|
93
|
+
}) => Promise<void>;
|
|
94
|
+
handleProviderRemove: (ws: WebSocket, providerId: string) => Promise<void>;
|
|
95
|
+
handleProviderClearModels: (ws: WebSocket, providerId: string) => Promise<void>;
|
|
96
|
+
handleProviderUndoClear: (ws: WebSocket, providerId: string, previousModels: string[]) => Promise<void>;
|
|
97
|
+
handleProviderUpdate: (ws: WebSocket, payload: {
|
|
98
|
+
id: string;
|
|
99
|
+
family?: string | undefined;
|
|
100
|
+
baseUrl?: string | undefined;
|
|
101
|
+
envVars?: string[] | undefined;
|
|
102
|
+
models?: string[] | undefined;
|
|
103
|
+
}) => Promise<void>;
|
|
104
|
+
handleProviderProbe: (ws: WebSocket, providerId: string, timeoutMs?: number) => Promise<void>;
|
|
105
|
+
handleOAuthStart: (ws: WebSocket, kind: OAuthKind, customProviderId?: string) => Promise<void>;
|
|
106
|
+
handleOAuthCode: (ws: WebSocket, kind: OAuthKind, input: string) => Promise<void>;
|
|
107
|
+
handleOAuthCancel: (ws: WebSocket, kind: OAuthKind) => void;
|
|
108
|
+
loadConfigProviders: () => Promise<Record<string, ProviderConfig>>;
|
|
109
|
+
};
|
|
110
|
+
/**
|
|
111
|
+
* Standalone-host adapter. It preserves the existing serialized profile-file
|
|
112
|
+
* persistence while delegating all provider and OAuth behavior to the
|
|
113
|
+
* store-backed canonical operations factory.
|
|
114
|
+
*/
|
|
63
115
|
export declare function createProviderHandlers(deps: ProviderHandlerDeps): {
|
|
116
|
+
handleProvidersList: (ws: WebSocket) => Promise<void>;
|
|
117
|
+
handleProvidersSaved: (ws: WebSocket) => Promise<void>;
|
|
118
|
+
handleProviderModels: (ws: WebSocket, providerId: string) => Promise<void>;
|
|
119
|
+
adoptDefaultProviderIfUnset: (providerId: string) => Promise<void>;
|
|
120
|
+
broadcastSaved: (providers: Record<string, ProviderConfig>) => void;
|
|
64
121
|
handleKeyUpsert: (ws: WebSocket, providerId: string, label: string, apiKey: string) => Promise<void>;
|
|
65
122
|
handleKeyDelete: (ws: WebSocket, providerId: string, label: string) => Promise<void>;
|
|
66
123
|
handleKeySetActive: (ws: WebSocket, providerId: string, label: string) => Promise<void>;
|
|
@@ -81,7 +138,7 @@ export declare function createProviderHandlers(deps: ProviderHandlerDeps): {
|
|
|
81
138
|
models?: string[] | undefined;
|
|
82
139
|
}) => Promise<void>;
|
|
83
140
|
handleProviderProbe: (ws: WebSocket, providerId: string, timeoutMs?: number) => Promise<void>;
|
|
84
|
-
handleOAuthStart: (ws: WebSocket, kind: OAuthKind) => Promise<void>;
|
|
141
|
+
handleOAuthStart: (ws: WebSocket, kind: OAuthKind, customProviderId?: string) => Promise<void>;
|
|
85
142
|
handleOAuthCode: (ws: WebSocket, kind: OAuthKind, input: string) => Promise<void>;
|
|
86
143
|
handleOAuthCancel: (ws: WebSocket, kind: OAuthKind) => void;
|
|
87
144
|
loadConfigProviders: () => Promise<Record<string, ProviderConfig>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-handlers.d.ts","sourceRoot":"","sources":["../../src/server/provider-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"provider-handlers.d.ts","sourceRoot":"","sources":["../../src/server/provider-handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
* Extracted from `index.ts`; transforms mutate the passed record in place, the
|
|
14
14
|
* same way the original handlers did before calling `saveProviders`.
|
|
15
15
|
*/
|
|
16
|
-
import type { ProviderApiKey, ProviderConfig } from '@wrongstack/core';
|
|
16
|
+
import type { ProviderApiKey, ProviderConfig } from '@wrongstack/core/types';
|
|
17
17
|
export type ProvidersRecord = Record<string, ProviderConfig>;
|
|
18
18
|
export interface KeyOpResult {
|
|
19
19
|
ok: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-keys.d.ts","sourceRoot":"","sources":["../../src/server/provider-keys.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"provider-keys.d.ts","sourceRoot":"","sources":["../../src/server/provider-keys.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7E,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;AAE7D,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,cAAc,GAAG,cAAc,EAAE,CAQnE;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,IAAI,CAc/E;AAED,+EAA+E;AAC/E,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAIzD;AAgCD,iFAAiF;AACjF,wBAAgB,SAAS,CACvB,SAAS,EAAE,eAAe,EAC1B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,WAAW,CA4Bb;AAED,gFAAgF;AAChF,wBAAgB,SAAS,CACvB,SAAS,EAAE,eAAe,EAC1B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,GACZ,WAAW,CAcb;AAED,wDAAwD;AACxD,wBAAgB,YAAY,CAC1B,SAAS,EAAE,eAAe,EAC1B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,GACZ,WAAW,CASb;AAED,gFAAgF;AAChF,wBAAgB,WAAW,CACzB,SAAS,EAAE,eAAe,EAC1B,OAAO,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,EAClG,MAAM,EAAE,MAAM,GACb,WAAW,CA0Bb;AAED,kDAAkD;AAClD,wBAAgB,cAAc,CAAC,SAAS,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,GAAG,WAAW,CAM1F"}
|
|
@@ -1,6 +1,31 @@
|
|
|
1
1
|
import type { WebSocket } from 'ws';
|
|
2
|
-
import type { createProviderHandlers } from './provider-handlers.js';
|
|
3
2
|
import type { WSClientMessage } from './types.js';
|
|
3
|
+
type OAuthKind = 'chatgpt' | 'claude' | 'copilot';
|
|
4
|
+
export interface ProviderMutationHandlers {
|
|
5
|
+
handleKeyUpsert: (ws: WebSocket, providerId: string, label: string, apiKey: string) => Promise<void>;
|
|
6
|
+
handleKeyDelete: (ws: WebSocket, providerId: string, label: string) => Promise<void>;
|
|
7
|
+
handleKeySetActive: (ws: WebSocket, providerId: string, label: string) => Promise<void>;
|
|
8
|
+
handleProviderAdd: (ws: WebSocket, payload: {
|
|
9
|
+
id: string;
|
|
10
|
+
family: string;
|
|
11
|
+
baseUrl?: string | undefined;
|
|
12
|
+
apiKey?: string | undefined;
|
|
13
|
+
}) => Promise<void>;
|
|
14
|
+
handleProviderRemove: (ws: WebSocket, providerId: string) => Promise<void>;
|
|
15
|
+
handleProviderClearModels: (ws: WebSocket, providerId: string) => Promise<void>;
|
|
16
|
+
handleProviderUndoClear: (ws: WebSocket, providerId: string, previousModels: string[]) => Promise<void>;
|
|
17
|
+
handleProviderUpdate: (ws: WebSocket, payload: {
|
|
18
|
+
id: string;
|
|
19
|
+
family?: string | undefined;
|
|
20
|
+
baseUrl?: string | undefined;
|
|
21
|
+
envVars?: string[] | undefined;
|
|
22
|
+
models?: string[] | undefined;
|
|
23
|
+
}) => Promise<void>;
|
|
24
|
+
handleProviderProbe: (ws: WebSocket, providerId: string, timeoutMs?: number | undefined) => Promise<void>;
|
|
25
|
+
handleOAuthStart: (ws: WebSocket, kind: OAuthKind, providerId?: string | undefined) => Promise<void>;
|
|
26
|
+
handleOAuthCode: (ws: WebSocket, kind: OAuthKind, input: string) => Promise<void>;
|
|
27
|
+
handleOAuthCancel: (ws: WebSocket, kind: OAuthKind) => void;
|
|
28
|
+
}
|
|
4
29
|
export interface ProviderRouteHandlers {
|
|
5
30
|
listProviders: (ws: WebSocket, msg: WSClientMessage) => Promise<void>;
|
|
6
31
|
listSavedProviders: (ws: WebSocket, msg: WSClientMessage) => Promise<void>;
|
|
@@ -9,7 +34,8 @@ export interface ProviderRouteHandlers {
|
|
|
9
34
|
refineModel: (ws: WebSocket, msg: WSClientMessage) => Promise<void>;
|
|
10
35
|
/** Adopt a just-added provider as the live default when no model is active. */
|
|
11
36
|
adoptDefaultProviderIfUnset: (providerId: string) => Promise<void>;
|
|
12
|
-
providerHandlers:
|
|
37
|
+
providerHandlers: ProviderMutationHandlers;
|
|
13
38
|
}
|
|
14
39
|
export declare function handleProviderRoute(ws: WebSocket, msg: WSClientMessage, routes: ProviderRouteHandlers): Promise<boolean>;
|
|
40
|
+
export {};
|
|
15
41
|
//# sourceMappingURL=provider-routes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-routes.d.ts","sourceRoot":"","sources":["../../src/server/provider-routes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"provider-routes.d.ts","sourceRoot":"","sources":["../../src/server/provider-routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
|
-
import type { DefaultSecretVault } from '@wrongstack/core';
|
|
2
|
-
import type { ProviderApiKey, ProviderConfig } from '@wrongstack/core';
|
|
1
|
+
import type { DefaultSecretVault } from '@wrongstack/core/security';
|
|
2
|
+
import type { ProviderApiKey, ProviderConfig } from '@wrongstack/core/types';
|
|
3
3
|
export interface ProviderStoreDeps {
|
|
4
|
-
|
|
4
|
+
/** Active profile config path. */
|
|
5
|
+
profileConfigPath: string;
|
|
5
6
|
vault: DefaultSecretVault;
|
|
6
7
|
}
|
|
7
8
|
/**
|
|
8
9
|
* Serializes concurrent config writes to prevent races between model.switch
|
|
9
|
-
* and key.add/key.update handlers that both
|
|
10
|
+
* and key.add/key.update handlers that both mutate the profile config.
|
|
10
11
|
*/
|
|
11
12
|
export declare function createConfigWriteLock(): {
|
|
12
13
|
readonly current: Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-store.d.ts","sourceRoot":"","sources":["../../src/server/provider-store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"provider-store.d.ts","sourceRoot":"","sources":["../../src/server/provider-store.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7E,MAAM,WAAW,iBAAiB;IAChC,kCAAkC;IAClC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,KAAK,EAAE,kBAAkB,CAAC;CAC3B;AAED;;;GAGG;AACH,wBAAgB,qBAAqB;;;;uBAMZ,IAAI;;EAK5B;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IAChD,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,aAAa,CAAC,GAAG,EAAE,cAAc,GAAG,cAAc,EAAE,CAAC;IACrD,aAAa,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC;IACjE,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;CAC5C;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,iBAAiB,GAAG,aAAa,CAyE1E"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import type { WebSocket } from 'ws';
|
|
2
|
+
import { type AgentRosterRouteHandlers } from './agent-roster-routes.js';
|
|
3
|
+
import { type AutonomyRouteHandlers } from './autonomy-routes.js';
|
|
4
|
+
import { type BrainRouteHandlers } from './brain-routes.js';
|
|
5
|
+
import { type ChronicleRouteContext } from './chronicle-routes.js';
|
|
6
|
+
import { type ClientTransportRouteHandlers } from './client-transport-routes.js';
|
|
7
|
+
import { type CompletionRouteHandlers } from './completion-routes.js';
|
|
8
|
+
import { type ContentRouteContext } from './content-routes.js';
|
|
9
|
+
import { type ConversationRouteHandlers } from './conversation-routes.js';
|
|
10
|
+
import { type GoalRouteHandlers } from './goal-routes.js';
|
|
11
|
+
import { type GoalSnapshotRouteHandlers } from './goal-snapshot-routes.js';
|
|
12
|
+
import { type HostRouteHandlers } from './host-routes.js';
|
|
13
|
+
import { type IntrospectionRouteContext } from './introspection-routes.js';
|
|
14
|
+
import { type KanbanHostRouteHandlers } from './kanban-host-routes.js';
|
|
15
|
+
import { type KanbanRouteContext } from './kanban-routes.js';
|
|
16
|
+
import { type MailboxRouteHandlers } from './mailbox-routes.js';
|
|
17
|
+
import { type McpRouteHandlers } from './mcp-routes.js';
|
|
18
|
+
import { type MemoryRouteContext } from './memory-routes.js';
|
|
19
|
+
import { type ModeRouteHandlers } from './mode-routes.js';
|
|
20
|
+
import { type PrefsRouteHandlers } from './prefs-routes.js';
|
|
21
|
+
import { type ProcessRouteHandlers } from './process-routes.js';
|
|
22
|
+
import { type ProjectRouteHandlers } from './project-routes.js';
|
|
23
|
+
import { type ProviderRouteHandlers } from './provider-routes.js';
|
|
24
|
+
import { type SddBoardRouteHandlers } from './sdd-board-routes.js';
|
|
25
|
+
import { type SddWizardRouteHandlers } from './sdd-wizard-routes.js';
|
|
26
|
+
import { type SessionRouteHandlers } from './session-routes.js';
|
|
27
|
+
import { type ShellGitRouteHandlers } from './shell-git-routes.js';
|
|
28
|
+
import { type SpecsRouteHandlers } from './specs-routes.js';
|
|
29
|
+
import type { WSClientMessage } from './types.js';
|
|
30
|
+
import { type WorklistRouteHandlers } from './worklist-routes.js';
|
|
31
|
+
import { type WorktreeRouteHandlers } from './worktree-routes.js';
|
|
32
|
+
/** Host capabilities grouped by protocol family. Dispatch order lives here. */
|
|
33
|
+
export interface RouteFamilyTable {
|
|
34
|
+
shellGit: ShellGitRouteHandlers;
|
|
35
|
+
mailbox: MailboxRouteHandlers;
|
|
36
|
+
mcp: McpRouteHandlers;
|
|
37
|
+
provider: ProviderRouteHandlers;
|
|
38
|
+
session: SessionRouteHandlers;
|
|
39
|
+
project: ProjectRouteHandlers;
|
|
40
|
+
mode: ModeRouteHandlers;
|
|
41
|
+
prefs: PrefsRouteHandlers;
|
|
42
|
+
brain: BrainRouteHandlers;
|
|
43
|
+
worklist: WorklistRouteHandlers;
|
|
44
|
+
process: ProcessRouteHandlers;
|
|
45
|
+
host: HostRouteHandlers;
|
|
46
|
+
clientTransport: ClientTransportRouteHandlers;
|
|
47
|
+
conversation: ConversationRouteHandlers;
|
|
48
|
+
completion: CompletionRouteHandlers;
|
|
49
|
+
autonomy: AutonomyRouteHandlers;
|
|
50
|
+
goalSnapshot: GoalSnapshotRouteHandlers;
|
|
51
|
+
goal: GoalRouteHandlers;
|
|
52
|
+
specs: SpecsRouteHandlers;
|
|
53
|
+
sddBoard: SddBoardRouteHandlers;
|
|
54
|
+
sddWizard: SddWizardRouteHandlers;
|
|
55
|
+
worktree: WorktreeRouteHandlers;
|
|
56
|
+
kanbanHost: KanbanHostRouteHandlers;
|
|
57
|
+
agentRoster: AgentRosterRouteHandlers;
|
|
58
|
+
}
|
|
59
|
+
export interface RouteFamilyDispatcherOptions {
|
|
60
|
+
routes: RouteFamilyTable;
|
|
61
|
+
memory: MemoryRouteContext;
|
|
62
|
+
content: ContentRouteContext;
|
|
63
|
+
chronicle: ChronicleRouteContext;
|
|
64
|
+
introspection: IntrospectionRouteContext;
|
|
65
|
+
getKanbanContext: () => KanbanRouteContext;
|
|
66
|
+
beforeDispatch?: ((ws: WebSocket, message: WSClientMessage) => boolean | Promise<boolean>) | undefined;
|
|
67
|
+
onUnknown: (ws: WebSocket, message: WSClientMessage) => void | Promise<void>;
|
|
68
|
+
}
|
|
69
|
+
export type RouteFamilyDispatcher = (ws: WebSocket, message: WSClientMessage) => Promise<void>;
|
|
70
|
+
export declare function createRouteFamilyDispatcher(options: RouteFamilyDispatcherOptions): RouteFamilyDispatcher;
|
|
71
|
+
//# sourceMappingURL=route-family-dispatcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"route-family-dispatcher.d.ts","sourceRoot":"","sources":["../../src/server/route-family-dispatcher.ts"],"names":[],"mappings":"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"}
|
package/dist/server/routes.d.ts
CHANGED
|
@@ -1,19 +1,27 @@
|
|
|
1
|
-
import type { Agent, AgentPipelines,
|
|
1
|
+
import type { Agent, AgentPipelines, Context } from '@wrongstack/core/agent';
|
|
2
|
+
import type { ObservableBrainArbiter } from '@wrongstack/core/coordination';
|
|
3
|
+
import type { AutoCompactionMiddleware, BrainAutoRisk, BrainRuntime } from '@wrongstack/core/execution';
|
|
4
|
+
import type { Container, EventBus } from '@wrongstack/core/kernel';
|
|
5
|
+
import type { DefaultModeStore } from '@wrongstack/core/models';
|
|
6
|
+
import type { ProviderRegistry, ToolRegistry } from '@wrongstack/core/registry';
|
|
7
|
+
import type { SkillInstaller } from '@wrongstack/core/skills';
|
|
8
|
+
import type { Compactor, ConfigStore, Logger, MemoryPort, ModelsRegistry, PermissionPolicy, Provider, ProviderConfig, SecretVault, SessionStore, SkillLoader } from '@wrongstack/core/types';
|
|
2
9
|
import type { DefaultTokenCounter } from '@wrongstack/core/infrastructure';
|
|
3
10
|
import type { WebSocket, WebSocketServer } from 'ws';
|
|
4
11
|
type Session = Awaited<ReturnType<SessionStore['create']>>;
|
|
5
12
|
import type { Config } from '@wrongstack/core/types';
|
|
6
13
|
import type { MCPRegistry } from '@wrongstack/mcp';
|
|
14
|
+
import { type AutonomyRouteHandlers } from './autonomy-routes.js';
|
|
7
15
|
import type { BrainRouteHandlers } from './brain-routes.js';
|
|
8
16
|
import type { CollaborationWebSocketHandler } from './collaboration-ws-handler.js';
|
|
9
17
|
import type { CustomModeStore } from './custom-context-modes.js';
|
|
10
18
|
import type { GoalRouteHandlers } from './goal-routes.js';
|
|
11
19
|
import type { GoalWebSocketHandler } from './goal-ws-handler.js';
|
|
12
|
-
import type
|
|
20
|
+
import { type MailboxRouteHandlers } from './mailbox-routes.js';
|
|
13
21
|
import type { McpRouteHandlers } from './mcp-routes.js';
|
|
14
22
|
import type { ModeRouteHandlers } from './mode-routes.js';
|
|
15
|
-
import {
|
|
16
|
-
import type
|
|
23
|
+
import type { PendingConfirm } from './pending-confirms.js';
|
|
24
|
+
import { type PrefsRouteHandlers } from './prefs-routes.js';
|
|
17
25
|
import type { ProjectRouteHandlers } from './project-routes.js';
|
|
18
26
|
import type { ProviderRouteHandlers } from './provider-routes.js';
|
|
19
27
|
import type { SddBoardRouteHandlers } from './sdd-board-routes.js';
|
|
@@ -67,9 +75,10 @@ export interface WebuiMutableState {
|
|
|
67
75
|
* the duration of a session (the mutable ones live in `WebuiMutableState`).
|
|
68
76
|
*/
|
|
69
77
|
export interface WebuiDeps {
|
|
78
|
+
trustBoundary: import('@wrongstack/core/security').TrustBoundary;
|
|
70
79
|
agent: Agent;
|
|
71
80
|
context: Context;
|
|
72
|
-
container:
|
|
81
|
+
container: Container;
|
|
73
82
|
toolRegistry: ToolRegistry;
|
|
74
83
|
modelsRegistry: ModelsRegistry;
|
|
75
84
|
providerRegistry: ProviderRegistry;
|
|
@@ -91,7 +100,7 @@ export interface WebuiDeps {
|
|
|
91
100
|
pendingConfirms: Map<string, PendingConfirm>;
|
|
92
101
|
pipelines: AgentPipelines;
|
|
93
102
|
logger: Logger;
|
|
94
|
-
memoryStore:
|
|
103
|
+
memoryStore: MemoryPort;
|
|
95
104
|
modeStore: DefaultModeStore;
|
|
96
105
|
skillLoader: SkillLoader | undefined;
|
|
97
106
|
skillInstaller: SkillInstaller | undefined;
|
|
@@ -155,7 +164,7 @@ export interface WebuiCallbacks {
|
|
|
155
164
|
onSessionSwapped: (sessionId: string) => Promise<void>;
|
|
156
165
|
/** Re-build the AutoCompaction middleware denominator on model switch. */
|
|
157
166
|
updateAutoCompactionMaxContext: (newProvider: Provider, providerId?: string, providerCfg?: ProviderConfig | undefined) => Promise<void>;
|
|
158
|
-
/** Unified, serialized
|
|
167
|
+
/** Unified, serialized helper for active-profile config mutations. */
|
|
159
168
|
updateGlobalConfig: (mutate: (config: Record<string, unknown>) => void, errorLabel: string) => Promise<void>;
|
|
160
169
|
/** Persist the durable subset of context.meta prefs to config.json. */
|
|
161
170
|
persistPrefsToConfig: (payload: Record<string, unknown>) => Promise<void>;
|
|
@@ -168,6 +177,7 @@ export interface AllRoutes {
|
|
|
168
177
|
projectRoutes: ProjectRouteHandlers;
|
|
169
178
|
modeRoutes: ModeRouteHandlers;
|
|
170
179
|
prefsRoutes: PrefsRouteHandlers;
|
|
180
|
+
autonomyRoutes: AutonomyRouteHandlers;
|
|
171
181
|
shellGitRoutes: ShellGitRouteHandlers;
|
|
172
182
|
mailboxRoutes: MailboxRouteHandlers;
|
|
173
183
|
mcpRoutes: McpRouteHandlers;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/server/routes.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/server/routes.ts"],"names":[],"mappings":"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"}
|