@integrity-labs/agt-cli 0.28.56 → 0.28.57

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.
@@ -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-T6VRODM5.js");
103
+ const { resolveClaudeBinary } = await import("./persistent-session-INTCKEG6.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-LDE4CJO5.js.map
376
+ //# sourceMappingURL=claude-pair-runtime-RAAIXOKO.js.map
@@ -27,7 +27,7 @@ import {
27
27
  requireHost,
28
28
  safeWriteJsonAtomic,
29
29
  setConfigHash
30
- } from "../chunk-OLP3LORD.js";
30
+ } from "../chunk-F45T5XPH.js";
31
31
  import {
32
32
  getProjectDir as getProjectDir2,
33
33
  getReadyTasks,
@@ -65,7 +65,7 @@ import {
65
65
  takeWatchdogGiveUpCount,
66
66
  takeZombieDetection,
67
67
  transcriptActivityAgeSeconds
68
- } from "../chunk-ATK3HBK6.js";
68
+ } from "../chunk-MKKTPM6J.js";
69
69
  import {
70
70
  FLAGS_SCHEMA_VERSION,
71
71
  FLAG_REGISTRY,
@@ -96,7 +96,7 @@ import {
96
96
  resolveDmTarget,
97
97
  sumTranscriptUsageInWindow,
98
98
  wrapScheduledTaskPrompt
99
- } from "../chunk-TMTSBVPP.js";
99
+ } from "../chunk-SJRG5VUF.js";
100
100
  import {
101
101
  parsePsRows,
102
102
  reapOrphanChannelMcps
@@ -6680,7 +6680,7 @@ var cachedMaintenanceWindow = null;
6680
6680
  var lastVersionCheckAt = 0;
6681
6681
  var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
6682
6682
  var lastResponsivenessProbeAt = 0;
6683
- var agtCliVersion = true ? "0.28.56" : "dev";
6683
+ var agtCliVersion = true ? "0.28.57" : "dev";
6684
6684
  function resolveBrewPath(execFileSync4) {
6685
6685
  try {
6686
6686
  const out = execFileSync4("which", ["brew"], { timeout: 5e3 }).toString().trim();
@@ -7788,7 +7788,7 @@ async function pollCycle() {
7788
7788
  }
7789
7789
  try {
7790
7790
  const { detectHostSecurity } = await import("../host-security-6PDFG7F5.js");
7791
- const { collectDiagnostics } = await import("../persistent-session-T6VRODM5.js");
7791
+ const { collectDiagnostics } = await import("../persistent-session-INTCKEG6.js");
7792
7792
  const diagCodeNames = [...agentState.persistentSessionAgents];
7793
7793
  const agentDiagnostics = diagCodeNames.length > 0 ? collectDiagnostics(diagCodeNames) : void 0;
7794
7794
  let tailscaleHostname;
@@ -7889,7 +7889,7 @@ async function pollCycle() {
7889
7889
  const {
7890
7890
  collectResponsivenessProbes,
7891
7891
  getResponsivenessIntervalMs
7892
- } = await import("../responsiveness-probe-NI26NQJO.js");
7892
+ } = await import("../responsiveness-probe-XAYQAVLV.js");
7893
7893
  const probeIntervalMs = getResponsivenessIntervalMs();
7894
7894
  if (now - lastResponsivenessProbeAt > probeIntervalMs) {
7895
7895
  const probeCodeNames = [...agentState.persistentSessionAgents];
@@ -7921,7 +7921,7 @@ async function pollCycle() {
7921
7921
  collectResponsivenessProbes,
7922
7922
  livePendingInboundOldestAgeSeconds,
7923
7923
  parkPendingInbound
7924
- } = await import("../responsiveness-probe-NI26NQJO.js");
7924
+ } = await import("../responsiveness-probe-XAYQAVLV.js");
7925
7925
  const { getProjectDir: wedgeProjectDir } = await import("../claude-scheduler-FATCLHDM.js");
7926
7926
  const wedgeNow = /* @__PURE__ */ new Date();
7927
7927
  const liveAgents = agentState.persistentSessionAgents;
@@ -11331,7 +11331,7 @@ async function processClaudePairSessions(agents) {
11331
11331
  killPairSession,
11332
11332
  pairTmuxSession,
11333
11333
  finalizeClaudePairOnboarding
11334
- } = await import("../claude-pair-runtime-LDE4CJO5.js");
11334
+ } = await import("../claude-pair-runtime-RAAIXOKO.js");
11335
11335
  for (const pairId of pendingResp.cancelled_pair_ids ?? []) {
11336
11336
  log(`[claude-pair] sweeping orphan tmux session for pair ${pairId.slice(0, 8)}`);
11337
11337
  const killed = await killPairSession(pairTmuxSession(pairId));
@@ -17470,6 +17470,7 @@ function buildSlackHelpMessage(codeName) {
17470
17470
  "All commands are real Slack slash commands (autocomplete via `/`). For backward compatibility, `/help` and the restart command can also be typed as plain messages in any channel where the bot is present:",
17471
17471
  `\u2022 \`${agentSlashCommand("/help")}\` (or type \`/help\`) \u2014 show this help`,
17472
17472
  `\u2022 \`${agentSlashCommand("/restart")}\` \u2014 restart this agent`,
17473
+ `\u2022 \`${agentSlashCommand("/resume-onboarding")}\` \u2014 re-run this agent's onboarding interview (allowlisted users)`,
17473
17474
  `\u2022 \`${agentSlashCommand("/status")}\` \u2014 this agent's model, session origin, uptime + connectivity`,
17474
17475
  "\u2022 `/watch <google-doc-url> [duration]` (type it in chat) \u2014 watch a Google Doc for comments that mention me (default 2h, max 7d; auto-pauses when the window ends). In a shared channel, address me as `/watch-<my-name>`.",
17475
17476
  "\u2022 `/kill` \u2014 silence all agents in this thread for 6h (use as a thread reply)",
@@ -17849,6 +17850,50 @@ async function handleSlashCommandEnvelope(payload) {
17849
17850
  }
17850
17851
  return;
17851
17852
  }
17853
+ if (matchesAgentCommand(command, "/resume-onboarding")) {
17854
+ const allowed = getEffectiveAllowedUsers();
17855
+ if (allowed.size > 0 && (!payload.user_id || !allowed.has(payload.user_id))) {
17856
+ await postEphemeralViaResponseUrl(
17857
+ responseUrl,
17858
+ `\u{1F6AB} \`/resume-onboarding\` denied \u2014 your Slack user is not in the allowlist for \`${codeName}\`.`,
17859
+ codeName
17860
+ );
17861
+ return;
17862
+ }
17863
+ if (!AGT_HOST || !AGT_API_KEY || !AGT_AGENT_ID) {
17864
+ await postEphemeralViaResponseUrl(
17865
+ responseUrl,
17866
+ ":warning: This agent has no host API wiring \u2014 `/resume-onboarding` needs the host runtime to be reachable.",
17867
+ codeName
17868
+ );
17869
+ return;
17870
+ }
17871
+ try {
17872
+ const res = await fetch(`${AGT_HOST}/host/onboarding/reset`, {
17873
+ method: "POST",
17874
+ headers: {
17875
+ "Content-Type": "application/json; charset=utf-8",
17876
+ Authorization: `Bearer ${AGT_API_KEY}`
17877
+ },
17878
+ body: JSON.stringify({ agent_id: AGT_AGENT_ID }),
17879
+ signal: AbortSignal.timeout(SLACK_DOWNLOAD_TIMEOUT_MS)
17880
+ });
17881
+ const data = await res.json();
17882
+ const text = data.ok ? `\u{1F504} ${data.message ?? "Onboarding reset \u2014 I\u2019ll re-interview your manager."}` : `:x: \`/resume-onboarding\` failed${data.error ? `: ${data.error}` : "."}`;
17883
+ await postEphemeralViaResponseUrl(responseUrl, text, codeName);
17884
+ } catch (err) {
17885
+ process.stderr.write(
17886
+ `slack-channel(${codeName}): /resume-onboarding forward failed: ${err.message}
17887
+ `
17888
+ );
17889
+ await postEphemeralViaResponseUrl(
17890
+ responseUrl,
17891
+ ":x: `/resume-onboarding` forwarding failed \u2014 host runtime unreachable. Try again in a moment.",
17892
+ codeName
17893
+ );
17894
+ }
17895
+ return;
17896
+ }
17852
17897
  if (command === "/debug" || matchesAgentCommand(command, "/investigate")) {
17853
17898
  await handleDebugSlashCommand(payload, responseUrl);
17854
17899
  return;
@@ -25,8 +25,8 @@ import {
25
25
  takeZombieDetection,
26
26
  writeDirectChatSessionState,
27
27
  writePersistentClaudeWrapper
28
- } from "./chunk-ATK3HBK6.js";
29
- import "./chunk-TMTSBVPP.js";
28
+ } from "./chunk-MKKTPM6J.js";
29
+ import "./chunk-SJRG5VUF.js";
30
30
  import "./chunk-XWVM4KPK.js";
31
31
  export {
32
32
  SEND_KEYS_ENTER_DELAY_MS,
@@ -56,4 +56,4 @@ export {
56
56
  writeDirectChatSessionState,
57
57
  writePersistentClaudeWrapper
58
58
  };
59
- //# sourceMappingURL=persistent-session-T6VRODM5.js.map
59
+ //# sourceMappingURL=persistent-session-INTCKEG6.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  paneLogPath
3
- } from "./chunk-ATK3HBK6.js";
4
- import "./chunk-TMTSBVPP.js";
3
+ } from "./chunk-MKKTPM6J.js";
4
+ import "./chunk-SJRG5VUF.js";
5
5
  import "./chunk-XWVM4KPK.js";
6
6
 
7
7
  // src/lib/responsiveness-probe.ts
@@ -250,4 +250,4 @@ export {
250
250
  parkPendingInbound,
251
251
  readAndResetChannelDeflections
252
252
  };
253
- //# sourceMappingURL=responsiveness-probe-NI26NQJO.js.map
253
+ //# sourceMappingURL=responsiveness-probe-XAYQAVLV.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@integrity-labs/agt-cli",
3
- "version": "0.28.56",
3
+ "version": "0.28.57",
4
4
  "description": "Augmented Team CLI — agent provisioning and management",
5
5
  "type": "module",
6
6
  "engines": {