@integrity-labs/agt-cli 0.28.839 → 0.28.841
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/assets/review/SKILL.md +198 -0
- package/dist/assets/review/post-review-findings.mjs +5 -1
- package/dist/bin/agt.js +5 -5
- package/dist/{chunk-V2JMDOOU.js → chunk-43P6SG7L.js} +4 -4
- package/dist/{chunk-W4KAZQBS.js → chunk-CFLYGZOF.js} +2 -2
- package/dist/{chunk-DUOFKTAD.js → chunk-XBLODN73.js} +17 -11
- package/dist/chunk-XBLODN73.js.map +1 -0
- package/dist/{claude-pair-runtime-A52UZQ6V.js → claude-pair-runtime-XC3AQA4L.js} +2 -2
- package/dist/lib/manager-worker.js +33 -13
- package/dist/lib/manager-worker.js.map +1 -1
- package/dist/mcp/direct-chat-channel.js +752 -635
- package/dist/{persistent-session-N6FIS7UY.js → persistent-session-WLP5YTO2.js} +3 -3
- package/dist/{responsiveness-probe-OBQCSEFT.js → responsiveness-probe-7RYNNHKC.js} +3 -3
- package/dist/{session-auth-dead-LIPEYPBX.js → session-auth-dead-X6B6C3BR.js} +2 -2
- package/package.json +2 -2
- package/dist/chunk-DUOFKTAD.js.map +0 -1
- /package/dist/{chunk-V2JMDOOU.js.map → chunk-43P6SG7L.js.map} +0 -0
- /package/dist/{chunk-W4KAZQBS.js.map → chunk-CFLYGZOF.js.map} +0 -0
- /package/dist/{claude-pair-runtime-A52UZQ6V.js.map → claude-pair-runtime-XC3AQA4L.js.map} +0 -0
- /package/dist/{persistent-session-N6FIS7UY.js.map → persistent-session-WLP5YTO2.js.map} +0 -0
- /package/dist/{responsiveness-probe-OBQCSEFT.js.map → responsiveness-probe-7RYNNHKC.js.map} +0 -0
- /package/dist/{session-auth-dead-LIPEYPBX.js.map → session-auth-dead-X6B6C3BR.js.map} +0 -0
|
@@ -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-WLP5YTO2.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-XC3AQA4L.js.map
|
|
@@ -60,7 +60,7 @@ import {
|
|
|
60
60
|
safeWriteJsonAtomic,
|
|
61
61
|
setConfigHash,
|
|
62
62
|
tripClass
|
|
63
|
-
} from "../chunk-
|
|
63
|
+
} from "../chunk-43P6SG7L.js";
|
|
64
64
|
import {
|
|
65
65
|
getProjectDir as getProjectDir2,
|
|
66
66
|
getReadyTasks,
|
|
@@ -126,7 +126,7 @@ import {
|
|
|
126
126
|
takeZombieDetection,
|
|
127
127
|
toOpencodeModel,
|
|
128
128
|
writeEgressAllowlist
|
|
129
|
-
} from "../chunk-
|
|
129
|
+
} from "../chunk-CFLYGZOF.js";
|
|
130
130
|
import {
|
|
131
131
|
ACCOUNT_ENFORCEMENT_MARKER_FILENAME,
|
|
132
132
|
AnchorSessionClient,
|
|
@@ -221,7 +221,7 @@ import {
|
|
|
221
221
|
subagentActivityAgeSeconds,
|
|
222
222
|
sumTranscriptUsageInWindow,
|
|
223
223
|
transcriptActivityAgeSeconds
|
|
224
|
-
} from "../chunk-
|
|
224
|
+
} from "../chunk-XBLODN73.js";
|
|
225
225
|
import {
|
|
226
226
|
reapOrphanChannelMcps
|
|
227
227
|
} from "../chunk-XWVM4KPK.js";
|
|
@@ -2286,6 +2286,8 @@ var ASSET_FILES = [
|
|
|
2286
2286
|
[AUTH_FILENAME, 420]
|
|
2287
2287
|
];
|
|
2288
2288
|
var REVIEW_ASSET_DIRNAME = "review";
|
|
2289
|
+
var SKILL_FILENAME = "SKILL.md";
|
|
2290
|
+
var REVIEW_SKILL_ID = "pr-review";
|
|
2289
2291
|
function resolveBundledReviewAssetDir() {
|
|
2290
2292
|
const moduleDir = dirname5(fileURLToPath(import.meta.url));
|
|
2291
2293
|
const candidates = [
|
|
@@ -2322,6 +2324,19 @@ function provisionReviewPoster(codeName, sourceDir = resolveBundledReviewAssetDi
|
|
|
2322
2324
|
chmodSync(dest, mode);
|
|
2323
2325
|
}
|
|
2324
2326
|
}
|
|
2327
|
+
function provisionReviewSkill(codeName, sourceDir = resolveBundledReviewAssetDir()) {
|
|
2328
|
+
const src = join8(sourceDir, SKILL_FILENAME);
|
|
2329
|
+
if (!existsSync2(src)) {
|
|
2330
|
+
throw new Error(`[review-poster] bundled asset missing: ${src}`);
|
|
2331
|
+
}
|
|
2332
|
+
const adapter = getFramework("claude-code");
|
|
2333
|
+
if (!adapter.installSkillFiles) {
|
|
2334
|
+
throw new Error("[review-poster] claude-code adapter exposes no installSkillFiles");
|
|
2335
|
+
}
|
|
2336
|
+
adapter.installSkillFiles(codeName, REVIEW_SKILL_ID, [
|
|
2337
|
+
{ relativePath: SKILL_FILENAME, content: readFileSync8(src, "utf-8") }
|
|
2338
|
+
]);
|
|
2339
|
+
}
|
|
2325
2340
|
|
|
2326
2341
|
// src/lib/id-keyed-migration.ts
|
|
2327
2342
|
import { existsSync as existsSync3, lstatSync, readlinkSync, renameSync as renameSync2 } from "fs";
|
|
@@ -13006,7 +13021,7 @@ var pendingDayRolloverReset = /* @__PURE__ */ new Set();
|
|
|
13006
13021
|
var dayRolloverInboundHold = /* @__PURE__ */ new Map();
|
|
13007
13022
|
var INBOUND_HOLD_EPISODE_GAP_MS = 12e4;
|
|
13008
13023
|
async function channelInboundActivityAgeSecondsFor(codeName) {
|
|
13009
|
-
const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-
|
|
13024
|
+
const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-7RYNNHKC.js");
|
|
13010
13025
|
const newest = newestPendingInboundActivityMtimeMs(dirname11(paneLogPath(codeName)));
|
|
13011
13026
|
if (newest === null) return null;
|
|
13012
13027
|
return Math.max(0, Math.floor((Date.now() - newest) / 1e3));
|
|
@@ -13674,7 +13689,7 @@ var agentRestartTimezoneInputs = /* @__PURE__ */ new Map();
|
|
|
13674
13689
|
var lastVersionCheckAt = 0;
|
|
13675
13690
|
var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
|
|
13676
13691
|
var lastResponsivenessProbeAt = 0;
|
|
13677
|
-
var agtCliVersion = true ? "0.28.
|
|
13692
|
+
var agtCliVersion = true ? "0.28.841" : "dev";
|
|
13678
13693
|
function resolveBrewPath(execFileSync2) {
|
|
13679
13694
|
try {
|
|
13680
13695
|
const out = execFileSync2("which", ["brew"], { timeout: 5e3 }).toString().trim();
|
|
@@ -15264,7 +15279,7 @@ function flushRestartedAgentDiagnostics(hostId, codeNames) {
|
|
|
15264
15279
|
if (codeNames.length === 0) return;
|
|
15265
15280
|
void (async () => {
|
|
15266
15281
|
try {
|
|
15267
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
15282
|
+
const { collectDiagnostics } = await import("../persistent-session-WLP5YTO2.js");
|
|
15268
15283
|
await api.post("/host/heartbeat", {
|
|
15269
15284
|
host_id: hostId,
|
|
15270
15285
|
agent_diagnostics: collectDiagnostics(codeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor)
|
|
@@ -15406,7 +15421,7 @@ async function pollCycleInner() {
|
|
|
15406
15421
|
}
|
|
15407
15422
|
try {
|
|
15408
15423
|
const { detectHostSecurity } = await import("../host-security-6PDFG7F5.js");
|
|
15409
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
15424
|
+
const { collectDiagnostics } = await import("../persistent-session-WLP5YTO2.js");
|
|
15410
15425
|
const diagCodeNames = [...agentState.persistentSessionAgents];
|
|
15411
15426
|
const agentDiagnostics = diagCodeNames.length > 0 ? collectDiagnostics(diagCodeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor) : void 0;
|
|
15412
15427
|
let tailscaleHostname;
|
|
@@ -15575,7 +15590,7 @@ async function pollCycleInner() {
|
|
|
15575
15590
|
collectPanelessActivityProbes,
|
|
15576
15591
|
getResponsivenessIntervalMs,
|
|
15577
15592
|
occupancyQualificationClassifications
|
|
15578
|
-
} = await import("../responsiveness-probe-
|
|
15593
|
+
} = await import("../responsiveness-probe-7RYNNHKC.js");
|
|
15579
15594
|
const probeIntervalMs = getResponsivenessIntervalMs();
|
|
15580
15595
|
if (now - lastResponsivenessProbeAt > probeIntervalMs) {
|
|
15581
15596
|
const probeCodeNames = [...agentState.persistentSessionAgents];
|
|
@@ -15692,7 +15707,7 @@ async function pollCycleInner() {
|
|
|
15692
15707
|
collectResponsivenessProbes,
|
|
15693
15708
|
livePendingInboundOldestAgeSeconds,
|
|
15694
15709
|
parkPendingInbound
|
|
15695
|
-
} = await import("../responsiveness-probe-
|
|
15710
|
+
} = await import("../responsiveness-probe-7RYNNHKC.js");
|
|
15696
15711
|
const { getProjectDir: wedgeProjectDir } = await import("../scheduler-engine-NDP36U7O.js");
|
|
15697
15712
|
const wedgeNow = /* @__PURE__ */ new Date();
|
|
15698
15713
|
const liveAgents = agentState.persistentSessionAgents;
|
|
@@ -15848,7 +15863,7 @@ async function pollCycleInner() {
|
|
|
15848
15863
|
}
|
|
15849
15864
|
try {
|
|
15850
15865
|
const { scrapeMcpFailedBannerCount } = await import("../pane-mcp-banner-scraper-JA437JIB.js");
|
|
15851
|
-
const { probeSessionAuth } = await import("../session-auth-dead-
|
|
15866
|
+
const { probeSessionAuth } = await import("../session-auth-dead-X6B6C3BR.js");
|
|
15852
15867
|
const observations = [];
|
|
15853
15868
|
const pendingCacheCommits = [];
|
|
15854
15869
|
const modelApiErrorReportingOn = hostFlagStore().getBoolean("model-api-error-reporting");
|
|
@@ -19531,6 +19546,11 @@ async function ensurePersistentSession(agent, tasks, boardItems, refreshData) {
|
|
|
19531
19546
|
} catch (err) {
|
|
19532
19547
|
log(`[persistent-session] Failed to provision review poster for '${codeName}': ${err.message}`);
|
|
19533
19548
|
}
|
|
19549
|
+
try {
|
|
19550
|
+
provisionReviewSkill(codeName);
|
|
19551
|
+
} catch (err) {
|
|
19552
|
+
log(`[persistent-session] Failed to provision review skill for '${codeName}': ${err.message}`);
|
|
19553
|
+
}
|
|
19534
19554
|
if (!isSessionHealthy(codeName)) {
|
|
19535
19555
|
if (agentState.persistentSessionAgents.has(codeName)) {
|
|
19536
19556
|
const ctx = getLastFailureContext(codeName);
|
|
@@ -20086,7 +20106,7 @@ async function handleRestartDoorbell(agentId, requestedAt, restartReason) {
|
|
|
20086
20106
|
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}`));
|
|
20087
20107
|
void (async () => {
|
|
20088
20108
|
try {
|
|
20089
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
20109
|
+
const { collectDiagnostics } = await import("../persistent-session-WLP5YTO2.js");
|
|
20090
20110
|
await api.post("/host/heartbeat", {
|
|
20091
20111
|
host_id: hostId,
|
|
20092
20112
|
agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor)
|
|
@@ -20132,7 +20152,7 @@ async function respawnAgentAfterMcpStop(codeName, reason) {
|
|
|
20132
20152
|
}
|
|
20133
20153
|
try {
|
|
20134
20154
|
const hostId = await getHostId();
|
|
20135
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
20155
|
+
const { collectDiagnostics } = await import("../persistent-session-WLP5YTO2.js");
|
|
20136
20156
|
await api.post("/host/heartbeat", {
|
|
20137
20157
|
host_id: hostId,
|
|
20138
20158
|
agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor)
|
|
@@ -20768,7 +20788,7 @@ async function processClaudePairSessions(agents) {
|
|
|
20768
20788
|
killPairSession,
|
|
20769
20789
|
pairTmuxSession,
|
|
20770
20790
|
finalizeClaudePairOnboarding
|
|
20771
|
-
} = await import("../claude-pair-runtime-
|
|
20791
|
+
} = await import("../claude-pair-runtime-XC3AQA4L.js");
|
|
20772
20792
|
for (const pairId of pendingResp.cancelled_pair_ids ?? []) {
|
|
20773
20793
|
log(`[claude-pair] sweeping orphan tmux session for pair ${pairId.slice(0, 8)}`);
|
|
20774
20794
|
const killed = await killPairSession(pairTmuxSession(pairId));
|