autowonder 0.2.81 → 0.2.82

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
@@ -6,13 +6,13 @@ AutoWonder 本地 agent runtime。安装后启动 daemon,持续轮询本地 as
6
6
 
7
7
  ```bash
8
8
  # Qoder CLI
9
- npx -y autowonder@0.2.81 connect --ws-url <wss-endpoint> --token <executor-token> --executor-id <executor-id> --provider qoder --model Qwen3.7-Max --reasoning-effort medium --context-window 131072
9
+ npx -y autowonder@0.2.82 connect --ws-url <wss-endpoint> --token <executor-token> --executor-id <executor-id> --provider qoder --model Qwen3.7-Max --reasoning-effort medium --context-window 131072
10
10
 
11
11
  # Claude Code
12
- npx -y autowonder@0.2.81 connect --ws-url <wss-endpoint> --token <executor-token> --executor-id <executor-id> --provider claude
12
+ npx -y autowonder@0.2.82 connect --ws-url <wss-endpoint> --token <executor-token> --executor-id <executor-id> --provider claude
13
13
 
14
14
  # Codex CLI
15
- npx -y autowonder@0.2.81 connect --ws-url <wss-endpoint> --token <executor-token> --executor-id <executor-id> --provider codex --model gpt-5.5 --reasoning-effort medium
15
+ npx -y autowonder@0.2.82 connect --ws-url <wss-endpoint> --token <executor-token> --executor-id <executor-id> --provider codex --model gpt-5.5 --reasoning-effort medium
16
16
  ```
17
17
 
18
18
  `connect` 会安装当前 npm 包内置的 daemon,并使用页面生成的 WebSocket endpoint、Token 和执行器 ID 建立连接。目标机器必须提前安装并登录对应的 Qoder CLI、Claude Code 或 Codex CLI;runtime 会继承当前用户的 HOME、环境变量和 CLI 登录状态。
@@ -55,14 +55,14 @@ mv "$queue/.assignment.tmp" "$queue/assignment.json"
55
55
  也可以直接提交到本地 API:
56
56
 
57
57
  ```bash
58
- npx -y autowonder@0.2.81 dispatch ./assignment.json
58
+ npx -y autowonder@0.2.82 dispatch ./assignment.json
59
59
  ```
60
60
 
61
61
  ## 管理 daemon
62
62
 
63
63
  ```bash
64
- npx -y autowonder@0.2.81 status
65
- npx -y autowonder@0.2.81 stop
64
+ npx -y autowonder@0.2.82 status
65
+ npx -y autowonder@0.2.82 stop
66
66
  ```
67
67
 
68
68
  默认 API 是 `http://127.0.0.1:34989`,日志位于 `~/.autowonder/daemon.log`。npm 包不包含任何 agent、MCP 或服务端凭证。
package/bin/cli.js CHANGED
@@ -282,7 +282,7 @@ function buildFromSource() {
282
282
  // ─── Commands ────────────────────────────────────────────────────────
283
283
 
284
284
  async function cmdConnect(args) {
285
- const flags = parseFlags(args, ["ws-url", "token", "executor-id", "provider", "name", "max-tasks", "model", "reasoning-effort", "context-window", "memory-mode"]);
285
+ const flags = parseFlags(args, ["ws-url", "token", "executor-id", "provider", "name", "max-tasks", "model", "reasoning-effort", "context-window", "memory-mode", "settings"]);
286
286
 
287
287
  if (!flags["ws-url"] || !flags.token || !flags["executor-id"]) {
288
288
  error("Usage: autowonder connect --ws-url <url> --token <token> --executor-id <id> [--provider qoder]");
@@ -313,6 +313,22 @@ async function cmdConnect(args) {
313
313
  error("--context-window must be a positive integer");
314
314
  process.exit(1);
315
315
  }
316
+ let claudeSettingsPath = "";
317
+ if (flags.settings) {
318
+ if (provider !== "claude") {
319
+ error("--settings is supported only for claude");
320
+ process.exit(1);
321
+ }
322
+ claudeSettingsPath = resolveUserPath(flags.settings);
323
+ try {
324
+ const stat = fs.statSync(claudeSettingsPath);
325
+ if (!stat.isFile()) throw new Error("not a regular file");
326
+ fs.accessSync(claudeSettingsPath, fs.constants.R_OK);
327
+ } catch {
328
+ error(`Claude settings file does not exist or is not readable: ${claudeSettingsPath}`);
329
+ process.exit(1);
330
+ }
331
+ }
316
332
  const memoryMode = flags["memory-mode"] || "platform";
317
333
  if (!["platform", "provider-local", "none"].includes(memoryMode)) {
318
334
  error("--memory-mode must be one of: platform, provider-local, none");
@@ -329,6 +345,7 @@ async function cmdConnect(args) {
329
345
  name: flags.name || `daemon_${provider}_${executorId}`,
330
346
  maxTasks: parseInt(flags["max-tasks"] || "10", 10),
331
347
  memoryMode,
348
+ claudeSettingsPath,
332
349
  };
333
350
  saveConfig(config);
334
351
 
@@ -355,6 +372,7 @@ async function cmdConnect(args) {
355
372
  if (flags.model) env.AUTOWONDER_MODEL = flags.model;
356
373
  if (flags["reasoning-effort"]) env.AUTOWONDER_REASONING_EFFORT = flags["reasoning-effort"];
357
374
  if (flags["context-window"]) env.AUTOWONDER_CONTEXT_WINDOW = flags["context-window"];
375
+ if (config.claudeSettingsPath) env.AUTOWONDER_CLAUDE_SETTINGS = config.claudeSettingsPath;
358
376
 
359
377
  const child = spawn(DAEMON_BIN, [], { env, stdio: "inherit" });
360
378
  child.on("exit", (code) => process.exit(code || 0));
@@ -362,6 +380,14 @@ async function cmdConnect(args) {
362
380
  process.on("SIGTERM", () => { child.kill("SIGTERM"); });
363
381
  }
364
382
 
383
+ function resolveUserPath(value) {
384
+ if (value === "~") return os.homedir();
385
+ if (value.startsWith("~/") || value.startsWith("~\\")) {
386
+ return path.resolve(os.homedir(), value.slice(2));
387
+ }
388
+ return path.resolve(value);
389
+ }
390
+
365
391
  async function cmdStart(args) {
366
392
  const flags = parseFlags(args, ["provider", "max-tasks", "addr"]);
367
393
 
@@ -552,6 +578,7 @@ function cmdHelp() {
552
578
  --model <model> Default model for Codex or Qoder
553
579
  --reasoning-effort <level> Default reasoning effort for Codex or Qoder
554
580
  --context-window <n> Qoder context window (positive integer)
581
+ --settings <file> Claude settings JSON file
555
582
  --memory-mode <mode> Memory: platform, provider-local, or none (default: platform)
556
583
  --name <name> Runtime name (default: provider + executor ID)
557
584
  -h, --help Show this help
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "autowonder",
3
- "version": "0.2.81",
3
+ "version": "0.2.82",
4
4
  "description": "AutoWonder local runtime — execute AI agent dispatch packages on your machine",
5
5
  "bin": {
6
6
  "autowonder": "bin/cli.js"