@clipboard-health/clearance 1.3.1 → 1.3.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/README.md CHANGED
@@ -132,12 +132,24 @@ shell aliases:
132
132
 
133
133
  ```bash
134
134
  SAFEHOUSE_CLEARANCE="$(npm root -g)/@clipboard-health/clearance/safehouse/safehouse-clearance"
135
+ SAFEHOUSE_CLAUDE_PROXY="$(npm root -g)/@clipboard-health/clearance/safehouse/safehouse-claude-proxy"
135
136
  export CLEARANCE_ALLOW_HOSTS_FILES="$HOME/code/<your-repo>/clearance-allow-hosts:$HOME/.config/clearance/personal-allow-hosts"
136
137
 
137
138
  alias codex-proxy="$SAFEHOUSE_CLEARANCE codex --dangerously-bypass-approvals-and-sandbox"
138
- alias claude-proxy="$SAFEHOUSE_CLEARANCE claude --enable-auto-mode"
139
+ alias claude-proxy="$SAFEHOUSE_CLAUDE_PROXY"
139
140
  ```
140
141
 
142
+ `safehouse-claude-proxy` runs Claude through Safehouse with
143
+ `--permission-mode auto`. When launched from a cmux terminal, it preserves
144
+ cmux's Claude shim by forwarding the cmux session environment and granting
145
+ read-only access to the cmux app/socket state. It also points the shim at the
146
+ real Claude binary so the shim does not recurse through itself.
147
+
148
+ The cmux environment pass-through is an explicit reviewed allowlist. If a cmux
149
+ update adds new `CMUX_*` variables to its Claude wrapper contract,
150
+ `safehouse-claude-proxy` prints a warning naming the unreviewed variables
151
+ instead of automatically passing every `CMUX_*` value through the sandbox.
152
+
141
153
  For AWS SSO work, log in on the host first, then layer the safehouse cloud
142
154
  credentials flag through the wrapper:
143
155
 
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env node
2
+
3
+ import path from "node:path";
4
+
5
+ import { runCli } from "./runCli.js";
6
+
7
+ await runCli(path.dirname(import.meta.dirname), "safehouseClaudeProxyCli");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clipboard-health/clearance",
3
- "version": "1.3.1",
3
+ "version": "1.3.2",
4
4
  "description": "Localhost HTTP/HTTPS egress proxy with hostname allow-listing, plus a macOS Safehouse integration for sandboxed agent processes.",
5
5
  "keywords": [
6
6
  "agent",
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ source_path="${BASH_SOURCE[0]}"
5
+ while [ -h "$source_path" ]; do
6
+ source_dir="$(cd -P "$(dirname "$source_path")" >/dev/null 2>&1 && pwd)"
7
+ link_target="$(readlink "$source_path")"
8
+ case "$link_target" in
9
+ /*) source_path="$link_target" ;;
10
+ *) source_path="$source_dir/$link_target" ;;
11
+ esac
12
+ done
13
+
14
+ script_dir="$(cd -P "$(dirname "$source_path")" >/dev/null 2>&1 && pwd)"
15
+ package_dir="$(cd -P "$script_dir/.." >/dev/null 2>&1 && pwd)"
16
+ node_binary="${CLEARANCE_NODE_BINARY:-node}"
17
+
18
+ exec "$node_binary" "$package_dir/bin/safehouseClaudeProxy.js" "$@"
package/src/index.d.ts CHANGED
@@ -2,6 +2,7 @@ import type { LookupAddress } from "node:dns";
2
2
  import * as http from "node:http";
3
3
  export { resolveAllowlist, type ResolveAllowlistInput } from "./allowlist.ts";
4
4
  export { type ClearanceCheckInput, type ClearanceListenerCheck, type ClearanceSpawner, ensureClearance, type EnsureClearanceInput, type EnsureClearanceResult, isClearanceListening, spawnClearance, type SpawnClearanceInput, } from "./launcher.ts";
5
+ export { resolveSafehouseCmuxIntegration, type ResolveSafehouseCmuxIntegrationInput, SAFEHOUSE_CMUX_CLAUDE_COMMAND_PRELUDE, SAFEHOUSE_CMUX_ENV_PASS, SAFEHOUSE_CMUX_WRAPPER_LOCAL_ENV_NAMES, type SafehouseCmuxIntegration, safehouseCmuxIntegrationWarningLines, } from "./safehouseCmux.ts";
5
6
  export declare const CLEARANCE_PACKAGE_NAME = "@clipboard-health/clearance";
6
7
  export interface ClearanceConfig {
7
8
  allowedHosts: readonly string[];
package/src/index.js CHANGED
@@ -6,6 +6,7 @@ import { resolveAllowlist } from "./allowlist.js";
6
6
  import { normalizeHost, normalizeRules, parseList } from "./hostRule.js";
7
7
  export { resolveAllowlist } from "./allowlist.js";
8
8
  export { ensureClearance, isClearanceListening, spawnClearance, } from "./launcher.js";
9
+ export { resolveSafehouseCmuxIntegration, SAFEHOUSE_CMUX_CLAUDE_COMMAND_PRELUDE, SAFEHOUSE_CMUX_ENV_PASS, SAFEHOUSE_CMUX_WRAPPER_LOCAL_ENV_NAMES, safehouseCmuxIntegrationWarningLines, } from "./safehouseCmux.js";
9
10
  export const CLEARANCE_PACKAGE_NAME = "@clipboard-health/clearance";
10
11
  const DEFAULT_LISTEN_HOST = "127.0.0.1";
11
12
  const DEFAULT_PORT = 19_999;
package/src/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/clearance/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,OAAO,KAAK,GAAG,MAAM,mBAAmB,CAAC;AACzC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,GAAG,MAAM,UAAU,CAAC;AAGhC,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAEzE,OAAO,EAAE,gBAAgB,EAA8B,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAIL,eAAe,EAGf,oBAAoB,EACpB,cAAc,GAEf,MAAM,eAAe,CAAC;AAEvB,MAAM,CAAC,MAAM,sBAAsB,GAAG,6BAA6B,CAAC;AAuGpE,MAAM,mBAAmB,GAAG,WAAW,CAAC;AACxC,MAAM,YAAY,GAAG,MAAM,CAAC;AAC5B,MAAM,qBAAqB,GAAG,CAAC,GAAG,CAAU,CAAC;AAC7C,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAClC,MAAM,uBAAuB,GAAG,OAAO,CAAC;AACxC,MAAM,mBAAmB,GAAG,IAAI,CAAC;AACjC,MAAM,yBAAyB,GAAG,MAAM,CAAC;AACzC,MAAM,4BAA4B,GAAG,IAAI,CAAC;AAE1C,MAAM,WAAW,GAAoB;IACnC,IAAI,EAAE,IAAI;CACX,CAAC;AAEF,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,YAAY;IACZ,YAAY;IACZ,oBAAoB;IACpB,qBAAqB;IACrB,kBAAkB;IAClB,IAAI;IACJ,SAAS;IACT,mBAAmB;IACnB,SAAS;CACV,CAAC,CAAC;AAEH,MAAM,mBAAmB,GAAG;IAC1B,CAAC,SAAS,EAAE,CAAC,CAAC;IACd,CAAC,UAAU,EAAE,CAAC,CAAC;IACf,CAAC,YAAY,EAAE,EAAE,CAAC;IAClB,CAAC,WAAW,EAAE,CAAC,CAAC;IAChB,CAAC,aAAa,EAAE,EAAE,CAAC;IACnB,CAAC,YAAY,EAAE,EAAE,CAAC;IAClB,CAAC,WAAW,EAAE,EAAE,CAAC;IACjB,CAAC,WAAW,EAAE,EAAE,CAAC;IACjB,CAAC,aAAa,EAAE,EAAE,CAAC;IACnB,CAAC,YAAY,EAAE,EAAE,CAAC;IAClB,CAAC,cAAc,EAAE,EAAE,CAAC;IACpB,CAAC,aAAa,EAAE,EAAE,CAAC;IACnB,CAAC,WAAW,EAAE,CAAC,CAAC;IAChB,CAAC,WAAW,EAAE,CAAC,CAAC;CACR,CAAC;AAEX,MAAM,mBAAmB,GAAG;IAC1B,CAAC,IAAI,EAAE,GAAG,CAAC;IACX,CAAC,KAAK,EAAE,GAAG,CAAC;IACZ,CAAC,IAAI,EAAE,EAAE,CAAC;IACV,CAAC,YAAY,EAAE,EAAE,CAAC;IAClB,CAAC,WAAW,EAAE,EAAE,CAAC;IACjB,CAAC,aAAa,EAAE,EAAE,CAAC;IACnB,CAAC,OAAO,EAAE,EAAE,CAAC;IACb,CAAC,QAAQ,EAAE,EAAE,CAAC;IACd,CAAC,YAAY,EAAE,EAAE,CAAC;IAClB,CAAC,QAAQ,EAAE,EAAE,CAAC;IACd,CAAC,QAAQ,EAAE,CAAC,CAAC;IACb,CAAC,QAAQ,EAAE,EAAE,CAAC;IACd,CAAC,QAAQ,EAAE,CAAC,CAAC;CACL,CAAC;AAEX,MAAM,uBAAuB,GAAG,iBAAiB,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;AAC/E,MAAM,uBAAuB,GAAG,iBAAiB,CAAC,mBAAmB,EAAE,MAAM,CAAC,CAAC;AAE/E,MAAM,UAAU,sBAAsB,CAAC,GAAsB;IAC3D,MAAM,YAAY,GAAG,gBAAgB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;IAE/C,OAAO;QACL,YAAY;QACZ,YAAY,EAAE,qBAAqB,CACjC,SAAS,CAAC,GAAG,CAAC,uBAAuB,CAAC,IAAI,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAC3E;QACD,QAAQ,EAAE,eAAe,CACvB,GAAG,EACH,sBAAsB,EACtB,kBAAkB,EAClB,CAAC,EACD,MAAM,CAAC,gBAAgB,CACxB;QACD,aAAa,EAAE,eAAe,CAC5B,GAAG,EACH,2BAA2B,EAC3B,uBAAuB,EACvB,CAAC,EACD,MAAM,CAAC,gBAAgB,CACxB;QACD,UAAU,EAAE,GAAG,CAAC,uBAAuB,CAAC,IAAI,mBAAmB;QAC/D,UAAU,EAAE,eAAe,CACzB,GAAG,EACH,uBAAuB,EACvB,mBAAmB,EACnB,CAAC,EACD,MAAM,CAAC,gBAAgB,CACxB;QACD,IAAI,EAAE,eAAe,CAAC,GAAG,EAAE,gBAAgB,EAAE,YAAY,EAAE,CAAC,EAAE,MAAM,CAAC;QACrE,qBAAqB,EAAE,GAAG,CAAC,6BAA6B,CAAC,KAAK,GAAG;KAClE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,OAAqC;IACzE,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAC5C,KAAK,iBAAiB,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE;QAC/C,8BAA8B;QAC9B,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,CAAC;YAC/B,WAAW,CAAC,YAAY,EAAE,GAAG,EAAE,aAAa,EAAE,sBAAsB,CAAC,CAAC;YACtE,OAAO;QACT,CAAC;QAED,KAAK,aAAa,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE;QAC1C,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,cAAc,GAAG,yBAAyB,CAAC;IAClD,MAAM,CAAC,gBAAgB,GAAG,4BAA4B,CAAC;IACvD,MAAM,CAAC,cAAc,GAAG,KAAK,CAAC,UAAU,CAAC;IACzC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;QACxB,KAAK,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAiC;IAEjC,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC;IACtB,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,OAAO,CAAC;IACvC,MAAM,MAAM,GAAG,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAG,qBAAqB,CAAC;QACnC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,MAAM;QACN,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;KACpD,CAAC,CAAC;IAEH,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE7B,MAAM,CAAC,IAAI,CAAC,iCAAiC,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;IACjF,MAAM,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChE,MAAM,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAE/D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAqC;IAC7D,MAAM,YAAY,GAAG,cAAc,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC1D,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAC5E,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,mBAAmB,CAAC;IAE7D,OAAO;QACL,YAAY;QACZ,YAAY,EAAE,IAAI,GAAG,CAAC,qBAAqB,CAAC,OAAO,CAAC,YAAY,IAAI,qBAAqB,CAAC,CAAC;QAC3F,QAAQ,EAAE,IAAI,GAAG,EAAE;QACnB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,gBAAgB;QAChD,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,kBAAkB;QAChD,SAAS,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;QAC1D,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,uBAAuB;QAC/D,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,WAAW;QACrC,UAAU;QACV,qBAAqB,EAAE,OAAO,CAAC,qBAAqB,IAAI,IAAI;KAC7D,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,MAAmB,EAAE,MAAuB;IAChE,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC1C,SAAS,OAAO,CAAC,KAAY;YAC3B,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YACrC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC;QAED,SAAS,WAAW;YAClB,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACtC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,KAAmB;IAC9C,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IACjD,8BAA8B;IAC9B,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC/B,8BAA8B;IAC9B,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE;QAChD,YAAY,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACnD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,WAAW,CAAC,YAAY,EAAE,GAAG,EAAE,aAAa,EAAE,sBAAsB,CAAC,CAAC;QACtE,OAAO;IACT,CAAC;IAED,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC5E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACnC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE;YACxB,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,MAAM,CAAC,IAAI;YACrB,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM;SACP,CAAC,CAAC;QACH,WAAW,CAAC,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,MAAM,IAAI,CAAC,CAAC;QAC3D,OAAO;IACT,CAAC;IAED,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,MAAM,QAAQ,GAAG,GAAG,CAAC,gBAAgB,CAAC;QACpC,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,IAAI,EAAE,MAAM,CAAC,OAAO;QACpB,IAAI,EAAE,MAAM,CAAC,IAAI;KAClB,CAAC,CAAC;IAEH,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC1B,8BAA8B;IAC9B,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE;QAC5C,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE;QAC5B,aAAa,GAAG,IAAI,CAAC;QACrB,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE;YACxB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,SAAS;YACjB,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC,CAAC;QACH,YAAY,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;QAClE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC5B,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;QAC/B,8BAA8B;QAC9B,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,WAAW,CAAC,YAAY,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;YACpE,OAAO;QACT,CAAC;QAED,8BAA8B;QAC9B,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;QAC9B,QAAQ,CAAC,OAAO,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,KAAuB;IACtD,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAClC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE/B,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,8CAA8C,CAAC,CAAC;QACpE,OAAO;IACT,CAAC;IAED,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QAC7B,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,yBAAyB,CAAC,CAAC;QAC/C,OAAO;IACT,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAElC,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAChE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QACnC,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE;YACxB,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,GAAG,CAAC,QAAQ;YACtB,MAAM;YACN,IAAI;YACJ,MAAM;SACP,CAAC,CAAC;QACH,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,IAAI,CAAC,CAAC;QACnC,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAClD,OAAO,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;IAExB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAC9B;QACE,KAAK,EAAE,KAAK,CAAC,SAAS;QACtB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO;QACP,QAAQ,EAAE,MAAM,CAAC,OAAO;QACxB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,IAAI,EAAE,GAAG,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE;QACpC,IAAI,EAAE,MAAM,CAAC,IAAI;KAClB,EACD,CAAC,WAAW,EAAE,EAAE;QACd,WAAW,CAAC,KAAK,CAAC,MAAM,EAAE;YACxB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM;YACN,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC,CAAC;QACH,8BAA8B;QAC9B,MAAM,UAAU,GAAG,WAAW,CAAC,UAAU,IAAI,GAAG,CAAC;QACjD,GAAG,CAAC,SAAS,CAAC,UAAU,EAAE,oBAAoB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;QACrE,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC,CACF,CAAC;IAEF,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE;QAC/C,WAAW,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IACH,8BAA8B;IAC9B,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,EAAE;QAC9C,WAAW,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE;QACnB,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;QAChC,8BAA8B;QAC9B,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;YACpB,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACnB,OAAO;QACT,CAAC;QAED,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,OAAO,IAAI,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IACH,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;QAC7B,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IACH,8BAA8B;IAC9B,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,WAAW,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;QACrB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;YACvB,WAAW,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AACxB,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,KAAqB;IAC5C,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IACpC,MAAM,QAAQ,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAErC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;IACxD,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAChF,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,KAAuB;IAChD,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAClC,MAAM,cAAc,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE1C,IAAI,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QAC/B,IAAI,KAAK,CAAC,qBAAqB,IAAI,kBAAkB,CAAC,QAAQ,EAAE,cAAc,CAAC,EAAE,CAAC;YAChF,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,EAAE,CAAC,CAAC;QACrD,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IACvD,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,YAAY,GAAG,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACxC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,GAAG,GAAG,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC7E,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,IAAI,GAAG,EAAE,CAAC;QAChD,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,OAAO,GAAG,aAAa;SAC1B,MAAM,CAAC,WAAW,CAAC;SACnB,MAAM,CACL,CAAC,MAAM,EAAE,EAAE,CACT,CAAC,CAAC,KAAK,CAAC,qBAAqB,IAAI,kBAAkB,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CACtF;SACA,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC;IAE9B,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,QAAgB;IAC9C,OAAO,MAAM,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,WAAW,CAAC,QAAgB,EAAE,YAA+B;IACpE,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QAChC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC7B,OAAO,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QACtE,CAAC;QAED,OAAO,QAAQ,KAAK,IAAI,CAAC;IAC3B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,MAAM,IAAI,GAAG,mCAAmC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7D,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAO,CAAC;QAC7C,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QAChC,8BAA8B;QAC9B,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YAC7C,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACxB,CAAC;IAED,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAI,cAAc,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC;IACxD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC;AACxD,CAAC;AAED,SAAS,oBAAoB,CAC3B,OAA4D;IAE5D,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,kBAAkB,CAAC,CAAC;IACnD,KAAK,MAAM,KAAK,IAAI,2BAA2B,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACpE,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,GAAG,GAA6B,EAAE,CAAC;IACzC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAClE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,2BAA2B,CAAC,KAA0C;IAC7E,8BAA8B;IAC9B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,8BAA8B;IAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9D,OAAO,MAAM;SACV,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;SACtC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;SAC1C,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,qBAAqB,CAAC,QAAwC;IACrE,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QACrC,MAAM,IAAI,GAAG,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACrE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,8CAA8C,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACnF,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;IACpF,CAAC;IAED,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,eAAe,CACtB,GAAsB,EACtB,IAAY,EACZ,QAAgB,EAChB,OAAe,EACf,OAAe;IAEf,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;IACxB,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,SAAS,CAAC,GAAG,IAAI,qBAAqB,CAAC,CAAC;IACpD,CAAC;IACD,IAAI,MAAM,GAAG,OAAO,IAAI,MAAM,GAAG,OAAO,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,oBAAoB,OAAO,QAAQ,OAAO,EAAE,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,SAAS,CAAC,OAA2B;IAC5C,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC7B,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9C,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,IAAI,MAAM,CAAC;AAC9D,CAAC;AAED,SAAS,UAAU,CAAC,MAAc;IAChC,OAAO,MAAM,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,WAAW,CAAC,MAAqB;IACxC,OAAO,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,kBAAkB,CAAC,EAAU,EAAE,MAAa;IACnD,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;QACjB,OAAO,uBAAuB,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,uBAAuB,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,iBAAiB,CACxB,MAAgD,EAChD,MAAuB;IAEvB,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;IACtC,KAAK,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvC,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,SAAS,CAAC,GAAwB,EAAE,MAAc,EAAE,IAAY;IACvE,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE;QACpB,UAAU,EAAE,OAAO;QACnB,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;QACzC,cAAc,EAAE,2BAA2B;KAC5C,CAAC,CAAC;IACH,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,WAAW,CAAC,MAAc,EAAE,MAAc,EAAE,MAAc,EAAE,IAAY;IAC/E,8BAA8B;IAC9B,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,OAAO;IACT,CAAC;IAED,MAAM,CAAC,GAAG,CACR,YAAY,MAAM,IAAI,MAAM,kEAAkE,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,gCAAgC,IAAI,EAAE,CAC5J,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,MAAuB,EAAE,KAAuB;IACnE,MAAM,KAAK,GAAG;QACZ,KAAK,CAAC,QAAQ;QACd,UAAU,KAAK,CAAC,MAAM,EAAE;QACxB,QAAQ,KAAK,CAAC,QAAQ,EAAE;QACxB,QAAQ,KAAK,CAAC,IAAI,EAAE;KACrB,CAAC;IAEF,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;QAChC,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IACzC,CAAC;IACD,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,8BAA8B;IAC9B,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,WAAW,CAAC,MAAc;IACjC,OAAO,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC;AACtC,CAAC;AAED,SAAS,IAAI;IACX,mEAAmE;AACrE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/clearance/src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,52 @@
1
+ /* v8 ignore file @preserve -- CLI bootstrap runs in a child process covered by safehouseWrapper.test.ts. */
2
+ import { spawnSync } from "node:child_process";
3
+ import { mkdtempSync, rmSync, symlinkSync } from "node:fs";
4
+ import { constants as osConstants, tmpdir } from "node:os";
5
+ import path from "node:path";
6
+ import { resolveSafehouseCmuxIntegration, safehouseCmuxIntegrationWarningLines, } from "./safehouseCmux.js";
7
+ const packageRoot = path.dirname(import.meta.dirname);
8
+ const shimDir = mkdtempSync(path.join(tmpdir(), "safehouse-claude-proxy-"));
9
+ try {
10
+ const shimPath = path.join(shimDir, "claude");
11
+ symlinkSync("/bin/sh", shimPath);
12
+ const cmuxIntegration = resolveSafehouseCmuxIntegration();
13
+ for (const warningLine of cmuxIntegration.isActive
14
+ ? safehouseCmuxIntegrationWarningLines({
15
+ commandName: "safehouse-claude-proxy",
16
+ unreviewedEnvNames: cmuxIntegration.unreviewedEnvNames,
17
+ })
18
+ : []) {
19
+ process.stderr.write(`${warningLine}\n`);
20
+ }
21
+ const safehouseArgs = cmuxIntegration.isActive
22
+ ? [
23
+ `--add-dirs-ro=${cmuxIntegration.addDirsReadOnly.join(":")}`,
24
+ `--env-pass=${cmuxIntegration.envPass.join(",")}`,
25
+ ]
26
+ : [];
27
+ const commandPrelude = cmuxIntegration.isActive
28
+ ? `${cmuxIntegration.claudeCommandPrelude}; `
29
+ : "";
30
+ const result = spawnSync(path.join(packageRoot, "safehouse", "safehouse-clearance"), [
31
+ ...safehouseArgs,
32
+ shimPath,
33
+ "-c",
34
+ `${commandPrelude}exec claude --permission-mode auto "$@"`,
35
+ "sh",
36
+ ...process.argv.slice(2),
37
+ ], { stdio: "inherit" });
38
+ if (result.error !== undefined) {
39
+ throw result.error;
40
+ }
41
+ if (result.signal === null) {
42
+ process.exitCode = result.status ?? 1;
43
+ }
44
+ else {
45
+ const signalNumber = osConstants.signals[result.signal];
46
+ process.exitCode = signalNumber === undefined ? 1 : 128 + signalNumber;
47
+ }
48
+ }
49
+ finally {
50
+ rmSync(shimDir, { force: true, recursive: true });
51
+ }
52
+ //# sourceMappingURL=safehouseClaudeProxyCli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safehouseClaudeProxyCli.js","sourceRoot":"","sources":["../../../../packages/clearance/src/safehouseClaudeProxyCli.ts"],"names":[],"mappings":"AAAA,4GAA4G;AAC5G,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3D,OAAO,EAAE,SAAS,IAAI,WAAW,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC3D,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EACL,+BAA+B,EAC/B,oCAAoC,GACrC,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC;AACtD,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,yBAAyB,CAAC,CAAC,CAAC;AAE5E,IAAI,CAAC;IACH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC9C,WAAW,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAEjC,MAAM,eAAe,GAAG,+BAA+B,EAAE,CAAC;IAC1D,KAAK,MAAM,WAAW,IAAI,eAAe,CAAC,QAAQ;QAChD,CAAC,CAAC,oCAAoC,CAAC;YACnC,WAAW,EAAE,wBAAwB;YACrC,kBAAkB,EAAE,eAAe,CAAC,kBAAkB;SACvD,CAAC;QACJ,CAAC,CAAC,EAAE,EAAE,CAAC;QACP,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,aAAa,GAAG,eAAe,CAAC,QAAQ;QAC5C,CAAC,CAAC;YACE,iBAAiB,eAAe,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAC5D,cAAc,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;SAClD;QACH,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,cAAc,GAAG,eAAe,CAAC,QAAQ;QAC7C,CAAC,CAAC,GAAG,eAAe,CAAC,oBAAoB,IAAI;QAC7C,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,MAAM,GAAG,SAAS,CACtB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,EAAE,qBAAqB,CAAC,EAC1D;QACE,GAAG,aAAa;QAChB,QAAQ;QACR,IAAI;QACJ,GAAG,cAAc,yCAAyC;QAC1D,IAAI;QACJ,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;KACzB,EACD,EAAE,KAAK,EAAE,SAAS,EAAE,CACrB,CAAC;IAEF,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,MAAM,CAAC,KAAK,CAAC;IACrB,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;QAC3B,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,MAAM,YAAY,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACxD,OAAO,CAAC,QAAQ,GAAG,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,YAAY,CAAC;IACzE,CAAC;AACH,CAAC;QAAS,CAAC;IACT,MAAM,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AACpD,CAAC"}
@@ -0,0 +1,19 @@
1
+ export declare const SAFEHOUSE_CMUX_ENV_PASS: readonly ["CMUX_BUNDLED_CLI_PATH", "CMUX_CLAUDE_HOOKS_DISABLED", "CMUX_CLAUDE_WRAPPER_SHIM", "CMUX_CLAUDE_WRAPPER_SHIM_ROOT", "CMUX_CUSTOM_CLAUDE_PATH", "CMUX_PANEL_ID", "CMUX_PRESERVE_CLAUDE_AUTH_SELECTION_ENV", "CMUX_PRESERVE_CLAUDE_AUTH_SELECTION_ENV_KEYS", "CMUX_SOCKET_PATH", "CMUX_SUPPRESS_SUBAGENT_NOTIFICATIONS", "CMUX_SURFACE_ID", "CMUX_TAB_ID", "CMUX_WORKSPACE_ID"];
2
+ export declare const SAFEHOUSE_CMUX_WRAPPER_LOCAL_ENV_NAMES: readonly ["CMUX_AGENT_LAUNCH_ARGV_B64", "CMUX_AGENT_LAUNCH_CWD", "CMUX_AGENT_LAUNCH_EXECUTABLE", "CMUX_AGENT_LAUNCH_KIND", "CMUX_CLAUDE_HOOK_CMUX_BIN", "CMUX_CLAUDE_PID", "CMUX_ORIGINAL_NODE_OPTIONS", "CMUX_ORIGINAL_NODE_OPTIONS_PRESENT"];
3
+ export declare const SAFEHOUSE_CMUX_CLAUDE_COMMAND_PRELUDE: string;
4
+ export interface ResolveSafehouseCmuxIntegrationInput {
5
+ env?: NodeJS.ProcessEnv;
6
+ readFile?: (path: string) => string;
7
+ }
8
+ export interface SafehouseCmuxIntegration {
9
+ addDirsReadOnly: readonly string[];
10
+ claudeCommandPrelude: string;
11
+ envPass: readonly string[];
12
+ isActive: boolean;
13
+ unreviewedEnvNames: readonly string[];
14
+ }
15
+ export declare function resolveSafehouseCmuxIntegration(input?: ResolveSafehouseCmuxIntegrationInput): SafehouseCmuxIntegration;
16
+ export declare function safehouseCmuxIntegrationWarningLines(input: {
17
+ commandName: string;
18
+ unreviewedEnvNames: readonly string[];
19
+ }): readonly string[];
@@ -0,0 +1,126 @@
1
+ import { readFileSync } from "node:fs";
2
+ import path from "node:path";
3
+ export const SAFEHOUSE_CMUX_ENV_PASS = [
4
+ "CMUX_BUNDLED_CLI_PATH",
5
+ "CMUX_CLAUDE_HOOKS_DISABLED",
6
+ "CMUX_CLAUDE_WRAPPER_SHIM",
7
+ "CMUX_CLAUDE_WRAPPER_SHIM_ROOT",
8
+ "CMUX_CUSTOM_CLAUDE_PATH",
9
+ "CMUX_PANEL_ID",
10
+ "CMUX_PRESERVE_CLAUDE_AUTH_SELECTION_ENV",
11
+ "CMUX_PRESERVE_CLAUDE_AUTH_SELECTION_ENV_KEYS",
12
+ "CMUX_SOCKET_PATH",
13
+ "CMUX_SUPPRESS_SUBAGENT_NOTIFICATIONS",
14
+ "CMUX_SURFACE_ID",
15
+ "CMUX_TAB_ID",
16
+ "CMUX_WORKSPACE_ID",
17
+ ];
18
+ export const SAFEHOUSE_CMUX_WRAPPER_LOCAL_ENV_NAMES = [
19
+ "CMUX_AGENT_LAUNCH_ARGV_B64",
20
+ "CMUX_AGENT_LAUNCH_CWD",
21
+ "CMUX_AGENT_LAUNCH_EXECUTABLE",
22
+ "CMUX_AGENT_LAUNCH_KIND",
23
+ "CMUX_CLAUDE_HOOK_CMUX_BIN",
24
+ "CMUX_CLAUDE_PID",
25
+ "CMUX_ORIGINAL_NODE_OPTIONS",
26
+ "CMUX_ORIGINAL_NODE_OPTIONS_PRESENT",
27
+ ];
28
+ export const SAFEHOUSE_CMUX_CLAUDE_COMMAND_PRELUDE = [
29
+ `if { [ -n "\${CMUX_SURFACE_ID:-}" ] || [ -n "\${CMUX_CLAUDE_WRAPPER_SHIM:-}" ]; } && [ -z "\${CMUX_CUSTOM_CLAUDE_PATH:-}" ]; then`,
30
+ "_clearance_cmux_path=;",
31
+ "_clearance_cmux_remaining_path=$PATH:;",
32
+ `while [ -n "$_clearance_cmux_remaining_path" ]; do _clearance_cmux_path_entry=\${_clearance_cmux_remaining_path%%:*}; _clearance_cmux_remaining_path=\${_clearance_cmux_remaining_path#*:}; case "$_clearance_cmux_path_entry" in */cmux-cli-shims/*|*/cmux-cli-shims) ;; *) _clearance_cmux_path="\${_clearance_cmux_path:+$_clearance_cmux_path:}$_clearance_cmux_path_entry" ;; esac; done;`,
33
+ 'if _clearance_cmux_real_claude=$(PATH="$_clearance_cmux_path" command -v claude 2>/dev/null); then case "$_clearance_cmux_real_claude" in */cmux-cli-shims/*|*/cmux-cli-shims/claude) ;; *) export CMUX_CUSTOM_CLAUDE_PATH="$_clearance_cmux_real_claude" ;; esac; fi;',
34
+ "unset _clearance_cmux_path _clearance_cmux_remaining_path _clearance_cmux_path_entry _clearance_cmux_real_claude;",
35
+ "fi",
36
+ ].join(" ");
37
+ const DEFAULT_CMUX_CLAUDE_WRAPPER_PATH = "/Applications/cmux.app/Contents/Resources/bin/cmux-claude-wrapper";
38
+ const CMUX_ENV_NAME_PATTERN = /CMUX_[A-Za-z0-9_]+/g;
39
+ export function resolveSafehouseCmuxIntegration(input = {}) {
40
+ const env = input.env ?? process.env;
41
+ const readFile = input.readFile ?? defaultReadFile;
42
+ return {
43
+ addDirsReadOnly: resolveCmuxReadOnlyDirs({ env }),
44
+ claudeCommandPrelude: SAFEHOUSE_CMUX_CLAUDE_COMMAND_PRELUDE,
45
+ envPass: SAFEHOUSE_CMUX_ENV_PASS,
46
+ isActive: isSafehouseCmuxIntegrationActive({ env }),
47
+ unreviewedEnvNames: resolveUnreviewedCmuxEnvNames({ env, readFile }),
48
+ };
49
+ }
50
+ export function safehouseCmuxIntegrationWarningLines(input) {
51
+ if (input.unreviewedEnvNames.length === 0) {
52
+ return [];
53
+ }
54
+ return [
55
+ `${input.commandName}: cmux wrapper references unreviewed env vars: ${input.unreviewedEnvNames.join(", ")}`,
56
+ `${input.commandName}: update SAFEHOUSE_CMUX_ENV_PASS or SAFEHOUSE_CMUX_WRAPPER_LOCAL_ENV_NAMES after reviewing them.`,
57
+ ];
58
+ }
59
+ function isSafehouseCmuxIntegrationActive(input) {
60
+ return (input.env["CMUX_SURFACE_ID"] !== undefined ||
61
+ input.env["CMUX_CLAUDE_WRAPPER_SHIM"] !== undefined);
62
+ }
63
+ function resolveCmuxReadOnlyDirs(input) {
64
+ const xdgStateHome = normalizeAbsolutePath({ value: input.env["XDG_STATE_HOME"] });
65
+ const stateDir = xdgStateHome === undefined ? homeStateDir({ env: input.env }) : path.join(xdgStateHome, "cmux");
66
+ const socketPath = normalizeAbsolutePath({ value: input.env["CMUX_SOCKET_PATH"] });
67
+ return [
68
+ ...new Set([
69
+ "/Applications/cmux.app",
70
+ ...(stateDir === undefined ? [] : [stateDir]),
71
+ ...(socketPath === undefined ? [] : [path.dirname(socketPath)]),
72
+ ]),
73
+ ];
74
+ }
75
+ function homeStateDir(input) {
76
+ const home = normalizeAbsolutePath({ value: input.env["HOME"] });
77
+ return home === undefined ? undefined : path.join(home, ".local", "state", "cmux");
78
+ }
79
+ function normalizeAbsolutePath(input) {
80
+ if (input.value === undefined || input.value.length === 0 || !path.isAbsolute(input.value)) {
81
+ return undefined;
82
+ }
83
+ return input.value;
84
+ }
85
+ function resolveUnreviewedCmuxEnvNames(input) {
86
+ const wrapperSource = readFirstAvailableCmuxWrapperSource(input);
87
+ if (wrapperSource === undefined) {
88
+ return [];
89
+ }
90
+ const referencedNames = wrapperSource.match(CMUX_ENV_NAME_PATTERN);
91
+ if (referencedNames === null) {
92
+ return [];
93
+ }
94
+ const reviewedNames = new Set([
95
+ ...SAFEHOUSE_CMUX_ENV_PASS,
96
+ ...SAFEHOUSE_CMUX_WRAPPER_LOCAL_ENV_NAMES,
97
+ ]);
98
+ return [...new Set(referencedNames)].filter((name) => !reviewedNames.has(name)).toSorted();
99
+ }
100
+ function readFirstAvailableCmuxWrapperSource(input) {
101
+ for (const wrapperPath of cmuxWrapperCandidatePaths({ env: input.env })) {
102
+ try {
103
+ return input.readFile(wrapperPath);
104
+ }
105
+ catch {
106
+ continue;
107
+ }
108
+ }
109
+ return undefined;
110
+ }
111
+ function cmuxWrapperCandidatePaths(input) {
112
+ const bundledCmuxPath = input.env["CMUX_BUNDLED_CLI_PATH"];
113
+ if (bundledCmuxPath === undefined) {
114
+ return [DEFAULT_CMUX_CLAUDE_WRAPPER_PATH];
115
+ }
116
+ return [
117
+ ...new Set([
118
+ path.join(path.dirname(bundledCmuxPath), "cmux-claude-wrapper"),
119
+ DEFAULT_CMUX_CLAUDE_WRAPPER_PATH,
120
+ ]),
121
+ ];
122
+ }
123
+ function defaultReadFile(path) {
124
+ return readFileSync(path, "utf8");
125
+ }
126
+ //# sourceMappingURL=safehouseCmux.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safehouseCmux.js","sourceRoot":"","sources":["../../../../packages/clearance/src/safehouseCmux.ts"],"names":[],"mappings":"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"}