agent-yes 1.265.2 → 1.265.3

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 (30) hide show
  1. package/dist/{SUPPORTED_CLIS-BVRthdk2.js → SUPPORTED_CLIS-DnYyo_km.js} +3 -3
  2. package/dist/{SUPPORTED_CLIS-B40EBgOm.js → SUPPORTED_CLIS-X3jH37iY.js} +2 -2
  3. package/dist/{agentShare-Cxe8gK2j.js → agentShare-D8Qx06xK.js} +2 -2
  4. package/dist/{callback-CmlTGa8e.js → callback-C5A5zDzb.js} +3 -3
  5. package/dist/{callback-Dl05jPAu.js → callback-CByNygd_.js} +2 -2
  6. package/dist/cli.js +7 -7
  7. package/dist/{cwdDeprecation-D7Uigxoz.js → cwdPassthroughHint-DDVkhBiD.js} +4 -4
  8. package/dist/index.js +2 -2
  9. package/dist/{notifyDaemon-DWx6urRu.js → notifyDaemon-DuKvOHJJ.js} +2 -2
  10. package/dist/{rustBinary-CvWXl20J.js → rustBinary-CkTiZVJ4.js} +2 -2
  11. package/dist/{schedule-BFWdjYYp.js → schedule-R6C567wG.js} +4 -4
  12. package/dist/{serve-BQz1bKiO.js → serve-bXCIgnq_.js} +17 -17
  13. package/dist/{setup-DtSRXhiX.js → setup-CtUFv2Se.js} +2 -2
  14. package/dist/{subcommands-eh7jK76L.js → subcommands-Cbhtldub.js} +13 -13
  15. package/dist/{subcommands-CUlWeUxI.js → subcommands-CnARtyVR.js} +1 -1
  16. package/dist/{terminal-DYTP7g2z.js → terminal-B8jbz_HG.js} +2 -2
  17. package/dist/trayApp-Bx0qlt3A.js +5 -0
  18. package/dist/{trayApp-CT6GoAHN.js → trayApp-CZR7Thm6.js} +2 -2
  19. package/dist/{ts-CbrFfYfr.js → ts-ZKWh7obB.js} +2 -2
  20. package/dist/{versionChecker-YtoKdWEP.js → versionChecker-C6RmYXss.js} +2 -2
  21. package/dist/{widget-CtuZjthg.js → widget-BOcpTCTQ.js} +3 -3
  22. package/dist/{ws-BnE_3k-P.js → ws-C9NmPMjN.js} +2 -2
  23. package/dist/{ws-CkKu7Ssn.js → ws-CPJxObp_.js} +2 -2
  24. package/examples/spawn-notify.sh +3 -3
  25. package/package.json +1 -1
  26. package/ts/cli.ts +2 -2
  27. package/ts/{cwdDeprecation.spec.ts → cwdPassthroughHint.spec.ts} +13 -13
  28. package/ts/{cwdDeprecation.ts → cwdPassthroughHint.ts} +1 -1
  29. package/ts/ws.ts +4 -5
  30. package/dist/trayApp-D8S-ex3p.js +0 -5
@@ -1,11 +1,11 @@
1
1
  import "./logger-CDIsZ-Pp.js";
2
- import "./versionChecker-YtoKdWEP.js";
3
- import "./ts-CbrFfYfr.js";
2
+ import "./versionChecker-C6RmYXss.js";
3
+ import "./ts-ZKWh7obB.js";
4
4
  import "./todoAutomation-BQRW614S.js";
5
5
  import "./JsonlStore-CPGIR0Wy.js";
6
6
  import "./globalPidIndex-Dq4KY2IV.js";
7
7
  import "./pidStore-DJqSZPJi.js";
8
8
  import "./messageLog-BYFwioFY.js";
9
- import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-B40EBgOm.js";
9
+ import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-X3jH37iY.js";
10
10
 
11
11
  export { SUPPORTED_CLIS };
@@ -1,8 +1,8 @@
1
- import { t as CLIS_CONFIG } from "./ts-CbrFfYfr.js";
1
+ import { t as CLIS_CONFIG } from "./ts-ZKWh7obB.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-B40EBgOm.js.map
8
+ //# sourceMappingURL=SUPPORTED_CLIS-X3jH37iY.js.map
@@ -3,7 +3,7 @@ import "./globalPidIndex-Dq4KY2IV.js";
3
3
  import "./messageLog-BYFwioFY.js";
4
4
  import "./e2e-CUMZC53I.js";
5
5
  import "./configShared-DtHMBCl7.js";
6
- import { R as resolveOne } from "./subcommands-eh7jK76L.js";
6
+ import { R as resolveOne } from "./subcommands-Cbhtldub.js";
7
7
  import "./webrtcLink-CS4D-3G1.js";
8
8
  import "./remotes-Cn-wszbK.js";
9
9
  import { a as startShare } from "./share-B-e_9WBx.js";
@@ -229,4 +229,4 @@ function transformEvent(rawEvent, agentId, forwarded) {
229
229
 
230
230
  //#endregion
231
231
  export { createScopedShare, listShares, revokeAllShares, revokeShare };
232
- //# sourceMappingURL=agentShare-Cxe8gK2j.js.map
232
+ //# sourceMappingURL=agentShare-D8Qx06xK.js.map
@@ -1,5 +1,5 @@
1
1
  import { t as agentYesHome } from "./agentYesHome-CtmsY6I-.js";
2
- import { R as resolveOne } from "./subcommands-eh7jK76L.js";
2
+ import { R as resolveOne } from "./subcommands-Cbhtldub.js";
3
3
  import { a as mintCapability, o as parseExpires } from "./callbackCore-Cg3Ye0ZS.js";
4
4
  import { randomBytes } from "node:crypto";
5
5
  import { chmodSync, readFileSync, renameSync, writeFileSync } from "node:fs";
@@ -72,7 +72,7 @@ async function resolveBase(flag) {
72
72
  if (flag) return flag;
73
73
  if (process.env.AGENT_YES_CALLBACK_BASE) return process.env.AGENT_YES_CALLBACK_BASE;
74
74
  try {
75
- const { resolveLocalServeUrl } = await import("./serve-BQz1bKiO.js");
75
+ const { resolveLocalServeUrl } = await import("./serve-bXCIgnq_.js");
76
76
  const url = await resolveLocalServeUrl();
77
77
  if (url) return url;
78
78
  } catch {}
@@ -187,4 +187,4 @@ async function cmdCallback(rest) {
187
187
 
188
188
  //#endregion
189
189
  export { loadOrCreateCallbackSecret as i, isCallbackRevoked as n, loadCallbackSecretReadOnly as r, cmdCallback as t };
190
- //# sourceMappingURL=callback-CmlTGa8e.js.map
190
+ //# sourceMappingURL=callback-C5A5zDzb.js.map
@@ -3,10 +3,10 @@ import "./globalPidIndex-Dq4KY2IV.js";
3
3
  import "./messageLog-BYFwioFY.js";
4
4
  import "./e2e-CUMZC53I.js";
5
5
  import "./configShared-DtHMBCl7.js";
6
- import "./subcommands-eh7jK76L.js";
6
+ import "./subcommands-Cbhtldub.js";
7
7
  import "./webrtcLink-CS4D-3G1.js";
8
8
  import "./remotes-Cn-wszbK.js";
9
9
  import "./callbackCore-Cg3Ye0ZS.js";
10
- import { i as loadOrCreateCallbackSecret, n as isCallbackRevoked, r as loadCallbackSecretReadOnly, t as cmdCallback } from "./callback-CmlTGa8e.js";
10
+ import { i as loadOrCreateCallbackSecret, n as isCallbackRevoked, r as loadCallbackSecretReadOnly, t as cmdCallback } from "./callback-C5A5zDzb.js";
11
11
 
12
12
  export { cmdCallback };
package/dist/cli.js CHANGED
@@ -1,8 +1,8 @@
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, t as checkAndAutoUpdate } from "./versionChecker-YtoKdWEP.js";
5
- import { r as getRustBinary } from "./rustBinary-CvWXl20J.js";
4
+ import { i as versionString, n as displayVersion, t as checkAndAutoUpdate } from "./versionChecker-C6RmYXss.js";
5
+ import { r as getRustBinary } from "./rustBinary-CkTiZVJ4.js";
6
6
  import { argv } from "process";
7
7
  import { spawn } from "child_process";
8
8
  import ms from "ms";
@@ -295,7 +295,7 @@ function buildRustArgs(argv, cliFromScript, supportedClis) {
295
295
  const rawArg = process.argv[2];
296
296
  const managerCommands = !invokedCliName(process.argv);
297
297
  const isHelpFlag = rawArg === "-h" || rawArg === "--help";
298
- const { isSubcommand, runSubcommand, cmdHelp, isUnknownManagerToken, isBareManagerInvocation } = await import("./subcommands-CUlWeUxI.js");
298
+ const { isSubcommand, runSubcommand, cmdHelp, isUnknownManagerToken, isBareManagerInvocation } = await import("./subcommands-CnARtyVR.js");
299
299
  if (isHelpFlag && process.argv.length === 3) {
300
300
  await cmdHelp(managerCommands);
301
301
  process.exit(0);
@@ -309,7 +309,7 @@ function buildRustArgs(argv, cliFromScript, supportedClis) {
309
309
  process.exit(code ?? 0);
310
310
  }
311
311
  {
312
- const { SUPPORTED_CLIS } = await import("./SUPPORTED_CLIS-BVRthdk2.js");
312
+ const { SUPPORTED_CLIS } = await import("./SUPPORTED_CLIS-DnYyo_km.js");
313
313
  if (isUnknownManagerToken(rawArg, managerCommands, SUPPORTED_CLIS)) {
314
314
  process.stderr.write(`ay: unknown subcommand or CLI '${rawArg}'.\n See 'ay help' for subcommands. To run an agent, name a CLI:\n 'ay <cli> …' (e.g. 'ay claude …') or 'ay --cli <cli> …'.\n`);
315
315
  process.exit(1);
@@ -317,8 +317,8 @@ function buildRustArgs(argv, cliFromScript, supportedClis) {
317
317
  }
318
318
  }
319
319
  {
320
- const { detectCwdDeprecation, SUPPRESS_CWD_WARN_ENV } = await import("./cwdDeprecation-D7Uigxoz.js");
321
- const dep = detectCwdDeprecation(process.argv);
320
+ const { detectCwdPassthrough, SUPPRESS_CWD_WARN_ENV } = await import("./cwdPassthroughHint-DDVkhBiD.js");
321
+ const dep = detectCwdPassthrough(process.argv);
322
322
  if (dep) {
323
323
  console.warn(dep.message);
324
324
  process.env[SUPPRESS_CWD_WARN_ENV] = "1";
@@ -360,7 +360,7 @@ if (config.useRust) {
360
360
  }
361
361
  }
362
362
  if (rustBinary) {
363
- const { SUPPORTED_CLIS } = await import("./SUPPORTED_CLIS-BVRthdk2.js");
363
+ const { SUPPORTED_CLIS } = await import("./SUPPORTED_CLIS-DnYyo_km.js");
364
364
  const rustArgs = buildRustArgs(process.argv, config.cli, SUPPORTED_CLIS);
365
365
  if (config.verbose) {
366
366
  console.log(`[rust] Using binary: ${rustBinary}`);
@@ -1,4 +1,4 @@
1
- //#region ts/cwdDeprecation.ts
1
+ //#region ts/cwdPassthroughHint.ts
2
2
  /**
3
3
  * `--cwd <dir>` on an agent run is NOT an agent-yes flag.
4
4
  *
@@ -44,7 +44,7 @@ function programName(scriptPath) {
44
44
  * (`[exec, script, ...userArgs]`). Returns the hint, or null when no `--cwd`
45
45
  * appears before the `--` separator.
46
46
  */
47
- function detectCwdDeprecation(argv) {
47
+ function detectCwdPassthrough(argv) {
48
48
  const prog = programName(argv[1]);
49
49
  const userArgs = argv.slice(2);
50
50
  const sepIndex = userArgs.indexOf("--");
@@ -84,5 +84,5 @@ function detectCwdDeprecation(argv) {
84
84
  }
85
85
 
86
86
  //#endregion
87
- export { SUPPRESS_CWD_WARN_ENV, detectCwdDeprecation };
88
- //# sourceMappingURL=cwdDeprecation-D7Uigxoz.js.map
87
+ export { SUPPRESS_CWD_WARN_ENV, detectCwdPassthrough };
88
+ //# sourceMappingURL=cwdPassthroughHint-DDVkhBiD.js.map
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import "./logger-CDIsZ-Pp.js";
2
- import "./versionChecker-YtoKdWEP.js";
3
- import { a as hasTodoStore, i as answerAsk, l as AgentContext, n as agentYes, o as listAsks, r as config, s as listAsksForProject, t as CLIS_CONFIG } from "./ts-CbrFfYfr.js";
2
+ import "./versionChecker-C6RmYXss.js";
3
+ import { a as hasTodoStore, i as answerAsk, l as AgentContext, n as agentYes, o as listAsks, r as config, s as listAsksForProject, t as CLIS_CONFIG } from "./ts-ZKWh7obB.js";
4
4
  import { _ as isKnownKind, a as renderTree, b as statesOf, c as monitorHint, d as openStore, f as DONE_STATE, g as initialState, h as canTransition, i as renderDigest, l as CycleError, m as ORPHANED_STATE, o as unblockedTasks, p as LIFECYCLES, r as openBlockers, s as describeBlock, t as reconcileTodos, u as TodoStore, v as nextStates, x as removeControlCharacters, y as requiredGate } from "./todoAutomation-BQRW614S.js";
5
5
  import "./JsonlStore-CPGIR0Wy.js";
6
6
  import "./globalPidIndex-Dq4KY2IV.js";
@@ -3,7 +3,7 @@ import "./globalPidIndex-Dq4KY2IV.js";
3
3
  import "./messageLog-BYFwioFY.js";
4
4
  import "./e2e-CUMZC53I.js";
5
5
  import "./configShared-DtHMBCl7.js";
6
- import { E as listRecords, F as renderLogTailLines, Q as hostId, X as appendEvent, Z as gcInboxes, at as daemonLockOwnerPath, b as isPidAlive, et as listInboxParents, it as daemonLockDir, nt as readInbox, ot as notifyDir, rt as shouldStealLock, tt as liveWatchers, u as deriveLiveState } from "./subcommands-eh7jK76L.js";
6
+ import { E as listRecords, F as renderLogTailLines, Q as hostId, X as appendEvent, Z as gcInboxes, at as daemonLockOwnerPath, b as isPidAlive, et as listInboxParents, it as daemonLockDir, nt as readInbox, ot as notifyDir, rt as shouldStealLock, tt as liveWatchers, u as deriveLiveState } from "./subcommands-Cbhtldub.js";
7
7
  import "./webrtcLink-CS4D-3G1.js";
8
8
  import "./remotes-Cn-wszbK.js";
9
9
  import { mkdir, readFile, rename, rm, stat, writeFile } from "fs/promises";
@@ -836,4 +836,4 @@ async function ensureDaemon() {
836
836
 
837
837
  //#endregion
838
838
  export { daemonStatus, ensureDaemon, requestDaemonStop, runDaemon };
839
- //# sourceMappingURL=notifyDaemon-DWx6urRu.js.map
839
+ //# sourceMappingURL=notifyDaemon-DuKvOHJJ.js.map
@@ -1,4 +1,4 @@
1
- import { r as getInstalledPackage } from "./versionChecker-YtoKdWEP.js";
1
+ import { r as getInstalledPackage } from "./versionChecker-C6RmYXss.js";
2
2
  import { execFileSync } from "child_process";
3
3
  import { existsSync, mkdirSync, unlinkSync } from "fs";
4
4
  import { chmod, copyFile } from "fs/promises";
@@ -243,4 +243,4 @@ async function getRustBinary(options = {}) {
243
243
 
244
244
  //#endregion
245
245
  export { findTrayLauncher as n, getRustBinary as r, findSpawnHiddenLauncher as t };
246
- //# sourceMappingURL=rustBinary-CvWXl20J.js.map
246
+ //# sourceMappingURL=rustBinary-CkTiZVJ4.js.map
@@ -1,12 +1,12 @@
1
1
  import "./logger-CDIsZ-Pp.js";
2
- import "./versionChecker-YtoKdWEP.js";
3
- import "./ts-CbrFfYfr.js";
2
+ import "./versionChecker-C6RmYXss.js";
3
+ import "./ts-ZKWh7obB.js";
4
4
  import "./todoAutomation-BQRW614S.js";
5
5
  import "./JsonlStore-CPGIR0Wy.js";
6
6
  import "./globalPidIndex-Dq4KY2IV.js";
7
7
  import "./pidStore-DJqSZPJi.js";
8
8
  import "./messageLog-BYFwioFY.js";
9
- import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-B40EBgOm.js";
9
+ import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-X3jH37iY.js";
10
10
  import { f as resolveSpawnCwd } from "./workspaceConfig-Bxuk_MOq.js";
11
11
  import { n as liveEnv, t as ensureNodeRuntime } from "./nodeRuntime-vhOBffJ3.js";
12
12
  import { createHash } from "node:crypto";
@@ -153,4 +153,4 @@ async function cmdSchedule(rest) {
153
153
 
154
154
  //#endregion
155
155
  export { cmdSchedule };
156
- //# sourceMappingURL=schedule-BFWdjYYp.js.map
156
+ //# sourceMappingURL=schedule-R6C567wG.js.map
@@ -1,7 +1,7 @@
1
1
  import "./logger-CDIsZ-Pp.js";
2
- import { r as getInstalledPackage } from "./versionChecker-YtoKdWEP.js";
3
- import { t as findSpawnHiddenLauncher } from "./rustBinary-CvWXl20J.js";
4
- import { c as permissionBadge, i as answerAsk, o as listAsks, u as CLAUDE_SESSION_PIN_ENV } from "./ts-CbrFfYfr.js";
2
+ import { r as getInstalledPackage } from "./versionChecker-C6RmYXss.js";
3
+ import { t as findSpawnHiddenLauncher } from "./rustBinary-CkTiZVJ4.js";
4
+ import { c as permissionBadge, i as answerAsk, o as listAsks, u as CLAUDE_SESSION_PIN_ENV } from "./ts-ZKWh7obB.js";
5
5
  import { t as agentYesHome$1 } from "./agentYesHome-CtmsY6I-.js";
6
6
  import { x as removeControlCharacters } from "./todoAutomation-BQRW614S.js";
7
7
  import "./JsonlStore-CPGIR0Wy.js";
@@ -11,17 +11,17 @@ import { r as recordInbox } from "./messageLog-BYFwioFY.js";
11
11
  import { t as pgidForWrapper } from "./reaper-C4BvNylH.js";
12
12
  import "./e2e-CUMZC53I.js";
13
13
  import "./configShared-DtHMBCl7.js";
14
- import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-B40EBgOm.js";
15
- import { $ as isTransientLockMkdirError, A as readLogForRender, E as listRecords, F as renderLogTailLines, I as renderRawLog, L as renderRawLogLines, M as readPtysize, N as recentMessageEdges, P as recentReadEdges, R as resolveOne, U as snapshotStatus, Y as writeToIpc, c as controlCodeFromName, d as deriveLiveStatus, f as extractBadges, h as extractTaskCounts, j as readNotes, m as extractNeedsInput, st as TYPING_BADGE, w as isUserTyping } from "./subcommands-eh7jK76L.js";
14
+ import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-X3jH37iY.js";
15
+ import { $ as isTransientLockMkdirError, A as readLogForRender, E as listRecords, F as renderLogTailLines, I as renderRawLog, L as renderRawLogLines, M as readPtysize, N as recentMessageEdges, P as recentReadEdges, R as resolveOne, U as snapshotStatus, Y as writeToIpc, c as controlCodeFromName, d as deriveLiveStatus, f as extractBadges, h as extractTaskCounts, j as readNotes, m as extractNeedsInput, st as TYPING_BADGE, w as isUserTyping } from "./subcommands-Cbhtldub.js";
16
16
  import "./webrtcLink-CS4D-3G1.js";
17
17
  import "./remotes-Cn-wszbK.js";
18
18
  import { i as frameVisitorMessage, s as verifyCapability, t as MAX_CALLBACK_MSG_BYTES } from "./callbackCore-Cg3Ye0ZS.js";
19
- import { n as isCallbackRevoked, r as loadCallbackSecretReadOnly } from "./callback-CmlTGa8e.js";
19
+ import { n as isCallbackRevoked, r as loadCallbackSecretReadOnly } from "./callback-C5A5zDzb.js";
20
20
  import { a as getProvisionRoot, d as isProvisionAllowed, f as resolveSpawnCwd, i as getProvisionHook, l as hasProvisionHook, o as getSpawnHook, t as allowsSkipPermissions, u as hasSpawnHook } from "./workspaceConfig-Bxuk_MOq.js";
21
21
  import { n as liveEnv, t as ensureNodeRuntime } from "./nodeRuntime-vhOBffJ3.js";
22
- import { i as importProvisionModule } from "./ws-CkKu7Ssn.js";
22
+ import { i as importProvisionModule } from "./ws-CPJxObp_.js";
23
23
  import { r as spawnRejectionReason } from "./spawnGate-D0E1uRP7.js";
24
- import { i as launchTray } from "./trayApp-CT6GoAHN.js";
24
+ import { i as launchTray } from "./trayApp-CZR7Thm6.js";
25
25
  import yargs from "yargs";
26
26
  import { appendFile, mkdir, open, readFile, readdir, rename, rm, stat, unlink, writeFile } from "fs/promises";
27
27
  import { arch, cpus, freemem, homedir, hostname, loadavg, platform, totalmem, uptime, userInfo } from "os";
@@ -2434,7 +2434,7 @@ Options:
2434
2434
  }
2435
2435
  });
2436
2436
  if (req.method === "GET" && p === "/api/ws") {
2437
- const ws = await import("./ws-BnE_3k-P.js");
2437
+ const ws = await import("./ws-C9NmPMjN.js");
2438
2438
  try {
2439
2439
  await ws.loadProvision();
2440
2440
  } catch (e) {
@@ -2454,7 +2454,7 @@ Options:
2454
2454
  if (req.method === "GET" && p === "/api/ws/status") {
2455
2455
  const dirRaw = url.searchParams.get("path");
2456
2456
  if (!dirRaw) return new Response("missing ?path=<workspace dir>", { status: 400 });
2457
- const ws = await import("./ws-BnE_3k-P.js");
2457
+ const ws = await import("./ws-C9NmPMjN.js");
2458
2458
  let prov;
2459
2459
  try {
2460
2460
  prov = await ws.loadProvision();
@@ -2476,7 +2476,7 @@ Options:
2476
2476
  }
2477
2477
  }
2478
2478
  if (req.method === "GET" && p === "/api/ws/repos") {
2479
- const ws = await import("./ws-BnE_3k-P.js");
2479
+ const ws = await import("./ws-C9NmPMjN.js");
2480
2480
  try {
2481
2481
  await ws.loadProvision();
2482
2482
  } catch (e) {
@@ -2557,7 +2557,7 @@ Options:
2557
2557
  const m = /^([A-Za-z0-9_.-]+)\/([A-Za-z0-9_.-]+)$/.exec(repoParam);
2558
2558
  if (!m || m[1] === "." || m[1] === ".." || m[2] === "." || m[2] === "..") return new Response("missing/invalid ?repo=<owner>/<repo>", { status: 400 });
2559
2559
  const [, owner, repo] = m;
2560
- const ws = await import("./ws-BnE_3k-P.js");
2560
+ const ws = await import("./ws-C9NmPMjN.js");
2561
2561
  let prov;
2562
2562
  try {
2563
2563
  prov = await ws.loadProvision();
@@ -3465,7 +3465,7 @@ Options:
3465
3465
  const perm = body.perm ?? "r";
3466
3466
  if (perm !== "r" && perm !== "rw") return new Response(`invalid perm ${perm} (want r or rw)`, { status: 400 });
3467
3467
  try {
3468
- const { createScopedShare } = await import("./agentShare-Cxe8gK2j.js");
3468
+ const { createScopedShare } = await import("./agentShare-D8Qx06xK.js");
3469
3469
  const share = await createScopedShare({
3470
3470
  agent: body.agent,
3471
3471
  perm,
@@ -3480,12 +3480,12 @@ Options:
3480
3480
  }
3481
3481
  }
3482
3482
  if (req.method === "GET" && p === "/api/shares") {
3483
- const { listShares } = await import("./agentShare-Cxe8gK2j.js");
3483
+ const { listShares } = await import("./agentShare-D8Qx06xK.js");
3484
3484
  return Response.json(listShares());
3485
3485
  }
3486
3486
  const revokeM = /^\/api\/share\/([^/]+)$/.exec(p);
3487
3487
  if (req.method === "DELETE" && revokeM) {
3488
- const { revokeShare } = await import("./agentShare-Cxe8gK2j.js");
3488
+ const { revokeShare } = await import("./agentShare-D8Qx06xK.js");
3489
3489
  const ok = revokeShare(decodeURIComponent(revokeM[1]));
3490
3490
  return new Response(ok ? "revoked" : "no such share", { status: ok ? 200 : 404 });
3491
3491
  }
@@ -3787,7 +3787,7 @@ Options:
3787
3787
  const shutdown = (resolve) => {
3788
3788
  if (heartbeat) clearInterval(heartbeat);
3789
3789
  closeShare?.();
3790
- import("./agentShare-Cxe8gK2j.js").then((m) => m.revokeAllShares()).catch(() => {});
3790
+ import("./agentShare-D8Qx06xK.js").then((m) => m.revokeAllShares()).catch(() => {});
3791
3791
  server?.stop();
3792
3792
  Promise.resolve(releaseHostLock?.()).catch(() => {}).then(resolve);
3793
3793
  };
@@ -3800,4 +3800,4 @@ Options:
3800
3800
 
3801
3801
  //#endregion
3802
3802
  export { cmdServe, loadTokenReadOnly, mintScopedTermToken, resolveDaemonHttpBase, resolveLocalServeUrl };
3803
- //# sourceMappingURL=serve-BQz1bKiO.js.map
3803
+ //# sourceMappingURL=serve-bXCIgnq_.js.map
@@ -40,7 +40,7 @@ async function cmdSetup(rest) {
40
40
  } catch {}
41
41
  if (noShare) return 0;
42
42
  process.stdout.write(`\nsharing this machine to agent-yes.com…\n`);
43
- const { cmdServe } = await import("./serve-BQz1bKiO.js");
43
+ const { cmdServe } = await import("./serve-bXCIgnq_.js");
44
44
  return cmdServe([
45
45
  "install",
46
46
  "--share",
@@ -50,4 +50,4 @@ async function cmdSetup(rest) {
50
50
 
51
51
  //#endregion
52
52
  export { cmdSetup };
53
- //# sourceMappingURL=setup-DtSRXhiX.js.map
53
+ //# sourceMappingURL=setup-CtUFv2Se.js.map
@@ -1548,35 +1548,35 @@ async function runSubcommand(argv) {
1548
1548
  return cmdCh(rest);
1549
1549
  }
1550
1550
  case "term": {
1551
- const { cmdTerm } = await import("./terminal-DYTP7g2z.js");
1551
+ const { cmdTerm } = await import("./terminal-B8jbz_HG.js");
1552
1552
  return cmdTerm(rest);
1553
1553
  }
1554
1554
  case "widget": {
1555
- const { cmdWidget } = await import("./widget-CtuZjthg.js");
1555
+ const { cmdWidget } = await import("./widget-BOcpTCTQ.js");
1556
1556
  return cmdWidget(rest);
1557
1557
  }
1558
1558
  case "mint": {
1559
- const { cmdMint } = await import("./widget-CtuZjthg.js");
1559
+ const { cmdMint } = await import("./widget-BOcpTCTQ.js");
1560
1560
  return cmdMint(rest);
1561
1561
  }
1562
1562
  case "serve": {
1563
- const { cmdServe } = await import("./serve-BQz1bKiO.js");
1563
+ const { cmdServe } = await import("./serve-bXCIgnq_.js");
1564
1564
  return cmdServe(rest);
1565
1565
  }
1566
1566
  case "tray": {
1567
- const { cmdTray } = await import("./trayApp-D8S-ex3p.js");
1567
+ const { cmdTray } = await import("./trayApp-Bx0qlt3A.js");
1568
1568
  return cmdTray(rest);
1569
1569
  }
1570
1570
  case "setup": {
1571
- const { cmdSetup } = await import("./setup-DtSRXhiX.js");
1571
+ const { cmdSetup } = await import("./setup-CtUFv2Se.js");
1572
1572
  return cmdSetup(rest);
1573
1573
  }
1574
1574
  case "ws": {
1575
- const { cmdWs } = await import("./ws-BnE_3k-P.js");
1575
+ const { cmdWs } = await import("./ws-C9NmPMjN.js");
1576
1576
  return cmdWs(rest);
1577
1577
  }
1578
1578
  case "schedule": {
1579
- const { cmdSchedule } = await import("./schedule-BFWdjYYp.js");
1579
+ const { cmdSchedule } = await import("./schedule-R6C567wG.js");
1580
1580
  return cmdSchedule(rest);
1581
1581
  }
1582
1582
  case "remote": {
@@ -1588,7 +1588,7 @@ async function runSubcommand(argv) {
1588
1588
  return cmdExpose(rest);
1589
1589
  }
1590
1590
  case "callback": {
1591
- const { cmdCallback } = await import("./callback-Dl05jPAu.js");
1591
+ const { cmdCallback } = await import("./callback-CByNygd_.js");
1592
1592
  return cmdCallback(rest);
1593
1593
  }
1594
1594
  case "reap":
@@ -4076,7 +4076,7 @@ async function cmdAttach(rest) {
4076
4076
  const winsizeDir = path.join(ayHome, "winsize");
4077
4077
  await mkdir(winsizeDir, { recursive: true });
4078
4078
  const winsizePath = path.join(winsizeDir, String(record.pid));
4079
- const { resolveDaemonHttpBase, loadTokenReadOnly } = await import("./serve-BQz1bKiO.js");
4079
+ const { resolveDaemonHttpBase, loadTokenReadOnly } = await import("./serve-bXCIgnq_.js");
4080
4080
  const daemonBase = await resolveDaemonHttpBase().catch(() => null);
4081
4081
  const daemonToken = daemonBase ? await loadTokenReadOnly().catch(() => null) ?? "" : "";
4082
4082
  const capViewer = `attach:${process.pid}`;
@@ -4786,7 +4786,7 @@ async function cmdNotify(rest) {
4786
4786
  }
4787
4787
  const ensure = async () => {
4788
4788
  if (!argv["ensure-daemon"]) return;
4789
- const { ensureDaemon } = await import("./notifyDaemon-DWx6urRu.js");
4789
+ const { ensureDaemon } = await import("./notifyDaemon-DuKvOHJJ.js");
4790
4790
  await ensureDaemon().catch(() => null);
4791
4791
  };
4792
4792
  await heartbeatWatcher(parent, selfStartedAt);
@@ -4860,7 +4860,7 @@ async function cmdNotifyCursor(args) {
4860
4860
  }
4861
4861
  async function cmdNotifyd(rest) {
4862
4862
  const sub = rest[0] ?? "status";
4863
- const daemon = await import("./notifyDaemon-DWx6urRu.js");
4863
+ const daemon = await import("./notifyDaemon-DuKvOHJJ.js");
4864
4864
  switch (sub) {
4865
4865
  case "run": return daemon.runDaemon();
4866
4866
  case "once": return daemon.runDaemon({ once: true });
@@ -4887,4 +4887,4 @@ async function cmdNotifyd(rest) {
4887
4887
 
4888
4888
  //#endregion
4889
4889
  export { isTransientLockMkdirError as $, readLogForRender as A, resolveResumeArgs as B, isUnknownManagerToken as C, matchKeyword as D, listRecords as E, renderLogTailLines as F, stopTipForCli as G, runSubcommand as H, renderRawLog as I, writeKeysPaced as J, submitAndConfirm as K, renderRawLogLines as L, readPtysize as M, recentMessageEdges as N, menuSelectKeys as O, recentReadEdges as P, hostId as Q, resolveOne as R, isSubcommand as S, lastStdinAt as T, snapshotStatus as U, restartHintLines as V, stdinActivityPath as W, appendEvent as X, writeToIpc as Y, gcInboxes as Z, isAgentStuck as _, backoffWhileTyping as a, daemonLockOwnerPath as at, isPidAlive as b, controlCodeFromName as c, deriveLiveStatus as d, listInboxParents as et, extractBadges as f, finalizedLines as g, extractTaskCounts as h, TYPING_WINDOW_MS as i, daemonLockDir as it, readNotes as j, readAgentPtysize as k, cursorAbs as l, extractNeedsInput as m, MAX_RENDER_BYTES as n, readInbox as nt, cmdDeepseek as o, notifyDir as ot, extractMenu as p, waitForLogQuiet as q, READ_PAGE_DEFAULT as r, shouldStealLock as rt, cmdHelp as s, TYPING_BADGE as st, GRACEFUL_EXIT_COMMANDS as t, liveWatchers as tt, deriveLiveState as u, isBareManagerInvocation as v, isUserTyping as w, isSlashCommand as x, isExitRequest as y, resolveReadWindow as z };
4890
- //# sourceMappingURL=subcommands-eh7jK76L.js.map
4890
+ //# sourceMappingURL=subcommands-Cbhtldub.js.map
@@ -3,7 +3,7 @@ import "./globalPidIndex-Dq4KY2IV.js";
3
3
  import "./messageLog-BYFwioFY.js";
4
4
  import "./e2e-CUMZC53I.js";
5
5
  import "./configShared-DtHMBCl7.js";
6
- import { A as readLogForRender, B as resolveResumeArgs, C as isUnknownManagerToken, D as matchKeyword, E as listRecords, F as renderLogTailLines, G as stopTipForCli, H as runSubcommand, I as renderRawLog, J as writeKeysPaced, K as submitAndConfirm, L as renderRawLogLines, M as readPtysize, N as recentMessageEdges, O as menuSelectKeys, P as recentReadEdges, R as resolveOne, S as isSubcommand, T as lastStdinAt, U as snapshotStatus, V as restartHintLines, W as stdinActivityPath, Y as writeToIpc, _ as isAgentStuck, a as backoffWhileTyping, b as isPidAlive, c as controlCodeFromName, d as deriveLiveStatus, f as extractBadges, g as finalizedLines, h as extractTaskCounts, i as TYPING_WINDOW_MS, j as readNotes, k as readAgentPtysize, l as cursorAbs, m as extractNeedsInput, n as MAX_RENDER_BYTES, o as cmdDeepseek, p as extractMenu, q as waitForLogQuiet, r as READ_PAGE_DEFAULT, s as cmdHelp, t as GRACEFUL_EXIT_COMMANDS, u as deriveLiveState, v as isBareManagerInvocation, w as isUserTyping, x as isSlashCommand, y as isExitRequest, z as resolveReadWindow } from "./subcommands-eh7jK76L.js";
6
+ import { A as readLogForRender, B as resolveResumeArgs, C as isUnknownManagerToken, D as matchKeyword, E as listRecords, F as renderLogTailLines, G as stopTipForCli, H as runSubcommand, I as renderRawLog, J as writeKeysPaced, K as submitAndConfirm, L as renderRawLogLines, M as readPtysize, N as recentMessageEdges, O as menuSelectKeys, P as recentReadEdges, R as resolveOne, S as isSubcommand, T as lastStdinAt, U as snapshotStatus, V as restartHintLines, W as stdinActivityPath, Y as writeToIpc, _ as isAgentStuck, a as backoffWhileTyping, b as isPidAlive, c as controlCodeFromName, d as deriveLiveStatus, f as extractBadges, g as finalizedLines, h as extractTaskCounts, i as TYPING_WINDOW_MS, j as readNotes, k as readAgentPtysize, l as cursorAbs, m as extractNeedsInput, n as MAX_RENDER_BYTES, o as cmdDeepseek, p as extractMenu, q as waitForLogQuiet, r as READ_PAGE_DEFAULT, s as cmdHelp, t as GRACEFUL_EXIT_COMMANDS, u as deriveLiveState, v as isBareManagerInvocation, w as isUserTyping, x as isSlashCommand, y as isExitRequest, z as resolveReadWindow } from "./subcommands-Cbhtldub.js";
7
7
  import "./webrtcLink-CS4D-3G1.js";
8
8
  import "./remotes-Cn-wszbK.js";
9
9
 
@@ -98,7 +98,7 @@ async function cmdTermMint(args) {
98
98
  if (flags.ro && flags.interactive) throw new Error("--ro and --interactive are mutually exclusive");
99
99
  const ttlSec = parseTtlSec(typeof flags.ttl === "string" ? flags.ttl : "15m");
100
100
  const canSend = flags.interactive === true;
101
- const { mintScopedTermToken } = await import("./serve-BQz1bKiO.js");
101
+ const { mintScopedTermToken } = await import("./serve-bXCIgnq_.js");
102
102
  const r = await mintScopedTermToken(pid, {
103
103
  ttlSec,
104
104
  canSend
@@ -135,4 +135,4 @@ async function cmdTerm(args) {
135
135
 
136
136
  //#endregion
137
137
  export { cmdTerm };
138
- //# sourceMappingURL=terminal-DYTP7g2z.js.map
138
+ //# sourceMappingURL=terminal-B8jbz_HG.js.map
@@ -0,0 +1,5 @@
1
+ import "./versionChecker-C6RmYXss.js";
2
+ import "./rustBinary-CkTiZVJ4.js";
3
+ import { a as trayHiddenMarker, i as launchTray, n as hasDesktop, r as isTrayHidden, t as cmdTray } from "./trayApp-CZR7Thm6.js";
4
+
5
+ export { cmdTray };
@@ -1,4 +1,4 @@
1
- import { n as findTrayLauncher } from "./rustBinary-CvWXl20J.js";
1
+ import { n as findTrayLauncher } from "./rustBinary-CkTiZVJ4.js";
2
2
  import { t as agentYesHome } from "./agentYesHome-CtmsY6I-.js";
3
3
  import { existsSync } from "node:fs";
4
4
  import path from "node:path";
@@ -97,4 +97,4 @@ async function cmdTray(args) {
97
97
 
98
98
  //#endregion
99
99
  export { trayHiddenMarker as a, launchTray as i, hasDesktop as n, isTrayHidden as r, cmdTray as t };
100
- //# sourceMappingURL=trayApp-CT6GoAHN.js.map
100
+ //# sourceMappingURL=trayApp-CZR7Thm6.js.map
@@ -1,6 +1,6 @@
1
1
  import { n as __esmMin, r as __exportAll } from "./chunk-cZBX9HZv.js";
2
2
  import { n as logger, t as addTransport } from "./logger-CDIsZ-Pp.js";
3
- import { r as getInstalledPackage } from "./versionChecker-YtoKdWEP.js";
3
+ import { r as getInstalledPackage } from "./versionChecker-C6RmYXss.js";
4
4
  import { t as agentYesHome } from "./agentYesHome-CtmsY6I-.js";
5
5
  import { d as openStore, p as LIFECYCLES, x as removeControlCharacters } from "./todoAutomation-BQRW614S.js";
6
6
  import { i as shouldUseLock, r as releaseLock, t as acquireLock } from "./runningLock-DBoONoM-.js";
@@ -2299,4 +2299,4 @@ function sleep(ms) {
2299
2299
 
2300
2300
  //#endregion
2301
2301
  export { hasTodoStore as a, permissionBadge as c, answerAsk as i, AgentContext as l, agentYes as n, listAsks as o, config as r, listAsksForProject as s, CLIS_CONFIG as t, CLAUDE_SESSION_PIN_ENV as u };
2302
- //# sourceMappingURL=ts-CbrFfYfr.js.map
2302
+ //# sourceMappingURL=ts-ZKWh7obB.js.map
@@ -7,7 +7,7 @@ import { fileURLToPath } from "url";
7
7
 
8
8
  //#region package.json
9
9
  var name = "agent-yes";
10
- var version = "1.265.2";
10
+ var version = "1.265.3";
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-YtoKdWEP.js.map
218
+ //# sourceMappingURL=versionChecker-C6RmYXss.js.map
@@ -28,7 +28,7 @@ function parseFlags(args, known) {
28
28
  }
29
29
  /** Resolve the local daemon base URL + token (flags override discovery). */
30
30
  async function daemonTarget(flags) {
31
- const { resolveDaemonHttpBase, loadTokenReadOnly } = await import("./serve-BQz1bKiO.js");
31
+ const { resolveDaemonHttpBase, loadTokenReadOnly } = await import("./serve-bXCIgnq_.js");
32
32
  const base = typeof flags.base === "string" ? flags.base : await resolveDaemonHttpBase();
33
33
  if (!base) throw new Error("no running ay serve daemon found — start `ay serve` or pass --base <url> (e.g. http://127.0.0.1:PORT)");
34
34
  const token = typeof flags.token === "string" ? flags.token : await loadTokenReadOnly() ?? "";
@@ -186,7 +186,7 @@ async function cmdMint(args) {
186
186
  const bad = caps.filter((c) => !KNOWN_CAPS.has(c));
187
187
  if (bad.length) throw new Error(`unknown cap(s): ${bad.join(", ")} (valid: ${[...KNOWN_CAPS].join(", ")})`);
188
188
  const ttlSec = parseTtlSec(typeof flags.ttl === "string" ? flags.ttl : "15m");
189
- const { mintScopedTermToken } = await import("./serve-BQz1bKiO.js");
189
+ const { mintScopedTermToken } = await import("./serve-bXCIgnq_.js");
190
190
  const r = await mintScopedTermToken(target, {
191
191
  ttlSec,
192
192
  caps
@@ -202,4 +202,4 @@ async function cmdMint(args) {
202
202
 
203
203
  //#endregion
204
204
  export { cmdMint, cmdWidget };
205
- //# sourceMappingURL=widget-CtuZjthg.js.map
205
+ //# sourceMappingURL=widget-BOcpTCTQ.js.map
@@ -3,9 +3,9 @@ import "./globalPidIndex-Dq4KY2IV.js";
3
3
  import "./messageLog-BYFwioFY.js";
4
4
  import "./e2e-CUMZC53I.js";
5
5
  import "./configShared-DtHMBCl7.js";
6
- import "./subcommands-eh7jK76L.js";
6
+ import "./subcommands-Cbhtldub.js";
7
7
  import "./webrtcLink-CS4D-3G1.js";
8
8
  import "./remotes-Cn-wszbK.js";
9
- import { a as isPathInside, c as walkWorkspaces, i as importProvisionModule, l as workspaceStatus, n as cmdWs, o as loadProvision, r as collectWorkspaces, s as resolveOperand, t as WS_JSON_SCHEMA } from "./ws-CkKu7Ssn.js";
9
+ import { a as isPathInside, c as walkWorkspaces, i as importProvisionModule, l as workspaceStatus, n as cmdWs, o as loadProvision, r as collectWorkspaces, s as resolveOperand, t as WS_JSON_SCHEMA } from "./ws-CPJxObp_.js";
10
10
 
11
11
  export { WS_JSON_SCHEMA, cmdWs, collectWorkspaces, isPathInside, loadProvision, walkWorkspaces, workspaceStatus };
@@ -1,4 +1,4 @@
1
- import { E as listRecords } from "./subcommands-eh7jK76L.js";
1
+ import { E as listRecords } from "./subcommands-Cbhtldub.js";
2
2
  import { a as getProvisionRoot } from "./workspaceConfig-Bxuk_MOq.js";
3
3
  import { existsSync } from "fs";
4
4
  import { lstat, opendir } from "fs/promises";
@@ -426,4 +426,4 @@ async function cmdWs(args) {
426
426
 
427
427
  //#endregion
428
428
  export { isPathInside as a, walkWorkspaces as c, importProvisionModule as i, workspaceStatus as l, cmdWs as n, loadProvision as o, collectWorkspaces as r, resolveOperand as s, WS_JSON_SCHEMA as t };
429
- //# sourceMappingURL=ws-CkKu7Ssn.js.map
429
+ //# sourceMappingURL=ws-CPJxObp_.js.map
@@ -31,9 +31,9 @@ task="$*"
31
31
 
32
32
  # 1) Fire-and-forget. nohup+disown so the agent outlives this waiter; agent-yes
33
33
  # keeps its own PTY log under ~/.agent-yes, so /dev/null here loses nothing.
34
- # `cd` in a subshell rather than `--cwd`: that flag is deprecated on an agent
35
- # run, and anything in AY_FLAGS would sit before it, so agent-yes never parses
36
- # it it lands in the trailing args and the CLI dies on the unknown option.
34
+ # `cd` in a subshell rather than `--cwd`: on an agent run that flag is not an
35
+ # agent-yes flag at all it is forwarded to the CLI, which dies on the unknown
36
+ # option. The subshell keeps this script's own cwd untouched for step 2.
37
37
  mkdir -p "$cwd"
38
38
  # shellcheck disable=SC2086
39
39
  ( cd "$cwd" && exec nohup ay "$cli" ${AY_FLAGS:-} -- "$task" >/dev/null 2>&1 ) &
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-yes",
3
- "version": "1.265.2",
3
+ "version": "1.265.3",
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",
package/ts/cli.ts CHANGED
@@ -70,8 +70,8 @@ import { buildRustArgs } from "./buildRustArgs.ts";
70
70
  // untouched — only a real agent launch reaches here. Suppress the Rust runner's
71
71
  // mirror of this hint so it isn't printed twice when we spawn the binary below.
72
72
  {
73
- const { detectCwdDeprecation, SUPPRESS_CWD_WARN_ENV } = await import("./cwdDeprecation.ts");
74
- const dep = detectCwdDeprecation(process.argv);
73
+ const { detectCwdPassthrough, SUPPRESS_CWD_WARN_ENV } = await import("./cwdPassthroughHint.ts");
74
+ const dep = detectCwdPassthrough(process.argv);
75
75
  if (dep) {
76
76
  console.warn(dep.message);
77
77
  process.env[SUPPRESS_CWD_WARN_ENV] = "1";
@@ -1,17 +1,17 @@
1
1
  import { describe, expect, it } from "vitest";
2
- import { detectCwdDeprecation } from "./cwdDeprecation.ts";
2
+ import { detectCwdPassthrough } from "./cwdPassthroughHint.ts";
3
3
 
4
4
  // argv shape is [exec, script, ...userArgs]; the script's basename is the
5
5
  // program name the user typed (cy/ay/claude-yes/…).
6
6
  const argv = (script: string, ...user: string[]) => ["/usr/bin/bun", script, ...user];
7
7
 
8
- describe("detectCwdDeprecation", () => {
8
+ describe("detectCwdPassthrough", () => {
9
9
  it("returns null when --cwd is absent", () => {
10
- expect(detectCwdDeprecation(argv("/x/dist/cy.js", "claude", "-p", "hi"))).toBeNull();
10
+ expect(detectCwdPassthrough(argv("/x/dist/cy.js", "claude", "-p", "hi"))).toBeNull();
11
11
  });
12
12
 
13
13
  it("detects `--cwd DIR` and rebuilds the command without it", () => {
14
- const dep = detectCwdDeprecation(
14
+ const dep = detectCwdPassthrough(
15
15
  argv("/x/dist/cy.js", "claude", "--cwd", "/ws/app", "-p", "fix"),
16
16
  );
17
17
  expect(dep).not.toBeNull();
@@ -20,23 +20,23 @@ describe("detectCwdDeprecation", () => {
20
20
  });
21
21
 
22
22
  it("detects `--cwd=DIR` form", () => {
23
- const dep = detectCwdDeprecation(argv("/x/dist/agent-yes.js", "codex", "--cwd=/tmp/x"));
23
+ const dep = detectCwdPassthrough(argv("/x/dist/agent-yes.js", "codex", "--cwd=/tmp/x"));
24
24
  expect(dep!.dir).toBe("/tmp/x");
25
25
  expect(dep!.suggestion).toBe("cd /tmp/x && agent-yes codex");
26
26
  });
27
27
 
28
28
  it("keeps a home-relative dir bare so the shell still expands ~", () => {
29
- const dep = detectCwdDeprecation(argv("/x/dist/cy.js", "--cwd", "~/ws/product"));
29
+ const dep = detectCwdPassthrough(argv("/x/dist/cy.js", "--cwd", "~/ws/product"));
30
30
  expect(dep!.suggestion).toBe("cd ~/ws/product && cy");
31
31
  });
32
32
 
33
33
  it("preserves the prompt after `--` and quotes tokens with spaces", () => {
34
34
  // The shell splits `-- solve all todos` into one argv token per word.
35
- const dep = detectCwdDeprecation(
35
+ const dep = detectCwdPassthrough(
36
36
  argv("/x/dist/claude-yes.js", "--cwd", "/ws/app", "--", "solve", "all", "todos"),
37
37
  );
38
38
  // A single already-quoted token keeping its space is re-quoted for display.
39
- const dep2 = detectCwdDeprecation(
39
+ const dep2 = detectCwdPassthrough(
40
40
  argv("/x/dist/claude-yes.js", "--cwd", "/ws/app", "--", "a b"),
41
41
  );
42
42
  expect(dep!.suggestion).toBe("cd /ws/app && claude-yes -- solve all todos");
@@ -44,19 +44,19 @@ describe("detectCwdDeprecation", () => {
44
44
  });
45
45
 
46
46
  it("quotes a dir containing spaces", () => {
47
- const dep = detectCwdDeprecation(argv("/x/dist/cy.js", "--cwd", "/my ws/app"));
47
+ const dep = detectCwdPassthrough(argv("/x/dist/cy.js", "--cwd", "/my ws/app"));
48
48
  expect(dep!.suggestion).toBe("cd '/my ws/app' && cy");
49
49
  });
50
50
 
51
51
  it("handles `--cwd` given as the last token with no value", () => {
52
- const dep = detectCwdDeprecation(argv("/x/dist/cy.js", "claude", "--cwd"));
52
+ const dep = detectCwdPassthrough(argv("/x/dist/cy.js", "claude", "--cwd"));
53
53
  expect(dep).not.toBeNull();
54
54
  expect(dep!.dir).toBeUndefined();
55
55
  expect(dep!.suggestion).toBe("cd <dir> && cy claude");
56
56
  });
57
57
 
58
58
  it("says the flag is passed through, not handled", () => {
59
- const dep = detectCwdDeprecation(argv("/x/dist/cy.js", "--cwd", "/ws"));
59
+ const dep = detectCwdPassthrough(argv("/x/dist/cy.js", "--cwd", "/ws"));
60
60
  expect(dep!.message).toContain("--cwd is not an agent-yes flag");
61
61
  expect(dep!.message).toContain("cd /ws && cy");
62
62
  });
@@ -65,10 +65,10 @@ describe("detectCwdDeprecation", () => {
65
65
  // Past the separator the token belongs to the CLI or the prompt. It is
66
66
  // forwarded verbatim either way, so there is nothing to suggest.
67
67
  expect(
68
- detectCwdDeprecation(argv("/x/dist/cy.js", "claude", "--", "--cwd", "/ws/app")),
68
+ detectCwdPassthrough(argv("/x/dist/cy.js", "claude", "--", "--cwd", "/ws/app")),
69
69
  ).toBeNull();
70
70
  expect(
71
- detectCwdDeprecation(argv("/x/dist/cy.js", "claude", "--", "run with --cwd=/ws")),
71
+ detectCwdPassthrough(argv("/x/dist/cy.js", "claude", "--", "run with --cwd=/ws")),
72
72
  ).toBeNull();
73
73
  });
74
74
  });
@@ -59,7 +59,7 @@ function programName(scriptPath: string | undefined): string {
59
59
  * (`[exec, script, ...userArgs]`). Returns the hint, or null when no `--cwd`
60
60
  * appears before the `--` separator.
61
61
  */
62
- export function detectCwdDeprecation(argv: string[]): CwdPassthroughHint | null {
62
+ export function detectCwdPassthrough(argv: string[]): CwdPassthroughHint | null {
63
63
  const prog = programName(argv[1]);
64
64
  const userArgs = argv.slice(2);
65
65
  // Past `--` the token is the CLI's or the prompt's — forwarded verbatim either
package/ts/ws.ts CHANGED
@@ -529,11 +529,10 @@ async function cmdWsFork(args: string[]): Promise<number> {
529
529
  return 1;
530
530
  }
531
531
  process.stdout.write(`${res.action} ${res.folder}\n`);
532
- // `cd <dir> && ay …`, never `ay … --cwd <dir>`: --cwd is deprecated on an agent
533
- // run, and a CLI-specific flag placed before it (`ay claude --model X --cwd D`)
534
- // is swallowed into clap's trailing args and forwarded to the target CLI, which
535
- // dies on the unknown option. cd has neither problem and puts every relative
536
- // path in the command in the same place as the agent.
532
+ // `cd <dir> && ay …`, never `ay … --cwd <dir>`: on an agent run `--cwd` is not
533
+ // an agent-yes flag at all it is forwarded to the target CLI, which dies on
534
+ // the unknown option. cd has no such problem and puts every relative path in
535
+ // the command in the same place as the agent.
537
536
  process.stderr.write(`\n cd ${res.folder} && ay claude -- "<prompt>" # work there\n`);
538
537
  return 0;
539
538
  }
@@ -1,5 +0,0 @@
1
- import "./versionChecker-YtoKdWEP.js";
2
- import "./rustBinary-CvWXl20J.js";
3
- import { a as trayHiddenMarker, i as launchTray, n as hasDesktop, r as isTrayHidden, t as cmdTray } from "./trayApp-CT6GoAHN.js";
4
-
5
- export { cmdTray };