@integrity-labs/agt-cli 0.27.153 → 0.27.155
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-FZTGR2AQ.js → chunk-3X6V4SVW.js} +11 -4
- package/dist/{chunk-FZTGR2AQ.js.map → chunk-3X6V4SVW.js.map} +1 -1
- package/dist/{chunk-FF37P4BH.js → chunk-FR2MNN2P.js} +2 -2
- package/dist/{chunk-2JIOMDRM.js → chunk-MYKK5OHT.js} +2 -2
- package/dist/{claude-pair-runtime-VSUJJO67.js → claude-pair-runtime-UQFPB2BE.js} +2 -2
- package/dist/lib/manager-worker.js +9 -9
- package/dist/mcp/slack-channel.js +25 -10
- package/dist/{persistent-session-THI6WSPJ.js → persistent-session-AIM4U3AL.js} +3 -3
- package/dist/{responsiveness-probe-UFF2EBGZ.js → responsiveness-probe-6L2XS27G.js} +3 -3
- package/package.json +1 -1
- /package/dist/{chunk-FF37P4BH.js.map → chunk-FR2MNN2P.js.map} +0 -0
- /package/dist/{chunk-2JIOMDRM.js.map → chunk-MYKK5OHT.js.map} +0 -0
- /package/dist/{claude-pair-runtime-VSUJJO67.js.map → claude-pair-runtime-UQFPB2BE.js.map} +0 -0
- /package/dist/{persistent-session-THI6WSPJ.js.map → persistent-session-AIM4U3AL.js.map} +0 -0
- /package/dist/{responsiveness-probe-UFF2EBGZ.js.map → responsiveness-probe-6L2XS27G.js.map} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
claudeModelAlias,
|
|
3
3
|
isClaudeFastMode
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-3X6V4SVW.js";
|
|
5
5
|
import {
|
|
6
6
|
reapOrphanChannelMcps
|
|
7
7
|
} from "./chunk-XWVM4KPK.js";
|
|
@@ -1621,4 +1621,4 @@ export {
|
|
|
1621
1621
|
stopAllSessionsAndWait,
|
|
1622
1622
|
getProjectDir
|
|
1623
1623
|
};
|
|
1624
|
-
//# sourceMappingURL=chunk-
|
|
1624
|
+
//# sourceMappingURL=chunk-FR2MNN2P.js.map
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
registerFramework,
|
|
11
11
|
resolveAvatarEnvUrl,
|
|
12
12
|
wrapScheduledTaskPrompt
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-3X6V4SVW.js";
|
|
14
14
|
|
|
15
15
|
// ../../packages/core/dist/integrations/registry.js
|
|
16
16
|
var INTEGRATION_REGISTRY = [
|
|
@@ -7972,4 +7972,4 @@ export {
|
|
|
7972
7972
|
managerInstallSystemUnitCommand,
|
|
7973
7973
|
managerUninstallSystemUnitCommand
|
|
7974
7974
|
};
|
|
7975
|
-
//# sourceMappingURL=chunk-
|
|
7975
|
+
//# sourceMappingURL=chunk-MYKK5OHT.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-AIM4U3AL.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-UQFPB2BE.js.map
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
provisionStopHook,
|
|
20
20
|
requireHost,
|
|
21
21
|
safeWriteJsonAtomic
|
|
22
|
-
} from "../chunk-
|
|
22
|
+
} from "../chunk-MYKK5OHT.js";
|
|
23
23
|
import {
|
|
24
24
|
getProjectDir as getProjectDir2,
|
|
25
25
|
getReadyTasks,
|
|
@@ -60,7 +60,7 @@ import {
|
|
|
60
60
|
takeWatchdogGiveUpCount,
|
|
61
61
|
takeZombieDetection,
|
|
62
62
|
transcriptActivityAgeSeconds
|
|
63
|
-
} from "../chunk-
|
|
63
|
+
} from "../chunk-FR2MNN2P.js";
|
|
64
64
|
import {
|
|
65
65
|
KANBAN_CHECK_COMMAND,
|
|
66
66
|
MAX_AVATAR_ENV_URL_BYTES,
|
|
@@ -90,7 +90,7 @@ import {
|
|
|
90
90
|
resolveDmTarget,
|
|
91
91
|
worseConnectivityOutcome,
|
|
92
92
|
wrapScheduledTaskPrompt
|
|
93
|
-
} from "../chunk-
|
|
93
|
+
} from "../chunk-3X6V4SVW.js";
|
|
94
94
|
import {
|
|
95
95
|
parsePsRows,
|
|
96
96
|
reapOrphanChannelMcps
|
|
@@ -4914,7 +4914,7 @@ var cachedMaintenanceWindow = null;
|
|
|
4914
4914
|
var lastVersionCheckAt = 0;
|
|
4915
4915
|
var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
|
|
4916
4916
|
var lastResponsivenessProbeAt = 0;
|
|
4917
|
-
var agtCliVersion = true ? "0.27.
|
|
4917
|
+
var agtCliVersion = true ? "0.27.155" : "dev";
|
|
4918
4918
|
function resolveBrewPath(execFileSync4) {
|
|
4919
4919
|
try {
|
|
4920
4920
|
const out = execFileSync4("which", ["brew"], { timeout: 5e3 }).toString().trim();
|
|
@@ -6112,7 +6112,7 @@ async function pollCycle() {
|
|
|
6112
6112
|
}
|
|
6113
6113
|
try {
|
|
6114
6114
|
const { detectHostSecurity } = await import("../host-security-6PDFG7F5.js");
|
|
6115
|
-
const { collectDiagnostics } = await import("../persistent-session-
|
|
6115
|
+
const { collectDiagnostics } = await import("../persistent-session-AIM4U3AL.js");
|
|
6116
6116
|
const diagCodeNames = [...agentState.persistentSessionAgents];
|
|
6117
6117
|
const agentDiagnostics = diagCodeNames.length > 0 ? collectDiagnostics(diagCodeNames) : void 0;
|
|
6118
6118
|
let tailscaleHostname;
|
|
@@ -6199,12 +6199,12 @@ async function pollCycle() {
|
|
|
6199
6199
|
const {
|
|
6200
6200
|
collectResponsivenessProbes,
|
|
6201
6201
|
getResponsivenessIntervalMs
|
|
6202
|
-
} = await import("../responsiveness-probe-
|
|
6202
|
+
} = await import("../responsiveness-probe-6L2XS27G.js");
|
|
6203
6203
|
const probeIntervalMs = getResponsivenessIntervalMs();
|
|
6204
6204
|
if (now - lastResponsivenessProbeAt > probeIntervalMs) {
|
|
6205
6205
|
const probeCodeNames = [...agentState.persistentSessionAgents];
|
|
6206
6206
|
if (probeCodeNames.length > 0) {
|
|
6207
|
-
const { takeAcpxExecFailureCount, creditAcpxExecFailureCount } = await import("../persistent-session-
|
|
6207
|
+
const { takeAcpxExecFailureCount, creditAcpxExecFailureCount } = await import("../persistent-session-AIM4U3AL.js");
|
|
6208
6208
|
const drainedGiveUps = /* @__PURE__ */ new Map();
|
|
6209
6209
|
const drainedAcpxFailures = /* @__PURE__ */ new Map();
|
|
6210
6210
|
const probes = collectResponsivenessProbes(probeCodeNames).map((p) => {
|
|
@@ -6238,7 +6238,7 @@ async function pollCycle() {
|
|
|
6238
6238
|
collectResponsivenessProbes,
|
|
6239
6239
|
livePendingInboundOldestAgeSeconds,
|
|
6240
6240
|
deadLetterPendingInbound
|
|
6241
|
-
} = await import("../responsiveness-probe-
|
|
6241
|
+
} = await import("../responsiveness-probe-6L2XS27G.js");
|
|
6242
6242
|
const { getProjectDir: wedgeProjectDir } = await import("../claude-scheduler-FATCLHDM.js");
|
|
6243
6243
|
const wedgeNow = /* @__PURE__ */ new Date();
|
|
6244
6244
|
const liveAgents = agentState.persistentSessionAgents;
|
|
@@ -10800,7 +10800,7 @@ async function processClaudePairSessions(agents) {
|
|
|
10800
10800
|
killPairSession,
|
|
10801
10801
|
pairTmuxSession,
|
|
10802
10802
|
finalizeClaudePairOnboarding
|
|
10803
|
-
} = await import("../claude-pair-runtime-
|
|
10803
|
+
} = await import("../claude-pair-runtime-UQFPB2BE.js");
|
|
10804
10804
|
for (const pairId of pendingResp.cancelled_pair_ids ?? []) {
|
|
10805
10805
|
log(`[claude-pair] sweeping orphan tmux session for pair ${pairId.slice(0, 8)}`);
|
|
10806
10806
|
const killed = await killPairSession(pairTmuxSession(pairId));
|
|
@@ -15092,6 +15092,16 @@ function clearOldestSlackPendingMarkerInChannel(dir, channel, clear = defaultCle
|
|
|
15092
15092
|
}
|
|
15093
15093
|
}
|
|
15094
15094
|
|
|
15095
|
+
// src/slack-reply-threading.ts
|
|
15096
|
+
function isSlackDmChannel(channel) {
|
|
15097
|
+
return typeof channel === "string" && channel.startsWith("D");
|
|
15098
|
+
}
|
|
15099
|
+
function resolveReplyThreadTs(input) {
|
|
15100
|
+
if (input.threadTs) return input.threadTs;
|
|
15101
|
+
if (isSlackDmChannel(input.channel)) return void 0;
|
|
15102
|
+
return input.messageTs || void 0;
|
|
15103
|
+
}
|
|
15104
|
+
|
|
15095
15105
|
// src/restart-confirm.ts
|
|
15096
15106
|
import { existsSync as existsSync3, mkdirSync, readFileSync as readFileSync3, renameSync, unlinkSync as unlinkSync2, writeFileSync } from "fs";
|
|
15097
15107
|
import { dirname } from "path";
|
|
@@ -17827,7 +17837,7 @@ mcp.setRequestHandler(ListToolsRequestSchema, async () => ({
|
|
|
17827
17837
|
text: { type: "string", description: "The message to send" },
|
|
17828
17838
|
thread_ts: {
|
|
17829
17839
|
type: "string",
|
|
17830
|
-
description: "Thread timestamp for
|
|
17840
|
+
description: "Thread timestamp for an existing thread reply (from the thread_ts attribute). Safe to omit: for a channel message the server automatically threads your reply off the message you are answering (via message_ts), and a DM reply posts inline."
|
|
17831
17841
|
},
|
|
17832
17842
|
// ENG-5861: explicit message_ts so the cleanup gate can match the
|
|
17833
17843
|
// exact pending-inbound marker — necessary because top-level DM
|
|
@@ -18066,17 +18076,22 @@ mcp.setRequestHandler(CallToolRequestSchema, async (req) => {
|
|
|
18066
18076
|
}
|
|
18067
18077
|
if (name === "slack.reply") {
|
|
18068
18078
|
const { channel, text, thread_ts, message_ts } = args;
|
|
18069
|
-
|
|
18079
|
+
const effectiveThreadTs = resolveReplyThreadTs({
|
|
18080
|
+
channel,
|
|
18081
|
+
threadTs: thread_ts,
|
|
18082
|
+
messageTs: message_ts
|
|
18083
|
+
});
|
|
18084
|
+
if (channel && effectiveThreadTs) {
|
|
18070
18085
|
const killed = await isThreadKilled({
|
|
18071
18086
|
channelType: "slack",
|
|
18072
18087
|
channelId: channel,
|
|
18073
|
-
threadTs:
|
|
18088
|
+
threadTs: effectiveThreadTs,
|
|
18074
18089
|
agtHost: AGT_HOST,
|
|
18075
18090
|
agtApiKey: AGT_API_KEY
|
|
18076
18091
|
});
|
|
18077
18092
|
if (killed) {
|
|
18078
18093
|
process.stderr.write(
|
|
18079
|
-
`slack-channel(${AGENT_CODE_NAME}): reply_killed channel=${redactSlackId(channel)} thread=${redactSlackId(
|
|
18094
|
+
`slack-channel(${AGENT_CODE_NAME}): reply_killed channel=${redactSlackId(channel)} thread=${redactSlackId(effectiveThreadTs)}
|
|
18080
18095
|
`
|
|
18081
18096
|
);
|
|
18082
18097
|
return {
|
|
@@ -18091,7 +18106,7 @@ mcp.setRequestHandler(CallToolRequestSchema, async (req) => {
|
|
|
18091
18106
|
}
|
|
18092
18107
|
}
|
|
18093
18108
|
const throttleCfg = configFromEnv();
|
|
18094
|
-
const throttleKey =
|
|
18109
|
+
const throttleKey = effectiveThreadTs ?? channel;
|
|
18095
18110
|
const throttleNow = Date.now();
|
|
18096
18111
|
const throttleDecision = decideReplyThrottle({
|
|
18097
18112
|
recentReplyTimestamps: getRecentReplies(channel, throttleKey, throttleNow, throttleCfg),
|
|
@@ -18103,14 +18118,14 @@ mcp.setRequestHandler(CallToolRequestSchema, async (req) => {
|
|
|
18103
18118
|
`slack-channel(${AGENT_CODE_NAME}): reply_throttled channel=${redactSlackId(channel)} thread=${redactSlackId(throttleKey)} count=${throttleDecision.recentCount} window_ms=${throttleCfg.windowMs} threshold=${throttleCfg.threshold}
|
|
18104
18119
|
`
|
|
18105
18120
|
);
|
|
18106
|
-
if (channel &&
|
|
18121
|
+
if (channel && effectiveThreadTs) {
|
|
18107
18122
|
fetch("https://slack.com/api/reactions.add", {
|
|
18108
18123
|
method: "POST",
|
|
18109
18124
|
headers: {
|
|
18110
18125
|
"Content-Type": "application/json",
|
|
18111
18126
|
Authorization: `Bearer ${BOT_TOKEN}`
|
|
18112
18127
|
},
|
|
18113
|
-
body: JSON.stringify({ channel, timestamp:
|
|
18128
|
+
body: JSON.stringify({ channel, timestamp: effectiveThreadTs, name: "lock" })
|
|
18114
18129
|
}).catch(() => {
|
|
18115
18130
|
});
|
|
18116
18131
|
}
|
|
@@ -18144,7 +18159,7 @@ mcp.setRequestHandler(CallToolRequestSchema, async (req) => {
|
|
|
18144
18159
|
body: JSON.stringify({
|
|
18145
18160
|
channel,
|
|
18146
18161
|
text,
|
|
18147
|
-
...
|
|
18162
|
+
...effectiveThreadTs ? { thread_ts: effectiveThreadTs } : {},
|
|
18148
18163
|
...buildAugmentedSlackMetadata() ? { metadata: buildAugmentedSlackMetadata() } : {}
|
|
18149
18164
|
// ↑ Labels this message as Augmented-agent-originated so peer agents
|
|
18150
18165
|
// enforcing sender_policy=team_agents_only can verify the sender.
|
|
@@ -18160,7 +18175,7 @@ mcp.setRequestHandler(CallToolRequestSchema, async (req) => {
|
|
|
18160
18175
|
recordReply(channel, throttleKey, throttleNow, throttleCfg);
|
|
18161
18176
|
recordActivity("reply");
|
|
18162
18177
|
if (THREAD_AUTO_FOLLOW !== "off") {
|
|
18163
|
-
const trackTs =
|
|
18178
|
+
const trackTs = effectiveThreadTs ?? data.ts ?? void 0;
|
|
18164
18179
|
rememberThread(channel, trackTs, thread_ts ? "mentioned" : "started");
|
|
18165
18180
|
}
|
|
18166
18181
|
if (interactiveHostAvailable() && data.ts) {
|
|
@@ -18170,7 +18185,7 @@ mcp.setRequestHandler(CallToolRequestSchema, async (req) => {
|
|
|
18170
18185
|
agentId: AGT_AGENT_ID
|
|
18171
18186
|
};
|
|
18172
18187
|
const tsToRecord = data.ts;
|
|
18173
|
-
const threadTsToRecord =
|
|
18188
|
+
const threadTsToRecord = effectiveThreadTs;
|
|
18174
18189
|
void (async () => {
|
|
18175
18190
|
try {
|
|
18176
18191
|
const runtime = await Promise.resolve().then(() => (init_slack_block_kit_runtime(), slack_block_kit_runtime_exports));
|
|
@@ -25,8 +25,8 @@ import {
|
|
|
25
25
|
takeAcpxExecFailureCount,
|
|
26
26
|
takeZombieDetection,
|
|
27
27
|
writePersistentClaudeWrapper
|
|
28
|
-
} from "./chunk-
|
|
29
|
-
import "./chunk-
|
|
28
|
+
} from "./chunk-FR2MNN2P.js";
|
|
29
|
+
import "./chunk-3X6V4SVW.js";
|
|
30
30
|
import "./chunk-XWVM4KPK.js";
|
|
31
31
|
export {
|
|
32
32
|
SEND_KEYS_ENTER_DELAY_MS,
|
|
@@ -56,4 +56,4 @@ export {
|
|
|
56
56
|
takeZombieDetection,
|
|
57
57
|
writePersistentClaudeWrapper
|
|
58
58
|
};
|
|
59
|
-
//# sourceMappingURL=persistent-session-
|
|
59
|
+
//# sourceMappingURL=persistent-session-AIM4U3AL.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
paneLogPath
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-FR2MNN2P.js";
|
|
4
|
+
import "./chunk-3X6V4SVW.js";
|
|
5
5
|
import "./chunk-XWVM4KPK.js";
|
|
6
6
|
|
|
7
7
|
// src/lib/responsiveness-probe.ts
|
|
@@ -154,4 +154,4 @@ export {
|
|
|
154
154
|
livePendingInboundOldestAgeSeconds,
|
|
155
155
|
oldestLivePendingInboundMtimeMs
|
|
156
156
|
};
|
|
157
|
-
//# sourceMappingURL=responsiveness-probe-
|
|
157
|
+
//# sourceMappingURL=responsiveness-probe-6L2XS27G.js.map
|
package/package.json
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|