@integrity-labs/agt-cli 0.28.97 → 0.28.99
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/bin/agt.js +4 -4
- package/dist/{chunk-TRKWWYRN.js → chunk-IPSZZQ3D.js} +35 -2
- package/dist/{chunk-TRKWWYRN.js.map → chunk-IPSZZQ3D.js.map} +1 -1
- package/dist/{chunk-EN7ZKY4A.js → chunk-QPQRF6F4.js} +3 -3
- package/dist/{chunk-5NQ652SP.js → chunk-TGGRM5NJ.js} +2 -2
- package/dist/{claude-pair-runtime-2ISKH4M2.js → claude-pair-runtime-LDBMWVTP.js} +2 -2
- package/dist/lib/manager-worker.js +28 -17
- package/dist/lib/manager-worker.js.map +1 -1
- package/dist/mcp/telegram-channel.js +6 -2
- package/dist/{persistent-session-KAOPVQPC.js → persistent-session-3OABTEPN.js} +3 -3
- package/dist/{responsiveness-probe-OJPF6XDF.js → responsiveness-probe-IES7QHV5.js} +3 -3
- package/package.json +1 -1
- /package/dist/{chunk-EN7ZKY4A.js.map → chunk-QPQRF6F4.js.map} +0 -0
- /package/dist/{chunk-5NQ652SP.js.map → chunk-TGGRM5NJ.js.map} +0 -0
- /package/dist/{claude-pair-runtime-2ISKH4M2.js.map → claude-pair-runtime-LDBMWVTP.js.map} +0 -0
- /package/dist/{persistent-session-KAOPVQPC.js.map → persistent-session-3OABTEPN.js.map} +0 -0
- /package/dist/{responsiveness-probe-OJPF6XDF.js.map → responsiveness-probe-IES7QHV5.js.map} +0 -0
|
@@ -22,7 +22,7 @@ import {
|
|
|
22
22
|
resolveConnectivityProbe,
|
|
23
23
|
worseConnectivityOutcome,
|
|
24
24
|
wrapScheduledTaskPrompt
|
|
25
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-IPSZZQ3D.js";
|
|
26
26
|
|
|
27
27
|
// ../../packages/core/dist/integrations/registry.js
|
|
28
28
|
var INTEGRATION_REGISTRY = [
|
|
@@ -7541,7 +7541,7 @@ function requireHost() {
|
|
|
7541
7541
|
}
|
|
7542
7542
|
|
|
7543
7543
|
// src/lib/api-client.ts
|
|
7544
|
-
var agtCliVersion = true ? "0.28.
|
|
7544
|
+
var agtCliVersion = true ? "0.28.99" : "dev";
|
|
7545
7545
|
var lastConfigHash = null;
|
|
7546
7546
|
function setConfigHash(hash) {
|
|
7547
7547
|
lastConfigHash = hash && hash.length > 0 ? hash : null;
|
|
@@ -8838,4 +8838,4 @@ export {
|
|
|
8838
8838
|
managerInstallSystemUnitCommand,
|
|
8839
8839
|
managerUninstallSystemUnitCommand
|
|
8840
8840
|
};
|
|
8841
|
-
//# sourceMappingURL=chunk-
|
|
8841
|
+
//# sourceMappingURL=chunk-QPQRF6F4.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
formatMissingVar,
|
|
4
4
|
isClaudeFastMode,
|
|
5
5
|
probeMcpEnvSubstitution
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-IPSZZQ3D.js";
|
|
7
7
|
import {
|
|
8
8
|
reapOrphanChannelMcps
|
|
9
9
|
} from "./chunk-XWVM4KPK.js";
|
|
@@ -1565,4 +1565,4 @@ export {
|
|
|
1565
1565
|
stopAllSessionsAndWait,
|
|
1566
1566
|
getProjectDir
|
|
1567
1567
|
};
|
|
1568
|
-
//# sourceMappingURL=chunk-
|
|
1568
|
+
//# sourceMappingURL=chunk-TGGRM5NJ.js.map
|
|
@@ -100,7 +100,7 @@ async function spawnPairSession(session) {
|
|
|
100
100
|
return { ok: true };
|
|
101
101
|
} catch {
|
|
102
102
|
}
|
|
103
|
-
const { resolveClaudeBinary } = await import("./persistent-session-
|
|
103
|
+
const { resolveClaudeBinary } = await import("./persistent-session-3OABTEPN.js");
|
|
104
104
|
const claudeBin = resolveClaudeBinary();
|
|
105
105
|
const pairEnv = {
|
|
106
106
|
...process.env,
|
|
@@ -373,4 +373,4 @@ export {
|
|
|
373
373
|
startClaudePair,
|
|
374
374
|
submitClaudePairCode
|
|
375
375
|
};
|
|
376
|
-
//# sourceMappingURL=claude-pair-runtime-
|
|
376
|
+
//# sourceMappingURL=claude-pair-runtime-LDBMWVTP.js.map
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
requireHost,
|
|
29
29
|
safeWriteJsonAtomic,
|
|
30
30
|
setConfigHash
|
|
31
|
-
} from "../chunk-
|
|
31
|
+
} from "../chunk-QPQRF6F4.js";
|
|
32
32
|
import {
|
|
33
33
|
getProjectDir as getProjectDir2,
|
|
34
34
|
getReadyTasks,
|
|
@@ -71,7 +71,7 @@ import {
|
|
|
71
71
|
takeZombieDetection,
|
|
72
72
|
transcriptActivityAgeSeconds,
|
|
73
73
|
writeEgressAllowlist
|
|
74
|
-
} from "../chunk-
|
|
74
|
+
} from "../chunk-TGGRM5NJ.js";
|
|
75
75
|
import {
|
|
76
76
|
FLAGS_SCHEMA_VERSION,
|
|
77
77
|
FLAG_REGISTRY,
|
|
@@ -106,7 +106,7 @@ import {
|
|
|
106
106
|
resolveDmTarget,
|
|
107
107
|
sumTranscriptUsageInWindow,
|
|
108
108
|
wrapScheduledTaskPrompt
|
|
109
|
-
} from "../chunk-
|
|
109
|
+
} from "../chunk-IPSZZQ3D.js";
|
|
110
110
|
import {
|
|
111
111
|
parsePsRows,
|
|
112
112
|
reapOrphanChannelMcps
|
|
@@ -866,16 +866,18 @@ function decideOnboardingDrive(step, marker, nowMs, generation = 0, reinjectInte
|
|
|
866
866
|
clearMarker: false,
|
|
867
867
|
nextMarker: { step, injectedAtMs: nowMs, nudgeCount: 1, gaveUp: false, generation },
|
|
868
868
|
reminder: false,
|
|
869
|
-
standDown: false
|
|
869
|
+
standDown: false,
|
|
870
|
+
// The operator just re-ran /onboard: tell the agent to ask afresh now.
|
|
871
|
+
freshRestart: true
|
|
870
872
|
};
|
|
871
873
|
}
|
|
872
874
|
if (current?.gaveUp) {
|
|
873
|
-
return { inject: false, clearMarker: false, nextMarker: current, reminder: false, standDown: false };
|
|
875
|
+
return { inject: false, clearMarker: false, nextMarker: current, reminder: false, standDown: false, freshRestart: false };
|
|
874
876
|
}
|
|
875
877
|
const fresh = current === null;
|
|
876
878
|
const stale = current !== null && nowMs - current.injectedAtMs >= reinjectIntervalMs;
|
|
877
879
|
if (!fresh && !stale) {
|
|
878
|
-
return { inject: false, clearMarker: false, nextMarker: current, reminder: false, standDown: false };
|
|
880
|
+
return { inject: false, clearMarker: false, nextMarker: current, reminder: false, standDown: false, freshRestart: false };
|
|
879
881
|
}
|
|
880
882
|
const nudgeCount = fresh ? 1 : current.nudgeCount + 1;
|
|
881
883
|
const isFinal = nudgeCount >= maxNudges;
|
|
@@ -886,10 +888,11 @@ function decideOnboardingDrive(step, marker, nowMs, generation = 0, reinjectInte
|
|
|
886
888
|
// A middle re-fire (not fresh, not final) is a gentle "still waiting"
|
|
887
889
|
// reminder; the final one is a stand-down, not a reminder.
|
|
888
890
|
reminder: !fresh && !isFinal,
|
|
889
|
-
standDown: isFinal
|
|
891
|
+
standDown: isFinal,
|
|
892
|
+
freshRestart: false
|
|
890
893
|
};
|
|
891
894
|
}
|
|
892
|
-
return { inject: false, clearMarker: marker !== null, nextMarker: null, reminder: false, standDown: false };
|
|
895
|
+
return { inject: false, clearMarker: marker !== null, nextMarker: null, reminder: false, standDown: false, freshRestart: false };
|
|
893
896
|
}
|
|
894
897
|
var AREA_DIRECTIVE = {
|
|
895
898
|
framing: "Frame the work \u2014 ask your manager what matters in week one and what success looks like, then record it with memory_save",
|
|
@@ -898,11 +901,13 @@ var AREA_DIRECTIVE = {
|
|
|
898
901
|
reporting: "Agree how you keep your manager posted \u2014 settle on a cadence and channel, then create a recurring report scheduled task for it"
|
|
899
902
|
};
|
|
900
903
|
function buildOnboardingDirective(step, completed = [], opts = {}) {
|
|
901
|
-
const { channel, reminder = false, standDown = false, code } = opts;
|
|
904
|
+
const { channel, reminder = false, standDown = false, freshRestart = false, code } = opts;
|
|
902
905
|
const doneAreas = completed.filter(isOnboardingArea);
|
|
903
906
|
const alreadyCovered = doneAreas.length > 0 ? `You've already covered ${doneAreas.join(", ")} \u2014 re-orient, don't re-ask about those. ` : "";
|
|
904
907
|
const where = channel ? `your manager in ${describeOnboardingChannel(channel)} (the channel onboarding was triggered from)` : "your manager over your usual channel";
|
|
905
|
-
const
|
|
908
|
+
const waitClause = `WAIT for their reply. Do NOT self-answer, and do NOT call \`onboarding_advance\` until they respond. ${AREA_DIRECTIVE[step]} only once they have. `;
|
|
909
|
+
const askAndWait = `Ask ${where} this area's question and ${waitClause}`;
|
|
910
|
+
const mustAskNow = `Post this area's question to ${where} as a NEW message in THIS turn. Even if you think you asked in an earlier round, do NOT "stand down" to wait unless you have just asked it now; a previous round's ask does not count. Once it is out, ${waitClause}`;
|
|
906
911
|
if (standDown) {
|
|
907
912
|
const resumeCmd = code ? `/onboard-${code}` : "/onboard";
|
|
908
913
|
return `\u{1F6D1} Onboarding (${step}): your manager hasn't replied after a few nudges, so stand down on this for now. Post exactly this once to ${where}, then STOP nudging this area and do NOT call \`onboarding_advance\`: "Let me know if you'd like me to stop nudging you on this. You can resume onboarding at any time using ${resumeCmd}." After posting, leave onboarding parked; your manager can resume it whenever they're ready.`;
|
|
@@ -910,7 +915,10 @@ function buildOnboardingDirective(step, completed = [], opts = {}) {
|
|
|
910
915
|
if (reminder) {
|
|
911
916
|
return `\u23F3 Onboarding (${step}): still waiting on your manager's answer for this area. If you haven't asked yet, ask now; otherwise give them a gentle nudge, but don't move on without a reply. ` + askAndWait + `Advance with \`onboarding_advance\` (ADVANCE) once this area is done.`;
|
|
912
917
|
}
|
|
913
|
-
|
|
918
|
+
if (freshRestart) {
|
|
919
|
+
return `\u{1F504} Onboarding (${step}): your manager just re-ran \`/onboard\`, so onboarding has RESTARTED at this area. Call the \`onboarding_get\` tool now to re-read this area, then ${mustAskNow}Advance with \`onboarding_advance\` (ADVANCE) once this area is done.`;
|
|
920
|
+
}
|
|
921
|
+
return `\u{1F680} Onboarding (${step}): your self-onboarding is active and waiting on you. ` + alreadyCovered + `Call the \`onboarding_get\` tool now to see this area's questions and full instructions, then ${mustAskNow}Advance with \`onboarding_advance\` (ADVANCE) once this area is done.`;
|
|
914
922
|
}
|
|
915
923
|
function onboardingNudgeReachedSession(result) {
|
|
916
924
|
return result.delivered || result.fallbackUsed;
|
|
@@ -6953,7 +6961,7 @@ var cachedMaintenanceWindow = null;
|
|
|
6953
6961
|
var lastVersionCheckAt = 0;
|
|
6954
6962
|
var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
|
|
6955
6963
|
var lastResponsivenessProbeAt = 0;
|
|
6956
|
-
var agtCliVersion = true ? "0.28.
|
|
6964
|
+
var agtCliVersion = true ? "0.28.99" : "dev";
|
|
6957
6965
|
function resolveBrewPath(execFileSync4) {
|
|
6958
6966
|
try {
|
|
6959
6967
|
const out = execFileSync4("which", ["brew"], { timeout: 5e3 }).toString().trim();
|
|
@@ -8064,7 +8072,7 @@ async function pollCycle() {
|
|
|
8064
8072
|
}
|
|
8065
8073
|
try {
|
|
8066
8074
|
const { detectHostSecurity } = await import("../host-security-6PDFG7F5.js");
|
|
8067
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
8075
|
+
const { collectDiagnostics } = await import("../persistent-session-3OABTEPN.js");
|
|
8068
8076
|
const diagCodeNames = [...agentState.persistentSessionAgents];
|
|
8069
8077
|
const agentDiagnostics = diagCodeNames.length > 0 ? collectDiagnostics(diagCodeNames) : void 0;
|
|
8070
8078
|
let tailscaleHostname;
|
|
@@ -8165,7 +8173,7 @@ async function pollCycle() {
|
|
|
8165
8173
|
const {
|
|
8166
8174
|
collectResponsivenessProbes,
|
|
8167
8175
|
getResponsivenessIntervalMs
|
|
8168
|
-
} = await import("../responsiveness-probe-
|
|
8176
|
+
} = await import("../responsiveness-probe-IES7QHV5.js");
|
|
8169
8177
|
const probeIntervalMs = getResponsivenessIntervalMs();
|
|
8170
8178
|
if (now - lastResponsivenessProbeAt > probeIntervalMs) {
|
|
8171
8179
|
const probeCodeNames = [...agentState.persistentSessionAgents];
|
|
@@ -8197,7 +8205,7 @@ async function pollCycle() {
|
|
|
8197
8205
|
collectResponsivenessProbes,
|
|
8198
8206
|
livePendingInboundOldestAgeSeconds,
|
|
8199
8207
|
parkPendingInbound
|
|
8200
|
-
} = await import("../responsiveness-probe-
|
|
8208
|
+
} = await import("../responsiveness-probe-IES7QHV5.js");
|
|
8201
8209
|
const { getProjectDir: wedgeProjectDir } = await import("../claude-scheduler-FATCLHDM.js");
|
|
8202
8210
|
const wedgeNow = /* @__PURE__ */ new Date();
|
|
8203
8211
|
const liveAgents = agentState.persistentSessionAgents;
|
|
@@ -10475,11 +10483,14 @@ In progress for ${age} minutes \u2014 auto-failed`).catch(() => {
|
|
|
10475
10483
|
// ENG-6583: anchor the ask to the channel onboarding was triggered
|
|
10476
10484
|
// from, and phrase a staleness re-fire as a gentle reminder. ENG-6626:
|
|
10477
10485
|
// the final bounded nudge flips to the stand-down message, which names
|
|
10478
|
-
// the agent's /onboard-<code> resume command.
|
|
10486
|
+
// the agent's /onboard-<code> resume command. ENG-6636: a /onboard
|
|
10487
|
+
// restart (generation change) forces the "post the question afresh
|
|
10488
|
+
// this turn, don't stand down" variant.
|
|
10479
10489
|
buildOnboardingDirective(obStep, obState.completed, {
|
|
10480
10490
|
channel: obState.channel,
|
|
10481
10491
|
reminder: decision.reminder,
|
|
10482
10492
|
standDown: decision.standDown,
|
|
10493
|
+
freshRestart: decision.freshRestart,
|
|
10483
10494
|
code: agent.code_name
|
|
10484
10495
|
}),
|
|
10485
10496
|
{ task_name: "onboarding" },
|
|
@@ -11722,7 +11733,7 @@ async function processClaudePairSessions(agents) {
|
|
|
11722
11733
|
killPairSession,
|
|
11723
11734
|
pairTmuxSession,
|
|
11724
11735
|
finalizeClaudePairOnboarding
|
|
11725
|
-
} = await import("../claude-pair-runtime-
|
|
11736
|
+
} = await import("../claude-pair-runtime-LDBMWVTP.js");
|
|
11726
11737
|
for (const pairId of pendingResp.cancelled_pair_ids ?? []) {
|
|
11727
11738
|
log(`[claude-pair] sweeping orphan tmux session for pair ${pairId.slice(0, 8)}`);
|
|
11728
11739
|
const killed = await killPairSession(pairTmuxSession(pairId));
|