@integrity-labs/agt-cli 0.28.820 → 0.28.822

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 CHANGED
@@ -40,12 +40,12 @@ import {
40
40
  success,
41
41
  table,
42
42
  warn
43
- } from "../chunk-DMEASYB4.js";
43
+ } from "../chunk-IVR3UH5Z.js";
44
44
  import {
45
45
  getProjectDir,
46
46
  isSessionResumeDisabled,
47
47
  readDirectChatSessionState
48
- } from "../chunk-ZDV575SW.js";
48
+ } from "../chunk-KHCJT45W.js";
49
49
  import {
50
50
  AnchorSessionClient,
51
51
  CHANNEL_REGISTRY,
@@ -79,7 +79,7 @@ import {
79
79
  serializeManifestForSlackCli,
80
80
  sessionFileExists,
81
81
  sessionTranscriptDir
82
- } from "../chunk-NVUWRJWX.js";
82
+ } from "../chunk-5RMHCQ3H.js";
83
83
  import "../chunk-XWVM4KPK.js";
84
84
 
85
85
  // src/bin/agt.ts
@@ -5467,7 +5467,7 @@ import { execFileSync, execSync } from "child_process";
5467
5467
  import { existsSync as existsSync11, realpathSync as realpathSync2 } from "fs";
5468
5468
  import chalk18 from "chalk";
5469
5469
  import ora16 from "ora";
5470
- var cliVersion = true ? "0.28.820" : "dev";
5470
+ var cliVersion = true ? "0.28.822" : "dev";
5471
5471
  async function fetchLatestVersion() {
5472
5472
  const host2 = getHost();
5473
5473
  if (!host2) return null;
@@ -6658,7 +6658,7 @@ function handleError(err) {
6658
6658
  }
6659
6659
 
6660
6660
  // src/bin/agt.ts
6661
- var cliVersion2 = true ? "0.28.820" : "dev";
6661
+ var cliVersion2 = true ? "0.28.822" : "dev";
6662
6662
  var program = new Command();
6663
6663
  program.name("agt").description("Augmented CLI \u2014 agent provisioning and management").version(cliVersion2).option("--json", "Emit machine-readable JSON output (suppress spinners and colors)").option("--skip-update-check", "Skip the automatic update check on startup");
6664
6664
  program.hook("preAction", async (thisCommand, actionCommand) => {
@@ -13803,4 +13803,4 @@ export {
13803
13803
  peekCurrentSession,
13804
13804
  readDailySessionPin
13805
13805
  };
13806
- //# sourceMappingURL=chunk-NVUWRJWX.js.map
13806
+ //# sourceMappingURL=chunk-5RMHCQ3H.js.map
@@ -16,7 +16,7 @@ import {
16
16
  parseEnvIntegrations,
17
17
  shellQuote,
18
18
  summarizeUnanswerablePane
19
- } from "./chunk-ZDV575SW.js";
19
+ } from "./chunk-KHCJT45W.js";
20
20
  import {
21
21
  BIND_FAILURE_QUARANTINE_THRESHOLD,
22
22
  INTEGRATIONS_SECTION_END,
@@ -71,7 +71,7 @@ import {
71
71
  sessionTranscriptDir,
72
72
  worseConnectivityOutcome,
73
73
  wrapScheduledTaskPrompt
74
- } from "./chunk-NVUWRJWX.js";
74
+ } from "./chunk-5RMHCQ3H.js";
75
75
  import {
76
76
  parsePsRows
77
77
  } from "./chunk-XWVM4KPK.js";
@@ -6523,7 +6523,7 @@ function exchangeFailureKind(err) {
6523
6523
  }
6524
6524
 
6525
6525
  // src/lib/api-client.ts
6526
- var agtCliVersion = true ? "0.28.820" : "dev";
6526
+ var agtCliVersion = true ? "0.28.822" : "dev";
6527
6527
  var lastConfigHash = null;
6528
6528
  function setConfigHash(hash) {
6529
6529
  lastConfigHash = hash && hash.length > 0 ? hash : null;
@@ -10818,4 +10818,4 @@ export {
10818
10818
  managerInstallSystemUnitCommand,
10819
10819
  managerUninstallSystemUnitCommand
10820
10820
  };
10821
- //# sourceMappingURL=chunk-DMEASYB4.js.map
10821
+ //# sourceMappingURL=chunk-IVR3UH5Z.js.map
@@ -18,7 +18,7 @@ import {
18
18
  rotateDailySession,
19
19
  sessionFileExists,
20
20
  todayLocalIso
21
- } from "./chunk-NVUWRJWX.js";
21
+ } from "./chunk-5RMHCQ3H.js";
22
22
  import {
23
23
  reapOrphanChannelMcps
24
24
  } from "./chunk-XWVM4KPK.js";
@@ -5312,4 +5312,4 @@ export {
5312
5312
  stopAllSessionsAndWait,
5313
5313
  getProjectDir
5314
5314
  };
5315
- //# sourceMappingURL=chunk-ZDV575SW.js.map
5315
+ //# sourceMappingURL=chunk-KHCJT45W.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-AGMIVLTP.js");
103
+ const { resolveClaudeBinary } = await import("./persistent-session-MC3GPRAN.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-HVO7IOCM.js.map
376
+ //# sourceMappingURL=claude-pair-runtime-CMLVI5AF.js.map
@@ -58,7 +58,7 @@ import {
58
58
  safeWriteJsonAtomic,
59
59
  setConfigHash,
60
60
  tripClass
61
- } from "../chunk-DMEASYB4.js";
61
+ } from "../chunk-IVR3UH5Z.js";
62
62
  import {
63
63
  getProjectDir as getProjectDir2,
64
64
  getReadyTasks,
@@ -123,7 +123,7 @@ import {
123
123
  takeZombieDetection,
124
124
  toOpencodeModel,
125
125
  writeEgressAllowlist
126
- } from "../chunk-ZDV575SW.js";
126
+ } from "../chunk-KHCJT45W.js";
127
127
  import {
128
128
  ACCOUNT_ENFORCEMENT_MARKER_FILENAME,
129
129
  AnchorSessionClient,
@@ -215,7 +215,7 @@ import {
215
215
  subagentActivityAgeSeconds,
216
216
  sumTranscriptUsageInWindow,
217
217
  transcriptActivityAgeSeconds
218
- } from "../chunk-NVUWRJWX.js";
218
+ } from "../chunk-5RMHCQ3H.js";
219
219
  import {
220
220
  reapOrphanChannelMcps
221
221
  } from "../chunk-XWVM4KPK.js";
@@ -12918,7 +12918,7 @@ var pendingDayRolloverReset = /* @__PURE__ */ new Set();
12918
12918
  var dayRolloverInboundHold = /* @__PURE__ */ new Map();
12919
12919
  var INBOUND_HOLD_EPISODE_GAP_MS = 12e4;
12920
12920
  async function channelInboundActivityAgeSecondsFor(codeName) {
12921
- const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-URK6CHNZ.js");
12921
+ const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-ZJI5CCXE.js");
12922
12922
  const newest = newestPendingInboundActivityMtimeMs(dirname10(paneLogPath(codeName)));
12923
12923
  if (newest === null) return null;
12924
12924
  return Math.max(0, Math.floor((Date.now() - newest) / 1e3));
@@ -13586,7 +13586,7 @@ var agentRestartTimezoneInputs = /* @__PURE__ */ new Map();
13586
13586
  var lastVersionCheckAt = 0;
13587
13587
  var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
13588
13588
  var lastResponsivenessProbeAt = 0;
13589
- var agtCliVersion = true ? "0.28.820" : "dev";
13589
+ var agtCliVersion = true ? "0.28.822" : "dev";
13590
13590
  function resolveBrewPath(execFileSync2) {
13591
13591
  try {
13592
13592
  const out = execFileSync2("which", ["brew"], { timeout: 5e3 }).toString().trim();
@@ -15151,7 +15151,7 @@ function flushRestartedAgentDiagnostics(hostId, codeNames) {
15151
15151
  if (codeNames.length === 0) return;
15152
15152
  void (async () => {
15153
15153
  try {
15154
- const { collectDiagnostics } = await import("../persistent-session-AGMIVLTP.js");
15154
+ const { collectDiagnostics } = await import("../persistent-session-MC3GPRAN.js");
15155
15155
  await api.post("/host/heartbeat", {
15156
15156
  host_id: hostId,
15157
15157
  agent_diagnostics: collectDiagnostics(codeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor)
@@ -15292,7 +15292,7 @@ async function pollCycleInner() {
15292
15292
  }
15293
15293
  try {
15294
15294
  const { detectHostSecurity } = await import("../host-security-6PDFG7F5.js");
15295
- const { collectDiagnostics } = await import("../persistent-session-AGMIVLTP.js");
15295
+ const { collectDiagnostics } = await import("../persistent-session-MC3GPRAN.js");
15296
15296
  const diagCodeNames = [...agentState.persistentSessionAgents];
15297
15297
  const agentDiagnostics = diagCodeNames.length > 0 ? collectDiagnostics(diagCodeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor) : void 0;
15298
15298
  let tailscaleHostname;
@@ -15461,7 +15461,7 @@ async function pollCycleInner() {
15461
15461
  collectPanelessActivityProbes,
15462
15462
  getResponsivenessIntervalMs,
15463
15463
  occupancyQualificationClassifications
15464
- } = await import("../responsiveness-probe-URK6CHNZ.js");
15464
+ } = await import("../responsiveness-probe-ZJI5CCXE.js");
15465
15465
  const probeIntervalMs = getResponsivenessIntervalMs();
15466
15466
  if (now - lastResponsivenessProbeAt > probeIntervalMs) {
15467
15467
  const probeCodeNames = [...agentState.persistentSessionAgents];
@@ -15578,7 +15578,7 @@ async function pollCycleInner() {
15578
15578
  collectResponsivenessProbes,
15579
15579
  livePendingInboundOldestAgeSeconds,
15580
15580
  parkPendingInbound
15581
- } = await import("../responsiveness-probe-URK6CHNZ.js");
15581
+ } = await import("../responsiveness-probe-ZJI5CCXE.js");
15582
15582
  const { getProjectDir: wedgeProjectDir } = await import("../scheduler-engine-NDP36U7O.js");
15583
15583
  const wedgeNow = /* @__PURE__ */ new Date();
15584
15584
  const liveAgents = agentState.persistentSessionAgents;
@@ -15734,7 +15734,7 @@ async function pollCycleInner() {
15734
15734
  }
15735
15735
  try {
15736
15736
  const { scrapeMcpFailedBannerCount } = await import("../pane-mcp-banner-scraper-JA437JIB.js");
15737
- const { probeSessionAuth } = await import("../session-auth-dead-5FPVU375.js");
15737
+ const { probeSessionAuth } = await import("../session-auth-dead-J74JLVBX.js");
15738
15738
  const observations = [];
15739
15739
  const pendingCacheCommits = [];
15740
15740
  const modelApiErrorReportingOn = hostFlagStore().getBoolean("model-api-error-reporting");
@@ -19934,7 +19934,7 @@ async function handleRestartDoorbell(agentId, requestedAt, restartReason) {
19934
19934
  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}`));
19935
19935
  void (async () => {
19936
19936
  try {
19937
- const { collectDiagnostics } = await import("../persistent-session-AGMIVLTP.js");
19937
+ const { collectDiagnostics } = await import("../persistent-session-MC3GPRAN.js");
19938
19938
  await api.post("/host/heartbeat", {
19939
19939
  host_id: hostId,
19940
19940
  agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor)
@@ -19980,7 +19980,7 @@ async function respawnAgentAfterMcpStop(codeName, reason) {
19980
19980
  }
19981
19981
  try {
19982
19982
  const hostId = await getHostId();
19983
- const { collectDiagnostics } = await import("../persistent-session-AGMIVLTP.js");
19983
+ const { collectDiagnostics } = await import("../persistent-session-MC3GPRAN.js");
19984
19984
  await api.post("/host/heartbeat", {
19985
19985
  host_id: hostId,
19986
19986
  agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor)
@@ -20616,7 +20616,7 @@ async function processClaudePairSessions(agents) {
20616
20616
  killPairSession,
20617
20617
  pairTmuxSession,
20618
20618
  finalizeClaudePairOnboarding
20619
- } = await import("../claude-pair-runtime-HVO7IOCM.js");
20619
+ } = await import("../claude-pair-runtime-CMLVI5AF.js");
20620
20620
  for (const pairId of pendingResp.cancelled_pair_ids ?? []) {
20621
20621
  log(`[claude-pair] sweeping orphan tmux session for pair ${pairId.slice(0, 8)}`);
20622
20622
  const killed = await killPairSession(pairTmuxSession(pairId));
@@ -30261,8 +30261,16 @@ var UNDELIVERABLE_NOTICE_THROTTLE_MS = 5 * 60 * 1e3;
30261
30261
  function shouldPostUndeliverableNotice(lastNoticeAtMs, nowMs, throttleMs = UNDELIVERABLE_NOTICE_THROTTLE_MS) {
30262
30262
  return lastNoticeAtMs == null || nowMs - lastNoticeAtMs >= throttleMs;
30263
30263
  }
30264
- function undeliverableNoticeText(replayEnabled = channelReplayEnabled()) {
30265
- return replayEnabled ? "\u23F3 I can't get to this right now \u2014 no need to resend; I'll pick it up automatically as soon as I'm free." : "\u23F3 I can't get to this right now. Please resend in a few minutes \u2014 I may not see this one.";
30264
+ function undeliverableNoticeText(replay = channelReplayEnabled()) {
30265
+ return noticePromiseIsHonest(replay) ? "\u23F3 I can't get to this right now \u2014 no need to resend; I'll pick it up automatically as soon as I'm free." : "\u23F3 I can't get to this right now. Please resend in a few minutes \u2014 I may not see this one.";
30266
+ }
30267
+ function noticePromiseIsHonest(replay) {
30268
+ if (typeof replay === "boolean") return replay;
30269
+ return markerReplayable({
30270
+ enabled: replay.enabled ?? channelReplayEnabled(),
30271
+ hasPayload: replay.hasPayload,
30272
+ discretionary: replay.discretionary
30273
+ });
30266
30274
  }
30267
30275
  var BUSY_ACK_THRESHOLD_MS = 12e4;
30268
30276
  var BUSY_ACK_NOTICE_THROTTLE_MS = 20 * 60 * 1e3;
@@ -30347,6 +30355,12 @@ function channelReplayEnabled() {
30347
30355
  defaultValue: true
30348
30356
  });
30349
30357
  }
30358
+ function markerReplayable(i) {
30359
+ if (!i.enabled) return false;
30360
+ if (!i.hasPayload) return false;
30361
+ if (i.discretionary) return false;
30362
+ return true;
30363
+ }
30350
30364
  function isMarkerGenuinelyAged(receivedAt, nowMs, thresholdMs) {
30351
30365
  const t = Date.parse(receivedAt ?? "");
30352
30366
  return Number.isFinite(t) && t <= nowMs && nowMs - t >= thresholdMs;
@@ -38359,8 +38359,16 @@ function undeliverableNoticeEligible(shouldEngage) {
38359
38359
  function shouldPostUndeliverableNotice(lastNoticeAtMs, nowMs, throttleMs = UNDELIVERABLE_NOTICE_THROTTLE_MS) {
38360
38360
  return lastNoticeAtMs == null || nowMs - lastNoticeAtMs >= throttleMs;
38361
38361
  }
38362
- function undeliverableNoticeText(replayEnabled = channelReplayEnabled()) {
38363
- return replayEnabled ? "\u23F3 I can't get to this right now \u2014 no need to resend; I'll pick it up automatically as soon as I'm free." : "\u23F3 I can't get to this right now. Please resend in a few minutes \u2014 I may not see this one.";
38362
+ function undeliverableNoticeText(replay = channelReplayEnabled()) {
38363
+ return noticePromiseIsHonest(replay) ? "\u23F3 I can't get to this right now \u2014 no need to resend; I'll pick it up automatically as soon as I'm free." : "\u23F3 I can't get to this right now. Please resend in a few minutes \u2014 I may not see this one.";
38364
+ }
38365
+ function noticePromiseIsHonest(replay) {
38366
+ if (typeof replay === "boolean") return replay;
38367
+ return markerReplayable({
38368
+ enabled: replay.enabled ?? channelReplayEnabled(),
38369
+ hasPayload: replay.hasPayload,
38370
+ discretionary: replay.discretionary
38371
+ });
38364
38372
  }
38365
38373
  var UNDELIVERABLE_NOTICE_DEBOUNCE_MS = 3e4;
38366
38374
  function undeliverableNoticeDebounceMs() {
@@ -38643,10 +38651,14 @@ function channelReplayEnabled() {
38643
38651
  defaultValue: true
38644
38652
  });
38645
38653
  }
38646
- function shouldReplayMarker(i) {
38654
+ function markerReplayable(i) {
38647
38655
  if (!i.enabled) return false;
38648
38656
  if (!i.hasPayload) return false;
38649
38657
  if (i.discretionary) return false;
38658
+ return true;
38659
+ }
38660
+ function shouldReplayMarker(i) {
38661
+ if (!markerReplayable(i)) return false;
38650
38662
  if (!i.sessionAlive) return false;
38651
38663
  const paneFreshDeferMax = i.paneFreshDeferMaxMs ?? paneFreshDeferMaxMs();
38652
38664
  const minAge = i.minAgeMs ?? Math.min(REPLY_WEDGED_THRESHOLD_MS, Math.floor(paneFreshDeferMax / 2));
@@ -41097,8 +41097,16 @@ var UNDELIVERABLE_NOTICE_THROTTLE_MS = 5 * 60 * 1e3;
41097
41097
  function shouldPostUndeliverableNotice(lastNoticeAtMs, nowMs, throttleMs = UNDELIVERABLE_NOTICE_THROTTLE_MS) {
41098
41098
  return lastNoticeAtMs == null || nowMs - lastNoticeAtMs >= throttleMs;
41099
41099
  }
41100
- function undeliverableNoticeText(replayEnabled = channelReplayEnabled()) {
41101
- return replayEnabled ? "\u23F3 I can't get to this right now \u2014 no need to resend; I'll pick it up automatically as soon as I'm free." : "\u23F3 I can't get to this right now. Please resend in a few minutes \u2014 I may not see this one.";
41100
+ function undeliverableNoticeText(replay = channelReplayEnabled()) {
41101
+ return noticePromiseIsHonest(replay) ? "\u23F3 I can't get to this right now \u2014 no need to resend; I'll pick it up automatically as soon as I'm free." : "\u23F3 I can't get to this right now. Please resend in a few minutes \u2014 I may not see this one.";
41102
+ }
41103
+ function noticePromiseIsHonest(replay) {
41104
+ if (typeof replay === "boolean") return replay;
41105
+ return markerReplayable({
41106
+ enabled: replay.enabled ?? channelReplayEnabled(),
41107
+ hasPayload: replay.hasPayload,
41108
+ discretionary: replay.discretionary
41109
+ });
41102
41110
  }
41103
41111
  var UNDELIVERABLE_NOTICE_DEBOUNCE_MS = 3e4;
41104
41112
  function undeliverableNoticeDebounceMs() {
@@ -41374,10 +41382,14 @@ function channelReplayEnabled() {
41374
41382
  defaultValue: true
41375
41383
  });
41376
41384
  }
41377
- function shouldReplayMarker(i) {
41385
+ function markerReplayable(i) {
41378
41386
  if (!i.enabled) return false;
41379
41387
  if (!i.hasPayload) return false;
41380
41388
  if (i.discretionary) return false;
41389
+ return true;
41390
+ }
41391
+ function shouldReplayMarker(i) {
41392
+ if (!markerReplayable(i)) return false;
41381
41393
  if (!i.sessionAlive) return false;
41382
41394
  const paneFreshDeferMax = i.paneFreshDeferMaxMs ?? paneFreshDeferMaxMs();
41383
41395
  const minAge = i.minAgeMs ?? Math.min(REPLY_WEDGED_THRESHOLD_MS, Math.floor(paneFreshDeferMax / 2));
@@ -49,8 +49,8 @@ import {
49
49
  writeDirectChatSessionState,
50
50
  writeEgressAllowlist,
51
51
  writePersistentClaudeWrapper
52
- } from "./chunk-ZDV575SW.js";
53
- import "./chunk-NVUWRJWX.js";
52
+ } from "./chunk-KHCJT45W.js";
53
+ import "./chunk-5RMHCQ3H.js";
54
54
  import "./chunk-XWVM4KPK.js";
55
55
  export {
56
56
  EGRESS_BASELINE_DOMAINS,
@@ -104,4 +104,4 @@ export {
104
104
  writeEgressAllowlist,
105
105
  writePersistentClaudeWrapper
106
106
  };
107
- //# sourceMappingURL=persistent-session-AGMIVLTP.js.map
107
+ //# sourceMappingURL=persistent-session-MC3GPRAN.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  paneLogPath
3
- } from "./chunk-ZDV575SW.js";
4
- import "./chunk-NVUWRJWX.js";
3
+ } from "./chunk-KHCJT45W.js";
4
+ import "./chunk-5RMHCQ3H.js";
5
5
  import "./chunk-XWVM4KPK.js";
6
6
 
7
7
  // src/lib/responsiveness-probe.ts
@@ -745,4 +745,4 @@ export {
745
745
  readAndResetSlackReplyBindingClassifications,
746
746
  readAndResetSlackReplyTargetClassifications
747
747
  };
748
- //# sourceMappingURL=responsiveness-probe-URK6CHNZ.js.map
748
+ //# sourceMappingURL=responsiveness-probe-ZJI5CCXE.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  sessionTranscriptDir
3
- } from "./chunk-NVUWRJWX.js";
3
+ } from "./chunk-5RMHCQ3H.js";
4
4
 
5
5
  // src/lib/session-auth-dead.ts
6
6
  import { closeSync, openSync, readSync, readdirSync, statSync } from "fs";
@@ -203,4 +203,4 @@ export {
203
203
  decideSessionAuthState,
204
204
  probeSessionAuth
205
205
  };
206
- //# sourceMappingURL=session-auth-dead-5FPVU375.js.map
206
+ //# sourceMappingURL=session-auth-dead-J74JLVBX.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@integrity-labs/agt-cli",
3
- "version": "0.28.820",
3
+ "version": "0.28.822",
4
4
  "description": "Augmented Team CLI — agent provisioning and management",
5
5
  "type": "module",
6
6
  "engines": {