patchwork-os 1.2.0-beta.3.canary.888 → 1.2.0-beta.3.canary.890

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.
@@ -8,6 +8,7 @@ function getConfigDir() {
8
8
  }
9
9
  import { decryptSecretString, encryptSecretString, } from "./connectors/tokenStorage.js";
10
10
  import { killSwitchMessage, readKillSwitch, } from "./governance/killSwitchPolicy.js";
11
+ import { activeProfile, resolveAgentContainment, } from "./governance/profile.js";
11
12
  import { redactKnownSecrets } from "./governance/secretValues.js";
12
13
  import { loadConfig as loadPatchworkConfig } from "./patchworkConfig.js";
13
14
  import { sharedBoundaryReceiptLog } from "./privacy/boundaryReceiptLog.js";
@@ -21,6 +22,38 @@ import { writeFileAtomic, writeFileAtomicSync } from "./writeFileAtomic.js";
21
22
  function estimateTokens(text) {
22
23
  return Math.ceil(text.length / 4);
23
24
  }
25
+ /**
26
+ * The containment an orchestrator task runs under.
27
+ *
28
+ * A caller that resolved its own (a recipe agent step, whose widenings were
29
+ * already explained and gated by the runner) keeps it unchanged. Otherwise,
30
+ * under a governed profile, the default containment applies to every
31
+ * dispatch through this chokepoint: automation hooks, runClaudeTask and
32
+ * resumeClaudeTask, recipe generation and repair, prompt recipes, and tasks
33
+ * restored after a restart. Resolving it here rather than at each call site
34
+ * is what stops a new call site from forgetting it.
35
+ *
36
+ * Only `disallowedTools` carries over from the caller, because it only
37
+ * narrows. Nothing on this path can widen: `allowedTools`, `sandbox` and
38
+ * `mcpAccess` are not honoured, because there is no approval step here to
39
+ * justify a widening. (A contained child in dontAsk mode could not use bridge
40
+ * tools anyway unless they were allowlisted, and medium-tier bridge writes
41
+ * are not held for approval under governed.)
42
+ *
43
+ * Under compat nothing is added, so behaviour is unchanged.
44
+ */
45
+ function orchestratorContainment(opts) {
46
+ if (opts.containment !== undefined)
47
+ return opts.containment;
48
+ const profile = activeProfile();
49
+ if (profile.agentContainment !== "enforced")
50
+ return undefined;
51
+ return resolveAgentContainment(profile, {
52
+ ...(opts.disallowedTools !== undefined && {
53
+ disallowedTools: opts.disallowedTools,
54
+ }),
55
+ });
56
+ }
24
57
  /** Encrypt a prompt for the tasks file; undefined when the key layer is unavailable. */
25
58
  function encryptPromptForPersistence(prompt) {
26
59
  try {
@@ -355,6 +388,7 @@ export class ClaudeOrchestrator {
355
388
  this.completionCallbacks.delete(id);
356
389
  throw new Error(`Task queue is full (max ${ClaudeOrchestrator.MAX_QUEUE} pending+running tasks)`);
357
390
  }
391
+ const containment = orchestratorContainment(opts);
358
392
  const task = {
359
393
  id,
360
394
  sessionId: opts.sessionId ?? "",
@@ -393,7 +427,7 @@ export class ClaudeOrchestrator {
393
427
  ...(opts.disallowedTools !== undefined && {
394
428
  disallowedTools: opts.disallowedTools,
395
429
  }),
396
- ...(opts.containment !== undefined && { containment: opts.containment }),
430
+ ...(containment !== undefined && { containment }),
397
431
  };
398
432
  this.tasks.set(id, task);
399
433
  if (opts.onChunk)
@@ -1 +1 @@
1
- {"version":3,"file":"claudeOrchestrator.js","sourceRoot":"","sources":["../src/claudeOrchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claudeOrchestrator.js","sourceRoot":"","sources":["../src/claudeOrchestrator.ts"],"names":[],"mappings":"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"}
@@ -95,6 +95,10 @@ export const ENV_ALLOWLIST_EXACT = Object.freeze([
95
95
  "TZ",
96
96
  "SSL_CERT_FILE",
97
97
  "SSL_CERT_DIR",
98
+ // Not secrets. Without them a contained child cannot find a relocated
99
+ // Claude login (reports "not logged in") or trust a corporate CA.
100
+ "NODE_EXTRA_CA_CERTS",
101
+ "CLAUDE_CONFIG_DIR",
98
102
  "HTTP_PROXY",
99
103
  "HTTPS_PROXY",
100
104
  "NO_PROXY",
@@ -1 +1 @@
1
- {"version":3,"file":"envSanitizer.js","sourceRoot":"","sources":["../../../src/drivers/claude/envSanitizer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"envSanitizer.js","sourceRoot":"","sources":["../../../src/drivers/claude/envSanitizer.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,40 @@ import type { ProviderDriver, ProviderTaskInput, ProviderTaskResult } from "../t
6
6
  * trusted blindly: a malformed object is ignored rather than half-applied.
7
7
  */
8
8
  export declare function containmentFromInput(input: Pick<ProviderTaskInput, "containment" | "providerOptions">): AgentContainment | undefined;
9
+ /**
10
+ * Settings sources a contained run loads: only the operator's own USER
11
+ * settings. Project and local settings live in the workspace, so a repository
12
+ * can ship them. Their hooks run shell commands, and observed against the real
13
+ * CLI, a project PreToolUse hook ran inside a contained `-p` run despite
14
+ * `--settings` carrying `hooks: {}`. Their allow rules can also re-enable
15
+ * tools. User settings stay, because API-key auth (`apiKeyHelper`)
16
+ * lives there.
17
+ */
18
+ export declare const CONTAINED_SETTING_SOURCES = "user";
19
+ /**
20
+ * The permission argv for a CONTAINED `claude -p` run. This is the single
21
+ * implementation shared by the subprocess driver and the local-run path
22
+ * (`defaultClaudeCodeFn`), so the two cannot drift apart.
23
+ *
24
+ * Every contained run:
25
+ * - runs in dontAsk mode, even with an empty allowlist, so an unlisted tool
26
+ * is refused;
27
+ * - takes its allowlist from the containment;
28
+ * - denies the union of the caller's own denies and the containment's. A deny
29
+ * is never dropped.
30
+ *
31
+ * A STRICT (governed) run additionally:
32
+ * - loads only user settings;
33
+ * - restricts the built-in tool SET to the allowlist with `--tools`.
34
+ *
35
+ * `--tools` matters because dontAsk only refuses what would otherwise ask.
36
+ * Tools that need no permission, and tools a loaded allow rule pre-approves,
37
+ * run anyway unless they do not exist (observed against the real CLI).
38
+ *
39
+ * A compat `sandbox: true` opt-in (not strict) gets exactly the flags it
40
+ * always had.
41
+ */
42
+ export declare function containedPermissionArgs(containment: Pick<AgentContainment, "allowedTools" | "deniedTools" | "strict">, extraDenied?: unknown): string[];
9
43
  /** Provider credentials the Claude CLI authenticates with. */
10
44
  export declare const CLAUDE_PROVIDER_ENV_KEYS: readonly string[];
11
45
  /**
@@ -8,7 +8,7 @@ import { truncateToBytes, truncateUtf8Bytes } from "../outputCap.js";
8
8
  import { toProviderTaskOutcome } from "../types.js";
9
9
  import { allowlistEnv, passEnvFromProviderOptions, sanitizeEnv, } from "./envSanitizer.js";
10
10
  import { parseStreamLine, splitLines } from "./streamParser.js";
11
- import { createSubprocessSettings } from "./subprocessSettings.js";
11
+ import { createSubprocessSettings, readWorkspaceDenies, } from "./subprocessSettings.js";
12
12
  const OUTPUT_CAP = 50 * 1024; // 50KB
13
13
  /**
14
14
  * Write a single-server MCP config to a 0600 temp file, return the path.
@@ -80,8 +80,67 @@ export function containmentFromInput(input) {
80
80
  envAllowlist: o.envAllowlist === true,
81
81
  mcpAccess: o.mcpAccess === true,
82
82
  widenings: strs(o.widenings),
83
+ ...(o.strict === true && { strict: true }),
83
84
  };
84
85
  }
86
+ /** Drop values a child's flag parser could misread (non-strings, `-…`). */
87
+ function argvSafeList(list) {
88
+ return (Array.isArray(list) ? list : []).filter((t) => typeof t === "string" && t.length > 0 && !t.startsWith("-"));
89
+ }
90
+ /**
91
+ * Settings sources a contained run loads: only the operator's own USER
92
+ * settings. Project and local settings live in the workspace, so a repository
93
+ * can ship them. Their hooks run shell commands, and observed against the real
94
+ * CLI, a project PreToolUse hook ran inside a contained `-p` run despite
95
+ * `--settings` carrying `hooks: {}`. Their allow rules can also re-enable
96
+ * tools. User settings stay, because API-key auth (`apiKeyHelper`)
97
+ * lives there.
98
+ */
99
+ export const CONTAINED_SETTING_SOURCES = "user";
100
+ /**
101
+ * The permission argv for a CONTAINED `claude -p` run. This is the single
102
+ * implementation shared by the subprocess driver and the local-run path
103
+ * (`defaultClaudeCodeFn`), so the two cannot drift apart.
104
+ *
105
+ * Every contained run:
106
+ * - runs in dontAsk mode, even with an empty allowlist, so an unlisted tool
107
+ * is refused;
108
+ * - takes its allowlist from the containment;
109
+ * - denies the union of the caller's own denies and the containment's. A deny
110
+ * is never dropped.
111
+ *
112
+ * A STRICT (governed) run additionally:
113
+ * - loads only user settings;
114
+ * - restricts the built-in tool SET to the allowlist with `--tools`.
115
+ *
116
+ * `--tools` matters because dontAsk only refuses what would otherwise ask.
117
+ * Tools that need no permission, and tools a loaded allow rule pre-approves,
118
+ * run anyway unless they do not exist (observed against the real CLI).
119
+ *
120
+ * A compat `sandbox: true` opt-in (not strict) gets exactly the flags it
121
+ * always had.
122
+ */
123
+ export function containedPermissionArgs(containment, extraDenied = []) {
124
+ const allowed = argvSafeList(containment.allowedTools);
125
+ const denied = Array.from(new Set([
126
+ ...argvSafeList(extraDenied),
127
+ ...argvSafeList(containment.deniedTools),
128
+ ]));
129
+ const strict = containment.strict === true;
130
+ // Built-in names only: `Edit(src/**)` → `Edit`; bridge MCP tools are not
131
+ // part of the built-in set.
132
+ const toolSet = Array.from(new Set(allowed
133
+ .map((t) => t.split("(")[0] ?? t)
134
+ .filter((t) => t.length > 0 && !t.startsWith("mcp__"))));
135
+ return [
136
+ ...(strict ? ["--setting-sources", CONTAINED_SETTING_SOURCES] : []),
137
+ ...(strict ? ["--tools", toolSet.join(",")] : []),
138
+ "--permission-mode",
139
+ "dontAsk",
140
+ ...(allowed.length > 0 ? ["--allowed-tools", ...allowed] : []),
141
+ ...(denied.length > 0 ? ["--disallowed-tools", ...denied] : []),
142
+ ];
143
+ }
85
144
  /** Provider credentials the Claude CLI authenticates with. */
86
145
  export const CLAUDE_PROVIDER_ENV_KEYS = Object.freeze([
87
146
  "ANTHROPIC_API_KEY",
@@ -124,11 +183,11 @@ export class SubprocessDriver {
124
183
  // Best-effort initial write; per-run write in run() is the enforcement gate.
125
184
  this.settings.write();
126
185
  }
127
- settingsFor(deniedTools) {
128
- const key = [...deniedTools].sort().join("\u0000");
186
+ settingsFor(deniedTools, strict) {
187
+ const key = `${strict ? "strict" : "plain"}\u0001${[...deniedTools].sort().join("\u0000")}`;
129
188
  let s = this.containedSettings.get(key);
130
189
  if (!s) {
131
- s = createSubprocessSettings(this.log, deniedTools);
190
+ s = createSubprocessSettings(this.log, deniedTools, { strict });
132
191
  this.containedSettings.set(key, s);
133
192
  }
134
193
  return s;
@@ -150,8 +209,12 @@ export class SubprocessDriver {
150
209
  // `resolveAgentContainment`). Absent ⇒ legacy providerOptions keys below.
151
210
  const containment = containmentFromInput(input);
152
211
  const contained = containment?.enforced === true;
212
+ // A strict run applies the workspace's own deny rules itself, because it
213
+ // does not load the workspace's settings sources.
214
+ const strict = contained && containment?.strict === true;
215
+ const workspaceDenies = strict ? readWorkspaceDenies(input.workspace) : [];
153
216
  const settings = contained
154
- ? this.settingsFor(containment?.deniedTools ?? [])
217
+ ? this.settingsFor([...(containment?.deniedTools ?? []), ...workspaceDenies], strict)
155
218
  : this.settings;
156
219
  if (!settings.write()) {
157
220
  throw new Error("[SubprocessDriver] Failed to write settings file — cannot spawn claude -p without deny list");
@@ -228,7 +291,14 @@ export class SubprocessDriver {
228
291
  }
229
292
  if (maxBudgetUsd !== undefined)
230
293
  args.push("--max-budget-usd", String(maxBudgetUsd));
231
- if (sandboxActive) {
294
+ if (contained && containment) {
295
+ // Governed containment: one implementation for every contained spawn.
296
+ args.push(...containedPermissionArgs(containment, [
297
+ ...argvSafeList(opts.disallowedTools),
298
+ ...workspaceDenies,
299
+ ]));
300
+ }
301
+ else if (sandboxActive) {
232
302
  // Sandbox: enforce the allowlist. --dangerously-skip-permissions VOIDS
233
303
  // --allowed-tools (per CC docs), so they are mutually exclusive — drop
234
304
  // skip-permissions and run in dontAsk mode (no interactive prompt, but
@@ -244,8 +314,9 @@ export class SubprocessDriver {
244
314
  args.push("--dangerously-skip-permissions");
245
315
  }
246
316
  // Deny rules apply in ANY mode — even under --dangerously-skip-permissions.
247
- // --disallowed-tools is variadic: one flag, all (filtered) values.
248
- if (disallowedTools.length > 0) {
317
+ // --disallowed-tools is variadic: one flag, all (filtered) values. (A
318
+ // contained run already carries the union via containedPermissionArgs.)
319
+ if (!contained && disallowedTools.length > 0) {
249
320
  args.push("--disallowed-tools", ...disallowedTools);
250
321
  }
251
322
  for (const f of input.contextFiles ?? []) {
@@ -1 +1 @@
1
- {"version":3,"file":"subprocess.js","sourceRoot":"","sources":["../../../src/drivers/claude/subprocess.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subprocess.js","sourceRoot":"","sources":["../../../src/drivers/claude/subprocess.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,24 @@
1
1
  /**
2
- * Write a minimal subprocess settings file that suppresses hooks and denies
3
- * destructive operations. Uses --settings instead of --bare to preserve OAuth
4
- * auth flows (--bare sets CLAUDE_CODE_SIMPLE=1 which skips OAuth).
2
+ * The DENY rules a workspace's own Claude settings declare
3
+ * (`.claude/settings.json` and `.claude/settings.local.json` under `dir`).
4
+ * A strict contained run does not load those sources, because their hooks and
5
+ * allow rules could widen it. Their denies only narrow, though, so the
6
+ * bridge reads them and applies them itself. Fail-soft: a missing or
7
+ * malformed file contributes nothing.
8
+ */
9
+ export declare function readWorkspaceDenies(dir: string | undefined): string[];
10
+ /**
11
+ * Write a minimal subprocess settings file that denies destructive
12
+ * operations. A strict contained run's file also disables all hooks. Uses
13
+ * --settings instead of --bare to preserve OAuth auth flows (--bare sets
14
+ * CLAUDE_CODE_SIMPLE=1 which skips OAuth).
5
15
  *
6
16
  * The file path is keyed on the deny set: a contained run and an uncontained
7
17
  * run in the same bridge process must never share (and race on) one file.
8
18
  */
9
- export declare function createSubprocessSettings(log: (msg: string) => void, extraDeny?: readonly string[]): {
19
+ export declare function createSubprocessSettings(log: (msg: string) => void, extraDeny?: readonly string[], opts?: {
20
+ strict?: boolean;
21
+ }): {
10
22
  path: string;
11
23
  write: () => boolean;
12
24
  };
@@ -1,5 +1,5 @@
1
1
  import { createHash } from "node:crypto";
2
- import { writeFileSync } from "node:fs";
2
+ import { readFileSync, writeFileSync } from "node:fs";
3
3
  import { tmpdir } from "node:os";
4
4
  import { join } from "node:path";
5
5
  /** Deny list applied to all bridge-spawned subprocess tasks. */
@@ -46,28 +46,65 @@ const DENY_LIST = [
46
46
  ];
47
47
  /**
48
48
  * Build the settings content. `extraDeny` (Phase 0 step 6) is the
49
- * containment's denied tool list — under a governed profile that includes
50
- * bare `WebFetch` / `WebSearch` / `Bash`, written into `permissions.deny` as
51
- * well as passed via `--disallowed-tools`, so the denial holds even if a
52
- * future CLI version changes how the argv flag composes with the mode.
49
+ * containment's denied tool list. Under a governed profile it includes bare
50
+ * `WebFetch` / `WebSearch` / `Bash` and the write tools, plus the workspace's
51
+ * own deny rules. It is written into `permissions.deny` as well as passed via
52
+ * `--disallowed-tools`, so the denial holds even if a future CLI version
53
+ * changes how the argv flag composes with the mode.
53
54
  */
54
- function settingsContent(extraDeny) {
55
+ function settingsContent(extraDeny, strict) {
55
56
  return JSON.stringify({
56
57
  hooks: {},
58
+ // `hooks: {}` alone does NOT stop hooks from other loaded sources
59
+ // (observed against the real CLI). A strict contained run turns every
60
+ // hook off, the operator's user hooks included.
61
+ ...(strict && { disableAllHooks: true }),
57
62
  permissions: { deny: Array.from(new Set([...DENY_LIST, ...extraDeny])) },
58
63
  });
59
64
  }
60
65
  /**
61
- * Write a minimal subprocess settings file that suppresses hooks and denies
62
- * destructive operations. Uses --settings instead of --bare to preserve OAuth
63
- * auth flows (--bare sets CLAUDE_CODE_SIMPLE=1 which skips OAuth).
66
+ * The DENY rules a workspace's own Claude settings declare
67
+ * (`.claude/settings.json` and `.claude/settings.local.json` under `dir`).
68
+ * A strict contained run does not load those sources, because their hooks and
69
+ * allow rules could widen it. Their denies only narrow, though, so the
70
+ * bridge reads them and applies them itself. Fail-soft: a missing or
71
+ * malformed file contributes nothing.
72
+ */
73
+ export function readWorkspaceDenies(dir) {
74
+ if (!dir)
75
+ return [];
76
+ const out = new Set();
77
+ for (const name of ["settings.json", "settings.local.json"]) {
78
+ try {
79
+ const parsed = JSON.parse(readFileSync(join(dir, ".claude", name), "utf-8"));
80
+ const deny = parsed?.permissions?.deny;
81
+ if (!Array.isArray(deny))
82
+ continue;
83
+ for (const d of deny) {
84
+ if (typeof d === "string" && d.length > 0 && !d.startsWith("-")) {
85
+ out.add(d);
86
+ }
87
+ }
88
+ }
89
+ catch {
90
+ // absent or unreadable: nothing to merge
91
+ }
92
+ }
93
+ return [...out];
94
+ }
95
+ /**
96
+ * Write a minimal subprocess settings file that denies destructive
97
+ * operations. A strict contained run's file also disables all hooks. Uses
98
+ * --settings instead of --bare to preserve OAuth auth flows (--bare sets
99
+ * CLAUDE_CODE_SIMPLE=1 which skips OAuth).
64
100
  *
65
101
  * The file path is keyed on the deny set: a contained run and an uncontained
66
102
  * run in the same bridge process must never share (and race on) one file.
67
103
  */
68
- export function createSubprocessSettings(log, extraDeny = []) {
69
- const content = settingsContent(extraDeny);
70
- const suffix = extraDeny.length === 0
104
+ export function createSubprocessSettings(log, extraDeny = [], opts = {}) {
105
+ const strict = opts.strict === true;
106
+ const content = settingsContent(extraDeny, strict);
107
+ const suffix = extraDeny.length === 0 && !strict
71
108
  ? ""
72
109
  : `-${createHash("sha256").update(content).digest("hex").slice(0, 12)}`;
73
110
  const path = join(tmpdir(), `claude-ide-bridge-subprocess-settings-${process.pid}${suffix}.json`);