@integrity-labs/agt-cli 0.28.1141 → 0.28.1143

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.
Files changed (25) hide show
  1. package/dist/bin/agt.js +35 -7
  2. package/dist/bin/agt.js.map +1 -1
  3. package/dist/{chunk-6WHFJSXT.js → chunk-F4NFTLDH.js} +7 -5
  4. package/dist/{chunk-6WHFJSXT.js.map → chunk-F4NFTLDH.js.map} +1 -1
  5. package/dist/{chunk-DYFE224A.js → chunk-JM47BARM.js} +7 -1
  6. package/dist/chunk-JM47BARM.js.map +1 -0
  7. package/dist/{chunk-7U4VSBOE.js → chunk-ZJFS74H5.js} +2 -2
  8. package/dist/{claude-pair-runtime-BOTE3DRW.js → claude-pair-runtime-A3OWKP3K.js} +2 -2
  9. package/dist/lib/manager-worker.js +17 -17
  10. package/dist/lib/manager-worker.js.map +1 -1
  11. package/dist/mcp/direct-chat-channel.js +6 -0
  12. package/dist/mcp/index.js +103 -25
  13. package/dist/mcp/origami.js +6 -0
  14. package/dist/mcp/slack-channel.js +6 -0
  15. package/dist/mcp/telegram-channel.js +6 -0
  16. package/dist/{persistent-session-6O66QEI4.js → persistent-session-VNJDG3VN.js} +3 -3
  17. package/dist/{responsiveness-probe-WGD3NDWG.js → responsiveness-probe-ABQGETFV.js} +3 -3
  18. package/dist/{session-auth-dead-6N2AEFKX.js → session-auth-dead-DVE6OGRT.js} +2 -2
  19. package/package.json +1 -1
  20. package/dist/chunk-DYFE224A.js.map +0 -1
  21. /package/dist/{chunk-7U4VSBOE.js.map → chunk-ZJFS74H5.js.map} +0 -0
  22. /package/dist/{claude-pair-runtime-BOTE3DRW.js.map → claude-pair-runtime-A3OWKP3K.js.map} +0 -0
  23. /package/dist/{persistent-session-6O66QEI4.js.map → persistent-session-VNJDG3VN.js.map} +0 -0
  24. /package/dist/{responsiveness-probe-WGD3NDWG.js.map → responsiveness-probe-ABQGETFV.js.map} +0 -0
  25. /package/dist/{session-auth-dead-6N2AEFKX.js.map → session-auth-dead-DVE6OGRT.js.map} +0 -0
@@ -24,7 +24,7 @@ import {
24
24
  rotateDailySession,
25
25
  sessionFileExists,
26
26
  todayLocalIso
27
- } from "./chunk-DYFE224A.js";
27
+ } from "./chunk-JM47BARM.js";
28
28
  import {
29
29
  classifyUnanswerablePane,
30
30
  findUsageLimitResetHint,
@@ -6114,4 +6114,4 @@ export {
6114
6114
  stopAllSessionsAndWait,
6115
6115
  getProjectDir
6116
6116
  };
6117
- //# sourceMappingURL=chunk-7U4VSBOE.js.map
6117
+ //# sourceMappingURL=chunk-ZJFS74H5.js.map
@@ -269,7 +269,7 @@ async function spawnPairSession(session) {
269
269
  return { ok: true };
270
270
  } catch {
271
271
  }
272
- const { resolveClaudeBinary } = await import("./persistent-session-6O66QEI4.js");
272
+ const { resolveClaudeBinary } = await import("./persistent-session-VNJDG3VN.js");
273
273
  const claudeBin = resolveClaudeBinary();
274
274
  const pairEnv = {
275
275
  ...process.env,
@@ -739,4 +739,4 @@ export {
739
739
  startClaudePair,
740
740
  submitClaudePairCode
741
741
  };
742
- //# sourceMappingURL=claude-pair-runtime-BOTE3DRW.js.map
742
+ //# sourceMappingURL=claude-pair-runtime-A3OWKP3K.js.map
@@ -76,7 +76,7 @@ import {
76
76
  setConfigHash,
77
77
  shellGuard,
78
78
  tripClass
79
- } from "../chunk-6WHFJSXT.js";
79
+ } from "../chunk-F4NFTLDH.js";
80
80
  import {
81
81
  getProjectDir as getProjectDir2,
82
82
  getReadyTasks,
@@ -163,7 +163,7 @@ import {
163
163
  webFetchBaselineValue,
164
164
  webFetchRestartNeeded,
165
165
  writeEgressAllowlist
166
- } from "../chunk-7U4VSBOE.js";
166
+ } from "../chunk-ZJFS74H5.js";
167
167
  import {
168
168
  ACCOUNT_ENFORCEMENT_MARKER_FILENAME,
169
169
  AnchorSessionClient,
@@ -274,7 +274,7 @@ import {
274
274
  subagentActivityAgeSeconds,
275
275
  sumTranscriptUsageInWindow,
276
276
  transcriptActivityAgeSeconds
277
- } from "../chunk-DYFE224A.js";
277
+ } from "../chunk-JM47BARM.js";
278
278
  import {
279
279
  classifyUnanswerablePane,
280
280
  focusedConfirmDialogBlock,
@@ -8494,7 +8494,7 @@ function isKanbanHybridDryRun() {
8494
8494
  }
8495
8495
  var HYBRID_ACTIONABLE_STATUSES = new Set(KANBAN_NUDGE_ACTIONABLE_STATUSES);
8496
8496
  function isHybridActionable(item) {
8497
- return HYBRID_ACTIONABLE_STATUSES.has(item.status) && item.source_type !== "scheduled_task" && item.assignee_type !== "human";
8497
+ return HYBRID_ACTIONABLE_STATUSES.has(item.status) && item.source_type !== "scheduled_task" && item.assignee_type !== "human" && item.owed_reply_on_own_card !== false;
8498
8498
  }
8499
8499
  function resolveHybridNudgeAction(stale, allowedCount, suppressedCount) {
8500
8500
  if (stale) return "skip-stale";
@@ -14728,7 +14728,7 @@ var pendingDayRolloverReset = /* @__PURE__ */ new Set();
14728
14728
  var dayRolloverInboundHold = /* @__PURE__ */ new Map();
14729
14729
  var INBOUND_HOLD_EPISODE_GAP_MS = 12e4;
14730
14730
  async function channelInboundActivityAgeSecondsFor(codeName) {
14731
- const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-WGD3NDWG.js");
14731
+ const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-ABQGETFV.js");
14732
14732
  const newest = newestPendingInboundActivityMtimeMs(dirname11(paneLogPath(codeName)));
14733
14733
  if (newest === null) return null;
14734
14734
  return Math.max(0, Math.floor((Date.now() - newest) / 1e3));
@@ -15486,7 +15486,7 @@ var agentRestartTimezoneInputs = /* @__PURE__ */ new Map();
15486
15486
  var lastVersionCheckAt = 0;
15487
15487
  var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
15488
15488
  var lastResponsivenessProbeAt = 0;
15489
- var agtCliVersion = true ? "0.28.1141" : "dev";
15489
+ var agtCliVersion = true ? "0.28.1143" : "dev";
15490
15490
  function resolveBrewPath(execFileSync3) {
15491
15491
  try {
15492
15492
  const out = execFileSync3("which", ["brew"], { timeout: 5e3 }).toString().trim();
@@ -17206,7 +17206,7 @@ function flushRestartedAgentDiagnostics(hostId, codeNames) {
17206
17206
  if (codeNames.length === 0) return;
17207
17207
  void (async () => {
17208
17208
  try {
17209
- const { collectDiagnostics } = await import("../persistent-session-6O66QEI4.js");
17209
+ const { collectDiagnostics } = await import("../persistent-session-VNJDG3VN.js");
17210
17210
  await api.post("/host/heartbeat", {
17211
17211
  host_id: hostId,
17212
17212
  agent_diagnostics: collectDiagnostics(codeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor, runtimeVersionFor)
@@ -17348,7 +17348,7 @@ async function pollCycleInner() {
17348
17348
  }
17349
17349
  try {
17350
17350
  const { detectHostSecurity } = await import("../host-security-KQYYZZVW.js");
17351
- const { collectDiagnostics } = await import("../persistent-session-6O66QEI4.js");
17351
+ const { collectDiagnostics } = await import("../persistent-session-VNJDG3VN.js");
17352
17352
  const diagCodeNames = [...agentState.persistentSessionAgents];
17353
17353
  const agentDiagnostics = diagCodeNames.length > 0 ? collectDiagnostics(diagCodeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor, runtimeVersionFor) : void 0;
17354
17354
  let tailscaleHostname;
@@ -17569,7 +17569,7 @@ async function pollCycleInner() {
17569
17569
  collectPanelessActivityProbes,
17570
17570
  getResponsivenessIntervalMs,
17571
17571
  occupancyQualificationClassifications
17572
- } = await import("../responsiveness-probe-WGD3NDWG.js");
17572
+ } = await import("../responsiveness-probe-ABQGETFV.js");
17573
17573
  const probeIntervalMs = getResponsivenessIntervalMs();
17574
17574
  if (now - lastResponsivenessProbeAt > probeIntervalMs) {
17575
17575
  const probeCodeNames = [...agentState.persistentSessionAgents];
@@ -17686,7 +17686,7 @@ async function pollCycleInner() {
17686
17686
  collectResponsivenessProbes,
17687
17687
  livePendingInboundOldestAgeSeconds,
17688
17688
  parkPendingInbound
17689
- } = await import("../responsiveness-probe-WGD3NDWG.js");
17689
+ } = await import("../responsiveness-probe-ABQGETFV.js");
17690
17690
  const { getProjectDir: wedgeProjectDir } = await import("../scheduler-engine-M6AFZWNU.js");
17691
17691
  const wedgeNow = /* @__PURE__ */ new Date();
17692
17692
  const liveAgents = agentState.persistentSessionAgents;
@@ -17972,7 +17972,7 @@ async function pollCycleInner() {
17972
17972
  }
17973
17973
  }
17974
17974
  );
17975
- const { parkPendingInbound } = await import("../responsiveness-probe-WGD3NDWG.js");
17975
+ const { parkPendingInbound } = await import("../responsiveness-probe-ABQGETFV.js");
17976
17976
  const { parked, deadLettered } = parkPendingInbound(codeName, new Date(fatalNowMs));
17977
17977
  paneFatalStreak.delete(codeName);
17978
17978
  paneFatalRestarts.set(codeName, [...history, fatalNowMs]);
@@ -18003,7 +18003,7 @@ async function pollCycleInner() {
18003
18003
  TRANSCRIPT_MOUNT_ESCALATION_REFRESH_MS,
18004
18004
  bindSourceEscalations
18005
18005
  } = await import("../transcript-mount-health-OHE6IVJV.js");
18006
- const { transcriptBindSourcesFor, ensureTranscriptBindSources } = await import("../persistent-session-6O66QEI4.js");
18006
+ const { transcriptBindSourcesFor, ensureTranscriptBindSources } = await import("../persistent-session-VNJDG3VN.js");
18007
18007
  const mountConfig = resolveTranscriptMountConfig();
18008
18008
  const liveAgents = agentState.persistentSessionAgents;
18009
18009
  for (const tracked of [
@@ -18168,7 +18168,7 @@ async function pollCycleInner() {
18168
18168
  }
18169
18169
  try {
18170
18170
  const { scrapeMcpFailedBannerCount } = await import("../pane-mcp-banner-scraper-VR5QGP3J.js");
18171
- const { probeSessionAuth } = await import("../session-auth-dead-6N2AEFKX.js");
18171
+ const { probeSessionAuth } = await import("../session-auth-dead-DVE6OGRT.js");
18172
18172
  const observations = [];
18173
18173
  const pendingCacheCommits = [];
18174
18174
  const modelApiErrorReportingOn = hostFlagStore().getBoolean("model-api-error-reporting");
@@ -22766,7 +22766,7 @@ async function handleRestartDoorbell(agentId, requestedAt, restartReason) {
22766
22766
  try {
22767
22767
  const freshId = rotateSessionForWedge(codeName);
22768
22768
  consecutiveWedgeCycles.delete(codeName);
22769
- const { parkPendingInbound: parkForRestart } = await import("../responsiveness-probe-WGD3NDWG.js");
22769
+ const { parkPendingInbound: parkForRestart } = await import("../responsiveness-probe-ABQGETFV.js");
22770
22770
  const { parked, deadLettered } = parkForRestart(codeName, /* @__PURE__ */ new Date());
22771
22771
  const parkNote = parked > 0 ? `, ${parked} inbound parked` : "";
22772
22772
  const deadNote = deadLettered > 0 ? `, ${deadLettered} undeliverable dead-lettered` : "";
@@ -22809,7 +22809,7 @@ async function handleRestartDoorbell(agentId, requestedAt, restartReason) {
22809
22809
  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}`));
22810
22810
  void (async () => {
22811
22811
  try {
22812
- const { collectDiagnostics } = await import("../persistent-session-6O66QEI4.js");
22812
+ const { collectDiagnostics } = await import("../persistent-session-VNJDG3VN.js");
22813
22813
  await api.post("/host/heartbeat", {
22814
22814
  host_id: hostId,
22815
22815
  agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor, runtimeVersionFor)
@@ -22860,7 +22860,7 @@ async function respawnAgentAfterMcpStop(codeName, reason) {
22860
22860
  }
22861
22861
  try {
22862
22862
  const hostId = await getHostId();
22863
- const { collectDiagnostics } = await import("../persistent-session-6O66QEI4.js");
22863
+ const { collectDiagnostics } = await import("../persistent-session-VNJDG3VN.js");
22864
22864
  await api.post("/host/heartbeat", {
22865
22865
  host_id: hostId,
22866
22866
  agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor, runtimeVersionFor)
@@ -23533,7 +23533,7 @@ async function processClaudePairSessions(agents) {
23533
23533
  // cannot take it for itself — by the time it runs, the write it is looking
23534
23534
  // for may already have happened.
23535
23535
  snapshotPairConfig
23536
- } = await import("../claude-pair-runtime-BOTE3DRW.js");
23536
+ } = await import("../claude-pair-runtime-A3OWKP3K.js");
23537
23537
  for (const pairId of pendingResp.cancelled_pair_ids ?? []) {
23538
23538
  log(`[claude-pair] sweeping orphan tmux session for pair ${pairId.slice(0, 8)}`);
23539
23539
  const killed = await killPairSession(pairTmuxSession(pairId));