claude-yes 1.151.2 → 1.152.0

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.
@@ -0,0 +1,8 @@
1
+ import "./ts-42ZzA2qb.js";
2
+ import "./logger-CDIsZ-Pp.js";
3
+ import "./versionChecker-BqnxJ5wI.js";
4
+ import "./pidStore-fqXqTKkh.js";
5
+ import "./globalPidIndex-DlmmJlO8.js";
6
+ import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-Cc_CQLNY.js";
7
+
8
+ export { SUPPORTED_CLIS };
@@ -1,8 +1,8 @@
1
- import { t as CLIS_CONFIG } from "./ts-BI55YX0a.js";
1
+ import { t as CLIS_CONFIG } from "./ts-42ZzA2qb.js";
2
2
 
3
3
  //#region ts/SUPPORTED_CLIS.ts
4
4
  const SUPPORTED_CLIS = Object.keys(CLIS_CONFIG);
5
5
 
6
6
  //#endregion
7
7
  export { SUPPORTED_CLIS as t };
8
- //# sourceMappingURL=SUPPORTED_CLIS-gCwkPSj-.js.map
8
+ //# sourceMappingURL=SUPPORTED_CLIS-Cc_CQLNY.js.map
package/dist/cli.js CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env bun
2
2
  import { t as invokedCliName } from "./invokedCli-uqM2YYA7.js";
3
3
  import { n as logger } from "./logger-CDIsZ-Pp.js";
4
- import { i as versionString, n as displayVersion, r as getInstalledPackage, t as checkAndAutoUpdate } from "./versionChecker-DBn23Rn8.js";
4
+ import { i as versionString, n as displayVersion, r as getInstalledPackage, t as checkAndAutoUpdate } from "./versionChecker-BqnxJ5wI.js";
5
5
  import { argv } from "process";
6
6
  import { execFileSync, spawn } from "child_process";
7
7
  import ms from "ms";
@@ -470,7 +470,7 @@ function buildRustArgs(argv, cliFromScript, supportedClis) {
470
470
  const rawArg = process.argv[2];
471
471
  const managerCommands = !invokedCliName(process.argv);
472
472
  const isHelpFlag = rawArg === "-h" || rawArg === "--help";
473
- const { isSubcommand, runSubcommand, cmdHelp } = await import("./subcommands-gEF2buIZ.js");
473
+ const { isSubcommand, runSubcommand, cmdHelp } = await import("./subcommands-DCXK2hqQ.js");
474
474
  if (isHelpFlag && process.argv.length === 3) {
475
475
  cmdHelp(managerCommands);
476
476
  process.exit(0);
@@ -503,7 +503,7 @@ if (config.useRust) {
503
503
  }
504
504
  }
505
505
  if (rustBinary) {
506
- const { SUPPORTED_CLIS } = await import("./SUPPORTED_CLIS-Cb-mL5un.js");
506
+ const { SUPPORTED_CLIS } = await import("./SUPPORTED_CLIS-3sP7QMdT.js");
507
507
  const rustArgs = buildRustArgs(process.argv, config.cli, SUPPORTED_CLIS);
508
508
  if (config.verbose) {
509
509
  console.log(`[rust] Using binary: ${rustBinary}`);
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
- import { a as removeControlCharacters, i as AgentContext, n as agentYes, r as config, t as CLIS_CONFIG } from "./ts-BI55YX0a.js";
1
+ import { a as removeControlCharacters, i as AgentContext, n as agentYes, r as config, t as CLIS_CONFIG } from "./ts-42ZzA2qb.js";
2
2
  import "./logger-CDIsZ-Pp.js";
3
- import "./versionChecker-DBn23Rn8.js";
3
+ import "./versionChecker-BqnxJ5wI.js";
4
4
  import "./pidStore-fqXqTKkh.js";
5
5
  import "./globalPidIndex-DlmmJlO8.js";
6
6
 
@@ -1,9 +1,9 @@
1
- import "./ts-BI55YX0a.js";
1
+ import "./ts-42ZzA2qb.js";
2
2
  import "./logger-CDIsZ-Pp.js";
3
- import "./versionChecker-DBn23Rn8.js";
3
+ import "./versionChecker-BqnxJ5wI.js";
4
4
  import "./pidStore-fqXqTKkh.js";
5
5
  import "./globalPidIndex-DlmmJlO8.js";
6
- import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-gCwkPSj-.js";
6
+ import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-Cc_CQLNY.js";
7
7
  import { i as resolveSpawnCwd } from "./workspaceConfig-B9VX8tVO.js";
8
8
  import { createHash } from "node:crypto";
9
9
 
@@ -141,4 +141,4 @@ async function cmdSchedule(rest) {
141
141
 
142
142
  //#endregion
143
143
  export { cmdSchedule };
144
- //# sourceMappingURL=schedule-B-GRqelj.js.map
144
+ //# sourceMappingURL=schedule-C0IBT9Dv.js.map
@@ -1,16 +1,16 @@
1
- import "./ts-BI55YX0a.js";
1
+ import "./ts-42ZzA2qb.js";
2
2
  import "./logger-CDIsZ-Pp.js";
3
- import { r as getInstalledPackage } from "./versionChecker-DBn23Rn8.js";
3
+ import { r as getInstalledPackage } from "./versionChecker-BqnxJ5wI.js";
4
4
  import "./pidStore-fqXqTKkh.js";
5
5
  import { a as updateGlobalPidStatus } from "./globalPidIndex-DlmmJlO8.js";
6
6
  import { t as pgidForWrapper } from "./reaper-C-eWAxIj.js";
7
7
  import "./configShared-C1C04bbq.js";
8
- import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-gCwkPSj-.js";
8
+ import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-Cc_CQLNY.js";
9
9
  import "./e2e-ClOI_aqV.js";
10
10
  import "./webrtcLink-BWhuA74k.js";
11
11
  import "./remotes-qK6uozO4.js";
12
12
  import { i as resolveSpawnCwd, r as isProvisionAllowed, t as getProvisionRoot } from "./workspaceConfig-B9VX8tVO.js";
13
- import { C as snapshotStatus, T as writeToIpc, _ as readPtysize, b as resolveOne, c as extractTaskCounts, g as readNotes, i as controlCodeFromName, m as listRecords, o as deriveLiveStatus, v as renderRawLog } from "./subcommands-BnB6rGk_.js";
13
+ import { C as snapshotStatus, T as writeToIpc, _ as readPtysize, b as resolveOne, c as extractTaskCounts, g as readNotes, i as controlCodeFromName, m as listRecords, o as deriveLiveStatus, v as renderRawLog } from "./subcommands-D-zxJ5pJ.js";
14
14
  import yargs from "yargs";
15
15
  import { mkdir, open, readFile, stat, writeFile } from "fs/promises";
16
16
  import { homedir, hostname, userInfo } from "os";
@@ -1265,4 +1265,4 @@ Options:
1265
1265
 
1266
1266
  //#endregion
1267
1267
  export { cmdServe };
1268
- //# sourceMappingURL=serve-DFrNHFxO.js.map
1268
+ //# sourceMappingURL=serve-BQUBdYgC.js.map
@@ -32,7 +32,7 @@ async function cmdSetup(rest) {
32
32
  if (!existsSync(abs)) process.stderr.write(` note: that directory doesn't exist yet — create it, or agents spawned there will fail\n`);
33
33
  if (noShare) return 0;
34
34
  process.stdout.write(`\nsharing this machine to agent-yes.com…\n`);
35
- const { cmdServe } = await import("./serve-DFrNHFxO.js");
35
+ const { cmdServe } = await import("./serve-BQUBdYgC.js");
36
36
  return cmdServe([
37
37
  "install",
38
38
  "--share",
@@ -42,4 +42,4 @@ async function cmdSetup(rest) {
42
42
 
43
43
  //#endregion
44
44
  export { cmdSetup };
45
- //# sourceMappingURL=setup-CLxbP7AC.js.map
45
+ //# sourceMappingURL=setup-BNxr7dVS.js.map
@@ -554,15 +554,15 @@ async function runSubcommand(argv) {
554
554
  case "restart": return await cmdRestart(rest);
555
555
  case "note": return await cmdNote(rest);
556
556
  case "serve": {
557
- const { cmdServe } = await import("./serve-DFrNHFxO.js");
557
+ const { cmdServe } = await import("./serve-BQUBdYgC.js");
558
558
  return cmdServe(rest);
559
559
  }
560
560
  case "setup": {
561
- const { cmdSetup } = await import("./setup-CLxbP7AC.js");
561
+ const { cmdSetup } = await import("./setup-BNxr7dVS.js");
562
562
  return cmdSetup(rest);
563
563
  }
564
564
  case "schedule": {
565
- const { cmdSchedule } = await import("./schedule-B-GRqelj.js");
565
+ const { cmdSchedule } = await import("./schedule-C0IBT9Dv.js");
566
566
  return cmdSchedule(rest);
567
567
  }
568
568
  case "remote": {
@@ -1050,23 +1050,22 @@ async function cmdLs(rest) {
1050
1050
  }).option("all-remotes", {
1051
1051
  type: "boolean",
1052
1052
  default: false,
1053
- description: "Include agents from all configured remotes (remotes.yaml)"
1053
+ description: "Include agents from all configured remotes (now the default — kept for explicitness)"
1054
+ }).option("local", {
1055
+ type: "boolean",
1056
+ default: false,
1057
+ description: "Only this machine's agents — skip configured remotes (the pre-default behaviour)"
1054
1058
  }).option("help", {
1055
1059
  alias: "h",
1056
1060
  type: "boolean",
1057
1061
  default: false,
1058
1062
  description: "Show this help"
1059
- }).example("ay ls", "list running agents").example("ay ls --all-remotes", "include all configured remote machines").example("ay ls --all", "include exited agents").example("ay ls --json", "machine-readable output").example("ay ls --watch", "stream state transitions for a whole fan-out as NDJSON").example("ay ls symval", "filter by cwd/prompt keyword").help(false).version(false).exitProcess(false);
1063
+ }).example("ay ls", "list local + all configured remotes").example("ay ls --local", "only this machine's agents").example("ay ls --all", "include exited agents").example("ay ls --json", "machine-readable output").example("ay ls --watch", "stream state transitions for a whole fan-out as NDJSON").example("ay ls symval", "filter by cwd/prompt keyword").help(false).version(false).exitProcess(false);
1060
1064
  const argv = await y.parseAsync();
1061
1065
  if (argv.help || argv.h) {
1062
1066
  process.stdout.write(await y.getHelp() + "\n");
1063
1067
  return 0;
1064
1068
  }
1065
- if (argv["all-remotes"]) return runAllRemotesLs({
1066
- all: argv.all,
1067
- active: argv.active,
1068
- keyword: argv._[0] !== void 0 ? String(argv._[0]) : void 0
1069
- });
1070
1069
  const keyword = argv._[0] !== void 0 ? String(argv._[0]) : void 0;
1071
1070
  if (keyword) {
1072
1071
  const remote = await resolveRemoteSpec(keyword);
@@ -1114,6 +1113,14 @@ async function cmdLs(rest) {
1114
1113
  });
1115
1114
  return 0;
1116
1115
  }
1116
+ if (!argv.local && !opts.json && !argv.latest) {
1117
+ const remotes = await readRemotes();
1118
+ if (argv["all-remotes"] || remotes.size > 0) return runAllRemotesLs({
1119
+ all: argv.all,
1120
+ active: argv.active,
1121
+ keyword
1122
+ });
1123
+ }
1117
1124
  const records = await listRecords(keyword, opts);
1118
1125
  if (opts.json) {
1119
1126
  const enriched = await Promise.all(records.map(async (r) => ({
@@ -2619,4 +2626,4 @@ async function cmdResultSet(rest) {
2619
2626
 
2620
2627
  //#endregion
2621
2628
  export { snapshotStatus as C, runSubcommand as S, writeToIpc as T, readPtysize as _, cursorAbs as a, resolveOne as b, extractTaskCounts as c, isExitRequest as d, isPidAlive as f, readNotes as g, matchKeyword as h, controlCodeFromName as i, finalizedLines as l, listRecords as m, READ_PAGE_DEFAULT as n, deriveLiveStatus as o, isSubcommand as p, cmdHelp as r, extractNeedsInput as s, GRACEFUL_EXIT_COMMANDS as t, isAgentStuck as u, renderRawLog as v, stopTipForCli as w, resolveReadWindow as x, renderRawLogLines as y };
2622
- //# sourceMappingURL=subcommands-BnB6rGk_.js.map
2629
+ //# sourceMappingURL=subcommands-D-zxJ5pJ.js.map
@@ -4,6 +4,6 @@ import "./configShared-C1C04bbq.js";
4
4
  import "./e2e-ClOI_aqV.js";
5
5
  import "./webrtcLink-BWhuA74k.js";
6
6
  import "./remotes-qK6uozO4.js";
7
- import { C as snapshotStatus, S as runSubcommand, T as writeToIpc, _ as readPtysize, a as cursorAbs, b as resolveOne, c as extractTaskCounts, d as isExitRequest, f as isPidAlive, g as readNotes, h as matchKeyword, i as controlCodeFromName, l as finalizedLines, m as listRecords, n as READ_PAGE_DEFAULT, o as deriveLiveStatus, p as isSubcommand, r as cmdHelp, s as extractNeedsInput, t as GRACEFUL_EXIT_COMMANDS, u as isAgentStuck, v as renderRawLog, w as stopTipForCli, x as resolveReadWindow, y as renderRawLogLines } from "./subcommands-BnB6rGk_.js";
7
+ import { C as snapshotStatus, S as runSubcommand, T as writeToIpc, _ as readPtysize, a as cursorAbs, b as resolveOne, c as extractTaskCounts, d as isExitRequest, f as isPidAlive, g as readNotes, h as matchKeyword, i as controlCodeFromName, l as finalizedLines, m as listRecords, n as READ_PAGE_DEFAULT, o as deriveLiveStatus, p as isSubcommand, r as cmdHelp, s as extractNeedsInput, t as GRACEFUL_EXIT_COMMANDS, u as isAgentStuck, v as renderRawLog, w as stopTipForCli, x as resolveReadWindow, y as renderRawLogLines } from "./subcommands-D-zxJ5pJ.js";
8
8
 
9
9
  export { cmdHelp, isSubcommand, runSubcommand };
@@ -1,5 +1,5 @@
1
1
  import { n as logger, t as addTransport } from "./logger-CDIsZ-Pp.js";
2
- import { r as getInstalledPackage } from "./versionChecker-DBn23Rn8.js";
2
+ import { r as getInstalledPackage } from "./versionChecker-BqnxJ5wI.js";
3
3
  import { t as agentYesHome } from "./agentYesHome-_eJa3DaX.js";
4
4
  import { i as shouldUseLock, r as releaseLock, t as acquireLock } from "./runningLock-V4qvXgAw.js";
5
5
  import { t as PidStore } from "./pidStore-fqXqTKkh.js";
@@ -1802,4 +1802,4 @@ function sleep(ms) {
1802
1802
 
1803
1803
  //#endregion
1804
1804
  export { removeControlCharacters as a, AgentContext as i, agentYes as n, config as r, CLIS_CONFIG as t };
1805
- //# sourceMappingURL=ts-BI55YX0a.js.map
1805
+ //# sourceMappingURL=ts-42ZzA2qb.js.map
@@ -7,7 +7,7 @@ import { fileURLToPath } from "url";
7
7
 
8
8
  //#region package.json
9
9
  var name = "claude-yes";
10
- var version = "1.151.2";
10
+ var version = "1.152.0";
11
11
 
12
12
  //#endregion
13
13
  //#region ts/versionChecker.ts
@@ -215,4 +215,4 @@ async function displayVersion() {
215
215
 
216
216
  //#endregion
217
217
  export { versionString as i, displayVersion as n, getInstalledPackage as r, checkAndAutoUpdate as t };
218
- //# sourceMappingURL=versionChecker-DBn23Rn8.js.map
218
+ //# sourceMappingURL=versionChecker-BqnxJ5wI.js.map
package/lab/ui/index.html CHANGED
@@ -3794,16 +3794,31 @@
3794
3794
  }, 120);
3795
3795
  }
3796
3796
 
3797
- // Auto-derive a branch name from the typed prompt for the Cmd+K fork action
3798
- // (editable at launch). e.g. "fix the auth bug" → "fork/fix-the-auth-bug".
3799
- function forkSlug(q) {
3800
- const s = q
3797
+ // git-safe branch slug: lowercase, non-alnum "-", trimmed, capped.
3798
+ function branchSlug(s) {
3799
+ return (s || "")
3801
3800
  .toLowerCase()
3802
3801
  .replace(/[^a-z0-9]+/g, "-")
3803
3802
  .replace(/^-+|-+$/g, "")
3804
3803
  .slice(0, 40)
3805
3804
  .replace(/-+$/, "");
3806
- return "fork/" + (s || "wip");
3805
+ }
3806
+
3807
+ // Auto-derive a branch name from the typed prompt for the Cmd+K fork action
3808
+ // (editable at launch). Forks off a default branch get the flat `fork/`
3809
+ // namespace, e.g. main + "fix the auth bug" → "fork/fix-the-auth-bug".
3810
+ // Forks off any other branch dash-prefix the source to show lineage, so
3811
+ // "def" forked from "feat-abc" reads as a stacked branch "feat-abc-def".
3812
+ // We dash-join (not slash-nest "feat-abc/def") on purpose: git stores refs
3813
+ // as files, so `feat-abc/def` can't be created while `feat-abc` still
3814
+ // exists (D/F conflict) — and the source branch is normally still live when
3815
+ // we fork from it. Any slashes in the source (e.g. a prior "fork/x") are
3816
+ // flattened to dashes so the new ref stays a single node.
3817
+ function forkSlug(q, srcBranch) {
3818
+ const topic = branchSlug(q) || "wip";
3819
+ const base = branchSlug(srcBranch);
3820
+ if (!base || /^(main|master)$/.test((srcBranch || "").trim())) return "fork/" + topic;
3821
+ return base + "-" + topic;
3807
3822
  }
3808
3823
 
3809
3824
  function renderOmni() {
@@ -3868,7 +3883,8 @@
3868
3883
  if (q) {
3869
3884
  omniRows.push({ kind: "spawn" });
3870
3885
  const anchor = omniAnchor();
3871
- if (anchor?.cwd) omniRows.push({ kind: "fork", branch: forkSlug(q) });
3886
+ if (anchor?.cwd)
3887
+ omniRows.push({ kind: "fork", branch: forkSlug(q, anchor?.git?.branch) });
3872
3888
  omniRows.push({ kind: "spawncwd" });
3873
3889
  }
3874
3890
  omniIdx = 0;
@@ -3947,7 +3963,10 @@
3947
3963
  }
3948
3964
  if (row && row.kind === "fork") {
3949
3965
  // Editable at launch (auto-slug is the default); carries the anchor's WIP.
3950
- const branch = prompt("Fork to a new branch (carries your uncommitted work):", row.branch);
3966
+ const branch = prompt(
3967
+ "Fork to a new branch (carries your uncommitted work):",
3968
+ row.branch,
3969
+ );
3951
3970
  if (!branch || !branch.trim()) return; // cancelled — leave the omnibox open
3952
3971
  closeOmni(false);
3953
3972
  await spawnAndSelect(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-yes",
3
- "version": "1.151.2",
3
+ "version": "1.152.0",
4
4
  "description": "A wrapper tool that automates interactions with various AI CLI tools by automatically handling common prompts and responses.",
5
5
  "keywords": [
6
6
  "ai",
@@ -42,10 +42,10 @@
42
42
  "glm-yes": "./dist/glm-yes.js",
43
43
  "grok-yes": "./dist/grok-yes.js",
44
44
  "opencode-yes": "./dist/opencode-yes.js",
45
- "qwen-yes": "./dist/qwen-yes.js",
46
- "pi-yes": "./dist/pi-yes.js",
47
45
  "openrouter-yes": "./dist/openrouter-yes.js",
48
- "orcy": "./dist/orcy.js"
46
+ "orcy": "./dist/orcy.js",
47
+ "pi-yes": "./dist/pi-yes.js",
48
+ "qwen-yes": "./dist/qwen-yes.js"
49
49
  },
50
50
  "directories": {
51
51
  "doc": "docs"
@@ -521,6 +521,34 @@ describe("subcommands.cmdLs human table", () => {
521
521
  await rm(otherCwd, { recursive: true, force: true }).catch(() => null);
522
522
  }
523
523
  });
524
+
525
+ it("--local forces the rich local-only table (AGE column, no HOST column)", async () => {
526
+ const { runSubcommand } = await loadModule();
527
+ const { appendGlobalPid } = await import("./globalPidIndex.ts");
528
+ await appendGlobalPid({
529
+ pid: process.pid,
530
+ cli: "claude",
531
+ prompt: "local only please",
532
+ cwd: process.cwd(),
533
+ log_file: null,
534
+ status: "active",
535
+ exit_code: null,
536
+ exit_reason: null,
537
+ started_at: Date.now() - 5000,
538
+ });
539
+ const cap = captureStdout();
540
+ try {
541
+ const code = await runSubcommand(["bun", "cli.js", "ls", "--local"]);
542
+ expect(code).toBe(0);
543
+ } finally {
544
+ cap.restore();
545
+ }
546
+ // The local table has an AGE column under NOTE/PROMPT; the aggregated remote
547
+ // table has a HOST column and no AGE. --local must pick the former.
548
+ expect(cap.text).toMatch(/PID\s+CLI\s+STATUS\s+AGE\s+CWD\s+NOTE\/PROMPT/);
549
+ expect(cap.text).not.toMatch(/^HOST\s/m);
550
+ expect(cap.text).toMatch(new RegExp(`${process.pid}\\s`));
551
+ });
524
552
  });
525
553
 
526
554
  describe("subcommands.cmdRead renders raw log via xterm-headless", () => {
package/ts/subcommands.ts CHANGED
@@ -1052,11 +1052,18 @@ async function cmdLs(rest: string[]): Promise<number> {
1052
1052
  .option("all-remotes", {
1053
1053
  type: "boolean",
1054
1054
  default: false,
1055
- description: "Include agents from all configured remotes (remotes.yaml)",
1055
+ description:
1056
+ "Include agents from all configured remotes (now the default — kept for explicitness)",
1057
+ })
1058
+ .option("local", {
1059
+ type: "boolean",
1060
+ default: false,
1061
+ description:
1062
+ "Only this machine's agents — skip configured remotes (the pre-default behaviour)",
1056
1063
  })
1057
1064
  .option("help", { alias: "h", type: "boolean", default: false, description: "Show this help" })
1058
- .example("ay ls", "list running agents")
1059
- .example("ay ls --all-remotes", "include all configured remote machines")
1065
+ .example("ay ls", "list local + all configured remotes")
1066
+ .example("ay ls --local", "only this machine's agents")
1060
1067
  .example("ay ls --all", "include exited agents")
1061
1068
  .example("ay ls --json", "machine-readable output")
1062
1069
  .example("ay ls --watch", "stream state transitions for a whole fan-out as NDJSON")
@@ -1072,15 +1079,9 @@ async function cmdLs(rest: string[]): Promise<number> {
1072
1079
  return 0;
1073
1080
  }
1074
1081
 
1075
- if (argv["all-remotes"]) {
1076
- return runAllRemotesLs({
1077
- all: argv.all,
1078
- active: argv.active,
1079
- keyword: argv._[0] !== undefined ? String(argv._[0]) : undefined,
1080
- });
1081
- }
1082
-
1083
1082
  const keyword = argv._[0] !== undefined ? String(argv._[0]) : undefined;
1083
+ // A keyword naming a specific remote (alias or token@host:port) → just that
1084
+ // remote, regardless of the local/all-remotes default below.
1084
1085
  if (keyword) {
1085
1086
  const remote = await resolveRemoteSpec(keyword);
1086
1087
  if (remote) return runRemoteLs(remote, { all: argv.all, active: argv.active });
@@ -1128,6 +1129,20 @@ async function cmdLs(rest: string[]): Promise<number> {
1128
1129
  return 0;
1129
1130
  }
1130
1131
 
1132
+ // The human table now spans local + every configured remote by DEFAULT (one
1133
+ // fleet view across machines). `--local` opts back to this machine only, and
1134
+ // a single-machine box (no remotes configured) keeps the richer local-only
1135
+ // table automatically. The programmatic paths above (--watch) and the --json
1136
+ // path below stay LOCAL-only on purpose: orchestrators parse them and expect
1137
+ // this box's pids, and the aggregated view is a flat human table without the
1138
+ // forest/notes/badges those consumers don't need.
1139
+ if (!argv.local && !opts.json && !argv.latest) {
1140
+ const remotes = await readRemotes();
1141
+ if (argv["all-remotes"] || remotes.size > 0) {
1142
+ return runAllRemotesLs({ all: argv.all, active: argv.active, keyword });
1143
+ }
1144
+ }
1145
+
1131
1146
  const records = await listRecords(keyword, opts);
1132
1147
 
1133
1148
  if (opts.json) {
@@ -117,7 +117,9 @@ class WebRtcConn {
117
117
  const keys = await deriveDirKeys(this.link.s, this.th);
118
118
  this.keyC2H = keys.keyC2H;
119
119
  this.keyH2C = keys.keyH2C;
120
- this.ws.send(JSON.stringify({ type: "answer", to: this.hostPeer, sdp: pc.localDescription.sdp }));
120
+ this.ws.send(
121
+ JSON.stringify({ type: "answer", to: this.hostPeer, sdp: pc.localDescription.sdp }),
122
+ );
121
123
  } else if (m.type === "candidate" && this.pc) {
122
124
  await this.pc.addIceCandidate(m.candidate).catch(() => {});
123
125
  }
@@ -146,7 +148,11 @@ class WebRtcConn {
146
148
  if (!this.confirmed) {
147
149
  if (!env || env.t !== "confirm") return;
148
150
  if (typeof env.nonce === "string" && !this.confirmedOut) {
149
- await this.enqueueSeal(FLAG_CONFIRM, { t: "confirm", nonce: this.myNonce, echo: env.nonce });
151
+ await this.enqueueSeal(FLAG_CONFIRM, {
152
+ t: "confirm",
153
+ nonce: this.myNonce,
154
+ echo: env.nonce,
155
+ });
150
156
  this.confirmedOut = true;
151
157
  }
152
158
  if (env.echo && env.echo === this.myNonce) this.confirmedIn = true;
@@ -1,8 +0,0 @@
1
- import "./ts-BI55YX0a.js";
2
- import "./logger-CDIsZ-Pp.js";
3
- import "./versionChecker-DBn23Rn8.js";
4
- import "./pidStore-fqXqTKkh.js";
5
- import "./globalPidIndex-DlmmJlO8.js";
6
- import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-gCwkPSj-.js";
7
-
8
- export { SUPPORTED_CLIS };