jinzd-ai-cli 0.4.285 → 0.4.287

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 (42) hide show
  1. package/dist/{batch-R563COWE.js → batch-6OH7D5YU.js} +13 -10
  2. package/dist/{chat-index-TDU3S2MG.js → chat-index-DGUOUUQW.js} +2 -2
  3. package/dist/{chunk-VLM4SKKX.js → chunk-3BHJKMPQ.js} +1 -1
  4. package/dist/{chunk-UW33KJW5.js → chunk-3Y5BCGD2.js} +1 -1
  5. package/dist/{chunk-DV5D7RXZ.js → chunk-5F7BGV72.js} +1 -1
  6. package/dist/{chunk-UGY5SVNX.js → chunk-ALSSNFNK.js} +94 -4
  7. package/dist/{chunk-KLBMKONV.js → chunk-AXSWLNCU.js} +4 -4
  8. package/dist/chunk-CGLYJRFA.js +95 -0
  9. package/dist/{chunk-LF6SPK7I.js → chunk-CYUAHF6X.js} +10 -2
  10. package/dist/{chunk-AOF4K5N7.js → chunk-ERDFOXYK.js} +1 -1
  11. package/dist/{chunk-XGRZA5V6.js → chunk-EU6NMK7G.js} +4 -4
  12. package/dist/{chunk-5CC5HQFW.js → chunk-HEUB5PV6.js} +30 -30
  13. package/dist/chunk-HNUT4STJ.js +5684 -0
  14. package/dist/{chunk-WBF4AOHJ.js → chunk-L625B2XV.js} +18 -110
  15. package/dist/{chunk-6G7Y2VG4.js → chunk-L7RAEUUN.js} +1 -1
  16. package/dist/{chunk-DPTEC6AQ.js → chunk-LWPWBRAC.js} +12 -10
  17. package/dist/chunk-RS7SKYTS.js +45 -0
  18. package/dist/{chunk-3LFB4YZA.js → chunk-RZVGR3KD.js} +4 -4
  19. package/dist/{chunk-PHK7QQH3.js → chunk-UDFK5Q52.js} +1 -1
  20. package/dist/{ci-E4CYVEOW.js → ci-WXCMI4ND.js} +5 -5
  21. package/dist/{ci-format-7XTLOAB5.js → ci-format-JXD2BQM6.js} +2 -2
  22. package/dist/{constants-L7D3IXWV.js → constants-2B7CN2ER.js} +1 -1
  23. package/dist/constants-SRRV3K5Y.js +80 -0
  24. package/dist/{doctor-cli-JLROIGLO.js → doctor-cli-LQYTDJ74.js} +6 -5
  25. package/dist/electron-server.js +3643 -257
  26. package/dist/git-context-VNCA2GU7.js +10 -0
  27. package/dist/{hub-7UDPLWBI.js → hub-Y62P5MIA.js} +1 -1
  28. package/dist/index.js +316 -3656
  29. package/dist/{persistent-memory-CNJOZ7U2.js → persistent-memory-3N2XQKJK.js} +3 -2
  30. package/dist/{persistent-memory-DRXWYBJS.js → persistent-memory-46JSUEYV.js} +2 -2
  31. package/dist/{pr-3W5547IS.js → pr-L7Y3XHGL.js} +5 -5
  32. package/dist/{run-tests-LP2CI4MT.js → run-tests-3ZOMRFIX.js} +2 -2
  33. package/dist/{run-tests-7B7N4YAE.js → run-tests-WC644BHH.js} +2 -2
  34. package/dist/{semantic-FF6DDJI6.js → semantic-VPNKXKKK.js} +2 -2
  35. package/dist/{server-NIPB62XP.js → server-L4QHJT2I.js} +6 -5
  36. package/dist/{server-YBMWBJVG.js → server-XWURZCAF.js} +22 -16
  37. package/dist/{task-orchestrator-RYG4ZTDO.js → task-orchestrator-6TVKJYKC.js} +6 -5
  38. package/dist/{usage-YDVLCZDU.js → usage-L2PSI2KH.js} +4 -3
  39. package/package.json +1 -1
  40. package/dist/chunk-HBAYEVVJ.js +0 -2362
  41. package/dist/{chunk-AEAYUKSY.js → chunk-7XU4BATV.js} +3 -3
  42. package/dist/{chunk-YOVHMQEJ.js → chunk-I4GQRMFV.js} +3 -3
@@ -2,119 +2,30 @@ import {
2
2
  DEFAULT_PATTERNS,
3
3
  redactString
4
4
  } from "./chunk-FSC6KEWU.js";
5
+ import {
6
+ atomicWriteFileSync
7
+ } from "./chunk-6BUTA5VW.js";
8
+ import {
9
+ getGitRoot
10
+ } from "./chunk-CGLYJRFA.js";
5
11
  import {
6
12
  MEMORY_FILE_NAME,
7
13
  MEMORY_MAX_CHARS,
8
14
  MEMORY_STORE_FILE_NAME
9
- } from "./chunk-LF6SPK7I.js";
10
- import {
11
- atomicWriteFileSync
12
- } from "./chunk-6BUTA5VW.js";
15
+ } from "./chunk-CYUAHF6X.js";
13
16
 
14
17
  // src/memory/persistent-memory.ts
15
- import { copyFileSync, existsSync as existsSync2, mkdirSync, readFileSync, statSync } from "fs";
18
+ import { copyFileSync, existsSync, mkdirSync, readFileSync, statSync } from "fs";
16
19
  import { randomUUID, createHash } from "crypto";
17
- import { dirname, join as join2, resolve } from "path";
18
-
19
- // src/tools/git-context.ts
20
- import { execSync } from "child_process";
21
- import { existsSync } from "fs";
22
- import { join } from "path";
23
- function runGit(cmd, cwd) {
24
- try {
25
- return execSync(`git ${cmd}`, {
26
- cwd,
27
- encoding: "utf-8",
28
- stdio: ["pipe", "pipe", "pipe"],
29
- timeout: 5e3
30
- }).trim();
31
- } catch {
32
- return null;
33
- }
34
- }
35
- function getGitRoot(cwd = process.cwd()) {
36
- return runGit("rev-parse --show-toplevel", cwd);
37
- }
38
- function getGitContext(cwd = process.cwd()) {
39
- if (!existsSync(join(cwd, ".git"))) {
40
- const result = runGit("rev-parse --git-dir", cwd);
41
- if (!result) return null;
42
- }
43
- const branch = runGit("rev-parse --abbrev-ref HEAD", cwd);
44
- if (!branch) return null;
45
- const statusOutput = runGit("status --porcelain", cwd) ?? "";
46
- const statusLines = statusOutput ? statusOutput.split("\n").filter(Boolean) : [];
47
- const stagedFiles = [];
48
- const changedFiles = [];
49
- for (const line of statusLines) {
50
- const xy = line.slice(0, 2);
51
- const file = line.slice(3).trim();
52
- const indexStatus = xy[0];
53
- const workStatus = xy[1];
54
- if (indexStatus && indexStatus !== " " && indexStatus !== "?") {
55
- stagedFiles.push(`${indexStatus} ${file}`);
56
- }
57
- if (workStatus && workStatus !== " ") {
58
- changedFiles.push(`${workStatus} ${file}`);
59
- }
60
- }
61
- const logOutput = runGit("log --oneline -3", cwd) ?? "";
62
- const recentCommits = logOutput ? logOutput.split("\n").filter(Boolean) : [];
63
- const unpushedOutput = runGit("log @{u}..HEAD --oneline", cwd);
64
- const hasUnpushed = unpushedOutput !== null && unpushedOutput.trim().length > 0;
65
- return {
66
- branch,
67
- changedFiles,
68
- stagedFiles,
69
- recentCommits,
70
- hasUnpushed
71
- };
72
- }
73
- function formatGitContextForPrompt(ctx) {
74
- const lines = ["# Git Repository Status", ""];
75
- lines.push(`- **Branch**: \`${ctx.branch}\``);
76
- if (ctx.stagedFiles.length > 0) {
77
- lines.push(`- **Staged** (${ctx.stagedFiles.length} files):`);
78
- for (const f of ctx.stagedFiles.slice(0, 10)) {
79
- lines.push(` - ${f}`);
80
- }
81
- if (ctx.stagedFiles.length > 10) {
82
- lines.push(` - ... and ${ctx.stagedFiles.length - 10} more`);
83
- }
84
- }
85
- if (ctx.changedFiles.length > 0) {
86
- lines.push(`- **Modified** (${ctx.changedFiles.length} files):`);
87
- for (const f of ctx.changedFiles.slice(0, 10)) {
88
- lines.push(` - ${f}`);
89
- }
90
- if (ctx.changedFiles.length > 10) {
91
- lines.push(` - ... and ${ctx.changedFiles.length - 10} more`);
92
- }
93
- }
94
- if (ctx.stagedFiles.length === 0 && ctx.changedFiles.length === 0) {
95
- lines.push("- **Working tree**: clean");
96
- }
97
- if (ctx.recentCommits.length > 0) {
98
- lines.push("- **Recent commits**:");
99
- for (const c of ctx.recentCommits) {
100
- lines.push(` - ${c}`);
101
- }
102
- }
103
- if (ctx.hasUnpushed) {
104
- lines.push("- \u26A0\uFE0F Has unpushed commits");
105
- }
106
- return lines.join("\n");
107
- }
108
-
109
- // src/memory/persistent-memory.ts
20
+ import { dirname, join, resolve } from "path";
110
21
  function parseWritableScope(value) {
111
22
  return value === "personal" || value === "project" ? value : void 0;
112
23
  }
113
24
  function memoryStorePath(configDir) {
114
- return join2(configDir, MEMORY_STORE_FILE_NAME);
25
+ return join(configDir, MEMORY_STORE_FILE_NAME);
115
26
  }
116
27
  function memoryMarkdownPath(configDir) {
117
- return join2(configDir, MEMORY_FILE_NAME);
28
+ return join(configDir, MEMORY_FILE_NAME);
118
29
  }
119
30
  function getProjectKey(cwd = process.cwd()) {
120
31
  return resolve(getGitRoot(cwd) ?? cwd);
@@ -155,7 +66,7 @@ function normalizeEntry(value) {
155
66
  }
156
67
  function legacyEntriesFromMarkdown(configDir) {
157
68
  const file = memoryMarkdownPath(configDir);
158
- if (!existsSync2(file)) return [];
69
+ if (!existsSync(file)) return [];
159
70
  const content = readFileSync(file, "utf-8").trim();
160
71
  if (!content) return [];
161
72
  const parts = content.split(/\n(?=##\s+\d{4}-\d{2}-\d{2})/g);
@@ -172,7 +83,7 @@ ${chunk}`).digest("hex").slice(0, 12);
172
83
  }
173
84
  function loadMemoryEntries(configDir) {
174
85
  const file = memoryStorePath(configDir);
175
- if (!existsSync2(file)) return legacyEntriesFromMarkdown(configDir);
86
+ if (!existsSync(file)) return legacyEntriesFromMarkdown(configDir);
176
87
  const text = readFileSync(file, "utf-8").trim();
177
88
  if (!text) return [];
178
89
  const entries = [];
@@ -280,8 +191,8 @@ function clearMemoryEntries(configDir) {
280
191
  const storePath = memoryStorePath(configDir);
281
192
  let backupPath = null;
282
193
  if (entries.length > 0) {
283
- const sourceFile = existsSync2(storePath) ? storePath : memoryMarkdownPath(configDir);
284
- if (existsSync2(sourceFile)) {
194
+ const sourceFile = existsSync(storePath) ? storePath : memoryMarkdownPath(configDir);
195
+ if (existsSync(sourceFile)) {
285
196
  backupPath = `${sourceFile}.bak.${(/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-")}`;
286
197
  copyFileSync(sourceFile, backupPath);
287
198
  }
@@ -364,7 +275,7 @@ function findSimilarMemory(entries, content) {
364
275
  return null;
365
276
  }
366
277
  function listOrphanedProjectMemories(configDir) {
367
- return loadMemoryEntries(configDir).filter((entry) => entry.scope === "project" && entry.sourceProject !== void 0 && !existsSync2(entry.sourceProject));
278
+ return loadMemoryEntries(configDir).filter((entry) => entry.scope === "project" && entry.sourceProject !== void 0 && !existsSync(entry.sourceProject));
368
279
  }
369
280
  function rebindMemoryProject(configDir, idPrefix, newProjectPath) {
370
281
  const entries = loadMemoryEntries(configDir);
@@ -378,7 +289,7 @@ function rebindMemoryProject(configDir, idPrefix, newProjectPath) {
378
289
  function detectStaleLegacyMarkdownEdit(configDir) {
379
290
  const jsonlPath = memoryStorePath(configDir);
380
291
  const mdPath = memoryMarkdownPath(configDir);
381
- if (!existsSync2(jsonlPath) || !existsSync2(mdPath)) return false;
292
+ if (!existsSync(jsonlPath) || !existsSync(mdPath)) return false;
382
293
  try {
383
294
  if (!readFileSync(mdPath, "utf-8").trim()) return false;
384
295
  const jsonlMtime = statSync(jsonlPath).mtimeMs;
@@ -437,7 +348,7 @@ function backupMemoryStore(configDir, outPath) {
437
348
  const entries = loadMemoryEntries(configDir);
438
349
  if (entries.length === 0) throw new Error("memory is empty \u2014 nothing to back up");
439
350
  const storePath = memoryStorePath(configDir);
440
- if (!existsSync2(storePath)) saveMemoryEntries(configDir, entries);
351
+ if (!existsSync(storePath)) saveMemoryEntries(configDir, entries);
441
352
  const backupPath = outPath ?? `${storePath}.bak.${(/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-")}`;
442
353
  copyFileSync(storePath, backupPath);
443
354
  return { backupPath, count: entries.length };
@@ -489,9 +400,6 @@ function restoreMemoryEntries(configDir, filePath) {
489
400
  }
490
401
 
491
402
  export {
492
- getGitRoot,
493
- getGitContext,
494
- formatGitContextForPrompt,
495
403
  parseWritableScope,
496
404
  memoryStorePath,
497
405
  memoryMarkdownPath,
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  TEST_TIMEOUT
4
- } from "./chunk-PHK7QQH3.js";
4
+ } from "./chunk-UDFK5Q52.js";
5
5
 
6
6
  // src/tools/builtin/run-tests.ts
7
7
  import { execSync, spawnSync } from "child_process";
@@ -1,4 +1,7 @@
1
1
  #!/usr/bin/env node
2
+ import {
3
+ loadJsonState
4
+ } from "./chunk-RS7SKYTS.js";
2
5
  import {
3
6
  atomicWriteFileSync
4
7
  } from "./chunk-IW3Q7AE5.js";
@@ -166,7 +169,6 @@ function currencyNote(currency = displayCurrency) {
166
169
  }
167
170
 
168
171
  // src/core/cost-tracker.ts
169
- import { existsSync, readFileSync } from "fs";
170
172
  import { join } from "path";
171
173
  var CostTracker = class _CostTracker {
172
174
  filePath;
@@ -181,16 +183,16 @@ var CostTracker = class _CostTracker {
181
183
  /** P2-PERF-04: debounce interval (ms) — coalesces multiple rapid addCost calls. */
182
184
  static SAVE_DEBOUNCE_MS = 2e3;
183
185
  load() {
184
- try {
185
- if (existsSync(this.filePath)) {
186
- const data = JSON.parse(readFileSync(this.filePath, "utf-8"));
187
- if (data.version === 1 && Array.isArray(data.records)) {
188
- this.records = [...data.records].sort((a, b) => a.date.localeCompare(b.date));
189
- }
186
+ const loaded = loadJsonState(this.filePath, {
187
+ label: "cost history",
188
+ fallback: () => [],
189
+ parse: (raw) => {
190
+ const data = raw;
191
+ if (!data || data.version !== 1 || !Array.isArray(data.records)) return null;
192
+ return [...data.records].sort((a, b) => a.date.localeCompare(b.date));
190
193
  }
191
- } catch {
192
- this.records = [];
193
- }
194
+ });
195
+ this.records = loaded.value;
194
196
  }
195
197
  /**
196
198
  * Save to disk (atomic write).
@@ -0,0 +1,45 @@
1
+ #!/usr/bin/env node
2
+
3
+ // src/core/json-state.ts
4
+ import { existsSync, readFileSync, renameSync } from "fs";
5
+ function quarantinePath(filePath, now) {
6
+ const stamp = now.toISOString().replace(/[:.]/g, "-");
7
+ let candidate = `${filePath}.corrupt.${stamp}`;
8
+ let n = 1;
9
+ while (existsSync(candidate)) candidate = `${filePath}.corrupt.${stamp}-${n++}`;
10
+ return candidate;
11
+ }
12
+ function loadJsonState(filePath, opts) {
13
+ const warn = opts.warn ?? ((m) => console.error(m));
14
+ const now = opts.now ?? (() => /* @__PURE__ */ new Date());
15
+ if (!existsSync(filePath)) return { value: opts.fallback() };
16
+ let raw;
17
+ let reason;
18
+ try {
19
+ raw = JSON.parse(readFileSync(filePath, "utf-8"));
20
+ const parsed = opts.parse(raw);
21
+ if (parsed !== null) return { value: parsed };
22
+ reason = "unrecognized structure or version";
23
+ } catch (err) {
24
+ reason = err instanceof Error ? err.message : String(err);
25
+ }
26
+ let quarantinedTo;
27
+ try {
28
+ quarantinedTo = quarantinePath(filePath, now());
29
+ renameSync(filePath, quarantinedTo);
30
+ } catch (err) {
31
+ quarantinedTo = void 0;
32
+ warn(
33
+ `\u26A0 ${opts.label} file at ${filePath} is unreadable (${reason}), and it could not be moved aside (${err instanceof Error ? err.message : String(err)}). Starting empty \u2014 the next save will overwrite it.`
34
+ );
35
+ return { value: opts.fallback() };
36
+ }
37
+ warn(
38
+ `\u26A0 ${opts.label} file was unreadable (${reason}). The original was kept at ${quarantinedTo}; starting with an empty ${opts.label}.`
39
+ );
40
+ return { value: opts.fallback(), quarantinedTo };
41
+ }
42
+
43
+ export {
44
+ loadJsonState
45
+ };
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  evaluateCiGate,
4
4
  normalizeCiThresholds
5
- } from "./chunk-UW33KJW5.js";
5
+ } from "./chunk-3Y5BCGD2.js";
6
6
  import {
7
7
  buildReviewPrompt,
8
8
  buildSecurityReviewPrompt,
@@ -13,13 +13,13 @@ import {
13
13
  } from "./chunk-6YZEZFX5.js";
14
14
  import {
15
15
  ProviderRegistry
16
- } from "./chunk-UGY5SVNX.js";
16
+ } from "./chunk-ALSSNFNK.js";
17
17
  import {
18
18
  ConfigManager
19
- } from "./chunk-DV5D7RXZ.js";
19
+ } from "./chunk-5F7BGV72.js";
20
20
  import {
21
21
  VERSION
22
- } from "./chunk-PHK7QQH3.js";
22
+ } from "./chunk-UDFK5Q52.js";
23
23
 
24
24
  // src/cli/ci.ts
25
25
  import { execFileSync } from "child_process";
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
 
3
3
  // src/core/constants.ts
4
- var VERSION = "0.4.285";
4
+ var VERSION = "0.4.287";
5
5
  var APP_NAME = "ai-cli";
6
6
  var CONFIG_DIR_NAME = ".aicli";
7
7
  var CONFIG_FILE_NAME = "config.json";
@@ -3,16 +3,16 @@ import {
3
3
  CI_COMMENT_MARKER,
4
4
  countSeverity,
5
5
  runCi
6
- } from "./chunk-3LFB4YZA.js";
7
- import "./chunk-UW33KJW5.js";
6
+ } from "./chunk-RZVGR3KD.js";
7
+ import "./chunk-3Y5BCGD2.js";
8
8
  import "./chunk-HLWUDRBO.js";
9
9
  import "./chunk-6YZEZFX5.js";
10
- import "./chunk-UGY5SVNX.js";
11
- import "./chunk-DV5D7RXZ.js";
10
+ import "./chunk-ALSSNFNK.js";
11
+ import "./chunk-5F7BGV72.js";
12
12
  import "./chunk-TEXT4DAT.js";
13
13
  import "./chunk-TU3L3PW7.js";
14
14
  import "./chunk-IW3Q7AE5.js";
15
- import "./chunk-PHK7QQH3.js";
15
+ import "./chunk-UDFK5Q52.js";
16
16
  export {
17
17
  CI_COMMENT_MARKER,
18
18
  countSeverity,
@@ -6,8 +6,8 @@ import {
6
6
  formatCiResult,
7
7
  formatCiSarif,
8
8
  normalizeCiThresholds
9
- } from "./chunk-UW33KJW5.js";
10
- import "./chunk-PHK7QQH3.js";
9
+ } from "./chunk-3Y5BCGD2.js";
10
+ import "./chunk-UDFK5Q52.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-PHK7QQH3.js";
41
+ } from "./chunk-UDFK5Q52.js";
42
42
  export {
43
43
  AGENTIC_BEHAVIOR_GUIDELINE,
44
44
  APP_NAME,
@@ -0,0 +1,80 @@
1
+ import {
2
+ AGENTIC_BEHAVIOR_GUIDELINE,
3
+ APP_NAME,
4
+ AUTHOR,
5
+ AUTHOR_EMAIL,
6
+ CONFIG_DIR_NAME,
7
+ CONFIG_FILE_NAME,
8
+ CONTEXT_FILE_CANDIDATES,
9
+ CONTEXT_FILE_MAX_BYTES,
10
+ CONTEXT_PRESSURE_THRESHOLD,
11
+ CONTEXT_WARNING_THRESHOLD,
12
+ CUSTOM_COMMANDS_DIR_NAME,
13
+ DEFAULT_MAX_TOKENS,
14
+ DEFAULT_MAX_TOOL_OUTPUT_CHARS_CAP,
15
+ DEFAULT_MAX_TOOL_ROUNDS,
16
+ DEFAULT_TEMPERATURE,
17
+ DESCRIPTION,
18
+ DEV_STATE_FILE_NAME,
19
+ HISTORY_DIR_NAME,
20
+ MAX_HISTORY_DAYS,
21
+ MCP_CALL_TIMEOUT,
22
+ MCP_CONNECT_TIMEOUT,
23
+ MCP_PROJECT_CONFIG_NAME,
24
+ MCP_PROTOCOL_VERSION,
25
+ MCP_TOOL_PREFIX,
26
+ MEMORY_FILE_NAME,
27
+ MEMORY_MAX_CHARS,
28
+ MEMORY_STORE_FILE_NAME,
29
+ PLAN_MODE_READONLY_TOOLS,
30
+ PLAN_MODE_SYSTEM_ADDON,
31
+ PLUGINS_DIR_NAME,
32
+ REPO_URL,
33
+ SKILLS_DIR_NAME,
34
+ SUBAGENT_ALLOWED_TOOLS,
35
+ SUBAGENT_DEFAULT_MAX_ROUNDS,
36
+ SUBAGENT_MAX_ROUNDS_LIMIT,
37
+ TEST_TIMEOUT,
38
+ VERSION,
39
+ buildUserIdentityPrompt
40
+ } from "./chunk-CYUAHF6X.js";
41
+ export {
42
+ AGENTIC_BEHAVIOR_GUIDELINE,
43
+ APP_NAME,
44
+ AUTHOR,
45
+ AUTHOR_EMAIL,
46
+ CONFIG_DIR_NAME,
47
+ CONFIG_FILE_NAME,
48
+ CONTEXT_FILE_CANDIDATES,
49
+ CONTEXT_FILE_MAX_BYTES,
50
+ CONTEXT_PRESSURE_THRESHOLD,
51
+ CONTEXT_WARNING_THRESHOLD,
52
+ CUSTOM_COMMANDS_DIR_NAME,
53
+ DEFAULT_MAX_TOKENS,
54
+ DEFAULT_MAX_TOOL_OUTPUT_CHARS_CAP,
55
+ DEFAULT_MAX_TOOL_ROUNDS,
56
+ DEFAULT_TEMPERATURE,
57
+ DESCRIPTION,
58
+ DEV_STATE_FILE_NAME,
59
+ HISTORY_DIR_NAME,
60
+ MAX_HISTORY_DAYS,
61
+ MCP_CALL_TIMEOUT,
62
+ MCP_CONNECT_TIMEOUT,
63
+ MCP_PROJECT_CONFIG_NAME,
64
+ MCP_PROTOCOL_VERSION,
65
+ MCP_TOOL_PREFIX,
66
+ MEMORY_FILE_NAME,
67
+ MEMORY_MAX_CHARS,
68
+ MEMORY_STORE_FILE_NAME,
69
+ PLAN_MODE_READONLY_TOOLS,
70
+ PLAN_MODE_SYSTEM_ADDON,
71
+ PLUGINS_DIR_NAME,
72
+ REPO_URL,
73
+ SKILLS_DIR_NAME,
74
+ SUBAGENT_ALLOWED_TOOLS,
75
+ SUBAGENT_DEFAULT_MAX_ROUNDS,
76
+ SUBAGENT_MAX_ROUNDS_LIMIT,
77
+ TEST_TIMEOUT,
78
+ VERSION,
79
+ buildUserIdentityPrompt
80
+ };
@@ -2,15 +2,16 @@
2
2
  import {
3
3
  formatDoctorReport,
4
4
  runDoctorCli
5
- } from "./chunk-XGRZA5V6.js";
6
- import "./chunk-5CC5HQFW.js";
7
- import "./chunk-UGY5SVNX.js";
8
- import "./chunk-DV5D7RXZ.js";
5
+ } from "./chunk-EU6NMK7G.js";
6
+ import "./chunk-HEUB5PV6.js";
7
+ import "./chunk-RS7SKYTS.js";
8
+ import "./chunk-ALSSNFNK.js";
9
+ import "./chunk-5F7BGV72.js";
9
10
  import "./chunk-TEXT4DAT.js";
10
11
  import "./chunk-TU3L3PW7.js";
11
12
  import "./chunk-HOSJZMQS.js";
12
13
  import "./chunk-IW3Q7AE5.js";
13
- import "./chunk-PHK7QQH3.js";
14
+ import "./chunk-UDFK5Q52.js";
14
15
  export {
15
16
  formatDoctorReport,
16
17
  runDoctorCli