jinzd-ai-cli 0.4.271 → 0.4.272
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{batch-FPDT2USZ.js → batch-3KHEEICT.js} +2 -2
- package/dist/{chat-index-7MMTGQNA.js → chat-index-2D5GK2DB.js} +2 -2
- package/dist/{chat-index-Q6BKWWAM.js → chat-index-TDU3S2MG.js} +2 -2
- package/dist/{chunk-VPXNLE7E.js → chunk-257ZLWOP.js} +2 -2
- package/dist/{chunk-B5TYJO7V.js → chunk-3FEZSLGI.js} +51 -6
- package/dist/{chunk-PMRU2CAF.js → chunk-5NZVRFLP.js} +1 -1
- package/dist/{chunk-RLAUMACS.js → chunk-A5ICBOQ6.js} +1 -1
- package/dist/{chunk-5JFRM47R.js → chunk-AHNTBH7G.js} +1 -1
- package/dist/{chunk-OBULDJSU.js → chunk-CGDYO52A.js} +1 -1
- package/dist/{chunk-OSYK6D4G.js → chunk-EZ6VXKJV.js} +1 -1
- package/dist/{chunk-RNDHIERN.js → chunk-FBYFNBUD.js} +3 -3
- package/dist/{chunk-YVTASHS5.js → chunk-FSC6KEWU.js} +51 -6
- package/dist/{chunk-6RPGQ5CG.js → chunk-GHWZVPUV.js} +1 -1
- package/dist/{chunk-V26ZMB3D.js → chunk-JMU5DELU.js} +5 -5
- package/dist/{chunk-BFPF3JF2.js → chunk-MFUAK7OM.js} +3 -3
- package/dist/{chunk-JQXXPTWL.js → chunk-MX75TNE5.js} +1 -1
- package/dist/{chunk-4UNRDXZV.js → chunk-PXWOJEFG.js} +2 -2
- package/dist/{chunk-FT3WS5PG.js → chunk-WMVG5E56.js} +1 -1
- package/dist/{chunk-PDRAOFGI.js → chunk-XBOP6NLW.js} +1 -1
- package/dist/{chunk-2RN4T4XD.js → chunk-XUNQSAUM.js} +1 -1
- package/dist/{chunk-ZWEZNKDW.js → chunk-YOVHMQEJ.js} +1 -1
- package/dist/{chunk-PG7O7N7D.js → chunk-Z75H56SJ.js} +3 -3
- package/dist/{ci-VPN5RWCO.js → ci-6CTWCDH3.js} +4 -4
- package/dist/{ci-format-GKXVCVME.js → ci-format-MC5HZBCE.js} +2 -2
- package/dist/{constants-Y43DJFGV.js → constants-SGKY75QU.js} +1 -1
- package/dist/{doctor-cli-RZGZB2TF.js → doctor-cli-7CW4BIGM.js} +4 -4
- package/dist/electron-server.js +11 -11
- package/dist/{hub-FJWP6SDG.js → hub-ORAAJOPT.js} +2 -2
- package/dist/index.js +23 -23
- package/dist/{persist-A2QSXYFY.js → persist-PQM4BRI4.js} +3 -3
- package/dist/{persistent-memory-IR47JCTF.js → persistent-memory-6NQQ2H2B.js} +3 -3
- package/dist/{persistent-memory-KX2R67AT.js → persistent-memory-6SB5ZUOI.js} +3 -3
- package/dist/{pr-NTQ3N4B4.js → pr-FNKV6IWI.js} +4 -4
- package/dist/{run-tests-UTES6HCT.js → run-tests-34HXDZXM.js} +2 -2
- package/dist/{run-tests-25CNXJ4N.js → run-tests-PS37BVOI.js} +2 -2
- package/dist/{server-R56CVHCM.js → server-IEOQIQPC.js} +18 -18
- package/dist/{server-IGCCSX4B.js → server-OZTSIFXL.js} +7 -7
- package/dist/{task-orchestrator-MFYEKR2I.js → task-orchestrator-77MEVKT6.js} +7 -7
- package/dist/{usage-FHX7PQQH.js → usage-RI6YOAOP.js} +2 -2
- package/package.json +1 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
ConfigManager
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-5NZVRFLP.js";
|
|
5
5
|
import "./chunk-TU3L3PW7.js";
|
|
6
6
|
import {
|
|
7
7
|
atomicWriteFileSync
|
|
8
8
|
} from "./chunk-IW3Q7AE5.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-WMVG5E56.js";
|
|
10
10
|
|
|
11
11
|
// src/cli/batch.ts
|
|
12
12
|
import Anthropic from "@anthropic-ai/sdk";
|
|
@@ -6,10 +6,10 @@ import {
|
|
|
6
6
|
getChatIndexStatus,
|
|
7
7
|
loadChatIndex,
|
|
8
8
|
searchChatMemory
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-GHWZVPUV.js";
|
|
10
10
|
import "./chunk-KHYD3WXE.js";
|
|
11
11
|
import "./chunk-NYNSYLFY.js";
|
|
12
|
-
import "./chunk-
|
|
12
|
+
import "./chunk-3FEZSLGI.js";
|
|
13
13
|
import "./chunk-IW3Q7AE5.js";
|
|
14
14
|
export {
|
|
15
15
|
buildChatIndex,
|
|
@@ -5,8 +5,8 @@ import {
|
|
|
5
5
|
getChatIndexStatus,
|
|
6
6
|
loadChatIndex,
|
|
7
7
|
searchChatMemory
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-
|
|
8
|
+
} from "./chunk-YOVHMQEJ.js";
|
|
9
|
+
import "./chunk-FSC6KEWU.js";
|
|
10
10
|
import "./chunk-JV5N65KN.js";
|
|
11
11
|
import "./chunk-6BUTA5VW.js";
|
|
12
12
|
export {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DEFAULT_PATTERNS,
|
|
3
3
|
redactString
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-FSC6KEWU.js";
|
|
5
5
|
import {
|
|
6
6
|
MEMORY_FILE_NAME,
|
|
7
7
|
MEMORY_MAX_CHARS,
|
|
8
8
|
MEMORY_STORE_FILE_NAME
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-AHNTBH7G.js";
|
|
10
10
|
import {
|
|
11
11
|
atomicWriteFileSync
|
|
12
12
|
} from "./chunk-6BUTA5VW.js";
|
|
@@ -12,11 +12,16 @@ var DEFAULT_PATTERNS = [
|
|
|
12
12
|
{ kind: "db-uri-password", regex: /(\b(?:postgres(?:ql)?|mysql|mongodb(?:\+srv)?|redis|amqp|mssql):\/\/[^:\s]+:)([^@\s]+)(@)/gi },
|
|
13
13
|
// Anthropic API keys
|
|
14
14
|
{ kind: "anthropic-key", regex: /(sk-ant-[a-zA-Z0-9_-]{90,})/g },
|
|
15
|
-
//
|
|
16
|
-
//
|
|
17
|
-
//
|
|
18
|
-
//
|
|
19
|
-
|
|
15
|
+
// Zhipu / GLM API keys — 真实格式是 `<32 hex>.<16 alnum>`。
|
|
16
|
+
//
|
|
17
|
+
// v0.4.108 的原始规则写的是 `<24+>.<32+>`,第二段下界取成了 32——**它从来没有
|
|
18
|
+
// 匹配上过任何一个真实的智谱密钥**。2026-08-16 在东叔的 session 历史里实测到明文
|
|
19
|
+
// 泄漏(同一份 config dump 里 deepseek / gemini / openai 都被正确打码,唯独智谱漏网),
|
|
20
|
+
// 逐字量过密钥形状后才发现下界错了。
|
|
21
|
+
//
|
|
22
|
+
// 现在按真实形状收紧:第一段恰好 32 位十六进制,第二段 16–64 位字母数字。
|
|
23
|
+
// 这比原来更严格,因此不会新增误伤——`<md5>.jpeg` 这类文件名第二段太短,不匹配。
|
|
24
|
+
{ kind: "zhipu-key", regex: /\b([a-fA-F0-9]{32}\.[a-zA-Z0-9]{16,64})\b/g },
|
|
20
25
|
// OpenAI / generic sk- keys — requires length ≥32 to avoid eating short identifiers
|
|
21
26
|
{ kind: "openai-key", regex: /(sk-(?:proj-)?[a-zA-Z0-9_-]{32,})/g },
|
|
22
27
|
// GitHub personal access tokens
|
|
@@ -48,6 +53,46 @@ var MAX_REDACT_INPUT = 512e3;
|
|
|
48
53
|
function render(placeholder, kind) {
|
|
49
54
|
return placeholder.replace("{kind}", kind);
|
|
50
55
|
}
|
|
56
|
+
function redactApiKeyMaps(input, placeholder, hits) {
|
|
57
|
+
const blockStart = /"api[_-]?keys"\s*:\s*\{/gi;
|
|
58
|
+
let out = "";
|
|
59
|
+
let cursor = 0;
|
|
60
|
+
let m;
|
|
61
|
+
while ((m = blockStart.exec(input)) !== null) {
|
|
62
|
+
const openIdx = m.index + m[0].length - 1;
|
|
63
|
+
let depth = 0;
|
|
64
|
+
let close = -1;
|
|
65
|
+
for (let i = openIdx; i < input.length; i++) {
|
|
66
|
+
const ch = input[i];
|
|
67
|
+
if (ch === "{") depth++;
|
|
68
|
+
else if (ch === "}") {
|
|
69
|
+
depth--;
|
|
70
|
+
if (depth === 0) {
|
|
71
|
+
close = i;
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
if (close < 0) break;
|
|
77
|
+
const block = input.slice(openIdx, close + 1);
|
|
78
|
+
const redactedBlock = block.replace(
|
|
79
|
+
/("[^"\n]{1,64}"\s*:\s*")([^"\n]{8,})(?=")/g,
|
|
80
|
+
(_full, prefix, secret, offset) => {
|
|
81
|
+
hits.push({
|
|
82
|
+
kind: "api-key-map",
|
|
83
|
+
start: openIdx + offset + prefix.length,
|
|
84
|
+
length: secret.length,
|
|
85
|
+
secret
|
|
86
|
+
});
|
|
87
|
+
return `${prefix}${render(placeholder, "api-key-map")}`;
|
|
88
|
+
}
|
|
89
|
+
);
|
|
90
|
+
out += input.slice(cursor, openIdx) + redactedBlock;
|
|
91
|
+
cursor = close + 1;
|
|
92
|
+
blockStart.lastIndex = close + 1;
|
|
93
|
+
}
|
|
94
|
+
return cursor === 0 ? input : out + input.slice(cursor);
|
|
95
|
+
}
|
|
51
96
|
function redactString(input, options) {
|
|
52
97
|
if (!options.enabled || !input) return { redacted: input, hits: [] };
|
|
53
98
|
if (input.length > MAX_REDACT_INPUT) return { redacted: input, hits: [] };
|
|
@@ -68,8 +113,8 @@ function redactString(input, options) {
|
|
|
68
113
|
}
|
|
69
114
|
})
|
|
70
115
|
];
|
|
71
|
-
let redacted = input;
|
|
72
116
|
const hits = [];
|
|
117
|
+
let redacted = redactApiKeyMaps(input, placeholder, hits);
|
|
73
118
|
for (const { kind, regex } of patterns) {
|
|
74
119
|
const rx = new RegExp(regex.source, regex.flags);
|
|
75
120
|
const captureCount = new RegExp(rx.source + "|").exec("").length - 1;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import {
|
|
3
3
|
evaluateCiGate,
|
|
4
4
|
normalizeCiThresholds
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-XUNQSAUM.js";
|
|
6
6
|
import {
|
|
7
7
|
buildReviewPrompt,
|
|
8
8
|
buildSecurityReviewPrompt,
|
|
@@ -16,10 +16,10 @@ import {
|
|
|
16
16
|
} from "./chunk-AUEX6RNY.js";
|
|
17
17
|
import {
|
|
18
18
|
ConfigManager
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-5NZVRFLP.js";
|
|
20
20
|
import {
|
|
21
21
|
VERSION
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-WMVG5E56.js";
|
|
23
23
|
|
|
24
24
|
// src/cli/ci.ts
|
|
25
25
|
import { execFileSync } from "child_process";
|
|
@@ -10,11 +10,16 @@ var DEFAULT_PATTERNS = [
|
|
|
10
10
|
{ kind: "db-uri-password", regex: /(\b(?:postgres(?:ql)?|mysql|mongodb(?:\+srv)?|redis|amqp|mssql):\/\/[^:\s]+:)([^@\s]+)(@)/gi },
|
|
11
11
|
// Anthropic API keys
|
|
12
12
|
{ kind: "anthropic-key", regex: /(sk-ant-[a-zA-Z0-9_-]{90,})/g },
|
|
13
|
-
//
|
|
14
|
-
//
|
|
15
|
-
//
|
|
16
|
-
//
|
|
17
|
-
|
|
13
|
+
// Zhipu / GLM API keys — 真实格式是 `<32 hex>.<16 alnum>`。
|
|
14
|
+
//
|
|
15
|
+
// v0.4.108 的原始规则写的是 `<24+>.<32+>`,第二段下界取成了 32——**它从来没有
|
|
16
|
+
// 匹配上过任何一个真实的智谱密钥**。2026-08-16 在东叔的 session 历史里实测到明文
|
|
17
|
+
// 泄漏(同一份 config dump 里 deepseek / gemini / openai 都被正确打码,唯独智谱漏网),
|
|
18
|
+
// 逐字量过密钥形状后才发现下界错了。
|
|
19
|
+
//
|
|
20
|
+
// 现在按真实形状收紧:第一段恰好 32 位十六进制,第二段 16–64 位字母数字。
|
|
21
|
+
// 这比原来更严格,因此不会新增误伤——`<md5>.jpeg` 这类文件名第二段太短,不匹配。
|
|
22
|
+
{ kind: "zhipu-key", regex: /\b([a-fA-F0-9]{32}\.[a-zA-Z0-9]{16,64})\b/g },
|
|
18
23
|
// OpenAI / generic sk- keys — requires length ≥32 to avoid eating short identifiers
|
|
19
24
|
{ kind: "openai-key", regex: /(sk-(?:proj-)?[a-zA-Z0-9_-]{32,})/g },
|
|
20
25
|
// GitHub personal access tokens
|
|
@@ -46,6 +51,46 @@ var MAX_REDACT_INPUT = 512e3;
|
|
|
46
51
|
function render(placeholder, kind) {
|
|
47
52
|
return placeholder.replace("{kind}", kind);
|
|
48
53
|
}
|
|
54
|
+
function redactApiKeyMaps(input, placeholder, hits) {
|
|
55
|
+
const blockStart = /"api[_-]?keys"\s*:\s*\{/gi;
|
|
56
|
+
let out = "";
|
|
57
|
+
let cursor = 0;
|
|
58
|
+
let m;
|
|
59
|
+
while ((m = blockStart.exec(input)) !== null) {
|
|
60
|
+
const openIdx = m.index + m[0].length - 1;
|
|
61
|
+
let depth = 0;
|
|
62
|
+
let close = -1;
|
|
63
|
+
for (let i = openIdx; i < input.length; i++) {
|
|
64
|
+
const ch = input[i];
|
|
65
|
+
if (ch === "{") depth++;
|
|
66
|
+
else if (ch === "}") {
|
|
67
|
+
depth--;
|
|
68
|
+
if (depth === 0) {
|
|
69
|
+
close = i;
|
|
70
|
+
break;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
if (close < 0) break;
|
|
75
|
+
const block = input.slice(openIdx, close + 1);
|
|
76
|
+
const redactedBlock = block.replace(
|
|
77
|
+
/("[^"\n]{1,64}"\s*:\s*")([^"\n]{8,})(?=")/g,
|
|
78
|
+
(_full, prefix, secret, offset) => {
|
|
79
|
+
hits.push({
|
|
80
|
+
kind: "api-key-map",
|
|
81
|
+
start: openIdx + offset + prefix.length,
|
|
82
|
+
length: secret.length,
|
|
83
|
+
secret
|
|
84
|
+
});
|
|
85
|
+
return `${prefix}${render(placeholder, "api-key-map")}`;
|
|
86
|
+
}
|
|
87
|
+
);
|
|
88
|
+
out += input.slice(cursor, openIdx) + redactedBlock;
|
|
89
|
+
cursor = close + 1;
|
|
90
|
+
blockStart.lastIndex = close + 1;
|
|
91
|
+
}
|
|
92
|
+
return cursor === 0 ? input : out + input.slice(cursor);
|
|
93
|
+
}
|
|
49
94
|
function redactString(input, options) {
|
|
50
95
|
if (!options.enabled || !input) return { redacted: input, hits: [] };
|
|
51
96
|
if (input.length > MAX_REDACT_INPUT) return { redacted: input, hits: [] };
|
|
@@ -66,8 +111,8 @@ function redactString(input, options) {
|
|
|
66
111
|
}
|
|
67
112
|
})
|
|
68
113
|
];
|
|
69
|
-
let redacted = input;
|
|
70
114
|
const hits = [];
|
|
115
|
+
let redacted = redactApiKeyMaps(input, placeholder, hits);
|
|
71
116
|
for (const { kind, regex } of patterns) {
|
|
72
117
|
const rx = new RegExp(regex.source, regex.flags);
|
|
73
118
|
const captureCount = new RegExp(rx.source + "|").exec("").length - 1;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import {
|
|
3
3
|
loadChatIndex,
|
|
4
4
|
searchChatMemory
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-GHWZVPUV.js";
|
|
6
6
|
import {
|
|
7
7
|
addMemoryEntry,
|
|
8
8
|
findSimilarMemory,
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
searchPersistentMemories,
|
|
12
12
|
touchMemoryReferences,
|
|
13
13
|
updateMemoryEntry
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-PXWOJEFG.js";
|
|
15
15
|
import {
|
|
16
16
|
indexProject
|
|
17
17
|
} from "./chunk-GLSR2NR3.js";
|
|
@@ -30,7 +30,7 @@ import {
|
|
|
30
30
|
runHook,
|
|
31
31
|
runLifecycleHooks,
|
|
32
32
|
runTool
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-XBOP6NLW.js";
|
|
34
34
|
import {
|
|
35
35
|
buildTruncatedArgumentsError,
|
|
36
36
|
getDangerLevel,
|
|
@@ -50,14 +50,14 @@ import {
|
|
|
50
50
|
} from "./chunk-4BKXL7SM.js";
|
|
51
51
|
import {
|
|
52
52
|
runTestsTool
|
|
53
|
-
} from "./chunk-
|
|
53
|
+
} from "./chunk-EZ6VXKJV.js";
|
|
54
54
|
import {
|
|
55
55
|
CONFIG_DIR_NAME,
|
|
56
56
|
DEFAULT_MAX_TOOL_OUTPUT_CHARS_CAP,
|
|
57
57
|
SUBAGENT_ALLOWED_TOOLS,
|
|
58
58
|
SUBAGENT_DEFAULT_MAX_ROUNDS,
|
|
59
59
|
SUBAGENT_MAX_ROUNDS_LIMIT
|
|
60
|
-
} from "./chunk-
|
|
60
|
+
} from "./chunk-WMVG5E56.js";
|
|
61
61
|
|
|
62
62
|
// src/tools/shell-pool.ts
|
|
63
63
|
import { spawn as spawn2 } from "child_process";
|
|
@@ -5,11 +5,11 @@ import {
|
|
|
5
5
|
import {
|
|
6
6
|
estimateTokens,
|
|
7
7
|
truncateForPersist
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-JMU5DELU.js";
|
|
9
9
|
import {
|
|
10
10
|
isMemoryExpired,
|
|
11
11
|
isMemoryStale
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-PXWOJEFG.js";
|
|
13
13
|
import {
|
|
14
14
|
atomicWriteFileSync
|
|
15
15
|
} from "./chunk-IW3Q7AE5.js";
|
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
MCP_PROTOCOL_VERSION,
|
|
24
24
|
MCP_TOOL_PREFIX,
|
|
25
25
|
VERSION
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-WMVG5E56.js";
|
|
27
27
|
|
|
28
28
|
// src/mcp/client.ts
|
|
29
29
|
import { spawn } from "child_process";
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import {
|
|
3
3
|
DEFAULT_PATTERNS,
|
|
4
4
|
redactString
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-3FEZSLGI.js";
|
|
6
6
|
import {
|
|
7
7
|
getGitRoot
|
|
8
8
|
} from "./chunk-HOSJZMQS.js";
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
MEMORY_FILE_NAME,
|
|
14
14
|
MEMORY_MAX_CHARS,
|
|
15
15
|
MEMORY_STORE_FILE_NAME
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-WMVG5E56.js";
|
|
17
17
|
|
|
18
18
|
// src/memory/persistent-memory.ts
|
|
19
19
|
import { copyFileSync, existsSync, mkdirSync, readFileSync, statSync } from "fs";
|
|
@@ -8,13 +8,13 @@ import {
|
|
|
8
8
|
listHooks,
|
|
9
9
|
listInstalledPlugins,
|
|
10
10
|
resetStats
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-XBOP6NLW.js";
|
|
12
12
|
import {
|
|
13
13
|
ProviderRegistry
|
|
14
14
|
} from "./chunk-AUEX6RNY.js";
|
|
15
15
|
import {
|
|
16
16
|
ConfigManager
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-5NZVRFLP.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-
|
|
29
|
+
} from "./chunk-WMVG5E56.js";
|
|
30
30
|
|
|
31
31
|
// src/diagnostics/doctor-report.ts
|
|
32
32
|
import { existsSync as existsSync3, statSync as statSync2 } from "fs";
|
|
@@ -3,16 +3,16 @@ import {
|
|
|
3
3
|
CI_COMMENT_MARKER,
|
|
4
4
|
countSeverity,
|
|
5
5
|
runCi
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-FBYFNBUD.js";
|
|
7
|
+
import "./chunk-XUNQSAUM.js";
|
|
8
8
|
import "./chunk-HLWUDRBO.js";
|
|
9
9
|
import "./chunk-6YZEZFX5.js";
|
|
10
10
|
import "./chunk-AUEX6RNY.js";
|
|
11
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-5NZVRFLP.js";
|
|
12
12
|
import "./chunk-3OBY7WSS.js";
|
|
13
13
|
import "./chunk-TU3L3PW7.js";
|
|
14
14
|
import "./chunk-IW3Q7AE5.js";
|
|
15
|
-
import "./chunk-
|
|
15
|
+
import "./chunk-WMVG5E56.js";
|
|
16
16
|
export {
|
|
17
17
|
CI_COMMENT_MARKER,
|
|
18
18
|
countSeverity,
|
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
import {
|
|
3
3
|
formatDoctorReport,
|
|
4
4
|
runDoctorCli
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-Z75H56SJ.js";
|
|
6
|
+
import "./chunk-XBOP6NLW.js";
|
|
7
7
|
import "./chunk-AUEX6RNY.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-5NZVRFLP.js";
|
|
9
9
|
import "./chunk-3OBY7WSS.js";
|
|
10
10
|
import "./chunk-TU3L3PW7.js";
|
|
11
11
|
import "./chunk-HOSJZMQS.js";
|
|
12
12
|
import "./chunk-IW3Q7AE5.js";
|
|
13
|
-
import "./chunk-
|
|
13
|
+
import "./chunk-WMVG5E56.js";
|
|
14
14
|
export {
|
|
15
15
|
formatDoctorReport,
|
|
16
16
|
runDoctorCli
|
package/dist/electron-server.js
CHANGED
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
searchCandidates,
|
|
8
8
|
searchChatMemory,
|
|
9
9
|
updateSessionInIndex
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-YOVHMQEJ.js";
|
|
11
11
|
import {
|
|
12
12
|
fileCheckpoints
|
|
13
13
|
} from "./chunk-SKET65WZ.js";
|
|
@@ -36,14 +36,14 @@ import {
|
|
|
36
36
|
touchMemoryReferences,
|
|
37
37
|
updateMemoryApproval,
|
|
38
38
|
updateMemoryEntry
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-257ZLWOP.js";
|
|
40
40
|
import {
|
|
41
41
|
redactJson,
|
|
42
42
|
scanString
|
|
43
|
-
} from "./chunk-
|
|
43
|
+
} from "./chunk-FSC6KEWU.js";
|
|
44
44
|
import {
|
|
45
45
|
runTestsTool
|
|
46
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-A5ICBOQ6.js";
|
|
47
47
|
import {
|
|
48
48
|
AGENTIC_BEHAVIOR_GUIDELINE,
|
|
49
49
|
APP_NAME,
|
|
@@ -76,7 +76,7 @@ import {
|
|
|
76
76
|
SUBAGENT_MAX_ROUNDS_LIMIT,
|
|
77
77
|
VERSION,
|
|
78
78
|
buildUserIdentityPrompt
|
|
79
|
-
} from "./chunk-
|
|
79
|
+
} from "./chunk-AHNTBH7G.js";
|
|
80
80
|
import {
|
|
81
81
|
hasSemanticIndex,
|
|
82
82
|
semanticSearch
|
|
@@ -16039,7 +16039,7 @@ Cache: write=${cacheCreate} read=${cacheRead}` : "";
|
|
|
16039
16039
|
Cost: ${formatCost(cost)}` : "";
|
|
16040
16040
|
let memoryLine = "";
|
|
16041
16041
|
try {
|
|
16042
|
-
const { countPendingMemories } = await import("./persistent-memory-
|
|
16042
|
+
const { countPendingMemories } = await import("./persistent-memory-6SB5ZUOI.js");
|
|
16043
16043
|
const pending = countPendingMemories(ctx.config.getConfigDir());
|
|
16044
16044
|
if (pending > 0) memoryLine = `
|
|
16045
16045
|
Memory: \u26A0 ${pending} pending approval \u2014 see the Memory panel or /memory`;
|
|
@@ -16852,7 +16852,7 @@ async function handleTest(args, ctx) {
|
|
|
16852
16852
|
const isCommand = argStr.includes(" ") || /^(mvn|gradle|npm|pytest|cargo|go)\b/.test(argStr);
|
|
16853
16853
|
testArgs = isCommand ? { command: argStr } : { filter: argStr };
|
|
16854
16854
|
}
|
|
16855
|
-
const runTests = ctx.runTests ?? (await import("./run-tests-
|
|
16855
|
+
const runTests = ctx.runTests ?? (await import("./run-tests-PS37BVOI.js")).executeTests;
|
|
16856
16856
|
const report = await runTests(testArgs);
|
|
16857
16857
|
ctx.send({ type: "info", message: report });
|
|
16858
16858
|
} catch (err) {
|
|
@@ -17110,7 +17110,7 @@ async function handleMemory(args, ctx) {
|
|
|
17110
17110
|
ctx.handleMemoryManage(sub, args[1], sub === "expire" ? args[2] : void 0);
|
|
17111
17111
|
} else if (sub === "export") {
|
|
17112
17112
|
if (args[1] === "md") {
|
|
17113
|
-
const { exportMemoryEntries: exportMemoryEntries2 } = await import("./persistent-memory-
|
|
17113
|
+
const { exportMemoryEntries: exportMemoryEntries2 } = await import("./persistent-memory-6SB5ZUOI.js");
|
|
17114
17114
|
ctx.send({
|
|
17115
17115
|
type: "export_data",
|
|
17116
17116
|
format: "md",
|
|
@@ -19100,7 +19100,7 @@ Backup saved: ${result.backupPath}` : "";
|
|
|
19100
19100
|
return;
|
|
19101
19101
|
}
|
|
19102
19102
|
try {
|
|
19103
|
-
const { searchChatMemory: searchChatMemory2, loadChatIndex: loadChatIndex2 } = await import("./chat-index-
|
|
19103
|
+
const { searchChatMemory: searchChatMemory2, loadChatIndex: loadChatIndex2 } = await import("./chat-index-TDU3S2MG.js");
|
|
19104
19104
|
const loaded = loadChatIndex2();
|
|
19105
19105
|
if (!loaded || loaded.idx.chunks.length === 0) {
|
|
19106
19106
|
this.send({ type: "memory_hits", query: q, hits: [], indexMissing: true });
|
|
@@ -19136,7 +19136,7 @@ Backup saved: ${result.backupPath}` : "";
|
|
|
19136
19136
|
}
|
|
19137
19137
|
async handleMemoryStatus() {
|
|
19138
19138
|
try {
|
|
19139
|
-
const { getChatIndexStatus } = await import("./chat-index-
|
|
19139
|
+
const { getChatIndexStatus } = await import("./chat-index-TDU3S2MG.js");
|
|
19140
19140
|
const s = getChatIndexStatus();
|
|
19141
19141
|
this.send({
|
|
19142
19142
|
type: "memory_status",
|
|
@@ -19161,7 +19161,7 @@ Backup saved: ${result.backupPath}` : "";
|
|
|
19161
19161
|
type: "info",
|
|
19162
19162
|
message: full ? "\u{1F9E0} Rebuilding chat memory index (this may take a while on first run \u2014 ~117 MB embedder)." : "\u{1F9E0} Refreshing chat memory index (incremental)\u2026"
|
|
19163
19163
|
});
|
|
19164
|
-
const { buildChatIndex } = await import("./chat-index-
|
|
19164
|
+
const { buildChatIndex } = await import("./chat-index-TDU3S2MG.js");
|
|
19165
19165
|
const stats = await buildChatIndex({
|
|
19166
19166
|
full,
|
|
19167
19167
|
onProgress: (p) => {
|
|
@@ -143,7 +143,7 @@ ${content}`);
|
|
|
143
143
|
const state = await runDiscussion(config, providers, options.topic);
|
|
144
144
|
if (options.save !== false && state.messages.length > 0) {
|
|
145
145
|
try {
|
|
146
|
-
const { persistDiscussion } = await import("./persist-
|
|
146
|
+
const { persistDiscussion } = await import("./persist-PQM4BRI4.js");
|
|
147
147
|
const { path } = await persistDiscussion(state, configManager, defaultProvider, defaultModel);
|
|
148
148
|
console.log(chalk.dim(`
|
|
149
149
|
\u{1F4BE} Saved to history \u2014 open it in the Web UI and hit \u{1F3AC} to replay.
|
|
@@ -158,7 +158,7 @@ ${content}`);
|
|
|
158
158
|
}
|
|
159
159
|
}
|
|
160
160
|
async function runTaskMode(config, providers, configManager, topic) {
|
|
161
|
-
const { TaskOrchestrator } = await import("./task-orchestrator-
|
|
161
|
+
const { TaskOrchestrator } = await import("./task-orchestrator-77MEVKT6.js");
|
|
162
162
|
const orchestrator = new TaskOrchestrator(config, providers, configManager);
|
|
163
163
|
let interrupted = false;
|
|
164
164
|
const onSigint = () => {
|
package/dist/index.js
CHANGED
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
sessionHasMeaningfulContent,
|
|
26
26
|
setupProxy,
|
|
27
27
|
stripRoutingTags
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-MFUAK7OM.js";
|
|
29
29
|
import {
|
|
30
30
|
CostTracker,
|
|
31
31
|
computeCost,
|
|
@@ -54,7 +54,7 @@ import {
|
|
|
54
54
|
setMaxOutputCap,
|
|
55
55
|
spawnAgentContext,
|
|
56
56
|
undoStack
|
|
57
|
-
} from "./chunk-
|
|
57
|
+
} from "./chunk-JMU5DELU.js";
|
|
58
58
|
import {
|
|
59
59
|
buildReviewPrompt,
|
|
60
60
|
buildSecurityReviewPrompt
|
|
@@ -70,7 +70,7 @@ import {
|
|
|
70
70
|
clearChatIndex,
|
|
71
71
|
getChatIndexStatus,
|
|
72
72
|
searchChatMemory
|
|
73
|
-
} from "./chunk-
|
|
73
|
+
} from "./chunk-GHWZVPUV.js";
|
|
74
74
|
import {
|
|
75
75
|
addMemoryEntry,
|
|
76
76
|
backupMemoryStore,
|
|
@@ -95,7 +95,7 @@ import {
|
|
|
95
95
|
touchMemoryReferences,
|
|
96
96
|
updateMemoryApproval,
|
|
97
97
|
updateMemoryEntry
|
|
98
|
-
} from "./chunk-
|
|
98
|
+
} from "./chunk-PXWOJEFG.js";
|
|
99
99
|
import "./chunk-GLSR2NR3.js";
|
|
100
100
|
import "./chunk-UUSRWSSX.js";
|
|
101
101
|
import "./chunk-CKH4KQ4E.js";
|
|
@@ -108,18 +108,18 @@ import {
|
|
|
108
108
|
import {
|
|
109
109
|
SessionManager,
|
|
110
110
|
getContentText
|
|
111
|
-
} from "./chunk-
|
|
111
|
+
} from "./chunk-CGDYO52A.js";
|
|
112
112
|
import "./chunk-NYNSYLFY.js";
|
|
113
113
|
import {
|
|
114
114
|
DEFAULT_PATTERNS,
|
|
115
115
|
scanString
|
|
116
|
-
} from "./chunk-
|
|
116
|
+
} from "./chunk-3FEZSLGI.js";
|
|
117
117
|
import {
|
|
118
118
|
buildDoctorReport,
|
|
119
119
|
formatDoctorReport,
|
|
120
120
|
loadContextFiles,
|
|
121
121
|
writeCrashLog
|
|
122
|
-
} from "./chunk-
|
|
122
|
+
} from "./chunk-Z75H56SJ.js";
|
|
123
123
|
import {
|
|
124
124
|
describePlugin,
|
|
125
125
|
getActivePluginAssets,
|
|
@@ -136,14 +136,14 @@ import {
|
|
|
136
136
|
trustHook,
|
|
137
137
|
trustPlugin,
|
|
138
138
|
untrustHook
|
|
139
|
-
} from "./chunk-
|
|
139
|
+
} from "./chunk-XBOP6NLW.js";
|
|
140
140
|
import {
|
|
141
141
|
ProviderRegistry,
|
|
142
142
|
listBuiltInProviderMetadata
|
|
143
143
|
} from "./chunk-AUEX6RNY.js";
|
|
144
144
|
import {
|
|
145
145
|
ConfigManager
|
|
146
|
-
} from "./chunk-
|
|
146
|
+
} from "./chunk-5NZVRFLP.js";
|
|
147
147
|
import {
|
|
148
148
|
CONTENT_ONLY_STREAM_REMINDER,
|
|
149
149
|
TEE_FINAL_USER_NUDGE,
|
|
@@ -183,7 +183,7 @@ import {
|
|
|
183
183
|
import {
|
|
184
184
|
fileCheckpoints
|
|
185
185
|
} from "./chunk-4BKXL7SM.js";
|
|
186
|
-
import "./chunk-
|
|
186
|
+
import "./chunk-EZ6VXKJV.js";
|
|
187
187
|
import {
|
|
188
188
|
AGENTIC_BEHAVIOR_GUIDELINE,
|
|
189
189
|
AUTHOR,
|
|
@@ -201,7 +201,7 @@ import {
|
|
|
201
201
|
SKILLS_DIR_NAME,
|
|
202
202
|
VERSION,
|
|
203
203
|
buildUserIdentityPrompt
|
|
204
|
-
} from "./chunk-
|
|
204
|
+
} from "./chunk-WMVG5E56.js";
|
|
205
205
|
|
|
206
206
|
// src/index.ts
|
|
207
207
|
import { program } from "commander";
|
|
@@ -1407,7 +1407,7 @@ No tools match "${filter}".
|
|
|
1407
1407
|
const { join: join6 } = await import("path");
|
|
1408
1408
|
const { existsSync: existsSync6 } = await import("fs");
|
|
1409
1409
|
const { getGitRoot: getGitRoot2 } = await import("./git-context-EXOEHQSF.js");
|
|
1410
|
-
const { MCP_PROJECT_CONFIG_NAME: MCP_PROJECT_CONFIG_NAME2 } = await import("./constants-
|
|
1410
|
+
const { MCP_PROJECT_CONFIG_NAME: MCP_PROJECT_CONFIG_NAME2 } = await import("./constants-SGKY75QU.js");
|
|
1411
1411
|
const { approveProject, hashMcpFile } = await import("./project-trust-NKYHL3VZ.js");
|
|
1412
1412
|
const cwd = process.cwd();
|
|
1413
1413
|
const projectRoot = getGitRoot2(cwd) ?? cwd;
|
|
@@ -2327,7 +2327,7 @@ function createReviewCommands() {
|
|
|
2327
2327
|
usage: "/test [command|filter]",
|
|
2328
2328
|
async execute(args, ctx) {
|
|
2329
2329
|
try {
|
|
2330
|
-
const { executeTests } = await import("./run-tests-
|
|
2330
|
+
const { executeTests } = await import("./run-tests-34HXDZXM.js");
|
|
2331
2331
|
const argStr = args.join(" ").trim();
|
|
2332
2332
|
let testArgs = {};
|
|
2333
2333
|
if (argStr) {
|
|
@@ -5710,7 +5710,7 @@ Session '${this.resumeSessionId}' not found.
|
|
|
5710
5710
|
})();
|
|
5711
5711
|
void (async () => {
|
|
5712
5712
|
try {
|
|
5713
|
-
const { getChatIndexStatus: getChatIndexStatus2, buildChatIndex: buildChatIndex2 } = await import("./chat-index-
|
|
5713
|
+
const { getChatIndexStatus: getChatIndexStatus2, buildChatIndex: buildChatIndex2 } = await import("./chat-index-2D5GK2DB.js");
|
|
5714
5714
|
const initial = getChatIndexStatus2();
|
|
5715
5715
|
this.chatMemoryStatus = {
|
|
5716
5716
|
exists: initial.exists,
|
|
@@ -7546,7 +7546,7 @@ program.command("web").description("Start Web UI server with browser-based chat
|
|
|
7546
7546
|
console.error("Error: Invalid port number. Must be between 1 and 65535.");
|
|
7547
7547
|
process.exit(1);
|
|
7548
7548
|
}
|
|
7549
|
-
const { startWebServer } = await import("./server-
|
|
7549
|
+
const { startWebServer } = await import("./server-IEOQIQPC.js");
|
|
7550
7550
|
await startWebServer({ port, host: options.host });
|
|
7551
7551
|
});
|
|
7552
7552
|
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) => {
|
|
@@ -7713,11 +7713,11 @@ program.command("sessions").description("List recent conversation sessions").opt
|
|
|
7713
7713
|
console.log(footer + "\n");
|
|
7714
7714
|
});
|
|
7715
7715
|
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) => {
|
|
7716
|
-
const { runUsageCli } = await import("./usage-
|
|
7716
|
+
const { runUsageCli } = await import("./usage-RI6YOAOP.js");
|
|
7717
7717
|
await runUsageCli(options);
|
|
7718
7718
|
});
|
|
7719
7719
|
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) => {
|
|
7720
|
-
const { runDoctorCli } = await import("./doctor-cli-
|
|
7720
|
+
const { runDoctorCli } = await import("./doctor-cli-7CW4BIGM.js");
|
|
7721
7721
|
const argv = process.argv.slice(2);
|
|
7722
7722
|
await runDoctorCli({
|
|
7723
7723
|
json: !!options.json || argv.includes("--json"),
|
|
@@ -7726,7 +7726,7 @@ program.command("doctor").description("Health check: API keys, config, MCP, rece
|
|
|
7726
7726
|
});
|
|
7727
7727
|
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) => {
|
|
7728
7728
|
try {
|
|
7729
|
-
const batch = await import("./batch-
|
|
7729
|
+
const batch = await import("./batch-3KHEEICT.js");
|
|
7730
7730
|
switch (action) {
|
|
7731
7731
|
case "submit":
|
|
7732
7732
|
if (!arg) {
|
|
@@ -7769,7 +7769,7 @@ program.command("batch <action> [arg] [arg2]").description("Anthropic Message Ba
|
|
|
7769
7769
|
}
|
|
7770
7770
|
});
|
|
7771
7771
|
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) => {
|
|
7772
|
-
const { startMcpServer } = await import("./server-
|
|
7772
|
+
const { startMcpServer } = await import("./server-OZTSIFXL.js");
|
|
7773
7773
|
await startMcpServer({
|
|
7774
7774
|
allowDestructive: !!options.allowDestructive,
|
|
7775
7775
|
allowOutsideCwd: !!options.allowOutsideCwd,
|
|
@@ -7782,7 +7782,7 @@ program.command("pr <action> [target]").description("PR review helpers: review |
|
|
|
7782
7782
|
console.error(`Unknown pr action: ${action}. Use review | security-review | summarize.`);
|
|
7783
7783
|
process.exit(1);
|
|
7784
7784
|
}
|
|
7785
|
-
const { runPrCli } = await import("./pr-
|
|
7785
|
+
const { runPrCli } = await import("./pr-FNKV6IWI.js");
|
|
7786
7786
|
const result = await runPrCli({
|
|
7787
7787
|
action,
|
|
7788
7788
|
target,
|
|
@@ -7802,8 +7802,8 @@ program.command("pr <action> [target]").description("PR review helpers: review |
|
|
|
7802
7802
|
process.exit(result.exitCode);
|
|
7803
7803
|
});
|
|
7804
7804
|
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) => {
|
|
7805
|
-
const { runCi } = await import("./ci-
|
|
7806
|
-
const { formatCiResult } = await import("./ci-format-
|
|
7805
|
+
const { runCi } = await import("./ci-6CTWCDH3.js");
|
|
7806
|
+
const { formatCiResult } = await import("./ci-format-MC5HZBCE.js");
|
|
7807
7807
|
const formats = [options.json, options.markdown, options.sarif].filter(Boolean).length;
|
|
7808
7808
|
if (formats > 1) {
|
|
7809
7809
|
console.error("Choose only one output format: --json, --markdown, or --sarif.");
|
|
@@ -7961,7 +7961,7 @@ program.command("hub [topic]").description("Start multi-agent hub (discuss / bra
|
|
|
7961
7961
|
config.get("customProviders"),
|
|
7962
7962
|
config.getConfigDir()
|
|
7963
7963
|
);
|
|
7964
|
-
const { startHub } = await import("./hub-
|
|
7964
|
+
const { startHub } = await import("./hub-ORAAJOPT.js");
|
|
7965
7965
|
await startHub(
|
|
7966
7966
|
{
|
|
7967
7967
|
topic: topic ?? "",
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
import {
|
|
3
3
|
discussionToMessages,
|
|
4
4
|
persistDiscussion
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-MX75TNE5.js";
|
|
6
|
+
import "./chunk-CGDYO52A.js";
|
|
7
7
|
import "./chunk-NYNSYLFY.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-3FEZSLGI.js";
|
|
9
9
|
import "./chunk-IW3Q7AE5.js";
|
|
10
10
|
export {
|
|
11
11
|
discussionToMessages,
|
|
@@ -28,11 +28,11 @@ import {
|
|
|
28
28
|
touchMemoryReferences,
|
|
29
29
|
updateMemoryApproval,
|
|
30
30
|
updateMemoryEntry
|
|
31
|
-
} from "./chunk-
|
|
32
|
-
import "./chunk-
|
|
31
|
+
} from "./chunk-PXWOJEFG.js";
|
|
32
|
+
import "./chunk-3FEZSLGI.js";
|
|
33
33
|
import "./chunk-HOSJZMQS.js";
|
|
34
34
|
import "./chunk-IW3Q7AE5.js";
|
|
35
|
-
import "./chunk-
|
|
35
|
+
import "./chunk-WMVG5E56.js";
|
|
36
36
|
export {
|
|
37
37
|
addMemoryEntry,
|
|
38
38
|
backupMemoryStore,
|
|
@@ -27,9 +27,9 @@ import {
|
|
|
27
27
|
touchMemoryReferences,
|
|
28
28
|
updateMemoryApproval,
|
|
29
29
|
updateMemoryEntry
|
|
30
|
-
} from "./chunk-
|
|
31
|
-
import "./chunk-
|
|
32
|
-
import "./chunk-
|
|
30
|
+
} from "./chunk-257ZLWOP.js";
|
|
31
|
+
import "./chunk-FSC6KEWU.js";
|
|
32
|
+
import "./chunk-AHNTBH7G.js";
|
|
33
33
|
import "./chunk-6BUTA5VW.js";
|
|
34
34
|
export {
|
|
35
35
|
addMemoryEntry,
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
import {
|
|
3
3
|
countSeverity,
|
|
4
4
|
runCi
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-FBYFNBUD.js";
|
|
6
|
+
import "./chunk-XUNQSAUM.js";
|
|
7
7
|
import {
|
|
8
8
|
buildReviewPrompt,
|
|
9
9
|
buildSecurityReviewPrompt,
|
|
@@ -17,13 +17,13 @@ import {
|
|
|
17
17
|
} from "./chunk-AUEX6RNY.js";
|
|
18
18
|
import {
|
|
19
19
|
ConfigManager
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-5NZVRFLP.js";
|
|
21
21
|
import "./chunk-3OBY7WSS.js";
|
|
22
22
|
import "./chunk-TU3L3PW7.js";
|
|
23
23
|
import "./chunk-IW3Q7AE5.js";
|
|
24
24
|
import {
|
|
25
25
|
VERSION
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-WMVG5E56.js";
|
|
27
27
|
|
|
28
28
|
// src/cli/pr.ts
|
|
29
29
|
import { execFileSync } from "child_process";
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
} from "./chunk-RYQBBEMM.js";
|
|
12
12
|
import {
|
|
13
13
|
persistDiscussion
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-MX75TNE5.js";
|
|
15
15
|
import {
|
|
16
16
|
AUTO_COMPACT_INSTRUCTION,
|
|
17
17
|
McpManager,
|
|
@@ -34,7 +34,7 @@ import {
|
|
|
34
34
|
scanProject,
|
|
35
35
|
setupProxy,
|
|
36
36
|
stripRoutingTags
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-MFUAK7OM.js";
|
|
38
38
|
import {
|
|
39
39
|
CNY_PER_USD,
|
|
40
40
|
CostTracker,
|
|
@@ -75,7 +75,7 @@ import {
|
|
|
75
75
|
spawnAgentContext,
|
|
76
76
|
truncateOutput,
|
|
77
77
|
undoStack
|
|
78
|
-
} from "./chunk-
|
|
78
|
+
} from "./chunk-JMU5DELU.js";
|
|
79
79
|
import {
|
|
80
80
|
buildReviewPrompt,
|
|
81
81
|
buildSecurityReviewPrompt
|
|
@@ -83,7 +83,7 @@ import {
|
|
|
83
83
|
import {
|
|
84
84
|
thinkingParamsFor
|
|
85
85
|
} from "./chunk-6YZEZFX5.js";
|
|
86
|
-
import "./chunk-
|
|
86
|
+
import "./chunk-GHWZVPUV.js";
|
|
87
87
|
import {
|
|
88
88
|
addMemoryEntry,
|
|
89
89
|
clearMemoryEntries,
|
|
@@ -98,7 +98,7 @@ import {
|
|
|
98
98
|
parseWritableScope,
|
|
99
99
|
updateMemoryApproval,
|
|
100
100
|
updateMemoryEntry
|
|
101
|
-
} from "./chunk-
|
|
101
|
+
} from "./chunk-PXWOJEFG.js";
|
|
102
102
|
import "./chunk-GLSR2NR3.js";
|
|
103
103
|
import "./chunk-UUSRWSSX.js";
|
|
104
104
|
import "./chunk-CKH4KQ4E.js";
|
|
@@ -108,16 +108,16 @@ import "./chunk-5C76XDDF.js";
|
|
|
108
108
|
import {
|
|
109
109
|
SessionManager,
|
|
110
110
|
getContentText
|
|
111
|
-
} from "./chunk-
|
|
111
|
+
} from "./chunk-CGDYO52A.js";
|
|
112
112
|
import "./chunk-NYNSYLFY.js";
|
|
113
113
|
import {
|
|
114
114
|
scanString
|
|
115
|
-
} from "./chunk-
|
|
115
|
+
} from "./chunk-3FEZSLGI.js";
|
|
116
116
|
import {
|
|
117
117
|
buildDoctorReport,
|
|
118
118
|
formatDoctorReport,
|
|
119
119
|
loadContextFiles
|
|
120
|
-
} from "./chunk-
|
|
120
|
+
} from "./chunk-Z75H56SJ.js";
|
|
121
121
|
import {
|
|
122
122
|
describePlugin,
|
|
123
123
|
getActivePluginAssets,
|
|
@@ -132,13 +132,13 @@ import {
|
|
|
132
132
|
runTool,
|
|
133
133
|
setPluginEnabled,
|
|
134
134
|
trustPlugin
|
|
135
|
-
} from "./chunk-
|
|
135
|
+
} from "./chunk-XBOP6NLW.js";
|
|
136
136
|
import {
|
|
137
137
|
ProviderRegistry
|
|
138
138
|
} from "./chunk-AUEX6RNY.js";
|
|
139
139
|
import {
|
|
140
140
|
ConfigManager
|
|
141
|
-
} from "./chunk-
|
|
141
|
+
} from "./chunk-5NZVRFLP.js";
|
|
142
142
|
import {
|
|
143
143
|
CONTENT_ONLY_STREAM_REMINDER,
|
|
144
144
|
TEE_FINAL_USER_NUDGE,
|
|
@@ -170,7 +170,7 @@ import {
|
|
|
170
170
|
maskConfigSecrets
|
|
171
171
|
} from "./chunk-XNFIYS7G.js";
|
|
172
172
|
import "./chunk-4BKXL7SM.js";
|
|
173
|
-
import "./chunk-
|
|
173
|
+
import "./chunk-EZ6VXKJV.js";
|
|
174
174
|
import {
|
|
175
175
|
AGENTIC_BEHAVIOR_GUIDELINE,
|
|
176
176
|
AUTHOR,
|
|
@@ -186,7 +186,7 @@ import {
|
|
|
186
186
|
SKILLS_DIR_NAME,
|
|
187
187
|
VERSION,
|
|
188
188
|
buildUserIdentityPrompt
|
|
189
|
-
} from "./chunk-
|
|
189
|
+
} from "./chunk-WMVG5E56.js";
|
|
190
190
|
|
|
191
191
|
// src/web/server.ts
|
|
192
192
|
import express from "express";
|
|
@@ -857,7 +857,7 @@ Cache: write=${cacheCreate} read=${cacheRead}` : "";
|
|
|
857
857
|
Cost: ${formatCost(cost)}` : "";
|
|
858
858
|
let memoryLine = "";
|
|
859
859
|
try {
|
|
860
|
-
const { countPendingMemories } = await import("./persistent-memory-
|
|
860
|
+
const { countPendingMemories } = await import("./persistent-memory-6NQQ2H2B.js");
|
|
861
861
|
const pending = countPendingMemories(ctx.config.getConfigDir());
|
|
862
862
|
if (pending > 0) memoryLine = `
|
|
863
863
|
Memory: \u26A0 ${pending} pending approval \u2014 see the Memory panel or /memory`;
|
|
@@ -1670,7 +1670,7 @@ async function handleTest(args, ctx) {
|
|
|
1670
1670
|
const isCommand = argStr.includes(" ") || /^(mvn|gradle|npm|pytest|cargo|go)\b/.test(argStr);
|
|
1671
1671
|
testArgs = isCommand ? { command: argStr } : { filter: argStr };
|
|
1672
1672
|
}
|
|
1673
|
-
const runTests = ctx.runTests ?? (await import("./run-tests-
|
|
1673
|
+
const runTests = ctx.runTests ?? (await import("./run-tests-34HXDZXM.js")).executeTests;
|
|
1674
1674
|
const report = await runTests(testArgs);
|
|
1675
1675
|
ctx.send({ type: "info", message: report });
|
|
1676
1676
|
} catch (err) {
|
|
@@ -1928,7 +1928,7 @@ async function handleMemory(args, ctx) {
|
|
|
1928
1928
|
ctx.handleMemoryManage(sub, args[1], sub === "expire" ? args[2] : void 0);
|
|
1929
1929
|
} else if (sub === "export") {
|
|
1930
1930
|
if (args[1] === "md") {
|
|
1931
|
-
const { exportMemoryEntries: exportMemoryEntries2 } = await import("./persistent-memory-
|
|
1931
|
+
const { exportMemoryEntries: exportMemoryEntries2 } = await import("./persistent-memory-6NQQ2H2B.js");
|
|
1932
1932
|
ctx.send({
|
|
1933
1933
|
type: "export_data",
|
|
1934
1934
|
format: "md",
|
|
@@ -3730,7 +3730,7 @@ Backup saved: ${result.backupPath}` : "";
|
|
|
3730
3730
|
return;
|
|
3731
3731
|
}
|
|
3732
3732
|
try {
|
|
3733
|
-
const { searchChatMemory, loadChatIndex } = await import("./chat-index-
|
|
3733
|
+
const { searchChatMemory, loadChatIndex } = await import("./chat-index-2D5GK2DB.js");
|
|
3734
3734
|
const loaded = loadChatIndex();
|
|
3735
3735
|
if (!loaded || loaded.idx.chunks.length === 0) {
|
|
3736
3736
|
this.send({ type: "memory_hits", query: q, hits: [], indexMissing: true });
|
|
@@ -3766,7 +3766,7 @@ Backup saved: ${result.backupPath}` : "";
|
|
|
3766
3766
|
}
|
|
3767
3767
|
async handleMemoryStatus() {
|
|
3768
3768
|
try {
|
|
3769
|
-
const { getChatIndexStatus } = await import("./chat-index-
|
|
3769
|
+
const { getChatIndexStatus } = await import("./chat-index-2D5GK2DB.js");
|
|
3770
3770
|
const s = getChatIndexStatus();
|
|
3771
3771
|
this.send({
|
|
3772
3772
|
type: "memory_status",
|
|
@@ -3791,7 +3791,7 @@ Backup saved: ${result.backupPath}` : "";
|
|
|
3791
3791
|
type: "info",
|
|
3792
3792
|
message: full ? "\u{1F9E0} Rebuilding chat memory index (this may take a while on first run \u2014 ~117 MB embedder)." : "\u{1F9E0} Refreshing chat memory index (incremental)\u2026"
|
|
3793
3793
|
});
|
|
3794
|
-
const { buildChatIndex } = await import("./chat-index-
|
|
3794
|
+
const { buildChatIndex } = await import("./chat-index-2D5GK2DB.js");
|
|
3795
3795
|
const stats = await buildChatIndex({
|
|
3796
3796
|
full,
|
|
3797
3797
|
onProgress: (p) => {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
ToolRegistry
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-JMU5DELU.js";
|
|
5
|
+
import "./chunk-GHWZVPUV.js";
|
|
6
|
+
import "./chunk-PXWOJEFG.js";
|
|
7
7
|
import "./chunk-GLSR2NR3.js";
|
|
8
8
|
import "./chunk-UUSRWSSX.js";
|
|
9
9
|
import "./chunk-CKH4KQ4E.js";
|
|
@@ -11,10 +11,10 @@ import "./chunk-BXP6YZ2P.js";
|
|
|
11
11
|
import "./chunk-KHYD3WXE.js";
|
|
12
12
|
import "./chunk-5C76XDDF.js";
|
|
13
13
|
import "./chunk-NYNSYLFY.js";
|
|
14
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-3FEZSLGI.js";
|
|
15
15
|
import {
|
|
16
16
|
runTool
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-XBOP6NLW.js";
|
|
18
18
|
import {
|
|
19
19
|
getDangerLevel,
|
|
20
20
|
schemaToJsonSchema
|
|
@@ -23,10 +23,10 @@ import "./chunk-TU3L3PW7.js";
|
|
|
23
23
|
import "./chunk-HOSJZMQS.js";
|
|
24
24
|
import "./chunk-IW3Q7AE5.js";
|
|
25
25
|
import "./chunk-4BKXL7SM.js";
|
|
26
|
-
import "./chunk-
|
|
26
|
+
import "./chunk-EZ6VXKJV.js";
|
|
27
27
|
import {
|
|
28
28
|
VERSION
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-WMVG5E56.js";
|
|
30
30
|
|
|
31
31
|
// src/mcp/server.ts
|
|
32
32
|
import { createInterface } from "readline";
|
|
@@ -3,9 +3,9 @@ import {
|
|
|
3
3
|
ToolRegistry,
|
|
4
4
|
googleSearchContext,
|
|
5
5
|
truncateOutput
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-JMU5DELU.js";
|
|
7
|
+
import "./chunk-GHWZVPUV.js";
|
|
8
|
+
import "./chunk-PXWOJEFG.js";
|
|
9
9
|
import "./chunk-GLSR2NR3.js";
|
|
10
10
|
import "./chunk-UUSRWSSX.js";
|
|
11
11
|
import "./chunk-CKH4KQ4E.js";
|
|
@@ -13,10 +13,10 @@ import "./chunk-BXP6YZ2P.js";
|
|
|
13
13
|
import "./chunk-KHYD3WXE.js";
|
|
14
14
|
import "./chunk-5C76XDDF.js";
|
|
15
15
|
import "./chunk-NYNSYLFY.js";
|
|
16
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-3FEZSLGI.js";
|
|
17
17
|
import {
|
|
18
18
|
runTool
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-XBOP6NLW.js";
|
|
20
20
|
import {
|
|
21
21
|
getDangerLevel,
|
|
22
22
|
runLeanAgentLoop
|
|
@@ -27,10 +27,10 @@ import {
|
|
|
27
27
|
atomicWriteFileSync
|
|
28
28
|
} from "./chunk-IW3Q7AE5.js";
|
|
29
29
|
import "./chunk-4BKXL7SM.js";
|
|
30
|
-
import "./chunk-
|
|
30
|
+
import "./chunk-EZ6VXKJV.js";
|
|
31
31
|
import {
|
|
32
32
|
SUBAGENT_ALLOWED_TOOLS
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-WMVG5E56.js";
|
|
34
34
|
|
|
35
35
|
// src/hub/task-orchestrator.ts
|
|
36
36
|
import { createInterface } from "readline";
|
|
@@ -8,10 +8,10 @@ import {
|
|
|
8
8
|
} from "./chunk-JT6UN5C6.js";
|
|
9
9
|
import {
|
|
10
10
|
ConfigManager
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-5NZVRFLP.js";
|
|
12
12
|
import "./chunk-TU3L3PW7.js";
|
|
13
13
|
import "./chunk-IW3Q7AE5.js";
|
|
14
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-WMVG5E56.js";
|
|
15
15
|
|
|
16
16
|
// src/cli/usage.ts
|
|
17
17
|
function classifyRowCost(row) {
|