@integrity-labs/agt-cli 0.28.372 → 0.28.373
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-NDF3YMP5.js → chunk-TRBANZZ4.js} +6 -12
- package/dist/{chunk-NDF3YMP5.js.map → chunk-TRBANZZ4.js.map} +1 -1
- package/dist/{chunk-FAMCYDMC.js → chunk-WQMTAMLX.js} +3 -3
- package/dist/{claude-pair-runtime-U2SO44TW.js → claude-pair-runtime-DPFC3EF3.js} +2 -2
- package/dist/lib/manager-worker.js +14 -64
- package/dist/lib/manager-worker.js.map +1 -1
- package/dist/mcp/direct-chat-channel.js +5 -11
- package/dist/mcp/origami.js +5 -11
- package/dist/mcp/slack-channel.js +5 -11
- package/dist/mcp/telegram-channel.js +5 -11
- package/dist/{persistent-session-HXUYS63V.js → persistent-session-G4GDPZ54.js} +2 -2
- package/dist/{responsiveness-probe-TVSASSZY.js → responsiveness-probe-2JNQBULO.js} +2 -2
- package/package.json +1 -1
- /package/dist/{chunk-FAMCYDMC.js.map → chunk-WQMTAMLX.js.map} +0 -0
- /package/dist/{claude-pair-runtime-U2SO44TW.js.map → claude-pair-runtime-DPFC3EF3.js.map} +0 -0
- /package/dist/{persistent-session-HXUYS63V.js.map → persistent-session-G4GDPZ54.js.map} +0 -0
- /package/dist/{responsiveness-probe-TVSASSZY.js.map → responsiveness-probe-2JNQBULO.js.map} +0 -0
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
resolveConnectivityProbe,
|
|
26
26
|
worseConnectivityOutcome,
|
|
27
27
|
wrapScheduledTaskPrompt
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-TRBANZZ4.js";
|
|
29
29
|
import {
|
|
30
30
|
parsePsRows
|
|
31
31
|
} from "./chunk-XWVM4KPK.js";
|
|
@@ -6166,7 +6166,7 @@ function requireHost() {
|
|
|
6166
6166
|
}
|
|
6167
6167
|
|
|
6168
6168
|
// src/lib/api-client.ts
|
|
6169
|
-
var agtCliVersion = true ? "0.28.
|
|
6169
|
+
var agtCliVersion = true ? "0.28.373" : "dev";
|
|
6170
6170
|
var lastConfigHash = null;
|
|
6171
6171
|
function setConfigHash(hash) {
|
|
6172
6172
|
lastConfigHash = hash && hash.length > 0 ? hash : null;
|
|
@@ -8612,4 +8612,4 @@ export {
|
|
|
8612
8612
|
managerInstallSystemUnitCommand,
|
|
8613
8613
|
managerUninstallSystemUnitCommand
|
|
8614
8614
|
};
|
|
8615
|
-
//# sourceMappingURL=chunk-
|
|
8615
|
+
//# sourceMappingURL=chunk-WQMTAMLX.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-G4GDPZ54.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-DPFC3EF3.js.map
|
|
@@ -43,7 +43,7 @@ import {
|
|
|
43
43
|
resolveEffectivePinRaw,
|
|
44
44
|
safeWriteJsonAtomic,
|
|
45
45
|
setConfigHash
|
|
46
|
-
} from "../chunk-
|
|
46
|
+
} from "../chunk-WQMTAMLX.js";
|
|
47
47
|
import {
|
|
48
48
|
getProjectDir as getProjectDir2,
|
|
49
49
|
getReadyTasks,
|
|
@@ -90,7 +90,6 @@ import {
|
|
|
90
90
|
injectMessageWithStatus,
|
|
91
91
|
injectOpencodeMessage,
|
|
92
92
|
isAgentIdle,
|
|
93
|
-
isAgentPromptReady,
|
|
94
93
|
isBareAck,
|
|
95
94
|
isConversationFailureCategory,
|
|
96
95
|
isEmptyTotals,
|
|
@@ -131,7 +130,6 @@ import {
|
|
|
131
130
|
resolveDmTarget,
|
|
132
131
|
restartEgressSidecar,
|
|
133
132
|
rotateSessionForWedge,
|
|
134
|
-
sendToAgent,
|
|
135
133
|
serializeUsageLimitMarker,
|
|
136
134
|
sessionTranscriptDir,
|
|
137
135
|
sha256,
|
|
@@ -147,7 +145,7 @@ import {
|
|
|
147
145
|
toOpencodeModel,
|
|
148
146
|
transcriptActivityAgeSeconds,
|
|
149
147
|
writeEgressAllowlist
|
|
150
|
-
} from "../chunk-
|
|
148
|
+
} from "../chunk-TRBANZZ4.js";
|
|
151
149
|
import {
|
|
152
150
|
reapOrphanChannelMcps
|
|
153
151
|
} from "../chunk-XWVM4KPK.js";
|
|
@@ -4148,9 +4146,6 @@ function shouldNudgeUnchangedBoard(signature, state7, now, fullCadenceMs, maxCad
|
|
|
4148
4146
|
if (state7.signature !== signature) return true;
|
|
4149
4147
|
return now - state7.nudgedAt >= nudgeIntervalForCount(state7.nudgeCount ?? 1, fullCadenceMs, maxCadenceMs);
|
|
4150
4148
|
}
|
|
4151
|
-
function isSlashCommand(command) {
|
|
4152
|
-
return command.trimStart().startsWith("/");
|
|
4153
|
-
}
|
|
4154
4149
|
var BOARD_INJECT_TEMPLATES = /* @__PURE__ */ new Set(["morning-plan", "task-update", "hourly-status", "end-of-day-summary"]);
|
|
4155
4150
|
function parseStandupSummary(summary) {
|
|
4156
4151
|
const lines = summary.split("\n");
|
|
@@ -9105,7 +9100,7 @@ var agentRestartTimezoneInputs = /* @__PURE__ */ new Map();
|
|
|
9105
9100
|
var lastVersionCheckAt = 0;
|
|
9106
9101
|
var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
|
|
9107
9102
|
var lastResponsivenessProbeAt = 0;
|
|
9108
|
-
var agtCliVersion = true ? "0.28.
|
|
9103
|
+
var agtCliVersion = true ? "0.28.373" : "dev";
|
|
9109
9104
|
function resolveBrewPath(execFileSync2) {
|
|
9110
9105
|
try {
|
|
9111
9106
|
const out = execFileSync2("which", ["brew"], { timeout: 5e3 }).toString().trim();
|
|
@@ -10124,7 +10119,7 @@ function flushRestartedAgentDiagnostics(hostId, codeNames) {
|
|
|
10124
10119
|
if (codeNames.length === 0) return;
|
|
10125
10120
|
void (async () => {
|
|
10126
10121
|
try {
|
|
10127
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
10122
|
+
const { collectDiagnostics } = await import("../persistent-session-G4GDPZ54.js");
|
|
10128
10123
|
await api.post("/host/heartbeat", {
|
|
10129
10124
|
host_id: hostId,
|
|
10130
10125
|
agent_diagnostics: collectDiagnostics(codeNames)
|
|
@@ -10223,7 +10218,7 @@ async function pollCycle() {
|
|
|
10223
10218
|
}
|
|
10224
10219
|
try {
|
|
10225
10220
|
const { detectHostSecurity } = await import("../host-security-6PDFG7F5.js");
|
|
10226
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
10221
|
+
const { collectDiagnostics } = await import("../persistent-session-G4GDPZ54.js");
|
|
10227
10222
|
const diagCodeNames = [...agentState.persistentSessionAgents];
|
|
10228
10223
|
const agentDiagnostics = diagCodeNames.length > 0 ? collectDiagnostics(diagCodeNames) : void 0;
|
|
10229
10224
|
let tailscaleHostname;
|
|
@@ -10378,7 +10373,7 @@ async function pollCycle() {
|
|
|
10378
10373
|
const {
|
|
10379
10374
|
collectResponsivenessProbes,
|
|
10380
10375
|
getResponsivenessIntervalMs
|
|
10381
|
-
} = await import("../responsiveness-probe-
|
|
10376
|
+
} = await import("../responsiveness-probe-2JNQBULO.js");
|
|
10382
10377
|
const probeIntervalMs = getResponsivenessIntervalMs();
|
|
10383
10378
|
if (now - lastResponsivenessProbeAt > probeIntervalMs) {
|
|
10384
10379
|
const probeCodeNames = [...agentState.persistentSessionAgents];
|
|
@@ -10410,7 +10405,7 @@ async function pollCycle() {
|
|
|
10410
10405
|
collectResponsivenessProbes,
|
|
10411
10406
|
livePendingInboundOldestAgeSeconds,
|
|
10412
10407
|
parkPendingInbound
|
|
10413
|
-
} = await import("../responsiveness-probe-
|
|
10408
|
+
} = await import("../responsiveness-probe-2JNQBULO.js");
|
|
10414
10409
|
const { getProjectDir: wedgeProjectDir } = await import("../scheduler-engine-HYOOQV4A.js");
|
|
10415
10410
|
const wedgeNow = /* @__PURE__ */ new Date();
|
|
10416
10411
|
const liveAgents = agentState.persistentSessionAgents;
|
|
@@ -13588,7 +13583,7 @@ async function handleRestartDoorbell(agentId, requestedAt, restartReason) {
|
|
|
13588
13583
|
void api.post("/host/restart-ack", { host_id: hostId, agent_id: agentId, restart_requested_at: requestedAt }).catch((err) => log(`[restart-lane] ack failed for '${codeName}': ${err.message}`));
|
|
13589
13584
|
void (async () => {
|
|
13590
13585
|
try {
|
|
13591
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
13586
|
+
const { collectDiagnostics } = await import("../persistent-session-G4GDPZ54.js");
|
|
13592
13587
|
await api.post("/host/heartbeat", {
|
|
13593
13588
|
host_id: hostId,
|
|
13594
13589
|
agent_diagnostics: collectDiagnostics([codeName])
|
|
@@ -13638,7 +13633,7 @@ async function respawnAgentAfterMcpStop(codeName, reason) {
|
|
|
13638
13633
|
}
|
|
13639
13634
|
try {
|
|
13640
13635
|
const hostId = await getHostId();
|
|
13641
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
13636
|
+
const { collectDiagnostics } = await import("../persistent-session-G4GDPZ54.js");
|
|
13642
13637
|
await api.post("/host/heartbeat", {
|
|
13643
13638
|
host_id: hostId,
|
|
13644
13639
|
agent_diagnostics: collectDiagnostics([codeName])
|
|
@@ -14059,61 +14054,16 @@ async function maybeInjectKanbanCheck(codeName, agentId, actionableCount, signat
|
|
|
14059
14054
|
return;
|
|
14060
14055
|
}
|
|
14061
14056
|
lastKanbanInjectAt.set(codeName, Date.now());
|
|
14062
|
-
|
|
14063
|
-
|
|
14064
|
-
if (ok) {
|
|
14065
|
-
setKanbanNudgeState(codeName, {
|
|
14066
|
-
signature,
|
|
14067
|
-
nudgedAt: Date.now(),
|
|
14068
|
-
nudgeCount: nextKanbanNudgeCount(codeName, signature)
|
|
14069
|
-
});
|
|
14070
|
-
return;
|
|
14071
|
-
}
|
|
14072
|
-
log(`[manager-worker] kanban direct-chat enqueue failed for '${codeName}' \u2014 falling back to send-keys`);
|
|
14073
|
-
}
|
|
14074
|
-
const tmuxSession = `agt-${codeName}`;
|
|
14075
|
-
const ready = await isAgentPromptReady(tmuxSession);
|
|
14076
|
-
if (!ready) {
|
|
14077
|
-
log(`[manager-worker] kanban inject skipped \u2014 agent busy ('${codeName}')`);
|
|
14078
|
-
return;
|
|
14079
|
-
}
|
|
14080
|
-
if (isKanbanHybridDryRun()) {
|
|
14081
|
-
log(
|
|
14082
|
-
`[manager-worker] kanban inject DRY-RUN \u2014 would inject for '${codeName}' (${actionableCount} actionable items)`
|
|
14083
|
-
);
|
|
14084
|
-
lastKanbanInjectAt.delete(codeName);
|
|
14085
|
-
return;
|
|
14086
|
-
}
|
|
14087
|
-
closeInjectedRunIfOpen(codeName, "completed", "kanban inject superseded by next inject");
|
|
14088
|
-
const { run_id } = await startRun({
|
|
14089
|
-
agent_id: agentId,
|
|
14090
|
-
source_type: "kanban",
|
|
14091
|
-
metadata: { injected: "kanban-check", actionable_count: actionableCount }
|
|
14092
|
-
});
|
|
14093
|
-
let delivered;
|
|
14094
|
-
if (isSlashCommand(KANBAN_CHECK_COMMAND)) {
|
|
14095
|
-
delivered = sendToAgent(tmuxSession, KANBAN_CHECK_COMMAND);
|
|
14096
|
-
} else {
|
|
14097
|
-
const content = run_id ? `${KANBAN_CHECK_COMMAND}
|
|
14098
|
-
${formatRunMarker(run_id)}` : KANBAN_CHECK_COMMAND;
|
|
14099
|
-
delivered = await injectMessage(codeName, "system", content, void 0, log);
|
|
14100
|
-
}
|
|
14101
|
-
if (delivered) {
|
|
14102
|
-
if (run_id) openInjectedRunByCode.set(codeName, run_id);
|
|
14057
|
+
const ok = await injectKanbanCheckViaDirectChat(codeName, agentId, actionableCount);
|
|
14058
|
+
if (ok) {
|
|
14103
14059
|
setKanbanNudgeState(codeName, {
|
|
14104
14060
|
signature,
|
|
14105
14061
|
nudgedAt: Date.now(),
|
|
14106
14062
|
nudgeCount: nextKanbanNudgeCount(codeName, signature)
|
|
14107
14063
|
});
|
|
14108
|
-
|
|
14109
|
-
`[manager-worker] Injected kanban check for '${codeName}' (${actionableCount} actionable items)${run_id ? ` run_id=${run_id}` : ""}`
|
|
14110
|
-
);
|
|
14111
|
-
} else {
|
|
14112
|
-
if (run_id) {
|
|
14113
|
-
void finishRun(run_id, "failed", { outcomeMessage: "kanban inject delivery failed" });
|
|
14114
|
-
}
|
|
14115
|
-
log(`[manager-worker] kanban inject failed for '${codeName}'`);
|
|
14064
|
+
return;
|
|
14116
14065
|
}
|
|
14066
|
+
log(`[manager-worker] kanban direct-chat enqueue failed for '${codeName}' - will re-nudge next tick`);
|
|
14117
14067
|
}
|
|
14118
14068
|
var lastHarvestAt = /* @__PURE__ */ new Map();
|
|
14119
14069
|
var HARVEST_INTERVAL_MS = 3 * 60 * 1e3;
|
|
@@ -14136,7 +14086,7 @@ async function processClaudePairSessions(agents) {
|
|
|
14136
14086
|
killPairSession,
|
|
14137
14087
|
pairTmuxSession,
|
|
14138
14088
|
finalizeClaudePairOnboarding
|
|
14139
|
-
} = await import("../claude-pair-runtime-
|
|
14089
|
+
} = await import("../claude-pair-runtime-DPFC3EF3.js");
|
|
14140
14090
|
for (const pairId of pendingResp.cancelled_pair_ids ?? []) {
|
|
14141
14091
|
log(`[claude-pair] sweeping orphan tmux session for pair ${pairId.slice(0, 8)}`);
|
|
14142
14092
|
const killed = await killPairSession(pairTmuxSession(pairId));
|