jinzd-ai-cli 0.4.257 → 0.4.258

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 (33) hide show
  1. package/dist/{batch-HCTZJMGR.js → batch-B42DJMDJ.js} +2 -2
  2. package/dist/{chunk-GOGDUA4G.js → chunk-3ERLNXT2.js} +4 -4
  3. package/dist/{chunk-NRTYNGEZ.js → chunk-BEER3VEB.js} +1 -1
  4. package/dist/{chunk-X2ZXQMN2.js → chunk-BIXQHN77.js} +1 -1
  5. package/dist/{chunk-NX55D52V.js → chunk-BWZT74E3.js} +2 -2
  6. package/dist/{chunk-MJ6JLSPR.js → chunk-GDJII6TK.js} +6 -2
  7. package/dist/{chunk-ELYDRIKV.js → chunk-GVLUGPIX.js} +4 -4
  8. package/dist/{chunk-DGMSS565.js → chunk-GWXWAQVM.js} +1 -1
  9. package/dist/{chunk-4VWME5CO.js → chunk-HT5LC2PL.js} +1 -1
  10. package/dist/{chunk-5DLLJ67Q.js → chunk-I7LBWY7E.js} +1 -1
  11. package/dist/{chunk-HPPK4IA3.js → chunk-PNQS67JC.js} +1 -1
  12. package/dist/{chunk-QI4AJPRD.js → chunk-QJXUJFYD.js} +5 -5
  13. package/dist/{chunk-QEVXWHWN.js → chunk-S5YGYXAE.js} +1 -1
  14. package/dist/{chunk-BQXVQKMH.js → chunk-WLSK55ED.js} +1 -1
  15. package/dist/{chunk-HOS7CGBI.js → chunk-XPNKMDBH.js} +10 -4
  16. package/dist/{chunk-DFV7F6S7.js → chunk-XYNZVGUH.js} +1 -1
  17. package/dist/{ci-OGJDKUEN.js → ci-MMXYIHYY.js} +6 -6
  18. package/dist/{ci-format-CG6US3KX.js → ci-format-FG53M5V2.js} +2 -2
  19. package/dist/{constants-3UC2F5GC.js → constants-WROFKV3K.js} +1 -1
  20. package/dist/{doctor-cli-FPYSCH5H.js → doctor-cli-USQ4HX7A.js} +6 -6
  21. package/dist/electron-server.js +21 -11
  22. package/dist/{hub-5NRTE7PL.js → hub-MWEDYMK6.js} +1 -1
  23. package/dist/index.js +21 -21
  24. package/dist/{persistent-memory-PNJCHP33.js → persistent-memory-PAHA4R7U.js} +2 -2
  25. package/dist/{persistent-memory-CHPNGWN2.js → persistent-memory-ZHYBVUGR.js} +2 -2
  26. package/dist/{pr-KAEI2IK3.js → pr-4P7XC2RK.js} +6 -6
  27. package/dist/{run-tests-F7Y6POVK.js → run-tests-WWJHCLFZ.js} +2 -2
  28. package/dist/{run-tests-EOHLRWQC.js → run-tests-Y6CBCPFF.js} +2 -2
  29. package/dist/{server-4NP2ZVLA.js → server-IMKKKH57.js} +6 -6
  30. package/dist/{server-REZPCUHW.js → server-JDKLBBVN.js} +13 -13
  31. package/dist/{task-orchestrator-LTPRJVLH.js → task-orchestrator-F534G7LG.js} +6 -6
  32. package/dist/{usage-XPBLQ4FZ.js → usage-P4ORZDPV.js} +2 -2
  33. package/package.json +1 -1
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  ConfigManager
4
- } from "./chunk-DFV7F6S7.js";
4
+ } from "./chunk-XYNZVGUH.js";
5
5
  import "./chunk-TU3L3PW7.js";
6
- import "./chunk-5DLLJ67Q.js";
6
+ import "./chunk-I7LBWY7E.js";
7
7
  import {
8
8
  atomicWriteFileSync
9
9
  } from "./chunk-IW3Q7AE5.js";
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  evaluateCiGate,
4
4
  normalizeCiThresholds
5
- } from "./chunk-HPPK4IA3.js";
5
+ } from "./chunk-PNQS67JC.js";
6
6
  import {
7
7
  buildReviewPrompt,
8
8
  buildSecurityReviewPrompt,
@@ -10,13 +10,13 @@ import {
10
10
  } from "./chunk-HLWUDRBO.js";
11
11
  import {
12
12
  ProviderRegistry
13
- } from "./chunk-MJ6JLSPR.js";
13
+ } from "./chunk-GDJII6TK.js";
14
14
  import {
15
15
  ConfigManager
16
- } from "./chunk-DFV7F6S7.js";
16
+ } from "./chunk-XYNZVGUH.js";
17
17
  import {
18
18
  VERSION
19
- } from "./chunk-5DLLJ67Q.js";
19
+ } from "./chunk-I7LBWY7E.js";
20
20
 
21
21
  // src/cli/ci.ts
22
22
  import { execFileSync } from "child_process";
@@ -6,7 +6,7 @@ import {
6
6
  MEMORY_FILE_NAME,
7
7
  MEMORY_MAX_CHARS,
8
8
  MEMORY_STORE_FILE_NAME
9
- } from "./chunk-QEVXWHWN.js";
9
+ } from "./chunk-S5YGYXAE.js";
10
10
  import {
11
11
  atomicWriteFileSync
12
12
  } from "./chunk-6BUTA5VW.js";
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  CONFIG_DIR_NAME,
4
4
  PLUGINS_DIR_NAME
5
- } from "./chunk-5DLLJ67Q.js";
5
+ } from "./chunk-I7LBWY7E.js";
6
6
  import {
7
7
  atomicWriteFileSync
8
8
  } from "./chunk-IW3Q7AE5.js";
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  truncateForPersist
4
- } from "./chunk-QI4AJPRD.js";
4
+ } from "./chunk-QJXUJFYD.js";
5
5
  import {
6
6
  APP_NAME,
7
7
  CONFIG_DIR_NAME,
@@ -11,7 +11,7 @@ import {
11
11
  MCP_PROTOCOL_VERSION,
12
12
  MCP_TOOL_PREFIX,
13
13
  VERSION
14
- } from "./chunk-5DLLJ67Q.js";
14
+ } from "./chunk-I7LBWY7E.js";
15
15
  import {
16
16
  atomicWriteFileSync
17
17
  } from "./chunk-IW3Q7AE5.js";
@@ -3,7 +3,7 @@ import {
3
3
  detectsHallucinatedFileOp,
4
4
  parseToolCallArguments,
5
5
  schemaToJsonSchema
6
- } from "./chunk-HOS7CGBI.js";
6
+ } from "./chunk-XPNKMDBH.js";
7
7
  import {
8
8
  AuthError,
9
9
  ProviderError,
@@ -1242,7 +1242,11 @@ var OpenAICompatibleProvider = class extends BaseProvider {
1242
1242
  const tc = result.toolCalls[i];
1243
1243
  yield { type: "tool_call_start", index: i, id: tc.id, name: tc.name };
1244
1244
  yield { type: "tool_call_delta", index: i, argumentsDelta: JSON.stringify(tc.arguments) };
1245
- yield { type: "tool_call_end", index: i };
1245
+ yield {
1246
+ type: "tool_call_end",
1247
+ index: i,
1248
+ ...tc.argumentsTruncated ? { argumentsTruncated: tc.argumentsTruncated } : {}
1249
+ };
1246
1250
  }
1247
1251
  } else {
1248
1252
  yield { type: "text_delta", delta: result.content };
@@ -1,10 +1,10 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  ProviderRegistry
4
- } from "./chunk-MJ6JLSPR.js";
4
+ } from "./chunk-GDJII6TK.js";
5
5
  import {
6
6
  ConfigManager
7
- } from "./chunk-DFV7F6S7.js";
7
+ } from "./chunk-XYNZVGUH.js";
8
8
  import {
9
9
  getActivePluginAssets,
10
10
  getPendingHookTrust,
@@ -14,7 +14,7 @@ import {
14
14
  listHooks,
15
15
  listInstalledPlugins,
16
16
  resetStats
17
- } from "./chunk-X2ZXQMN2.js";
17
+ } from "./chunk-BIXQHN77.js";
18
18
  import {
19
19
  getGitRoot
20
20
  } from "./chunk-HOSJZMQS.js";
@@ -26,7 +26,7 @@ import {
26
26
  MCP_PROJECT_CONFIG_NAME,
27
27
  MEMORY_FILE_NAME,
28
28
  VERSION
29
- } from "./chunk-5DLLJ67Q.js";
29
+ } from "./chunk-I7LBWY7E.js";
30
30
 
31
31
  // src/diagnostics/doctor-report.ts
32
32
  import { existsSync as existsSync3, statSync as statSync2 } from "fs";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  TEST_TIMEOUT
3
- } from "./chunk-QEVXWHWN.js";
3
+ } from "./chunk-S5YGYXAE.js";
4
4
 
5
5
  // src/tools/builtin/run-tests.ts
6
6
  import { execSync, spawnSync } from "child_process";
@@ -6,7 +6,7 @@ import {
6
6
  MEMORY_FILE_NAME,
7
7
  MEMORY_MAX_CHARS,
8
8
  MEMORY_STORE_FILE_NAME
9
- } from "./chunk-5DLLJ67Q.js";
9
+ } from "./chunk-I7LBWY7E.js";
10
10
  import {
11
11
  DEFAULT_PATTERNS,
12
12
  redactString
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  // src/core/constants.ts
4
- var VERSION = "0.4.257";
4
+ var VERSION = "0.4.258";
5
5
  var APP_NAME = "ai-cli";
6
6
  var CONFIG_DIR_NAME = ".aicli";
7
7
  var CONFIG_FILE_NAME = "config.json";
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  VERSION
4
- } from "./chunk-5DLLJ67Q.js";
4
+ } from "./chunk-I7LBWY7E.js";
5
5
 
6
6
  // src/cli/ci-format.ts
7
7
  var DEFAULT_CI_THRESHOLDS = {
@@ -7,7 +7,7 @@ import {
7
7
  searchPersistentMemories,
8
8
  touchMemoryReferences,
9
9
  updateMemoryEntry
10
- } from "./chunk-4VWME5CO.js";
10
+ } from "./chunk-HT5LC2PL.js";
11
11
  import {
12
12
  indexProject
13
13
  } from "./chunk-GLSR2NR3.js";
@@ -23,13 +23,13 @@ import {
23
23
  runHook,
24
24
  runLifecycleHooks,
25
25
  runTool
26
- } from "./chunk-X2ZXQMN2.js";
26
+ } from "./chunk-BIXQHN77.js";
27
27
  import {
28
28
  buildTruncatedArgumentsError,
29
29
  getDangerLevel,
30
30
  isFileWriteTool,
31
31
  runLeanAgentLoop
32
- } from "./chunk-HOS7CGBI.js";
32
+ } from "./chunk-XPNKMDBH.js";
33
33
  import {
34
34
  EnvLoader,
35
35
  NetworkError,
@@ -40,14 +40,14 @@ import {
40
40
  } from "./chunk-4BKXL7SM.js";
41
41
  import {
42
42
  runTestsTool
43
- } from "./chunk-BQXVQKMH.js";
43
+ } from "./chunk-WLSK55ED.js";
44
44
  import {
45
45
  CONFIG_DIR_NAME,
46
46
  DEFAULT_MAX_TOOL_OUTPUT_CHARS_CAP,
47
47
  SUBAGENT_ALLOWED_TOOLS,
48
48
  SUBAGENT_DEFAULT_MAX_ROUNDS,
49
49
  SUBAGENT_MAX_ROUNDS_LIMIT
50
- } from "./chunk-5DLLJ67Q.js";
50
+ } from "./chunk-I7LBWY7E.js";
51
51
  import {
52
52
  loadChatIndex,
53
53
  searchChatMemory
@@ -1,5 +1,5 @@
1
1
  // src/core/constants.ts
2
- var VERSION = "0.4.257";
2
+ var VERSION = "0.4.258";
3
3
  var APP_NAME = "ai-cli";
4
4
  var CONFIG_DIR_NAME = ".aicli";
5
5
  var CONFIG_FILE_NAME = "config.json";
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  TEST_TIMEOUT
4
- } from "./chunk-5DLLJ67Q.js";
4
+ } from "./chunk-I7LBWY7E.js";
5
5
 
6
6
  // src/tools/builtin/run-tests.ts
7
7
  import { execSync, spawnSync } from "child_process";
@@ -700,7 +700,7 @@ function parseToolCallArguments(raw, onWarn) {
700
700
  onWarn?.("Tool call JSON was truncated and auto-repaired. Some parameters may be missing.");
701
701
  return { args: repaired, status: "repaired" };
702
702
  } catch {
703
- onWarn?.("Tool call JSON could not be parsed, using empty arguments.");
703
+ onWarn?.("Tool call JSON could not be parsed (output was truncated) \u2014 the call will be rejected.");
704
704
  return { args: {}, status: "failed" };
705
705
  }
706
706
  }
@@ -749,13 +749,18 @@ async function consumeToolCallStream(stream, hooks = {}) {
749
749
  accumulators.set(event.index, { id: event.id, name: event.name, arguments: "" });
750
750
  hooks.onToolCallStart?.(event.index, event.id, event.name);
751
751
  break;
752
+ case "tool_call_end": {
753
+ if (event.argumentsTruncated) {
754
+ const acc = accumulators.get(event.index);
755
+ if (acc) acc.truncatedUpstream = event.argumentsTruncated;
756
+ }
757
+ break;
758
+ }
752
759
  case "tool_call_delta": {
753
760
  const acc = accumulators.get(event.index);
754
761
  if (acc) acc.arguments += event.argumentsDelta;
755
762
  break;
756
763
  }
757
- case "tool_call_end":
758
- break;
759
764
  case "done":
760
765
  if (event.usage) usage = event.usage;
761
766
  if (event.rawContent) rawContent = event.rawContent;
@@ -783,11 +788,12 @@ async function consumeToolCallStream(stream, hooks = {}) {
783
788
  const toolCalls = [];
784
789
  for (const [, acc] of accumulators) {
785
790
  const parsed = parseToolCallArguments(acc.arguments, hooks.onWarn);
791
+ const truncated = acc.truncatedUpstream ?? (parsed.status === "ok" ? void 0 : parsed.status);
786
792
  toolCalls.push({
787
793
  id: acc.id,
788
794
  name: acc.name,
789
795
  arguments: parsed.args,
790
- ...parsed.status === "ok" ? {} : { argumentsTruncated: parsed.status }
796
+ ...truncated ? { argumentsTruncated: truncated } : {}
791
797
  });
792
798
  }
793
799
  if (toolCalls.length > 0) {
@@ -8,7 +8,7 @@ import {
8
8
  CONFIG_FILE_NAME,
9
9
  HISTORY_DIR_NAME,
10
10
  PLUGINS_DIR_NAME
11
- } from "./chunk-5DLLJ67Q.js";
11
+ } from "./chunk-I7LBWY7E.js";
12
12
  import {
13
13
  atomicWriteFileSync
14
14
  } from "./chunk-IW3Q7AE5.js";
@@ -3,14 +3,14 @@ import {
3
3
  CI_COMMENT_MARKER,
4
4
  countSeverity,
5
5
  runCi
6
- } from "./chunk-GOGDUA4G.js";
7
- import "./chunk-HPPK4IA3.js";
6
+ } from "./chunk-3ERLNXT2.js";
7
+ import "./chunk-PNQS67JC.js";
8
8
  import "./chunk-HLWUDRBO.js";
9
- import "./chunk-MJ6JLSPR.js";
10
- import "./chunk-DFV7F6S7.js";
11
- import "./chunk-HOS7CGBI.js";
9
+ import "./chunk-GDJII6TK.js";
10
+ import "./chunk-XYNZVGUH.js";
11
+ import "./chunk-XPNKMDBH.js";
12
12
  import "./chunk-TU3L3PW7.js";
13
- import "./chunk-5DLLJ67Q.js";
13
+ import "./chunk-I7LBWY7E.js";
14
14
  import "./chunk-IW3Q7AE5.js";
15
15
  export {
16
16
  CI_COMMENT_MARKER,
@@ -6,8 +6,8 @@ import {
6
6
  formatCiResult,
7
7
  formatCiSarif,
8
8
  normalizeCiThresholds
9
- } from "./chunk-HPPK4IA3.js";
10
- import "./chunk-5DLLJ67Q.js";
9
+ } from "./chunk-PNQS67JC.js";
10
+ import "./chunk-I7LBWY7E.js";
11
11
  export {
12
12
  DEFAULT_CI_THRESHOLDS,
13
13
  detectCiGateSignals,
@@ -38,7 +38,7 @@ import {
38
38
  TEST_TIMEOUT,
39
39
  VERSION,
40
40
  buildUserIdentityPrompt
41
- } from "./chunk-5DLLJ67Q.js";
41
+ } from "./chunk-I7LBWY7E.js";
42
42
  export {
43
43
  AGENTIC_BEHAVIOR_GUIDELINE,
44
44
  APP_NAME,
@@ -2,14 +2,14 @@
2
2
  import {
3
3
  formatDoctorReport,
4
4
  runDoctorCli
5
- } from "./chunk-ELYDRIKV.js";
6
- import "./chunk-MJ6JLSPR.js";
7
- import "./chunk-DFV7F6S7.js";
8
- import "./chunk-X2ZXQMN2.js";
9
- import "./chunk-HOS7CGBI.js";
5
+ } from "./chunk-GVLUGPIX.js";
6
+ import "./chunk-GDJII6TK.js";
7
+ import "./chunk-XYNZVGUH.js";
8
+ import "./chunk-BIXQHN77.js";
9
+ import "./chunk-XPNKMDBH.js";
10
10
  import "./chunk-TU3L3PW7.js";
11
11
  import "./chunk-HOSJZMQS.js";
12
- import "./chunk-5DLLJ67Q.js";
12
+ import "./chunk-I7LBWY7E.js";
13
13
  import "./chunk-IW3Q7AE5.js";
14
14
  export {
15
15
  formatDoctorReport,
@@ -34,14 +34,14 @@ import {
34
34
  touchMemoryReferences,
35
35
  updateMemoryApproval,
36
36
  updateMemoryEntry
37
- } from "./chunk-NRTYNGEZ.js";
37
+ } from "./chunk-BEER3VEB.js";
38
38
  import {
39
39
  redactJson,
40
40
  scanString
41
41
  } from "./chunk-YVTASHS5.js";
42
42
  import {
43
43
  runTestsTool
44
- } from "./chunk-DGMSS565.js";
44
+ } from "./chunk-GWXWAQVM.js";
45
45
  import {
46
46
  AGENTIC_BEHAVIOR_GUIDELINE,
47
47
  APP_NAME,
@@ -73,7 +73,7 @@ import {
73
73
  SUBAGENT_MAX_ROUNDS_LIMIT,
74
74
  VERSION,
75
75
  buildUserIdentityPrompt
76
- } from "./chunk-QEVXWHWN.js";
76
+ } from "./chunk-S5YGYXAE.js";
77
77
  import {
78
78
  hasSemanticIndex,
79
79
  semanticSearch
@@ -2323,7 +2323,7 @@ function parseToolCallArguments(raw, onWarn) {
2323
2323
  onWarn?.("Tool call JSON was truncated and auto-repaired. Some parameters may be missing.");
2324
2324
  return { args: repaired, status: "repaired" };
2325
2325
  } catch {
2326
- onWarn?.("Tool call JSON could not be parsed, using empty arguments.");
2326
+ onWarn?.("Tool call JSON could not be parsed (output was truncated) \u2014 the call will be rejected.");
2327
2327
  return { args: {}, status: "failed" };
2328
2328
  }
2329
2329
  }
@@ -2372,13 +2372,18 @@ async function consumeToolCallStream(stream, hooks = {}) {
2372
2372
  accumulators.set(event.index, { id: event.id, name: event.name, arguments: "" });
2373
2373
  hooks.onToolCallStart?.(event.index, event.id, event.name);
2374
2374
  break;
2375
+ case "tool_call_end": {
2376
+ if (event.argumentsTruncated) {
2377
+ const acc = accumulators.get(event.index);
2378
+ if (acc) acc.truncatedUpstream = event.argumentsTruncated;
2379
+ }
2380
+ break;
2381
+ }
2375
2382
  case "tool_call_delta": {
2376
2383
  const acc = accumulators.get(event.index);
2377
2384
  if (acc) acc.arguments += event.argumentsDelta;
2378
2385
  break;
2379
2386
  }
2380
- case "tool_call_end":
2381
- break;
2382
2387
  case "done":
2383
2388
  if (event.usage) usage = event.usage;
2384
2389
  if (event.rawContent) rawContent = event.rawContent;
@@ -2406,11 +2411,12 @@ async function consumeToolCallStream(stream, hooks = {}) {
2406
2411
  const toolCalls = [];
2407
2412
  for (const [, acc] of accumulators) {
2408
2413
  const parsed = parseToolCallArguments(acc.arguments, hooks.onWarn);
2414
+ const truncated = acc.truncatedUpstream ?? (parsed.status === "ok" ? void 0 : parsed.status);
2409
2415
  toolCalls.push({
2410
2416
  id: acc.id,
2411
2417
  name: acc.name,
2412
2418
  arguments: parsed.args,
2413
- ...parsed.status === "ok" ? {} : { argumentsTruncated: parsed.status }
2419
+ ...truncated ? { argumentsTruncated: truncated } : {}
2414
2420
  });
2415
2421
  }
2416
2422
  if (toolCalls.length > 0) {
@@ -3075,7 +3081,11 @@ var OpenAICompatibleProvider = class extends BaseProvider {
3075
3081
  const tc = result.toolCalls[i];
3076
3082
  yield { type: "tool_call_start", index: i, id: tc.id, name: tc.name };
3077
3083
  yield { type: "tool_call_delta", index: i, argumentsDelta: JSON.stringify(tc.arguments) };
3078
- yield { type: "tool_call_end", index: i };
3084
+ yield {
3085
+ type: "tool_call_end",
3086
+ index: i,
3087
+ ...tc.argumentsTruncated ? { argumentsTruncated: tc.argumentsTruncated } : {}
3088
+ };
3079
3089
  }
3080
3090
  } else {
3081
3091
  yield { type: "text_delta", delta: result.content };
@@ -15285,7 +15295,7 @@ Cache: write=${cacheCreate} read=${cacheRead}` : "";
15285
15295
  Cost: ${formatCost(cost)}` : "";
15286
15296
  let memoryLine = "";
15287
15297
  try {
15288
- const { countPendingMemories } = await import("./persistent-memory-PNJCHP33.js");
15298
+ const { countPendingMemories } = await import("./persistent-memory-PAHA4R7U.js");
15289
15299
  const pending = countPendingMemories(ctx.config.getConfigDir());
15290
15300
  if (pending > 0) memoryLine = `
15291
15301
  Memory: \u26A0 ${pending} pending approval \u2014 see the Memory panel or /memory`;
@@ -16094,7 +16104,7 @@ async function handleSecurityReview(args, ctx) {
16094
16104
  async function handleTest(args, ctx) {
16095
16105
  ctx.send({ type: "info", message: "\u{1F9EA} Running tests..." });
16096
16106
  try {
16097
- const { executeTests } = await import("./run-tests-F7Y6POVK.js");
16107
+ const { executeTests } = await import("./run-tests-WWJHCLFZ.js");
16098
16108
  const argStr = args.join(" ").trim();
16099
16109
  let testArgs = {};
16100
16110
  if (argStr) {
@@ -16358,7 +16368,7 @@ async function handleMemory(args, ctx) {
16358
16368
  ctx.handleMemoryManage(sub, args[1], sub === "expire" ? args[2] : void 0);
16359
16369
  } else if (sub === "export") {
16360
16370
  if (args[1] === "md") {
16361
- const { exportMemoryEntries: exportMemoryEntries2 } = await import("./persistent-memory-PNJCHP33.js");
16371
+ const { exportMemoryEntries: exportMemoryEntries2 } = await import("./persistent-memory-PAHA4R7U.js");
16362
16372
  ctx.send({
16363
16373
  type: "export_data",
16364
16374
  format: "md",
@@ -154,7 +154,7 @@ ${content}`);
154
154
  }
155
155
  }
156
156
  async function runTaskMode(config, providers, configManager, topic) {
157
- const { TaskOrchestrator } = await import("./task-orchestrator-LTPRJVLH.js");
157
+ const { TaskOrchestrator } = await import("./task-orchestrator-F534G7LG.js");
158
158
  const orchestrator = new TaskOrchestrator(config, providers, configManager);
159
159
  let interrupted = false;
160
160
  const onSigint = () => {
package/dist/index.js CHANGED
@@ -17,7 +17,7 @@ import {
17
17
  scanProject,
18
18
  sessionHasMeaningfulContent,
19
19
  setupProxy
20
- } from "./chunk-NX55D52V.js";
20
+ } from "./chunk-BWZT74E3.js";
21
21
  import {
22
22
  computeCost,
23
23
  formatCost,
@@ -50,7 +50,7 @@ import {
50
50
  spawnAgentContext,
51
51
  theme,
52
52
  undoStack
53
- } from "./chunk-QI4AJPRD.js";
53
+ } from "./chunk-QJXUJFYD.js";
54
54
  import {
55
55
  addMemoryEntry,
56
56
  backupMemoryStore,
@@ -76,7 +76,7 @@ import {
76
76
  touchMemoryReferences,
77
77
  updateMemoryApproval,
78
78
  updateMemoryEntry
79
- } from "./chunk-4VWME5CO.js";
79
+ } from "./chunk-HT5LC2PL.js";
80
80
  import "./chunk-GLSR2NR3.js";
81
81
  import "./chunk-UUSRWSSX.js";
82
82
  import "./chunk-CKH4KQ4E.js";
@@ -90,13 +90,13 @@ import {
90
90
  formatDoctorReport,
91
91
  loadContextFiles,
92
92
  writeCrashLog
93
- } from "./chunk-ELYDRIKV.js";
93
+ } from "./chunk-GVLUGPIX.js";
94
94
  import {
95
95
  ProviderRegistry
96
- } from "./chunk-MJ6JLSPR.js";
96
+ } from "./chunk-GDJII6TK.js";
97
97
  import {
98
98
  ConfigManager
99
- } from "./chunk-DFV7F6S7.js";
99
+ } from "./chunk-XYNZVGUH.js";
100
100
  import {
101
101
  describePlugin,
102
102
  getActivePluginAssets,
@@ -113,7 +113,7 @@ import {
113
113
  trustHook,
114
114
  trustPlugin,
115
115
  untrustHook
116
- } from "./chunk-X2ZXQMN2.js";
116
+ } from "./chunk-BIXQHN77.js";
117
117
  import {
118
118
  CONTENT_ONLY_STREAM_REMINDER,
119
119
  TEE_FINAL_USER_NUDGE,
@@ -132,7 +132,7 @@ import {
132
132
  stripOuterCodeFence,
133
133
  stripToolCallReminder,
134
134
  teeStreamErrorSummary
135
- } from "./chunk-HOS7CGBI.js";
135
+ } from "./chunk-XPNKMDBH.js";
136
136
  import {
137
137
  AuthError,
138
138
  ProviderError,
@@ -146,7 +146,7 @@ import {
146
146
  import {
147
147
  fileCheckpoints
148
148
  } from "./chunk-4BKXL7SM.js";
149
- import "./chunk-BQXVQKMH.js";
149
+ import "./chunk-WLSK55ED.js";
150
150
  import {
151
151
  AGENTIC_BEHAVIOR_GUIDELINE,
152
152
  AUTHOR,
@@ -165,7 +165,7 @@ import {
165
165
  SKILLS_DIR_NAME,
166
166
  VERSION,
167
167
  buildUserIdentityPrompt
168
- } from "./chunk-5DLLJ67Q.js";
168
+ } from "./chunk-I7LBWY7E.js";
169
169
  import {
170
170
  buildChatIndex,
171
171
  clearChatIndex,
@@ -1397,7 +1397,7 @@ No tools match "${filter}".
1397
1397
  const { join: join6 } = await import("path");
1398
1398
  const { existsSync: existsSync6 } = await import("fs");
1399
1399
  const { getGitRoot: getGitRoot2 } = await import("./git-context-EXOEHQSF.js");
1400
- const { MCP_PROJECT_CONFIG_NAME: MCP_PROJECT_CONFIG_NAME2 } = await import("./constants-3UC2F5GC.js");
1400
+ const { MCP_PROJECT_CONFIG_NAME: MCP_PROJECT_CONFIG_NAME2 } = await import("./constants-WROFKV3K.js");
1401
1401
  const { approveProject, hashMcpFile } = await import("./project-trust-NKYHL3VZ.js");
1402
1402
  const cwd = process.cwd();
1403
1403
  const projectRoot = getGitRoot2(cwd) ?? cwd;
@@ -2376,7 +2376,7 @@ function createReviewCommands() {
2376
2376
  usage: "/test [command|filter]",
2377
2377
  async execute(args, ctx) {
2378
2378
  try {
2379
- const { executeTests } = await import("./run-tests-EOHLRWQC.js");
2379
+ const { executeTests } = await import("./run-tests-Y6CBCPFF.js");
2380
2380
  const argStr = args.join(" ").trim();
2381
2381
  let testArgs = {};
2382
2382
  if (argStr) {
@@ -8033,7 +8033,7 @@ program.command("web").description("Start Web UI server with browser-based chat
8033
8033
  console.error("Error: Invalid port number. Must be between 1 and 65535.");
8034
8034
  process.exit(1);
8035
8035
  }
8036
- const { startWebServer } = await import("./server-REZPCUHW.js");
8036
+ const { startWebServer } = await import("./server-JDKLBBVN.js");
8037
8037
  await startWebServer({ port, host: options.host });
8038
8038
  });
8039
8039
  program.command("user [action] [username]").description("Manage Web UI users (list | create <name> | delete <name> | reset-password <name> | logout-all <name> | migrate <name>)").action(async (action, username) => {
@@ -8200,11 +8200,11 @@ program.command("sessions").description("List recent conversation sessions").opt
8200
8200
  console.log(footer + "\n");
8201
8201
  });
8202
8202
  program.command("usage").description("Show token + cost usage grouped by provider/model (cross-session)").option("--days <n>", "Only the last N days (inclusive of today)").option("--month <ym>", "Only a specific month, format YYYY-MM (e.g. 2026-06)").option("--json", "Output as JSON (for scripting)").action(async (options) => {
8203
- const { runUsageCli } = await import("./usage-XPBLQ4FZ.js");
8203
+ const { runUsageCli } = await import("./usage-P4ORZDPV.js");
8204
8204
  await runUsageCli(options);
8205
8205
  });
8206
8206
  program.command("doctor").description("Health check: API keys, config, MCP, recent crashes, tool usage, disk usage").option("--json", "Output as JSON (for scripting)").option("--reset-stats", "Reset accumulated tool usage statistics").action(async (options) => {
8207
- const { runDoctorCli } = await import("./doctor-cli-FPYSCH5H.js");
8207
+ const { runDoctorCli } = await import("./doctor-cli-USQ4HX7A.js");
8208
8208
  const argv = process.argv.slice(2);
8209
8209
  await runDoctorCli({
8210
8210
  json: !!options.json || argv.includes("--json"),
@@ -8213,7 +8213,7 @@ program.command("doctor").description("Health check: API keys, config, MCP, rece
8213
8213
  });
8214
8214
  program.command("batch <action> [arg] [arg2]").description("Anthropic Message Batches: submit | list | status <id> | results <id> [out] | cancel <id>").option("--dry-run", "Parse and validate input without submitting (submit only)").action(async (action, arg, arg2, options) => {
8215
8215
  try {
8216
- const batch = await import("./batch-HCTZJMGR.js");
8216
+ const batch = await import("./batch-B42DJMDJ.js");
8217
8217
  switch (action) {
8218
8218
  case "submit":
8219
8219
  if (!arg) {
@@ -8256,7 +8256,7 @@ program.command("batch <action> [arg] [arg2]").description("Anthropic Message Ba
8256
8256
  }
8257
8257
  });
8258
8258
  program.command("mcp-serve").description("Start an MCP server over STDIO, exposing aicli's built-in tools to Claude Desktop / Cursor / other MCP clients").option("--allow-destructive", "Allow bash / run_interactive / task_create (always destructive in MCP mode)").option("--allow-outside-cwd", "Allow tool path arguments to escape the sandbox root \u2014 disabled by default").option("--tools <list>", "Comma-separated whitelist of tools to expose (default: all eligible tools)").option("--cwd <path>", "Working directory AND sandbox root (default: current directory)").action(async (options) => {
8259
- const { startMcpServer } = await import("./server-4NP2ZVLA.js");
8259
+ const { startMcpServer } = await import("./server-IMKKKH57.js");
8260
8260
  await startMcpServer({
8261
8261
  allowDestructive: !!options.allowDestructive,
8262
8262
  allowOutsideCwd: !!options.allowOutsideCwd,
@@ -8269,7 +8269,7 @@ program.command("pr <action> [target]").description("PR review helpers: review |
8269
8269
  console.error(`Unknown pr action: ${action}. Use review | security-review | summarize.`);
8270
8270
  process.exit(1);
8271
8271
  }
8272
- const { runPrCli } = await import("./pr-KAEI2IK3.js");
8272
+ const { runPrCli } = await import("./pr-4P7XC2RK.js");
8273
8273
  const result = await runPrCli({
8274
8274
  action,
8275
8275
  target,
@@ -8289,8 +8289,8 @@ program.command("pr <action> [target]").description("PR review helpers: review |
8289
8289
  process.exit(result.exitCode);
8290
8290
  });
8291
8291
  program.command("ci").description("Headless PR review (code + security) \u2014 reads git/gh diff, optionally posts to PR. Designed for GitHub Actions.").option("--pr <num>", "PR number or URL; diff fetched via gh pr diff <value>", (v) => /^#?\d+$/.test(v) ? parseInt(v.replace(/^#/, ""), 10) : v).option("--base <ref>", "Base ref for git diff <ref>...HEAD (ignored when --pr set)").option("--post", "Post review as a PR comment (requires gh CLI + GH_TOKEN, needs --pr)").option("--no-update", "Always create a new comment instead of updating the previous aicli review").option("--skip-code", "Skip the code review section").option("--skip-security", "Skip the security review section").option("--detailed", "Use the detailed code-review prompt").option("--max-diff <n>", "Max diff chars sent to the model (default 30000)", (v) => parseInt(v, 10)).option("--provider <id>", "Override provider (default: config.defaultProvider)").option("--model <id>", "Override model").option("--dry-run", "Print result to stdout instead of posting (overrides --post)").option("--json", "Output a structured JSON report").option("--markdown", "Output Markdown report (default)").option("--sarif", "Output SARIF 2.1.0 for code scanning artifacts").option("--fail-on-security-high", "Fail when the security review contains HIGH/CRITICAL findings (default)").option("--no-fail-on-security-high", "Do not fail on security HIGH/CRITICAL findings").option("--fail-on-test-failure", "Fail when the report mentions test failures (default)").option("--no-fail-on-test-failure", "Do not fail on test failure findings").option("--fail-on-lint-failure", "Fail when the report mentions lint/typecheck failures (default)").option("--no-fail-on-lint-failure", "Do not fail on lint/typecheck failure findings").action(async (options) => {
8292
- const { runCi } = await import("./ci-OGJDKUEN.js");
8293
- const { formatCiResult } = await import("./ci-format-CG6US3KX.js");
8292
+ const { runCi } = await import("./ci-MMXYIHYY.js");
8293
+ const { formatCiResult } = await import("./ci-format-FG53M5V2.js");
8294
8294
  const formats = [options.json, options.markdown, options.sarif].filter(Boolean).length;
8295
8295
  if (formats > 1) {
8296
8296
  console.error("Choose only one output format: --json, --markdown, or --sarif.");
@@ -8448,7 +8448,7 @@ program.command("hub [topic]").description("Start multi-agent hub (discuss / bra
8448
8448
  config.get("customProviders"),
8449
8449
  config.getConfigDir()
8450
8450
  );
8451
- const { startHub } = await import("./hub-5NRTE7PL.js");
8451
+ const { startHub } = await import("./hub-MWEDYMK6.js");
8452
8452
  await startHub(
8453
8453
  {
8454
8454
  topic: topic ?? "",
@@ -27,9 +27,9 @@ import {
27
27
  touchMemoryReferences,
28
28
  updateMemoryApproval,
29
29
  updateMemoryEntry
30
- } from "./chunk-NRTYNGEZ.js";
30
+ } from "./chunk-BEER3VEB.js";
31
31
  import "./chunk-YVTASHS5.js";
32
- import "./chunk-QEVXWHWN.js";
32
+ import "./chunk-S5YGYXAE.js";
33
33
  import "./chunk-6BUTA5VW.js";
34
34
  export {
35
35
  addMemoryEntry,
@@ -28,9 +28,9 @@ import {
28
28
  touchMemoryReferences,
29
29
  updateMemoryApproval,
30
30
  updateMemoryEntry
31
- } from "./chunk-4VWME5CO.js";
31
+ } from "./chunk-HT5LC2PL.js";
32
32
  import "./chunk-HOSJZMQS.js";
33
- import "./chunk-5DLLJ67Q.js";
33
+ import "./chunk-I7LBWY7E.js";
34
34
  import "./chunk-B5TYJO7V.js";
35
35
  import "./chunk-IW3Q7AE5.js";
36
36
  export {
@@ -2,8 +2,8 @@
2
2
  import {
3
3
  countSeverity,
4
4
  runCi
5
- } from "./chunk-GOGDUA4G.js";
6
- import "./chunk-HPPK4IA3.js";
5
+ } from "./chunk-3ERLNXT2.js";
6
+ import "./chunk-PNQS67JC.js";
7
7
  import {
8
8
  buildReviewPrompt,
9
9
  buildSecurityReviewPrompt,
@@ -11,15 +11,15 @@ import {
11
11
  } from "./chunk-HLWUDRBO.js";
12
12
  import {
13
13
  ProviderRegistry
14
- } from "./chunk-MJ6JLSPR.js";
14
+ } from "./chunk-GDJII6TK.js";
15
15
  import {
16
16
  ConfigManager
17
- } from "./chunk-DFV7F6S7.js";
18
- import "./chunk-HOS7CGBI.js";
17
+ } from "./chunk-XYNZVGUH.js";
18
+ import "./chunk-XPNKMDBH.js";
19
19
  import "./chunk-TU3L3PW7.js";
20
20
  import {
21
21
  VERSION
22
- } from "./chunk-5DLLJ67Q.js";
22
+ } from "./chunk-I7LBWY7E.js";
23
23
  import "./chunk-IW3Q7AE5.js";
24
24
 
25
25
  // src/cli/pr.ts
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  executeTests,
3
3
  runTestsTool
4
- } from "./chunk-DGMSS565.js";
5
- import "./chunk-QEVXWHWN.js";
4
+ } from "./chunk-GWXWAQVM.js";
5
+ import "./chunk-S5YGYXAE.js";
6
6
  export {
7
7
  executeTests,
8
8
  runTestsTool
@@ -2,8 +2,8 @@
2
2
  import {
3
3
  executeTests,
4
4
  runTestsTool
5
- } from "./chunk-BQXVQKMH.js";
6
- import "./chunk-5DLLJ67Q.js";
5
+ } from "./chunk-WLSK55ED.js";
6
+ import "./chunk-I7LBWY7E.js";
7
7
  export {
8
8
  executeTests,
9
9
  runTestsTool
@@ -1,26 +1,26 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  ToolRegistry
4
- } from "./chunk-QI4AJPRD.js";
5
- import "./chunk-4VWME5CO.js";
4
+ } from "./chunk-QJXUJFYD.js";
5
+ import "./chunk-HT5LC2PL.js";
6
6
  import "./chunk-GLSR2NR3.js";
7
7
  import "./chunk-UUSRWSSX.js";
8
8
  import "./chunk-CKH4KQ4E.js";
9
9
  import "./chunk-BXP6YZ2P.js";
10
10
  import {
11
11
  runTool
12
- } from "./chunk-X2ZXQMN2.js";
12
+ } from "./chunk-BIXQHN77.js";
13
13
  import {
14
14
  getDangerLevel,
15
15
  schemaToJsonSchema
16
- } from "./chunk-HOS7CGBI.js";
16
+ } from "./chunk-XPNKMDBH.js";
17
17
  import "./chunk-TU3L3PW7.js";
18
18
  import "./chunk-HOSJZMQS.js";
19
19
  import "./chunk-4BKXL7SM.js";
20
- import "./chunk-BQXVQKMH.js";
20
+ import "./chunk-WLSK55ED.js";
21
21
  import {
22
22
  VERSION
23
- } from "./chunk-5DLLJ67Q.js";
23
+ } from "./chunk-I7LBWY7E.js";
24
24
  import "./chunk-6RPGQ5CG.js";
25
25
  import "./chunk-KHYD3WXE.js";
26
26
  import "./chunk-NYNSYLFY.js";
@@ -23,7 +23,7 @@ import {
23
23
  scanDirTree,
24
24
  scanProject,
25
25
  setupProxy
26
- } from "./chunk-NX55D52V.js";
26
+ } from "./chunk-BWZT74E3.js";
27
27
  import {
28
28
  computeCost,
29
29
  formatCost,
@@ -63,7 +63,7 @@ import {
63
63
  spawnAgentContext,
64
64
  truncateOutput,
65
65
  undoStack
66
- } from "./chunk-QI4AJPRD.js";
66
+ } from "./chunk-QJXUJFYD.js";
67
67
  import {
68
68
  addMemoryEntry,
69
69
  clearMemoryEntries,
@@ -77,7 +77,7 @@ import {
77
77
  parseWritableScope,
78
78
  updateMemoryApproval,
79
79
  updateMemoryEntry
80
- } from "./chunk-4VWME5CO.js";
80
+ } from "./chunk-HT5LC2PL.js";
81
81
  import "./chunk-GLSR2NR3.js";
82
82
  import "./chunk-UUSRWSSX.js";
83
83
  import "./chunk-CKH4KQ4E.js";
@@ -90,13 +90,13 @@ import {
90
90
  buildDoctorReport,
91
91
  formatDoctorReport,
92
92
  loadContextFiles
93
- } from "./chunk-ELYDRIKV.js";
93
+ } from "./chunk-GVLUGPIX.js";
94
94
  import {
95
95
  ProviderRegistry
96
- } from "./chunk-MJ6JLSPR.js";
96
+ } from "./chunk-GDJII6TK.js";
97
97
  import {
98
98
  ConfigManager
99
- } from "./chunk-DFV7F6S7.js";
99
+ } from "./chunk-XYNZVGUH.js";
100
100
  import {
101
101
  describePlugin,
102
102
  getActivePluginAssets,
@@ -111,7 +111,7 @@ import {
111
111
  runTool,
112
112
  setPluginEnabled,
113
113
  trustPlugin
114
- } from "./chunk-X2ZXQMN2.js";
114
+ } from "./chunk-BIXQHN77.js";
115
115
  import {
116
116
  CONTENT_ONLY_STREAM_REMINDER,
117
117
  TEE_FINAL_USER_NUDGE,
@@ -128,7 +128,7 @@ import {
128
128
  stripOuterCodeFence,
129
129
  stripToolCallReminder,
130
130
  teeStreamErrorSummary
131
- } from "./chunk-HOS7CGBI.js";
131
+ } from "./chunk-XPNKMDBH.js";
132
132
  import "./chunk-TU3L3PW7.js";
133
133
  import {
134
134
  formatGitContextForPrompt,
@@ -136,7 +136,7 @@ import {
136
136
  getGitRoot
137
137
  } from "./chunk-HOSJZMQS.js";
138
138
  import "./chunk-4BKXL7SM.js";
139
- import "./chunk-BQXVQKMH.js";
139
+ import "./chunk-WLSK55ED.js";
140
140
  import {
141
141
  AGENTIC_BEHAVIOR_GUIDELINE,
142
142
  AUTHOR,
@@ -152,7 +152,7 @@ import {
152
152
  SKILLS_DIR_NAME,
153
153
  VERSION,
154
154
  buildUserIdentityPrompt
155
- } from "./chunk-5DLLJ67Q.js";
155
+ } from "./chunk-I7LBWY7E.js";
156
156
  import "./chunk-6RPGQ5CG.js";
157
157
  import "./chunk-KHYD3WXE.js";
158
158
  import "./chunk-NYNSYLFY.js";
@@ -815,7 +815,7 @@ Cache: write=${cacheCreate} read=${cacheRead}` : "";
815
815
  Cost: ${formatCost(cost)}` : "";
816
816
  let memoryLine = "";
817
817
  try {
818
- const { countPendingMemories } = await import("./persistent-memory-CHPNGWN2.js");
818
+ const { countPendingMemories } = await import("./persistent-memory-ZHYBVUGR.js");
819
819
  const pending = countPendingMemories(ctx.config.getConfigDir());
820
820
  if (pending > 0) memoryLine = `
821
821
  Memory: \u26A0 ${pending} pending approval \u2014 see the Memory panel or /memory`;
@@ -1624,7 +1624,7 @@ async function handleSecurityReview(args, ctx) {
1624
1624
  async function handleTest(args, ctx) {
1625
1625
  ctx.send({ type: "info", message: "\u{1F9EA} Running tests..." });
1626
1626
  try {
1627
- const { executeTests } = await import("./run-tests-EOHLRWQC.js");
1627
+ const { executeTests } = await import("./run-tests-Y6CBCPFF.js");
1628
1628
  const argStr = args.join(" ").trim();
1629
1629
  let testArgs = {};
1630
1630
  if (argStr) {
@@ -1888,7 +1888,7 @@ async function handleMemory(args, ctx) {
1888
1888
  ctx.handleMemoryManage(sub, args[1], sub === "expire" ? args[2] : void 0);
1889
1889
  } else if (sub === "export") {
1890
1890
  if (args[1] === "md") {
1891
- const { exportMemoryEntries: exportMemoryEntries2 } = await import("./persistent-memory-CHPNGWN2.js");
1891
+ const { exportMemoryEntries: exportMemoryEntries2 } = await import("./persistent-memory-ZHYBVUGR.js");
1892
1892
  ctx.send({
1893
1893
  type: "export_data",
1894
1894
  format: "md",
@@ -3,26 +3,26 @@ import {
3
3
  ToolRegistry,
4
4
  googleSearchContext,
5
5
  truncateOutput
6
- } from "./chunk-QI4AJPRD.js";
7
- import "./chunk-4VWME5CO.js";
6
+ } from "./chunk-QJXUJFYD.js";
7
+ import "./chunk-HT5LC2PL.js";
8
8
  import "./chunk-GLSR2NR3.js";
9
9
  import "./chunk-UUSRWSSX.js";
10
10
  import "./chunk-CKH4KQ4E.js";
11
11
  import "./chunk-BXP6YZ2P.js";
12
12
  import {
13
13
  runTool
14
- } from "./chunk-X2ZXQMN2.js";
14
+ } from "./chunk-BIXQHN77.js";
15
15
  import {
16
16
  getDangerLevel,
17
17
  runLeanAgentLoop
18
- } from "./chunk-HOS7CGBI.js";
18
+ } from "./chunk-XPNKMDBH.js";
19
19
  import "./chunk-TU3L3PW7.js";
20
20
  import "./chunk-HOSJZMQS.js";
21
21
  import "./chunk-4BKXL7SM.js";
22
- import "./chunk-BQXVQKMH.js";
22
+ import "./chunk-WLSK55ED.js";
23
23
  import {
24
24
  SUBAGENT_ALLOWED_TOOLS
25
- } from "./chunk-5DLLJ67Q.js";
25
+ } from "./chunk-I7LBWY7E.js";
26
26
  import "./chunk-6RPGQ5CG.js";
27
27
  import "./chunk-KHYD3WXE.js";
28
28
  import "./chunk-NYNSYLFY.js";
@@ -8,9 +8,9 @@ import {
8
8
  } from "./chunk-EZ6QLHOS.js";
9
9
  import {
10
10
  ConfigManager
11
- } from "./chunk-DFV7F6S7.js";
11
+ } from "./chunk-XYNZVGUH.js";
12
12
  import "./chunk-TU3L3PW7.js";
13
- import "./chunk-5DLLJ67Q.js";
13
+ import "./chunk-I7LBWY7E.js";
14
14
  import "./chunk-IW3Q7AE5.js";
15
15
 
16
16
  // src/cli/usage.ts
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jinzd-ai-cli",
3
- "version": "0.4.257",
3
+ "version": "0.4.258",
4
4
  "description": "Cross-platform REPL-style AI CLI with multi-provider support",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",