jinzd-ai-cli 0.4.90 → 0.4.91
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/README.md +6 -2
- package/README.zh-CN.md +6 -2
- package/dist/{batch-3MJ56YAA.js → batch-KZQHKPE5.js} +2 -2
- package/dist/{chunk-WPQ4D6T3.js → chunk-AKCXRW2Q.js} +1 -1
- package/dist/{chunk-EEEAFWNK.js → chunk-IGNYJUZU.js} +1 -1
- package/dist/{chunk-DJGP7AR6.js → chunk-MYQANQ6F.js} +2 -2
- package/dist/{chunk-AB2LA33A.js → chunk-US6MQO6W.js} +1 -1
- package/dist/{chunk-BJXGZFE6.js → chunk-XQHCCV3A.js} +1 -1
- package/dist/{chunk-G65IDWVP.js → chunk-Z2V6EYPQ.js} +2 -2
- package/dist/electron-server.js +2 -2
- package/dist/{hub-B7NJSCWF.js → hub-A66CLTFF.js} +1 -1
- package/dist/index.js +23 -16
- package/dist/{run-tests-37FEBJTR.js → run-tests-KHJ6YCPH.js} +1 -1
- package/dist/{run-tests-2DYVHTIH.js → run-tests-MKBVRMBA.js} +2 -2
- package/dist/{server-S6JYNMMF.js → server-B6U5GMZ7.js} +3 -3
- package/dist/{server-FCTPLKGO.js → server-J7BPHI7D.js} +6 -6
- package/dist/{task-orchestrator-K6HDX4YE.js → task-orchestrator-JB5TZNBK.js} +3 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
[](https://www.npmjs.com/package/jinzd-ai-cli)
|
|
8
8
|
[](LICENSE)
|
|
9
9
|
[](https://nodejs.org)
|
|
10
|
-
[]()
|
|
11
11
|
[](https://github.com/jinzhengdong/ai-cli/releases)
|
|
12
12
|
[](https://github.com/jinzhengdong/ai-cli/actions/workflows/ci.yml)
|
|
13
13
|
|
|
@@ -31,6 +31,10 @@
|
|
|
31
31
|
- **Conversation Branching** *(v0.4.74+)* — `/branch list/new/switch/delete/rename` inside the REPL, plus a 🌿 "fork here" button on every replay step — explore alternate directions without losing the original thread
|
|
32
32
|
- **Symbol Index** *(v0.4.76+)* — persistent tree-sitter index for TS/JS/TSX/Python powers three new AI tools: `find_symbol`, `get_outline`, `find_references`. Orders of magnitude faster than grep for definition lookups; background refresh on REPL startup, `/index status|rebuild|clear` to manage
|
|
33
33
|
- **Semantic Code Search** *(v0.4.77+)* — `search_code` tool finds code by meaning, not name. Local sentence embeddings (multilingual MiniLM, 117 MB one-time download) score symbols by cosine similarity against natural-language queries in English or Chinese ("where are users authenticated", "哪里做了速率限制"). No API key, runs on CPU. Manage with `/index semantic-rebuild|semantic-clear`
|
|
34
|
+
- **MCP Server Mode** *(v0.4.84+)* — `aicli mcp-serve` reverses ai-cli into an MCP server (JSON-RPC 2.0 over stdio), exposing its 26 built-in tools (incl. `find_symbol` / `search_code` / `run_tests`) to Claude Desktop / Cursor / any MCP client. Opt-in destructive-tool allow, `--tools` whitelist, `--cwd` override
|
|
35
|
+
- **Session Sensitive-Data Redaction** *(v0.4.88+)* — unified redactor scrubs `password=` / `api_key` / bearer tokens / OpenAI-style keys from every message **before it hits disk**. Query text is redacted too, so secrets never reach embeddings or logs. `/security status` + `/security scan` to audit
|
|
36
|
+
- **Human-like Long-Term Memory** *(v0.4.89+, B4)* — semantic index over every past chat session + `recall_memory` AI tool + `/memory rebuild|refresh|status|recall` commands. AI is prompted to auto-recall when it sees "last time" / "之前" / ambiguous references. Reuses the same MiniLM embedder as semantic code search
|
|
37
|
+
- **Web UI Memory Panel** *(v0.4.90+, B4)* — new 🧠 Memory sidebar tab with semantic search across past chats; each hit has **➕ Inject** (quotes the snippet into the chat input as a markdown blockquote so you can review/edit before sending — no silent context injection) and **↗ Load** (jumps to source session). Bulk "Inject top 3" for recall bundles
|
|
34
38
|
- **Streaming Tool Use** — Real-time streaming of AI reasoning and tool calls as they happen
|
|
35
39
|
- **Sub-Agents** — Delegate complex subtasks to isolated child agents with independent tool loops
|
|
36
40
|
- **Extended Thinking** — Claude deep reasoning mode with `/think` toggle
|
|
@@ -41,7 +45,7 @@
|
|
|
41
45
|
- **PWA Support** — Install Web UI as a desktop/mobile app, accessible over LAN
|
|
42
46
|
- **Hierarchical Context** — 3-layer context files (global / project / subdirectory) auto-injected
|
|
43
47
|
- **Headless Mode** — `ai-cli -p "prompt"` for CI/CD pipelines and scripting
|
|
44
|
-
- **
|
|
48
|
+
- **43 REPL Commands** — Session management, checkpointing, code review, security review/scan, rewind, scaffolding, cross-session history search, chat-memory recall, and more
|
|
45
49
|
- **GitHub Actions CI/CD** — Automated testing on Node 20/22 + npm publish on release tags
|
|
46
50
|
- **Cross-Platform** — Windows, macOS, Linux
|
|
47
51
|
|
package/README.zh-CN.md
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
[](https://www.npmjs.com/package/jinzd-ai-cli)
|
|
8
8
|
[](LICENSE)
|
|
9
9
|
[](https://nodejs.org)
|
|
10
|
-
[]()
|
|
11
11
|
[](https://github.com/jinzhengdong/ai-cli/releases)
|
|
12
12
|
[](https://github.com/jinzhengdong/ai-cli/actions/workflows/ci.yml)
|
|
13
13
|
|
|
@@ -23,6 +23,10 @@
|
|
|
23
23
|
- **对话分支**(v0.4.74+)— REPL 内 `/branch list/new/switch/delete/rename/diff/cherry-pick`,Web UI 回放面板每条消息旁 🌿 "fork here" 按钮,任意位置开辟新分支探索不同方向,原对话保持不变;v0.4.81 起所有子命令支持 id / title / 唯一前缀
|
|
24
24
|
- **符号索引**(v0.4.76+,C1)— tree-sitter 持久化索引(TS/JS/TSX/JSX/Python)+ 3 个只读 AI 工具(`find_symbol` / `get_outline` / `find_references`)+ `/index status/rebuild/clear`;启动后台增量刷新,`write_file` 后自动 upsert
|
|
25
25
|
- **语义代码搜索**(v0.4.77+,C2)— `search_code` AI 工具 + 本地 sentence embedding(`paraphrase-multilingual-MiniLM-L12-v2`,117 MB 一次性下载,384 维,CPU 运行);支持中英文自然语言查询代码;`/index semantic-rebuild/semantic-clear` 管理
|
|
26
|
+
- **MCP Server 模式**(v0.4.84+,E1)— `aicli mcp-serve` 把 aicli 反转为 MCP 服务器(JSON-RPC 2.0 over stdio),把 26 个内置工具(含 `find_symbol` / `search_code` / `run_tests`)输出给 Claude Desktop / Cursor / 任何 MCP 客户端;支持 `--tools` 白名单、`--cwd` 覆盖、`--allow-destructive`
|
|
27
|
+
- **Session 敏感数据脱敏**(v0.4.88+)— 统一 redactor 在 session **落盘前**自动替换 `password=` / `api_key` / bearer token / OpenAI key 为 `[REDACTED:*]`;查询文本也走脱敏,secret 不会进 embedding 或日志;`/security status` + `/security scan` 审计
|
|
28
|
+
- **类人长期记忆**(v0.4.89+,B4)— 聊天记录语义索引跨 session 可召回 + `recall_memory` AI 工具 + `/memory rebuild/refresh/status/recall/index-clear`;AI 看到"上次"/"之前"/指代不明时自动回忆。复用 C2 的 MiniLM embedder
|
|
29
|
+
- **Web UI Memory 面板**(v0.4.90+,B4)— sidebar 新增 🧠 Memory 标签页,跨 session 语义搜索;每条 hit 带 **➕ Inject**(把片段作为 markdown 引用块塞进聊天输入框,用户可在上面继续打字编辑——不是静默注入上下文)和 **↗ Load**(跳转对应 session);顶部"➕ Inject top 3"一键批量
|
|
26
30
|
- **流式工具调用** — 实时流式展示 AI 推理过程和工具调用
|
|
27
31
|
- **子代理系统** — 将复杂子任务委派给独立子代理执行
|
|
28
32
|
- **深度推理** — Claude Extended Thinking,`/think` 一键切换
|
|
@@ -33,7 +37,7 @@
|
|
|
33
37
|
- **PWA 支持** — Web UI 可安装为桌面/移动应用,支持局域网访问
|
|
34
38
|
- **三层级上下文** — 全局 / 项目 / 子目录上下文文件自动注入
|
|
35
39
|
- **无头模式** — `aicli -p "提示词"` 用于 CI/CD 管道和脚本
|
|
36
|
-
- **
|
|
40
|
+
- **43 个 REPL 命令** — 会话管理、检查点、代码审查、安全审查/扫描、对话回退、脚手架、聊天记忆召回等
|
|
37
41
|
- **GitHub Actions CI/CD** — Node 20/22 自动测试 + Release tag 自动发布 npm
|
|
38
42
|
- **跨平台** — Windows、macOS、Linux
|
|
39
43
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
ConfigManager
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-US6MQO6W.js";
|
|
5
5
|
import "./chunk-2ZD3YTVM.js";
|
|
6
|
-
import "./chunk-
|
|
6
|
+
import "./chunk-AKCXRW2Q.js";
|
|
7
7
|
|
|
8
8
|
// src/cli/batch.ts
|
|
9
9
|
import Anthropic from "@anthropic-ai/sdk";
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import {
|
|
3
3
|
schemaToJsonSchema,
|
|
4
4
|
truncateForPersist
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-Z2V6EYPQ.js";
|
|
6
6
|
import {
|
|
7
7
|
AuthError,
|
|
8
8
|
ProviderError,
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
MCP_PROTOCOL_VERSION,
|
|
22
22
|
MCP_TOOL_PREFIX,
|
|
23
23
|
VERSION
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-AKCXRW2Q.js";
|
|
25
25
|
|
|
26
26
|
// src/providers/claude.ts
|
|
27
27
|
import Anthropic from "@anthropic-ai/sdk";
|
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
} from "./chunk-6VRJGH25.js";
|
|
24
24
|
import {
|
|
25
25
|
runTestsTool
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-IGNYJUZU.js";
|
|
27
27
|
import {
|
|
28
28
|
CONFIG_DIR_NAME,
|
|
29
29
|
DEFAULT_MAX_TOOL_OUTPUT_CHARS_CAP,
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
SUBAGENT_ALLOWED_TOOLS,
|
|
32
32
|
SUBAGENT_DEFAULT_MAX_ROUNDS,
|
|
33
33
|
SUBAGENT_MAX_ROUNDS_LIMIT
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-AKCXRW2Q.js";
|
|
35
35
|
|
|
36
36
|
// src/tools/types.ts
|
|
37
37
|
function isFileWriteTool(name) {
|
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-XQHCCV3A.js";
|
|
40
40
|
import {
|
|
41
41
|
hasSemanticIndex,
|
|
42
42
|
semanticSearch
|
|
@@ -11229,7 +11229,7 @@ ${undoResults.map((r) => ` \u2022 ${r}`).join("\n")}` });
|
|
|
11229
11229
|
case "test": {
|
|
11230
11230
|
this.send({ type: "info", message: "\u{1F9EA} Running tests..." });
|
|
11231
11231
|
try {
|
|
11232
|
-
const { executeTests } = await import("./run-tests-
|
|
11232
|
+
const { executeTests } = await import("./run-tests-KHJ6YCPH.js");
|
|
11233
11233
|
const argStr = args.join(" ").trim();
|
|
11234
11234
|
let testArgs = {};
|
|
11235
11235
|
if (argStr) {
|
|
@@ -385,7 +385,7 @@ ${content}`);
|
|
|
385
385
|
}
|
|
386
386
|
}
|
|
387
387
|
async function runTaskMode(config, providers, configManager, topic) {
|
|
388
|
-
const { TaskOrchestrator } = await import("./task-orchestrator-
|
|
388
|
+
const { TaskOrchestrator } = await import("./task-orchestrator-JB5TZNBK.js");
|
|
389
389
|
const orchestrator = new TaskOrchestrator(config, providers, configManager);
|
|
390
390
|
let interrupted = false;
|
|
391
391
|
const onSigint = () => {
|
package/dist/index.js
CHANGED
|
@@ -30,10 +30,10 @@ import {
|
|
|
30
30
|
saveDevState,
|
|
31
31
|
sessionHasMeaningfulContent,
|
|
32
32
|
setupProxy
|
|
33
|
-
} from "./chunk-
|
|
33
|
+
} from "./chunk-MYQANQ6F.js";
|
|
34
34
|
import {
|
|
35
35
|
ConfigManager
|
|
36
|
-
} from "./chunk-
|
|
36
|
+
} from "./chunk-US6MQO6W.js";
|
|
37
37
|
import {
|
|
38
38
|
ToolExecutor,
|
|
39
39
|
ToolRegistry,
|
|
@@ -49,7 +49,7 @@ import {
|
|
|
49
49
|
spawnAgentContext,
|
|
50
50
|
theme,
|
|
51
51
|
undoStack
|
|
52
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-Z2V6EYPQ.js";
|
|
53
53
|
import "./chunk-2ZD3YTVM.js";
|
|
54
54
|
import {
|
|
55
55
|
fileCheckpoints
|
|
@@ -67,7 +67,7 @@ import "./chunk-KJLJPUY2.js";
|
|
|
67
67
|
import "./chunk-6VRJGH25.js";
|
|
68
68
|
import "./chunk-2DXY7UGF.js";
|
|
69
69
|
import "./chunk-KHYD3WXE.js";
|
|
70
|
-
import "./chunk-
|
|
70
|
+
import "./chunk-IGNYJUZU.js";
|
|
71
71
|
import {
|
|
72
72
|
AGENTIC_BEHAVIOR_GUIDELINE,
|
|
73
73
|
AUTHOR,
|
|
@@ -89,7 +89,7 @@ import {
|
|
|
89
89
|
SKILLS_DIR_NAME,
|
|
90
90
|
VERSION,
|
|
91
91
|
buildUserIdentityPrompt
|
|
92
|
-
} from "./chunk-
|
|
92
|
+
} from "./chunk-AKCXRW2Q.js";
|
|
93
93
|
|
|
94
94
|
// src/index.ts
|
|
95
95
|
import { program } from "commander";
|
|
@@ -227,7 +227,7 @@ var Renderer = class {
|
|
|
227
227
|
console.log(theme.dim(" Gemini (Google) \xB7 Zhipu (GLM) \xB7 OpenRouter \xB7 Ollama (Local, no API key)"));
|
|
228
228
|
console.log(HR);
|
|
229
229
|
const mcpToolCount = mcpInfo?.tools ?? 0;
|
|
230
|
-
const toolTotal =
|
|
230
|
+
const toolTotal = 29 + pluginCount + mcpToolCount;
|
|
231
231
|
const extras = [];
|
|
232
232
|
if (pluginCount > 0) extras.push(`${pluginCount} plugin(s)`);
|
|
233
233
|
if (mcpToolCount > 0) extras.push(`${mcpToolCount} MCP`);
|
|
@@ -261,14 +261,15 @@ var Renderer = class {
|
|
|
261
261
|
console.log(tool("get_outline", "Enumerate all top-level declarations in one source file"));
|
|
262
262
|
console.log(tool("find_references", "Search indexed files for references to a symbol name"));
|
|
263
263
|
console.log(tool("search_code", 'Semantic (meaning-based) code search via local embeddings \u2014 "grep by meaning", bilingual'));
|
|
264
|
+
console.log(tool("recall_memory", 'Semantic recall over past chat sessions \u2014 "remember when we discussed X" across history (v0.4.89+)'));
|
|
264
265
|
console.log(HR);
|
|
265
|
-
console.log(theme.dim(" REPL Commands (
|
|
266
|
+
console.log(theme.dim(" REPL Commands (43):"));
|
|
266
267
|
console.log(theme.dim(" /help /about /provider /model /clear /compact /plan /session"));
|
|
267
268
|
console.log(theme.dim(" /system /context /status /search /undo /export /copy /paste"));
|
|
268
269
|
console.log(theme.dim(" /cost /init /skill /tools /plugins /mcp /config /checkpoint"));
|
|
269
|
-
console.log(theme.dim(" /review /security-review /rewind /commands /test
|
|
270
|
-
console.log(theme.dim(" /add-dir /memory /profile /doctor /bug /think
|
|
271
|
-
console.log(theme.dim(" /branch /index /yolo /exit"));
|
|
270
|
+
console.log(theme.dim(" /review /security-review /security /rewind /commands /test"));
|
|
271
|
+
console.log(theme.dim(" /scaffold /add-dir /memory /profile /doctor /bug /think"));
|
|
272
|
+
console.log(theme.dim(" /diff /fork /branch /index /yolo /exit"));
|
|
272
273
|
console.log(HR);
|
|
273
274
|
console.log(theme.dim(" Key Features:"));
|
|
274
275
|
console.log(feat("Agentic loop (up to 200 tool-call rounds, configurable via config/CLI, final answer streamed)"));
|
|
@@ -338,6 +339,12 @@ var Renderer = class {
|
|
|
338
339
|
console.log(feat("Anthropic Batches API (A3, v0.4.73+): aicli batch submit/list/status/results/cancel \u2014 50% off, 24h window"));
|
|
339
340
|
console.log(feat("Session Replay (B1, v0.4.71+): Web UI \u{1F3AC} button \u2014 timeline view of every message, tool call, reasoning, and cache-aware token usage"));
|
|
340
341
|
console.log(feat("Conversation Branching (B2, v0.4.74+): /branch list/new/switch/delete/rename \u2014 fork the conversation at any message; Web UI replay \u{1F33F} fork-here button"));
|
|
342
|
+
console.log(feat("Branch tree sidebar (B2 polish, v0.4.75+): Web UI \u{1F33F} Branches tab with tree-indented picker, click to switch, hover to rename/delete, + Fork button"));
|
|
343
|
+
console.log(feat("Cross-branch ops (B3, v0.4.80+): /branch diff and /branch cherry-pick \u2014 compare branches and pick messages across forks; v0.4.81 accepts id/title/prefix"));
|
|
344
|
+
console.log(feat("MCP Server mode (E1, v0.4.84+): aicli mcp-serve \u2014 reverse aicli into an MCP server so Claude Desktop/Cursor/any MCP client can use its 26 built-in tools (including find_symbol/search_code)"));
|
|
345
|
+
console.log(feat("Session sensitive-data redaction (v0.4.88+): unified redactor scrubs passwords/tokens/keys from every message before it hits disk; /security status and scan to audit"));
|
|
346
|
+
console.log(feat('Chat memory recall (B4, v0.4.89+): "human-like long-term memory" \u2014 semantic index over all past sessions + recall_memory AI tool + /memory rebuild|refresh|status|recall, AI auto-recalls on "last time"/"\u4E0A\u6B21"'));
|
|
347
|
+
console.log(feat("Web UI Memory panel (B4, v0.4.90+): \u{1F9E0} Memory sidebar tab \u2014 cross-session semantic search with \u2795 Inject-to-input (quotes hit into chat box for user-reviewed recall) and \u2197 jump-to-session"));
|
|
341
348
|
console.log();
|
|
342
349
|
}
|
|
343
350
|
printPrompt(provider, _model) {
|
|
@@ -982,7 +989,7 @@ function createDefaultCommands() {
|
|
|
982
989
|
" /scaffold <description> - Generate project scaffolding with AI",
|
|
983
990
|
" /add-dir [path|remove] - Add/remove a directory from AI context",
|
|
984
991
|
" /profile [show|set|clear] - View or edit your identity (AI knows who you are)",
|
|
985
|
-
" /memory [show|add|clear] -
|
|
992
|
+
" /memory [show|add|clear|path|rebuild|refresh|status|recall <q>|index-clear] - Persistent memory + chat memory recall index (v0.4.89+)",
|
|
986
993
|
" /doctor - Health check (API keys, config, MCP status)",
|
|
987
994
|
" /bug [--copy] - Generate bug report template (--copy to clipboard)",
|
|
988
995
|
" /diff [--stats] - Show all file modifications in this session",
|
|
@@ -2602,7 +2609,7 @@ ${hint}` : "")
|
|
|
2602
2609
|
usage: "/test [command|filter]",
|
|
2603
2610
|
async execute(args, ctx) {
|
|
2604
2611
|
try {
|
|
2605
|
-
const { executeTests } = await import("./run-tests-
|
|
2612
|
+
const { executeTests } = await import("./run-tests-MKBVRMBA.js");
|
|
2606
2613
|
const argStr = args.join(" ").trim();
|
|
2607
2614
|
let testArgs = {};
|
|
2608
2615
|
if (argStr) {
|
|
@@ -6715,7 +6722,7 @@ program.command("web").description("Start Web UI server with browser-based chat
|
|
|
6715
6722
|
console.error("Error: Invalid port number. Must be between 1 and 65535.");
|
|
6716
6723
|
process.exit(1);
|
|
6717
6724
|
}
|
|
6718
|
-
const { startWebServer } = await import("./server-
|
|
6725
|
+
const { startWebServer } = await import("./server-J7BPHI7D.js");
|
|
6719
6726
|
await startWebServer({ port, host: options.host });
|
|
6720
6727
|
});
|
|
6721
6728
|
program.command("user [action] [username]").description("Manage Web UI users (list | create <name> | delete <name> | reset-password <name> | migrate <name>)").action(async (action, username) => {
|
|
@@ -6838,7 +6845,7 @@ program.command("sessions").description("List recent conversation sessions").act
|
|
|
6838
6845
|
});
|
|
6839
6846
|
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) => {
|
|
6840
6847
|
try {
|
|
6841
|
-
const batch = await import("./batch-
|
|
6848
|
+
const batch = await import("./batch-KZQHKPE5.js");
|
|
6842
6849
|
switch (action) {
|
|
6843
6850
|
case "submit":
|
|
6844
6851
|
if (!arg) {
|
|
@@ -6881,7 +6888,7 @@ program.command("batch <action> [arg] [arg2]").description("Anthropic Message Ba
|
|
|
6881
6888
|
}
|
|
6882
6889
|
});
|
|
6883
6890
|
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) => {
|
|
6884
|
-
const { startMcpServer } = await import("./server-
|
|
6891
|
+
const { startMcpServer } = await import("./server-B6U5GMZ7.js");
|
|
6885
6892
|
await startMcpServer({
|
|
6886
6893
|
allowDestructive: !!options.allowDestructive,
|
|
6887
6894
|
allowOutsideCwd: !!options.allowOutsideCwd,
|
|
@@ -7008,7 +7015,7 @@ program.command("hub [topic]").description("Start multi-agent hub (discuss / bra
|
|
|
7008
7015
|
}),
|
|
7009
7016
|
config.get("customProviders")
|
|
7010
7017
|
);
|
|
7011
|
-
const { startHub } = await import("./hub-
|
|
7018
|
+
const { startHub } = await import("./hub-A66CLTFF.js");
|
|
7012
7019
|
await startHub(
|
|
7013
7020
|
{
|
|
7014
7021
|
topic: topic ?? "",
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
ToolRegistry,
|
|
4
4
|
getDangerLevel,
|
|
5
5
|
schemaToJsonSchema
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-Z2V6EYPQ.js";
|
|
7
7
|
import "./chunk-2ZD3YTVM.js";
|
|
8
8
|
import "./chunk-4BKXL7SM.js";
|
|
9
9
|
import "./chunk-ANYYM4CF.js";
|
|
@@ -12,10 +12,10 @@ import "./chunk-KJLJPUY2.js";
|
|
|
12
12
|
import "./chunk-6VRJGH25.js";
|
|
13
13
|
import "./chunk-2DXY7UGF.js";
|
|
14
14
|
import "./chunk-KHYD3WXE.js";
|
|
15
|
-
import "./chunk-
|
|
15
|
+
import "./chunk-IGNYJUZU.js";
|
|
16
16
|
import {
|
|
17
17
|
VERSION
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-AKCXRW2Q.js";
|
|
19
19
|
|
|
20
20
|
// src/mcp/server.ts
|
|
21
21
|
import { createInterface } from "readline";
|
|
@@ -23,10 +23,10 @@ import {
|
|
|
23
23
|
persistToolRound,
|
|
24
24
|
rebuildExtraMessages,
|
|
25
25
|
setupProxy
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-MYQANQ6F.js";
|
|
27
27
|
import {
|
|
28
28
|
ConfigManager
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-US6MQO6W.js";
|
|
30
30
|
import {
|
|
31
31
|
ToolExecutor,
|
|
32
32
|
ToolRegistry,
|
|
@@ -44,7 +44,7 @@ import {
|
|
|
44
44
|
spawnAgentContext,
|
|
45
45
|
truncateOutput,
|
|
46
46
|
undoStack
|
|
47
|
-
} from "./chunk-
|
|
47
|
+
} from "./chunk-Z2V6EYPQ.js";
|
|
48
48
|
import "./chunk-2ZD3YTVM.js";
|
|
49
49
|
import "./chunk-4BKXL7SM.js";
|
|
50
50
|
import "./chunk-ANYYM4CF.js";
|
|
@@ -53,7 +53,7 @@ import "./chunk-KJLJPUY2.js";
|
|
|
53
53
|
import "./chunk-6VRJGH25.js";
|
|
54
54
|
import "./chunk-2DXY7UGF.js";
|
|
55
55
|
import "./chunk-KHYD3WXE.js";
|
|
56
|
-
import "./chunk-
|
|
56
|
+
import "./chunk-IGNYJUZU.js";
|
|
57
57
|
import {
|
|
58
58
|
AGENTIC_BEHAVIOR_GUIDELINE,
|
|
59
59
|
AUTHOR,
|
|
@@ -72,7 +72,7 @@ import {
|
|
|
72
72
|
SKILLS_DIR_NAME,
|
|
73
73
|
VERSION,
|
|
74
74
|
buildUserIdentityPrompt
|
|
75
|
-
} from "./chunk-
|
|
75
|
+
} from "./chunk-AKCXRW2Q.js";
|
|
76
76
|
|
|
77
77
|
// src/web/server.ts
|
|
78
78
|
import express from "express";
|
|
@@ -2237,7 +2237,7 @@ ${undoResults.map((r) => ` \u2022 ${r}`).join("\n")}` });
|
|
|
2237
2237
|
case "test": {
|
|
2238
2238
|
this.send({ type: "info", message: "\u{1F9EA} Running tests..." });
|
|
2239
2239
|
try {
|
|
2240
|
-
const { executeTests } = await import("./run-tests-
|
|
2240
|
+
const { executeTests } = await import("./run-tests-MKBVRMBA.js");
|
|
2241
2241
|
const argStr = args.join(" ").trim();
|
|
2242
2242
|
let testArgs = {};
|
|
2243
2243
|
if (argStr) {
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
getDangerLevel,
|
|
5
5
|
googleSearchContext,
|
|
6
6
|
truncateOutput
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-Z2V6EYPQ.js";
|
|
8
8
|
import "./chunk-2ZD3YTVM.js";
|
|
9
9
|
import "./chunk-4BKXL7SM.js";
|
|
10
10
|
import "./chunk-ANYYM4CF.js";
|
|
@@ -13,10 +13,10 @@ import "./chunk-KJLJPUY2.js";
|
|
|
13
13
|
import "./chunk-6VRJGH25.js";
|
|
14
14
|
import "./chunk-2DXY7UGF.js";
|
|
15
15
|
import "./chunk-KHYD3WXE.js";
|
|
16
|
-
import "./chunk-
|
|
16
|
+
import "./chunk-IGNYJUZU.js";
|
|
17
17
|
import {
|
|
18
18
|
SUBAGENT_ALLOWED_TOOLS
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-AKCXRW2Q.js";
|
|
20
20
|
|
|
21
21
|
// src/hub/task-orchestrator.ts
|
|
22
22
|
import { createInterface } from "readline";
|