claude-yes 1.173.0 → 1.173.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/dist/SUPPORTED_CLIS-Bc1ovpmC.js +8 -0
- package/dist/{SUPPORTED_CLIS-BGNIrPNN.js → SUPPORTED_CLIS-m7NPWD_Z.js} +2 -2
- package/dist/cli.js +4 -4
- package/dist/index.js +2 -2
- package/dist/{notifyDaemon-C_SMIYAH.js → notifyDaemon-OSmxbw6p.js} +2 -2
- package/dist/{rustBinary-DZc1nJ5b.js → rustBinary-DV9V1IKU.js} +2 -2
- package/dist/{schedule-BRAx-pDW.js → schedule-CvSPWKJ3.js} +4 -4
- package/dist/{serve-DJFD_BAy.js → serve-CHgDiELn.js} +6 -6
- package/dist/{setup-BYY_C8IB.js → setup-2MpD89vI.js} +2 -2
- package/dist/{subcommands-Ifh1JJde.js → subcommands-DovUChYP.js} +15 -9
- package/dist/{subcommands-61rF6KoP.js → subcommands-DyjXEnJk.js} +1 -1
- package/dist/{ts-BWd_P2qD.js → ts-CFi-EoE8.js} +2 -2
- package/dist/{versionChecker-CemZTLrY.js → versionChecker-BLOK0ZVF.js} +2 -2
- package/lab/ui/index.html +6 -6
- package/package.json +1 -1
- package/ts/subcommands.ts +37 -7
- package/dist/SUPPORTED_CLIS-Dvng8mGV.js +0 -8
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import "./ts-CFi-EoE8.js";
|
|
2
|
+
import "./logger-CDIsZ-Pp.js";
|
|
3
|
+
import "./versionChecker-BLOK0ZVF.js";
|
|
4
|
+
import "./pidStore-BIvsBQ8X.js";
|
|
5
|
+
import "./globalPidIndex-CoNr7tS8.js";
|
|
6
|
+
import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-m7NPWD_Z.js";
|
|
7
|
+
|
|
8
|
+
export { SUPPORTED_CLIS };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { t as CLIS_CONFIG } from "./ts-
|
|
1
|
+
import { t as CLIS_CONFIG } from "./ts-CFi-EoE8.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-
|
|
8
|
+
//# sourceMappingURL=SUPPORTED_CLIS-m7NPWD_Z.js.map
|
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-
|
|
5
|
-
import { n as getRustBinary } from "./rustBinary-
|
|
4
|
+
import { i as versionString, n as displayVersion, t as checkAndAutoUpdate } from "./versionChecker-BLOK0ZVF.js";
|
|
5
|
+
import { n as getRustBinary } from "./rustBinary-DV9V1IKU.js";
|
|
6
6
|
import { argv } from "process";
|
|
7
7
|
import { spawn } from "child_process";
|
|
8
8
|
import ms from "ms";
|
|
@@ -285,7 +285,7 @@ function buildRustArgs(argv, cliFromScript, supportedClis) {
|
|
|
285
285
|
const rawArg = process.argv[2];
|
|
286
286
|
const managerCommands = !invokedCliName(process.argv);
|
|
287
287
|
const isHelpFlag = rawArg === "-h" || rawArg === "--help";
|
|
288
|
-
const { isSubcommand, runSubcommand, cmdHelp } = await import("./subcommands-
|
|
288
|
+
const { isSubcommand, runSubcommand, cmdHelp } = await import("./subcommands-DyjXEnJk.js");
|
|
289
289
|
if (isHelpFlag && process.argv.length === 3) {
|
|
290
290
|
await cmdHelp(managerCommands);
|
|
291
291
|
process.exit(0);
|
|
@@ -327,7 +327,7 @@ if (config.useRust) {
|
|
|
327
327
|
}
|
|
328
328
|
}
|
|
329
329
|
if (rustBinary) {
|
|
330
|
-
const { SUPPORTED_CLIS } = await import("./SUPPORTED_CLIS-
|
|
330
|
+
const { SUPPORTED_CLIS } = await import("./SUPPORTED_CLIS-Bc1ovpmC.js");
|
|
331
331
|
const rustArgs = buildRustArgs(process.argv, config.cli, SUPPORTED_CLIS);
|
|
332
332
|
if (config.verbose) {
|
|
333
333
|
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-
|
|
1
|
+
import { a as removeControlCharacters, i as AgentContext, n as agentYes, r as config, t as CLIS_CONFIG } from "./ts-CFi-EoE8.js";
|
|
2
2
|
import "./logger-CDIsZ-Pp.js";
|
|
3
|
-
import "./versionChecker-
|
|
3
|
+
import "./versionChecker-BLOK0ZVF.js";
|
|
4
4
|
import "./pidStore-BIvsBQ8X.js";
|
|
5
5
|
import "./globalPidIndex-CoNr7tS8.js";
|
|
6
6
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { n as logger } from "./logger-CDIsZ-Pp.js";
|
|
2
2
|
import "./globalPidIndex-CoNr7tS8.js";
|
|
3
3
|
import "./configShared-0MnIQ652.js";
|
|
4
|
-
import { D as renderLogTailLines, G as hostId, J as readInbox, K as listInboxParents, Q as notifyDir, S as listRecords, U as appendEvent, W as gcInboxes, X as daemonLockDir, Y as shouldStealLock, Z as daemonLockOwnerPath, _ as isPidAlive, c as deriveLiveState, q as liveWatchers } from "./subcommands-
|
|
4
|
+
import { D as renderLogTailLines, G as hostId, J as readInbox, K as listInboxParents, Q as notifyDir, S as listRecords, U as appendEvent, W as gcInboxes, X as daemonLockDir, Y as shouldStealLock, Z as daemonLockOwnerPath, _ as isPidAlive, c as deriveLiveState, q as liveWatchers } from "./subcommands-DovUChYP.js";
|
|
5
5
|
import "./e2e-jb0Hp43q.js";
|
|
6
6
|
import "./webrtcLink-B7REGtK2.js";
|
|
7
7
|
import "./remotes-CC-4GuJb.js";
|
|
@@ -588,4 +588,4 @@ async function ensureDaemon() {
|
|
|
588
588
|
|
|
589
589
|
//#endregion
|
|
590
590
|
export { daemonStatus, ensureDaemon, requestDaemonStop, runDaemon };
|
|
591
|
-
//# sourceMappingURL=notifyDaemon-
|
|
591
|
+
//# sourceMappingURL=notifyDaemon-OSmxbw6p.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as getInstalledPackage } from "./versionChecker-
|
|
1
|
+
import { r as getInstalledPackage } from "./versionChecker-BLOK0ZVF.js";
|
|
2
2
|
import { execFileSync } from "child_process";
|
|
3
3
|
import { existsSync, mkdirSync, unlinkSync } from "fs";
|
|
4
4
|
import { chmod, copyFile } from "fs/promises";
|
|
@@ -225,4 +225,4 @@ async function getRustBinary(options = {}) {
|
|
|
225
225
|
|
|
226
226
|
//#endregion
|
|
227
227
|
export { getRustBinary as n, findSpawnHiddenLauncher as t };
|
|
228
|
-
//# sourceMappingURL=rustBinary-
|
|
228
|
+
//# sourceMappingURL=rustBinary-DV9V1IKU.js.map
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import "./ts-
|
|
1
|
+
import "./ts-CFi-EoE8.js";
|
|
2
2
|
import "./logger-CDIsZ-Pp.js";
|
|
3
|
-
import "./versionChecker-
|
|
3
|
+
import "./versionChecker-BLOK0ZVF.js";
|
|
4
4
|
import "./pidStore-BIvsBQ8X.js";
|
|
5
5
|
import "./globalPidIndex-CoNr7tS8.js";
|
|
6
|
-
import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-
|
|
6
|
+
import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-m7NPWD_Z.js";
|
|
7
7
|
import { d as resolveSpawnCwd } from "./workspaceConfig-BgqK-31W.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-
|
|
144
|
+
//# sourceMappingURL=schedule-CvSPWKJ3.js.map
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import "./ts-
|
|
1
|
+
import "./ts-CFi-EoE8.js";
|
|
2
2
|
import "./logger-CDIsZ-Pp.js";
|
|
3
|
-
import { r as getInstalledPackage } from "./versionChecker-
|
|
4
|
-
import { t as findSpawnHiddenLauncher } from "./rustBinary-
|
|
3
|
+
import { r as getInstalledPackage } from "./versionChecker-BLOK0ZVF.js";
|
|
4
|
+
import { t as findSpawnHiddenLauncher } from "./rustBinary-DV9V1IKU.js";
|
|
5
5
|
import "./pidStore-BIvsBQ8X.js";
|
|
6
6
|
import { a as updateGlobalPidStatus } from "./globalPidIndex-CoNr7tS8.js";
|
|
7
7
|
import { t as pgidForWrapper } from "./reaper-CWF2_ATd.js";
|
|
8
8
|
import "./configShared-0MnIQ652.js";
|
|
9
|
-
import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-
|
|
10
|
-
import { A as resolveOne, E as readPtysize, F as snapshotStatus, H as TYPING_BADGE, O as renderRawLog, S as listRecords, T as readNotes, V as writeToIpc, b as isUserTyping, f as extractNeedsInput, l as deriveLiveStatus, o as controlCodeFromName, p as extractTaskCounts, u as extractBadges } from "./subcommands-
|
|
9
|
+
import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-m7NPWD_Z.js";
|
|
10
|
+
import { A as resolveOne, E as readPtysize, F as snapshotStatus, H as TYPING_BADGE, O as renderRawLog, S as listRecords, T as readNotes, V as writeToIpc, b as isUserTyping, f as extractNeedsInput, l as deriveLiveStatus, o as controlCodeFromName, p as extractTaskCounts, u as extractBadges } from "./subcommands-DovUChYP.js";
|
|
11
11
|
import "./e2e-jb0Hp43q.js";
|
|
12
12
|
import "./webrtcLink-B7REGtK2.js";
|
|
13
13
|
import "./remotes-CC-4GuJb.js";
|
|
@@ -1577,4 +1577,4 @@ Options:
|
|
|
1577
1577
|
|
|
1578
1578
|
//#endregion
|
|
1579
1579
|
export { cmdServe };
|
|
1580
|
-
//# sourceMappingURL=serve-
|
|
1580
|
+
//# sourceMappingURL=serve-CHgDiELn.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-
|
|
35
|
+
const { cmdServe } = await import("./serve-CHgDiELn.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-
|
|
45
|
+
//# sourceMappingURL=setup-2MpD89vI.js.map
|
|
@@ -1126,15 +1126,15 @@ async function runSubcommand(argv) {
|
|
|
1126
1126
|
case "restart": return await cmdRestart(rest);
|
|
1127
1127
|
case "note": return await cmdNote(rest);
|
|
1128
1128
|
case "serve": {
|
|
1129
|
-
const { cmdServe } = await import("./serve-
|
|
1129
|
+
const { cmdServe } = await import("./serve-CHgDiELn.js");
|
|
1130
1130
|
return cmdServe(rest);
|
|
1131
1131
|
}
|
|
1132
1132
|
case "setup": {
|
|
1133
|
-
const { cmdSetup } = await import("./setup-
|
|
1133
|
+
const { cmdSetup } = await import("./setup-2MpD89vI.js");
|
|
1134
1134
|
return cmdSetup(rest);
|
|
1135
1135
|
}
|
|
1136
1136
|
case "schedule": {
|
|
1137
|
-
const { cmdSchedule } = await import("./schedule-
|
|
1137
|
+
const { cmdSchedule } = await import("./schedule-CvSPWKJ3.js");
|
|
1138
1138
|
return cmdSchedule(rest);
|
|
1139
1139
|
}
|
|
1140
1140
|
case "remote": {
|
|
@@ -2884,6 +2884,7 @@ async function cmdSend(rest) {
|
|
|
2884
2884
|
}
|
|
2885
2885
|
const trailing = controlCodeFromName(codeName);
|
|
2886
2886
|
const record = await resolveOne(keyword, opts);
|
|
2887
|
+
if (!/^\d+$/.test(keyword)) process.stderr.write(`ay send → pid ${record.pid} ${record.cli} @ ${shortenPath(record.cwd)}\n`);
|
|
2887
2888
|
const fifoPath = record.fifo_file;
|
|
2888
2889
|
if (!fifoPath) throw new Error(`pid ${record.pid}: no fifo_file recorded — this agent didn't register a stdin FIFO (an older agent, or one not started with --stdpush). Restarting it (ay restart ${record.pid}) re-registers one.`);
|
|
2889
2890
|
let body;
|
|
@@ -2900,7 +2901,8 @@ async function cmdSend(rest) {
|
|
|
2900
2901
|
process.stdout.write(`pid ${record.pid} (${record.cli}): exit requested — sent ${strategy} (${reason})\n`);
|
|
2901
2902
|
return 0;
|
|
2902
2903
|
}
|
|
2903
|
-
const
|
|
2904
|
+
const replyTarget = sender.agent?.agent_id || sender.agent?.pid;
|
|
2905
|
+
const fullBody = (sender.agent && !isSlashCommand(body) ? `[from ${sender.agent.cli} #${sender.agent.pid} @ ${shortenPath(sender.agent.cwd)} — reply: ay send ${replyTarget} "..."]\n` : "") + body;
|
|
2904
2906
|
const noWait = Boolean(argv.noWait) || process.env.AGENT_YES_SEND_NO_WAIT === "1";
|
|
2905
2907
|
if (fullBody && !noWait && !force) {
|
|
2906
2908
|
const { clear, waitedMs } = await backoffWhileTyping(record.pid, SEND_TYPING_MAX_WAIT_MS);
|
|
@@ -2924,7 +2926,7 @@ async function cmdSend(rest) {
|
|
|
2924
2926
|
const status = confirmed ? "sent" : "sent but NOT confirmed submitted";
|
|
2925
2927
|
process.stdout.write(`${status} to pid ${record.pid} (${record.cli}): ${truncate(payload, 80)}\n`);
|
|
2926
2928
|
if (!confirmed) process.stderr.write(`\nwarning: couldn't confirm the CLI acted on it after ${SEND_SUBMIT_MAX_RETRIES + 1} attempt(s) — it may still be sitting unsubmitted in the prompt. Last screen:\n` + lastScreen.slice(-8).map((l) => ` ${l}`).join("\n") + "\n");
|
|
2927
|
-
const replyHint = sender.agent ? ` ay send ${
|
|
2929
|
+
const replyHint = sender.agent ? ` ay send ${replyTarget} "..." # reply to sender\n` : "";
|
|
2928
2930
|
process.stderr.write(`\n` + replyHint + ` ay tail ${record.pid} # watch output\n ay ls # list all agents\n`);
|
|
2929
2931
|
if (codeName === "ctrl-c" || codeName === "ctrlc") {
|
|
2930
2932
|
const tip = stopTipForCli(record.cli, record.pid);
|
|
@@ -3559,7 +3561,11 @@ async function cmdRestart(rest) {
|
|
|
3559
3561
|
"ignore",
|
|
3560
3562
|
"ignore",
|
|
3561
3563
|
"ignore"
|
|
3562
|
-
]
|
|
3564
|
+
],
|
|
3565
|
+
env: record.agent_id ? {
|
|
3566
|
+
...process.env,
|
|
3567
|
+
AGENT_YES_AGENT_ID: record.agent_id
|
|
3568
|
+
} : process.env
|
|
3563
3569
|
});
|
|
3564
3570
|
const { out, err } = restartHintLines(record.cli, record.cwd, strategy);
|
|
3565
3571
|
process.stdout.write(out);
|
|
@@ -3963,7 +3969,7 @@ async function cmdNotify(rest) {
|
|
|
3963
3969
|
}
|
|
3964
3970
|
const ensure = async () => {
|
|
3965
3971
|
if (!argv["ensure-daemon"]) return;
|
|
3966
|
-
const { ensureDaemon } = await import("./notifyDaemon-
|
|
3972
|
+
const { ensureDaemon } = await import("./notifyDaemon-OSmxbw6p.js");
|
|
3967
3973
|
await ensureDaemon().catch(() => null);
|
|
3968
3974
|
};
|
|
3969
3975
|
await heartbeatWatcher(parent, selfStartedAt);
|
|
@@ -4037,7 +4043,7 @@ async function cmdNotifyCursor(args) {
|
|
|
4037
4043
|
}
|
|
4038
4044
|
async function cmdNotifyd(rest) {
|
|
4039
4045
|
const sub = rest[0] ?? "status";
|
|
4040
|
-
const daemon = await import("./notifyDaemon-
|
|
4046
|
+
const daemon = await import("./notifyDaemon-OSmxbw6p.js");
|
|
4041
4047
|
switch (sub) {
|
|
4042
4048
|
case "run": return daemon.runDaemon();
|
|
4043
4049
|
case "once": return daemon.runDaemon({ once: true });
|
|
@@ -4064,4 +4070,4 @@ async function cmdNotifyd(rest) {
|
|
|
4064
4070
|
|
|
4065
4071
|
//#endregion
|
|
4066
4072
|
export { resolveOne as A, writeKeysPaced as B, matchKeyword as C, renderLogTailLines as D, readPtysize as E, snapshotStatus as F, hostId as G, TYPING_BADGE as H, stdinActivityPath as I, readInbox as J, listInboxParents as K, stopTipForCli as L, resolveResumeArgs as M, restartHintLines as N, renderRawLog as O, runSubcommand as P, notifyDir as Q, submitAndConfirm as R, listRecords as S, readNotes as T, appendEvent as U, writeToIpc as V, gcInboxes as W, daemonLockDir as X, shouldStealLock as Y, daemonLockOwnerPath as Z, isPidAlive as _, cmdHelp as a, isUserTyping as b, deriveLiveState as c, extractMenu as d, extractNeedsInput as f, isExitRequest as g, isAgentStuck as h, backoffWhileTyping as i, resolveReadWindow as j, renderRawLogLines as k, deriveLiveStatus as l, finalizedLines as m, READ_PAGE_DEFAULT as n, controlCodeFromName as o, extractTaskCounts as p, liveWatchers as q, TYPING_WINDOW_MS as r, cursorAbs as s, GRACEFUL_EXIT_COMMANDS as t, extractBadges as u, isSlashCommand as v, menuSelectKeys as w, lastStdinAt as x, isSubcommand as y, waitForLogQuiet as z };
|
|
4067
|
-
//# sourceMappingURL=subcommands-
|
|
4073
|
+
//# sourceMappingURL=subcommands-DovUChYP.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "./logger-CDIsZ-Pp.js";
|
|
2
2
|
import "./globalPidIndex-CoNr7tS8.js";
|
|
3
3
|
import "./configShared-0MnIQ652.js";
|
|
4
|
-
import { A as resolveOne, B as writeKeysPaced, C as matchKeyword, D as renderLogTailLines, E as readPtysize, F as snapshotStatus, I as stdinActivityPath, L as stopTipForCli, M as resolveResumeArgs, N as restartHintLines, O as renderRawLog, P as runSubcommand, R as submitAndConfirm, S as listRecords, T as readNotes, V as writeToIpc, _ as isPidAlive, a as cmdHelp, b as isUserTyping, c as deriveLiveState, d as extractMenu, f as extractNeedsInput, g as isExitRequest, h as isAgentStuck, i as backoffWhileTyping, j as resolveReadWindow, k as renderRawLogLines, l as deriveLiveStatus, m as finalizedLines, n as READ_PAGE_DEFAULT, o as controlCodeFromName, p as extractTaskCounts, r as TYPING_WINDOW_MS, s as cursorAbs, t as GRACEFUL_EXIT_COMMANDS, u as extractBadges, v as isSlashCommand, w as menuSelectKeys, x as lastStdinAt, y as isSubcommand, z as waitForLogQuiet } from "./subcommands-
|
|
4
|
+
import { A as resolveOne, B as writeKeysPaced, C as matchKeyword, D as renderLogTailLines, E as readPtysize, F as snapshotStatus, I as stdinActivityPath, L as stopTipForCli, M as resolveResumeArgs, N as restartHintLines, O as renderRawLog, P as runSubcommand, R as submitAndConfirm, S as listRecords, T as readNotes, V as writeToIpc, _ as isPidAlive, a as cmdHelp, b as isUserTyping, c as deriveLiveState, d as extractMenu, f as extractNeedsInput, g as isExitRequest, h as isAgentStuck, i as backoffWhileTyping, j as resolveReadWindow, k as renderRawLogLines, l as deriveLiveStatus, m as finalizedLines, n as READ_PAGE_DEFAULT, o as controlCodeFromName, p as extractTaskCounts, r as TYPING_WINDOW_MS, s as cursorAbs, t as GRACEFUL_EXIT_COMMANDS, u as extractBadges, v as isSlashCommand, w as menuSelectKeys, x as lastStdinAt, y as isSubcommand, z as waitForLogQuiet } from "./subcommands-DovUChYP.js";
|
|
5
5
|
import "./e2e-jb0Hp43q.js";
|
|
6
6
|
import "./webrtcLink-B7REGtK2.js";
|
|
7
7
|
import "./remotes-CC-4GuJb.js";
|
|
@@ -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-
|
|
2
|
+
import { r as getInstalledPackage } from "./versionChecker-BLOK0ZVF.js";
|
|
3
3
|
import { t as agentYesHome } from "./agentYesHome-CtHb5b71.js";
|
|
4
4
|
import { i as shouldUseLock, r as releaseLock, t as acquireLock } from "./runningLock-CNMl13dC.js";
|
|
5
5
|
import { t as PidStore } from "./pidStore-BIvsBQ8X.js";
|
|
@@ -1824,4 +1824,4 @@ function sleep(ms) {
|
|
|
1824
1824
|
|
|
1825
1825
|
//#endregion
|
|
1826
1826
|
export { removeControlCharacters as a, AgentContext as i, agentYes as n, config as r, CLIS_CONFIG as t };
|
|
1827
|
-
//# sourceMappingURL=ts-
|
|
1827
|
+
//# sourceMappingURL=ts-CFi-EoE8.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.173.
|
|
10
|
+
var version = "1.173.2";
|
|
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-
|
|
218
|
+
//# sourceMappingURL=versionChecker-BLOK0ZVF.js.map
|
package/lab/ui/index.html
CHANGED
|
@@ -4482,19 +4482,19 @@
|
|
|
4482
4482
|
}
|
|
4483
4483
|
|
|
4484
4484
|
// Auto-derive a branch name from the typed prompt for the Cmd+K fork action
|
|
4485
|
-
// (editable at launch).
|
|
4486
|
-
//
|
|
4487
|
-
//
|
|
4488
|
-
// "def" forked from "feat-abc" reads as a stacked branch "feat-abc-def".
|
|
4485
|
+
// (editable at launch). The new branch dash-prefixes the source branch to
|
|
4486
|
+
// show lineage, e.g. main + "fix the auth bug" → "main-fix-the-auth-bug",
|
|
4487
|
+
// and "def" forked from "feat-abc" reads as a stacked branch "feat-abc-def".
|
|
4489
4488
|
// We dash-join (not slash-nest "feat-abc/def") on purpose: git stores refs
|
|
4490
4489
|
// as files, so `feat-abc/def` can't be created while `feat-abc` still
|
|
4491
4490
|
// exists (D/F conflict) — and the source branch is normally still live when
|
|
4492
4491
|
// we fork from it. Any slashes in the source (e.g. a prior "fork/x") are
|
|
4493
|
-
// flattened to dashes so the new ref stays a single node.
|
|
4492
|
+
// flattened to dashes so the new ref stays a single node. Only when the
|
|
4493
|
+
// source branch is unknown do we fall back to the flat `fork/` namespace.
|
|
4494
4494
|
function forkSlug(q, srcBranch) {
|
|
4495
4495
|
const topic = branchSlug(q) || "wip";
|
|
4496
4496
|
const base = branchSlug(srcBranch);
|
|
4497
|
-
if (!base
|
|
4497
|
+
if (!base) return "fork/" + topic;
|
|
4498
4498
|
return base + "-" + topic;
|
|
4499
4499
|
}
|
|
4500
4500
|
|
package/package.json
CHANGED
package/ts/subcommands.ts
CHANGED
|
@@ -2874,6 +2874,19 @@ async function cmdSend(rest: string[]): Promise<number> {
|
|
|
2874
2874
|
const trailing = controlCodeFromName(codeName);
|
|
2875
2875
|
|
|
2876
2876
|
const record = await resolveOne(keyword, opts);
|
|
2877
|
+
|
|
2878
|
+
// Misdelivery guard: when the keyword isn't a plain pid (an exact identity),
|
|
2879
|
+
// it resolved by cwd/cli/prompt substring — which can silently land on an
|
|
2880
|
+
// unintended session in another tree (resolveOne returns a lone fuzzy match
|
|
2881
|
+
// with no prompt). Echo exactly where it resolved to stderr BEFORE injecting,
|
|
2882
|
+
// so the sender can catch a wrong target instead of only finding out when the
|
|
2883
|
+
// reply never comes. Numeric identity sends stay quiet.
|
|
2884
|
+
if (!/^\d+$/.test(keyword)) {
|
|
2885
|
+
process.stderr.write(
|
|
2886
|
+
`ay send → pid ${record.pid} ${record.cli} @ ${shortenPath(record.cwd)}\n`,
|
|
2887
|
+
);
|
|
2888
|
+
}
|
|
2889
|
+
|
|
2877
2890
|
const fifoPath = record.fifo_file;
|
|
2878
2891
|
if (!fifoPath) {
|
|
2879
2892
|
throw new Error(
|
|
@@ -2910,14 +2923,20 @@ async function cmdSend(rest: string[]): Promise<number> {
|
|
|
2910
2923
|
}
|
|
2911
2924
|
|
|
2912
2925
|
// When an agent sends, prefix one line so the recipient knows who pinged it
|
|
2913
|
-
// and exactly how to reply
|
|
2914
|
-
//
|
|
2915
|
-
//
|
|
2916
|
-
//
|
|
2917
|
-
//
|
|
2926
|
+
// and exactly how to reply. Reply to the sender's stable agent_id, NOT its pid:
|
|
2927
|
+
// a pid is invalidated the moment the sender restarts (new pid), silently
|
|
2928
|
+
// breaking the reply route; the agent_id is preserved across restart (see
|
|
2929
|
+
// cmdRestart's AGENT_YES_AGENT_ID injection), so the route survives. The `#pid`
|
|
2930
|
+
// stays in the header for human readability. Fall back to the pid only for a
|
|
2931
|
+
// legacy agent with no recorded agent_id. BUT a slash command is only
|
|
2932
|
+
// recognized when `/` is the very first character of the submitted message; the
|
|
2933
|
+
// prefix would bump it to line 2 and the CLI would type the command as plain
|
|
2934
|
+
// text. So skip the prefix for a command body and send it verbatim —
|
|
2935
|
+
// attribution is dropped for the command, but it actually runs.
|
|
2936
|
+
const replyTarget = sender.agent?.agent_id || sender.agent?.pid;
|
|
2918
2937
|
const prefix =
|
|
2919
2938
|
sender.agent && !isSlashCommand(body)
|
|
2920
|
-
? `[from ${sender.agent.cli} #${sender.agent.pid} @ ${shortenPath(sender.agent.cwd)} — reply: ay send ${
|
|
2939
|
+
? `[from ${sender.agent.cli} #${sender.agent.pid} @ ${shortenPath(sender.agent.cwd)} — reply: ay send ${replyTarget} "..."]\n`
|
|
2921
2940
|
: "";
|
|
2922
2941
|
|
|
2923
2942
|
const fullBody = prefix + body;
|
|
@@ -2983,7 +3002,7 @@ async function cmdSend(rest: string[]): Promise<number> {
|
|
|
2983
3002
|
}
|
|
2984
3003
|
|
|
2985
3004
|
const replyHint = sender.agent
|
|
2986
|
-
? ` ay send ${
|
|
3005
|
+
? ` ay send ${replyTarget} "..." # reply to sender\n`
|
|
2987
3006
|
: "";
|
|
2988
3007
|
process.stderr.write(
|
|
2989
3008
|
`\n` +
|
|
@@ -3879,10 +3898,21 @@ async function cmdRestart(rest: string[]): Promise<number> {
|
|
|
3879
3898
|
|
|
3880
3899
|
// Detached launcher; we deliberately don't track its pid — see restartHintLines
|
|
3881
3900
|
// for why the resumed agent's pid isn't reportable synchronously.
|
|
3901
|
+
//
|
|
3902
|
+
// Carry the old record's agent_id into the relaunch so the resumed agent keeps
|
|
3903
|
+
// the SAME stable id (only the pid changes). Without this the wrapper mints a
|
|
3904
|
+
// fresh id and any `ay send <agent_id>` reply route breaks across a restart —
|
|
3905
|
+
// exactly the misdelivery that made a pinned-pid reply header no-match after
|
|
3906
|
+
// the sender restarted. The Rust/TS wrapper adopts AGENT_YES_AGENT_ID for its
|
|
3907
|
+
// own record and strips it from the wrapped CLI's env (pty_spawner.rs /
|
|
3908
|
+
// index.ts), so subagents don't collide on the id.
|
|
3882
3909
|
Bun.spawn(["agent-yes", "--cli=" + record.cli, ...resumeArgs], {
|
|
3883
3910
|
cwd: record.cwd,
|
|
3884
3911
|
detached: true,
|
|
3885
3912
|
stdio: ["ignore", "ignore", "ignore"],
|
|
3913
|
+
env: record.agent_id
|
|
3914
|
+
? { ...process.env, AGENT_YES_AGENT_ID: record.agent_id }
|
|
3915
|
+
: process.env,
|
|
3886
3916
|
});
|
|
3887
3917
|
|
|
3888
3918
|
const { out, err } = restartHintLines(record.cli, record.cwd, strategy);
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import "./ts-BWd_P2qD.js";
|
|
2
|
-
import "./logger-CDIsZ-Pp.js";
|
|
3
|
-
import "./versionChecker-CemZTLrY.js";
|
|
4
|
-
import "./pidStore-BIvsBQ8X.js";
|
|
5
|
-
import "./globalPidIndex-CoNr7tS8.js";
|
|
6
|
-
import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-BGNIrPNN.js";
|
|
7
|
-
|
|
8
|
-
export { SUPPORTED_CLIS };
|