chuxin-agentdesk 0.1.0 → 0.1.1
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 +3 -3
- package/dist/index.mjs +13 -4
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -49,9 +49,9 @@ agentdesk stop
|
|
|
49
49
|
|
|
50
50
|
`init`、`chat`、`run`、`tasks`、`inspect`、`cancel`、`resume`、`approvals`、`approve`、`reject` 等命令在本地服务未运行时会自动在后台拉起服务并等待就绪后继续执行(交互终端下会看到一行启动提示),不需要每次手动先执行 `agentdesk start`;仍然可以显式用 `start`/`stop`/`restart`/`status` 管理服务生命周期,这四个命令的行为不受影响。
|
|
51
51
|
|
|
52
|
-
在真实交互终端下,不带任何子命令直接执行 `agentdesk` 会跳过帮助页:已配置模型时直接进入持久化交互式会话(等同于 `agentdesk chat`);未配置模型时先完成一次 `init`
|
|
52
|
+
在真实交互终端下,不带任何子命令直接执行 `agentdesk` 会跳过帮助页:已配置模型时直接进入持久化交互式会话(等同于 `agentdesk chat`);未配置模型时先完成一次 `init` 配置向导,正常完成后进入同一会话。显式执行 `agentdesk init` 也一样:填完地址和密钥,或选择保留已有配置后,直接进入对话界面。脚本、CI 或管道等非交互环境下,裸执行仍打印帮助,`init` 只保存配置并提示下一步命令。
|
|
53
53
|
|
|
54
|
-
`init` 在服务启动后交互配置模型地址、名称和 API Key,密钥输入不回显,并由现有 sidecar 密钥存储加密保存。CLI 独立运行使用本地密钥文件,和桌面端的系统钥匙串方式不同。`init`
|
|
54
|
+
`init` 在服务启动后交互配置模型地址、名称和 API Key,密钥输入不回显,并由现有 sidecar 密钥存储加密保存。CLI 独立运行使用本地密钥文件,和桌面端的系统钥匙串方式不同。`init` 保存配置但不自动调用模型;进入对话后使用自己的有效模型完成一轮聊天,才算连通验证。
|
|
55
55
|
|
|
56
56
|
交互终端采用 Vite+ 官方 `@voidzero-dev/vite-plus-prompts` 组件,提供带连接线的配置向导、方向键协议选择、输入占位提示、就地校验及密钥掩码。选项确认后收起菜单,只保留结果。已有模型时,重新执行 `init` 可以选择保留或重新配置。
|
|
57
57
|
|
|
@@ -173,7 +173,7 @@ pnpm --filter ./apps/cli test:dist
|
|
|
173
173
|
pnpm --filter ./apps/cli test:package
|
|
174
174
|
```
|
|
175
175
|
|
|
176
|
-
先检查 tarball 文件列表,在仓库外安装并验证 help、start、认证、重复启动、init、chat、status、logs、restart 与 stop
|
|
176
|
+
先检查 tarball 文件列表,在仓库外安装并验证 help、start、认证、重复启动、init、chat、status、logs、restart 与 stop,再发布。已发布版本可用 `npm install -g chuxin-agentdesk` 安装。
|
|
177
177
|
|
|
178
178
|
## TypeScript 开发入口
|
|
179
179
|
|
package/dist/index.mjs
CHANGED
|
@@ -3683,6 +3683,7 @@ import { createRequire } from "node:module";
|
|
|
3683
3683
|
import { setTimeout as delay3 } from "node:timers/promises";
|
|
3684
3684
|
async function initialize(home, workerPath2, values, { version: version2 = "" } = {}) {
|
|
3685
3685
|
const ui = createUi();
|
|
3686
|
+
const openChat = Boolean(process.stdin.isTTY) && Boolean(process.stdout.isTTY) && Boolean(process.stderr.isTTY);
|
|
3686
3687
|
await ui.welcome("\u8FDE\u63A5\u6A21\u578B\uFF0C\u5F00\u542F\u4F60\u7684 Agent \u4E4B\u65C5", version2);
|
|
3687
3688
|
const state = await runningState(home, workerPath2);
|
|
3688
3689
|
const providers = await (await apiRequest(state, "/providers")).json();
|
|
@@ -3693,9 +3694,10 @@ async function initialize(home, workerPath2, values, { version: version2 = "" }
|
|
|
3693
3694
|
{ label: "\u91CD\u65B0\u914D\u7F6E\u6A21\u578B", value: "configure", hint: "\u4FEE\u6539\u534F\u8BAE\u3001\u5730\u5740\u6216\u5BC6\u94A5" }
|
|
3694
3695
|
]) : "keep";
|
|
3695
3696
|
if (action === "keep") {
|
|
3697
|
+
if (openChat) return true;
|
|
3696
3698
|
ui.note(nextCommand('chat "\u4F60\u597D"', home));
|
|
3697
3699
|
ui.outro("\u914D\u7F6E\u5DF2\u4FDD\u7559");
|
|
3698
|
-
return;
|
|
3700
|
+
return false;
|
|
3699
3701
|
}
|
|
3700
3702
|
}
|
|
3701
3703
|
ui.note(`\u6570\u636E\u76EE\u5F55 ${home}`);
|
|
@@ -3761,8 +3763,10 @@ async function initialize(home, workerPath2, values, { version: version2 = "" }
|
|
|
3761
3763
|
["\u534F\u8BAE", api],
|
|
3762
3764
|
["\u51ED\u636E", "\u5DF2\u52A0\u5BC6\u4FDD\u5B58\uFF1B\u5C1A\u672A\u8C03\u7528\u6A21\u578B\u9A8C\u8BC1\u8FDE\u63A5"]
|
|
3763
3765
|
]);
|
|
3766
|
+
if (openChat) return true;
|
|
3764
3767
|
ui.note(`\u5F00\u59CB\u5BF9\u8BDD\uFF1A${nextCommand('chat "\u4F60\u597D"', home)}`);
|
|
3765
3768
|
ui.outro("\u914D\u7F6E\u5B8C\u6210\uFF0C\u5F00\u59CB\u521B\u9020\u5427\u3002");
|
|
3769
|
+
return false;
|
|
3766
3770
|
}
|
|
3767
3771
|
async function chat(home, workerPath2, message, values) {
|
|
3768
3772
|
const state = await runningState(home, workerPath2);
|
|
@@ -125106,7 +125110,7 @@ var HELP = `AgentDesk \u2014 \u672C\u5730 Agent \u5DE5\u4F5C\u53F0\u547D\u4EE4\u
|
|
|
125106
125110
|
doctor [--json] \u68C0\u67E5 Node\u3001Git\u3001\u53D1\u884C\u6587\u4EF6\u548C\u6A21\u578B\u914D\u7F6E
|
|
125107
125111
|
|
|
125108
125112
|
\u6A21\u578B\u4E0E\u5BF9\u8BDD
|
|
125109
|
-
init \u521D\u59CB\u5316\u6A21\u578B\uFF08\
|
|
125113
|
+
init \u521D\u59CB\u5316\u6A21\u578B\uFF08\u4EA4\u4E92\u7EC8\u7AEF\u5B8C\u6210\u540E\u8FDB\u5165\u5BF9\u8BDD\uFF1B\u5BC6\u94A5\u9690\u85CF\u8F93\u5165\uFF09
|
|
125110
125114
|
chat \u6253\u5F00\u6301\u4E45\u5316\u4EA4\u4E92\u5F0F\u4F1A\u8BDD\uFF08\u9700\u4EA4\u4E92\u7EC8\u7AEF\uFF0C--agent code\uFF0C--conversation ID \u7EED\u63A5\u5386\u53F2\uFF09
|
|
125111
125115
|
chat "\u6D88\u606F" \u4E00\u6B21\u6027\u6D41\u5F0F\u5BF9\u8BDD\u5E76\u9000\u51FA\uFF08--agent code\uFF0C--conversation ID\uFF0C--json\uFF09
|
|
125112
125116
|
|
|
@@ -125234,8 +125238,13 @@ async function main() {
|
|
|
125234
125238
|
} else if (command === "logs") await logs(home, values);
|
|
125235
125239
|
else if (command === "doctor") {
|
|
125236
125240
|
if (!await doctor(home, workerPath, values.json)) process.exitCode = 1;
|
|
125237
|
-
} else if (command === "init")
|
|
125238
|
-
|
|
125241
|
+
} else if (command === "init") {
|
|
125242
|
+
const openChat = await initialize(home, workerPath, values, { version: VERSION });
|
|
125243
|
+
if (openChat) {
|
|
125244
|
+
const { runInteractiveChat: runInteractiveChat2 } = await init_session().then(() => session_exports);
|
|
125245
|
+
await runInteractiveChat2(home, workerPath, values, VERSION);
|
|
125246
|
+
}
|
|
125247
|
+
} else if (command === "chat") {
|
|
125239
125248
|
const message = positionals.join(" ").trim();
|
|
125240
125249
|
const interactive = !message && !values.json && process.stdin.isTTY && process.stderr.isTTY && process.stdout.isTTY;
|
|
125241
125250
|
if (interactive) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "chuxin-agentdesk",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "AgentDesk CLI: local agent runtime, service management and terminal chat",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -37,8 +37,8 @@
|
|
|
37
37
|
"ink-testing-library": "^4.0.0",
|
|
38
38
|
"tsx": "4.20.6",
|
|
39
39
|
"typescript": "^5.9.3",
|
|
40
|
-
"@agentdesk/
|
|
41
|
-
"@agentdesk/
|
|
40
|
+
"@agentdesk/shared": "0.1.0",
|
|
41
|
+
"@agentdesk/sidecar": "0.1.0"
|
|
42
42
|
},
|
|
43
43
|
"repository": {
|
|
44
44
|
"type": "git",
|