openfox 2.0.74 → 2.0.75

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/{chat-handler-ETKFIHUO.js → chat-handler-QLMBYRDY.js} +14 -13
  2. package/dist/{chunk-YD6NDTKF.js → chunk-5GOOSZX7.js} +1 -1
  3. package/dist/chunk-6COWK53A.js +7 -0
  4. package/dist/{chunk-2VBETAU2.js → chunk-6ZMGWDOD.js} +86 -505
  5. package/dist/{chunk-2DCJERYX.js → chunk-CJ2AJ7HU.js} +3 -3
  6. package/dist/{chunk-ZRQDCQ7R.js → chunk-J3VQBVGO.js} +8 -6
  7. package/dist/chunk-KEVRZWL3.js +495 -0
  8. package/dist/{chunk-TMRFTWXP.js → chunk-LKUAKQZY.js} +37 -22
  9. package/dist/{chunk-PYB2UEC3.js → chunk-LTFB2WWE.js} +4 -4
  10. package/dist/{chunk-CHPRGEY5.js → chunk-LUG5QTFC.js} +2 -2
  11. package/dist/{chunk-QFR6JF32.js → chunk-MIJX54CG.js} +145 -48
  12. package/dist/{chunk-NOU2QIL5.js → chunk-O3NUNU4H.js} +5 -2
  13. package/dist/{chunk-R6L2QXQ5.js → chunk-PJQW6TYI.js} +15 -5
  14. package/dist/{chunk-6XKM25OT.js → chunk-YFFP4DR4.js} +4 -4
  15. package/dist/cli/dev.js +1 -1
  16. package/dist/cli/index.js +1 -1
  17. package/dist/{compactor-4UKYWC5F.js → compactor-AERNYEMP.js} +4 -4
  18. package/dist/{events-AEQ6GQXI.js → events-X353XCPN.js} +3 -3
  19. package/dist/install-CPOPMCSE.js +120 -0
  20. package/dist/{manager-24C2AXVF.js → manager-5GILDCVD.js} +3 -3
  21. package/dist/{orchestrator-O2YAAZ3U.js → orchestrator-BIFTALBG.js} +12 -11
  22. package/dist/package.json +1 -1
  23. package/dist/path-security-3FAIPJSV.js +50 -0
  24. package/dist/{processor-FKAS3K4L.js → processor-MQ47QSDR.js} +14 -13
  25. package/dist/{protocol-4QFU7WAI.js → protocol-EWEVW65B.js} +3 -3
  26. package/dist/{protocol-DGQWVFcP.d.ts → protocol-Sr6Jr4ZS.d.ts} +5 -2
  27. package/dist/{serve-T5U6SLB7.js → serve-UD27KOL2.js} +17 -16
  28. package/dist/server/index.d.ts +1 -1
  29. package/dist/server/index.js +15 -14
  30. package/dist/{server-T2YP3VT2.js → server-TJ3PP5EW.js} +14 -13
  31. package/dist/shared/index.d.ts +1 -1
  32. package/dist/shared/index.js +1 -1
  33. package/dist/{tools-APW7MY4E.js → tools-RZ464GUJ.js} +16 -14
  34. package/dist/{update-FWO365SV.js → update-MWIZH4P2.js} +12 -3
  35. package/dist/web/assets/{index-DZRcUhoE.css → index-BNVBxKnB.css} +1 -1
  36. package/dist/web/assets/{index-Xh2VHbZe.js → index-Bn4hwZeP.js} +74 -74
  37. package/dist/web/index.html +2 -2
  38. package/dist/web/sw.js +1 -1
  39. package/package.json +1 -1
  40. package/dist/chunk-3OZBPWHP.js +0 -7
@@ -1,3 +1,6 @@
1
+ import {
2
+ getDatabase
3
+ } from "./chunk-I4RWK2L2.js";
1
4
  import {
2
5
  buildContextMessagesFromEventHistory,
3
6
  buildMessagesFromStoredEvents,
@@ -6,9 +9,6 @@ import {
6
9
  foldSessionState,
7
10
  spreadOptionalMessageFields
8
11
  } from "./chunk-DJASQ2ZB.js";
9
- import {
10
- getDatabase
11
- } from "./chunk-I4RWK2L2.js";
12
12
  import {
13
13
  logger
14
14
  } from "./chunk-K44MW7JJ.js";
@@ -1460,4 +1460,4 @@ export {
1460
1460
  truncateSessionMessages,
1461
1461
  getRecentUserPromptsForSession
1462
1462
  };
1463
- //# sourceMappingURL=chunk-6XKM25OT.js.map
1463
+ //# sourceMappingURL=chunk-YFFP4DR4.js.map
package/dist/cli/dev.js CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  runCli
4
- } from "../chunk-R6L2QXQ5.js";
4
+ } from "../chunk-PJQW6TYI.js";
5
5
  import "../chunk-XY3LESVZ.js";
6
6
  import {
7
7
  logger
package/dist/cli/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  runCli
4
- } from "../chunk-R6L2QXQ5.js";
4
+ } from "../chunk-PJQW6TYI.js";
5
5
  import "../chunk-XY3LESVZ.js";
6
6
  import {
7
7
  logger
@@ -2,13 +2,13 @@ import {
2
2
  appendCompactionPrompt,
3
3
  getCompactionTarget,
4
4
  shouldCompact
5
- } from "./chunk-CHPRGEY5.js";
5
+ } from "./chunk-LUG5QTFC.js";
6
6
  import "./chunk-XWBNYU2L.js";
7
- import "./chunk-6XKM25OT.js";
8
- import "./chunk-DJASQ2ZB.js";
9
7
  import "./chunk-S7O77CVO.js";
10
8
  import "./chunk-QNKXZH3Z.js";
9
+ import "./chunk-YFFP4DR4.js";
11
10
  import "./chunk-I4RWK2L2.js";
11
+ import "./chunk-DJASQ2ZB.js";
12
12
  import "./chunk-J2GP3J3X.js";
13
13
  import "./chunk-V4IE7HJY.js";
14
14
  import "./chunk-YHEQTVFV.js";
@@ -20,4 +20,4 @@ export {
20
20
  getCompactionTarget,
21
21
  shouldCompact
22
22
  };
23
- //# sourceMappingURL=compactor-4UKYWC5F.js.map
23
+ //# sourceMappingURL=compactor-AERNYEMP.js.map
@@ -38,7 +38,8 @@ import {
38
38
  isStoredEvent,
39
39
  isTurnEvent,
40
40
  truncateSessionMessages
41
- } from "./chunk-6XKM25OT.js";
41
+ } from "./chunk-YFFP4DR4.js";
42
+ import "./chunk-I4RWK2L2.js";
42
43
  import {
43
44
  buildContextMessagesFromEventHistory,
44
45
  buildContextMessagesFromMessages,
@@ -56,7 +57,6 @@ import {
56
57
  foldTurnEventsToSnapshotMessages,
57
58
  getMessagesForWindow
58
59
  } from "./chunk-DJASQ2ZB.js";
59
- import "./chunk-I4RWK2L2.js";
60
60
  import "./chunk-K44MW7JJ.js";
61
61
  import "./chunk-5WRI5ZAA.js";
62
62
  export {
@@ -115,4 +115,4 @@ export {
115
115
  isTurnEvent,
116
116
  truncateSessionMessages
117
117
  };
118
- //# sourceMappingURL=events-AEQ6GQXI.js.map
118
+ //# sourceMappingURL=events-X353XCPN.js.map
@@ -0,0 +1,120 @@
1
+ import "./chunk-5WRI5ZAA.js";
2
+
3
+ // src/cli/install.ts
4
+ import { spawnSync } from "child_process";
5
+ import { access, mkdir, readFile, writeFile } from "fs/promises";
6
+ import { dirname, join } from "path";
7
+ import { homedir } from "os";
8
+ function npmGlobalPrefix(platform) {
9
+ const windows = platform === "win32";
10
+ const result = spawnSync(windows ? "npm.cmd" : "npm", ["prefix", "-g"], {
11
+ encoding: "utf-8",
12
+ windowsHide: true
13
+ });
14
+ return result.status === 0 ? (result.stdout ?? "").trim() : "(unavailable)";
15
+ }
16
+ function getLauncherPath(env = {}) {
17
+ const platform = env.platform ?? process.platform;
18
+ const home = env.home ?? homedir();
19
+ if (platform === "win32") {
20
+ const base = env.localAppData ?? process.env["LOCALAPPDATA"] ?? join(home, "AppData", "Local");
21
+ return join(base, "OpenFox", "bin", "openfox.cmd");
22
+ }
23
+ return join(home, ".local", "bin", "openfox");
24
+ }
25
+ function quoteShell(value) {
26
+ return `'${value.replaceAll("'", `'\\''`)}'`;
27
+ }
28
+ function buildLauncher(platform, nodeExecutable, cliExecutable) {
29
+ if (platform === "win32") {
30
+ return `@echo off\r
31
+ "${nodeExecutable}" "${cliExecutable}" %*\r
32
+ `;
33
+ }
34
+ return `#!/bin/sh
35
+ exec ${quoteShell(nodeExecutable)} ${quoteShell(cliExecutable)} "$@"
36
+ `;
37
+ }
38
+ function pathContains(directory, pathValue, platform) {
39
+ const normalize = (value) => platform === "win32" ? value.toLowerCase() : value;
40
+ const pathDelimiter = platform === "win32" ? ";" : ":";
41
+ return pathValue.split(pathDelimiter).filter(Boolean).some((entry) => normalize(entry.replace(/[\\/]$/, "")) === normalize(directory.replace(/[\\/]$/, "")));
42
+ }
43
+ async function fileExists(path) {
44
+ try {
45
+ await access(path);
46
+ return true;
47
+ } catch {
48
+ return false;
49
+ }
50
+ }
51
+ async function checkInstall(env = {}) {
52
+ const platform = env.platform ?? process.platform;
53
+ const launcherPath = getLauncherPath(env);
54
+ const launcherDirectory = dirname(launcherPath);
55
+ const nodeExecutable = env.nodeExecutable ?? process.execPath;
56
+ const cliExecutable = env.cliExecutable ?? process.argv[1] ?? "";
57
+ const launcherExists = await fileExists(launcherPath);
58
+ const expected = buildLauncher(platform, nodeExecutable, cliExecutable);
59
+ const launcherPersistent = launcherExists && await readFile(launcherPath, "utf-8") === expected;
60
+ return {
61
+ currentExecutable: cliExecutable,
62
+ nodeExecutable,
63
+ npmPrefix: env.npmPrefix ?? npmGlobalPrefix(platform),
64
+ launcherPath,
65
+ launcherDirectory,
66
+ launcherExists,
67
+ launcherPersistent,
68
+ directoryInPath: pathContains(launcherDirectory, env.path ?? process.env["PATH"] ?? "", platform)
69
+ };
70
+ }
71
+ function printCheck(check) {
72
+ console.log("OpenFox CLI installation:");
73
+ console.log(` Current executable: ${check.currentExecutable}`);
74
+ console.log(` Node executable: ${check.nodeExecutable}`);
75
+ console.log(` npm global prefix: ${check.npmPrefix}`);
76
+ console.log(` Persistent launcher: ${check.launcherPath}`);
77
+ console.log(` Launcher exists: ${check.launcherExists ? "yes" : "no"}`);
78
+ console.log(` Launcher is current: ${check.launcherPersistent ? "yes" : "no"}`);
79
+ console.log(` Launcher directory in PATH: ${check.directoryInPath ? "yes" : "no"}`);
80
+ }
81
+ async function runInstall(options = {}) {
82
+ const env = options.env ?? {};
83
+ const platform = env.platform ?? process.platform;
84
+ if (options.check) {
85
+ printCheck(await checkInstall(env));
86
+ return 0;
87
+ }
88
+ const launcherPath = getLauncherPath(env);
89
+ const nodeExecutable = env.nodeExecutable ?? process.execPath;
90
+ const cliExecutable = env.cliExecutable ?? process.argv[1];
91
+ if (!cliExecutable) {
92
+ console.error("Unable to determine the OpenFox CLI executable path.");
93
+ return 1;
94
+ }
95
+ await mkdir(dirname(launcherPath), { recursive: true });
96
+ await writeFile(launcherPath, buildLauncher(platform, nodeExecutable, cliExecutable), {
97
+ mode: platform === "win32" ? void 0 : 493
98
+ });
99
+ const check = await checkInstall({ ...env, nodeExecutable, cliExecutable });
100
+ if (!options.quiet) {
101
+ console.log(`Persistent OpenFox launcher installed: ${launcherPath}`);
102
+ }
103
+ if (!check.directoryInPath) {
104
+ if (platform === "win32") {
105
+ console.log(`Add this directory to your user PATH:
106
+ ${check.launcherDirectory}`);
107
+ } else {
108
+ console.log(`Add this line to your shell configuration:
109
+ export PATH="$HOME/.local/bin:$PATH"`);
110
+ }
111
+ }
112
+ return 0;
113
+ }
114
+ export {
115
+ buildLauncher,
116
+ checkInstall,
117
+ getLauncherPath,
118
+ runInstall
119
+ };
120
+ //# sourceMappingURL=install-CPOPMCSE.js.map
@@ -6,10 +6,10 @@ import {
6
6
  onProcessEvent,
7
7
  startProcessCommand,
8
8
  stopProcess
9
- } from "./chunk-PYB2UEC3.js";
10
- import "./chunk-I72ACQ6R.js";
9
+ } from "./chunk-LTFB2WWE.js";
11
10
  import "./chunk-S7O77CVO.js";
12
11
  import "./chunk-QNKXZH3Z.js";
12
+ import "./chunk-I72ACQ6R.js";
13
13
  import "./chunk-I4RWK2L2.js";
14
14
  import "./chunk-K44MW7JJ.js";
15
15
  import "./chunk-5WRI5ZAA.js";
@@ -22,4 +22,4 @@ export {
22
22
  startProcessCommand,
23
23
  stopProcess
24
24
  };
25
- //# sourceMappingURL=manager-24C2AXVF.js.map
25
+ //# sourceMappingURL=manager-5GILDCVD.js.map
@@ -1,8 +1,10 @@
1
1
  import {
2
2
  runAgentTurn,
3
3
  runChatTurn
4
- } from "./chunk-ZRQDCQ7R.js";
5
- import "./chunk-2VBETAU2.js";
4
+ } from "./chunk-J3VQBVGO.js";
5
+ import "./chunk-6ZMGWDOD.js";
6
+ import "./chunk-NWO6GRYE.js";
7
+ import "./chunk-UN26GIQG.js";
6
8
  import "./chunk-MF3UW36X.js";
7
9
  import "./chunk-WGMJCFCE.js";
8
10
  import "./chunk-EU3WWTFH.js";
@@ -16,22 +18,21 @@ import {
16
18
  } from "./chunk-XWBNYU2L.js";
17
19
  import "./chunk-E5LLEO3C.js";
18
20
  import "./chunk-UV3EMWL4.js";
19
- import "./chunk-PYB2UEC3.js";
20
- import "./chunk-I72ACQ6R.js";
21
- import "./chunk-NWO6GRYE.js";
22
- import "./chunk-UN26GIQG.js";
23
- import "./chunk-6XKM25OT.js";
24
- import "./chunk-DJASQ2ZB.js";
25
- import "./chunk-NOU2QIL5.js";
21
+ import "./chunk-LTFB2WWE.js";
26
22
  import "./chunk-S7O77CVO.js";
27
23
  import "./chunk-QNKXZH3Z.js";
24
+ import "./chunk-I72ACQ6R.js";
25
+ import "./chunk-KEVRZWL3.js";
26
+ import "./chunk-YFFP4DR4.js";
28
27
  import "./chunk-I4RWK2L2.js";
28
+ import "./chunk-DJASQ2ZB.js";
29
+ import "./chunk-O3NUNU4H.js";
29
30
  import "./chunk-J2GP3J3X.js";
30
31
  import "./chunk-V4IE7HJY.js";
31
32
  import "./chunk-YHEQTVFV.js";
32
33
  import "./chunk-EZK7CGJ7.js";
33
34
  import "./chunk-K44MW7JJ.js";
34
- import "./chunk-YD6NDTKF.js";
35
+ import "./chunk-5GOOSZX7.js";
35
36
  import "./chunk-WGAAQASA.js";
36
37
  import "./chunk-CQGTEGKL.js";
37
38
  import "./chunk-5WRI5ZAA.js";
@@ -45,4 +46,4 @@ export {
45
46
  runAgentTurn,
46
47
  runChatTurn
47
48
  };
48
- //# sourceMappingURL=orchestrator-O2YAAZ3U.js.map
49
+ //# sourceMappingURL=orchestrator-BIFTALBG.js.map
package/dist/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openfox",
3
- "version": "2.0.74",
3
+ "version": "2.0.75",
4
4
  "description": "Local-LLM-first agentic coding assistant",
5
5
  "type": "module",
6
6
  "bin": {
@@ -0,0 +1,50 @@
1
+ import {
2
+ PathAccessDeniedError,
3
+ addAllowedPath,
4
+ addAllowedPaths,
5
+ cancelPathConfirmation,
6
+ cancelPathConfirmationsForSession,
7
+ checkPathsAccess,
8
+ clearAllowedPaths,
9
+ extractAbsolutePathsFromCommand,
10
+ extractDangerousPatterns,
11
+ extractGitNoVerify,
12
+ extractSensitivePathsFromCommand,
13
+ getPendingConfirmationsBySession,
14
+ hasPendingPathConfirmation,
15
+ isPathAllowed,
16
+ isPathWithinSandbox,
17
+ isSensitivePath,
18
+ providePathConfirmation,
19
+ registerPathConfirmation,
20
+ requestPathAccess
21
+ } from "./chunk-KEVRZWL3.js";
22
+ import "./chunk-YFFP4DR4.js";
23
+ import "./chunk-I4RWK2L2.js";
24
+ import "./chunk-DJASQ2ZB.js";
25
+ import "./chunk-O3NUNU4H.js";
26
+ import "./chunk-K44MW7JJ.js";
27
+ import "./chunk-5GOOSZX7.js";
28
+ import "./chunk-5WRI5ZAA.js";
29
+ export {
30
+ PathAccessDeniedError,
31
+ addAllowedPath,
32
+ addAllowedPaths,
33
+ cancelPathConfirmation,
34
+ cancelPathConfirmationsForSession,
35
+ checkPathsAccess,
36
+ clearAllowedPaths,
37
+ extractAbsolutePathsFromCommand,
38
+ extractDangerousPatterns,
39
+ extractGitNoVerify,
40
+ extractSensitivePathsFromCommand,
41
+ getPendingConfirmationsBySession,
42
+ hasPendingPathConfirmation,
43
+ isPathAllowed,
44
+ isPathWithinSandbox,
45
+ isSensitivePath,
46
+ providePathConfirmation,
47
+ registerPathConfirmation,
48
+ requestPathAccess
49
+ };
50
+ //# sourceMappingURL=path-security-3FAIPJSV.js.map
@@ -2,29 +2,30 @@ import {
2
2
  buildRunChatTurnParams,
3
3
  finalizeTurnCompletion,
4
4
  generateSessionNameForSession
5
- } from "./chunk-2DCJERYX.js";
6
- import "./chunk-2VBETAU2.js";
5
+ } from "./chunk-CJ2AJ7HU.js";
6
+ import "./chunk-6ZMGWDOD.js";
7
+ import "./chunk-NWO6GRYE.js";
8
+ import "./chunk-UN26GIQG.js";
7
9
  import "./chunk-MF3UW36X.js";
8
10
  import "./chunk-WGMJCFCE.js";
9
11
  import "./chunk-EU3WWTFH.js";
10
12
  import "./chunk-XWBNYU2L.js";
11
13
  import "./chunk-E5LLEO3C.js";
12
14
  import "./chunk-UV3EMWL4.js";
13
- import "./chunk-PYB2UEC3.js";
15
+ import "./chunk-LTFB2WWE.js";
16
+ import "./chunk-S7O77CVO.js";
17
+ import "./chunk-QNKXZH3Z.js";
14
18
  import "./chunk-I72ACQ6R.js";
15
- import "./chunk-NWO6GRYE.js";
16
- import "./chunk-UN26GIQG.js";
19
+ import "./chunk-KEVRZWL3.js";
17
20
  import {
18
21
  getEventStore
19
- } from "./chunk-6XKM25OT.js";
22
+ } from "./chunk-YFFP4DR4.js";
23
+ import "./chunk-I4RWK2L2.js";
20
24
  import "./chunk-DJASQ2ZB.js";
21
25
  import {
22
26
  createChatMessageMessage,
23
27
  createSessionRunningMessage
24
- } from "./chunk-NOU2QIL5.js";
25
- import "./chunk-S7O77CVO.js";
26
- import "./chunk-QNKXZH3Z.js";
27
- import "./chunk-I4RWK2L2.js";
28
+ } from "./chunk-O3NUNU4H.js";
28
29
  import "./chunk-J2GP3J3X.js";
29
30
  import "./chunk-V4IE7HJY.js";
30
31
  import "./chunk-YHEQTVFV.js";
@@ -32,7 +33,7 @@ import "./chunk-EZK7CGJ7.js";
32
33
  import {
33
34
  logger
34
35
  } from "./chunk-K44MW7JJ.js";
35
- import "./chunk-YD6NDTKF.js";
36
+ import "./chunk-5GOOSZX7.js";
36
37
  import "./chunk-WGAAQASA.js";
37
38
  import "./chunk-CQGTEGKL.js";
38
39
  import "./chunk-5WRI5ZAA.js";
@@ -179,7 +180,7 @@ var QueueProcessor = class {
179
180
  backend: provider?.backend ?? llmClient.getBackend(),
180
181
  model: llmClient.getModel()
181
182
  };
182
- const { runChatTurn } = await import("./orchestrator-O2YAAZ3U.js");
183
+ const { runChatTurn } = await import("./orchestrator-BIFTALBG.js");
183
184
  const runChatTurnParams = buildRunChatTurnParams({
184
185
  sessionManager,
185
186
  sessionId,
@@ -227,4 +228,4 @@ var QueueProcessor = class {
227
228
  export {
228
229
  QueueProcessor
229
230
  };
230
- //# sourceMappingURL=processor-FKAS3K4L.js.map
231
+ //# sourceMappingURL=processor-MQ47QSDR.js.map
@@ -35,8 +35,8 @@ import {
35
35
  parseClientMessage,
36
36
  serializeServerMessage,
37
37
  storedEventToServerMessage
38
- } from "./chunk-NOU2QIL5.js";
39
- import "./chunk-YD6NDTKF.js";
38
+ } from "./chunk-O3NUNU4H.js";
39
+ import "./chunk-5GOOSZX7.js";
40
40
  import "./chunk-5WRI5ZAA.js";
41
41
  export {
42
42
  createChatAskUserMessage,
@@ -76,4 +76,4 @@ export {
76
76
  serializeServerMessage,
77
77
  storedEventToServerMessage
78
78
  };
79
- //# sourceMappingURL=protocol-4QFU7WAI.js.map
79
+ //# sourceMappingURL=protocol-EWEVW65B.js.map
@@ -23,7 +23,7 @@ interface QueuedMessage {
23
23
  queuedAt: string;
24
24
  messageKind?: string;
25
25
  }
26
- type ServerMessageType = 'project.state' | 'project.list' | 'project.deleted' | 'session.state' | 'session.list' | 'session.deleted' | 'session.deletedAll' | 'session.running' | 'session.name_generated' | 'chat.delta' | 'chat.thinking' | 'chat.tool_preparing' | 'chat.tool_call' | 'chat.tool_output' | 'chat.tool_result' | 'chat.todo' | 'chat.progress' | 'chat.format_retry' | 'chat.message' | 'chat.message_updated' | 'chat.done' | 'chat.vision_fallback' | 'chat.error' | 'chat.path_confirmation' | 'chat.ask_user' | 'mode.changed' | 'phase.changed' | 'task.completed' | 'criteria.updated' | 'metadata.updated' | 'context.state' | 'settings.value' | 'provider.changed' | 'queue.state' | 'devServer.output' | 'devServer.state' | 'backgroundProcess.started' | 'backgroundProcess.output' | 'backgroundProcess.exited' | 'backgroundProcess.removed' | 'git.status' | 'mcp.servers.changed' | 'lsp.diagnostics' | 'error' | 'ack';
26
+ type ServerMessageType = 'project.state' | 'project.list' | 'project.deleted' | 'session.state' | 'session.list' | 'session.created' | 'session.deleted' | 'session.deletedAll' | 'session.running' | 'session.name_generated' | 'session.confirmation_pending' | 'session.confirmation_resolved' | 'chat.delta' | 'chat.thinking' | 'chat.tool_preparing' | 'chat.tool_call' | 'chat.tool_output' | 'chat.tool_result' | 'chat.todo' | 'chat.progress' | 'chat.format_retry' | 'chat.message' | 'chat.message_updated' | 'chat.done' | 'chat.vision_fallback' | 'chat.error' | 'chat.path_confirmation' | 'chat.ask_user' | 'mode.changed' | 'phase.changed' | 'task.completed' | 'criteria.updated' | 'metadata.updated' | 'context.state' | 'settings.value' | 'provider.changed' | 'queue.state' | 'devServer.output' | 'devServer.state' | 'backgroundProcess.started' | 'backgroundProcess.output' | 'backgroundProcess.exited' | 'backgroundProcess.removed' | 'git.status' | 'mcp.servers.changed' | 'lsp.diagnostics' | 'error' | 'ack';
27
27
  interface ServerMessage<T = unknown> {
28
28
  id?: string;
29
29
  type: ServerMessageType;
@@ -63,6 +63,9 @@ interface PendingPathConfirmationPayload {
63
63
  interface SessionListPayload {
64
64
  sessions: SessionSummary[];
65
65
  }
66
+ interface SessionCreatedPayload {
67
+ session: SessionSummary;
68
+ }
66
69
  interface SessionRunningPayload {
67
70
  isRunning: boolean;
68
71
  }
@@ -372,4 +375,4 @@ interface QueueCancelledEvent {
372
375
  }
373
376
  type QueueEvent = QueueAddedEvent | QueueDrainedEvent | QueueCancelledEvent;
374
377
 
375
- export { type QueueStatePayload as $, type AgentEvent as A, type BackgroundProcess as B, type ChatAskUserPayload as C, type CriteriaUpdatedPayload as D, type DevServerOutputPayload as E, type DevServerStatePayload as F, type ErrorPayload as G, type GitDiffFile as H, type GitStatusPayload as I, type LspDiagnosticsPayload as J, type ModeChangedPayload as K, type LogLine as L, type MetadataUpdatedPayload as M, type PathConfirmationReason as N, type PendingPathConfirmationPayload as O, type PathConfirmPayload as P, type PendingQuestionPayload as Q, type PhaseChangedPayload as R, type ProjectDeletedPayload as S, type ProjectListPayload as T, type ProjectStatePayload as U, type ProviderChangedPayload as V, type QueueAddedEvent as W, type QueueCancelledEvent as X, type QueueDrainedEvent as Y, type QueueEvent as Z, type QueueEventType as _, type AskAnswerPayload as a, type QueuedMessage as a0, type ServerMessage as a1, type ServerMessageType as a2, type SessionListPayload as a3, type SessionLoadPayload as a4, type SessionNameGeneratedPayload as a5, type SessionRunningPayload as a6, type SessionStatePayload as a7, type TaskCompletedPayload as a8, createClientMessage as a9, createServerMessage as aa, isClientMessage as ab, isServerMessage as ac, type AskUserEvent as b, type BackgroundProcessExitedPayload as c, type BackgroundProcessOutputPayload as d, type BackgroundProcessRemovedPayload as e, type BackgroundProcessStartedPayload as f, type BackgroundProcessStatus as g, type ChatDeltaPayload as h, type ChatDonePayload as i, type ChatErrorPayload as j, type ChatFormatRetryPayload as k, type ChatMessagePayload as l, type ChatMessageUpdatedPayload as m, type ChatPathConfirmationPayload as n, type ChatProgressPayload as o, type ChatThinkingPayload as p, type ChatTodoPayload as q, type ChatToolCallPayload as r, type ChatToolOutputPayload as s, type ChatToolPreparingPayload as t, type ChatToolResultPayload as u, type ChatVisionFallbackPayload as v, type ClientMessage as w, type ClientMessageType as x, type ContextCompactionEvent as y, type ContextStatePayload as z };
378
+ export { type QueueStatePayload as $, type AgentEvent as A, type BackgroundProcess as B, type ChatAskUserPayload as C, type CriteriaUpdatedPayload as D, type DevServerOutputPayload as E, type DevServerStatePayload as F, type ErrorPayload as G, type GitDiffFile as H, type GitStatusPayload as I, type LspDiagnosticsPayload as J, type ModeChangedPayload as K, type LogLine as L, type MetadataUpdatedPayload as M, type PathConfirmationReason as N, type PendingPathConfirmationPayload as O, type PathConfirmPayload as P, type PendingQuestionPayload as Q, type PhaseChangedPayload as R, type ProjectDeletedPayload as S, type ProjectListPayload as T, type ProjectStatePayload as U, type ProviderChangedPayload as V, type QueueAddedEvent as W, type QueueCancelledEvent as X, type QueueDrainedEvent as Y, type QueueEvent as Z, type QueueEventType as _, type AskAnswerPayload as a, type QueuedMessage as a0, type ServerMessage as a1, type ServerMessageType as a2, type SessionCreatedPayload as a3, type SessionListPayload as a4, type SessionLoadPayload as a5, type SessionNameGeneratedPayload as a6, type SessionRunningPayload as a7, type SessionStatePayload as a8, type TaskCompletedPayload as a9, createClientMessage as aa, createServerMessage as ab, isClientMessage as ac, isServerMessage as ad, type AskUserEvent as b, type BackgroundProcessExitedPayload as c, type BackgroundProcessOutputPayload as d, type BackgroundProcessRemovedPayload as e, type BackgroundProcessStartedPayload as f, type BackgroundProcessStatus as g, type ChatDeltaPayload as h, type ChatDonePayload as i, type ChatErrorPayload as j, type ChatFormatRetryPayload as k, type ChatMessagePayload as l, type ChatMessageUpdatedPayload as m, type ChatPathConfirmationPayload as n, type ChatProgressPayload as o, type ChatThinkingPayload as p, type ChatTodoPayload as q, type ChatToolCallPayload as r, type ChatToolOutputPayload as s, type ChatToolPreparingPayload as t, type ChatToolResultPayload as u, type ChatVisionFallbackPayload as v, type ClientMessage as w, type ClientMessageType as x, type ContextCompactionEvent as y, type ContextStatePayload as z };
@@ -1,31 +1,32 @@
1
1
  import {
2
2
  createServer
3
- } from "./chunk-QFR6JF32.js";
4
- import "./chunk-TMRFTWXP.js";
5
- import "./chunk-ZRQDCQ7R.js";
6
- import "./chunk-2VBETAU2.js";
3
+ } from "./chunk-MIJX54CG.js";
4
+ import "./chunk-LKUAKQZY.js";
5
+ import "./chunk-J3VQBVGO.js";
6
+ import "./chunk-6ZMGWDOD.js";
7
+ import "./chunk-NWO6GRYE.js";
8
+ import "./chunk-UN26GIQG.js";
7
9
  import "./chunk-MF3UW36X.js";
8
10
  import "./chunk-WGMJCFCE.js";
9
11
  import "./chunk-EU3WWTFH.js";
10
- import "./chunk-CHPRGEY5.js";
12
+ import "./chunk-LUG5QTFC.js";
11
13
  import "./chunk-XWBNYU2L.js";
12
14
  import "./chunk-E5LLEO3C.js";
13
15
  import "./chunk-UV3EMWL4.js";
14
- import "./chunk-PYB2UEC3.js";
16
+ import "./chunk-LTFB2WWE.js";
17
+ import "./chunk-S7O77CVO.js";
18
+ import "./chunk-QNKXZH3Z.js";
15
19
  import "./chunk-I72ACQ6R.js";
16
- import "./chunk-NWO6GRYE.js";
17
- import "./chunk-UN26GIQG.js";
18
20
  import {
19
21
  VERSION
20
- } from "./chunk-3OZBPWHP.js";
22
+ } from "./chunk-6COWK53A.js";
23
+ import "./chunk-KEVRZWL3.js";
21
24
  import {
22
25
  loadConfig
23
- } from "./chunk-6XKM25OT.js";
24
- import "./chunk-DJASQ2ZB.js";
25
- import "./chunk-NOU2QIL5.js";
26
- import "./chunk-S7O77CVO.js";
27
- import "./chunk-QNKXZH3Z.js";
26
+ } from "./chunk-YFFP4DR4.js";
28
27
  import "./chunk-I4RWK2L2.js";
28
+ import "./chunk-DJASQ2ZB.js";
29
+ import "./chunk-O3NUNU4H.js";
29
30
  import "./chunk-OHGQILRF.js";
30
31
  import "./chunk-J2GP3J3X.js";
31
32
  import "./chunk-6XOA2WPU.js";
@@ -38,7 +39,7 @@ import {
38
39
  logger
39
40
  } from "./chunk-K44MW7JJ.js";
40
41
  import "./chunk-VUQCQXXJ.js";
41
- import "./chunk-YD6NDTKF.js";
42
+ import "./chunk-5GOOSZX7.js";
42
43
  import {
43
44
  getActiveProvider,
44
45
  getDefaultModel,
@@ -210,4 +211,4 @@ async function runServe(options) {
210
211
  export {
211
212
  runServe
212
213
  };
213
- //# sourceMappingURL=serve-T5U6SLB7.js.map
214
+ //# sourceMappingURL=serve-UD27KOL2.js.map
@@ -1,7 +1,7 @@
1
1
  import { h as Diagnostic, u as Provider, r as ModelConfig, w as Session, B as SessionSummary, t as Project, y as SessionMode, z as SessionPhase, M as Message, d as Criterion, f as CriterionStatus, q as MetadataEntry, A as Attachment, b as ContextState, D as DangerLevel$1, H as StatsIdentity, O as ToolResult, a as Config } from '../types-C4cG9CtC.js';
2
2
  import { Server } from 'node:http';
3
3
  import { e as LLMClient, d as LLMToolDefinition } from '../types-DSZhFA8O.js';
4
- import { a0 as QueuedMessage, a1 as ServerMessage } from '../protocol-DGQWVFcP.js';
4
+ import { a0 as QueuedMessage, a1 as ServerMessage } from '../protocol-Sr6Jr4ZS.js';
5
5
 
6
6
  /**
7
7
  * Model-specific configuration profiles.
@@ -1,28 +1,29 @@
1
1
  import {
2
2
  createServer,
3
3
  createServerHandle
4
- } from "../chunk-QFR6JF32.js";
5
- import "../chunk-TMRFTWXP.js";
6
- import "../chunk-ZRQDCQ7R.js";
7
- import "../chunk-2VBETAU2.js";
4
+ } from "../chunk-MIJX54CG.js";
5
+ import "../chunk-LKUAKQZY.js";
6
+ import "../chunk-J3VQBVGO.js";
7
+ import "../chunk-6ZMGWDOD.js";
8
+ import "../chunk-NWO6GRYE.js";
9
+ import "../chunk-UN26GIQG.js";
8
10
  import "../chunk-MF3UW36X.js";
9
11
  import "../chunk-WGMJCFCE.js";
10
12
  import "../chunk-EU3WWTFH.js";
11
- import "../chunk-CHPRGEY5.js";
13
+ import "../chunk-LUG5QTFC.js";
12
14
  import "../chunk-XWBNYU2L.js";
13
15
  import "../chunk-E5LLEO3C.js";
14
16
  import "../chunk-UV3EMWL4.js";
15
- import "../chunk-PYB2UEC3.js";
16
- import "../chunk-I72ACQ6R.js";
17
- import "../chunk-NWO6GRYE.js";
18
- import "../chunk-UN26GIQG.js";
19
- import "../chunk-3OZBPWHP.js";
20
- import "../chunk-6XKM25OT.js";
21
- import "../chunk-DJASQ2ZB.js";
22
- import "../chunk-NOU2QIL5.js";
17
+ import "../chunk-LTFB2WWE.js";
23
18
  import "../chunk-S7O77CVO.js";
24
19
  import "../chunk-QNKXZH3Z.js";
20
+ import "../chunk-I72ACQ6R.js";
21
+ import "../chunk-6COWK53A.js";
22
+ import "../chunk-KEVRZWL3.js";
23
+ import "../chunk-YFFP4DR4.js";
25
24
  import "../chunk-I4RWK2L2.js";
25
+ import "../chunk-DJASQ2ZB.js";
26
+ import "../chunk-O3NUNU4H.js";
26
27
  import "../chunk-OHGQILRF.js";
27
28
  import "../chunk-J2GP3J3X.js";
28
29
  import "../chunk-6XOA2WPU.js";
@@ -33,7 +34,7 @@ import "../chunk-EZK7CGJ7.js";
33
34
  import "../chunk-ZO5EXQMG.js";
34
35
  import "../chunk-K44MW7JJ.js";
35
36
  import "../chunk-VUQCQXXJ.js";
36
- import "../chunk-YD6NDTKF.js";
37
+ import "../chunk-5GOOSZX7.js";
37
38
  import "../chunk-WGAAQASA.js";
38
39
  import "../chunk-CQGTEGKL.js";
39
40
  import "../chunk-5WRI5ZAA.js";
@@ -1,33 +1,34 @@
1
1
  import {
2
2
  createWebSocketServer,
3
3
  signalMcpReady
4
- } from "./chunk-TMRFTWXP.js";
5
- import "./chunk-ZRQDCQ7R.js";
6
- import "./chunk-2VBETAU2.js";
4
+ } from "./chunk-LKUAKQZY.js";
5
+ import "./chunk-J3VQBVGO.js";
6
+ import "./chunk-6ZMGWDOD.js";
7
+ import "./chunk-NWO6GRYE.js";
8
+ import "./chunk-UN26GIQG.js";
7
9
  import "./chunk-MF3UW36X.js";
8
10
  import "./chunk-WGMJCFCE.js";
9
11
  import "./chunk-EU3WWTFH.js";
10
- import "./chunk-CHPRGEY5.js";
12
+ import "./chunk-LUG5QTFC.js";
11
13
  import "./chunk-XWBNYU2L.js";
12
14
  import "./chunk-E5LLEO3C.js";
13
15
  import "./chunk-UV3EMWL4.js";
14
- import "./chunk-PYB2UEC3.js";
15
- import "./chunk-I72ACQ6R.js";
16
- import "./chunk-NWO6GRYE.js";
17
- import "./chunk-UN26GIQG.js";
18
- import "./chunk-6XKM25OT.js";
19
- import "./chunk-DJASQ2ZB.js";
20
- import "./chunk-NOU2QIL5.js";
16
+ import "./chunk-LTFB2WWE.js";
21
17
  import "./chunk-S7O77CVO.js";
22
18
  import "./chunk-QNKXZH3Z.js";
19
+ import "./chunk-I72ACQ6R.js";
20
+ import "./chunk-KEVRZWL3.js";
21
+ import "./chunk-YFFP4DR4.js";
23
22
  import "./chunk-I4RWK2L2.js";
23
+ import "./chunk-DJASQ2ZB.js";
24
+ import "./chunk-O3NUNU4H.js";
24
25
  import "./chunk-J2GP3J3X.js";
25
26
  import "./chunk-V4IE7HJY.js";
26
27
  import "./chunk-YHEQTVFV.js";
27
28
  import "./chunk-EZK7CGJ7.js";
28
29
  import "./chunk-K44MW7JJ.js";
29
30
  import "./chunk-VUQCQXXJ.js";
30
- import "./chunk-YD6NDTKF.js";
31
+ import "./chunk-5GOOSZX7.js";
31
32
  import "./chunk-WGAAQASA.js";
32
33
  import "./chunk-CQGTEGKL.js";
33
34
  import "./chunk-5WRI5ZAA.js";
@@ -35,4 +36,4 @@ export {
35
36
  createWebSocketServer,
36
37
  signalMcpReady
37
38
  };
38
- //# sourceMappingURL=server-T2YP3VT2.js.map
39
+ //# sourceMappingURL=server-TJ3PP5EW.js.map
@@ -1,6 +1,6 @@
1
1
  import { M as Message, S as SessionStats } from '../types-C4cG9CtC.js';
2
2
  export { A as Attachment, C as CallStatsDataPoint, a as Config, b as ContextState, c as ContextWindow, d as Criterion, e as CriterionAttempt, f as CriterionStatus, g as CriterionValidation, D as DangerLevel, h as Diagnostic, E as EditContextEdit, i as EditContextLine, j as EditContextRegion, k as ElementData, l as ExecutionState, F as FileReadEntry, I as InjectedFile, L as LLMCallStats, m as LlmBackend, n as MessageRole, o as MessageSegment, p as MessageStats, q as MetadataEntry, r as ModelConfig, s as ModelSessionStats, P as PreparingToolCall, t as Project, u as Provider, v as ProviderBackend, R as RecentUserPrompt, w as Session, x as SessionMetadata, y as SessionMode, z as SessionPhase, B as SessionSummary, G as StatsDataPoint, H as StatsIdentity, T as Todo, J as ToolCall, K as ToolMode, N as ToolName, O as ToolResult, V as ValidationResult } from '../types-C4cG9CtC.js';
3
- export { A as AgentEvent, a as AskAnswerPayload, b as AskUserEvent, B as BackgroundProcess, c as BackgroundProcessExitedPayload, d as BackgroundProcessOutputPayload, e as BackgroundProcessRemovedPayload, f as BackgroundProcessStartedPayload, g as BackgroundProcessStatus, C as ChatAskUserPayload, h as ChatDeltaPayload, i as ChatDonePayload, j as ChatErrorPayload, k as ChatFormatRetryPayload, l as ChatMessagePayload, m as ChatMessageUpdatedPayload, n as ChatPathConfirmationPayload, o as ChatProgressPayload, p as ChatThinkingPayload, q as ChatTodoPayload, r as ChatToolCallPayload, s as ChatToolOutputPayload, t as ChatToolPreparingPayload, u as ChatToolResultPayload, v as ChatVisionFallbackPayload, w as ClientMessage, x as ClientMessageType, y as ContextCompactionEvent, z as ContextStatePayload, D as CriteriaUpdatedPayload, E as DevServerOutputPayload, F as DevServerStatePayload, G as ErrorPayload, H as GitDiffFile, I as GitStatusPayload, L as LogLine, J as LspDiagnosticsPayload, M as MetadataUpdatedPayload, K as ModeChangedPayload, P as PathConfirmPayload, N as PathConfirmationReason, O as PendingPathConfirmationPayload, Q as PendingQuestionPayload, R as PhaseChangedPayload, S as ProjectDeletedPayload, T as ProjectListPayload, U as ProjectStatePayload, V as ProviderChangedPayload, W as QueueAddedEvent, X as QueueCancelledEvent, Y as QueueDrainedEvent, Z as QueueEvent, _ as QueueEventType, $ as QueueStatePayload, a0 as QueuedMessage, a1 as ServerMessage, a2 as ServerMessageType, a3 as SessionListPayload, a4 as SessionLoadPayload, a5 as SessionNameGeneratedPayload, a6 as SessionRunningPayload, a7 as SessionStatePayload, a8 as TaskCompletedPayload, a9 as createClientMessage, aa as createServerMessage, ab as isClientMessage, ac as isServerMessage } from '../protocol-DGQWVFcP.js';
3
+ export { A as AgentEvent, a as AskAnswerPayload, b as AskUserEvent, B as BackgroundProcess, c as BackgroundProcessExitedPayload, d as BackgroundProcessOutputPayload, e as BackgroundProcessRemovedPayload, f as BackgroundProcessStartedPayload, g as BackgroundProcessStatus, C as ChatAskUserPayload, h as ChatDeltaPayload, i as ChatDonePayload, j as ChatErrorPayload, k as ChatFormatRetryPayload, l as ChatMessagePayload, m as ChatMessageUpdatedPayload, n as ChatPathConfirmationPayload, o as ChatProgressPayload, p as ChatThinkingPayload, q as ChatTodoPayload, r as ChatToolCallPayload, s as ChatToolOutputPayload, t as ChatToolPreparingPayload, u as ChatToolResultPayload, v as ChatVisionFallbackPayload, w as ClientMessage, x as ClientMessageType, y as ContextCompactionEvent, z as ContextStatePayload, D as CriteriaUpdatedPayload, E as DevServerOutputPayload, F as DevServerStatePayload, G as ErrorPayload, H as GitDiffFile, I as GitStatusPayload, L as LogLine, J as LspDiagnosticsPayload, M as MetadataUpdatedPayload, K as ModeChangedPayload, P as PathConfirmPayload, N as PathConfirmationReason, O as PendingPathConfirmationPayload, Q as PendingQuestionPayload, R as PhaseChangedPayload, S as ProjectDeletedPayload, T as ProjectListPayload, U as ProjectStatePayload, V as ProviderChangedPayload, W as QueueAddedEvent, X as QueueCancelledEvent, Y as QueueDrainedEvent, Z as QueueEvent, _ as QueueEventType, $ as QueueStatePayload, a0 as QueuedMessage, a1 as ServerMessage, a2 as ServerMessageType, a3 as SessionCreatedPayload, a4 as SessionListPayload, a5 as SessionLoadPayload, a6 as SessionNameGeneratedPayload, a7 as SessionRunningPayload, a8 as SessionStatePayload, a9 as TaskCompletedPayload, aa as createClientMessage, ab as createServerMessage, ac as isClientMessage, ad as isServerMessage } from '../protocol-Sr6Jr4ZS.js';
4
4
 
5
5
  /**
6
6
  * Session stats computation - aggregates response-level MessageStats from
@@ -6,7 +6,7 @@ import {
6
6
  createServerMessage,
7
7
  isClientMessage,
8
8
  isServerMessage
9
- } from "../chunk-YD6NDTKF.js";
9
+ } from "../chunk-5GOOSZX7.js";
10
10
  import "../chunk-5WRI5ZAA.js";
11
11
  export {
12
12
  computeSessionStats,