@sechroom/cli 2026.7.16 → 2026.7.17

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/index.js +6 -3
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -3170,6 +3170,7 @@ function registerExecutor(program2) {
3170
3170
  "Register and operate a local Claude Code/Codex executor advertisement"
3171
3171
  );
3172
3172
  executor.command("install").description("Configure this checkout's harness to advertise itself as a WLP executor").option("--connector <id>", "Approved local-session ConnectorDefinition id").option("--instance-key <key>", "Stable executor identity (defaults to .sechroom/lane.json code-lane)").option("--runtime <kind>", "claude-code | codex").option("--surface <surface>", "claude | codex").option("--capability <key...>", "Capability operation keys claimed by this instance").option("--relay <id>", "Relay identity shared by sibling instances", "sechroom-cli-local").option("--subscription-name <name>", "SignalR delivery binding name", "executor-dispatch").option("--ttl <seconds>", "Advertisement TTL (30-600)", parseInteger, 600).option("--refresh-after <seconds>", "Minimum age before a hook refreshes", parseInteger, 40).option("-y, --yes", "Non-interactive: accept detected surface and lane defaults", false).option("--dry-run", "Show hook files without writing", false).action(async (opts, cmd) => {
3173
+ const globals = cmd.optsWithGlobals();
3173
3174
  const lane = readSem()?.values["code-lane"];
3174
3175
  const detected = detectHookSurfaces(process.cwd());
3175
3176
  let surface = opts.surface;
@@ -3214,9 +3215,11 @@ function registerExecutor(program2) {
3214
3215
  writeFileSync9(statePath, JSON.stringify(state, null, 2) + "\n");
3215
3216
  ensureStateDirIgnored(checkout);
3216
3217
  }
3217
- const surfaces = [surface];
3218
- for (const s of surfaces) {
3219
- const results = s === "claude" ? [installClaudeCommands(join11(checkout, ".claude"), CLAUDE_EXECUTOR_HOOKS, opts.dryRun)] : installCodexCommands(join11(checkout, ".codex"), CODEX_EXECUTOR_HOOKS, opts.dryRun);
3218
+ const configuredClaudeDirs = globals.claudeConfigDir || process.env.CLAUDE_CONFIG_DIR ? resolveClaudeTargets({ override: globals.claudeConfigDir }).map((target) => target.dir) : [join11(checkout, ".claude")];
3219
+ const configuredCodexHomes = globals.codexHome || process.env.CODEX_HOME ? resolveCodexHomes({ override: globals.codexHome }) : [join11(checkout, ".codex")];
3220
+ const hookTargets = surface === "claude" ? configuredClaudeDirs : configuredCodexHomes;
3221
+ for (const target of hookTargets) {
3222
+ const results = surface === "claude" ? [installClaudeCommands(target, CLAUDE_EXECUTOR_HOOKS, opts.dryRun)] : installCodexCommands(target, CODEX_EXECUTOR_HOOKS, opts.dryRun);
3220
3223
  for (const result of results) process.stderr.write(describe(result, opts.dryRun) + "\n");
3221
3224
  }
3222
3225
  warnIfSechroomNotOnPath();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sechroom/cli",
3
- "version": "2026.7.16",
3
+ "version": "2026.7.17",
4
4
  "description": "Sechroom CLI — a thin, generated client over the Sechroom HTTP API. An agent/human surface alongside MCP.",
5
5
  "type": "module",
6
6
  "license": "UNLICENSED",