agent-yes 1.274.0 → 1.275.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.
- package/dist/{SUPPORTED_CLIS-DibEQVjZ.js → SUPPORTED_CLIS-CBBBtJ4_.js} +3 -3
- package/dist/{SUPPORTED_CLIS-CNrMN-89.js → SUPPORTED_CLIS-DHk85zfy.js} +2 -2
- package/dist/{agentShare-YWrrxqN2.js → agentShare-CaSaTksu.js} +2 -2
- package/dist/{callback-DwnU5Bnx.js → callback-DpzzyOsY.js} +3 -3
- package/dist/{callback-DK1hFHPw.js → callback-Se8JJTZ9.js} +2 -2
- package/dist/cli.js +5 -5
- package/dist/{cmdPs-tpr2ARd3.js → cmdPs-C6BKjicc.js} +2 -2
- package/dist/index.js +2 -2
- package/dist/{notifyDaemon-Dx5sjDIx.js → notifyDaemon-ej83JK7y.js} +2 -2
- package/dist/{parentPingLoop-DV7fBiMN.js → parentPingLoop-ke06LhOS.js} +2 -2
- package/dist/{rustBinary-DDwz4LdD.js → rustBinary-BWXier75.js} +2 -2
- package/dist/{rustBinary-B7cNTxWn.js → rustBinary-D5xxABSh.js} +2 -2
- package/dist/{schedule-Bc5tKPJi.js → schedule-CSB8FTTu.js} +4 -4
- package/dist/{serve-ClCAkuSj.js → serve-B6aYKTLs.js} +17 -17
- package/dist/{setup-D6v3wsXq.js → setup-MM_Sn30Q.js} +2 -2
- package/dist/{subcommands-DLqtyQdw.js → subcommands-DAqYMqVx.js} +1 -1
- package/dist/{subcommands-D0TqxBxb.js → subcommands-Em1Mjajb.js} +15 -15
- package/dist/{terminal-Dzu-PTIU.js → terminal-Bg1GFfRw.js} +2 -2
- package/dist/{trayApp-DCG8CjCV.js → trayApp-ChDq575c.js} +2 -2
- package/dist/trayApp-Dieq8pPs.js +5 -0
- package/dist/{ts-BmGAFUb7.js → ts-CUI0pmYw.js} +3 -3
- package/dist/{versionChecker-DzWZizq2.js → versionChecker-B7eWJMXy.js} +2 -2
- package/dist/{widget-hU12_Sog.js → widget-vCVi9QYk.js} +3 -3
- package/dist/{ws-jKReYJJw.js → ws-D2An6-fY.js} +2 -2
- package/dist/{ws-pRbF59zo.js → ws-MQ5iyIWn.js} +2 -2
- package/lab/ui/index.html +185 -9
- package/package.json +1 -1
- package/dist/trayApp-kjebnTl9.js +0 -5
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import "./logger-CDIsZ-Pp.js";
|
|
2
|
-
import "./versionChecker-
|
|
3
|
-
import "./ts-
|
|
2
|
+
import "./versionChecker-B7eWJMXy.js";
|
|
3
|
+
import "./ts-CUI0pmYw.js";
|
|
4
4
|
import "./todoAutomation-CbVVS4re.js";
|
|
5
5
|
import "./JsonlStore-BqF7AQ6E.js";
|
|
6
6
|
import "./globalPidIndex-DoaKEUkO.js";
|
|
7
7
|
import "./pidStore-B73xnAeT.js";
|
|
8
8
|
import "./messageLog-DdjBNqgt.js";
|
|
9
9
|
import "./todoStore-DF6vxHgV.js";
|
|
10
|
-
import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-
|
|
10
|
+
import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-DHk85zfy.js";
|
|
11
11
|
|
|
12
12
|
export { SUPPORTED_CLIS };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { t as CLIS_CONFIG } from "./ts-
|
|
1
|
+
import { t as CLIS_CONFIG } from "./ts-CUI0pmYw.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-DHk85zfy.js.map
|
|
@@ -3,7 +3,7 @@ import "./globalPidIndex-DoaKEUkO.js";
|
|
|
3
3
|
import "./messageLog-DdjBNqgt.js";
|
|
4
4
|
import "./e2e-z1xpwSAg.js";
|
|
5
5
|
import "./configShared-DKTgiz7K.js";
|
|
6
|
-
import { z as resolveOne } from "./subcommands-
|
|
6
|
+
import { z as resolveOne } from "./subcommands-Em1Mjajb.js";
|
|
7
7
|
import "./notifyStore-2SWKGwZI.js";
|
|
8
8
|
import "./webrtcLink-DLaJfTcB.js";
|
|
9
9
|
import "./remotes-Cdlaj7AP.js";
|
|
@@ -230,4 +230,4 @@ function transformEvent(rawEvent, agentId, forwarded) {
|
|
|
230
230
|
|
|
231
231
|
//#endregion
|
|
232
232
|
export { createScopedShare, listShares, revokeAllShares, revokeShare };
|
|
233
|
-
//# sourceMappingURL=agentShare-
|
|
233
|
+
//# sourceMappingURL=agentShare-CaSaTksu.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as agentYesHome } from "./agentYesHome-BNtn19J4.js";
|
|
2
|
-
import { z as resolveOne } from "./subcommands-
|
|
2
|
+
import { z as resolveOne } from "./subcommands-Em1Mjajb.js";
|
|
3
3
|
import { a as mintCapability, o as parseExpires } from "./callbackCore-Bl2gGcxg.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-
|
|
75
|
+
const { resolveLocalServeUrl } = await import("./serve-B6aYKTLs.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-
|
|
190
|
+
//# sourceMappingURL=callback-DpzzyOsY.js.map
|
|
@@ -3,11 +3,11 @@ import "./globalPidIndex-DoaKEUkO.js";
|
|
|
3
3
|
import "./messageLog-DdjBNqgt.js";
|
|
4
4
|
import "./e2e-z1xpwSAg.js";
|
|
5
5
|
import "./configShared-DKTgiz7K.js";
|
|
6
|
-
import "./subcommands-
|
|
6
|
+
import "./subcommands-Em1Mjajb.js";
|
|
7
7
|
import "./notifyStore-2SWKGwZI.js";
|
|
8
8
|
import "./webrtcLink-DLaJfTcB.js";
|
|
9
9
|
import "./remotes-Cdlaj7AP.js";
|
|
10
10
|
import "./callbackCore-Bl2gGcxg.js";
|
|
11
|
-
import { i as loadOrCreateCallbackSecret, n as isCallbackRevoked, r as loadCallbackSecretReadOnly, t as cmdCallback } from "./callback-
|
|
11
|
+
import { i as loadOrCreateCallbackSecret, n as isCallbackRevoked, r as loadCallbackSecretReadOnly, t as cmdCallback } from "./callback-DpzzyOsY.js";
|
|
12
12
|
|
|
13
13
|
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-zdFbz1ST.js";
|
|
3
3
|
import { n as logger } from "./logger-CDIsZ-Pp.js";
|
|
4
|
-
import { a as versionString, r as displayVersion, t as checkAndAutoUpdate } from "./versionChecker-
|
|
5
|
-
import { l as getRustBinary } from "./rustBinary-
|
|
4
|
+
import { a as versionString, r as displayVersion, t as checkAndAutoUpdate } from "./versionChecker-B7eWJMXy.js";
|
|
5
|
+
import { l as getRustBinary } from "./rustBinary-BWXier75.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-
|
|
298
|
+
const { isSubcommand, runSubcommand, cmdHelp, isUnknownManagerToken, isBareManagerInvocation } = await import("./subcommands-DAqYMqVx.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-
|
|
312
|
+
const { SUPPORTED_CLIS } = await import("./SUPPORTED_CLIS-CBBBtJ4_.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);
|
|
@@ -360,7 +360,7 @@ if (config.useRust) {
|
|
|
360
360
|
}
|
|
361
361
|
}
|
|
362
362
|
if (rustBinary) {
|
|
363
|
-
const { SUPPORTED_CLIS } = await import("./SUPPORTED_CLIS-
|
|
363
|
+
const { SUPPORTED_CLIS } = await import("./SUPPORTED_CLIS-CBBBtJ4_.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}`);
|
|
@@ -3,7 +3,7 @@ import "./globalPidIndex-DoaKEUkO.js";
|
|
|
3
3
|
import "./messageLog-DdjBNqgt.js";
|
|
4
4
|
import "./e2e-z1xpwSAg.js";
|
|
5
5
|
import "./configShared-DKTgiz7K.js";
|
|
6
|
-
import { $ as buildAgentForest, D as listRecords, et as flattenForest, u as deriveLiveState } from "./subcommands-
|
|
6
|
+
import { $ as buildAgentForest, D as listRecords, et as flattenForest, u as deriveLiveState } from "./subcommands-Em1Mjajb.js";
|
|
7
7
|
import "./notifyStore-2SWKGwZI.js";
|
|
8
8
|
import "./webrtcLink-DLaJfTcB.js";
|
|
9
9
|
import "./remotes-Cdlaj7AP.js";
|
|
@@ -574,4 +574,4 @@ function readPpidSync(pid) {
|
|
|
574
574
|
|
|
575
575
|
//#endregion
|
|
576
576
|
export { cmdPs };
|
|
577
|
-
//# sourceMappingURL=cmdPs-
|
|
577
|
+
//# sourceMappingURL=cmdPs-C6BKjicc.js.map
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "./logger-CDIsZ-Pp.js";
|
|
2
|
-
import "./versionChecker-
|
|
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-
|
|
2
|
+
import "./versionChecker-B7eWJMXy.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-CUI0pmYw.js";
|
|
4
4
|
import { a as renderTree, c as describeBlock, i as renderDigest, l as monitorHint, o as unblockedTasks, r as openBlockers, t as reconcileTodos, u as removeControlCharacters } from "./todoAutomation-CbVVS4re.js";
|
|
5
5
|
import "./JsonlStore-BqF7AQ6E.js";
|
|
6
6
|
import "./globalPidIndex-DoaKEUkO.js";
|
|
@@ -3,7 +3,7 @@ import "./globalPidIndex-DoaKEUkO.js";
|
|
|
3
3
|
import "./messageLog-DdjBNqgt.js";
|
|
4
4
|
import "./e2e-z1xpwSAg.js";
|
|
5
5
|
import "./configShared-DKTgiz7K.js";
|
|
6
|
-
import { D as listRecords, I as renderLogTailLines, b as isPidAlive, u as deriveLiveState } from "./subcommands-
|
|
6
|
+
import { D as listRecords, I as renderLogTailLines, b as isPidAlive, u as deriveLiveState } from "./subcommands-Em1Mjajb.js";
|
|
7
7
|
import { f as readInbox, g as daemonLockOwnerPath, h as daemonLockDir, i as gcInboxes, l as listInboxParents, m as shouldStealLock, n as appendEvent, s as hostId, u as liveWatchers, x as notifyDir } from "./notifyStore-2SWKGwZI.js";
|
|
8
8
|
import "./webrtcLink-DLaJfTcB.js";
|
|
9
9
|
import "./remotes-Cdlaj7AP.js";
|
|
@@ -863,4 +863,4 @@ async function ensureDaemon() {
|
|
|
863
863
|
|
|
864
864
|
//#endregion
|
|
865
865
|
export { daemonStatus, ensureDaemon, requestDaemonStop, runDaemon };
|
|
866
|
-
//# sourceMappingURL=notifyDaemon-
|
|
866
|
+
//# sourceMappingURL=notifyDaemon-ej83JK7y.js.map
|
|
@@ -338,7 +338,7 @@ async function isParentWatching(parentWrapperPid, parentAgentPid, selfAgentPid,
|
|
|
338
338
|
logger.debug("[parent-ping] watcher lookup failed:", error);
|
|
339
339
|
}
|
|
340
340
|
try {
|
|
341
|
-
const { lastReadAt, READ_WINDOW_MS } = await import("./subcommands-
|
|
341
|
+
const { lastReadAt, READ_WINDOW_MS } = await import("./subcommands-DAqYMqVx.js");
|
|
342
342
|
const last = await lastReadAt(`agent:${parentAgentPid}`, selfAgentPid);
|
|
343
343
|
if (last !== null && now - last <= READ_WINDOW_MS) return true;
|
|
344
344
|
} catch (error) {
|
|
@@ -466,4 +466,4 @@ function startParentPingLoop(opts) {
|
|
|
466
466
|
|
|
467
467
|
//#endregion
|
|
468
468
|
export { startParentPingLoop };
|
|
469
|
-
//# sourceMappingURL=parentPingLoop-
|
|
469
|
+
//# sourceMappingURL=parentPingLoop-ke06LhOS.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { i as getInstalledPackage, n as compareVersions } from "./versionChecker-
|
|
1
|
+
import { i as getInstalledPackage, n as compareVersions } from "./versionChecker-B7eWJMXy.js";
|
|
2
2
|
import { execFileSync } from "child_process";
|
|
3
3
|
import { existsSync, mkdirSync, readdirSync, rmSync, statSync, unlinkSync } from "fs";
|
|
4
4
|
import { chmod, copyFile } from "fs/promises";
|
|
@@ -310,4 +310,4 @@ async function getRustBinary(options = {}) {
|
|
|
310
310
|
|
|
311
311
|
//#endregion
|
|
312
312
|
export { gcOldBinaryDirs as a, getDownloadUrl as c, findTrayLauncher as i, getRustBinary as l, findRustBinary as n, getBinDir as o, findSpawnHiddenLauncher as r, getBinaryName as s, downloadBinary as t };
|
|
313
|
-
//# sourceMappingURL=rustBinary-
|
|
313
|
+
//# sourceMappingURL=rustBinary-BWXier75.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import "./versionChecker-
|
|
2
|
-
import { a as gcOldBinaryDirs, c as getDownloadUrl, i as findTrayLauncher, l as getRustBinary, n as findRustBinary, o as getBinDir, r as findSpawnHiddenLauncher, s as getBinaryName, t as downloadBinary } from "./rustBinary-
|
|
1
|
+
import "./versionChecker-B7eWJMXy.js";
|
|
2
|
+
import { a as gcOldBinaryDirs, c as getDownloadUrl, i as findTrayLauncher, l as getRustBinary, n as findRustBinary, o as getBinDir, r as findSpawnHiddenLauncher, s as getBinaryName, t as downloadBinary } from "./rustBinary-BWXier75.js";
|
|
3
3
|
|
|
4
4
|
export { gcOldBinaryDirs };
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import "./logger-CDIsZ-Pp.js";
|
|
2
|
-
import "./versionChecker-
|
|
3
|
-
import "./ts-
|
|
2
|
+
import "./versionChecker-B7eWJMXy.js";
|
|
3
|
+
import "./ts-CUI0pmYw.js";
|
|
4
4
|
import "./todoAutomation-CbVVS4re.js";
|
|
5
5
|
import "./JsonlStore-BqF7AQ6E.js";
|
|
6
6
|
import "./globalPidIndex-DoaKEUkO.js";
|
|
7
7
|
import "./pidStore-B73xnAeT.js";
|
|
8
8
|
import "./messageLog-DdjBNqgt.js";
|
|
9
9
|
import "./todoStore-DF6vxHgV.js";
|
|
10
|
-
import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-
|
|
10
|
+
import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-DHk85zfy.js";
|
|
11
11
|
import { f as resolveSpawnCwd } from "./workspaceConfig-DctWuxUP.js";
|
|
12
12
|
import { n as liveEnv, t as ensureNodeRuntime } from "./nodeRuntime-C_LtZrpR.js";
|
|
13
13
|
import { createHash } from "node:crypto";
|
|
@@ -154,4 +154,4 @@ async function cmdSchedule(rest) {
|
|
|
154
154
|
|
|
155
155
|
//#endregion
|
|
156
156
|
export { cmdSchedule };
|
|
157
|
-
//# sourceMappingURL=schedule-
|
|
157
|
+
//# sourceMappingURL=schedule-CSB8FTTu.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import "./logger-CDIsZ-Pp.js";
|
|
2
|
-
import { i as getInstalledPackage } from "./versionChecker-
|
|
3
|
-
import { r as findSpawnHiddenLauncher } from "./rustBinary-
|
|
4
|
-
import { c as permissionBadge, i as answerAsk, o as listAsks, u as CLAUDE_SESSION_PIN_ENV } from "./ts-
|
|
2
|
+
import { i as getInstalledPackage } from "./versionChecker-B7eWJMXy.js";
|
|
3
|
+
import { r as findSpawnHiddenLauncher } from "./rustBinary-BWXier75.js";
|
|
4
|
+
import { c as permissionBadge, i as answerAsk, o as listAsks, u as CLAUDE_SESSION_PIN_ENV } from "./ts-CUI0pmYw.js";
|
|
5
5
|
import { t as agentYesHome$1 } from "./agentYesHome-BNtn19J4.js";
|
|
6
6
|
import { u as removeControlCharacters } from "./todoAutomation-CbVVS4re.js";
|
|
7
7
|
import "./JsonlStore-BqF7AQ6E.js";
|
|
@@ -12,18 +12,18 @@ import { t as pgidForWrapper } from "./reaper-UimuuTfO.js";
|
|
|
12
12
|
import "./todoStore-DF6vxHgV.js";
|
|
13
13
|
import "./e2e-z1xpwSAg.js";
|
|
14
14
|
import "./configShared-DKTgiz7K.js";
|
|
15
|
-
import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-
|
|
16
|
-
import { D as listRecords, F as recentReadEdges, I as renderLogTailLines, L as renderRawLog, M as readNotes, N as readPtysize, P as recentMessageEdges, Q as TYPING_BADGE, R as renderRawLogLines, W as snapshotStatus, X as writeToIpc, Z as withIpcLock, c as controlCodeFromName, d as deriveLiveStatus, f as extractBadges, h as extractTaskCounts, j as readLogForRender, m as extractNeedsInput, w as isUserTyping, z as resolveOne } from "./subcommands-
|
|
15
|
+
import { t as SUPPORTED_CLIS } from "./SUPPORTED_CLIS-DHk85zfy.js";
|
|
16
|
+
import { D as listRecords, F as recentReadEdges, I as renderLogTailLines, L as renderRawLog, M as readNotes, N as readPtysize, P as recentMessageEdges, Q as TYPING_BADGE, R as renderRawLogLines, W as snapshotStatus, X as writeToIpc, Z as withIpcLock, c as controlCodeFromName, d as deriveLiveStatus, f as extractBadges, h as extractTaskCounts, j as readLogForRender, m as extractNeedsInput, w as isUserTyping, z as resolveOne } from "./subcommands-Em1Mjajb.js";
|
|
17
17
|
import { c as isTransientLockMkdirError } from "./notifyStore-2SWKGwZI.js";
|
|
18
18
|
import "./webrtcLink-DLaJfTcB.js";
|
|
19
19
|
import "./remotes-Cdlaj7AP.js";
|
|
20
20
|
import { i as frameVisitorMessage, s as verifyCapability, t as MAX_CALLBACK_MSG_BYTES } from "./callbackCore-Bl2gGcxg.js";
|
|
21
|
-
import { n as isCallbackRevoked, r as loadCallbackSecretReadOnly } from "./callback-
|
|
21
|
+
import { n as isCallbackRevoked, r as loadCallbackSecretReadOnly } from "./callback-DpzzyOsY.js";
|
|
22
22
|
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-DctWuxUP.js";
|
|
23
23
|
import { n as liveEnv, t as ensureNodeRuntime } from "./nodeRuntime-C_LtZrpR.js";
|
|
24
|
-
import { i as importProvisionModule } from "./ws-
|
|
24
|
+
import { i as importProvisionModule } from "./ws-MQ5iyIWn.js";
|
|
25
25
|
import { r as spawnRejectionReason } from "./spawnGate-DtC_ffme.js";
|
|
26
|
-
import { i as launchTray } from "./trayApp-
|
|
26
|
+
import { i as launchTray } from "./trayApp-ChDq575c.js";
|
|
27
27
|
import yargs from "yargs";
|
|
28
28
|
import { appendFile, mkdir, open, readFile, readdir, rename, rm, stat, unlink, writeFile } from "fs/promises";
|
|
29
29
|
import { arch, cpus, freemem, homedir, hostname, loadavg, platform, totalmem, uptime, userInfo } from "os";
|
|
@@ -2436,7 +2436,7 @@ Options:
|
|
|
2436
2436
|
}
|
|
2437
2437
|
});
|
|
2438
2438
|
if (req.method === "GET" && p === "/api/ws") {
|
|
2439
|
-
const ws = await import("./ws-
|
|
2439
|
+
const ws = await import("./ws-D2An6-fY.js");
|
|
2440
2440
|
try {
|
|
2441
2441
|
await ws.loadProvision();
|
|
2442
2442
|
} catch (e) {
|
|
@@ -2456,7 +2456,7 @@ Options:
|
|
|
2456
2456
|
if (req.method === "GET" && p === "/api/ws/status") {
|
|
2457
2457
|
const dirRaw = url.searchParams.get("path");
|
|
2458
2458
|
if (!dirRaw) return new Response("missing ?path=<workspace dir>", { status: 400 });
|
|
2459
|
-
const ws = await import("./ws-
|
|
2459
|
+
const ws = await import("./ws-D2An6-fY.js");
|
|
2460
2460
|
let prov;
|
|
2461
2461
|
try {
|
|
2462
2462
|
prov = await ws.loadProvision();
|
|
@@ -2478,7 +2478,7 @@ Options:
|
|
|
2478
2478
|
}
|
|
2479
2479
|
}
|
|
2480
2480
|
if (req.method === "GET" && p === "/api/ws/repos") {
|
|
2481
|
-
const ws = await import("./ws-
|
|
2481
|
+
const ws = await import("./ws-D2An6-fY.js");
|
|
2482
2482
|
try {
|
|
2483
2483
|
await ws.loadProvision();
|
|
2484
2484
|
} catch (e) {
|
|
@@ -2559,7 +2559,7 @@ Options:
|
|
|
2559
2559
|
const m = /^([A-Za-z0-9_.-]+)\/([A-Za-z0-9_.-]+)$/.exec(repoParam);
|
|
2560
2560
|
if (!m || m[1] === "." || m[1] === ".." || m[2] === "." || m[2] === "..") return new Response("missing/invalid ?repo=<owner>/<repo>", { status: 400 });
|
|
2561
2561
|
const [, owner, repo] = m;
|
|
2562
|
-
const ws = await import("./ws-
|
|
2562
|
+
const ws = await import("./ws-D2An6-fY.js");
|
|
2563
2563
|
let prov;
|
|
2564
2564
|
try {
|
|
2565
2565
|
prov = await ws.loadProvision();
|
|
@@ -3470,7 +3470,7 @@ Options:
|
|
|
3470
3470
|
const perm = body.perm ?? "r";
|
|
3471
3471
|
if (perm !== "r" && perm !== "rw") return new Response(`invalid perm ${perm} (want r or rw)`, { status: 400 });
|
|
3472
3472
|
try {
|
|
3473
|
-
const { createScopedShare } = await import("./agentShare-
|
|
3473
|
+
const { createScopedShare } = await import("./agentShare-CaSaTksu.js");
|
|
3474
3474
|
const share = await createScopedShare({
|
|
3475
3475
|
agent: body.agent,
|
|
3476
3476
|
perm,
|
|
@@ -3485,12 +3485,12 @@ Options:
|
|
|
3485
3485
|
}
|
|
3486
3486
|
}
|
|
3487
3487
|
if (req.method === "GET" && p === "/api/shares") {
|
|
3488
|
-
const { listShares } = await import("./agentShare-
|
|
3488
|
+
const { listShares } = await import("./agentShare-CaSaTksu.js");
|
|
3489
3489
|
return Response.json(listShares());
|
|
3490
3490
|
}
|
|
3491
3491
|
const revokeM = /^\/api\/share\/([^/]+)$/.exec(p);
|
|
3492
3492
|
if (req.method === "DELETE" && revokeM) {
|
|
3493
|
-
const { revokeShare } = await import("./agentShare-
|
|
3493
|
+
const { revokeShare } = await import("./agentShare-CaSaTksu.js");
|
|
3494
3494
|
const ok = revokeShare(decodeURIComponent(revokeM[1]));
|
|
3495
3495
|
return new Response(ok ? "revoked" : "no such share", { status: ok ? 200 : 404 });
|
|
3496
3496
|
}
|
|
@@ -3795,7 +3795,7 @@ Options:
|
|
|
3795
3795
|
const shutdown = (resolve) => {
|
|
3796
3796
|
if (heartbeat) clearInterval(heartbeat);
|
|
3797
3797
|
closeShare?.();
|
|
3798
|
-
import("./agentShare-
|
|
3798
|
+
import("./agentShare-CaSaTksu.js").then((m) => m.revokeAllShares()).catch(() => {});
|
|
3799
3799
|
server?.stop();
|
|
3800
3800
|
Promise.resolve(releaseHostLock?.()).catch(() => {}).then(resolve);
|
|
3801
3801
|
};
|
|
@@ -3808,4 +3808,4 @@ Options:
|
|
|
3808
3808
|
|
|
3809
3809
|
//#endregion
|
|
3810
3810
|
export { cmdServe, loadTokenReadOnly, mintScopedTermToken, resolveDaemonHttpBase, resolveLocalServeUrl };
|
|
3811
|
-
//# sourceMappingURL=serve-
|
|
3811
|
+
//# sourceMappingURL=serve-B6aYKTLs.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-
|
|
43
|
+
const { cmdServe } = await import("./serve-B6aYKTLs.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-
|
|
53
|
+
//# sourceMappingURL=setup-MM_Sn30Q.js.map
|
|
@@ -3,7 +3,7 @@ import "./globalPidIndex-DoaKEUkO.js";
|
|
|
3
3
|
import "./messageLog-DdjBNqgt.js";
|
|
4
4
|
import "./e2e-z1xpwSAg.js";
|
|
5
5
|
import "./configShared-DKTgiz7K.js";
|
|
6
|
-
import { A as readAgentPtysize, B as resolveReadWindow, C as isUnknownManagerToken, D as listRecords, E as lastStdinAt, F as recentReadEdges, G as stdinActivityPath, H as restartHintLines, I as renderLogTailLines, J as waitForLogQuiet, K as stopTipForCli, L as renderRawLog, M as readNotes, N as readPtysize, O as matchKeyword, P as recentMessageEdges, R as renderRawLogLines, S as isSubcommand, T as lastReadAt, U as runSubcommand, V as resolveResumeArgs, W as snapshotStatus, X as writeToIpc, Y as writeKeysPaced, _ as isAgentStuck, a as TYPING_WINDOW_MS, b as isPidAlive, c as controlCodeFromName, d as deriveLiveStatus, f as extractBadges, g as finalizedLines, h as extractTaskCounts, i as READ_WINDOW_MS, j as readLogForRender, k as menuSelectKeys, l as cursorAbs, m as extractNeedsInput, n as MAX_RENDER_BYTES, o as backoffWhileTyping, p as extractMenu, q as submitAndConfirm, 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 resolveOne } from "./subcommands-
|
|
6
|
+
import { A as readAgentPtysize, B as resolveReadWindow, C as isUnknownManagerToken, D as listRecords, E as lastStdinAt, F as recentReadEdges, G as stdinActivityPath, H as restartHintLines, I as renderLogTailLines, J as waitForLogQuiet, K as stopTipForCli, L as renderRawLog, M as readNotes, N as readPtysize, O as matchKeyword, P as recentMessageEdges, R as renderRawLogLines, S as isSubcommand, T as lastReadAt, U as runSubcommand, V as resolveResumeArgs, W as snapshotStatus, X as writeToIpc, Y as writeKeysPaced, _ as isAgentStuck, a as TYPING_WINDOW_MS, b as isPidAlive, c as controlCodeFromName, d as deriveLiveStatus, f as extractBadges, g as finalizedLines, h as extractTaskCounts, i as READ_WINDOW_MS, j as readLogForRender, k as menuSelectKeys, l as cursorAbs, m as extractNeedsInput, n as MAX_RENDER_BYTES, o as backoffWhileTyping, p as extractMenu, q as submitAndConfirm, 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 resolveOne } from "./subcommands-Em1Mjajb.js";
|
|
7
7
|
import "./notifyStore-2SWKGwZI.js";
|
|
8
8
|
import "./webrtcLink-DLaJfTcB.js";
|
|
9
9
|
import "./remotes-Cdlaj7AP.js";
|
|
@@ -904,7 +904,7 @@ async function runSubcommand(argv) {
|
|
|
904
904
|
switch (sub) {
|
|
905
905
|
case "ls":
|
|
906
906
|
case "list": return await cmdLs(rest);
|
|
907
|
-
case "ps": return await (await import("./cmdPs-
|
|
907
|
+
case "ps": return await (await import("./cmdPs-C6BKjicc.js")).cmdPs(rest);
|
|
908
908
|
case "status": return await cmdStatus(rest);
|
|
909
909
|
case "whoami": return await cmdWhoami(rest);
|
|
910
910
|
case "result": return await cmdResult(rest);
|
|
@@ -951,35 +951,35 @@ async function runSubcommand(argv) {
|
|
|
951
951
|
return cmdCh(rest);
|
|
952
952
|
}
|
|
953
953
|
case "term": {
|
|
954
|
-
const { cmdTerm } = await import("./terminal-
|
|
954
|
+
const { cmdTerm } = await import("./terminal-Bg1GFfRw.js");
|
|
955
955
|
return cmdTerm(rest);
|
|
956
956
|
}
|
|
957
957
|
case "widget": {
|
|
958
|
-
const { cmdWidget } = await import("./widget-
|
|
958
|
+
const { cmdWidget } = await import("./widget-vCVi9QYk.js");
|
|
959
959
|
return cmdWidget(rest);
|
|
960
960
|
}
|
|
961
961
|
case "mint": {
|
|
962
|
-
const { cmdMint } = await import("./widget-
|
|
962
|
+
const { cmdMint } = await import("./widget-vCVi9QYk.js");
|
|
963
963
|
return cmdMint(rest);
|
|
964
964
|
}
|
|
965
965
|
case "serve": {
|
|
966
|
-
const { cmdServe } = await import("./serve-
|
|
966
|
+
const { cmdServe } = await import("./serve-B6aYKTLs.js");
|
|
967
967
|
return cmdServe(rest);
|
|
968
968
|
}
|
|
969
969
|
case "tray": {
|
|
970
|
-
const { cmdTray } = await import("./trayApp-
|
|
970
|
+
const { cmdTray } = await import("./trayApp-Dieq8pPs.js");
|
|
971
971
|
return cmdTray(rest);
|
|
972
972
|
}
|
|
973
973
|
case "setup": {
|
|
974
|
-
const { cmdSetup } = await import("./setup-
|
|
974
|
+
const { cmdSetup } = await import("./setup-MM_Sn30Q.js");
|
|
975
975
|
return cmdSetup(rest);
|
|
976
976
|
}
|
|
977
977
|
case "ws": {
|
|
978
|
-
const { cmdWs } = await import("./ws-
|
|
978
|
+
const { cmdWs } = await import("./ws-D2An6-fY.js");
|
|
979
979
|
return cmdWs(rest);
|
|
980
980
|
}
|
|
981
981
|
case "schedule": {
|
|
982
|
-
const { cmdSchedule } = await import("./schedule-
|
|
982
|
+
const { cmdSchedule } = await import("./schedule-CSB8FTTu.js");
|
|
983
983
|
return cmdSchedule(rest);
|
|
984
984
|
}
|
|
985
985
|
case "remote": {
|
|
@@ -991,14 +991,14 @@ async function runSubcommand(argv) {
|
|
|
991
991
|
return cmdExpose(rest);
|
|
992
992
|
}
|
|
993
993
|
case "callback": {
|
|
994
|
-
const { cmdCallback } = await import("./callback-
|
|
994
|
+
const { cmdCallback } = await import("./callback-Se8JJTZ9.js");
|
|
995
995
|
return cmdCallback(rest);
|
|
996
996
|
}
|
|
997
997
|
case "reap":
|
|
998
998
|
await (await import("./reaper-BDMiMfwK.js")).sweep();
|
|
999
999
|
return 0;
|
|
1000
1000
|
case "gc": {
|
|
1001
|
-
const { gcOldBinaryDirs } = await import("./rustBinary-
|
|
1001
|
+
const { gcOldBinaryDirs } = await import("./rustBinary-D5xxABSh.js");
|
|
1002
1002
|
const res = gcOldBinaryDirs();
|
|
1003
1003
|
if (res.removed.length === 0) process.stdout.write("no old agent-yes binary cache dirs to remove\n");
|
|
1004
1004
|
else {
|
|
@@ -3474,7 +3474,7 @@ async function cmdAttach(rest) {
|
|
|
3474
3474
|
const winsizeDir = path.join(ayHome, "winsize");
|
|
3475
3475
|
await mkdir(winsizeDir, { recursive: true });
|
|
3476
3476
|
const winsizePath = path.join(winsizeDir, String(record.pid));
|
|
3477
|
-
const { resolveDaemonHttpBase, loadTokenReadOnly } = await import("./serve-
|
|
3477
|
+
const { resolveDaemonHttpBase, loadTokenReadOnly } = await import("./serve-B6aYKTLs.js");
|
|
3478
3478
|
const daemonBase = await resolveDaemonHttpBase().catch(() => null);
|
|
3479
3479
|
const daemonToken = daemonBase ? await loadTokenReadOnly().catch(() => null) ?? "" : "";
|
|
3480
3480
|
const capViewer = `attach:${process.pid}`;
|
|
@@ -4192,7 +4192,7 @@ async function cmdNotify(rest) {
|
|
|
4192
4192
|
}
|
|
4193
4193
|
const ensure = async () => {
|
|
4194
4194
|
if (!argv["ensure-daemon"]) return;
|
|
4195
|
-
const { ensureDaemon } = await import("./notifyDaemon-
|
|
4195
|
+
const { ensureDaemon } = await import("./notifyDaemon-ej83JK7y.js");
|
|
4196
4196
|
await ensureDaemon().catch(() => null);
|
|
4197
4197
|
};
|
|
4198
4198
|
await heartbeatWatcher(parent, selfStartedAt);
|
|
@@ -4266,7 +4266,7 @@ async function cmdNotifyCursor(args) {
|
|
|
4266
4266
|
}
|
|
4267
4267
|
async function cmdNotifyd(rest) {
|
|
4268
4268
|
const sub = rest[0] ?? "status";
|
|
4269
|
-
const daemon = await import("./notifyDaemon-
|
|
4269
|
+
const daemon = await import("./notifyDaemon-ej83JK7y.js");
|
|
4270
4270
|
switch (sub) {
|
|
4271
4271
|
case "run": return daemon.runDaemon();
|
|
4272
4272
|
case "once": return daemon.runDaemon({ once: true });
|
|
@@ -4293,4 +4293,4 @@ async function cmdNotifyd(rest) {
|
|
|
4293
4293
|
|
|
4294
4294
|
//#endregion
|
|
4295
4295
|
export { buildAgentForest as $, readAgentPtysize as A, resolveReadWindow as B, isUnknownManagerToken as C, listRecords as D, lastStdinAt as E, recentReadEdges as F, stdinActivityPath as G, restartHintLines as H, renderLogTailLines as I, waitForLogQuiet as J, stopTipForCli as K, renderRawLog as L, readNotes as M, readPtysize as N, matchKeyword as O, recentMessageEdges as P, TYPING_BADGE as Q, renderRawLogLines as R, isSubcommand as S, lastReadAt as T, runSubcommand as U, resolveResumeArgs as V, snapshotStatus as W, writeToIpc as X, writeKeysPaced as Y, withIpcLock as Z, isAgentStuck as _, TYPING_WINDOW_MS as a, isPidAlive as b, controlCodeFromName as c, deriveLiveStatus as d, flattenForest as et, extractBadges as f, finalizedLines as g, extractTaskCounts as h, READ_WINDOW_MS as i, readLogForRender as j, menuSelectKeys as k, cursorAbs as l, extractNeedsInput as m, MAX_RENDER_BYTES as n, backoffWhileTyping as o, extractMenu as p, submitAndConfirm as q, READ_PAGE_DEFAULT as r, cmdHelp as s, GRACEFUL_EXIT_COMMANDS as t, deriveLiveState as u, isBareManagerInvocation as v, isUserTyping as w, isSlashCommand as x, isExitRequest as y, resolveOne as z };
|
|
4296
|
-
//# sourceMappingURL=subcommands-
|
|
4296
|
+
//# sourceMappingURL=subcommands-Em1Mjajb.js.map
|
|
@@ -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-
|
|
101
|
+
const { mintScopedTermToken } = await import("./serve-B6aYKTLs.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-
|
|
138
|
+
//# sourceMappingURL=terminal-Bg1GFfRw.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { i as findTrayLauncher } from "./rustBinary-
|
|
1
|
+
import { i as findTrayLauncher } from "./rustBinary-BWXier75.js";
|
|
2
2
|
import { t as agentYesHome } from "./agentYesHome-BNtn19J4.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-
|
|
100
|
+
//# sourceMappingURL=trayApp-ChDq575c.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 { i as getInstalledPackage } from "./versionChecker-
|
|
3
|
+
import { i as getInstalledPackage } from "./versionChecker-B7eWJMXy.js";
|
|
4
4
|
import { t as agentYesHome } from "./agentYesHome-BNtn19J4.js";
|
|
5
5
|
import { u as removeControlCharacters } from "./todoAutomation-CbVVS4re.js";
|
|
6
6
|
import { i as shouldUseLock, r as releaseLock, t as acquireLock } from "./runningLock-BOIPD_Vs.js";
|
|
@@ -2071,7 +2071,7 @@ async function agentYes({ cli, cliArgs = [], skipPermissions = false, prompt, ro
|
|
|
2071
2071
|
}, 100);
|
|
2072
2072
|
const cleanupHeartbeat = () => clearInterval(heartbeatInterval);
|
|
2073
2073
|
shell.onExit(cleanupHeartbeat);
|
|
2074
|
-
const { startParentPingLoop } = await import("./parentPingLoop-
|
|
2074
|
+
const { startParentPingLoop } = await import("./parentPingLoop-ke06LhOS.js");
|
|
2075
2075
|
const parentPingLoop = startParentPingLoop({
|
|
2076
2076
|
parentPid,
|
|
2077
2077
|
selfWrapperPid: process.pid,
|
|
@@ -2334,4 +2334,4 @@ function sleep(ms) {
|
|
|
2334
2334
|
|
|
2335
2335
|
//#endregion
|
|
2336
2336
|
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 };
|
|
2337
|
-
//# sourceMappingURL=ts-
|
|
2337
|
+
//# sourceMappingURL=ts-CUI0pmYw.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.
|
|
10
|
+
var version = "1.275.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 a, getInstalledPackage as i, compareVersions as n, displayVersion as r, checkAndAutoUpdate as t };
|
|
218
|
-
//# sourceMappingURL=versionChecker-
|
|
218
|
+
//# sourceMappingURL=versionChecker-B7eWJMXy.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-
|
|
31
|
+
const { resolveDaemonHttpBase, loadTokenReadOnly } = await import("./serve-B6aYKTLs.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-
|
|
189
|
+
const { mintScopedTermToken } = await import("./serve-B6aYKTLs.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-
|
|
205
|
+
//# sourceMappingURL=widget-vCVi9QYk.js.map
|
|
@@ -3,10 +3,10 @@ import "./globalPidIndex-DoaKEUkO.js";
|
|
|
3
3
|
import "./messageLog-DdjBNqgt.js";
|
|
4
4
|
import "./e2e-z1xpwSAg.js";
|
|
5
5
|
import "./configShared-DKTgiz7K.js";
|
|
6
|
-
import "./subcommands-
|
|
6
|
+
import "./subcommands-Em1Mjajb.js";
|
|
7
7
|
import "./notifyStore-2SWKGwZI.js";
|
|
8
8
|
import "./webrtcLink-DLaJfTcB.js";
|
|
9
9
|
import "./remotes-Cdlaj7AP.js";
|
|
10
|
-
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-
|
|
10
|
+
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-MQ5iyIWn.js";
|
|
11
11
|
|
|
12
12
|
export { WS_JSON_SCHEMA, cmdWs, collectWorkspaces, isPathInside, loadProvision, walkWorkspaces, workspaceStatus };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { D as listRecords } from "./subcommands-
|
|
1
|
+
import { D as listRecords } from "./subcommands-Em1Mjajb.js";
|
|
2
2
|
import { a as getProvisionRoot } from "./workspaceConfig-DctWuxUP.js";
|
|
3
3
|
import { existsSync } from "fs";
|
|
4
4
|
import { lstat, opendir } from "fs/promises";
|
|
@@ -424,4 +424,4 @@ async function cmdWs(args) {
|
|
|
424
424
|
|
|
425
425
|
//#endregion
|
|
426
426
|
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 };
|
|
427
|
-
//# sourceMappingURL=ws-
|
|
427
|
+
//# sourceMappingURL=ws-MQ5iyIWn.js.map
|
package/lab/ui/index.html
CHANGED
|
@@ -144,7 +144,10 @@
|
|
|
144
144
|
}
|
|
145
145
|
|
|
146
146
|
/* ---- left: list ---- */
|
|
147
|
+
/* position:relative anchors the floating "+ New agent" FAB (see .newbtn)
|
|
148
|
+
to this panel, so it rides the splitter instead of the viewport. */
|
|
147
149
|
.left {
|
|
150
|
+
position: relative;
|
|
148
151
|
display: flex;
|
|
149
152
|
flex-direction: column;
|
|
150
153
|
min-width: 0;
|
|
@@ -1053,26 +1056,82 @@
|
|
|
1053
1056
|
margin-top: 16px;
|
|
1054
1057
|
}
|
|
1055
1058
|
|
|
1056
|
-
/* new-agent button (
|
|
1059
|
+
/* new-agent button (floating FAB) + spawn form (reuses the launch overlay shell) */
|
|
1057
1060
|
.metaright {
|
|
1058
1061
|
display: flex;
|
|
1059
1062
|
align-items: center;
|
|
1060
1063
|
gap: 10px;
|
|
1061
1064
|
}
|
|
1065
|
+
/* Floats over the bottom-right of the left panel and can be dragged
|
|
1066
|
+
anywhere inside it (position persisted as right/bottom offsets — see the
|
|
1067
|
+
drag IIFE near the splitter's). z-index sits above the list + its wire
|
|
1068
|
+
overlay but below every modal/overlay, so it never covers a dialog.
|
|
1069
|
+
The solid-accent look here is also the no-backdrop-filter fallback:
|
|
1070
|
+
translucent without a blur behind it would be unreadable over rows. */
|
|
1062
1071
|
.newbtn {
|
|
1072
|
+
position: absolute;
|
|
1073
|
+
right: 14px;
|
|
1074
|
+
bottom: max(14px, var(--sab));
|
|
1075
|
+
z-index: 10;
|
|
1063
1076
|
background: var(--accent);
|
|
1064
1077
|
color: var(--bg);
|
|
1065
|
-
border:
|
|
1066
|
-
border-radius:
|
|
1078
|
+
border: 1px solid transparent;
|
|
1079
|
+
border-radius: 999px;
|
|
1067
1080
|
font-weight: 600;
|
|
1068
1081
|
font-size: 11.5px;
|
|
1069
|
-
padding:
|
|
1082
|
+
padding: 7px 14px;
|
|
1070
1083
|
cursor: pointer;
|
|
1071
1084
|
line-height: 1.6;
|
|
1085
|
+
box-shadow: 0 4px 14px rgba(0, 0, 0, 0.28);
|
|
1086
|
+
touch-action: none; /* pointermove must not be stolen by scroll-to-pan */
|
|
1087
|
+
user-select: none;
|
|
1088
|
+
-webkit-user-select: none;
|
|
1089
|
+
-webkit-tap-highlight-color: transparent;
|
|
1090
|
+
transition:
|
|
1091
|
+
background 0.18s ease,
|
|
1092
|
+
color 0.18s ease,
|
|
1093
|
+
box-shadow 0.18s ease;
|
|
1072
1094
|
}
|
|
1073
1095
|
.newbtn:hover {
|
|
1074
1096
|
filter: brightness(1.12);
|
|
1075
1097
|
}
|
|
1098
|
+
.newbtn.dragging {
|
|
1099
|
+
cursor: grabbing;
|
|
1100
|
+
transition: none; /* follow the pointer 1:1, don't lag behind it */
|
|
1101
|
+
}
|
|
1102
|
+
/* Liquid-glass idle state, only where the platform can actually blur what's
|
|
1103
|
+
behind the button (Safari/Chrome/Edge, and Firefox with the pref on).
|
|
1104
|
+
Unfocused = translucent tinted glass with a specular rim; hover / keyboard
|
|
1105
|
+
focus / drag snap it back to the opaque accent pill above. */
|
|
1106
|
+
@supports (
|
|
1107
|
+
((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) and
|
|
1108
|
+
(background: color-mix(in srgb, red, blue))
|
|
1109
|
+
) {
|
|
1110
|
+
.newbtn {
|
|
1111
|
+
background: color-mix(in srgb, var(--accent) 16%, transparent);
|
|
1112
|
+
color: var(--accent);
|
|
1113
|
+
border-color: color-mix(in srgb, var(--fg) 18%, transparent);
|
|
1114
|
+
-webkit-backdrop-filter: blur(14px) saturate(180%);
|
|
1115
|
+
backdrop-filter: blur(14px) saturate(180%);
|
|
1116
|
+
box-shadow:
|
|
1117
|
+
0 4px 14px rgba(0, 0, 0, 0.22),
|
|
1118
|
+
inset 0 1px 0 color-mix(in srgb, #fff 34%, transparent),
|
|
1119
|
+
inset 0 -1px 0 color-mix(in srgb, #000 14%, transparent);
|
|
1120
|
+
}
|
|
1121
|
+
.newbtn:hover,
|
|
1122
|
+
.newbtn:focus-visible,
|
|
1123
|
+
.newbtn.dragging {
|
|
1124
|
+
background: var(--accent);
|
|
1125
|
+
color: var(--bg);
|
|
1126
|
+
border-color: transparent;
|
|
1127
|
+
box-shadow: 0 6px 20px rgba(0, 0, 0, 0.32);
|
|
1128
|
+
}
|
|
1129
|
+
}
|
|
1130
|
+
@media (prefers-reduced-motion: reduce) {
|
|
1131
|
+
.newbtn {
|
|
1132
|
+
transition: none;
|
|
1133
|
+
}
|
|
1134
|
+
}
|
|
1076
1135
|
.viewbtn {
|
|
1077
1136
|
background: transparent;
|
|
1078
1137
|
border: 1px solid var(--line);
|
|
@@ -1181,8 +1240,10 @@
|
|
|
1181
1240
|
overflow-y: auto;
|
|
1182
1241
|
flex: 1;
|
|
1183
1242
|
min-height: 0;
|
|
1184
|
-
/* clear the home-indicator / gesture bar so the last row stays tappable
|
|
1185
|
-
|
|
1243
|
+
/* clear the home-indicator / gesture bar so the last row stays tappable,
|
|
1244
|
+
plus room for the floating New-agent FAB parked at the bottom-right —
|
|
1245
|
+
without it the last row can never be scrolled out from under the button. */
|
|
1246
|
+
padding-bottom: calc(var(--sab) + 60px);
|
|
1186
1247
|
}
|
|
1187
1248
|
.row {
|
|
1188
1249
|
padding: 11px 18px;
|
|
@@ -2079,15 +2140,21 @@
|
|
|
2079
2140
|
</button>
|
|
2080
2141
|
</div>
|
|
2081
2142
|
</span>
|
|
2082
|
-
<button id="newbtn" class="newbtn" title="spawn a new agent on this fleet">
|
|
2083
|
-
+ New agent
|
|
2084
|
-
</button>
|
|
2085
2143
|
<span id="conn" class="connbadge" title="rooms — click to manage">● local</span>
|
|
2086
2144
|
</span>
|
|
2087
2145
|
</div>
|
|
2088
2146
|
<div class="rooms" id="rooms" style="display: none"></div>
|
|
2089
2147
|
</div>
|
|
2090
2148
|
<div class="list" id="list"></div>
|
|
2149
|
+
<!-- Floating spawn FAB: last child of .left so it paints over the list;
|
|
2150
|
+
absolutely positioned + draggable inside the panel (see .newbtn). -->
|
|
2151
|
+
<button
|
|
2152
|
+
id="newbtn"
|
|
2153
|
+
class="newbtn"
|
|
2154
|
+
title="spawn a new agent on this fleet — drag to move the button"
|
|
2155
|
+
>
|
|
2156
|
+
+ New agent
|
|
2157
|
+
</button>
|
|
2091
2158
|
</div>
|
|
2092
2159
|
|
|
2093
2160
|
<div class="splitter" id="splitter" title="drag to resize"></div>
|
|
@@ -8830,6 +8897,115 @@ my.translate = async (text, lang) => {
|
|
|
8830
8897
|
sp.addEventListener("pointerup", end);
|
|
8831
8898
|
sp.addEventListener("pointercancel", end);
|
|
8832
8899
|
})();
|
|
8900
|
+
|
|
8901
|
+
// ---- draggable floating "+ New agent" FAB ------------------------------
|
|
8902
|
+
// The button floats over the bottom-right of the left panel and can be
|
|
8903
|
+
// parked anywhere inside it. The position is stored as offsets from the
|
|
8904
|
+
// panel's RIGHT/BOTTOM edges (not left/top) so it stays put when the
|
|
8905
|
+
// splitter resizes the panel or the layout flips to the mobile column.
|
|
8906
|
+
(function () {
|
|
8907
|
+
const btn = $("newbtn");
|
|
8908
|
+
const left = document.querySelector(".left");
|
|
8909
|
+
if (!btn || !left) return;
|
|
8910
|
+
const KEY = "ay.newbtnPos";
|
|
8911
|
+
const EDGE = 8; // never let the button hang off the panel
|
|
8912
|
+
const THRESH = 5; // px of travel before a press counts as a drag
|
|
8913
|
+
let pos = null; // {r,b} the user's intent, pre-clamp
|
|
8914
|
+
let drag = null;
|
|
8915
|
+
let suppressClick = false;
|
|
8916
|
+
|
|
8917
|
+
// Clamp against the CURRENT panel box on every apply: a saved position
|
|
8918
|
+
// from a wide panel must not push the button out of a narrow one, but
|
|
8919
|
+
// `pos` keeps the original intent so widening restores it.
|
|
8920
|
+
function apply() {
|
|
8921
|
+
if (!pos) return;
|
|
8922
|
+
const lr = left.getBoundingClientRect();
|
|
8923
|
+
if (!lr.width || !lr.height) return; // panel hidden (mobile detail view)
|
|
8924
|
+
const maxR = Math.max(EDGE, lr.width - btn.offsetWidth - EDGE);
|
|
8925
|
+
const maxB = Math.max(EDGE, lr.height - btn.offsetHeight - EDGE);
|
|
8926
|
+
btn.style.right = Math.min(Math.max(pos.r, EDGE), maxR) + "px";
|
|
8927
|
+
btn.style.bottom = Math.min(Math.max(pos.b, EDGE), maxB) + "px";
|
|
8928
|
+
}
|
|
8929
|
+
|
|
8930
|
+
try {
|
|
8931
|
+
const s = JSON.parse(localStorage.getItem(KEY) || "null");
|
|
8932
|
+
if (s && isFinite(s.r) && isFinite(s.b)) pos = { r: +s.r, b: +s.b };
|
|
8933
|
+
} catch {}
|
|
8934
|
+
apply();
|
|
8935
|
+
// Re-clamp whenever the panel box changes — window resize, splitter drag
|
|
8936
|
+
// (which never fires a window resize), or the mobile column flip.
|
|
8937
|
+
if (typeof ResizeObserver === "function") new ResizeObserver(apply).observe(left);
|
|
8938
|
+
else addEventListener("resize", apply);
|
|
8939
|
+
|
|
8940
|
+
btn.addEventListener("pointerdown", (e) => {
|
|
8941
|
+
if (e.pointerType === "mouse" && e.button !== 0) return;
|
|
8942
|
+
const lr = left.getBoundingClientRect();
|
|
8943
|
+
const br = btn.getBoundingClientRect();
|
|
8944
|
+
drag = {
|
|
8945
|
+
id: e.pointerId,
|
|
8946
|
+
x: e.clientX,
|
|
8947
|
+
y: e.clientY,
|
|
8948
|
+
r: lr.right - br.right,
|
|
8949
|
+
b: lr.bottom - br.bottom,
|
|
8950
|
+
moved: false,
|
|
8951
|
+
};
|
|
8952
|
+
suppressClick = false;
|
|
8953
|
+
try {
|
|
8954
|
+
btn.setPointerCapture(e.pointerId);
|
|
8955
|
+
} catch {}
|
|
8956
|
+
});
|
|
8957
|
+
|
|
8958
|
+
btn.addEventListener("pointermove", (e) => {
|
|
8959
|
+
if (!drag || e.pointerId !== drag.id) return;
|
|
8960
|
+
const dx = e.clientX - drag.x;
|
|
8961
|
+
const dy = e.clientY - drag.y;
|
|
8962
|
+
if (!drag.moved) {
|
|
8963
|
+
if (Math.abs(dx) + Math.abs(dy) < THRESH) return;
|
|
8964
|
+
drag.moved = true;
|
|
8965
|
+
btn.classList.add("dragging");
|
|
8966
|
+
}
|
|
8967
|
+
e.preventDefault(); // no text selection / scroll chaining mid-drag
|
|
8968
|
+
pos = { r: drag.r - dx, b: drag.b - dy };
|
|
8969
|
+
apply();
|
|
8970
|
+
});
|
|
8971
|
+
|
|
8972
|
+
const end = (e) => {
|
|
8973
|
+
if (!drag || e.pointerId !== drag.id) return;
|
|
8974
|
+
const moved = drag.moved;
|
|
8975
|
+
drag = null;
|
|
8976
|
+
btn.classList.remove("dragging");
|
|
8977
|
+
try {
|
|
8978
|
+
btn.releasePointerCapture(e.pointerId);
|
|
8979
|
+
} catch {}
|
|
8980
|
+
if (!moved) return;
|
|
8981
|
+
// Persist what's actually on screen (the clamped value), so a later
|
|
8982
|
+
// resize can't spring the button back to somewhere off-panel.
|
|
8983
|
+
pos = { r: parseFloat(btn.style.right) || EDGE, b: parseFloat(btn.style.bottom) || EDGE };
|
|
8984
|
+
try {
|
|
8985
|
+
localStorage.setItem(KEY, JSON.stringify(pos));
|
|
8986
|
+
} catch {}
|
|
8987
|
+
suppressClick = true; // pointerup on a <button> still emits a click
|
|
8988
|
+
};
|
|
8989
|
+
btn.addEventListener("pointerup", end);
|
|
8990
|
+
btn.addEventListener("pointercancel", end);
|
|
8991
|
+
|
|
8992
|
+
// Swallow the click a finished drag synthesizes. It has to be a CAPTURE
|
|
8993
|
+
// listener on an ancestor: capture on document runs before the target's
|
|
8994
|
+
// own bubble listener (showNew), which was registered first and would
|
|
8995
|
+
// otherwise win.
|
|
8996
|
+
document.addEventListener(
|
|
8997
|
+
"click",
|
|
8998
|
+
(e) => {
|
|
8999
|
+
if (!suppressClick) return;
|
|
9000
|
+
suppressClick = false;
|
|
9001
|
+
if (e.target === btn || btn.contains(e.target)) {
|
|
9002
|
+
e.stopPropagation();
|
|
9003
|
+
e.preventDefault();
|
|
9004
|
+
}
|
|
9005
|
+
},
|
|
9006
|
+
true,
|
|
9007
|
+
);
|
|
9008
|
+
})();
|
|
8833
9009
|
boot();
|
|
8834
9010
|
</script>
|
|
8835
9011
|
</body>
|
package/package.json
CHANGED
package/dist/trayApp-kjebnTl9.js
DELETED