ysagc-agent 0.8.5 → 0.9.0

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 CHANGED
@@ -1,266 +1,266 @@
1
- # ysagc-agent
2
-
3
- The **local execution agent** for ysagc. It runs on a user's own computer, opens a
4
- WebSocket to the platform backend, receives tool instructions, executes them
5
- **safely inside an authorization root**, and reports results back.
6
-
7
- `ysagc-agent` is deliberately **state-agnostic**: it never stores balances, never
8
- makes billing decisions, and never holds platform secrets. It is a dumb, safe,
9
- well-scoped executor — all policy lives on the platform.
10
-
11
- ## Highlights
12
-
13
- - **Zero-config startup** — a bare `ysagc-agent` (or `npx ysagc-agent`) starts
14
- immediately with the default platform, a generated local device identity, `cwd`
15
- as the authorization root, and connects — **no prompts, no wizard**.
16
- - **Auto-reconnect until connected** — if the first connection can't be
17
- established it prints a single notice and then **retries every `--retry-interval`
18
- (default 1000ms)** until it reaches the platform; it never exits and never
19
- cascades into a prompt.
20
- - **Opt-in `--configure` wizard** — run `ysagc-agent --configure` to
21
- interactively set the address / token / root.
22
- - **No baked-in secrets** — the default server is the customer platform; the
23
- device token is self-generated on a zero-config run, never logged, never
24
- committed anywhere, and never a real platform secret.
25
- - **Authorization root** — every file operation is forced inside one directory tree.
26
- - **Danger-command guard** — destructive shell commands are detected and blocked.
27
- - **Sensitive-path guard** — credential/system paths are blocked regardless of mode.
28
- - **Secret masking** — secrets are redacted from logs and tool results.
29
- - **Idempotency** — repeated `tool_call`s with the same key return the cached result
30
- and never double-execute or double-write. `needsApproval` results are **not**
31
- cached, so an approved re-send re-runs the job.
32
- - **Rich tool set** — `search` (grep), `glob`, `tree`, `str_replace_editor`,
33
- `mv`/`cp`, `delete_file`, `json` pretty-print, and segmented `read_file`
34
- (`offset`/`length`) alongside the core file + shell tools.
35
- - **Heartbeat & auto-reconnect** — exponential backoff with a cap.
36
- - **Cancel support** — in-flight commands can be aborted by the platform.
37
- - **Strict TypeScript** — compiled with `tsc` to CommonJS, zero `any` leaks.
38
- - **Cross-platform** — bash, PowerShell and cmd command detection.
39
-
40
- ## Requirements
41
-
42
- - Node.js **>= 18**
43
-
44
- ## Quick start
45
-
46
- ### One-command startup (zero config)
47
-
48
- ```bash
49
- npm install -g ysagc-agent
50
- ysagc-agent
51
- ```
52
-
53
- That's it. With no saved config the agent **silently builds defaults and
54
- connects immediately** — no wizard, no prompts:
55
-
56
- - **server** — defaults to `ws://interface.ysagi.cn/api/workbench/agent`, **but with
57
- local/online auto-detection**: when the default platform URL is in use, the agent
58
- first tries the **local dev backend** `ws://localhost:5000/api/workbench/agent`,
59
- and falls through to the default if it's unreachable. So a bare `ysagc-agent`
60
- works whether you're testing locally or connecting to the platform. If you pass an
61
- explicit `--server`/`WS_URL`, that one is used exclusively.
62
- - **deviceId** — generated as `agent-<random>-<n>`
63
- - **token** — a self-generated local identity (never a real platform secret)
64
- - **root** — the current working directory (`process.cwd()`)
65
-
66
- The resolved defaults are saved to `~/.ysagc-agent/config.json` (mode `0600`,
67
- directory created if missing) so every later run connects the same way. A bare run
68
- logs its config **without the token** (`describeConfig` omits it).
69
-
70
- Referenced by `WS_URL`, `YSAGC_TOKEN`, `DEVICE_ID`/`WORKSPACE_ROOT` environment
71
- variables and the `--server/--token/--device-id/--root` flags still win over the
72
- defaults, and a silent-save never overrides them.
73
-
74
- ### Configure the address / token / root (opt-in)
75
-
76
- The interactive wizard is **off by default**. Run it explicitly once to set the
77
- platform address, device token and workspace root, which are then persisted and
78
- used on every later run:
79
-
80
- ```bash
81
- ysagc-agent --configure
82
- ```
83
-
84
- It asks, in order:
85
-
86
- 1. **平台地址 / server URL** — the default is `ws://interface.ysagi.cn/api/workbench/agent`; press **Enter** to accept, or type another (`http`/`https` are accepted and converted to `ws`/`wss`).
87
- 2. **设备 Token** — paste the device token copied from the workbench's「如何连接」. Input is **masked** (not echoed). Leave it empty to generate a local device id and a short pairing hint instead.
88
- 3. **工作区目录 / workspace root** — defaults to the current directory; press **Enter** to accept or type an absolute path.
89
-
90
- Any value already supplied by flags/env is used as-is and its prompt is skipped.
91
-
92
- > **Non-interactive `--configure`:** `--configure` requires a real terminal. In a
93
- > piped/non-TTY run it prints `--configure 需要一个交互式终端来运行。` and exits `1`
94
- > instead of hanging.
95
-
96
- `npx ysagc-agent` is the same entry and needs no flags either.
97
-
98
- > **First-run connection failure:** if a zero-config run cannot connect or is
99
- > rejected, it prints one clear line —
100
- > `暂未连接平台(<err>),正在每 1s 自动重试,直到连上为止…(Ctrl+C 退出)`
101
- > — then **retries every `--retry-interval` (default 1000ms) until it connects**.
102
- > It does **not** prompt and does **not** exit.
103
-
104
- Once connected the agent sends a `hello` frame, waits for `welcome`, then answers
105
- `ping`/`tool_call`/`cancel` frames.
106
-
107
- ### Or run it from this checkout
108
-
109
- ```bash
110
- npm install
111
- npm run build # tsc -> dist/
112
- node dist/cli.js --selftest # run the smoke test
113
- node dist/cli.js # same zero-config auto-connect
114
- ```
115
-
116
- ## Configuration
117
-
118
- Settings are resolved in this precedence order:
119
-
120
- **CLI flags > environment variables > saved config (`~/.ysagc-agent/config.json`) > defaults.**
121
-
122
- The device token is **never logged** — `describeConfig` omits it and the logger
123
- masks secret-looking values before they reach stdout/stderr.
124
-
125
- | CLI flag | Environment | Default | Description |
126
- | --------------------- | ------------------ | ----------------- | ---------------------------------------------------- |
127
- | `--server <url>` | `WS_URL` | `ws://interface.ysagi.cn/api/workbench/agent` | Platform WebSocket URL (http/https auto-converted to ws/wss) |
128
- | `--token <token>` | `YSAGC_TOKEN` | _(saved config)_ | Device/agent auth token; **never** defaulted/baked-in |
129
- | `--device-id <id>` | `DEVICE_ID` | host+pid / generated | Stable device identifier |
130
- | `--root <dir>` | `WORKSPACE_ROOT` | cwd | Authorization root (all file ops stay inside it) |
131
- | `--mode <mode>` | `PERMISSION_MODE` | `smart` | Permission mode (see below) |
132
- | `--web` | `YSAGC_WEB` | off | Enable the local web_search (stub) tool |
133
- | `--timeout <ms>` | `YSAGC_TIMEOUT` | `120000` | Command timeout in milliseconds |
134
- | `--max-bytes <n>` | `YSAGC_MAX_BYTES` | `64000` | Per-stream output cap before truncation |
135
- | `--log-level <level>` | `YSAGC_LOG_LEVEL` | `info` | `silent\|error\|warn\|info\|debug` |
136
- | `--retry-interval <ms>` | `YSAGC_RETRY_MS` | `1000` | Connection retry interval (retries until connected) |
137
- | `--configure` | — | — | Run the interactive setup wizard and save the config (opt-in) |
138
- | `--selftest` | — | — | Run the local smoke test and exit |
139
- | `-V, --version` | — | — | Print version |
140
- | `-h, --help` | — | — | Print usage |
141
-
142
- ### Saved config file
143
-
144
- A zero-config run — or an explicit `ysagc-agent --configure` — persists the
145
- resolved settings to `~/.ysagc-agent/config.json` (mode `0600`, directory created
146
- if missing). Override the path with the `YSAGC_CONFIG` environment variable. A
147
- missing or corrupt file is treated as a first run: the agent silently starts with
148
- defaults again (it never prompts unless `--configure` is passed).
149
-
150
- ### Permission modes
151
-
152
- | Mode | Shell behaviour |
153
- | ---------- | ------------------------------------------------------------------------- |
154
- | `supervise`| Every `run_command`/`git` is **denied** (requires human approval) |
155
- | `smart` | Safe commands are allowed; dangerous ones are blocked (default) |
156
- | `auto` | All non-dangerous commands are allowed |
157
-
158
- Dangerous commands and sensitive paths are blocked **in every mode**.
159
-
160
- ## Tools
161
-
162
- | Tool | Args | Returns |
163
- | --------------------- | ------------------------------------ | --------------------------------------- |
164
- | `list_dir` | `path`, `depth` | entries (`name`, `type`, `size`, `mtime`) |
165
- | `fs_drives` | — | machine drive roots (Windows letters / `/`) |
166
- | `fs_browse` | `path` | **whole-machine read-only** directory browse (any dir, sensitive paths blocked) — used for choosing a workspace |
167
- | `fs_pick_folder` | — | opens the **OS-native "select folder" dialog** and returns the chosen absolute path |
168
- | `read_file` | `path`, `offset?`, `length?`/`maxBytes?` | text or hex, truncated, size/offset info |
169
- | `write_file` | `path`, `content`, `mode?` | `path`, `bytesWritten` |
170
- | `edit_file` | `path`, `oldText`, `newText` | `path`, `replacements` |
171
- | `str_replace_editor` | `command`, `path`, `…` | editor ops: `create`, `view`, `str_replace`, `insert`, `delete` |
172
- | `search` | `pattern`, `path?`, `recursive?`, `caseSensitive?`, `maxResults?` | file/line matches (bounded) |
173
- | `glob` | `pattern`, `path?`, `maxResults?` | matching paths (bounded) |
174
- | `tree` | `path?`, `depth?`, `maxEntries?` | nested + rendered tree (bounded) |
175
- | `run_command` | `cmd`, `timeout?`, `cwd?` | `exitCode`, `stdout`, `stderr`, flags |
176
- | `web_search` | `query` | labelled **stub** result (real search is platform-side) |
177
- | `git` | `args` (array) or `command` (string) | git output, `exitCode`, flags |
178
- | `generate` | `template`, `name` | file list it created |
179
- | `mv` | `source`, `destination`, `overwrite?` | moved path pair (rename if same dir) |
180
- | `cp` | `source`, `destination`, `overwrite?` | copied path pair |
181
- | `delete_file` | `path`, `recursive?` | deleted path (requires approval) |
182
- | `json` | `value` or `path`, `indent?`, `sortKeys?` | pretty-printed JSON |
183
- | `skill` | `name?` | loaded skill / available list |
184
-
185
- Every tool canonicalizes its path, asserts it is inside the authorization root,
186
- rejects outside/sensitive paths, and never leaks platform internals or keys.
187
- `mv`/`cp`/`delete_file` and `str_replace_editor` is a single operator;
188
- `mv` with no `overwrite` refuses to clobber an existing destination (and asks
189
- for approval when overwriting), and `delete_file` always requires approval in
190
- `workspace-write` mode.
191
-
192
- ## Security model
193
-
194
- 1. **Authorization root** — `canonicalize()` resolves `..`, symlinks, the
195
- `\\?\` prefix, trailing dots/spaces and Windows reserved names, then
196
- `isWithinRoot()` strictly checks the result is under the root. Writes equal
197
- to the root are rejected; `..` and symlink escapes are rejected too.
198
- 2. **Danger-command detection** — `isDangerCommand()` flags `rm -rf`, `sudo`,
199
- `format <drive>`, `del /f`, `rd /s /q`, `shutdown`, `reboot`,
200
- `git reset --hard`, `git clean -fdx`, `find ... -delete`,
201
- `Remove-Item -Recurse -Force`, `diskpart`, `reg delete`/`reg add`,
202
- `powershell -enc`, `iex`/`Invoke-Expression`, `certutil -decode`,
203
- `regsvr32`/`rundll32`/`mshta`/`wmic`/`bitsadmin`, `curl|wget -> sh`,
204
- `sh/bash -c`, `sc create`, `net user`, `schtasks /create`,
205
- `icacls`/`cacls`, `takeown`, `vssadmin`, `bcdedit`, `cipher /w`,
206
- `taskkill /f`, `chmod -R 777 /`, `mkfs`, `dd of=/dev/...`,
207
- redirects to block devices, fork bombs and more. Cross-platform
208
- (bash / PowerShell / cmd).
209
- 3. **Sensitive-path detection** — `isSensitivePath()` blocks system and
210
- credential paths (`/etc/passwd`, `C:\Windows\System32`, `~/.ssh`, `.env`
211
- with keys, `id_rsa`, `.npmrc` with `_authToken`, and so on) regardless of mode.
212
- 4. **Secret masking** — `maskSecrets()` redacts provider keys, bearer tokens,
213
- JWTs, private keys and `key=value` secrets from logs and tool output.
214
- 5. **Idempotency** — results are cached by a hash of `(tool, args, idempotencyKey)`;
215
- replayed jobs return the cached result without re-executing. Request-for-approval
216
- (`needsApproval`) results are deliberately **not** cached so the platform can
217
- prompt a human and then re-send the same key to actually run it.
218
- 6. **Environment sanitization** — child processes never inherit the agent's own
219
- token or credential variables.
220
-
221
- ## Self-test
222
-
223
- ```bash
224
- node dist/cli.js --selftest
225
- ```
226
-
227
- Runs 53 checks over path safety, danger-command detection, sensitive-path
228
- detection, secret masking, the tool registry, command timeout/process-tree kill,
229
- environment sanitization, config resolution + save/load (never logging the token),
230
- and idempotency over a real WebSocket connection. It prints `PASS`/`FAIL` lines
231
- and exits `0`/`1`.
232
-
233
- ## Protocol
234
-
235
- JSON text frames over a WebSocket.
236
-
237
- **Client → server**
238
-
239
- ```jsonc
240
- { "type": "hello", "token": "...", "deviceId": "...", "version": "0.7.1", "platform": "node" }
241
- { "type": "pong", "t": 42 } // reply to a server ping
242
- { "type": "tool_result", "jobId": "j1", "ok": true, "result": { }, "durationMs": 12 }
243
- { "type": "status", "state": "online" | "busy" | "error", "sessionId": "..." }
244
- ```
245
-
246
- **Server → client**
247
-
248
- ```jsonc
249
- { "type": "welcome", "sessionId": "..." }
250
- { "type": "ping", "t": 42 }
251
- { "type": "tool_call", "jobId": "j1", "idempotencyKey": "k1", "tool": "write_file", "args": { } }
252
- { "type": "cancel", "jobId": "j1" }
253
- ```
254
-
255
- ## Development
256
-
257
- ```bash
258
- npm install
259
- npm run build # tsc -> dist/
260
- npm run test # node dist/cli.js --selftest
261
- npm start # node dist/cli.js
262
- ```
263
-
264
- ## License
265
-
266
- MIT
1
+ # ysagc-agent
2
+
3
+ The **local execution agent** for ysagc. It runs on a user's own computer, opens a
4
+ WebSocket to the platform backend, receives tool instructions, executes them
5
+ **safely inside an authorization root**, and reports results back.
6
+
7
+ `ysagc-agent` is deliberately **state-agnostic**: it never stores balances, never
8
+ makes billing decisions, and never holds platform secrets. It is a dumb, safe,
9
+ well-scoped executor — all policy lives on the platform.
10
+
11
+ ## Highlights
12
+
13
+ - **Zero-config startup** — a bare `ysagc-agent` (or `npx ysagc-agent`) starts
14
+ immediately with the default platform, a generated local device identity, `cwd`
15
+ as the authorization root, and connects — **no prompts, no wizard**.
16
+ - **Auto-reconnect until connected** — if the first connection can't be
17
+ established it prints a single notice and then **retries every `--retry-interval`
18
+ (default 1000ms)** until it reaches the platform; it never exits and never
19
+ cascades into a prompt.
20
+ - **Opt-in `--configure` wizard** — run `ysagc-agent --configure` to
21
+ interactively set the address / token / root.
22
+ - **No baked-in secrets** — the default server is the customer platform; the
23
+ device token is self-generated on a zero-config run, never logged, never
24
+ committed anywhere, and never a real platform secret.
25
+ - **Authorization root** — every file operation is forced inside one directory tree.
26
+ - **Danger-command guard** — destructive shell commands are detected and blocked.
27
+ - **Sensitive-path guard** — credential/system paths are blocked regardless of mode.
28
+ - **Secret masking** — secrets are redacted from logs and tool results.
29
+ - **Idempotency** — repeated `tool_call`s with the same key return the cached result
30
+ and never double-execute or double-write. `needsApproval` results are **not**
31
+ cached, so an approved re-send re-runs the job.
32
+ - **Rich tool set** — `search` (grep), `glob`, `tree`, `str_replace_editor`,
33
+ `mv`/`cp`, `delete_file`, `json` pretty-print, and segmented `read_file`
34
+ (`offset`/`length`) alongside the core file + shell tools.
35
+ - **Heartbeat & auto-reconnect** — fixed-interval reconnect until connected.
36
+ - **Cancel support** — in-flight commands can be aborted by the platform.
37
+ - **Strict TypeScript** — compiled with `tsc` to CommonJS, zero `any` leaks.
38
+ - **Cross-platform** — bash, PowerShell and cmd command detection.
39
+
40
+ ## Requirements
41
+
42
+ - Node.js **>= 18**
43
+
44
+ ## Quick start
45
+
46
+ ### One-command startup (zero config)
47
+
48
+ ```bash
49
+ npm install -g ysagc-agent
50
+ ysagc-agent
51
+ ```
52
+
53
+ That's it. With no saved config the agent **silently builds defaults and
54
+ connects immediately** — no wizard, no prompts:
55
+
56
+ - **server** — defaults to `ws://interface.ysagi.cn/api/workbench/agent`, **but with
57
+ local/online auto-detection**: when the default platform URL is in use, the agent
58
+ first tries the **local dev backend** `ws://localhost:5000/api/workbench/agent`,
59
+ and falls through to the default if it's unreachable. So a bare `ysagc-agent`
60
+ works whether you're testing locally or connecting to the platform. If you pass an
61
+ explicit `--server`/`WS_URL`, that one is used exclusively.
62
+ - **deviceId** — generated as `agent-<random>-<n>`
63
+ - **token** — a self-generated local identity (never a real platform secret)
64
+ - **root** — the current working directory (`process.cwd()`)
65
+
66
+ The resolved defaults are saved to `~/.ysagc-agent/config.json` (mode `0600`,
67
+ directory created if missing) so every later run connects the same way. A bare run
68
+ logs its config **without the token** (`describeConfig` omits it).
69
+
70
+ Referenced by `WS_URL`, `YSAGC_TOKEN`, `DEVICE_ID`/`WORKSPACE_ROOT` environment
71
+ variables and the `--server/--token/--device-id/--root` flags still win over the
72
+ defaults, and a silent-save never overrides them.
73
+
74
+ ### Configure the address / token / root (opt-in)
75
+
76
+ The interactive wizard is **off by default**. Run it explicitly once to set the
77
+ platform address, device token and workspace root, which are then persisted and
78
+ used on every later run:
79
+
80
+ ```bash
81
+ ysagc-agent --configure
82
+ ```
83
+
84
+ It asks, in order:
85
+
86
+ 1. **平台地址 / server URL** — the default is `ws://interface.ysagi.cn/api/workbench/agent`; press **Enter** to accept, or type another (`http`/`https` are accepted and converted to `ws`/`wss`).
87
+ 2. **设备 Token** — paste the device token copied from the workbench's「如何连接」. Input is **masked** (not echoed). Leave it empty to generate a local device id and a short pairing hint instead.
88
+ 3. **工作区目录 / workspace root** — defaults to the current directory; press **Enter** to accept or type an absolute path.
89
+
90
+ Any value already supplied by flags/env is used as-is and its prompt is skipped.
91
+
92
+ > **Non-interactive `--configure`:** `--configure` requires a real terminal. In a
93
+ > piped/non-TTY run it prints `--configure 需要一个交互式终端来运行。` and exits `1`
94
+ > instead of hanging.
95
+
96
+ `npx ysagc-agent` is the same entry and needs no flags either.
97
+
98
+ > **First-run connection failure:** if a zero-config run cannot connect or is
99
+ > rejected, it prints one clear line —
100
+ > `暂未连接平台(<err>),正在每 1s 自动重试,直到连上为止…(Ctrl+C 退出)`
101
+ > — then **retries every `--retry-interval` (default 1000ms) until it connects**.
102
+ > It does **not** prompt and does **not** exit.
103
+
104
+ Once connected the agent sends a `hello` frame, waits for `welcome`, then answers
105
+ `ping`/`tool_call`/`cancel` frames.
106
+
107
+ ### Or run it from this checkout
108
+
109
+ ```bash
110
+ npm install
111
+ npm run build # tsc -> dist/
112
+ node dist/cli.js --selftest # run the smoke test
113
+ node dist/cli.js # same zero-config auto-connect
114
+ ```
115
+
116
+ ## Configuration
117
+
118
+ Settings are resolved in this precedence order:
119
+
120
+ **CLI flags > environment variables > saved config (`~/.ysagc-agent/config.json`) > defaults.**
121
+
122
+ The device token is **never logged** — `describeConfig` omits it and the logger
123
+ masks secret-looking values before they reach stdout/stderr.
124
+
125
+ | CLI flag | Environment | Default | Description |
126
+ | --------------------- | ------------------ | ----------------- | ---------------------------------------------------- |
127
+ | `--server <url>` | `WS_URL` | `ws://interface.ysagi.cn/api/workbench/agent` | Platform WebSocket URL (http/https auto-converted to ws/wss) |
128
+ | `--token <token>` | `YSAGC_TOKEN` | _(saved config)_ | Device/agent auth token; **never** defaulted/baked-in |
129
+ | `--device-id <id>` | `DEVICE_ID` | host+pid / generated | Stable device identifier |
130
+ | `--root <dir>` | `WORKSPACE_ROOT` | cwd | Authorization root (all file ops stay inside it) |
131
+ | `--mode <mode>` | `PERMISSION_MODE` | `smart` | Permission mode (see below) |
132
+ | `--web` | `YSAGC_WEB` | off | Enable the local web_search (stub) tool |
133
+ | `--timeout <ms>` | `YSAGC_TIMEOUT` | `120000` | Command timeout in milliseconds |
134
+ | `--max-bytes <n>` | `YSAGC_MAX_BYTES` | `64000` | Per-stream output cap before truncation |
135
+ | `--log-level <level>` | `YSAGC_LOG_LEVEL` | `info` | `silent\|error\|warn\|info\|debug` |
136
+ | `--retry-interval <ms>` | `YSAGC_RETRY_MS` | `1000` | Connection retry interval (retries until connected) |
137
+ | `--configure` | — | — | Run the interactive setup wizard and save the config (opt-in) |
138
+ | `--selftest` | — | — | Run the local smoke test and exit |
139
+ | `-V, --version` | — | — | Print version |
140
+ | `-h, --help` | — | — | Print usage |
141
+
142
+ ### Saved config file
143
+
144
+ A zero-config run — or an explicit `ysagc-agent --configure` — persists the
145
+ resolved settings to `~/.ysagc-agent/config.json` (mode `0600`, directory created
146
+ if missing). Override the path with the `YSAGC_CONFIG` environment variable. A
147
+ missing or corrupt file is treated as a first run: the agent silently starts with
148
+ defaults again (it never prompts unless `--configure` is passed).
149
+
150
+ ### Permission modes
151
+
152
+ | Mode | Shell behaviour |
153
+ | ---------- | ------------------------------------------------------------------------- |
154
+ | `supervise`| Every `run_command`/`git` is **denied** (requires human approval) |
155
+ | `smart` | Safe commands are allowed; dangerous ones are blocked (default) |
156
+ | `auto` | All non-dangerous commands are allowed |
157
+
158
+ Dangerous commands and sensitive paths are blocked **in every mode**.
159
+
160
+ ## Tools
161
+
162
+ | Tool | Args | Returns |
163
+ | --------------------- | ------------------------------------ | --------------------------------------- |
164
+ | `list_dir` | `path`, `depth` | entries (`name`, `type`, `size`, `mtime`) |
165
+ | `fs_drives` | — | machine drive roots (Windows letters / `/`) |
166
+ | `fs_browse` | `path` | **whole-machine read-only** directory browse (any dir, sensitive paths blocked) — used for choosing a workspace |
167
+ | `fs_pick_folder` | — | opens the **OS-native "select folder" dialog** and returns the chosen absolute path |
168
+ | `read_file` | `path`, `offset?`, `length?`/`maxBytes?` | text or hex, truncated, size/offset info |
169
+ | `write_file` | `path`, `content`, `mode?` | `path`, `bytesWritten` |
170
+ | `edit_file` | `path`, `oldText`, `newText` | `path`, `replacements` |
171
+ | `str_replace_editor` | `command`, `path`, `…` | editor ops: `create`, `view`, `str_replace`, `insert`, `delete` |
172
+ | `search` | `pattern`, `path?`, `recursive?`, `caseSensitive?`, `maxResults?` | file/line matches (bounded) |
173
+ | `glob` | `pattern`, `path?`, `maxResults?` | matching paths (bounded) |
174
+ | `tree` | `path?`, `depth?`, `maxEntries?` | nested + rendered tree (bounded) |
175
+ | `run_command` | `cmd`, `timeout?`, `cwd?` | `exitCode`, `stdout`, `stderr`, flags |
176
+ | `web_search` | `query` | labelled **stub** result (real search is platform-side) |
177
+ | `git` | `args` (array) or `command` (string) | git output, `exitCode`, flags |
178
+ | `generate` | `template`, `name` | file list it created |
179
+ | `mv` | `source`, `destination`, `overwrite?` | moved path pair (rename if same dir) |
180
+ | `cp` | `source`, `destination`, `overwrite?` | copied path pair |
181
+ | `delete_file` | `path`, `recursive?` | deleted path (requires approval) |
182
+ | `json` | `value` or `path`, `indent?`, `sortKeys?` | pretty-printed JSON |
183
+ | `skill` | `name?` | loaded skill / available list |
184
+
185
+ Every tool canonicalizes its path, asserts it is inside the authorization root,
186
+ rejects outside/sensitive paths, and never leaks platform internals or keys.
187
+ `mv`/`cp`/`delete_file` and `str_replace_editor` is a single operator;
188
+ `mv` with no `overwrite` refuses to clobber an existing destination (and asks
189
+ for approval when overwriting), and `delete_file` always requires approval in
190
+ `workspace-write` mode.
191
+
192
+ ## Security model
193
+
194
+ 1. **Authorization root** — `canonicalize()` resolves `..`, symlinks, the
195
+ `\\?\` prefix, trailing dots/spaces and Windows reserved names, then
196
+ `isWithinRoot()` strictly checks the result is under the root. Writes equal
197
+ to the root are rejected; `..` and symlink escapes are rejected too.
198
+ 2. **Danger-command detection** — `isDangerCommand()` flags `rm -rf`, `sudo`,
199
+ `format <drive>`, `del /f`, `rd /s /q`, `shutdown`, `reboot`,
200
+ `git reset --hard`, `git clean -fdx`, `find ... -delete`,
201
+ `Remove-Item -Recurse -Force`, `diskpart`, `reg delete`/`reg add`,
202
+ `powershell -enc`, `iex`/`Invoke-Expression`, `certutil -decode`,
203
+ `regsvr32`/`rundll32`/`mshta`/`wmic`/`bitsadmin`, `curl|wget -> sh`,
204
+ `sh/bash -c`, `sc create`, `net user`, `schtasks /create`,
205
+ `icacls`/`cacls`, `takeown`, `vssadmin`, `bcdedit`, `cipher /w`,
206
+ `taskkill /f`, `chmod -R 777 /`, `mkfs`, `dd of=/dev/...`,
207
+ redirects to block devices, fork bombs and more. Cross-platform
208
+ (bash / PowerShell / cmd).
209
+ 3. **Sensitive-path detection** — `isSensitivePath()` blocks system and
210
+ credential paths (`/etc/passwd`, `C:\Windows\System32`, `~/.ssh`, `.env`
211
+ with keys, `id_rsa`, `.npmrc` with `_authToken`, and so on) regardless of mode.
212
+ 4. **Secret masking** — `maskSecrets()` redacts provider keys, bearer tokens,
213
+ JWTs, private keys and `key=value` secrets from logs and tool output.
214
+ 5. **Idempotency** — results are cached by a hash of `(tool, args, idempotencyKey)`;
215
+ replayed jobs return the cached result without re-executing. Request-for-approval
216
+ (`needsApproval`) results are deliberately **not** cached so the platform can
217
+ prompt a human and then re-send the same key to actually run it.
218
+ 6. **Environment sanitization** — child processes never inherit the agent's own
219
+ token or credential variables.
220
+
221
+ ## Self-test
222
+
223
+ ```bash
224
+ node dist/cli.js --selftest
225
+ ```
226
+
227
+ Runs 53 checks over path safety, danger-command detection, sensitive-path
228
+ detection, secret masking, the tool registry, command timeout/process-tree kill,
229
+ environment sanitization, config resolution + save/load (never logging the token),
230
+ and idempotency over a real WebSocket connection. It prints `PASS`/`FAIL` lines
231
+ and exits `0`/`1`.
232
+
233
+ ## Protocol
234
+
235
+ JSON text frames over a WebSocket.
236
+
237
+ **Client → server**
238
+
239
+ ```jsonc
240
+ { "type": "hello", "token": "...", "deviceId": "...", "version": "0.9.0", "platform": "node" }
241
+ { "type": "pong", "t": 42 } // reply to a server ping
242
+ { "type": "tool_result", "jobId": "j1", "ok": true, "result": { }, "durationMs": 12 }
243
+ { "type": "status", "state": "online" | "busy" | "error", "sessionId": "..." }
244
+ ```
245
+
246
+ **Server → client**
247
+
248
+ ```jsonc
249
+ { "type": "welcome", "sessionId": "..." }
250
+ { "type": "ping", "t": 42 }
251
+ { "type": "tool_call", "jobId": "j1", "idempotencyKey": "k1", "tool": "write_file", "args": { } }
252
+ { "type": "cancel", "jobId": "j1" }
253
+ ```
254
+
255
+ ## Development
256
+
257
+ ```bash
258
+ npm install
259
+ npm run build # tsc -> dist/
260
+ npm run test # node dist/cli.js --selftest
261
+ npm start # node dist/cli.js
262
+ ```
263
+
264
+ ## License
265
+
266
+ MIT
package/dist/agent.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { type ClientState } from './protocol';
2
2
  import { type AgentConfig } from './config';
3
3
  /** Kept in sync with package.json. */
4
- export declare const AGENT_VERSION = "0.8.5";
4
+ export declare const AGENT_VERSION = "0.9.0";
5
5
  export interface AgentHandle {
6
6
  stop(): void;
7
7
  }
package/dist/agent.js CHANGED
@@ -12,7 +12,7 @@ const tools_1 = require("./tools");
12
12
  const config_1 = require("./config");
13
13
  const tokens_1 = require("./tokens");
14
14
  /** Kept in sync with package.json. */
15
- exports.AGENT_VERSION = '0.8.5';
15
+ exports.AGENT_VERSION = '0.9.0';
16
16
  const MAX_IDEMPOTENCY_ENTRIES = 512;
17
17
  const HEARTBEAT_MS = 30000;
18
18
  const READY_OPEN = 1; // ws.WebSocket.OPEN
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AA2BA,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA8VD;;;;GAIG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CA8YvD"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AA2BA,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA2XD;;;;GAIG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CA8YvD"}
package/dist/cli.js CHANGED
@@ -101,6 +101,23 @@ function shutdown(handle, signal) {
101
101
  handle?.stop();
102
102
  process.exit(0);
103
103
  }
104
+ /** 启动横幅:让用户一眼知道“已经连上平台、要去网页工作台绑定/指挥”。 */
105
+ function printStartBanner(config) {
106
+ const website = process.env.YSAGC_WEBSITE || 'https://chat.ysagc.top';
107
+ // eslint-disable-next-line no-console
108
+ console.log([
109
+ '',
110
+ ` ╭─ ysagc-agent v${agent_1.AGENT_VERSION} ─────────────────────────────`,
111
+ ` │ 平台地址 : ${config.server}`,
112
+ ` │ 设备标识 : ${config.deviceId}`,
113
+ ` │ 授权根目录: ${config.root}`,
114
+ ' ╰──────────────────────────────────────────────────────',
115
+ '',
116
+ ` 打开网页 ${website} →「工作台 → 连接设备」,点「一键连接」即可自动绑定本机;`,
117
+ ' 或按网页提示复制命令/配对码到本机完成绑定。',
118
+ '',
119
+ ].join('\n'));
120
+ }
104
121
  async function main() {
105
122
  if (opts.selftest) {
106
123
  const results = await runSelfTest();
@@ -155,6 +172,7 @@ async function main() {
155
172
  const { config, zeroConfig } = await resolveConfigForRun(overrides, saved);
156
173
  const log = new logger_1.Logger({ level: config.logLevel, name: 'cli' });
157
174
  log.info('agent config', (0, config_1.describeConfig)(config));
175
+ printStartBanner(config);
158
176
  const events = zeroConfig
159
177
  ? {
160
178
  onConnectFailed: (err) => {
@@ -166,7 +184,15 @@ async function main() {
166
184
  },
167
185
  }
168
186
  : undefined;
169
- const handle = (0, agent_1.startAgent)(config, events);
187
+ const handle = (0, agent_1.startAgent)(config, {
188
+ ...events,
189
+ onState: (state) => {
190
+ if (state === 'online') {
191
+ // eslint-disable-next-line no-console
192
+ console.log('✅ 已连接平台,正在等待你的任务(网页端打开「工作台」即可指挥)。');
193
+ }
194
+ },
195
+ });
170
196
  process.on('SIGINT', () => shutdown(handle, 'SIGINT'));
171
197
  process.on('SIGTERM', () => shutdown(handle, 'SIGTERM'));
172
198
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,52 +1,52 @@
1
- {
2
- "name": "ysagc-agent",
3
- "version": "0.8.5",
4
- "description": "Local execution agent for ysagc: a state-agnostic, safety-bounded worker that connects to a platform backend over WebSocket, executes tool instructions inside an authorization root, and reports results back.",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
7
- "bin": {
8
- "ysagc-agent": "dist/cli.js"
9
- },
10
- "files": [
11
- "dist",
12
- "README.md"
13
- ],
14
- "engines": {
15
- "node": ">=18"
16
- },
17
- "license": "MIT",
18
- "author": "ysagc <ysagc@example.com>",
19
- "homepage": "https://github.com/ysagc/ysagc-agent#readme",
20
- "repository": {
21
- "type": "git",
22
- "url": "git+https://github.com/ysagc/ysagc-agent.git"
23
- },
24
- "keywords": [
25
- "ai",
26
- "agent",
27
- "local",
28
- "automation",
29
- "file",
30
- "shell",
31
- "sandbox",
32
- "workspace",
33
- "tool",
34
- "websocket"
35
- ],
36
- "scripts": {
37
- "build": "tsc",
38
- "start": "node dist/cli.js",
39
- "test": "node dist/cli.js --selftest",
40
- "prepack": "npm run build"
41
- },
42
- "dependencies": {
43
- "commander": "^11.1.0",
44
- "ws": "^8.18.0"
45
- },
46
- "devDependencies": {
47
- "@types/node": "^20.14.0",
48
- "@types/ws": "^8.5.12",
49
- "typescript": "^5.5.0",
50
- "ws": "^8.18.0"
51
- }
52
- }
1
+ {
2
+ "name": "ysagc-agent",
3
+ "version": "0.9.0",
4
+ "description": "Local execution agent for ysagc: a state-agnostic, safety-bounded worker that connects to a platform backend over WebSocket, executes tool instructions inside an authorization root, and reports results back.",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "bin": {
8
+ "ysagc-agent": "dist/cli.js"
9
+ },
10
+ "files": [
11
+ "dist",
12
+ "README.md"
13
+ ],
14
+ "engines": {
15
+ "node": ">=18"
16
+ },
17
+ "license": "MIT",
18
+ "author": "ysagc <ysagc@example.com>",
19
+ "homepage": "https://github.com/ysagc/ysagc-agent#readme",
20
+ "repository": {
21
+ "type": "git",
22
+ "url": "git+https://github.com/ysagc/ysagc-agent.git"
23
+ },
24
+ "keywords": [
25
+ "ai",
26
+ "agent",
27
+ "local",
28
+ "automation",
29
+ "file",
30
+ "shell",
31
+ "sandbox",
32
+ "workspace",
33
+ "tool",
34
+ "websocket"
35
+ ],
36
+ "scripts": {
37
+ "build": "tsc",
38
+ "start": "node dist/cli.js",
39
+ "test": "node dist/cli.js --selftest",
40
+ "prepack": "npm run build"
41
+ },
42
+ "dependencies": {
43
+ "commander": "^11.1.0",
44
+ "ws": "^8.18.0"
45
+ },
46
+ "devDependencies": {
47
+ "@types/node": "^20.14.0",
48
+ "@types/ws": "^8.5.12",
49
+ "typescript": "^5.5.0",
50
+ "ws": "^8.18.0"
51
+ }
52
+ }