openfox 1.6.51 → 1.6.53

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 (29) hide show
  1. package/dist/{auto-compaction-VM4PWNSL.js → auto-compaction-NVHM75BN.js} +5 -5
  2. package/dist/{chat-handler-AQNAQSBE.js → chat-handler-DERM2S6L.js} +10 -12
  3. package/dist/{chunk-2IIJ6BX6.js → chunk-4MSEK56X.js} +3 -3
  4. package/dist/{chunk-G56V75F2.js → chunk-5STJLSGO.js} +2 -26
  5. package/dist/{chunk-CAWG7OPR.js → chunk-AFIVZZJN.js} +2 -2
  6. package/dist/{chunk-Y6HBEACI.js → chunk-CTAIXOZJ.js} +1 -1
  7. package/dist/{chunk-LAUS4KUS.js → chunk-DAUVWS5W.js} +26 -9
  8. package/dist/{chunk-6ZIAD3UH.js → chunk-JLMCJLTK.js} +102 -531
  9. package/dist/{chunk-QEFIFVTH.js → chunk-UQGY56XJ.js} +1 -1
  10. package/dist/{chunk-ADNH6OIQ.js → chunk-XRPGQKBM.js} +39 -4
  11. package/dist/cli/dev.js +1 -1
  12. package/dist/cli/index.js +1 -1
  13. package/dist/{events-RXX52D3D.js → events-UCHHTT6X.js} +2 -2
  14. package/dist/{orchestrator-FPX4NLIZ.js → orchestrator-FX6SZX4J.js} +6 -6
  15. package/dist/package.json +4 -3
  16. package/dist/{processor-AJ6F6SA6.js → processor-AS6JXF4U.js} +8 -10
  17. package/dist/{protocol-_A3Upt5b.d.ts → protocol-Cmn48nDH.d.ts} +4 -27
  18. package/dist/{protocol-4RE3E3H3.js → protocol-WHHYESPI.js} +3 -15
  19. package/dist/{serve-K56IPLYD.js → serve-W3EZMXAC.js} +7 -8
  20. package/dist/server/index.d.ts +1 -1
  21. package/dist/server/index.js +6 -7
  22. package/dist/shared/index.d.ts +2 -2
  23. package/dist/shared/index.js +1 -1
  24. package/dist/{tools-SBBC6TWC.js → tools-SJN7IGVF.js} +5 -5
  25. package/dist/web/assets/{index--Frce5_n.js → index-Bet4PbsC.js} +65 -65
  26. package/dist/web/index.html +1 -1
  27. package/dist/web/sw.js +1 -1
  28. package/package.json +4 -3
  29. package/dist/chunk-LUEMWIT4.js +0 -44
@@ -2,18 +2,18 @@ import {
2
2
  maybeAutoCompactContext,
3
3
  performManualContextCompaction,
4
4
  resolveCompactionStatsIdentity
5
- } from "./chunk-LAUS4KUS.js";
5
+ } from "./chunk-DAUVWS5W.js";
6
6
  import "./chunk-NBU6KIOD.js";
7
7
  import "./chunk-574HZVLE.js";
8
8
  import "./chunk-7JPKRM6M.js";
9
9
  import "./chunk-WNZIUQ2L.js";
10
- import "./chunk-QEFIFVTH.js";
10
+ import "./chunk-UQGY56XJ.js";
11
11
  import "./chunk-LIMBYVO4.js";
12
- import "./chunk-G56V75F2.js";
12
+ import "./chunk-5STJLSGO.js";
13
13
  import "./chunk-22CTURMH.js";
14
14
  import "./chunk-GQZGIMJO.js";
15
15
  import "./chunk-BLNFJ22S.js";
16
- import "./chunk-Y6HBEACI.js";
16
+ import "./chunk-CTAIXOZJ.js";
17
17
  import "./chunk-R4HADRYO.js";
18
18
  import "./chunk-TVQOONDR.js";
19
19
  import "./chunk-VCALN543.js";
@@ -23,4 +23,4 @@ export {
23
23
  performManualContextCompaction,
24
24
  resolveCompactionStatsIdentity
25
25
  };
26
- //# sourceMappingURL=auto-compaction-VM4PWNSL.js.map
26
+ //# sourceMappingURL=auto-compaction-NVHM75BN.js.map
@@ -1,34 +1,32 @@
1
1
  import {
2
+ applyGeneratedSessionName,
2
3
  buildRunChatTurnParams,
3
4
  finalizeTurnCompletion,
4
- getSessionMessageCount
5
- } from "./chunk-LUEMWIT4.js";
6
- import {
7
- applyGeneratedSessionName,
8
5
  generateSessionName,
6
+ getSessionMessageCount,
9
7
  needsNameGenerationCheck
10
- } from "./chunk-ADNH6OIQ.js";
8
+ } from "./chunk-XRPGQKBM.js";
11
9
  import {
12
10
  runChatTurn
13
- } from "./chunk-2IIJ6BX6.js";
14
- import "./chunk-LAUS4KUS.js";
11
+ } from "./chunk-4MSEK56X.js";
12
+ import "./chunk-DAUVWS5W.js";
15
13
  import "./chunk-NBU6KIOD.js";
16
14
  import "./chunk-574HZVLE.js";
17
15
  import "./chunk-7JPKRM6M.js";
18
16
  import "./chunk-WNZIUQ2L.js";
19
17
  import {
20
18
  getEventStore
21
- } from "./chunk-QEFIFVTH.js";
19
+ } from "./chunk-UQGY56XJ.js";
22
20
  import "./chunk-LIMBYVO4.js";
23
21
  import {
24
22
  createChatMessageMessage,
25
23
  createPhaseChangedMessage,
26
24
  createSessionRunningMessage
27
- } from "./chunk-G56V75F2.js";
25
+ } from "./chunk-5STJLSGO.js";
28
26
  import "./chunk-22CTURMH.js";
29
27
  import "./chunk-GQZGIMJO.js";
30
28
  import "./chunk-BLNFJ22S.js";
31
- import "./chunk-Y6HBEACI.js";
29
+ import "./chunk-CTAIXOZJ.js";
32
30
  import "./chunk-R4HADRYO.js";
33
31
  import "./chunk-TVQOONDR.js";
34
32
  import "./chunk-VCALN543.js";
@@ -62,7 +60,7 @@ async function startChatSession(sessionId, content, deps, options) {
62
60
  sessionManager.setRunning(sessionId, true);
63
61
  broadcastForSession(sessionId, createSessionRunningMessage(true));
64
62
  try {
65
- const { maybeAutoCompactContext } = await import("./auto-compaction-VM4PWNSL.js");
63
+ const { maybeAutoCompactContext } = await import("./auto-compaction-NVHM75BN.js");
66
64
  await maybeAutoCompactContext({
67
65
  sessionManager,
68
66
  sessionId,
@@ -171,4 +169,4 @@ export {
171
169
  startChatSession,
172
170
  stopSessionExecution
173
171
  };
174
- //# sourceMappingURL=chat-handler-AQNAQSBE.js.map
172
+ //# sourceMappingURL=chat-handler-DERM2S6L.js.map
@@ -13,11 +13,11 @@ import {
13
13
  getToolRegistryForAgent,
14
14
  loadAllAgentsDefault,
15
15
  runTopLevelAgentLoop
16
- } from "./chunk-LAUS4KUS.js";
16
+ } from "./chunk-DAUVWS5W.js";
17
17
  import {
18
18
  getCurrentContextWindowId,
19
19
  getEventStore
20
- } from "./chunk-QEFIFVTH.js";
20
+ } from "./chunk-UQGY56XJ.js";
21
21
  import {
22
22
  buildSnapshotFromSessionState
23
23
  } from "./chunk-LIMBYVO4.js";
@@ -293,4 +293,4 @@ export {
293
293
  runBuilderTurn,
294
294
  runVerifierTurn
295
295
  };
296
- //# sourceMappingURL=chunk-2IIJ6BX6.js.map
296
+ //# sourceMappingURL=chunk-4MSEK56X.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createServerMessage,
3
3
  isClientMessage
4
- } from "./chunk-Y6HBEACI.js";
4
+ } from "./chunk-CTAIXOZJ.js";
5
5
 
6
6
  // src/server/ws/protocol.ts
7
7
  function enrichMessagesWithToolResults(messages) {
@@ -135,15 +135,6 @@ function createSessionNameGeneratedMessage(name, sessionId) {
135
135
  function isSessionLoadPayload(payload) {
136
136
  return typeof payload === "object" && payload !== null && "sessionId" in payload;
137
137
  }
138
- function isChatSendPayload(payload) {
139
- return typeof payload === "object" && payload !== null && "content" in payload;
140
- }
141
- function isModeSwitchPayload(payload) {
142
- return typeof payload === "object" && payload !== null && "mode" in payload;
143
- }
144
- function isCriteriaEditPayload(payload) {
145
- return typeof payload === "object" && payload !== null && "criteria" in payload;
146
- }
147
138
  function isPathConfirmPayload(payload) {
148
139
  return typeof payload === "object" && payload !== null && "callId" in payload && "approved" in payload;
149
140
  }
@@ -153,15 +144,6 @@ function isAskAnswerPayload(payload) {
153
144
  function createQueueStateMessage(messages) {
154
145
  return createServerMessage("queue.state", { messages });
155
146
  }
156
- function isQueueAsapPayload(payload) {
157
- return typeof payload === "object" && payload !== null && "content" in payload && typeof payload.content === "string";
158
- }
159
- function isQueueCompletionPayload(payload) {
160
- return typeof payload === "object" && payload !== null && "content" in payload && typeof payload.content === "string";
161
- }
162
- function isQueueCancelPayload(payload) {
163
- return typeof payload === "object" && payload !== null && "queueId" in payload && typeof payload.queueId === "string";
164
- }
165
147
  function storedEventToServerMessage(event) {
166
148
  switch (event.type) {
167
149
  case "message.start": {
@@ -322,15 +304,9 @@ export {
322
304
  createContextStateMessage,
323
305
  createSessionNameGeneratedMessage,
324
306
  isSessionLoadPayload,
325
- isChatSendPayload,
326
- isModeSwitchPayload,
327
- isCriteriaEditPayload,
328
307
  isPathConfirmPayload,
329
308
  isAskAnswerPayload,
330
309
  createQueueStateMessage,
331
- isQueueAsapPayload,
332
- isQueueCompletionPayload,
333
- isQueueCancelPayload,
334
310
  storedEventToServerMessage
335
311
  };
336
- //# sourceMappingURL=chunk-G56V75F2.js.map
312
+ //# sourceMappingURL=chunk-5STJLSGO.js.map
@@ -179,7 +179,7 @@ async function runCli(options) {
179
179
  if (!configExists) {
180
180
  await runNetworkSetup(mode);
181
181
  }
182
- const { runServe } = await import("./serve-K56IPLYD.js");
182
+ const { runServe } = await import("./serve-W3EZMXAC.js");
183
183
  await runServe({
184
184
  mode,
185
185
  port: values.port ? parseInt(values.port) : void 0,
@@ -192,4 +192,4 @@ async function runCli(options) {
192
192
  export {
193
193
  runCli
194
194
  };
195
- //# sourceMappingURL=chunk-CAWG7OPR.js.map
195
+ //# sourceMappingURL=chunk-AFIVZZJN.js.map
@@ -26,4 +26,4 @@ export {
26
26
  isClientMessage,
27
27
  isServerMessage
28
28
  };
29
- //# sourceMappingURL=chunk-Y6HBEACI.js.map
29
+ //# sourceMappingURL=chunk-CTAIXOZJ.js.map
@@ -24,7 +24,7 @@ import {
24
24
  getContextMessages,
25
25
  getCurrentContextWindowId,
26
26
  getEventStore
27
- } from "./chunk-QEFIFVTH.js";
27
+ } from "./chunk-UQGY56XJ.js";
28
28
  import {
29
29
  createChatDoneMessage,
30
30
  createChatMessageMessage,
@@ -33,7 +33,7 @@ import {
33
33
  createChatToolOutputMessage,
34
34
  createChatVisionFallbackMessage,
35
35
  createQueueStateMessage
36
- } from "./chunk-G56V75F2.js";
36
+ } from "./chunk-5STJLSGO.js";
37
37
  import {
38
38
  AskUserInterrupt,
39
39
  askUserTool
@@ -1381,6 +1381,10 @@ function extractDangerousPatterns(command) {
1381
1381
  }
1382
1382
  return dangerous;
1383
1383
  }
1384
+ var GIT_NO_VERIFY_PATTERN = /\bgit\s+\w+\s+.*(?:--no-verify|-n)/;
1385
+ function extractGitNoVerify(command) {
1386
+ return GIT_NO_VERIFY_PATTERN.test(command);
1387
+ }
1384
1388
  async function requestPathAccess(paths, workdir, sessionId, callId, tool, onEvent, dangerLevel, command) {
1385
1389
  const emitPendingEvent = (confirmationPaths, confirmationReason) => {
1386
1390
  try {
@@ -1392,6 +1396,20 @@ async function requestPathAccess(paths, workdir, sessionId, callId, tool, onEven
1392
1396
  } catch {
1393
1397
  }
1394
1398
  };
1399
+ if (command && extractGitNoVerify(command)) {
1400
+ emitPendingEvent([workdir], "git_no_verify");
1401
+ const confirmationPromise2 = registerPathConfirmation(callId, [workdir], sessionId);
1402
+ onEvent(createChatPathConfirmationMessage(callId, tool, ["git --no-verify detected"], workdir, "git_no_verify"));
1403
+ const approved2 = await confirmationPromise2;
1404
+ if (!approved2) {
1405
+ throw new PathAccessDeniedError(
1406
+ ["git --no-verify"],
1407
+ tool,
1408
+ "git_no_verify",
1409
+ "User denied git command with --no-verify. The agent must not use --no-verify and must resolve the issue (e.g., fix lint errors, resolve conflicts) that prevents the commit."
1410
+ );
1411
+ }
1412
+ }
1395
1413
  if (dangerLevel !== "dangerous" && command) {
1396
1414
  const dangerousPatterns = extractDangerousPatterns(command);
1397
1415
  if (dangerousPatterns.length > 0) {
@@ -1426,12 +1444,13 @@ async function requestPathAccess(paths, workdir, sessionId, callId, tool, onEven
1426
1444
  }
1427
1445
  }
1428
1446
  var PathAccessDeniedError = class extends Error {
1429
- constructor(paths, tool, reason = "outside_workdir") {
1430
- const reasonText = reason === "sensitive_file" ? "sensitive files (may contain secrets)" : reason === "both" ? "paths outside workdir and sensitive files" : "paths outside workdir";
1431
- super(`User denied access to ${reasonText}: ${paths.join(", ")}`);
1447
+ constructor(paths, tool, reason = "outside_workdir", customMessage) {
1448
+ const reasonText = reason === "sensitive_file" ? "sensitive files (may contain secrets)" : reason === "both" ? "paths outside workdir and sensitive files" : reason === "git_no_verify" ? "git commands with --no-verify" : "paths outside workdir";
1449
+ super(customMessage ?? `User denied access to ${reasonText}: ${paths.join(", ")}`);
1432
1450
  this.paths = paths;
1433
1451
  this.tool = tool;
1434
1452
  this.reason = reason;
1453
+ this.customMessage = customMessage;
1435
1454
  this.name = "PathAccessDeniedError";
1436
1455
  }
1437
1456
  };
@@ -3358,7 +3377,7 @@ var callSubAgentTool = {
3358
3377
  };
3359
3378
  }
3360
3379
  try {
3361
- const { getToolRegistryForAgent: getToolRegistryForAgent2 } = await import("./tools-SBBC6TWC.js");
3380
+ const { getToolRegistryForAgent: getToolRegistryForAgent2 } = await import("./tools-SJN7IGVF.js");
3362
3381
  const toolRegistry = getToolRegistryForAgent2(agentDef);
3363
3382
  const turnMetrics = new TurnMetrics();
3364
3383
  const result = await executeSubAgent({
@@ -4455,7 +4474,6 @@ export {
4455
4474
  createToolCallEvent,
4456
4475
  createToolResultEvent,
4457
4476
  createChatDoneEvent,
4458
- getAllInstructions,
4459
4477
  assembleAgentRequest,
4460
4478
  pathExists2 as pathExists,
4461
4479
  getDefaultIds,
@@ -4463,7 +4481,6 @@ export {
4463
4481
  loadDefaultSkills,
4464
4482
  loadUserSkills,
4465
4483
  loadAllSkills,
4466
- getEnabledSkillMetadata,
4467
4484
  isSkillEnabled,
4468
4485
  setSkillEnabled,
4469
4486
  getDefaultSkillIds,
@@ -4487,4 +4504,4 @@ export {
4487
4504
  getToolRegistryForAgent,
4488
4505
  createToolRegistry
4489
4506
  };
4490
- //# sourceMappingURL=chunk-LAUS4KUS.js.map
4507
+ //# sourceMappingURL=chunk-DAUVWS5W.js.map