claude-yes 1.135.0 → 1.136.1

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-BwsLxt1F.js";
2
+ import "./logger-CDIsZ-Pp.js";
3
+ import "./versionChecker-wZekjh0q.js";
4
+ import "./pidStore-fqXqTKkh.js";
5
+ import "./globalPidIndex-DlmmJlO8.js";
6
+ import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-D9x14LOU.js";
7
+
8
+ export { SUPPORTED_CLIS };
@@ -1,8 +1,8 @@
1
- import { t as CLIS_CONFIG } from "./ts-nfb-SXN0.js";
1
+ import { t as CLIS_CONFIG } from "./ts-BwsLxt1F.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-CF3oohXF.js.map
8
+ //# sourceMappingURL=SUPPORTED_CLIS-D9x14LOU.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-zdFbz1ST.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-CDzZhfJg.js";
4
+ import { i as versionString, n as displayVersion, r as getInstalledPackage, t as checkAndAutoUpdate } from "./versionChecker-wZekjh0q.js";
5
5
  import { argv } from "process";
6
6
  import { execFileSync, spawn } from "child_process";
7
7
  import ms from "ms";
@@ -480,7 +480,7 @@ function buildRustArgs(argv, cliFromScript, supportedClis) {
480
480
  const rawArg = process.argv[2];
481
481
  const managerCommands = !invokedCliName(process.argv);
482
482
  const isHelpFlag = rawArg === "-h" || rawArg === "--help";
483
- const { isSubcommand, runSubcommand, cmdHelp } = await import("./subcommands-D01v41kV.js");
483
+ const { isSubcommand, runSubcommand, cmdHelp } = await import("./subcommands-Dkoh93LI.js");
484
484
  if (isHelpFlag && process.argv.length === 3) {
485
485
  cmdHelp(managerCommands);
486
486
  process.exit(0);
@@ -513,7 +513,7 @@ if (config.useRust) {
513
513
  }
514
514
  }
515
515
  if (rustBinary) {
516
- const { SUPPORTED_CLIS } = await import("./SUPPORTED_CLIS-B7wli1t3.js");
516
+ const { SUPPORTED_CLIS } = await import("./SUPPORTED_CLIS-BAqEnz6_.js");
517
517
  const rustArgs = buildRustArgs(process.argv, config.cli, SUPPORTED_CLIS);
518
518
  if (config.verbose) {
519
519
  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-nfb-SXN0.js";
1
+ import { a as removeControlCharacters, i as AgentContext, n as agentYes, r as config, t as CLIS_CONFIG } from "./ts-BwsLxt1F.js";
2
2
  import "./logger-CDIsZ-Pp.js";
3
- import "./versionChecker-CDzZhfJg.js";
3
+ import "./versionChecker-wZekjh0q.js";
4
4
  import "./pidStore-fqXqTKkh.js";
5
5
  import "./globalPidIndex-DlmmJlO8.js";
6
6
 
@@ -1,9 +1,9 @@
1
- import "./ts-nfb-SXN0.js";
1
+ import "./ts-BwsLxt1F.js";
2
2
  import "./logger-CDIsZ-Pp.js";
3
- import "./versionChecker-CDzZhfJg.js";
3
+ import "./versionChecker-wZekjh0q.js";
4
4
  import "./pidStore-fqXqTKkh.js";
5
5
  import "./globalPidIndex-DlmmJlO8.js";
6
- import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-CF3oohXF.js";
6
+ import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-D9x14LOU.js";
7
7
  import { n as resolveSpawnCwd } from "./workspaceConfig-BCOqRBEW.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-CbeQYbBT.js.map
144
+ //# sourceMappingURL=schedule-BHQxJryR.js.map
@@ -1,13 +1,13 @@
1
- import "./ts-nfb-SXN0.js";
1
+ import "./ts-BwsLxt1F.js";
2
2
  import "./logger-CDIsZ-Pp.js";
3
- import { r as getInstalledPackage } from "./versionChecker-CDzZhfJg.js";
3
+ import { r as getInstalledPackage } from "./versionChecker-wZekjh0q.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-CF3oohXF.js";
8
+ import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-D9x14LOU.js";
9
9
  import "./remotes-PKKjfTI1.js";
10
- import { d as listRecords, g as resolveOne, i as controlCodeFromName, m as renderRawLog, p as readNotes, s as extractTaskCounts, x as writeToIpc, y as snapshotStatus } from "./subcommands-C4DD5Ihs.js";
10
+ import { d as listRecords, g as resolveOne, i as controlCodeFromName, m as renderRawLog, p as readNotes, s as extractTaskCounts, x as writeToIpc, y as snapshotStatus } from "./subcommands-MsZtpbY6.js";
11
11
  import yargs from "yargs";
12
12
  import { mkdir, open, readFile, stat, writeFile } from "fs/promises";
13
13
  import { homedir, hostname, userInfo } from "os";
@@ -1171,4 +1171,4 @@ Options:
1171
1171
 
1172
1172
  //#endregion
1173
1173
  export { cmdServe };
1174
- //# sourceMappingURL=serve-B2KHUFVC.js.map
1174
+ //# sourceMappingURL=serve-BIB4RhmY.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-B2KHUFVC.js");
35
+ const { cmdServe } = await import("./serve-BIB4RhmY.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-Cg2GKFP7.js.map
45
+ //# sourceMappingURL=setup-k1tlrF_v.js.map
@@ -2,6 +2,6 @@ import "./logger-CDIsZ-Pp.js";
2
2
  import "./globalPidIndex-DlmmJlO8.js";
3
3
  import "./configShared-C1C04bbq.js";
4
4
  import "./remotes-PKKjfTI1.js";
5
- import { _ as resolveReadWindow, a as cursorAbs, b as stopTipForCli, c as finalizedLines, d as listRecords, f as matchKeyword, g as resolveOne, h as renderRawLogLines, i as controlCodeFromName, l as isPidAlive, m as renderRawLog, n as READ_PAGE_DEFAULT, o as extractNeedsInput, p as readNotes, r as cmdHelp, s as extractTaskCounts, t as GRACEFUL_EXIT_COMMANDS, u as isSubcommand, v as runSubcommand, x as writeToIpc, y as snapshotStatus } from "./subcommands-C4DD5Ihs.js";
5
+ import { _ as resolveReadWindow, a as cursorAbs, b as stopTipForCli, c as finalizedLines, d as listRecords, f as matchKeyword, g as resolveOne, h as renderRawLogLines, i as controlCodeFromName, l as isPidAlive, m as renderRawLog, n as READ_PAGE_DEFAULT, o as extractNeedsInput, p as readNotes, r as cmdHelp, s as extractTaskCounts, t as GRACEFUL_EXIT_COMMANDS, u as isSubcommand, v as runSubcommand, x as writeToIpc, y as snapshotStatus } from "./subcommands-MsZtpbY6.js";
6
6
 
7
7
  export { cmdHelp, isSubcommand, runSubcommand };
@@ -533,15 +533,15 @@ async function runSubcommand(argv) {
533
533
  case "restart": return await cmdRestart(rest);
534
534
  case "note": return await cmdNote(rest);
535
535
  case "serve": {
536
- const { cmdServe } = await import("./serve-B2KHUFVC.js");
536
+ const { cmdServe } = await import("./serve-BIB4RhmY.js");
537
537
  return cmdServe(rest);
538
538
  }
539
539
  case "setup": {
540
- const { cmdSetup } = await import("./setup-Cg2GKFP7.js");
540
+ const { cmdSetup } = await import("./setup-k1tlrF_v.js");
541
541
  return cmdSetup(rest);
542
542
  }
543
543
  case "schedule": {
544
- const { cmdSchedule } = await import("./schedule-CbeQYbBT.js");
544
+ const { cmdSchedule } = await import("./schedule-BHQxJryR.js");
545
545
  return cmdSchedule(rest);
546
546
  }
547
547
  case "remote": {
@@ -2428,4 +2428,4 @@ async function cmdResultSet(rest) {
2428
2428
 
2429
2429
  //#endregion
2430
2430
  export { resolveReadWindow as _, cursorAbs as a, stopTipForCli as b, finalizedLines as c, listRecords as d, matchKeyword as f, resolveOne as g, renderRawLogLines as h, controlCodeFromName as i, isPidAlive as l, renderRawLog as m, READ_PAGE_DEFAULT as n, extractNeedsInput as o, readNotes as p, cmdHelp as r, extractTaskCounts as s, GRACEFUL_EXIT_COMMANDS as t, isSubcommand as u, runSubcommand as v, writeToIpc as x, snapshotStatus as y };
2431
- //# sourceMappingURL=subcommands-C4DD5Ihs.js.map
2431
+ //# sourceMappingURL=subcommands-MsZtpbY6.js.map
@@ -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-CDzZhfJg.js";
2
+ import { r as getInstalledPackage } from "./versionChecker-wZekjh0q.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";
@@ -1788,4 +1788,4 @@ function sleep(ms) {
1788
1788
 
1789
1789
  //#endregion
1790
1790
  export { removeControlCharacters as a, AgentContext as i, agentYes as n, config as r, CLIS_CONFIG as t };
1791
- //# sourceMappingURL=ts-nfb-SXN0.js.map
1791
+ //# sourceMappingURL=ts-BwsLxt1F.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.135.0";
10
+ var version = "1.136.1";
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-CDzZhfJg.js.map
218
+ //# sourceMappingURL=versionChecker-wZekjh0q.js.map
package/lab/ui/index.html CHANGED
@@ -2474,8 +2474,17 @@
2474
2474
  if (!cur || !term) return;
2475
2475
  let selR = null;
2476
2476
  try {
2477
+ // xterm 5.x: getSelectionPosition() returns { start:{x,y}, end:{x,y} }
2478
+ // with y = ABSOLUTE buffer-line index. Viewers connect at different times,
2479
+ // so their buffer-line indices don't line up — but the live-tail CONTENT
2480
+ // is identical, so "lines from the BOTTOM" (length-1 - y) IS a shared
2481
+ // coordinate. We emit fromBottom for rows; the receiver maps it back into
2482
+ // its own buffer + viewport. cols stay as-is.
2477
2483
  const s = term.getSelectionPosition && term.getSelectionPosition();
2478
- if (s) selR = `${s.startRow},${s.startColumn}-${s.endRow},${s.endColumn}`;
2484
+ if (s && s.start && s.end) {
2485
+ const last = (term.buffer.active.length || 1) - 1;
2486
+ selR = `${last - s.start.y},${s.start.x}-${last - s.end.y},${s.end.x}`;
2487
+ }
2479
2488
  } catch {}
2480
2489
  cur.tx
2481
2490
  .post("/api/presence", {
@@ -2520,16 +2529,36 @@
2520
2529
  for (const ch of String(s)) h = (h * 31 + ch.charCodeAt(0)) >>> 0;
2521
2530
  return h % 360;
2522
2531
  }
2523
- function mapPeerSel(selStr, pc, pr, mc, mr) {
2532
+ // Parse "fbRow,col-fbRow,col" where the rows are LINES-FROM-THE-BOTTOM of the
2533
+ // peer's buffer (a coordinate shared across viewers — see sendPresence).
2534
+ function parseSel(selStr) {
2524
2535
  const m = /^(\d+),(\d+)-(\d+),(\d+)$/.exec(selStr || "");
2525
2536
  if (!m) return null;
2526
- const mapR = (r) => (pr > 0 ? Math.round((r / pr) * mr) : r);
2527
- const mapC = (c) => (pc > 0 ? Math.round((c / pc) * mc) : c);
2528
- const r0 = mapR(+m[1]),
2529
- c0 = mapC(+m[2]),
2530
- r1 = mapR(+m[3]),
2531
- c1 = mapC(+m[4]);
2532
- return { r0: Math.min(r0, r1), c0: Math.min(c0, c1), r1: Math.max(r0, r1), c1: Math.max(c0, c1) };
2537
+ return { fa: +m[1], ca: +m[2], fb: +m[3], cb: +m[4] };
2538
+ }
2539
+ // Per-row spans for a peer selection, in OUR buffer rows. fromBottom is mapped
2540
+ // against OUR buffer bottom (myLast) so the same live-tail line matches even
2541
+ // though absolute indices differ between viewers; only the rows visible in our
2542
+ // viewport [vy, vy+myRows) are emitted (so a giant selection stays cheap). A
2543
+ // selection is per-row: top row cA→edge, full-width middle, bottom row 0→cB.
2544
+ // Columns are EXACT when widths match, proportional only as a fallback.
2545
+ function selSegments(sel, myLast, vy, myRows, peerCols, myCols) {
2546
+ const sameW = (peerCols || myCols) === myCols;
2547
+ const mapC = (c) => (sameW ? c : Math.round((c / (peerCols || myCols)) * myCols));
2548
+ let rA = myLast - sel.fa,
2549
+ rB = myLast - sel.fb,
2550
+ cA = sel.ca,
2551
+ cB = sel.cb;
2552
+ if (rA > rB) ([rA, rB] = [rB, rA]), ([cA, cB] = [cB, cA]); // rA = top row
2553
+ const segs = [];
2554
+ const from = Math.max(rA, vy),
2555
+ to = Math.min(rB, vy + myRows - 1);
2556
+ for (let r = from; r <= to; r++) {
2557
+ const a = r === rA ? cA : 0;
2558
+ const b = r === rB ? cB : myCols;
2559
+ segs.push({ row: r, a: Math.min(mapC(a), mapC(b)), b: Math.max(mapC(a), mapC(b)) });
2560
+ }
2561
+ return segs;
2533
2562
  }
2534
2563
  function renderPeerSelections() {
2535
2564
  const logEl = $("log");
@@ -2556,19 +2585,33 @@
2556
2585
  oy = sr.top - lr.top;
2557
2586
  const cw = sr.width / term.cols,
2558
2587
  ch = sr.height / term.rows;
2559
- ov.innerHTML = peers
2560
- .map((p) => {
2561
- const r = mapPeerSel(p.sel, p.cols || term.cols, p.rows || term.rows, term.cols, term.rows);
2562
- if (!r) return "";
2563
- const top = oy + r.r0 * ch,
2564
- left = ox + r.c0 * cw;
2565
- const w = Math.max(cw, (r.c1 - r.c0) * cw),
2566
- h = (r.r1 - r.r0 + 1) * ch;
2567
- const hue = hashHue(p.viewer);
2568
- const tag = esc(String(p.viewer).slice(0, 4)) + " " + (p.cols || "?") + "×" + (p.rows || "?");
2569
- return `<div class="peer-sel" style="--ph:${hue};top:${top.toFixed(1)}px;left:${left.toFixed(1)}px;width:${w.toFixed(1)}px;height:${h.toFixed(1)}px"><span class="peer-tag">${tag}</span></div>`;
2570
- })
2571
- .join("");
2588
+ // Anchor to OUR buffer: viewportY = top visible buffer line, myLast = bottom
2589
+ // buffer line. A peer's fromBottom row maps to our buffer row (myLast fb)
2590
+ // then to our viewport row (− viewportY). Re-rendered on term.onScroll so the
2591
+ // box tracks as we move through scrollback, and clips when out of view.
2592
+ const ba = term.buffer && term.buffer.active;
2593
+ const vy = (ba && ba.viewportY) || 0;
2594
+ const myLast = ((ba && ba.length) || 1) - 1;
2595
+ const html = [];
2596
+ for (const p of peers) {
2597
+ const sel = parseSel(p.sel);
2598
+ if (!sel) continue;
2599
+ const hue = hashHue(p.viewer);
2600
+ const tag = esc(String(p.viewer).slice(0, 4)) + " " + (p.cols || "?") + "×" + (p.rows || "?");
2601
+ let tagged = false;
2602
+ for (const seg of selSegments(sel, myLast, vy, term.rows, p.cols || term.cols, term.cols)) {
2603
+ const vr = seg.row - vy; // our buffer row → our viewport row
2604
+ if (vr < 0 || vr > term.rows - 1) continue; // safety (selSegments already clips)
2605
+ const left = ox + seg.a * cw;
2606
+ const w = Math.max(cw, (seg.b - seg.a) * cw);
2607
+ const top = oy + vr * ch;
2608
+ const tagEl = tagged ? "" : ((tagged = true), `<span class="peer-tag">${tag}</span>`);
2609
+ html.push(
2610
+ `<div class="peer-sel" style="--ph:${hue};top:${top.toFixed(1)}px;left:${left.toFixed(1)}px;width:${w.toFixed(1)}px;height:${ch.toFixed(1)}px">${tagEl}</div>`,
2611
+ );
2612
+ }
2613
+ }
2614
+ ov.innerHTML = html.join("");
2572
2615
  }
2573
2616
 
2574
2617
  // Wire the ⋯ overflow menu and restore the saved HUD preference.
@@ -3226,6 +3269,9 @@
3226
3269
  }).catch(() => {});
3227
3270
  };
3228
3271
  term.onResize(pushSize);
3272
+ // Scrolling through OUR scrollback moves the viewport over the buffer, so
3273
+ // re-place peer-selection overlays (they're anchored to absolute buffer rows).
3274
+ term.onScroll(() => renderPeerSelections());
3229
3275
  // Forward everything the terminal emits to the agent stdin (raw, no
3230
3276
  // trailing Enter): keystrokes, paste, and — when a TUI enables mouse
3231
3277
  // tracking — click / drag-motion / wheel as SGR mouse reports. onBinary
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-yes",
3
- "version": "1.135.0",
3
+ "version": "1.136.1",
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",
@@ -1,8 +0,0 @@
1
- import "./ts-nfb-SXN0.js";
2
- import "./logger-CDIsZ-Pp.js";
3
- import "./versionChecker-CDzZhfJg.js";
4
- import "./pidStore-fqXqTKkh.js";
5
- import "./globalPidIndex-DlmmJlO8.js";
6
- import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-CF3oohXF.js";
7
-
8
- export { SUPPORTED_CLIS };