@integrity-labs/agt-cli 0.28.298 → 0.28.299

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.
@@ -18,7 +18,7 @@ import {
18
18
  resolveConnectivityProbe,
19
19
  worseConnectivityOutcome,
20
20
  wrapScheduledTaskPrompt
21
- } from "./chunk-5LUVY4P6.js";
21
+ } from "./chunk-KMJHNKPQ.js";
22
22
  import {
23
23
  parsePsRows
24
24
  } from "./chunk-XWVM4KPK.js";
@@ -5882,7 +5882,7 @@ function requireHost() {
5882
5882
  }
5883
5883
 
5884
5884
  // src/lib/api-client.ts
5885
- var agtCliVersion = true ? "0.28.298" : "dev";
5885
+ var agtCliVersion = true ? "0.28.299" : "dev";
5886
5886
  var lastConfigHash = null;
5887
5887
  function setConfigHash(hash) {
5888
5888
  lastConfigHash = hash && hash.length > 0 ? hash : null;
@@ -8181,4 +8181,4 @@ export {
8181
8181
  managerInstallSystemUnitCommand,
8182
8182
  managerUninstallSystemUnitCommand
8183
8183
  };
8184
- //# sourceMappingURL=chunk-EF42DMMK.js.map
8184
+ //# sourceMappingURL=chunk-V23GLSEX.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-ZQUFIWLK.js");
103
+ const { resolveClaudeBinary } = await import("./persistent-session-RSM62IW7.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-UTQO3G5A.js.map
376
+ //# sourceMappingURL=claude-pair-runtime-ZJZ3XYH4.js.map
@@ -39,7 +39,7 @@ import {
39
39
  requireHost,
40
40
  safeWriteJsonAtomic,
41
41
  setConfigHash
42
- } from "../chunk-EF42DMMK.js";
42
+ } from "../chunk-V23GLSEX.js";
43
43
  import {
44
44
  getProjectDir as getProjectDir2,
45
45
  getReadyTasks,
@@ -126,7 +126,7 @@ import {
126
126
  takeZombieDetection,
127
127
  transcriptActivityAgeSeconds,
128
128
  writeEgressAllowlist
129
- } from "../chunk-5LUVY4P6.js";
129
+ } from "../chunk-KMJHNKPQ.js";
130
130
  import {
131
131
  reapOrphanChannelMcps
132
132
  } from "../chunk-XWVM4KPK.js";
@@ -4504,17 +4504,28 @@ function resolveRequesterDmTarget(requester) {
4504
4504
  }
4505
4505
  function buildWaitingHumanNotification(args) {
4506
4506
  const esc = (s) => args.medium === "slack" ? s.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;") : s;
4507
- const lines = [`\u{1F514} ${esc(args.displayName)} needs your input on "${esc(args.title)}".`];
4507
+ const header = `\u{1F514} ${esc(args.displayName)} needs your input on "${esc(args.title)}".`;
4508
4508
  const ask = args.waitingOn?.trim();
4509
- if (ask) lines.push(esc(ask));
4509
+ const askLine = ask ? esc(ask) : null;
4510
4510
  const choiceLabels = (args.choices ?? []).map((c) => c.label?.trim()).filter((l) => !!l).map(esc);
4511
- if (choiceLabels.length > 0) lines.push(`Options: ${choiceLabels.join(" \xB7 ")}`);
4511
+ const optionsLine = choiceLabels.length > 0 ? `Options: ${choiceLabels.join(" \xB7 ")}` : null;
4512
+ let linkLine = null;
4512
4513
  if (args.consoleUrl) {
4513
4514
  const base = args.consoleUrl.replace(/\/+$/, "");
4514
4515
  const url = `${base}/agents/${encodeURIComponent(args.agentId)}?item=${encodeURIComponent(args.itemId)}`;
4515
- lines.push(args.medium === "slack" ? `<${url}|Respond>` : `Respond: ${url}`);
4516
+ linkLine = args.medium === "slack" ? `<${url}|Respond>` : `Respond: ${url}`;
4516
4517
  }
4517
- return lines.join("\n");
4518
+ const MAX = args.medium === "telegram" ? 4096 : 39e3;
4519
+ const fixed = [header, askLine, optionsLine, linkLine].filter((l) => l !== null);
4520
+ const rawDetails = args.details?.trim() ? esc(args.details.trim()) : null;
4521
+ let detailsLine = null;
4522
+ if (rawDetails) {
4523
+ const budget = MAX - fixed.reduce((n, l) => n + l.length, 0) - fixed.length - 1;
4524
+ if (budget > 0) {
4525
+ detailsLine = rawDetails.length <= budget ? rawDetails : `${rawDetails.slice(0, budget)}\u2026`;
4526
+ }
4527
+ }
4528
+ return [header, askLine, detailsLine, optionsLine, linkLine].filter((l) => l !== null).join("\n");
4518
4529
  }
4519
4530
  async function sendTaskNotification(agentCodeName, channel, to, text) {
4520
4531
  const tokens = agentChannelTokens.get(agentCodeName);
@@ -6947,7 +6958,7 @@ var agentRestartTimezoneInputs = /* @__PURE__ */ new Map();
6947
6958
  var lastVersionCheckAt = 0;
6948
6959
  var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
6949
6960
  var lastResponsivenessProbeAt = 0;
6950
- var agtCliVersion = true ? "0.28.298" : "dev";
6961
+ var agtCliVersion = true ? "0.28.299" : "dev";
6951
6962
  function resolveBrewPath(execFileSync2) {
6952
6963
  try {
6953
6964
  const out = execFileSync2("which", ["brew"], { timeout: 5e3 }).toString().trim();
@@ -7802,7 +7813,7 @@ function flushRestartedAgentDiagnostics(hostId, codeNames) {
7802
7813
  if (codeNames.length === 0) return;
7803
7814
  void (async () => {
7804
7815
  try {
7805
- const { collectDiagnostics } = await import("../persistent-session-ZQUFIWLK.js");
7816
+ const { collectDiagnostics } = await import("../persistent-session-RSM62IW7.js");
7806
7817
  await api.post("/host/heartbeat", {
7807
7818
  host_id: hostId,
7808
7819
  agent_diagnostics: collectDiagnostics(codeNames)
@@ -7900,7 +7911,7 @@ async function pollCycle() {
7900
7911
  }
7901
7912
  try {
7902
7913
  const { detectHostSecurity } = await import("../host-security-6PDFG7F5.js");
7903
- const { collectDiagnostics } = await import("../persistent-session-ZQUFIWLK.js");
7914
+ const { collectDiagnostics } = await import("../persistent-session-RSM62IW7.js");
7904
7915
  const diagCodeNames = [...agentState.persistentSessionAgents];
7905
7916
  const agentDiagnostics = diagCodeNames.length > 0 ? collectDiagnostics(diagCodeNames) : void 0;
7906
7917
  let tailscaleHostname;
@@ -8048,7 +8059,7 @@ async function pollCycle() {
8048
8059
  const {
8049
8060
  collectResponsivenessProbes,
8050
8061
  getResponsivenessIntervalMs
8051
- } = await import("../responsiveness-probe-BFB2G333.js");
8062
+ } = await import("../responsiveness-probe-DAKU7GSN.js");
8052
8063
  const probeIntervalMs = getResponsivenessIntervalMs();
8053
8064
  if (now - lastResponsivenessProbeAt > probeIntervalMs) {
8054
8065
  const probeCodeNames = [...agentState.persistentSessionAgents];
@@ -8080,7 +8091,7 @@ async function pollCycle() {
8080
8091
  collectResponsivenessProbes,
8081
8092
  livePendingInboundOldestAgeSeconds,
8082
8093
  parkPendingInbound
8083
- } = await import("../responsiveness-probe-BFB2G333.js");
8094
+ } = await import("../responsiveness-probe-DAKU7GSN.js");
8084
8095
  const { getProjectDir: wedgeProjectDir } = await import("../claude-scheduler-FATCLHDM.js");
8085
8096
  const wedgeNow = /* @__PURE__ */ new Date();
8086
8097
  const liveAgents = agentState.persistentSessionAgents;
@@ -10358,6 +10369,7 @@ async function processAgent(agent, agentStates) {
10358
10369
  itemId: item.id,
10359
10370
  title: item.title,
10360
10371
  waitingOn: item.waiting_on,
10372
+ details: item.waiting_context?.details,
10361
10373
  choices: item.waiting_context?.choices,
10362
10374
  medium: target.channel,
10363
10375
  consoleUrl
@@ -11051,7 +11063,7 @@ async function handleRestartDoorbell(agentId, requestedAt, restartReason) {
11051
11063
  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}`));
11052
11064
  void (async () => {
11053
11065
  try {
11054
- const { collectDiagnostics } = await import("../persistent-session-ZQUFIWLK.js");
11066
+ const { collectDiagnostics } = await import("../persistent-session-RSM62IW7.js");
11055
11067
  await api.post("/host/heartbeat", {
11056
11068
  host_id: hostId,
11057
11069
  agent_diagnostics: collectDiagnostics([codeName])
@@ -11101,7 +11113,7 @@ async function respawnAgentAfterMcpStop(codeName, reason) {
11101
11113
  }
11102
11114
  try {
11103
11115
  const hostId = await getHostId();
11104
- const { collectDiagnostics } = await import("../persistent-session-ZQUFIWLK.js");
11116
+ const { collectDiagnostics } = await import("../persistent-session-RSM62IW7.js");
11105
11117
  await api.post("/host/heartbeat", {
11106
11118
  host_id: hostId,
11107
11119
  agent_diagnostics: collectDiagnostics([codeName])
@@ -11506,7 +11518,7 @@ async function processClaudePairSessions(agents) {
11506
11518
  killPairSession,
11507
11519
  pairTmuxSession,
11508
11520
  finalizeClaudePairOnboarding
11509
- } = await import("../claude-pair-runtime-UTQO3G5A.js");
11521
+ } = await import("../claude-pair-runtime-ZJZ3XYH4.js");
11510
11522
  for (const pairId of pendingResp.cancelled_pair_ids ?? []) {
11511
11523
  log(`[claude-pair] sweeping orphan tmux session for pair ${pairId.slice(0, 8)}`);
11512
11524
  const killed = await killPairSession(pairTmuxSession(pairId));