jinzd-ai-cli 0.4.202 → 0.4.203
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/LICENSE +21 -21
- package/README.md +435 -435
- package/README.zh-CN.md +450 -450
- package/dist/agent-client-6GX6QQDU.js +0 -0
- package/dist/auth-FSTAKSYF.js +0 -0
- package/dist/{batch-UF4EWYFD.js → batch-PRC75BKT.js} +2 -2
- package/dist/chat-index-FDSGKWQV.js +0 -0
- package/dist/{chunk-SB77W6XS.js → chunk-2V4QG75U.js} +1 -1
- package/dist/chunk-4BKXL7SM.js +0 -0
- package/dist/{chunk-2YLYDFEX.js → chunk-742TILCK.js} +4 -4
- package/dist/chunk-A4GUGWEY.js +0 -0
- package/dist/chunk-BXP6YZ2P.js +0 -0
- package/dist/chunk-CITDVXXM.js +0 -0
- package/dist/chunk-CKH4KQ4E.js +0 -0
- package/dist/chunk-E44DTERW.js +0 -0
- package/dist/{chunk-JCY7RQIA.js → chunk-EOYN2PCH.js} +1 -1
- package/dist/{chunk-Y6U6FMVV.js → chunk-EZR7NIC5.js} +1 -1
- package/dist/chunk-HLWUDRBO.js +0 -0
- package/dist/chunk-HOSJZMQS.js +0 -0
- package/dist/chunk-IW3Q7AE5.js +0 -0
- package/dist/chunk-JVKAL5Q3.js +0 -0
- package/dist/chunk-KHYD3WXE.js +0 -0
- package/dist/chunk-MC34ISJU.js +0 -0
- package/dist/chunk-NZ4X6GUC.js +0 -0
- package/dist/chunk-O6UFCEUZ.js +0 -0
- package/dist/chunk-OJL3PY36.js +0 -0
- package/dist/chunk-Q3ZUDA6S.js +0 -0
- package/dist/{chunk-HZKC424D.js → chunk-RFWBHCDC.js} +1 -1
- package/dist/chunk-SLSWPBK3.js +0 -0
- package/dist/{chunk-5UR6ZOF4.js → chunk-SMFRJCXB.js} +7 -0
- package/dist/chunk-T2NL5ZIA.js +0 -0
- package/dist/chunk-TB4W4Y4T.js +0 -0
- package/dist/chunk-TZQHYZKT.js +0 -0
- package/dist/{chunk-2NINHXEZ.js → chunk-UZISJ3KZ.js} +1 -1
- package/dist/{chunk-75SUTNYY.js → chunk-VYCSZBII.js} +1 -1
- package/dist/{chunk-Q2MBPMTW.js → chunk-YG5CA4ZA.js} +2 -2
- package/dist/{chunk-GOKVKOG3.js → chunk-ZEDQBXVK.js} +1 -1
- package/dist/{ci-YOJTTP4J.js → ci-OZ4EB52Y.js} +4 -4
- package/dist/{constants-VP7TYJL7.js → constants-PN4X2MIK.js} +1 -1
- package/dist/{doctor-cli-PCIKXTNV.js → doctor-cli-YPL3XCBU.js} +6 -6
- package/dist/electron-server.js +12 -5
- package/dist/file-checkpoint-NKBHGC7L.js +0 -0
- package/dist/git-context-EXOEHQSF.js +0 -0
- package/dist/{hub-N2ZRAXRO.js → hub-PKFAPVXM.js} +1 -1
- package/dist/hub-server-LJ2JSKZ2.js +0 -0
- package/dist/index.js +23 -21
- package/dist/indexer-AKWMYNJI.js +0 -0
- package/dist/persist-L54DPLI7.js +0 -0
- package/dist/project-trust-NKYHL3VZ.js +0 -0
- package/dist/{run-tests-RNU733RF.js → run-tests-ADASGIJE.js} +2 -2
- package/dist/{run-tests-AXPZOPX7.js → run-tests-DOBBUV45.js} +1 -1
- package/dist/semantic-PK7AUOJT.js +0 -0
- package/dist/{server-SLFGYGBO.js → server-FLDRVPXJ.js} +14 -12
- package/dist/{server-YIBPZJ34.js → server-WBIQCV6B.js} +5 -5
- package/dist/store-MWNHVGJT.js +0 -0
- package/dist/{task-orchestrator-FM4EXIBZ.js → task-orchestrator-6FD2AXLQ.js} +5 -5
- package/dist/{usage-QFW2XPF3.js → usage-NDMBSGG6.js} +2 -2
- package/dist/vector-store-BBDXB5IQ.js +0 -0
- package/dist/wasm/web-tree-sitter.wasm +0 -0
- package/dist/web/client/app.js +3351 -3351
- package/dist/web/client/icon.svg +22 -22
- package/dist/web/client/index.html +360 -360
- package/dist/web/client/manifest.json +15 -15
- package/dist/web/client/style.css +991 -991
- package/dist/web/client/sw.js +86 -86
- package/package.json +176 -176
|
File without changes
|
package/dist/auth-FSTAKSYF.js
CHANGED
|
File without changes
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
ConfigManager
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-EOYN2PCH.js";
|
|
5
5
|
import "./chunk-TZQHYZKT.js";
|
|
6
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-RFWBHCDC.js";
|
|
7
7
|
import {
|
|
8
8
|
atomicWriteFileSync
|
|
9
9
|
} from "./chunk-IW3Q7AE5.js";
|
|
File without changes
|
package/dist/chunk-4BKXL7SM.js
CHANGED
|
File without changes
|
|
@@ -5,15 +5,15 @@ import {
|
|
|
5
5
|
} from "./chunk-T2NL5ZIA.js";
|
|
6
6
|
import {
|
|
7
7
|
runTestsTool
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-VYCSZBII.js";
|
|
9
9
|
import {
|
|
10
10
|
runTool
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-ZEDQBXVK.js";
|
|
12
12
|
import {
|
|
13
13
|
getDangerLevel,
|
|
14
14
|
isFileWriteTool,
|
|
15
15
|
runLeanAgentLoop
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-SMFRJCXB.js";
|
|
17
17
|
import {
|
|
18
18
|
EnvLoader,
|
|
19
19
|
NetworkError,
|
|
@@ -26,7 +26,7 @@ import {
|
|
|
26
26
|
SUBAGENT_ALLOWED_TOOLS,
|
|
27
27
|
SUBAGENT_DEFAULT_MAX_ROUNDS,
|
|
28
28
|
SUBAGENT_MAX_ROUNDS_LIMIT
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-RFWBHCDC.js";
|
|
30
30
|
import {
|
|
31
31
|
fileCheckpoints
|
|
32
32
|
} from "./chunk-4BKXL7SM.js";
|
package/dist/chunk-A4GUGWEY.js
CHANGED
|
File without changes
|
package/dist/chunk-BXP6YZ2P.js
CHANGED
|
File without changes
|
package/dist/chunk-CITDVXXM.js
CHANGED
|
File without changes
|
package/dist/chunk-CKH4KQ4E.js
CHANGED
|
File without changes
|
package/dist/chunk-E44DTERW.js
CHANGED
|
File without changes
|
package/dist/chunk-HLWUDRBO.js
CHANGED
|
File without changes
|
package/dist/chunk-HOSJZMQS.js
CHANGED
|
File without changes
|
package/dist/chunk-IW3Q7AE5.js
CHANGED
|
File without changes
|
package/dist/chunk-JVKAL5Q3.js
CHANGED
|
File without changes
|
package/dist/chunk-KHYD3WXE.js
CHANGED
|
File without changes
|
package/dist/chunk-MC34ISJU.js
CHANGED
|
File without changes
|
package/dist/chunk-NZ4X6GUC.js
CHANGED
|
File without changes
|
package/dist/chunk-O6UFCEUZ.js
CHANGED
|
File without changes
|
package/dist/chunk-OJL3PY36.js
CHANGED
|
File without changes
|
package/dist/chunk-Q3ZUDA6S.js
CHANGED
|
File without changes
|
package/dist/chunk-SLSWPBK3.js
CHANGED
|
File without changes
|
|
@@ -484,6 +484,12 @@ function isCleanDocumentBody(content) {
|
|
|
484
484
|
if (detectPseudoToolCalls(content)) return false;
|
|
485
485
|
return looksLikeDocumentBody(content);
|
|
486
486
|
}
|
|
487
|
+
function stripOuterCodeFence(content) {
|
|
488
|
+
const trimmed = content.trim();
|
|
489
|
+
const m = trimmed.match(/^```[^\n`]*\n([\s\S]*?)\n```\s*$/);
|
|
490
|
+
if (m) return m[1];
|
|
491
|
+
return content;
|
|
492
|
+
}
|
|
487
493
|
function teeFileStats(content) {
|
|
488
494
|
return { lines: content.split("\n").length, bytes: Buffer.byteLength(content, "utf-8") };
|
|
489
495
|
}
|
|
@@ -1062,6 +1068,7 @@ export {
|
|
|
1062
1068
|
TEE_FINAL_USER_NUDGE,
|
|
1063
1069
|
CONTENT_ONLY_STREAM_REMINDER,
|
|
1064
1070
|
isCleanDocumentBody,
|
|
1071
|
+
stripOuterCodeFence,
|
|
1065
1072
|
freshPriorContent,
|
|
1066
1073
|
evaluateTeeContent,
|
|
1067
1074
|
buildDeferredSaveInstruction,
|
package/dist/chunk-T2NL5ZIA.js
CHANGED
|
File without changes
|
package/dist/chunk-TB4W4Y4T.js
CHANGED
|
File without changes
|
package/dist/chunk-TZQHYZKT.js
CHANGED
|
File without changes
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
truncateForPersist
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-742TILCK.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-
|
|
14
|
+
} from "./chunk-RFWBHCDC.js";
|
|
15
15
|
|
|
16
16
|
// src/mcp/client.ts
|
|
17
17
|
import { spawn } from "child_process";
|
|
@@ -6,15 +6,15 @@ import {
|
|
|
6
6
|
} from "./chunk-HLWUDRBO.js";
|
|
7
7
|
import {
|
|
8
8
|
ProviderRegistry
|
|
9
|
-
} from "./chunk-
|
|
10
|
-
import "./chunk-
|
|
9
|
+
} from "./chunk-UZISJ3KZ.js";
|
|
10
|
+
import "./chunk-SMFRJCXB.js";
|
|
11
11
|
import {
|
|
12
12
|
ConfigManager
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-EOYN2PCH.js";
|
|
14
14
|
import "./chunk-TZQHYZKT.js";
|
|
15
15
|
import {
|
|
16
16
|
VERSION
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-RFWBHCDC.js";
|
|
18
18
|
|
|
19
19
|
// src/cli/ci.ts
|
|
20
20
|
import { execFileSync, execSync } from "child_process";
|
|
@@ -2,26 +2,26 @@
|
|
|
2
2
|
import {
|
|
3
3
|
getConfigDirUsage,
|
|
4
4
|
listRecentCrashes
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-2V4QG75U.js";
|
|
6
6
|
import {
|
|
7
7
|
ProviderRegistry
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-UZISJ3KZ.js";
|
|
9
9
|
import {
|
|
10
10
|
getStatsSnapshot,
|
|
11
11
|
getTopFailingTools,
|
|
12
12
|
getTopUsedTools,
|
|
13
13
|
resetStats
|
|
14
|
-
} from "./chunk-
|
|
15
|
-
import "./chunk-
|
|
14
|
+
} from "./chunk-ZEDQBXVK.js";
|
|
15
|
+
import "./chunk-SMFRJCXB.js";
|
|
16
16
|
import {
|
|
17
17
|
ConfigManager
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-EOYN2PCH.js";
|
|
19
19
|
import "./chunk-TZQHYZKT.js";
|
|
20
20
|
import {
|
|
21
21
|
DEV_STATE_FILE_NAME,
|
|
22
22
|
MEMORY_FILE_NAME,
|
|
23
23
|
VERSION
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-RFWBHCDC.js";
|
|
25
25
|
import "./chunk-IW3Q7AE5.js";
|
|
26
26
|
|
|
27
27
|
// src/diagnostics/doctor-cli.ts
|
package/dist/electron-server.js
CHANGED
|
@@ -36,7 +36,7 @@ import {
|
|
|
36
36
|
VERSION,
|
|
37
37
|
buildUserIdentityPrompt,
|
|
38
38
|
runTestsTool
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-EZR7NIC5.js";
|
|
40
40
|
import {
|
|
41
41
|
hasSemanticIndex,
|
|
42
42
|
semanticSearch
|
|
@@ -1986,6 +1986,12 @@ function isCleanDocumentBody(content) {
|
|
|
1986
1986
|
if (detectPseudoToolCalls(content)) return false;
|
|
1987
1987
|
return looksLikeDocumentBody(content);
|
|
1988
1988
|
}
|
|
1989
|
+
function stripOuterCodeFence(content) {
|
|
1990
|
+
const trimmed = content.trim();
|
|
1991
|
+
const m = trimmed.match(/^```[^\n`]*\n([\s\S]*?)\n```\s*$/);
|
|
1992
|
+
if (m) return m[1];
|
|
1993
|
+
return content;
|
|
1994
|
+
}
|
|
1989
1995
|
function teeFileStats(content) {
|
|
1990
1996
|
return { lines: content.split("\n").length, bytes: Buffer.byteLength(content, "utf-8") };
|
|
1991
1997
|
}
|
|
@@ -13024,10 +13030,11 @@ Try: /compact to reduce context, /clear to reset, or switch to a larger-context
|
|
|
13024
13030
|
if (pendingTeeSave && isCleanDocumentBody(content)) {
|
|
13025
13031
|
try {
|
|
13026
13032
|
mkdirSync10(dirname5(pendingTeeSave), { recursive: true });
|
|
13027
|
-
|
|
13033
|
+
const bodyToSave = stripOuterCodeFence(content);
|
|
13034
|
+
writeFileSync7(pendingTeeSave, bodyToSave, "utf-8");
|
|
13028
13035
|
undoStack.push(pendingTeeSave, `save_last_response (deferred): ${pendingTeeSave}`);
|
|
13029
|
-
const lines =
|
|
13030
|
-
this.send({ type: "info", message: `\u2705 Saved (from reply): ${pendingTeeSave} (${lines} lines, ${
|
|
13036
|
+
const lines = bodyToSave.split("\n").length;
|
|
13037
|
+
this.send({ type: "info", message: `\u2705 Saved (from reply): ${pendingTeeSave} (${lines} lines, ${bodyToSave.length} chars)` });
|
|
13031
13038
|
} catch (saveErr) {
|
|
13032
13039
|
this.send({ type: "info", message: `\u2717 Could not save to ${pendingTeeSave}: ${saveErr.message ?? saveErr}` });
|
|
13033
13040
|
}
|
|
@@ -14304,7 +14311,7 @@ ${undoResults.map((r) => ` \u2022 ${r}`).join("\n")}` });
|
|
|
14304
14311
|
case "test": {
|
|
14305
14312
|
this.send({ type: "info", message: "\u{1F9EA} Running tests..." });
|
|
14306
14313
|
try {
|
|
14307
|
-
const { executeTests } = await import("./run-tests-
|
|
14314
|
+
const { executeTests } = await import("./run-tests-DOBBUV45.js");
|
|
14308
14315
|
const argStr = args.join(" ").trim();
|
|
14309
14316
|
let testArgs = {};
|
|
14310
14317
|
if (argStr) {
|
|
File without changes
|
|
File without changes
|
|
@@ -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-
|
|
157
|
+
const { TaskOrchestrator } = await import("./task-orchestrator-6FD2AXLQ.js");
|
|
158
158
|
const orchestrator = new TaskOrchestrator(config, providers, configManager);
|
|
159
159
|
let interrupted = false;
|
|
160
160
|
const onSigint = () => {
|
|
File without changes
|
package/dist/index.js
CHANGED
|
@@ -15,7 +15,7 @@ import {
|
|
|
15
15
|
saveDevState,
|
|
16
16
|
sessionHasMeaningfulContent,
|
|
17
17
|
setupProxy
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-YG5CA4ZA.js";
|
|
19
19
|
import {
|
|
20
20
|
ToolExecutor,
|
|
21
21
|
ToolRegistry,
|
|
@@ -35,10 +35,10 @@ import {
|
|
|
35
35
|
spawnAgentContext,
|
|
36
36
|
theme,
|
|
37
37
|
undoStack
|
|
38
|
-
} from "./chunk-
|
|
38
|
+
} from "./chunk-742TILCK.js";
|
|
39
39
|
import "./chunk-T2NL5ZIA.js";
|
|
40
40
|
import "./chunk-BXP6YZ2P.js";
|
|
41
|
-
import "./chunk-
|
|
41
|
+
import "./chunk-VYCSZBII.js";
|
|
42
42
|
import {
|
|
43
43
|
SessionManager,
|
|
44
44
|
getContentText
|
|
@@ -55,16 +55,16 @@ import {
|
|
|
55
55
|
getConfigDirUsage,
|
|
56
56
|
listRecentCrashes,
|
|
57
57
|
writeCrashLog
|
|
58
|
-
} from "./chunk-
|
|
58
|
+
} from "./chunk-2V4QG75U.js";
|
|
59
59
|
import {
|
|
60
60
|
ProviderRegistry
|
|
61
|
-
} from "./chunk-
|
|
61
|
+
} from "./chunk-UZISJ3KZ.js";
|
|
62
62
|
import {
|
|
63
63
|
getStatsSnapshot,
|
|
64
64
|
getTopFailingTools,
|
|
65
65
|
getTopUsedTools,
|
|
66
66
|
installFlushOnExit
|
|
67
|
-
} from "./chunk-
|
|
67
|
+
} from "./chunk-ZEDQBXVK.js";
|
|
68
68
|
import {
|
|
69
69
|
CONTENT_ONLY_STREAM_REMINDER,
|
|
70
70
|
TEE_FINAL_USER_NUDGE,
|
|
@@ -80,12 +80,13 @@ import {
|
|
|
80
80
|
freshPriorContent,
|
|
81
81
|
isCleanDocumentBody,
|
|
82
82
|
runAgentLoop,
|
|
83
|
+
stripOuterCodeFence,
|
|
83
84
|
stripToolCallReminder,
|
|
84
85
|
teeStreamErrorSummary
|
|
85
|
-
} from "./chunk-
|
|
86
|
+
} from "./chunk-SMFRJCXB.js";
|
|
86
87
|
import {
|
|
87
88
|
ConfigManager
|
|
88
|
-
} from "./chunk-
|
|
89
|
+
} from "./chunk-EOYN2PCH.js";
|
|
89
90
|
import {
|
|
90
91
|
AuthError,
|
|
91
92
|
ProviderError,
|
|
@@ -112,7 +113,7 @@ import {
|
|
|
112
113
|
SKILLS_DIR_NAME,
|
|
113
114
|
VERSION,
|
|
114
115
|
buildUserIdentityPrompt
|
|
115
|
-
} from "./chunk-
|
|
116
|
+
} from "./chunk-RFWBHCDC.js";
|
|
116
117
|
import {
|
|
117
118
|
formatGitContextForPrompt,
|
|
118
119
|
getGitContext,
|
|
@@ -1827,7 +1828,7 @@ No tools match "${filter}".
|
|
|
1827
1828
|
const { join: join5 } = await import("path");
|
|
1828
1829
|
const { existsSync: existsSync5 } = await import("fs");
|
|
1829
1830
|
const { getGitRoot: getGitRoot2 } = await import("./git-context-EXOEHQSF.js");
|
|
1830
|
-
const { MCP_PROJECT_CONFIG_NAME: MCP_PROJECT_CONFIG_NAME2 } = await import("./constants-
|
|
1831
|
+
const { MCP_PROJECT_CONFIG_NAME: MCP_PROJECT_CONFIG_NAME2 } = await import("./constants-PN4X2MIK.js");
|
|
1831
1832
|
const { approveProject, hashMcpFile } = await import("./project-trust-NKYHL3VZ.js");
|
|
1832
1833
|
const cwd = process.cwd();
|
|
1833
1834
|
const projectRoot = getGitRoot2(cwd) ?? cwd;
|
|
@@ -2888,7 +2889,7 @@ ${hint}` : "")
|
|
|
2888
2889
|
usage: "/test [command|filter]",
|
|
2889
2890
|
async execute(args, ctx) {
|
|
2890
2891
|
try {
|
|
2891
|
-
const { executeTests } = await import("./run-tests-
|
|
2892
|
+
const { executeTests } = await import("./run-tests-ADASGIJE.js");
|
|
2892
2893
|
const argStr = args.join(" ").trim();
|
|
2893
2894
|
let testArgs = {};
|
|
2894
2895
|
if (argStr) {
|
|
@@ -6640,12 +6641,13 @@ ${decision.displayMessage}
|
|
|
6640
6641
|
if (pendingTeeSave && isCleanDocumentBody(content)) {
|
|
6641
6642
|
try {
|
|
6642
6643
|
mkdirSync4(dirname3(pendingTeeSave), { recursive: true });
|
|
6643
|
-
|
|
6644
|
+
const bodyToSave = stripOuterCodeFence(content);
|
|
6645
|
+
writeFileSync2(pendingTeeSave, bodyToSave, "utf-8");
|
|
6644
6646
|
undoStack.push(pendingTeeSave, `save_last_response (deferred): ${pendingTeeSave}`);
|
|
6645
|
-
const lines =
|
|
6647
|
+
const lines = bodyToSave.split("\n").length;
|
|
6646
6648
|
process.stdout.write(theme.success(
|
|
6647
6649
|
`
|
|
6648
|
-
\u2705 Saved (from your reply): ${pendingTeeSave} (${lines} lines, ${
|
|
6650
|
+
\u2705 Saved (from your reply): ${pendingTeeSave} (${lines} lines, ${bodyToSave.length} chars)
|
|
6649
6651
|
|
|
6650
6652
|
`
|
|
6651
6653
|
));
|
|
@@ -7265,7 +7267,7 @@ program.command("web").description("Start Web UI server with browser-based chat
|
|
|
7265
7267
|
console.error("Error: Invalid port number. Must be between 1 and 65535.");
|
|
7266
7268
|
process.exit(1);
|
|
7267
7269
|
}
|
|
7268
|
-
const { startWebServer } = await import("./server-
|
|
7270
|
+
const { startWebServer } = await import("./server-FLDRVPXJ.js");
|
|
7269
7271
|
await startWebServer({ port, host: options.host });
|
|
7270
7272
|
});
|
|
7271
7273
|
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) => {
|
|
@@ -7432,16 +7434,16 @@ program.command("sessions").description("List recent conversation sessions").opt
|
|
|
7432
7434
|
console.log(footer + "\n");
|
|
7433
7435
|
});
|
|
7434
7436
|
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) => {
|
|
7435
|
-
const { runUsageCli } = await import("./usage-
|
|
7437
|
+
const { runUsageCli } = await import("./usage-NDMBSGG6.js");
|
|
7436
7438
|
await runUsageCli(options);
|
|
7437
7439
|
});
|
|
7438
7440
|
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) => {
|
|
7439
|
-
const { runDoctorCli } = await import("./doctor-cli-
|
|
7441
|
+
const { runDoctorCli } = await import("./doctor-cli-YPL3XCBU.js");
|
|
7440
7442
|
await runDoctorCli({ json: !!options.json, resetStats: !!options.resetStats });
|
|
7441
7443
|
});
|
|
7442
7444
|
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) => {
|
|
7443
7445
|
try {
|
|
7444
|
-
const batch = await import("./batch-
|
|
7446
|
+
const batch = await import("./batch-PRC75BKT.js");
|
|
7445
7447
|
switch (action) {
|
|
7446
7448
|
case "submit":
|
|
7447
7449
|
if (!arg) {
|
|
@@ -7484,7 +7486,7 @@ program.command("batch <action> [arg] [arg2]").description("Anthropic Message Ba
|
|
|
7484
7486
|
}
|
|
7485
7487
|
});
|
|
7486
7488
|
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) => {
|
|
7487
|
-
const { startMcpServer } = await import("./server-
|
|
7489
|
+
const { startMcpServer } = await import("./server-WBIQCV6B.js");
|
|
7488
7490
|
await startMcpServer({
|
|
7489
7491
|
allowDestructive: !!options.allowDestructive,
|
|
7490
7492
|
allowOutsideCwd: !!options.allowOutsideCwd,
|
|
@@ -7493,7 +7495,7 @@ program.command("mcp-serve").description("Start an MCP server over STDIO, exposi
|
|
|
7493
7495
|
});
|
|
7494
7496
|
});
|
|
7495
7497
|
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; diff fetched via `gh pr diff <num>`", (v) => parseInt(v, 10)).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)").action(async (options) => {
|
|
7496
|
-
const { runCi } = await import("./ci-
|
|
7498
|
+
const { runCi } = await import("./ci-OZ4EB52Y.js");
|
|
7497
7499
|
const result = await runCi({
|
|
7498
7500
|
pr: options.pr,
|
|
7499
7501
|
base: options.base,
|
|
@@ -7639,7 +7641,7 @@ program.command("hub [topic]").description("Start multi-agent hub (discuss / bra
|
|
|
7639
7641
|
}),
|
|
7640
7642
|
config.get("customProviders")
|
|
7641
7643
|
);
|
|
7642
|
-
const { startHub } = await import("./hub-
|
|
7644
|
+
const { startHub } = await import("./hub-PKFAPVXM.js");
|
|
7643
7645
|
await startHub(
|
|
7644
7646
|
{
|
|
7645
7647
|
topic: topic ?? "",
|
package/dist/indexer-AKWMYNJI.js
CHANGED
|
File without changes
|
package/dist/persist-L54DPLI7.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
loadDevState,
|
|
20
20
|
persistToolRound,
|
|
21
21
|
setupProxy
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-YG5CA4ZA.js";
|
|
23
23
|
import {
|
|
24
24
|
ToolExecutor,
|
|
25
25
|
ToolRegistry,
|
|
@@ -38,10 +38,10 @@ import {
|
|
|
38
38
|
spawnAgentContext,
|
|
39
39
|
truncateOutput,
|
|
40
40
|
undoStack
|
|
41
|
-
} from "./chunk-
|
|
41
|
+
} from "./chunk-742TILCK.js";
|
|
42
42
|
import "./chunk-T2NL5ZIA.js";
|
|
43
43
|
import "./chunk-BXP6YZ2P.js";
|
|
44
|
-
import "./chunk-
|
|
44
|
+
import "./chunk-VYCSZBII.js";
|
|
45
45
|
import {
|
|
46
46
|
SessionManager,
|
|
47
47
|
getContentText
|
|
@@ -52,10 +52,10 @@ import {
|
|
|
52
52
|
} from "./chunk-E44DTERW.js";
|
|
53
53
|
import {
|
|
54
54
|
ProviderRegistry
|
|
55
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-UZISJ3KZ.js";
|
|
56
56
|
import {
|
|
57
57
|
runTool
|
|
58
|
-
} from "./chunk-
|
|
58
|
+
} from "./chunk-ZEDQBXVK.js";
|
|
59
59
|
import {
|
|
60
60
|
CONTENT_ONLY_STREAM_REMINDER,
|
|
61
61
|
TEE_FINAL_USER_NUDGE,
|
|
@@ -68,12 +68,13 @@ import {
|
|
|
68
68
|
getDangerLevel,
|
|
69
69
|
isCleanDocumentBody,
|
|
70
70
|
runAgentLoop,
|
|
71
|
+
stripOuterCodeFence,
|
|
71
72
|
stripToolCallReminder,
|
|
72
73
|
teeStreamErrorSummary
|
|
73
|
-
} from "./chunk-
|
|
74
|
+
} from "./chunk-SMFRJCXB.js";
|
|
74
75
|
import {
|
|
75
76
|
ConfigManager
|
|
76
|
-
} from "./chunk-
|
|
77
|
+
} from "./chunk-EOYN2PCH.js";
|
|
77
78
|
import "./chunk-TZQHYZKT.js";
|
|
78
79
|
import {
|
|
79
80
|
AGENTIC_BEHAVIOR_GUIDELINE,
|
|
@@ -93,7 +94,7 @@ import {
|
|
|
93
94
|
SKILLS_DIR_NAME,
|
|
94
95
|
VERSION,
|
|
95
96
|
buildUserIdentityPrompt
|
|
96
|
-
} from "./chunk-
|
|
97
|
+
} from "./chunk-RFWBHCDC.js";
|
|
97
98
|
import {
|
|
98
99
|
formatGitContextForPrompt,
|
|
99
100
|
getGitContext,
|
|
@@ -1174,10 +1175,11 @@ Try: /compact to reduce context, /clear to reset, or switch to a larger-context
|
|
|
1174
1175
|
if (pendingTeeSave && isCleanDocumentBody(content)) {
|
|
1175
1176
|
try {
|
|
1176
1177
|
mkdirSync(dirname(pendingTeeSave), { recursive: true });
|
|
1177
|
-
|
|
1178
|
+
const bodyToSave = stripOuterCodeFence(content);
|
|
1179
|
+
writeFileSync(pendingTeeSave, bodyToSave, "utf-8");
|
|
1178
1180
|
undoStack.push(pendingTeeSave, `save_last_response (deferred): ${pendingTeeSave}`);
|
|
1179
|
-
const lines =
|
|
1180
|
-
this.send({ type: "info", message: `\u2705 Saved (from reply): ${pendingTeeSave} (${lines} lines, ${
|
|
1181
|
+
const lines = bodyToSave.split("\n").length;
|
|
1182
|
+
this.send({ type: "info", message: `\u2705 Saved (from reply): ${pendingTeeSave} (${lines} lines, ${bodyToSave.length} chars)` });
|
|
1181
1183
|
} catch (saveErr) {
|
|
1182
1184
|
this.send({ type: "info", message: `\u2717 Could not save to ${pendingTeeSave}: ${saveErr.message ?? saveErr}` });
|
|
1183
1185
|
}
|
|
@@ -2454,7 +2456,7 @@ ${undoResults.map((r) => ` \u2022 ${r}`).join("\n")}` });
|
|
|
2454
2456
|
case "test": {
|
|
2455
2457
|
this.send({ type: "info", message: "\u{1F9EA} Running tests..." });
|
|
2456
2458
|
try {
|
|
2457
|
-
const { executeTests } = await import("./run-tests-
|
|
2459
|
+
const { executeTests } = await import("./run-tests-ADASGIJE.js");
|
|
2458
2460
|
const argStr = args.join(" ").trim();
|
|
2459
2461
|
let testArgs = {};
|
|
2460
2462
|
if (argStr) {
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
ToolRegistry
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-742TILCK.js";
|
|
5
5
|
import "./chunk-T2NL5ZIA.js";
|
|
6
6
|
import "./chunk-BXP6YZ2P.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-VYCSZBII.js";
|
|
8
8
|
import {
|
|
9
9
|
runTool
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-ZEDQBXVK.js";
|
|
11
11
|
import {
|
|
12
12
|
getDangerLevel,
|
|
13
13
|
schemaToJsonSchema
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-SMFRJCXB.js";
|
|
15
15
|
import "./chunk-TZQHYZKT.js";
|
|
16
16
|
import {
|
|
17
17
|
VERSION
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-RFWBHCDC.js";
|
|
19
19
|
import "./chunk-4BKXL7SM.js";
|
|
20
20
|
import "./chunk-TB4W4Y4T.js";
|
|
21
21
|
import "./chunk-KHYD3WXE.js";
|
package/dist/store-MWNHVGJT.js
CHANGED
|
File without changes
|