agent-yes 1.272.0 → 1.274.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/README.md +9 -44
- package/agent-yes.config.schema.json +0 -1
- package/default.config.yaml +0 -138
- package/dist/{JsonlStore-CPGIR0Wy.js → JsonlStore-BqF7AQ6E.js} +1 -1
- package/dist/{SUPPORTED_CLIS-DFOStQkx.js → SUPPORTED_CLIS-CNrMN-89.js} +2 -2
- package/dist/SUPPORTED_CLIS-DibEQVjZ.js +12 -0
- package/dist/{agent-yes.config-2xKNJM5Y.js → agent-yes.config-C77SodMP.js} +2 -2
- package/dist/{agentShare-CLhjMsHZ.js → agentShare-YWrrxqN2.js} +10 -10
- package/dist/{agentYesHome-CtmsY6I-.js → agentYesHome-BNtn19J4.js} +1 -1
- package/dist/{askCli-Bbxt9Umz.js → askCli-DR9vhdcV.js} +6 -6
- package/dist/{browser-_2ndf80G.js → browser-XQnbPssj.js} +5 -5
- package/dist/{browser-CorYp8Yu.js → browser-oqC3Ln2a.js} +1 -1
- package/dist/callback-DK1hFHPw.js +13 -0
- package/dist/{callback-BVKHRbUE.js → callback-DwnU5Bnx.js} +6 -6
- package/dist/{callbackCore-Bbe7rpN2.js → callbackCore-Bl2gGcxg.js} +1 -1
- package/dist/{callbackCore-C0Cg9RbS.js → callbackCore-LDxJc8LY.js} +1 -1
- package/dist/{channels-CkaCyvEp.js → channels-C3w3eAES.js} +2 -2
- package/dist/{channels-3gz9gHP7.js → channels-hOG3-R_3.js} +6 -6
- package/dist/channels.js +5 -5
- package/dist/cli.js +14 -14
- package/dist/{cmdPs-Cu__YsO7.js → cmdPs-tpr2ARd3.js} +9 -9
- package/dist/{configShared-DYxlvrH0.js → configShared-DKTgiz7K.js} +1 -1
- package/dist/{cwdConflictWarn-Buy3r_qc.js → cwdConflictWarn-CqN5pJ-7.js} +2 -2
- package/dist/{cwdPassthroughHint-BlWO-h5w.js → cwdPassthroughHint-DxdqgwEN.js} +1 -1
- package/dist/{e2e-OLfcNxiv.js → e2e-z1xpwSAg.js} +1 -1
- package/dist/{expose-Bfo-dZdy.js → expose-DTxYWQeW.js} +1 -1
- package/dist/{forkNested-jc2ER9xn.js → forkNested-CZAvQj0y.js} +8 -5
- package/dist/{globalPidIndex-Dq4KY2IV.js → globalPidIndex-DoaKEUkO.js} +1 -1
- package/dist/{globalPidIndex-CQX_0JSB.js → globalPidIndex-yvWZXeWT.js} +1 -1
- package/dist/{hist-DiOYRXuD.js → hist-QkZZBp-y.js} +1 -1
- package/dist/{html2canvas-pro.esm-D19oTQeV.js → html2canvas-pro.esm-DbGFekkq.js} +1 -1
- package/dist/{identity-CLaJ9-uE.js → identity-CKRuYUFi.js} +1 -1
- package/dist/{identity-BmDYOuZE.js → identity-DFr3dfTO.js} +1 -1
- package/dist/index.js +8 -8
- package/dist/{initMsg-CTAIqBWF.js → initMsg-C8ISz_C7.js} +1 -1
- package/dist/{initMsg-Bat5PUDf.js → initMsg-DAwRS89d.js} +1 -1
- package/dist/{invokedCli-uqM2YYA7.js → invokedCli-zdFbz1ST.js} +2 -5
- package/dist/{messageLog-BYFwioFY.js → messageLog-DdjBNqgt.js} +1 -1
- package/dist/{needsInput-DhfIwxse.js → needsInput-BHopZGM8.js} +1 -1
- package/dist/{nodeRuntime-CKc1BN5J.js → nodeRuntime-C_LtZrpR.js} +2 -2
- package/dist/{notifyDaemon-BmtjtW5L.js → notifyDaemon-Dx5sjDIx.js} +9 -9
- package/dist/{notifyStore-Dus2D1XA.js → notifyStore-2SWKGwZI.js} +2 -2
- package/dist/{notifyStore-0hlFPa6z.js → notifyStore-CdsB3crt.js} +1 -1
- package/dist/{openBrowser-Dmg2Oi4q.js → openBrowser-B50Lhaob.js} +1 -1
- package/dist/{parentLink-DS-XflaJ.js → parentLink-i817PzXK.js} +2 -2
- package/dist/{parentLink-BwX4jaGD.js → parentLink-svMgYhEi.js} +2 -2
- package/dist/{parentPingLoop-BtggDU06.js → parentPingLoop-DV7fBiMN.js} +7 -7
- package/dist/{peer-Dr4zvtcd.js → peer-BZyUyCt3.js} +3 -3
- package/dist/peer-CGSJluSw.js +4 -0
- package/dist/{pidStore-DJqSZPJi.js → pidStore-B73xnAeT.js} +4 -4
- package/dist/pidStore-V51mbgZY.js +6 -0
- package/dist/{reaper-B231i49s.js → reaper-BDMiMfwK.js} +1 -1
- package/dist/{reaper-C4BvNylH.js → reaper-UimuuTfO.js} +2 -2
- package/dist/{remotes-IzQHupeo.js → remotes-Cdlaj7AP.js} +17 -9
- package/dist/{remotes-BiftUp09.js → remotes-gAI6-nv9.js} +3 -3
- package/dist/{runningLock-DBoONoM-.js → runningLock-BOIPD_Vs.js} +1 -1
- package/dist/rustBinary-B7cNTxWn.js +4 -0
- package/dist/{rustBinary-ISnNc7Uf.js → rustBinary-DDwz4LdD.js} +73 -6
- package/dist/{schedule-D37Q9LGO.js → schedule-Bc5tKPJi.js} +12 -12
- package/dist/{serve-Dw0x9Of9.js → serve-ClCAkuSj.js} +41 -41
- package/dist/{setup-BmBjOyza.js → setup-D6v3wsXq.js} +4 -4
- package/dist/{share-DTPZgbfH.js → share-BvU4I8BI.js} +2 -2
- package/dist/{share-RgJUhzqG.js → share-DTlaFn6s.js} +2 -2
- package/dist/spawnGate-CdewnL8m.js +5 -0
- package/dist/{spawnGate-CS3oFdJ9.js → spawnGate-DtC_ffme.js} +3 -3
- package/dist/{store-C7I2CAu9.js → store-CnxYGoia.js} +1 -1
- package/dist/{subcommands-DKqbwkvb.js → subcommands-D0TqxBxb.js} +67 -85
- package/dist/subcommands-DLqtyQdw.js +11 -0
- package/dist/{systemPathLink-DGVcx0fg.js → systemPathLink-Df_pstm2.js} +1 -1
- package/dist/{terminal-BQ79zaFa.js → terminal-Dzu-PTIU.js} +2 -2
- package/dist/terminal.js +1 -1
- package/dist/{todoAutomation-BETGOik9.js → todoAutomation-CbVVS4re.js} +2 -2
- package/dist/{todoCli-DUoxA1dh.js → todoCli-Cf0EHvfy.js} +6 -6
- package/dist/{todoIdentity-BffBxRHA.js → todoIdentity-NEceTmEe.js} +2 -2
- package/dist/{todoStore-Wk8U4zJ8.js → todoStore-DF6vxHgV.js} +2 -2
- package/dist/{tray-Bxq_sfvU.js → tray-BeIs4ffu.js} +2 -2
- package/dist/{trayApp-BsETHuMR.js → trayApp-DCG8CjCV.js} +3 -3
- package/dist/trayApp-kjebnTl9.js +5 -0
- package/dist/{ts-Bb-h7XQP.js → ts-BmGAFUb7.js} +15 -19
- package/dist/{versionChecker-D9LB-MW5.js → versionChecker-DzWZizq2.js} +3 -3
- package/dist/{webrtcLink-B72AQ2eb.js → webrtcLink-DLaJfTcB.js} +2 -2
- package/dist/{webrtcRemote-D68dkqFp.js → webrtcRemote-CIbq5Hdt.js} +3 -3
- package/dist/{widget-gRjJprB5.js → widget-hU12_Sog.js} +3 -3
- package/dist/widget.js +1 -1
- package/dist/widgets.js +5 -5
- package/dist/{workspaceConfig-EK7XNsgR.js → workspaceConfig-DctWuxUP.js} +2 -2
- package/dist/ws-jKReYJJw.js +12 -0
- package/dist/{ws-BFli3FKi.js → ws-pRbF59zo.js} +3 -3
- package/examples/.agent-yes.config.yaml +0 -9
- package/examples/spawn-notify.sh +1 -1
- package/lab/ui/index.html +123 -34
- package/lab/ui/landing.html +7 -8
- package/package.json +1 -6
- package/ts/buildRustArgs.spec.ts +8 -10
- package/ts/configLoader.spec.ts +2 -2
- package/ts/cwdConflictWarn.spec.ts +1 -1
- package/ts/cwdConflictWarn.ts +1 -1
- package/ts/forkNested.spec.ts +2 -0
- package/ts/forkNested.ts +5 -2
- package/ts/index.ts +2 -8
- package/ts/invokedCli.spec.ts +0 -1
- package/ts/invokedCli.ts +1 -2
- package/ts/needsInput.spec.ts +7 -3
- package/ts/needsInput.ts +1 -1
- package/ts/parseCliArgs.spec.ts +1 -1
- package/ts/parseCliArgs.ts +1 -1
- package/ts/postbuild.ts +1 -1
- package/ts/remotes.ts +24 -7
- package/ts/rustBinary.spec.ts +81 -0
- package/ts/rustBinary.ts +106 -9
- package/ts/subcommands.spec.ts +7 -9
- package/ts/subcommands.ts +90 -64
- package/ts/todoParse.ts +1 -1
- package/dist/SUPPORTED_CLIS-C1rgBiLd.js +0 -12
- package/dist/callback-C64-nP2U.js +0 -13
- package/dist/gemini-yes.js +0 -10
- package/dist/openrouter-yes.js +0 -10
- package/dist/orcy.js +0 -10
- package/dist/peer-u1AUAZeA.js +0 -4
- package/dist/pidStore-D-b8I6Qx.js +0 -6
- package/dist/spawnGate-C6YKlnmb.js +0 -5
- package/dist/subcommands-TAOmVCxo.js +0 -11
- package/dist/trayApp-BHx2FN2d.js +0 -5
- package/dist/ws-CklRMQwW.js +0 -12
- package/scripts/deepseek-codex.ts +0 -580
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import "./logger-CDIsZ-Pp.js";
|
|
2
|
-
import "./globalPidIndex-
|
|
3
|
-
import "./messageLog-
|
|
4
|
-
import "./e2e-
|
|
5
|
-
import "./configShared-
|
|
6
|
-
import {
|
|
7
|
-
import "./notifyStore-
|
|
8
|
-
import "./webrtcLink-
|
|
9
|
-
import "./remotes-
|
|
2
|
+
import "./globalPidIndex-DoaKEUkO.js";
|
|
3
|
+
import "./messageLog-DdjBNqgt.js";
|
|
4
|
+
import "./e2e-z1xpwSAg.js";
|
|
5
|
+
import "./configShared-DKTgiz7K.js";
|
|
6
|
+
import { $ as buildAgentForest, D as listRecords, et as flattenForest, u as deriveLiveState } from "./subcommands-D0TqxBxb.js";
|
|
7
|
+
import "./notifyStore-2SWKGwZI.js";
|
|
8
|
+
import "./webrtcLink-DLaJfTcB.js";
|
|
9
|
+
import "./remotes-Cdlaj7AP.js";
|
|
10
10
|
import yargs from "yargs";
|
|
11
11
|
import { execFile } from "node:child_process";
|
|
12
12
|
import { readFileSync } from "node:fs";
|
|
@@ -574,4 +574,4 @@ function readPpidSync(pid) {
|
|
|
574
574
|
|
|
575
575
|
//#endregion
|
|
576
576
|
export { cmdPs };
|
|
577
|
-
//# sourceMappingURL=cmdPs-
|
|
577
|
+
//# sourceMappingURL=cmdPs-tpr2ARd3.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import "./logger-CDIsZ-Pp.js";
|
|
2
|
-
import { i as readGlobalPids } from "./globalPidIndex-
|
|
2
|
+
import { i as readGlobalPids } from "./globalPidIndex-DoaKEUkO.js";
|
|
3
3
|
import path from "path";
|
|
4
4
|
|
|
5
5
|
//#region ts/cwdConflictWarn.ts
|
|
@@ -61,4 +61,4 @@ async function warnIfCwdOccupied(rawArgv) {
|
|
|
61
61
|
|
|
62
62
|
//#endregion
|
|
63
63
|
export { warnIfCwdOccupied };
|
|
64
|
-
//# sourceMappingURL=cwdConflictWarn-
|
|
64
|
+
//# sourceMappingURL=cwdConflictWarn-CqN5pJ-7.js.map
|
|
@@ -172,4 +172,4 @@ function randomHex(n) {
|
|
|
172
172
|
|
|
173
173
|
//#endregion
|
|
174
174
|
export { computeTranscriptHash as a, open as c, randomHex as d, seal as f, MAX_CHUNK as i, packEnvelope as l, validateS as m, FLAG_CONFIRM as n, deriveAuthToken as o, unpackEnvelope as p, MARKER as r, deriveDirKeys as s, CONFIRM_TIMEOUT_MS as t, parseSecret as u };
|
|
175
|
-
//# sourceMappingURL=e2e-
|
|
175
|
+
//# sourceMappingURL=e2e-z1xpwSAg.js.map
|
|
@@ -34,8 +34,11 @@ function buildSpawnTutorial(cli, pid) {
|
|
|
34
34
|
` ay exit ${pid} # stop it`,
|
|
35
35
|
``,
|
|
36
36
|
`Two ways to keep up with it — use whichever fits your harness:`,
|
|
37
|
-
` Monitor (preferred
|
|
38
|
-
` ay
|
|
37
|
+
` Monitor (preferred, works even without a native monitor tool):`,
|
|
38
|
+
` ay notify watch --unread # get notified when it finishes / goes idle / crashes`,
|
|
39
|
+
` # (a background daemon polls liveness every 2s, so even a`,
|
|
40
|
+
` # hard crash — this wrapper dies too — still reaches you)`,
|
|
41
|
+
` ay ls --watch --json # PULL alternative: NDJSON stream of state changes`,
|
|
39
42
|
` ay status ${pid} # one-shot: working | idle | needs_input | stopped`,
|
|
40
43
|
` ay status ${pid} --wait-idle # block until it's done (add --timeout=Ns)`,
|
|
41
44
|
` Or do nothing: it was told to report back to you, and its wrapper will`,
|
|
@@ -59,7 +62,7 @@ function buildSpawnTutorial(cli, pid) {
|
|
|
59
62
|
* fast instead of waiting out the whole window).
|
|
60
63
|
*/
|
|
61
64
|
async function waitForRegistration(pid, timeoutMs = 5e3, aborted) {
|
|
62
|
-
const { readGlobalPids } = await import("./globalPidIndex-
|
|
65
|
+
const { readGlobalPids } = await import("./globalPidIndex-yvWZXeWT.js");
|
|
63
66
|
const isRegistered = async () => (await readGlobalPids()).some((r) => r.pid === pid && r.status !== "exited");
|
|
64
67
|
const deadline = Date.now() + timeoutMs;
|
|
65
68
|
while (Date.now() < deadline) {
|
|
@@ -107,7 +110,7 @@ async function tailFile(file, max = 400) {
|
|
|
107
110
|
* success, keeping the previous behaviour for anything this can't decide.
|
|
108
111
|
*/
|
|
109
112
|
async function confirmAgentStarted(pid, graceMs = 1500, aborted) {
|
|
110
|
-
const { readGlobalPids } = await import("./globalPidIndex-
|
|
113
|
+
const { readGlobalPids } = await import("./globalPidIndex-yvWZXeWT.js");
|
|
111
114
|
const { stat } = await import("fs/promises");
|
|
112
115
|
const deadline = Date.now() + graceMs;
|
|
113
116
|
while (Date.now() < deadline) {
|
|
@@ -138,4 +141,4 @@ async function confirmAgentStarted(pid, graceMs = 1500, aborted) {
|
|
|
138
141
|
|
|
139
142
|
//#endregion
|
|
140
143
|
export { buildSpawnTutorial, confirmAgentStarted, predictedLogPath, shouldForkNested, waitForRegistration };
|
|
141
|
-
//# sourceMappingURL=forkNested-
|
|
144
|
+
//# sourceMappingURL=forkNested-CZAvQj0y.js.map
|
|
@@ -188,4 +188,4 @@ async function pruneOldLogs(maxAgeMs = retentionMs()) {
|
|
|
188
188
|
|
|
189
189
|
//#endregion
|
|
190
190
|
export { updateGlobalPidStatus as a, readGlobalPids as i, maybeCompactGlobalPids as n, pruneOldLogs as r, appendGlobalPid as t };
|
|
191
|
-
//# sourceMappingURL=globalPidIndex-
|
|
191
|
+
//# sourceMappingURL=globalPidIndex-DoaKEUkO.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import "./logger-CDIsZ-Pp.js";
|
|
2
|
-
import { a as updateGlobalPidStatus, i as readGlobalPids, n as maybeCompactGlobalPids, r as pruneOldLogs, t as appendGlobalPid } from "./globalPidIndex-
|
|
2
|
+
import { a as updateGlobalPidStatus, i as readGlobalPids, n as maybeCompactGlobalPids, r as pruneOldLogs, t as appendGlobalPid } from "./globalPidIndex-DoaKEUkO.js";
|
|
3
3
|
|
|
4
4
|
export { readGlobalPids };
|
|
@@ -10895,4 +10895,4 @@ const html2canvas = (element, options = {}, config) => {
|
|
|
10895
10895
|
|
|
10896
10896
|
//#endregion
|
|
10897
10897
|
export { Html2CanvasConfig, PerformanceMonitor, Validator, createDefaultValidator, html2canvas as default, html2canvas };
|
|
10898
|
-
//# sourceMappingURL=html2canvas-pro.esm-
|
|
10898
|
+
//# sourceMappingURL=html2canvas-pro.esm-DbGFekkq.js.map
|
|
@@ -106,4 +106,4 @@ function formatIdentity(parts) {
|
|
|
106
106
|
|
|
107
107
|
//#endregion
|
|
108
108
|
export { safeBranch as a, readGitBranch as i, localHost as n, safeToken as o, localUser as r, tildify as s, formatIdentity as t };
|
|
109
|
-
//# sourceMappingURL=identity-
|
|
109
|
+
//# sourceMappingURL=identity-CKRuYUFi.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as safeBranch, i as readGitBranch, n as localHost, o as safeToken, r as localUser, s as tildify, t as formatIdentity } from "./identity-
|
|
1
|
+
import { a as safeBranch, i as readGitBranch, n as localHost, o as safeToken, r as localUser, s as tildify, t as formatIdentity } from "./identity-CKRuYUFi.js";
|
|
2
2
|
|
|
3
3
|
export { formatIdentity };
|
package/dist/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
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-
|
|
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-
|
|
5
|
-
import "./JsonlStore-
|
|
6
|
-
import "./globalPidIndex-
|
|
7
|
-
import "./pidStore-
|
|
8
|
-
import "./messageLog-
|
|
9
|
-
import { a as LIFECYCLES, c as initialState, d as requiredGate, f as statesOf, i as DONE_STATE, l as isKnownKind, n as TodoStore, o as ORPHANED_STATE, r as openStore, s as canTransition, t as CycleError, u as nextStates } from "./todoStore-
|
|
2
|
+
import "./versionChecker-DzWZizq2.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-BmGAFUb7.js";
|
|
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
|
+
import "./JsonlStore-BqF7AQ6E.js";
|
|
6
|
+
import "./globalPidIndex-DoaKEUkO.js";
|
|
7
|
+
import "./pidStore-B73xnAeT.js";
|
|
8
|
+
import "./messageLog-DdjBNqgt.js";
|
|
9
|
+
import { a as LIFECYCLES, c as initialState, d as requiredGate, f as statesOf, i as DONE_STATE, l as isKnownKind, n as TodoStore, o as ORPHANED_STATE, r as openStore, s as canTransition, t as CycleError, u as nextStates } from "./todoStore-DF6vxHgV.js";
|
|
10
10
|
|
|
11
11
|
export { AgentContext, CLIS_CONFIG, CycleError, DONE_STATE, LIFECYCLES, ORPHANED_STATE, TodoStore, answerAsk, canTransition, config, agentYes as default, describeBlock, hasTodoStore, initialState, isKnownKind, listAsks, listAsksForProject, monitorHint, nextStates, openBlockers, openStore, reconcileTodos, removeControlCharacters, renderDigest, renderTree, requiredGate, statesOf, unblockedTasks };
|
|
@@ -10,10 +10,7 @@
|
|
|
10
10
|
* resolves to `undefined`. Callers use that `undefined` to tell "the agent-yes
|
|
11
11
|
* manager" apart from "a cli-bound runner alias".
|
|
12
12
|
*/
|
|
13
|
-
const CLI_ALIASES = {
|
|
14
|
-
cy: "claude",
|
|
15
|
-
orcy: "openrouter"
|
|
16
|
-
};
|
|
13
|
+
const CLI_ALIASES = { cy: "claude" };
|
|
17
14
|
/**
|
|
18
15
|
* The agent CLI implied by argv[1] (cy / claude-yes → "claude", codex-yes →
|
|
19
16
|
* "codex", …), or `undefined` for the generic `ay` / `agent-yes` / `cli` entry.
|
|
@@ -25,4 +22,4 @@ function invokedCliName(argv) {
|
|
|
25
22
|
|
|
26
23
|
//#endregion
|
|
27
24
|
export { invokedCliName as t };
|
|
28
|
-
//# sourceMappingURL=invokedCli-
|
|
25
|
+
//# sourceMappingURL=invokedCli-zdFbz1ST.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as agentYesHome } from "./agentYesHome-
|
|
1
|
+
import { t as agentYesHome } from "./agentYesHome-BNtn19J4.js";
|
|
2
2
|
import { chmod, mkdir, readFile, writeFile } from "fs/promises";
|
|
3
3
|
import path from "path";
|
|
4
4
|
|
|
@@ -53,4 +53,4 @@ async function ensureNodeRuntime(which = Bun.which) {
|
|
|
53
53
|
|
|
54
54
|
//#endregion
|
|
55
55
|
export { liveEnv as n, ensureNodeRuntime as t };
|
|
56
|
-
//# sourceMappingURL=nodeRuntime-
|
|
56
|
+
//# sourceMappingURL=nodeRuntime-C_LtZrpR.js.map
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { n as logger } from "./logger-CDIsZ-Pp.js";
|
|
2
|
-
import "./globalPidIndex-
|
|
3
|
-
import "./messageLog-
|
|
4
|
-
import "./e2e-
|
|
5
|
-
import "./configShared-
|
|
6
|
-
import {
|
|
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-
|
|
8
|
-
import "./webrtcLink-
|
|
9
|
-
import "./remotes-
|
|
2
|
+
import "./globalPidIndex-DoaKEUkO.js";
|
|
3
|
+
import "./messageLog-DdjBNqgt.js";
|
|
4
|
+
import "./e2e-z1xpwSAg.js";
|
|
5
|
+
import "./configShared-DKTgiz7K.js";
|
|
6
|
+
import { D as listRecords, I as renderLogTailLines, b as isPidAlive, u as deriveLiveState } from "./subcommands-D0TqxBxb.js";
|
|
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
|
+
import "./webrtcLink-DLaJfTcB.js";
|
|
9
|
+
import "./remotes-Cdlaj7AP.js";
|
|
10
10
|
import { mkdir, readFile, rename, rm, stat, writeFile } from "fs/promises";
|
|
11
11
|
import { randomUUID } from "node:crypto";
|
|
12
12
|
import { execFile, execFileSync } from "node:child_process";
|
|
@@ -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-Dx5sjDIx.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as logger } from "./logger-CDIsZ-Pp.js";
|
|
2
|
-
import { t as agentYesHome } from "./agentYesHome-
|
|
2
|
+
import { t as agentYesHome } from "./agentYesHome-BNtn19J4.js";
|
|
3
3
|
import { appendFile, mkdir, readFile, readdir, rename, rm, stat, writeFile } from "fs/promises";
|
|
4
4
|
import path from "path";
|
|
5
5
|
import { randomUUID } from "node:crypto";
|
|
@@ -556,4 +556,4 @@ async function liveWatchers(now = Date.now()) {
|
|
|
556
556
|
|
|
557
557
|
//#endregion
|
|
558
558
|
export { postmortemStartedAt as S, filterSinceSeq as _, getCursor as a, maxSeq as b, isTransientLockMkdirError as c, minConsumerCursor as d, readInbox as f, daemonLockOwnerPath as g, daemonLockDir as h, gcInboxes as i, listInboxParents as l, shouldStealLock as m, appendEvent as n, heartbeatWatcher as o, setCursor as p, clearWatcher as r, hostId as s, acquireLock as t, liveWatchers as u, filterSinceTs as v, notifyDir as x, filterUnread as y };
|
|
559
|
-
//# sourceMappingURL=notifyStore-
|
|
559
|
+
//# sourceMappingURL=notifyStore-2SWKGwZI.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import "./logger-CDIsZ-Pp.js";
|
|
2
|
-
import { a as getCursor, c as isTransientLockMkdirError, d as minConsumerCursor, f as readInbox, i as gcInboxes, l as listInboxParents, m as shouldStealLock, n as appendEvent, o as heartbeatWatcher, p as setCursor, r as clearWatcher, s as hostId, t as acquireLock, u as liveWatchers } from "./notifyStore-
|
|
2
|
+
import { a as getCursor, c as isTransientLockMkdirError, d as minConsumerCursor, f as readInbox, i as gcInboxes, l as listInboxParents, m as shouldStealLock, n as appendEvent, o as heartbeatWatcher, p as setCursor, r as clearWatcher, s as hostId, t as acquireLock, u as liveWatchers } from "./notifyStore-2SWKGwZI.js";
|
|
3
3
|
|
|
4
4
|
export { liveWatchers };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import "./logger-CDIsZ-Pp.js";
|
|
2
|
-
import "./globalPidIndex-
|
|
3
|
-
import { n as spawnerFromRecords, t as resolveSpawner } from "./parentLink-
|
|
2
|
+
import "./globalPidIndex-DoaKEUkO.js";
|
|
3
|
+
import { n as spawnerFromRecords, t as resolveSpawner } from "./parentLink-svMgYhEi.js";
|
|
4
4
|
|
|
5
5
|
export { resolveSpawner };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { i as readGlobalPids } from "./globalPidIndex-
|
|
1
|
+
import { i as readGlobalPids } from "./globalPidIndex-DoaKEUkO.js";
|
|
2
2
|
|
|
3
3
|
//#region ts/parentLink.ts
|
|
4
4
|
/**
|
|
@@ -50,4 +50,4 @@ function spawnerFromRecords(records, parentPid) {
|
|
|
50
50
|
|
|
51
51
|
//#endregion
|
|
52
52
|
export { spawnerFromRecords as n, resolveSpawner as t };
|
|
53
|
-
//# sourceMappingURL=parentLink-
|
|
53
|
+
//# sourceMappingURL=parentLink-svMgYhEi.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { n as logger } from "./logger-CDIsZ-Pp.js";
|
|
2
|
-
import "./globalPidIndex-
|
|
3
|
-
import { t as classifyNeedsInput } from "./needsInput-
|
|
4
|
-
import { n as replyTargetOf, r as shortenHome } from "./initMsg-
|
|
5
|
-
import { t as resolveSpawner } from "./parentLink-
|
|
2
|
+
import "./globalPidIndex-DoaKEUkO.js";
|
|
3
|
+
import { t as classifyNeedsInput } from "./needsInput-BHopZGM8.js";
|
|
4
|
+
import { n as replyTargetOf, r as shortenHome } from "./initMsg-C8ISz_C7.js";
|
|
5
|
+
import { t as resolveSpawner } from "./parentLink-svMgYhEi.js";
|
|
6
6
|
import { spawn } from "node:child_process";
|
|
7
7
|
|
|
8
8
|
//#region ts/parentPing.ts
|
|
@@ -332,13 +332,13 @@ function shouldDeliverReport(opts) {
|
|
|
332
332
|
*/
|
|
333
333
|
async function isParentWatching(parentWrapperPid, parentAgentPid, selfAgentPid, now = Date.now()) {
|
|
334
334
|
try {
|
|
335
|
-
const { liveWatchers } = await import("./notifyStore-
|
|
335
|
+
const { liveWatchers } = await import("./notifyStore-CdsB3crt.js");
|
|
336
336
|
if ((await liveWatchers(now)).has(parentWrapperPid)) return true;
|
|
337
337
|
} catch (error) {
|
|
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-DLqtyQdw.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-DV7fBiMN.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { a as computeTranscriptHash, c as open, d as randomHex, f as seal, l as packEnvelope, n as FLAG_CONFIRM, o as deriveAuthToken, p as unpackEnvelope, s as deriveDirKeys, t as CONFIRM_TIMEOUT_MS } from "./e2e-
|
|
2
|
-
import { i as opsMissing, s as isValidOp, t as haveVector } from "./store-
|
|
1
|
+
import { a as computeTranscriptHash, c as open, d as randomHex, f as seal, l as packEnvelope, n as FLAG_CONFIRM, o as deriveAuthToken, p as unpackEnvelope, s as deriveDirKeys, t as CONFIRM_TIMEOUT_MS } from "./e2e-z1xpwSAg.js";
|
|
2
|
+
import { i as opsMissing, s as isValidOp, t as haveVector } from "./store-CnxYGoia.js";
|
|
3
3
|
|
|
4
4
|
//#region ts/channels/peer.ts
|
|
5
5
|
const SIGNAL_SUBPROTOCOL = "ay-signal-1";
|
|
@@ -363,4 +363,4 @@ var ChannelPeer = class {
|
|
|
363
363
|
|
|
364
364
|
//#endregion
|
|
365
365
|
export { ChannelPeer as t };
|
|
366
|
-
//# sourceMappingURL=peer-
|
|
366
|
+
//# sourceMappingURL=peer-BZyUyCt3.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { n as logger } from "./logger-CDIsZ-Pp.js";
|
|
2
|
-
import { t as agentYesHome } from "./agentYesHome-
|
|
3
|
-
import { t as JsonlStore } from "./JsonlStore-
|
|
4
|
-
import { a as updateGlobalPidStatus, n as maybeCompactGlobalPids, r as pruneOldLogs, t as appendGlobalPid } from "./globalPidIndex-
|
|
2
|
+
import { t as agentYesHome } from "./agentYesHome-BNtn19J4.js";
|
|
3
|
+
import { t as JsonlStore } from "./JsonlStore-BqF7AQ6E.js";
|
|
4
|
+
import { a as updateGlobalPidStatus, n as maybeCompactGlobalPids, r as pruneOldLogs, t as appendGlobalPid } from "./globalPidIndex-DoaKEUkO.js";
|
|
5
5
|
import { mkdir, writeFile } from "fs/promises";
|
|
6
6
|
import path from "path";
|
|
7
7
|
import { randomBytes } from "node:crypto";
|
|
@@ -197,4 +197,4 @@ pid-db/
|
|
|
197
197
|
|
|
198
198
|
//#endregion
|
|
199
199
|
export { PidStore as t };
|
|
200
|
-
//# sourceMappingURL=pidStore-
|
|
200
|
+
//# sourceMappingURL=pidStore-B73xnAeT.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as agentYesHome } from "./agentYesHome-
|
|
1
|
+
import { t as agentYesHome } from "./agentYesHome-BNtn19J4.js";
|
|
2
2
|
import { appendFile, mkdir, readFile, readdir, rename, unlink, writeFile } from "fs/promises";
|
|
3
3
|
import path from "path";
|
|
4
4
|
|
|
@@ -107,4 +107,4 @@ async function pruneStaleActivityMarkers() {
|
|
|
107
107
|
|
|
108
108
|
//#endregion
|
|
109
109
|
export { register as n, sweep as r, pgidForWrapper as t };
|
|
110
|
-
//# sourceMappingURL=reaper-
|
|
110
|
+
//# sourceMappingURL=reaper-UimuuTfO.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as isWebrtcSpec } from "./webrtcLink-
|
|
1
|
+
import { n as isWebrtcSpec, r as parseWebrtcLink } from "./webrtcLink-DLaJfTcB.js";
|
|
2
2
|
import { mkdir, readFile, writeFile } from "fs/promises";
|
|
3
3
|
import { homedir } from "os";
|
|
4
4
|
import path from "path";
|
|
@@ -9,6 +9,11 @@ function remotesPath() {
|
|
|
9
9
|
const dir = process.env.AGENT_YES_HOME ?? path.join(homedir(), ".agent-yes");
|
|
10
10
|
return path.join(dir, "remotes.yaml");
|
|
11
11
|
}
|
|
12
|
+
/** A display label for a WebRTC share link: the room id, never the local bridge. */
|
|
13
|
+
function webrtcLabel(link) {
|
|
14
|
+
const parsed = parseWebrtcLink(link);
|
|
15
|
+
return parsed ? `webrtc:${parsed.room}` : "webrtc";
|
|
16
|
+
}
|
|
12
17
|
async function readRemotes() {
|
|
13
18
|
let raw;
|
|
14
19
|
try {
|
|
@@ -61,23 +66,25 @@ function parseDirectRemoteSpec(spec) {
|
|
|
61
66
|
* Returns null if the spec doesn't match any remote.
|
|
62
67
|
*/
|
|
63
68
|
async function resolveRemoteSpec(spec) {
|
|
64
|
-
if (isWebrtcSpec(spec)) return resolveWebrtc(spec, void 0);
|
|
69
|
+
if (isWebrtcSpec(spec)) return resolveWebrtc(spec, void 0, webrtcLabel(spec));
|
|
65
70
|
const direct = parseDirectRemoteSpec(spec);
|
|
66
71
|
if (direct) return {
|
|
67
72
|
url: direct.baseUrl,
|
|
68
73
|
token: direct.token,
|
|
69
|
-
keyword: direct.keyword
|
|
74
|
+
keyword: direct.keyword,
|
|
75
|
+
label: `${direct.host}:${direct.port}`
|
|
70
76
|
};
|
|
71
77
|
const colonIdx = spec.indexOf(":");
|
|
72
78
|
const alias = colonIdx >= 0 ? spec.slice(0, colonIdx) : spec;
|
|
73
79
|
const keyword = colonIdx >= 0 ? spec.slice(colonIdx + 1) || void 0 : void 0;
|
|
74
80
|
const cfg = (await readRemotes()).get(alias);
|
|
75
81
|
if (!cfg) return null;
|
|
76
|
-
if (isWebrtcSpec(cfg.url)) return resolveWebrtc(cfg.url, keyword);
|
|
82
|
+
if (isWebrtcSpec(cfg.url)) return resolveWebrtc(cfg.url, keyword, alias);
|
|
77
83
|
return {
|
|
78
84
|
url: cfg.url,
|
|
79
85
|
token: cfg.token,
|
|
80
|
-
keyword
|
|
86
|
+
keyword,
|
|
87
|
+
label: alias
|
|
81
88
|
};
|
|
82
89
|
}
|
|
83
90
|
/**
|
|
@@ -85,13 +92,14 @@ async function resolveRemoteSpec(spec) {
|
|
|
85
92
|
* ordinary http remote, so every fetch-based remote command works unchanged.
|
|
86
93
|
* The bridge lives for the rest of the process (torn down on `process.exit`).
|
|
87
94
|
*/
|
|
88
|
-
async function resolveWebrtc(link, keyword) {
|
|
89
|
-
const { startWebrtcBridge } = await import("./webrtcRemote-
|
|
95
|
+
async function resolveWebrtc(link, keyword, label) {
|
|
96
|
+
const { startWebrtcBridge } = await import("./webrtcRemote-CIbq5Hdt.js");
|
|
90
97
|
const bridge = await startWebrtcBridge(link);
|
|
91
98
|
return {
|
|
92
99
|
url: bridge.baseUrl,
|
|
93
100
|
token: bridge.token,
|
|
94
|
-
keyword
|
|
101
|
+
keyword,
|
|
102
|
+
label
|
|
95
103
|
};
|
|
96
104
|
}
|
|
97
105
|
async function cmdRemote(rest) {
|
|
@@ -173,4 +181,4 @@ async function cmdRemote(rest) {
|
|
|
173
181
|
|
|
174
182
|
//#endregion
|
|
175
183
|
export { resolveRemoteSpec as a, readRemotes as i, deleteRemoteAlias as n, writeRemoteAlias as o, parseDirectRemoteSpec as r, cmdRemote as t };
|
|
176
|
-
//# sourceMappingURL=remotes-
|
|
184
|
+
//# sourceMappingURL=remotes-Cdlaj7AP.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import "./e2e-
|
|
2
|
-
import "./webrtcLink-
|
|
3
|
-
import { a as resolveRemoteSpec, i as readRemotes, n as deleteRemoteAlias, o as writeRemoteAlias, r as parseDirectRemoteSpec, t as cmdRemote } from "./remotes-
|
|
1
|
+
import "./e2e-z1xpwSAg.js";
|
|
2
|
+
import "./webrtcLink-DLaJfTcB.js";
|
|
3
|
+
import { a as resolveRemoteSpec, i as readRemotes, n as deleteRemoteAlias, o as writeRemoteAlias, r as parseDirectRemoteSpec, t as cmdRemote } from "./remotes-Cdlaj7AP.js";
|
|
4
4
|
|
|
5
5
|
export { cmdRemote };
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import "./versionChecker-DzWZizq2.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-DDwz4LdD.js";
|
|
3
|
+
|
|
4
|
+
export { gcOldBinaryDirs };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { i as getInstalledPackage, n as compareVersions } from "./versionChecker-DzWZizq2.js";
|
|
2
2
|
import { execFileSync } from "child_process";
|
|
3
|
-
import { existsSync, mkdirSync, unlinkSync } from "fs";
|
|
3
|
+
import { existsSync, mkdirSync, readdirSync, rmSync, statSync, unlinkSync } from "fs";
|
|
4
4
|
import { chmod, copyFile } from "fs/promises";
|
|
5
5
|
import path from "path";
|
|
6
6
|
|
|
@@ -26,13 +26,76 @@ function getBinaryName() {
|
|
|
26
26
|
return binaryName + (platform === "win32" ? ".exe" : "");
|
|
27
27
|
}
|
|
28
28
|
/**
|
|
29
|
+
* The version-scoped download cache root (`~/.cache/agent-yes/bin/`) WITHOUT
|
|
30
|
+
* the version segment. Independent of `getBinDir()`'s npm-package shortcut:
|
|
31
|
+
* GC only ever touches the user cache, never a packaged bin dir.
|
|
32
|
+
*/
|
|
33
|
+
function getCacheBinRoot() {
|
|
34
|
+
const cacheDir = process.env.AGENT_YES_CACHE_DIR || path.join(process.env.XDG_CACHE_HOME || path.join(process.env.HOME || "/tmp", ".cache"), "agent-yes");
|
|
35
|
+
return path.join(cacheDir, "bin");
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
29
38
|
* Get the directory where binaries are stored
|
|
30
39
|
*/
|
|
31
40
|
function getBinDir() {
|
|
32
41
|
const packageBinDir = path.resolve(import.meta.dirname ?? import.meta.dir, "../bin");
|
|
33
42
|
if (existsSync(packageBinDir)) return packageBinDir;
|
|
34
|
-
|
|
35
|
-
|
|
43
|
+
return path.join(getCacheBinRoot(), getInstalledPackage().version);
|
|
44
|
+
}
|
|
45
|
+
const STRICT_SEMVER = /^\d+\.\d+\.\d+$/;
|
|
46
|
+
function dirSizeBytes(dir) {
|
|
47
|
+
let total = 0;
|
|
48
|
+
try {
|
|
49
|
+
for (const entry of readdirSync(dir, { withFileTypes: true })) {
|
|
50
|
+
const p = path.join(dir, entry.name);
|
|
51
|
+
if (entry.isDirectory()) total += dirSizeBytes(p);
|
|
52
|
+
else if (entry.isFile()) try {
|
|
53
|
+
total += statSync(p).size;
|
|
54
|
+
} catch {}
|
|
55
|
+
}
|
|
56
|
+
} catch {}
|
|
57
|
+
return total;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Delete versioned binary cache dirs strictly older than the CURRENT package
|
|
61
|
+
* version.
|
|
62
|
+
*
|
|
63
|
+
* `~/.cache/agent-yes/bin/<version>/` accumulates one dir per release a user
|
|
64
|
+
* has ever run (PERFORMANCE-EVENT 2026-08-13), each holding a ~20-30 MiB
|
|
65
|
+
* binary that nothing ever cleaned up. Keep the current version; delete only
|
|
66
|
+
* dirs named `x.y.z` that compare strictly less than it (never pre-release /
|
|
67
|
+
* dev, never anything newer or malformed). Idempotent and best-effort: a dir
|
|
68
|
+
* that cannot be removed simply survives until the next run.
|
|
69
|
+
*/
|
|
70
|
+
function gcOldBinaryDirs() {
|
|
71
|
+
const result = {
|
|
72
|
+
removed: [],
|
|
73
|
+
freedBytes: 0
|
|
74
|
+
};
|
|
75
|
+
const current = getInstalledPackage().version;
|
|
76
|
+
if (!STRICT_SEMVER.test(current)) return result;
|
|
77
|
+
const root = getCacheBinRoot();
|
|
78
|
+
let entries;
|
|
79
|
+
try {
|
|
80
|
+
entries = readdirSync(root);
|
|
81
|
+
} catch {
|
|
82
|
+
return result;
|
|
83
|
+
}
|
|
84
|
+
for (const name of entries) {
|
|
85
|
+
if (!STRICT_SEMVER.test(name)) continue;
|
|
86
|
+
if (compareVersions(name, current) >= 0) continue;
|
|
87
|
+
const dir = path.join(root, name);
|
|
88
|
+
const size = dirSizeBytes(dir);
|
|
89
|
+
try {
|
|
90
|
+
rmSync(dir, {
|
|
91
|
+
recursive: true,
|
|
92
|
+
force: true
|
|
93
|
+
});
|
|
94
|
+
result.removed.push(name);
|
|
95
|
+
result.freedBytes += size;
|
|
96
|
+
} catch {}
|
|
97
|
+
}
|
|
98
|
+
return result;
|
|
36
99
|
}
|
|
37
100
|
/**
|
|
38
101
|
* Find the Rust binary, checking multiple locations
|
|
@@ -225,6 +288,10 @@ function autoRebuildIfOutdated(binaryPath, verbose) {
|
|
|
225
288
|
*/
|
|
226
289
|
async function getRustBinary(options = {}) {
|
|
227
290
|
const { verbose = false, forceDownload = false } = options;
|
|
291
|
+
try {
|
|
292
|
+
const freed = gcOldBinaryDirs();
|
|
293
|
+
if (verbose && freed.removed.length > 0) console.log(`[rust] GC removed ${freed.removed.length} old binary cache dir(s): ${freed.removed.join(", ")}`);
|
|
294
|
+
} catch {}
|
|
228
295
|
if (!forceDownload) {
|
|
229
296
|
const existing = findRustBinary(verbose);
|
|
230
297
|
if (existing) {
|
|
@@ -242,5 +309,5 @@ async function getRustBinary(options = {}) {
|
|
|
242
309
|
}
|
|
243
310
|
|
|
244
311
|
//#endregion
|
|
245
|
-
export { findTrayLauncher as
|
|
246
|
-
//# sourceMappingURL=rustBinary-
|
|
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-DDwz4LdD.js.map
|