@clawos-dev/clawd 0.2.13 → 0.2.14-beta.18.229e108

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.
Files changed (2) hide show
  1. package/dist/cli.cjs +11 -8
  2. package/package.json +1 -1
package/dist/cli.cjs CHANGED
@@ -12445,7 +12445,11 @@ var ParsedEventSchema = external_exports.discriminatedUnion("kind", [
12445
12445
  kind: external_exports.literal("permission_request"),
12446
12446
  requestId: external_exports.string(),
12447
12447
  tool: external_exports.string(),
12448
- input: external_exports.unknown()
12448
+ input: external_exports.unknown(),
12449
+ // CC `control_request.request.tool_use_id` 对应的 tool_use id;UI 用它把队列项与
12450
+ // 后续 tool_result.toolUseId 关联做跨客户端 dequeue(plan permission-multi-pending-queue.md
12451
+ // 选项 ii)。老 daemon / legacy CC 不发该字段时保持向后兼容(optional)。
12452
+ toolUseId: external_exports.string().optional()
12449
12453
  }),
12450
12454
  external_exports.object({
12451
12455
  ...ParsedEventBase,
@@ -12967,8 +12971,8 @@ function applyParsedEvent(state, event, deps) {
12967
12971
  requestId,
12968
12972
  tool,
12969
12973
  input
12970
- },
12971
- target: "first-subscriber"
12974
+ }
12975
+ // target 省略 = 'broadcast':所有订阅 client 都能看到,与 session:event 主路径同语义
12972
12976
  });
12973
12977
  }
12974
12978
  return { state: next, effects };
@@ -14052,10 +14056,7 @@ var SessionManager = class {
14052
14056
  }
14053
14057
  const pending = runner.getState().pendingPermissions[args.requestId];
14054
14058
  if (!pending) {
14055
- throw new ClawdError(
14056
- ERROR_CODES.PERMISSION_REQUEST_STALE,
14057
- `no pending permission request: ${args.requestId}`
14058
- );
14059
+ return { response: { ok: true }, broadcast: [] };
14059
14060
  }
14060
14061
  const { broadcast } = this.withCollector(() => {
14061
14062
  runner.input({
@@ -15690,11 +15691,13 @@ function parseClaudeObjectInner(obj) {
15690
15691
  const toolName = typeof request?.tool_name === "string" && request.tool_name || typeof toolObj?.name === "string" && toolObj.name || (typeof obj.tool === "string" ? obj.tool : "") || (typeof obj.tool_name === "string" ? obj.tool_name : "");
15691
15692
  const toolInput = request?.input ?? toolObj?.input ?? obj.input ?? obj.tool_input;
15692
15693
  const requestId = String(obj.request_id ?? obj.id ?? "");
15694
+ const toolUseId = typeof request?.tool_use_id === "string" && request.tool_use_id || (typeof obj.tool_use_id === "string" ? obj.tool_use_id : "");
15693
15695
  events.push({
15694
15696
  kind: "permission_request",
15695
15697
  requestId,
15696
15698
  tool: toolName,
15697
- input: toolInput
15699
+ input: toolInput,
15700
+ ...toolUseId ? { toolUseId } : {}
15698
15701
  });
15699
15702
  return events;
15700
15703
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clawos-dev/clawd",
3
- "version": "0.2.13",
3
+ "version": "0.2.14-beta.18.229e108",
4
4
  "description": "Standalone clawd daemon — Claude Code (and future Codex) session server over WebSocket",
5
5
  "type": "module",
6
6
  "license": "MIT",