@keyou007/agent-bot 0.1.0 → 0.1.2
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/CHANGELOG.md +11 -0
- package/README.md +7 -1
- package/README.zh.md +7 -1
- package/config.example.yaml +0 -2
- package/dist/cli/Initializer.js +155 -11
- package/dist/cli/Initializer.js.map +1 -1
- package/dist/cli/LocalControlClient.js +14 -1
- package/dist/cli/LocalControlClient.js.map +1 -1
- package/dist/cli/help.js +91 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/cli/packageVersion.js +10 -0
- package/dist/cli/packageVersion.js.map +1 -0
- package/dist/cli.js +77 -83
- package/dist/cli.js.map +1 -1
- package/dist/config/loadConfig.js +0 -2
- package/dist/config/loadConfig.js.map +1 -1
- package/dist/config/schema.js +1 -1
- package/dist/config/schema.js.map +1 -1
- package/dist/feishu/FeishuConnector.js +79 -13
- package/dist/feishu/FeishuConnector.js.map +1 -1
- package/dist/feishu/transport.js +4 -11
- package/dist/feishu/transport.js.map +1 -1
- package/dist/index.js +7 -3
- package/dist/index.js.map +1 -1
- package/dist/startup/startFeishu.js +2 -1
- package/dist/startup/startFeishu.js.map +1 -1
- package/dist/supervisor.js +7 -4
- package/dist/supervisor.js.map +1 -1
- package/docs/technical-reference.md +19 -18
- package/docs/technical-reference.zh.md +19 -18
- package/npm-shrinkwrap.json +2 -2
- package/package.json +3 -2
- package/skills/agent-bot/SKILL.md +4 -1
- package/src/cli/Initializer.ts +164 -11
- package/src/cli/LocalControlClient.ts +12 -1
- package/src/cli/help.ts +99 -0
- package/src/cli/packageVersion.ts +14 -0
- package/src/cli.ts +84 -79
- package/src/config/loadConfig.ts +0 -2
- package/src/config/schema.ts +1 -1
- package/src/feishu/FeishuConnector.ts +89 -12
- package/src/feishu/transport.ts +7 -16
- package/src/index.ts +14 -3
- package/src/startup/startFeishu.ts +2 -0
- package/src/supervisor.ts +7 -4
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,17 @@ The project follows [Semantic Versioning](https://semver.org/).
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [0.1.2] - 2026-07-29
|
|
10
|
+
|
|
11
|
+
- Make npm release retries recover a missing GitHub Release from the version tag.
|
|
12
|
+
- Wait for the Feishu WebSocket connection before reporting the server as ready, and reject server startup when bot credentials are missing.
|
|
13
|
+
- Make Feishu initialization recover safely from interruption with exclusive initialization locking, durable credential writes, and new app registration whenever a complete credential pair was not saved.
|
|
14
|
+
|
|
15
|
+
## [0.1.1] - 2026-07-29
|
|
16
|
+
|
|
17
|
+
- Add `npm run release` to prepare the next stable version and changelog.
|
|
18
|
+
- Publish new package versions automatically after successful CI for a push to `master`.
|
|
19
|
+
|
|
9
20
|
## [0.1.0] - 2026-07-29
|
|
10
21
|
|
|
11
22
|
- Initial public npm package.
|
package/README.md
CHANGED
|
@@ -33,9 +33,11 @@ codex login status
|
|
|
33
33
|
|
|
34
34
|
```powershell
|
|
35
35
|
npm install --global @keyou007/agent-bot
|
|
36
|
+
agent-bot --version
|
|
37
|
+
agent-bot --help
|
|
36
38
|
```
|
|
37
39
|
|
|
38
|
-
This installs the `agent-bot` command globally. See the [technical reference](docs/technical-reference.md#development-and-source-installation) to install from source.
|
|
40
|
+
This installs the `agent-bot` command globally. Help is displayed in Chinese when the system locale is Chinese and in English otherwise. See the [technical reference](docs/technical-reference.md#development-and-source-installation) to install from source.
|
|
39
41
|
|
|
40
42
|
### Initialize
|
|
41
43
|
|
|
@@ -45,6 +47,8 @@ agent-bot init
|
|
|
45
47
|
|
|
46
48
|
Follow the displayed link or scan the QR code to create and authorize the Feishu bot. Initialization prepares `~/.agent-bot`, saves the bot credentials, and checks the required permissions.
|
|
47
49
|
|
|
50
|
+
Only a complete app ID and secret saved locally count as a successful bot creation. If initialization is interrupted before both credentials are saved, rerunning `agent-bot init` creates a new bot. If credentials were saved, initialization resumes by auditing that bot's remote permissions and subscriptions.
|
|
51
|
+
|
|
48
52
|
Missing optional permissions do not block initialization. Agent Bot reports which features may be unavailable.
|
|
49
53
|
|
|
50
54
|
| Option | Purpose |
|
|
@@ -63,6 +67,8 @@ agent-bot server start
|
|
|
63
67
|
agent-bot server status
|
|
64
68
|
```
|
|
65
69
|
|
|
70
|
+
`server start` requires configured Feishu credentials and waits until the bot's persistent connection is ready. Run `agent-bot init` first if the credentials are missing. For local-only use, run `agent-bot console` instead.
|
|
71
|
+
|
|
66
72
|
Open Feishu, find the bot, and send a message. Agent Bot automatically creates a task for a chat that does not have one yet.
|
|
67
73
|
|
|
68
74
|
Stop the service with:
|
package/README.zh.md
CHANGED
|
@@ -33,9 +33,11 @@ codex login status
|
|
|
33
33
|
|
|
34
34
|
```powershell
|
|
35
35
|
npm install --global @keyou007/agent-bot
|
|
36
|
+
agent-bot --version
|
|
37
|
+
agent-bot --help
|
|
36
38
|
```
|
|
37
39
|
|
|
38
|
-
该命令会全局安装 `agent-bot
|
|
40
|
+
该命令会全局安装 `agent-bot`。系统语言为中文时显示中文帮助,否则显示英文帮助。从源码安装的方法见[技术参考](docs/technical-reference.zh.md#开发与源码安装)。
|
|
39
41
|
|
|
40
42
|
### 初始化
|
|
41
43
|
|
|
@@ -45,6 +47,8 @@ agent-bot init
|
|
|
45
47
|
|
|
46
48
|
打开命令显示的链接或扫描二维码,完成飞书机器人创建和授权。初始化会准备 `~/.agent-bot`、保存机器人凭据并检查所需权限。
|
|
47
49
|
|
|
50
|
+
只有 App ID 和 App Secret 都已保存到本地才视为机器人创建成功。如果初始化在完整凭据保存前中断,再次运行 `agent-bot init` 会创建新机器人;如果凭据已经保存,则会继续检查该机器人的远端权限和订阅。
|
|
51
|
+
|
|
48
52
|
非核心权限缺失不会阻塞初始化,Agent Bot 会提示可能无法使用的功能。
|
|
49
53
|
|
|
50
54
|
| 参数 | 作用 |
|
|
@@ -63,6 +67,8 @@ agent-bot server start
|
|
|
63
67
|
agent-bot server status
|
|
64
68
|
```
|
|
65
69
|
|
|
70
|
+
`server start` 要求已经配置飞书机器人,并会等待机器人的长连接就绪。缺少凭据时请先运行 `agent-bot init`;仅在本地使用时请改用 `agent-bot console`。
|
|
71
|
+
|
|
66
72
|
打开飞书,找到机器人并发送消息。当前会话没有任务时,Agent Bot 会自动创建。
|
|
67
73
|
|
|
68
74
|
停止服务:
|
package/config.example.yaml
CHANGED
package/dist/cli/Initializer.js
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
1
2
|
import fs from "node:fs";
|
|
3
|
+
import os from "node:os";
|
|
2
4
|
import path from "node:path";
|
|
3
5
|
import { fileURLToPath } from "node:url";
|
|
4
6
|
import { parse as parseDotEnv } from "dotenv";
|
|
5
7
|
import { agentBotHome, defaultConfigPath, defaultDotEnvPath, resolveUserPath, } from "../config/paths.js";
|
|
6
8
|
const DEFAULT_CONFIG_TEMPLATE = fileURLToPath(new URL("../../config.example.yaml", import.meta.url));
|
|
7
9
|
const DEFAULT_ENV_TEMPLATE = fileURLToPath(new URL("../../.env.example", import.meta.url));
|
|
10
|
+
const INITIALIZATION_LOCK_NAME = "init.lock";
|
|
11
|
+
const MAX_INITIALIZATION_LOCK_AGE_MS = 30 * 60_000;
|
|
8
12
|
export function initializeAgentBot(options = {}) {
|
|
9
13
|
const env = options.env ?? process.env;
|
|
10
14
|
const configTemplatePath = path.resolve(options.configTemplatePath ?? DEFAULT_CONFIG_TEMPLATE);
|
|
@@ -18,14 +22,7 @@ export function initializeAgentBot(options = {}) {
|
|
|
18
22
|
const configDirectory = path.dirname(configPath);
|
|
19
23
|
const home = ensureDirectory(homePath);
|
|
20
24
|
fs.mkdirSync(configDirectory, { recursive: true });
|
|
21
|
-
|
|
22
|
-
if (fs.existsSync(configPath)) {
|
|
23
|
-
config = { path: configPath, status: "existing" };
|
|
24
|
-
}
|
|
25
|
-
else {
|
|
26
|
-
fs.copyFileSync(configTemplatePath, configPath, fs.constants.COPYFILE_EXCL);
|
|
27
|
-
config = { path: configPath, status: "created" };
|
|
28
|
-
}
|
|
25
|
+
const config = copyIfMissing(configTemplatePath, configPath);
|
|
29
26
|
const envFile = copyIfMissing(envTemplatePath, envPath);
|
|
30
27
|
restrictFilePermissions(envFile.path);
|
|
31
28
|
const data = ensureDirectory(path.join(configDirectory, "data"));
|
|
@@ -50,15 +47,92 @@ export function writeFeishuCredentials(envPath, credentials) {
|
|
|
50
47
|
updated = upsertDotEnvValue(updated, "FEISHU_APP_SECRET", credentials.appSecret);
|
|
51
48
|
fs.mkdirSync(path.dirname(envPath), { recursive: true });
|
|
52
49
|
const temporaryPath = `${envPath}.${process.pid}.${Date.now()}.tmp`;
|
|
50
|
+
let temporaryFile;
|
|
53
51
|
try {
|
|
54
|
-
fs.
|
|
52
|
+
temporaryFile = fs.openSync(temporaryPath, "wx", 0o600);
|
|
53
|
+
fs.writeFileSync(temporaryFile, updated, "utf8");
|
|
54
|
+
fs.fsyncSync(temporaryFile);
|
|
55
|
+
fs.closeSync(temporaryFile);
|
|
56
|
+
temporaryFile = undefined;
|
|
55
57
|
fs.renameSync(temporaryPath, envPath);
|
|
58
|
+
syncDirectory(path.dirname(envPath));
|
|
56
59
|
restrictFilePermissions(envPath);
|
|
60
|
+
const persisted = readFeishuCredentials(envPath, {});
|
|
61
|
+
if (persisted.status !== "configured"
|
|
62
|
+
|| persisted.appId !== credentials.appId
|
|
63
|
+
|| persisted.appSecret !== credentials.appSecret) {
|
|
64
|
+
throw new Error("飞书凭据写入后校验失败。");
|
|
65
|
+
}
|
|
57
66
|
}
|
|
58
67
|
finally {
|
|
68
|
+
if (temporaryFile !== undefined)
|
|
69
|
+
fs.closeSync(temporaryFile);
|
|
59
70
|
fs.rmSync(temporaryPath, { force: true });
|
|
60
71
|
}
|
|
61
72
|
}
|
|
73
|
+
export function shouldCreateFeishuApp(credentials, reconfigureFeishu) {
|
|
74
|
+
return reconfigureFeishu || credentials.status !== "configured";
|
|
75
|
+
}
|
|
76
|
+
export function acquireInitializationLock(lockDirectory) {
|
|
77
|
+
fs.mkdirSync(lockDirectory, { recursive: true });
|
|
78
|
+
const lockPath = path.join(lockDirectory, INITIALIZATION_LOCK_NAME);
|
|
79
|
+
const owner = {
|
|
80
|
+
token: randomUUID(),
|
|
81
|
+
pid: process.pid,
|
|
82
|
+
hostname: os.hostname(),
|
|
83
|
+
startedAt: new Date().toISOString(),
|
|
84
|
+
};
|
|
85
|
+
for (let attempt = 0; attempt < 3; attempt += 1) {
|
|
86
|
+
let lockFile;
|
|
87
|
+
let created = false;
|
|
88
|
+
try {
|
|
89
|
+
lockFile = fs.openSync(lockPath, "wx", 0o600);
|
|
90
|
+
created = true;
|
|
91
|
+
fs.writeFileSync(lockFile, `${JSON.stringify(owner)}\n`, "utf8");
|
|
92
|
+
fs.fsyncSync(lockFile);
|
|
93
|
+
fs.closeSync(lockFile);
|
|
94
|
+
lockFile = undefined;
|
|
95
|
+
return {
|
|
96
|
+
path: lockPath,
|
|
97
|
+
release: () => {
|
|
98
|
+
const current = readInitializationLock(lockPath);
|
|
99
|
+
if (current?.token === owner.token)
|
|
100
|
+
fs.rmSync(lockPath, { force: true });
|
|
101
|
+
},
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
catch (error) {
|
|
105
|
+
if (lockFile !== undefined)
|
|
106
|
+
fs.closeSync(lockFile);
|
|
107
|
+
if (created)
|
|
108
|
+
fs.rmSync(lockPath, { force: true });
|
|
109
|
+
if (!isFileExistsError(error))
|
|
110
|
+
throw error;
|
|
111
|
+
if (!isStaleInitializationLock(lockPath)) {
|
|
112
|
+
throw new Error(`另一个 agent-bot init 正在运行(锁文件:${lockPath})。`);
|
|
113
|
+
}
|
|
114
|
+
fs.rmSync(lockPath, { force: true });
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
throw new Error(`无法获取初始化锁:${lockPath}`);
|
|
118
|
+
}
|
|
119
|
+
export function cleanupFeishuCredentialTemporaryFiles(envPath) {
|
|
120
|
+
const directory = path.dirname(envPath);
|
|
121
|
+
if (!fs.existsSync(directory))
|
|
122
|
+
return 0;
|
|
123
|
+
const prefix = `${path.basename(envPath)}.`;
|
|
124
|
+
let removed = 0;
|
|
125
|
+
for (const entry of fs.readdirSync(directory, { withFileTypes: true })) {
|
|
126
|
+
if (!entry.isFile() || !entry.name.startsWith(prefix) || !entry.name.endsWith(".tmp"))
|
|
127
|
+
continue;
|
|
128
|
+
const middle = entry.name.slice(prefix.length, -".tmp".length);
|
|
129
|
+
if (!/^\d+\.\d+$/.test(middle))
|
|
130
|
+
continue;
|
|
131
|
+
fs.rmSync(path.join(directory, entry.name), { force: true });
|
|
132
|
+
removed += 1;
|
|
133
|
+
}
|
|
134
|
+
return removed;
|
|
135
|
+
}
|
|
62
136
|
function assertTemplate(templatePath) {
|
|
63
137
|
if (!fs.statSync(templatePath, { throwIfNoEntry: false })?.isFile()) {
|
|
64
138
|
throw new Error(`Initialization template does not exist: ${templatePath}`);
|
|
@@ -73,8 +147,15 @@ function copyIfMissing(sourcePath, targetPath) {
|
|
|
73
147
|
if (fs.existsSync(targetPath))
|
|
74
148
|
return { path: targetPath, status: "existing" };
|
|
75
149
|
fs.mkdirSync(path.dirname(targetPath), { recursive: true });
|
|
76
|
-
|
|
77
|
-
|
|
150
|
+
try {
|
|
151
|
+
fs.copyFileSync(sourcePath, targetPath, fs.constants.COPYFILE_EXCL);
|
|
152
|
+
return { path: targetPath, status: "created" };
|
|
153
|
+
}
|
|
154
|
+
catch (error) {
|
|
155
|
+
if (isFileExistsError(error))
|
|
156
|
+
return { path: targetPath, status: "existing" };
|
|
157
|
+
throw error;
|
|
158
|
+
}
|
|
78
159
|
}
|
|
79
160
|
function upsertDotEnvValue(contents, key, value) {
|
|
80
161
|
const newline = contents.includes("\r\n") ? "\r\n" : "\n";
|
|
@@ -106,6 +187,69 @@ function restrictFilePermissions(filePath) {
|
|
|
106
187
|
// Windows and some mounted filesystems do not implement POSIX modes.
|
|
107
188
|
}
|
|
108
189
|
}
|
|
190
|
+
function syncDirectory(directoryPath) {
|
|
191
|
+
let directory;
|
|
192
|
+
try {
|
|
193
|
+
directory = fs.openSync(directoryPath, "r");
|
|
194
|
+
fs.fsyncSync(directory);
|
|
195
|
+
}
|
|
196
|
+
catch {
|
|
197
|
+
// Directory fsync is not supported on every Windows or mounted filesystem.
|
|
198
|
+
}
|
|
199
|
+
finally {
|
|
200
|
+
if (directory !== undefined)
|
|
201
|
+
fs.closeSync(directory);
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
function readInitializationLock(lockPath) {
|
|
205
|
+
try {
|
|
206
|
+
const parsed = JSON.parse(fs.readFileSync(lockPath, "utf8"));
|
|
207
|
+
if (!parsed || typeof parsed !== "object")
|
|
208
|
+
return undefined;
|
|
209
|
+
const value = parsed;
|
|
210
|
+
if (typeof value.token !== "string"
|
|
211
|
+
|| typeof value.pid !== "number"
|
|
212
|
+
|| typeof value.hostname !== "string"
|
|
213
|
+
|| typeof value.startedAt !== "string") {
|
|
214
|
+
return undefined;
|
|
215
|
+
}
|
|
216
|
+
return {
|
|
217
|
+
token: value.token,
|
|
218
|
+
pid: value.pid,
|
|
219
|
+
hostname: value.hostname,
|
|
220
|
+
startedAt: value.startedAt,
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
catch {
|
|
224
|
+
return undefined;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
function isStaleInitializationLock(lockPath) {
|
|
228
|
+
const owner = readInitializationLock(lockPath);
|
|
229
|
+
const modifiedAt = fs.statSync(lockPath, { throwIfNoEntry: false })?.mtimeMs ?? Date.now();
|
|
230
|
+
const ageMs = Date.now() - modifiedAt;
|
|
231
|
+
if (!owner)
|
|
232
|
+
return ageMs >= 5_000;
|
|
233
|
+
if (owner.hostname === os.hostname())
|
|
234
|
+
return !isProcessRunning(owner.pid);
|
|
235
|
+
const startedAt = Date.parse(owner.startedAt);
|
|
236
|
+
const ownerAgeMs = Number.isFinite(startedAt) ? Date.now() - startedAt : ageMs;
|
|
237
|
+
return ownerAgeMs >= MAX_INITIALIZATION_LOCK_AGE_MS;
|
|
238
|
+
}
|
|
239
|
+
function isProcessRunning(pid) {
|
|
240
|
+
if (!Number.isInteger(pid) || pid <= 0)
|
|
241
|
+
return false;
|
|
242
|
+
try {
|
|
243
|
+
process.kill(pid, 0);
|
|
244
|
+
return true;
|
|
245
|
+
}
|
|
246
|
+
catch (error) {
|
|
247
|
+
return error.code === "EPERM";
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
function isFileExistsError(error) {
|
|
251
|
+
return error?.code === "EEXIST";
|
|
252
|
+
}
|
|
109
253
|
function firstNonBlank(...values) {
|
|
110
254
|
return values.find((value) => value !== undefined && value.trim().length > 0);
|
|
111
255
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Initializer.js","sourceRoot":"","sources":["../../src/cli/Initializer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Initializer.js","sourceRoot":"","sources":["../../src/cli/Initializer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,GAChB,MAAM,oBAAoB,CAAC;AA0C5B,MAAM,uBAAuB,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,2BAA2B,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACrG,MAAM,oBAAoB,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,oBAAoB,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC3F,MAAM,wBAAwB,GAAG,WAAW,CAAC;AAC7C,MAAM,8BAA8B,GAAG,EAAE,GAAG,MAAM,CAAC;AAEnD,MAAM,UAAU,kBAAkB,CAAC,OAAO,GAA0B,EAAE;IACpE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IACvC,MAAM,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,IAAI,uBAAuB,CAAC,CAAC;IAC/F,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,eAAe,IAAI,oBAAoB,CAAC,CAAC;IACtF,cAAc,CAAC,kBAAkB,CAAC,CAAC;IACnC,cAAc,CAAC,eAAe,CAAC,CAAC;IAEhC,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACnC,MAAM,cAAc,GAAG,aAAa,CAAC,OAAO,CAAC,UAAU,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC/E,MAAM,UAAU,GAAG,eAAe,CAAC,cAAc,IAAI,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7E,MAAM,OAAO,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IACvC,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAEjD,MAAM,IAAI,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IACvC,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEnD,MAAM,MAAM,GAAG,aAAa,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,aAAa,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IACxD,uBAAuB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;IAEjE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAAe,EAAE,GAAG,GAAsB,OAAO,CAAC,GAAG;IACzF,MAAM,UAAU,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,iBAAiB,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC;IACrF,IAAI,KAAK,IAAI,SAAS;QAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAC1E,IAAI,KAAK,IAAI,SAAS;QAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAC1E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAAe,EAAE,WAA8B;IACpF,iBAAiB,CAAC,eAAe,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;IACtD,iBAAiB,CAAC,mBAAmB,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChF,IAAI,OAAO,GAAG,iBAAiB,CAAC,QAAQ,EAAE,eAAe,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;IAC9E,OAAO,GAAG,iBAAiB,CAAC,OAAO,EAAE,mBAAmB,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC;IAEjF,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,MAAM,aAAa,GAAG,GAAG,OAAO,IAAI,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC;IACpE,IAAI,aAAiC,CAAC;IACtC,IAAI,CAAC;QACH,aAAa,GAAG,EAAE,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QACxD,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACjD,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC5B,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC5B,aAAa,GAAG,SAAS,CAAC;QAC1B,EAAE,CAAC,UAAU,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QACtC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;QACrC,uBAAuB,CAAC,OAAO,CAAC,CAAC;QACjC,MAAM,SAAS,GAAG,qBAAqB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACrD,IACE,SAAS,CAAC,MAAM,KAAK,YAAY;eAC9B,SAAS,CAAC,KAAK,KAAK,WAAW,CAAC,KAAK;eACrC,SAAS,CAAC,SAAS,KAAK,WAAW,CAAC,SAAS,EAChD,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;YAAS,CAAC;QACT,IAAI,aAAa,KAAK,SAAS;YAAE,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC7D,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,WAAkC,EAClC,iBAA0B;IAE1B,OAAO,iBAAiB,IAAI,WAAW,CAAC,MAAM,KAAK,YAAY,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,aAAqB;IAC7D,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,wBAAwB,CAAC,CAAC;IACpE,MAAM,KAAK,GAAG;QACZ,KAAK,EAAE,UAAU,EAAE;QACnB,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE;QACvB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;IAEF,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC;QAChD,IAAI,QAA4B,CAAC;QACjC,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC;YACH,QAAQ,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;YAC9C,OAAO,GAAG,IAAI,CAAC;YACf,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACjE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACvB,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACvB,QAAQ,GAAG,SAAS,CAAC;YACrB,OAAO;gBACL,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,GAAG,EAAE;oBACZ,MAAM,OAAO,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;oBACjD,IAAI,OAAO,EAAE,KAAK,KAAK,KAAK,CAAC,KAAK;wBAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC3E,CAAC;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,QAAQ,KAAK,SAAS;gBAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,OAAO;gBAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAClD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC;gBAAE,MAAM,KAAK,CAAC;YAC3C,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACzC,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,IAAI,CAAC,CAAC;YAC/D,CAAC;YACD,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,YAAY,QAAQ,EAAE,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,qCAAqC,CAAC,OAAe;IACnE,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC;IAC5C,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QACvE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,SAAS;QAChG,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC/D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC;YAAE,SAAS;QACzC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC,CAAC;IACf,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,cAAc,CAAC,YAAoB;IAC1C,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;QACpE,MAAM,IAAI,KAAK,CAAC,2CAA2C,YAAY,EAAE,CAAC,CAAC;IAC7E,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,aAAqB;IAC5C,MAAM,MAAM,GAAG,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;IACrE,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC;AACzC,CAAC;AAED,SAAS,aAAa,CAAC,UAAkB,EAAE,UAAkB;IAC3D,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;IAC/E,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5D,IAAI,CAAC;QACH,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QACpE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,iBAAiB,CAAC,KAAK,CAAC;YAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC;QAC9E,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAgB,EAAE,GAAW,EAAE,KAAa;IACrE,MAAM,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1D,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACjE,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,uBAAuB,GAAG,OAAO,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACf,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;IACnC,CAAC;SAAM,CAAC;QACN,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE;YAAE,KAAK,CAAC,GAAG,EAAE,CAAC;QAC5D,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5D,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,OAAO,EAAE,CAAC;AAC5C,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW,EAAE,KAAa;IACnD,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,gBAAgB,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,QAAgB;IAC/C,IAAI,CAAC;QACH,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,qEAAqE;IACvE,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,aAAqB;IAC1C,IAAI,SAA6B,CAAC;IAClC,IAAI,CAAC;QACH,SAAS,GAAG,EAAE,CAAC,QAAQ,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;QAC5C,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,2EAA2E;IAC7E,CAAC;YAAS,CAAC;QACT,IAAI,SAAS,KAAK,SAAS;YAAE,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;AACH,CAAC;AASD,SAAS,sBAAsB,CAAC,QAAgB;IAC9C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAY,CAAC;QACxE,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QAC5D,MAAM,KAAK,GAAG,MAAiC,CAAC;QAChD,IACE,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;eAC5B,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ;eAC7B,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;eAClC,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,EACtC,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,SAAS,EAAE,KAAK,CAAC,SAAS;SAC3B,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,yBAAyB,CAAC,QAAgB;IACjD,MAAM,KAAK,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,UAAU,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;IAC3F,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC;IACtC,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,IAAI,KAAK,CAAC;IAClC,IAAI,KAAK,CAAC,QAAQ,KAAK,EAAE,CAAC,QAAQ,EAAE;QAAE,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC1E,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;IAC/E,OAAO,UAAU,IAAI,8BAA8B,CAAC;AACtD,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAW;IACnC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IACrD,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAQ,KAA+B,CAAC,IAAI,KAAK,OAAO,CAAC;IAC3D,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,OAAQ,KAA+B,EAAE,IAAI,KAAK,QAAQ,CAAC;AAC7D,CAAC;AAED,SAAS,aAAa,CAAC,GAAG,MAAiC;IACzD,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAChF,CAAC"}
|
|
@@ -38,7 +38,20 @@ export async function sendControlRequest(endpoint, request, timeoutMs = 5_000) {
|
|
|
38
38
|
export async function isServerRunning(endpoint) {
|
|
39
39
|
try {
|
|
40
40
|
const response = await sendControlRequest(endpoint, { action: "health" }, 1_000);
|
|
41
|
-
|
|
41
|
+
if (!response.ok)
|
|
42
|
+
return false;
|
|
43
|
+
if (!response.data || typeof response.data !== "object")
|
|
44
|
+
return true;
|
|
45
|
+
return response.data.ready !== false;
|
|
46
|
+
}
|
|
47
|
+
catch {
|
|
48
|
+
return false;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
export async function isServerReachable(endpoint) {
|
|
52
|
+
try {
|
|
53
|
+
await sendControlRequest(endpoint, { action: "health" }, 1_000);
|
|
54
|
+
return true;
|
|
42
55
|
}
|
|
43
56
|
catch {
|
|
44
57
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocalControlClient.js","sourceRoot":"","sources":["../../src/cli/LocalControlClient.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAC;AAG3B,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,QAAgB,EAChB,OAAuB,EACvB,SAAS,GAAG,KAAK;IAEjB,OAAO,IAAI,OAAO,CAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACtD,MAAM,MAAM,GAAG,GAAG,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,CAAC,SAAqB,EAAQ,EAAE;YAC7C,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,SAAS,EAAE,CAAC;QACd,CAAC,CAAC;QACF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QACnG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC3B,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3E,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YAClC,KAAK,IAAI,KAAK,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACpC,IAAI,OAAO,GAAG,CAAC;gBAAE,OAAO;YACxB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAoB,CAAC;gBACxE,MAAM,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;YAClC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE;YACtB,IAAI,CAAC,OAAO;gBAAE,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,QAAgB;IACpD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;QACjF,OAAO,QAAQ,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"LocalControlClient.js","sourceRoot":"","sources":["../../src/cli/LocalControlClient.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/help.js
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
export function resolveCliLanguage(env = process.env, systemLocale = Intl.DateTimeFormat().resolvedOptions().locale) {
|
|
2
|
+
const configuredLocale = [
|
|
3
|
+
env.LC_ALL,
|
|
4
|
+
env.LC_MESSAGES,
|
|
5
|
+
env.LANGUAGE,
|
|
6
|
+
env.LANG,
|
|
7
|
+
].find((value) => value?.trim());
|
|
8
|
+
return isChineseLocale(configuredLocale ?? systemLocale) ? "zh" : "en";
|
|
9
|
+
}
|
|
10
|
+
export function renderCliHelp(version, language = resolveCliLanguage()) {
|
|
11
|
+
return language === "zh" ? renderChineseHelp(version) : renderEnglishHelp(version);
|
|
12
|
+
}
|
|
13
|
+
function renderChineseHelp(version) {
|
|
14
|
+
return `Agent Bot ${version}
|
|
15
|
+
通过飞书/Lark 使用本机 Codex 与 ACP Agent。
|
|
16
|
+
|
|
17
|
+
用法:
|
|
18
|
+
agent-bot [选项] <命令>
|
|
19
|
+
|
|
20
|
+
常用命令:
|
|
21
|
+
init 初始化配置、数据目录和飞书应用
|
|
22
|
+
console 打开本地 Console
|
|
23
|
+
server start 在后台启动 Agent Bot
|
|
24
|
+
server status 查看服务和安全重启状态
|
|
25
|
+
server restart 安排安全重启
|
|
26
|
+
server stop 停止 Agent Bot
|
|
27
|
+
task list 列出任务
|
|
28
|
+
task status <task> 查看任务状态
|
|
29
|
+
task chat <task> 查看任务绑定的飞书会话
|
|
30
|
+
task prompt <task> <prompt> 向指定任务发送 Prompt
|
|
31
|
+
task stop <task> 停止指定任务
|
|
32
|
+
task title <task> <title> 修改任务标题
|
|
33
|
+
skills status 查看内置 Skill 状态
|
|
34
|
+
skills install 安装内置 Skill
|
|
35
|
+
|
|
36
|
+
选项:
|
|
37
|
+
--config <path> 使用指定配置文件
|
|
38
|
+
--json 在支持的命令中输出 JSON
|
|
39
|
+
-h, --help 显示帮助
|
|
40
|
+
-v, --version 显示版本
|
|
41
|
+
|
|
42
|
+
示例:
|
|
43
|
+
agent-bot init
|
|
44
|
+
agent-bot server start
|
|
45
|
+
agent-bot server status
|
|
46
|
+
agent-bot task list
|
|
47
|
+
agent-bot server restart --reason "升级 Agent Bot"
|
|
48
|
+
`;
|
|
49
|
+
}
|
|
50
|
+
function renderEnglishHelp(version) {
|
|
51
|
+
return `Agent Bot ${version}
|
|
52
|
+
Use local Codex and ACP agents from Lark/Feishu.
|
|
53
|
+
|
|
54
|
+
Usage:
|
|
55
|
+
agent-bot [options] <command>
|
|
56
|
+
|
|
57
|
+
Common commands:
|
|
58
|
+
init Initialize config, data directories, and the Lark app
|
|
59
|
+
console Open the local console
|
|
60
|
+
server start Start Agent Bot in the background
|
|
61
|
+
server status Show server and safe-restart status
|
|
62
|
+
server restart Schedule a safe restart
|
|
63
|
+
server stop Stop Agent Bot
|
|
64
|
+
task list List tasks
|
|
65
|
+
task status <task> Show task status
|
|
66
|
+
task chat <task> Show the task's Lark chat binding
|
|
67
|
+
task prompt <task> <prompt> Send a Prompt to a task
|
|
68
|
+
task stop <task> Stop a task
|
|
69
|
+
task title <task> <title> Rename a task
|
|
70
|
+
skills status Show the built-in Skill status
|
|
71
|
+
skills install Install the built-in Skill
|
|
72
|
+
|
|
73
|
+
Options:
|
|
74
|
+
--config <path> Use a specific config file
|
|
75
|
+
--json Print JSON when supported
|
|
76
|
+
-h, --help Show help
|
|
77
|
+
-v, --version Show version
|
|
78
|
+
|
|
79
|
+
Examples:
|
|
80
|
+
agent-bot init
|
|
81
|
+
agent-bot server start
|
|
82
|
+
agent-bot server status
|
|
83
|
+
agent-bot task list
|
|
84
|
+
agent-bot server restart --reason "Update Agent Bot"
|
|
85
|
+
`;
|
|
86
|
+
}
|
|
87
|
+
function isChineseLocale(value) {
|
|
88
|
+
const locale = value.trim().split(":")[0]?.split(/[.@]/)[0]?.replaceAll("_", "-").toLowerCase();
|
|
89
|
+
return locale === "zh" || Boolean(locale?.startsWith("zh-"));
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=help.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,kBAAkB,CAChC,GAAG,GAAsB,OAAO,CAAC,GAAG,EACpC,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,MAAM;IAE7D,MAAM,gBAAgB,GAAG;QACvB,GAAG,CAAC,MAAM;QACV,GAAG,CAAC,WAAW;QACf,GAAG,CAAC,QAAQ;QACZ,GAAG,CAAC,IAAI;KACT,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACjC,OAAO,eAAe,CAAC,gBAAgB,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,OAAe,EAAE,QAAQ,GAAG,kBAAkB,EAAE;IAC5E,OAAO,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAe;IACxC,OAAO,aAAa,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkC5B,CAAC;AACF,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAe;IACxC,OAAO,aAAa,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkC5B,CAAC;AACF,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACpC,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAChG,OAAO,MAAM,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;AAC/D,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import fs from "node:fs";
|
|
2
|
+
import { fileURLToPath } from "node:url";
|
|
3
|
+
export function readPackageVersion(packageJsonUrl = new URL("../../package.json", import.meta.url)) {
|
|
4
|
+
const metadata = JSON.parse(fs.readFileSync(fileURLToPath(packageJsonUrl), "utf8"));
|
|
5
|
+
if (typeof metadata.version !== "string" || !metadata.version.trim()) {
|
|
6
|
+
throw new Error("package.json 中缺少有效的 version。");
|
|
7
|
+
}
|
|
8
|
+
return metadata.version;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=packageVersion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"packageVersion.js","sourceRoot":"","sources":["../../src/cli/packageVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,UAAU,kBAAkB,CAChC,cAAc,GAAG,IAAI,GAAG,CAAC,oBAAoB,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC;IAE/D,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CACzB,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,CAC9B,CAAC;IAC3B,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,QAAQ,CAAC,OAAO,CAAC;AAC1B,CAAC"}
|