jinzd-ai-cli 0.4.165 → 0.4.166
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-KV33HTXT.js → batch-XYA52SO5.js} +3 -3
- package/dist/{chunk-TQOW4QXI.js → chunk-2RBJNHBS.js} +1 -1
- package/dist/{chunk-3IRLZJEZ.js → chunk-3Q2B5YQP.js} +2 -2
- package/dist/{chunk-A2QRIRWR.js → chunk-AUOY5WJL.js} +1 -1
- package/dist/{chunk-R6F6V6AA.js → chunk-CQDCL3CR.js} +1 -1
- package/dist/{chunk-2INGXRYC.js → chunk-GNJOC6ZN.js} +65 -1
- package/dist/{chunk-GX4MZJ6R.js → chunk-HAFUJYZQ.js} +1 -1
- package/dist/{chunk-VSJHW3CU.js → chunk-MSUBGV52.js} +4 -4
- package/dist/{chunk-2ZD3YTVM.js → chunk-TZQHYZKT.js} +1 -0
- package/dist/{chunk-AYYIFOLV.js → chunk-X65N6VMM.js} +1 -1
- package/dist/{chunk-YC7N44MJ.js → chunk-ZGH5QTIF.js} +2 -2
- package/dist/{ci-H3U5MT23.js → ci-65KIRMAD.js} +4 -4
- package/dist/{constants-EFVA3BWE.js → constants-WTXRMREX.js} +1 -1
- package/dist/{doctor-cli-WIQX3QCP.js → doctor-cli-LOEEIEOP.js} +6 -6
- package/dist/electron-server.js +67 -2
- package/dist/{hub-OVROTRRS.js → hub-UM3LKKSJ.js} +1 -1
- package/dist/index.js +34 -20
- package/dist/{run-tests-SH56G6VK.js → run-tests-3G2PJXGO.js} +2 -2
- package/dist/{run-tests-WOGF7YL7.js → run-tests-NQGUFKOJ.js} +1 -1
- package/dist/{server-YOOT2T67.js → server-32ZENZ3A.js} +5 -5
- package/dist/{server-EC4VLKEM.js → server-MXD7VVUS.js} +9 -9
- package/dist/{task-orchestrator-QLMPQB3D.js → task-orchestrator-MOCZJHX3.js} +5 -5
- package/package.json +1 -1
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
ConfigManager
|
|
4
|
-
} from "./chunk-
|
|
5
|
-
import "./chunk-
|
|
6
|
-
import "./chunk-
|
|
4
|
+
} from "./chunk-3Q2B5YQP.js";
|
|
5
|
+
import "./chunk-TZQHYZKT.js";
|
|
6
|
+
import "./chunk-CQDCL3CR.js";
|
|
7
7
|
import "./chunk-PDX44BCA.js";
|
|
8
8
|
|
|
9
9
|
// src/cli/batch.ts
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
import {
|
|
3
3
|
ConfigError,
|
|
4
4
|
EnvLoader
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-TZQHYZKT.js";
|
|
6
6
|
import {
|
|
7
7
|
CONFIG_DIR_NAME,
|
|
8
8
|
CONFIG_FILE_NAME,
|
|
9
9
|
HISTORY_DIR_NAME,
|
|
10
10
|
PLUGINS_DIR_NAME
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-CQDCL3CR.js";
|
|
12
12
|
|
|
13
13
|
// src/config/config-manager.ts
|
|
14
14
|
import { readFileSync, writeFileSync, existsSync, mkdirSync } from "fs";
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
ProviderError,
|
|
8
8
|
ProviderNotFoundError,
|
|
9
9
|
RateLimitError
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-TZQHYZKT.js";
|
|
11
11
|
|
|
12
12
|
// src/providers/claude.ts
|
|
13
13
|
import Anthropic from "@anthropic-ai/sdk";
|
|
@@ -2150,6 +2150,69 @@ var KimiProvider = class _KimiProvider extends OpenAICompatibleProvider {
|
|
|
2150
2150
|
}
|
|
2151
2151
|
};
|
|
2152
2152
|
|
|
2153
|
+
// src/providers/minimax.ts
|
|
2154
|
+
var MiniMaxProvider = class extends OpenAICompatibleProvider {
|
|
2155
|
+
defaultBaseUrl = "https://api.minimaxi.com/v1";
|
|
2156
|
+
info = {
|
|
2157
|
+
id: "minimax",
|
|
2158
|
+
displayName: "MiniMax (\u6D77\u87BA)",
|
|
2159
|
+
defaultModel: "MiniMax-M3",
|
|
2160
|
+
apiKeyEnvVar: "AICLI_API_KEY_MINIMAX",
|
|
2161
|
+
requiresApiKey: true,
|
|
2162
|
+
baseUrl: this.defaultBaseUrl,
|
|
2163
|
+
models: [
|
|
2164
|
+
{
|
|
2165
|
+
id: "MiniMax-M3",
|
|
2166
|
+
displayName: "MiniMax M3\uFF08\u65D7\u8230\uFF0C1M \u4E0A\u4E0B\u6587\uFF09",
|
|
2167
|
+
contextWindow: 1e6,
|
|
2168
|
+
supportsStreaming: true
|
|
2169
|
+
},
|
|
2170
|
+
{
|
|
2171
|
+
id: "MiniMax-M2.7",
|
|
2172
|
+
displayName: "MiniMax M2.7",
|
|
2173
|
+
contextWindow: 1e6,
|
|
2174
|
+
supportsStreaming: true
|
|
2175
|
+
},
|
|
2176
|
+
{
|
|
2177
|
+
id: "MiniMax-M2.7-highspeed",
|
|
2178
|
+
displayName: "MiniMax M2.7 Highspeed",
|
|
2179
|
+
contextWindow: 1e6,
|
|
2180
|
+
supportsStreaming: true
|
|
2181
|
+
},
|
|
2182
|
+
{
|
|
2183
|
+
id: "MiniMax-M2.5",
|
|
2184
|
+
displayName: "MiniMax M2.5",
|
|
2185
|
+
contextWindow: 1e6,
|
|
2186
|
+
supportsStreaming: true
|
|
2187
|
+
},
|
|
2188
|
+
{
|
|
2189
|
+
id: "MiniMax-M2.5-highspeed",
|
|
2190
|
+
displayName: "MiniMax M2.5 Highspeed",
|
|
2191
|
+
contextWindow: 1e6,
|
|
2192
|
+
supportsStreaming: true
|
|
2193
|
+
},
|
|
2194
|
+
{
|
|
2195
|
+
id: "MiniMax-M2.1",
|
|
2196
|
+
displayName: "MiniMax M2.1",
|
|
2197
|
+
contextWindow: 1e6,
|
|
2198
|
+
supportsStreaming: true
|
|
2199
|
+
},
|
|
2200
|
+
{
|
|
2201
|
+
id: "MiniMax-M2.1-highspeed",
|
|
2202
|
+
displayName: "MiniMax M2.1 Highspeed",
|
|
2203
|
+
contextWindow: 1e6,
|
|
2204
|
+
supportsStreaming: true
|
|
2205
|
+
},
|
|
2206
|
+
{
|
|
2207
|
+
id: "MiniMax-M2",
|
|
2208
|
+
displayName: "MiniMax M2",
|
|
2209
|
+
contextWindow: 1e6,
|
|
2210
|
+
supportsStreaming: true
|
|
2211
|
+
}
|
|
2212
|
+
]
|
|
2213
|
+
};
|
|
2214
|
+
};
|
|
2215
|
+
|
|
2153
2216
|
// src/providers/openai.ts
|
|
2154
2217
|
var OpenAIProvider = class extends OpenAICompatibleProvider {
|
|
2155
2218
|
defaultBaseUrl = "https://api.openai.com/v1";
|
|
@@ -2487,6 +2550,7 @@ var BUILT_IN_PROVIDERS = [
|
|
|
2487
2550
|
DeepSeekProvider,
|
|
2488
2551
|
ZhipuProvider,
|
|
2489
2552
|
KimiProvider,
|
|
2553
|
+
MiniMaxProvider,
|
|
2490
2554
|
OpenAIProvider,
|
|
2491
2555
|
OpenRouterProvider,
|
|
2492
2556
|
OllamaProvider
|
|
@@ -5,10 +5,10 @@ import {
|
|
|
5
5
|
} from "./chunk-HDSKW7Q3.js";
|
|
6
6
|
import {
|
|
7
7
|
runTestsTool
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-X65N6VMM.js";
|
|
9
9
|
import {
|
|
10
10
|
runTool
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-AUOY5WJL.js";
|
|
12
12
|
import {
|
|
13
13
|
getDangerLevel,
|
|
14
14
|
isFileWriteTool
|
|
@@ -17,7 +17,7 @@ import {
|
|
|
17
17
|
EnvLoader,
|
|
18
18
|
NetworkError,
|
|
19
19
|
ToolError
|
|
20
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-TZQHYZKT.js";
|
|
21
21
|
import {
|
|
22
22
|
CONFIG_DIR_NAME,
|
|
23
23
|
DEFAULT_MAX_TOOL_OUTPUT_CHARS_CAP,
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
SUBAGENT_ALLOWED_TOOLS,
|
|
26
26
|
SUBAGENT_DEFAULT_MAX_ROUNDS,
|
|
27
27
|
SUBAGENT_MAX_ROUNDS_LIMIT
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-CQDCL3CR.js";
|
|
29
29
|
import {
|
|
30
30
|
fileCheckpoints
|
|
31
31
|
} from "./chunk-4BKXL7SM.js";
|
|
@@ -7,6 +7,7 @@ var ENV_KEY_MAP = {
|
|
|
7
7
|
deepseek: "AICLI_API_KEY_DEEPSEEK",
|
|
8
8
|
zhipu: "AICLI_API_KEY_ZHIPU",
|
|
9
9
|
kimi: "AICLI_API_KEY_KIMI",
|
|
10
|
+
minimax: "AICLI_API_KEY_MINIMAX",
|
|
10
11
|
openai: "AICLI_API_KEY_OPENAI",
|
|
11
12
|
openrouter: "AICLI_API_KEY_OPENROUTER",
|
|
12
13
|
"google-search": "AICLI_API_KEY_GOOGLESEARCH",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
truncateForPersist
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-MSUBGV52.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-CQDCL3CR.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-
|
|
9
|
+
} from "./chunk-GNJOC6ZN.js";
|
|
10
10
|
import "./chunk-NXXNLLSG.js";
|
|
11
11
|
import {
|
|
12
12
|
ConfigManager
|
|
13
|
-
} from "./chunk-
|
|
14
|
-
import "./chunk-
|
|
13
|
+
} from "./chunk-3Q2B5YQP.js";
|
|
14
|
+
import "./chunk-TZQHYZKT.js";
|
|
15
15
|
import {
|
|
16
16
|
VERSION
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-CQDCL3CR.js";
|
|
18
18
|
import "./chunk-PDX44BCA.js";
|
|
19
19
|
|
|
20
20
|
// src/cli/ci.ts
|
|
@@ -2,26 +2,26 @@
|
|
|
2
2
|
import {
|
|
3
3
|
getConfigDirUsage,
|
|
4
4
|
listRecentCrashes
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-2RBJNHBS.js";
|
|
6
6
|
import {
|
|
7
7
|
ProviderRegistry
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-GNJOC6ZN.js";
|
|
9
9
|
import {
|
|
10
10
|
getStatsSnapshot,
|
|
11
11
|
getTopFailingTools,
|
|
12
12
|
getTopUsedTools,
|
|
13
13
|
resetStats
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-AUOY5WJL.js";
|
|
15
15
|
import "./chunk-NXXNLLSG.js";
|
|
16
16
|
import {
|
|
17
17
|
ConfigManager
|
|
18
|
-
} from "./chunk-
|
|
19
|
-
import "./chunk-
|
|
18
|
+
} from "./chunk-3Q2B5YQP.js";
|
|
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-CQDCL3CR.js";
|
|
25
25
|
import "./chunk-PDX44BCA.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-HAFUJYZQ.js";
|
|
40
40
|
import {
|
|
41
41
|
hasSemanticIndex,
|
|
42
42
|
semanticSearch
|
|
@@ -316,6 +316,7 @@ var ENV_KEY_MAP = {
|
|
|
316
316
|
deepseek: "AICLI_API_KEY_DEEPSEEK",
|
|
317
317
|
zhipu: "AICLI_API_KEY_ZHIPU",
|
|
318
318
|
kimi: "AICLI_API_KEY_KIMI",
|
|
319
|
+
minimax: "AICLI_API_KEY_MINIMAX",
|
|
319
320
|
openai: "AICLI_API_KEY_OPENAI",
|
|
320
321
|
openrouter: "AICLI_API_KEY_OPENROUTER",
|
|
321
322
|
"google-search": "AICLI_API_KEY_GOOGLESEARCH",
|
|
@@ -2676,6 +2677,69 @@ var KimiProvider = class _KimiProvider extends OpenAICompatibleProvider {
|
|
|
2676
2677
|
}
|
|
2677
2678
|
};
|
|
2678
2679
|
|
|
2680
|
+
// src/providers/minimax.ts
|
|
2681
|
+
var MiniMaxProvider = class extends OpenAICompatibleProvider {
|
|
2682
|
+
defaultBaseUrl = "https://api.minimaxi.com/v1";
|
|
2683
|
+
info = {
|
|
2684
|
+
id: "minimax",
|
|
2685
|
+
displayName: "MiniMax (\u6D77\u87BA)",
|
|
2686
|
+
defaultModel: "MiniMax-M3",
|
|
2687
|
+
apiKeyEnvVar: "AICLI_API_KEY_MINIMAX",
|
|
2688
|
+
requiresApiKey: true,
|
|
2689
|
+
baseUrl: this.defaultBaseUrl,
|
|
2690
|
+
models: [
|
|
2691
|
+
{
|
|
2692
|
+
id: "MiniMax-M3",
|
|
2693
|
+
displayName: "MiniMax M3\uFF08\u65D7\u8230\uFF0C1M \u4E0A\u4E0B\u6587\uFF09",
|
|
2694
|
+
contextWindow: 1e6,
|
|
2695
|
+
supportsStreaming: true
|
|
2696
|
+
},
|
|
2697
|
+
{
|
|
2698
|
+
id: "MiniMax-M2.7",
|
|
2699
|
+
displayName: "MiniMax M2.7",
|
|
2700
|
+
contextWindow: 1e6,
|
|
2701
|
+
supportsStreaming: true
|
|
2702
|
+
},
|
|
2703
|
+
{
|
|
2704
|
+
id: "MiniMax-M2.7-highspeed",
|
|
2705
|
+
displayName: "MiniMax M2.7 Highspeed",
|
|
2706
|
+
contextWindow: 1e6,
|
|
2707
|
+
supportsStreaming: true
|
|
2708
|
+
},
|
|
2709
|
+
{
|
|
2710
|
+
id: "MiniMax-M2.5",
|
|
2711
|
+
displayName: "MiniMax M2.5",
|
|
2712
|
+
contextWindow: 1e6,
|
|
2713
|
+
supportsStreaming: true
|
|
2714
|
+
},
|
|
2715
|
+
{
|
|
2716
|
+
id: "MiniMax-M2.5-highspeed",
|
|
2717
|
+
displayName: "MiniMax M2.5 Highspeed",
|
|
2718
|
+
contextWindow: 1e6,
|
|
2719
|
+
supportsStreaming: true
|
|
2720
|
+
},
|
|
2721
|
+
{
|
|
2722
|
+
id: "MiniMax-M2.1",
|
|
2723
|
+
displayName: "MiniMax M2.1",
|
|
2724
|
+
contextWindow: 1e6,
|
|
2725
|
+
supportsStreaming: true
|
|
2726
|
+
},
|
|
2727
|
+
{
|
|
2728
|
+
id: "MiniMax-M2.1-highspeed",
|
|
2729
|
+
displayName: "MiniMax M2.1 Highspeed",
|
|
2730
|
+
contextWindow: 1e6,
|
|
2731
|
+
supportsStreaming: true
|
|
2732
|
+
},
|
|
2733
|
+
{
|
|
2734
|
+
id: "MiniMax-M2",
|
|
2735
|
+
displayName: "MiniMax M2",
|
|
2736
|
+
contextWindow: 1e6,
|
|
2737
|
+
supportsStreaming: true
|
|
2738
|
+
}
|
|
2739
|
+
]
|
|
2740
|
+
};
|
|
2741
|
+
};
|
|
2742
|
+
|
|
2679
2743
|
// src/providers/openai.ts
|
|
2680
2744
|
var OpenAIProvider = class extends OpenAICompatibleProvider {
|
|
2681
2745
|
defaultBaseUrl = "https://api.openai.com/v1";
|
|
@@ -3013,6 +3077,7 @@ var BUILT_IN_PROVIDERS = [
|
|
|
3013
3077
|
DeepSeekProvider,
|
|
3014
3078
|
ZhipuProvider,
|
|
3015
3079
|
KimiProvider,
|
|
3080
|
+
MiniMaxProvider,
|
|
3016
3081
|
OpenAIProvider,
|
|
3017
3082
|
OpenRouterProvider,
|
|
3018
3083
|
OllamaProvider
|
|
@@ -13483,7 +13548,7 @@ ${undoResults.map((r) => ` \u2022 ${r}`).join("\n")}` });
|
|
|
13483
13548
|
case "test": {
|
|
13484
13549
|
this.send({ type: "info", message: "\u{1F9EA} Running tests..." });
|
|
13485
13550
|
try {
|
|
13486
|
-
const { executeTests } = await import("./run-tests-
|
|
13551
|
+
const { executeTests } = await import("./run-tests-NQGUFKOJ.js");
|
|
13487
13552
|
const argStr = args.join(" ").trim();
|
|
13488
13553
|
let testArgs = {};
|
|
13489
13554
|
if (argStr) {
|
|
@@ -155,7 +155,7 @@ ${content}`);
|
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
157
|
async function runTaskMode(config, providers, configManager, topic) {
|
|
158
|
-
const { TaskOrchestrator } = await import("./task-orchestrator-
|
|
158
|
+
const { TaskOrchestrator } = await import("./task-orchestrator-MOCZJHX3.js");
|
|
159
159
|
const orchestrator = new TaskOrchestrator(config, providers, configManager);
|
|
160
160
|
let interrupted = false;
|
|
161
161
|
const onSigint = () => {
|
package/dist/index.js
CHANGED
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
saveDevState,
|
|
19
19
|
sessionHasMeaningfulContent,
|
|
20
20
|
setupProxy
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-ZGH5QTIF.js";
|
|
22
22
|
import {
|
|
23
23
|
ToolExecutor,
|
|
24
24
|
ToolRegistry,
|
|
@@ -37,10 +37,10 @@ import {
|
|
|
37
37
|
spawnAgentContext,
|
|
38
38
|
theme,
|
|
39
39
|
undoStack
|
|
40
|
-
} from "./chunk-
|
|
40
|
+
} from "./chunk-MSUBGV52.js";
|
|
41
41
|
import "./chunk-HDSKW7Q3.js";
|
|
42
42
|
import "./chunk-ZWVIDFGY.js";
|
|
43
|
-
import "./chunk-
|
|
43
|
+
import "./chunk-X65N6VMM.js";
|
|
44
44
|
import {
|
|
45
45
|
SessionManager,
|
|
46
46
|
getContentText
|
|
@@ -49,7 +49,7 @@ import {
|
|
|
49
49
|
getConfigDirUsage,
|
|
50
50
|
listRecentCrashes,
|
|
51
51
|
writeCrashLog
|
|
52
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-2RBJNHBS.js";
|
|
53
53
|
import {
|
|
54
54
|
CONTENT_ONLY_STREAM_REMINDER,
|
|
55
55
|
HALLUCINATION_CORRECTION_MESSAGE,
|
|
@@ -68,22 +68,22 @@ import {
|
|
|
68
68
|
looksLikeDocumentBody,
|
|
69
69
|
stripPseudoToolCalls,
|
|
70
70
|
stripToolCallReminder
|
|
71
|
-
} from "./chunk-
|
|
71
|
+
} from "./chunk-GNJOC6ZN.js";
|
|
72
72
|
import {
|
|
73
73
|
getStatsSnapshot,
|
|
74
74
|
getTopFailingTools,
|
|
75
75
|
getTopUsedTools,
|
|
76
76
|
installFlushOnExit
|
|
77
|
-
} from "./chunk-
|
|
77
|
+
} from "./chunk-AUOY5WJL.js";
|
|
78
78
|
import "./chunk-NXXNLLSG.js";
|
|
79
79
|
import {
|
|
80
80
|
ConfigManager
|
|
81
|
-
} from "./chunk-
|
|
81
|
+
} from "./chunk-3Q2B5YQP.js";
|
|
82
82
|
import {
|
|
83
83
|
AuthError,
|
|
84
84
|
ProviderError,
|
|
85
85
|
RateLimitError
|
|
86
|
-
} from "./chunk-
|
|
86
|
+
} from "./chunk-TZQHYZKT.js";
|
|
87
87
|
import {
|
|
88
88
|
AGENTIC_BEHAVIOR_GUIDELINE,
|
|
89
89
|
AUTHOR,
|
|
@@ -105,7 +105,7 @@ import {
|
|
|
105
105
|
SKILLS_DIR_NAME,
|
|
106
106
|
VERSION,
|
|
107
107
|
buildUserIdentityPrompt
|
|
108
|
-
} from "./chunk-
|
|
108
|
+
} from "./chunk-CQDCL3CR.js";
|
|
109
109
|
import {
|
|
110
110
|
formatGitContextForPrompt,
|
|
111
111
|
getGitContext,
|
|
@@ -320,14 +320,14 @@ var Renderer = class {
|
|
|
320
320
|
const feat = (s) => theme.dim(" \u2726 ") + chalk.white(s);
|
|
321
321
|
console.log();
|
|
322
322
|
console.log(
|
|
323
|
-
theme.heading(" \u{1F916} ai-cli") + theme.dim(` v${VERSION}`) + theme.dim(" \u2014 Cross-platform
|
|
323
|
+
theme.heading(" \u{1F916} ai-cli") + theme.dim(` v${VERSION}`) + theme.dim(" \u2014 Cross-platform agentic AI assistant (REPL \xB7 Web \xB7 Desktop, 9 providers)")
|
|
324
324
|
);
|
|
325
325
|
console.log(HR);
|
|
326
326
|
console.log(label("Desc") + chalk.white(DESCRIPTION));
|
|
327
327
|
console.log(label("Author") + theme.warning(AUTHOR) + theme.dim(" <" + AUTHOR_EMAIL + ">"));
|
|
328
328
|
console.log(HR);
|
|
329
|
-
console.log(theme.dim(" Supported Providers (
|
|
330
|
-
console.log(theme.dim(" OpenAI \xB7 DeepSeek \xB7 Kimi (Moonshot) \xB7 Claude (Anthropic)"));
|
|
329
|
+
console.log(theme.dim(" Supported Providers (9):"));
|
|
330
|
+
console.log(theme.dim(" OpenAI \xB7 DeepSeek \xB7 Kimi (Moonshot) \xB7 Claude (Anthropic) \xB7 MiniMax (\u6D77\u87BA)"));
|
|
331
331
|
console.log(theme.dim(" Gemini (Google) \xB7 Zhipu (GLM) \xB7 OpenRouter \xB7 Ollama (Local, no API key)"));
|
|
332
332
|
console.log(HR);
|
|
333
333
|
const mcpToolCount = mcpInfo?.tools ?? 0;
|
|
@@ -460,6 +460,20 @@ var Renderer = class {
|
|
|
460
460
|
console.log(feat("write_file long-content guidance (v0.4.103+): tool description no longer encourages AI to chunk long files \u2014 single-shot writes prevented from being split into truncated parts"));
|
|
461
461
|
console.log(feat("Provider retry + fallback chain (v0.4.144+): transient network / 5xx / 429 errors retry on the same provider with exponential backoff; persistent failures walk config.fallback.chain (per-entry provider+model). Opt-in via config.fallback.enabled. Stream-safe: never retries after first chunk yielded"));
|
|
462
462
|
console.log(feat("aicli ci \u2014 headless PR review for GitHub Actions (v0.4.145+): `aicli ci --pr <num> --post` reads diff via gh CLI, runs code + security review, posts/updates a single PR comment via sentinel marker. Drop-in workflow YAML at docs/github-actions-example.yml. Critical/high findings \u2192 exit 1 (CI gate)"));
|
|
463
|
+
console.log(feat("Kimi K2.6 family + temperature fix (v0.4.146\u20130.4.149): kimi-k2.6 / k2.5 / k2-thinking default models; auto-migrate retired k2-0711/k2-turbo ids in config + history; K2.x models force temperature=1 (API requires it)"));
|
|
464
|
+
console.log(feat("bash error hints (v0.4.146\u20130.4.165): on common Windows/PowerShell failures the bash tool appends actionable hints \u2014 Test-Path over -EA SilentlyContinue probes, python (not python3) incl. the WindowsApps stub that exits 1 silently, write_file over hallucinated Write-Content cmdlets"));
|
|
465
|
+
console.log(feat("6th security + perf audit (v0.4.151): SSRF hardening (IPv4 int/hex/octal + IPv6 + DNS-rebinding pinned via undici lookup), newline command-chain bypass in permissions, timing-safe token compare, interpreter inline-code (-c/-e) danger elevation, vector-store top-k + redactor perf"));
|
|
466
|
+
console.log(feat("C1/C2 index extended to Go/Rust/Java/C++ (v0.4.143): find_symbol/get_outline/find_references/search_code now cover 8 languages via bundled tree-sitter grammars"));
|
|
467
|
+
console.log(feat("Provider streaming tool-call fixes (v0.4.142): Zhipu/GLM repeated id+name delta aggregation no longer drops args; conformance tests across OpenAI-standard vs repeated-chunk shapes"));
|
|
468
|
+
console.log(feat("Hub P1 \u2014 mixed multi-model brainstorm (v0.4.152): aicli hub --mix spreads configured providers across roles (Claude vs GPT vs DeepSeek really debate); fixes per-role model bug via resolveRoleProviders"));
|
|
469
|
+
console.log(feat("Hub P2 \u2014 human-in-the-loop + convergence (v0.4.154): --steer pauses each round for guidance/stop; --vote lets agents append [CONVERGED], 2/3 majority ends early (zero extra API calls); structured Decision/Action-Items summary"));
|
|
470
|
+
console.log(feat("Hub P3 \u2014 discussion persistence (v0.4.155): finished discussions auto-save to ~/.aicli/history as a normal session, listed by `aicli sessions`, replayable via Web UI \u{1F3AC} \u2014 reuses Session Replay, zero new machinery"));
|
|
471
|
+
console.log(feat("Hub P4 \u2014 Web UI multi-agent room (v0.4.156\u20130.4.158): \u{1F3DB} Hub sidebar tab runs discussions live in the browser (streaming per-role blocks, vote rows, summary card); P4b adds in-browser --steer and side-by-side agent lanes. Hub roadmap complete"));
|
|
472
|
+
console.log(feat("aicli web fixes (v0.4.153): honor config.mcpEnabled in web mode; vendor Tailwind/DaisyUI/marked/highlight.js locally (GFW-blocked CDNs broke styling + login overlay)"));
|
|
473
|
+
console.log(feat("Self-updating service worker (v0.4.159): network-only HTML/JS + activate-time reload broadcast \u2014 upgrades take effect without manual SW unregister; fixes stale-cache ghost"));
|
|
474
|
+
console.log(feat("Web UI CSP fix (v0.4.160\u20130.4.162): restore missing \u{1F3DB} Hub tab button; loosen script-src to unsafe-inline so inline onclick handlers fire (strict CSP had silently blocked every button)"));
|
|
475
|
+
console.log(feat("Windows process-tree kill (v0.4.163): killChild uses taskkill /T /F so Ctrl+C actually interrupts ssh/psql grandchildren (child.kill only hit the powershell parent)"));
|
|
476
|
+
console.log(feat("Hallucination detector bash-aware (v0.4.165): files written via bash (python open().write(), Out-File, scp, redirects) no longer false-flagged as phantom claims; coarse check suppressed when bash ran this turn"));
|
|
463
477
|
console.log();
|
|
464
478
|
}
|
|
465
479
|
printPrompt(provider, _model) {
|
|
@@ -1774,7 +1788,7 @@ No tools match "${filter}".
|
|
|
1774
1788
|
const { join: join6 } = await import("path");
|
|
1775
1789
|
const { existsSync: existsSync6 } = await import("fs");
|
|
1776
1790
|
const { getGitRoot: getGitRoot2 } = await import("./git-context-7KIP4X2V.js");
|
|
1777
|
-
const { MCP_PROJECT_CONFIG_NAME: MCP_PROJECT_CONFIG_NAME2 } = await import("./constants-
|
|
1791
|
+
const { MCP_PROJECT_CONFIG_NAME: MCP_PROJECT_CONFIG_NAME2 } = await import("./constants-WTXRMREX.js");
|
|
1778
1792
|
const { approveProject, hashMcpFile } = await import("./project-trust-IFM7FXEV.js");
|
|
1779
1793
|
const cwd = process.cwd();
|
|
1780
1794
|
const projectRoot = getGitRoot2(cwd) ?? cwd;
|
|
@@ -2835,7 +2849,7 @@ ${hint}` : "")
|
|
|
2835
2849
|
usage: "/test [command|filter]",
|
|
2836
2850
|
async execute(args, ctx) {
|
|
2837
2851
|
try {
|
|
2838
|
-
const { executeTests } = await import("./run-tests-
|
|
2852
|
+
const { executeTests } = await import("./run-tests-3G2PJXGO.js");
|
|
2839
2853
|
const argStr = args.join(" ").trim();
|
|
2840
2854
|
let testArgs = {};
|
|
2841
2855
|
if (argStr) {
|
|
@@ -7537,7 +7551,7 @@ program.command("web").description("Start Web UI server with browser-based chat
|
|
|
7537
7551
|
console.error("Error: Invalid port number. Must be between 1 and 65535.");
|
|
7538
7552
|
process.exit(1);
|
|
7539
7553
|
}
|
|
7540
|
-
const { startWebServer } = await import("./server-
|
|
7554
|
+
const { startWebServer } = await import("./server-MXD7VVUS.js");
|
|
7541
7555
|
await startWebServer({ port, host: options.host });
|
|
7542
7556
|
});
|
|
7543
7557
|
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) => {
|
|
@@ -7704,12 +7718,12 @@ program.command("sessions").description("List recent conversation sessions").opt
|
|
|
7704
7718
|
console.log(footer + "\n");
|
|
7705
7719
|
});
|
|
7706
7720
|
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) => {
|
|
7707
|
-
const { runDoctorCli } = await import("./doctor-cli-
|
|
7721
|
+
const { runDoctorCli } = await import("./doctor-cli-LOEEIEOP.js");
|
|
7708
7722
|
await runDoctorCli({ json: !!options.json, resetStats: !!options.resetStats });
|
|
7709
7723
|
});
|
|
7710
7724
|
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) => {
|
|
7711
7725
|
try {
|
|
7712
|
-
const batch = await import("./batch-
|
|
7726
|
+
const batch = await import("./batch-XYA52SO5.js");
|
|
7713
7727
|
switch (action) {
|
|
7714
7728
|
case "submit":
|
|
7715
7729
|
if (!arg) {
|
|
@@ -7752,7 +7766,7 @@ program.command("batch <action> [arg] [arg2]").description("Anthropic Message Ba
|
|
|
7752
7766
|
}
|
|
7753
7767
|
});
|
|
7754
7768
|
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) => {
|
|
7755
|
-
const { startMcpServer } = await import("./server-
|
|
7769
|
+
const { startMcpServer } = await import("./server-32ZENZ3A.js");
|
|
7756
7770
|
await startMcpServer({
|
|
7757
7771
|
allowDestructive: !!options.allowDestructive,
|
|
7758
7772
|
allowOutsideCwd: !!options.allowOutsideCwd,
|
|
@@ -7761,7 +7775,7 @@ program.command("mcp-serve").description("Start an MCP server over STDIO, exposi
|
|
|
7761
7775
|
});
|
|
7762
7776
|
});
|
|
7763
7777
|
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) => {
|
|
7764
|
-
const { runCi } = await import("./ci-
|
|
7778
|
+
const { runCi } = await import("./ci-65KIRMAD.js");
|
|
7765
7779
|
const result = await runCi({
|
|
7766
7780
|
pr: options.pr,
|
|
7767
7781
|
base: options.base,
|
|
@@ -7906,7 +7920,7 @@ program.command("hub [topic]").description("Start multi-agent hub (discuss / bra
|
|
|
7906
7920
|
}),
|
|
7907
7921
|
config.get("customProviders")
|
|
7908
7922
|
);
|
|
7909
|
-
const { startHub } = await import("./hub-
|
|
7923
|
+
const { startHub } = await import("./hub-UM3LKKSJ.js");
|
|
7910
7924
|
await startHub(
|
|
7911
7925
|
{
|
|
7912
7926
|
topic: topic ?? "",
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
ToolRegistry
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-MSUBGV52.js";
|
|
5
5
|
import "./chunk-HDSKW7Q3.js";
|
|
6
6
|
import "./chunk-ZWVIDFGY.js";
|
|
7
|
-
import "./chunk-
|
|
7
|
+
import "./chunk-X65N6VMM.js";
|
|
8
8
|
import {
|
|
9
9
|
runTool
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-AUOY5WJL.js";
|
|
11
11
|
import {
|
|
12
12
|
getDangerLevel,
|
|
13
13
|
schemaToJsonSchema
|
|
14
14
|
} from "./chunk-NXXNLLSG.js";
|
|
15
|
-
import "./chunk-
|
|
15
|
+
import "./chunk-TZQHYZKT.js";
|
|
16
16
|
import {
|
|
17
17
|
VERSION
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-CQDCL3CR.js";
|
|
19
19
|
import "./chunk-4BKXL7SM.js";
|
|
20
20
|
import "./chunk-MM3F43H6.js";
|
|
21
21
|
import "./chunk-KHYD3WXE.js";
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
loadDevState,
|
|
22
22
|
persistToolRound,
|
|
23
23
|
setupProxy
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-ZGH5QTIF.js";
|
|
25
25
|
import {
|
|
26
26
|
ToolExecutor,
|
|
27
27
|
ToolRegistry,
|
|
@@ -39,10 +39,10 @@ import {
|
|
|
39
39
|
spawnAgentContext,
|
|
40
40
|
truncateOutput,
|
|
41
41
|
undoStack
|
|
42
|
-
} from "./chunk-
|
|
42
|
+
} from "./chunk-MSUBGV52.js";
|
|
43
43
|
import "./chunk-HDSKW7Q3.js";
|
|
44
44
|
import "./chunk-ZWVIDFGY.js";
|
|
45
|
-
import "./chunk-
|
|
45
|
+
import "./chunk-X65N6VMM.js";
|
|
46
46
|
import {
|
|
47
47
|
SessionManager,
|
|
48
48
|
getContentText
|
|
@@ -61,17 +61,17 @@ import {
|
|
|
61
61
|
looksLikeDocumentBody,
|
|
62
62
|
stripPseudoToolCalls,
|
|
63
63
|
stripToolCallReminder
|
|
64
|
-
} from "./chunk-
|
|
64
|
+
} from "./chunk-GNJOC6ZN.js";
|
|
65
65
|
import {
|
|
66
66
|
runTool
|
|
67
|
-
} from "./chunk-
|
|
67
|
+
} from "./chunk-AUOY5WJL.js";
|
|
68
68
|
import {
|
|
69
69
|
getDangerLevel
|
|
70
70
|
} from "./chunk-NXXNLLSG.js";
|
|
71
71
|
import {
|
|
72
72
|
ConfigManager
|
|
73
|
-
} from "./chunk-
|
|
74
|
-
import "./chunk-
|
|
73
|
+
} from "./chunk-3Q2B5YQP.js";
|
|
74
|
+
import "./chunk-TZQHYZKT.js";
|
|
75
75
|
import {
|
|
76
76
|
AGENTIC_BEHAVIOR_GUIDELINE,
|
|
77
77
|
AUTHOR,
|
|
@@ -90,7 +90,7 @@ import {
|
|
|
90
90
|
SKILLS_DIR_NAME,
|
|
91
91
|
VERSION,
|
|
92
92
|
buildUserIdentityPrompt
|
|
93
|
-
} from "./chunk-
|
|
93
|
+
} from "./chunk-CQDCL3CR.js";
|
|
94
94
|
import {
|
|
95
95
|
formatGitContextForPrompt,
|
|
96
96
|
getGitContext,
|
|
@@ -2577,7 +2577,7 @@ ${undoResults.map((r) => ` \u2022 ${r}`).join("\n")}` });
|
|
|
2577
2577
|
case "test": {
|
|
2578
2578
|
this.send({ type: "info", message: "\u{1F9EA} Running tests..." });
|
|
2579
2579
|
try {
|
|
2580
|
-
const { executeTests } = await import("./run-tests-
|
|
2580
|
+
const { executeTests } = await import("./run-tests-3G2PJXGO.js");
|
|
2581
2581
|
const argStr = args.join(" ").trim();
|
|
2582
2582
|
let testArgs = {};
|
|
2583
2583
|
if (argStr) {
|
|
@@ -3,20 +3,20 @@ import {
|
|
|
3
3
|
ToolRegistry,
|
|
4
4
|
googleSearchContext,
|
|
5
5
|
truncateOutput
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-MSUBGV52.js";
|
|
7
7
|
import "./chunk-HDSKW7Q3.js";
|
|
8
8
|
import "./chunk-ZWVIDFGY.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-X65N6VMM.js";
|
|
10
10
|
import {
|
|
11
11
|
runTool
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-AUOY5WJL.js";
|
|
13
13
|
import {
|
|
14
14
|
getDangerLevel
|
|
15
15
|
} from "./chunk-NXXNLLSG.js";
|
|
16
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-TZQHYZKT.js";
|
|
17
17
|
import {
|
|
18
18
|
SUBAGENT_ALLOWED_TOOLS
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-CQDCL3CR.js";
|
|
20
20
|
import "./chunk-4BKXL7SM.js";
|
|
21
21
|
import "./chunk-MM3F43H6.js";
|
|
22
22
|
import "./chunk-KHYD3WXE.js";
|