@integrity-labs/agt-cli 0.28.34 → 0.28.35

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.
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  claudeModelAlias,
3
3
  isClaudeFastMode
4
- } from "./chunk-R5CP4WAO.js";
4
+ } from "./chunk-DVAHAZQN.js";
5
5
  import {
6
6
  reapOrphanChannelMcps
7
7
  } from "./chunk-XWVM4KPK.js";
@@ -1487,4 +1487,4 @@ export {
1487
1487
  stopAllSessionsAndWait,
1488
1488
  getProjectDir
1489
1489
  };
1490
- //# sourceMappingURL=chunk-HTRILMXV.js.map
1490
+ //# sourceMappingURL=chunk-OOM6UIVP.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-RNALQ7JD.js");
103
+ const { resolveClaudeBinary } = await import("./persistent-session-CSRLAED4.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-LP4W56RT.js.map
376
+ //# sourceMappingURL=claude-pair-runtime-DLP427EB.js.map
@@ -23,7 +23,7 @@ import {
23
23
  requireHost,
24
24
  safeWriteJsonAtomic,
25
25
  setConfigHash
26
- } from "../chunk-DLCUI4J5.js";
26
+ } from "../chunk-5G4VLVFN.js";
27
27
  import {
28
28
  getProjectDir as getProjectDir2,
29
29
  getReadyTasks,
@@ -65,7 +65,7 @@ import {
65
65
  takeWatchdogGiveUpCount,
66
66
  takeZombieDetection,
67
67
  transcriptActivityAgeSeconds
68
- } from "../chunk-HTRILMXV.js";
68
+ } from "../chunk-OOM6UIVP.js";
69
69
  import {
70
70
  FLAGS_SCHEMA_VERSION,
71
71
  FLAG_REGISTRY,
@@ -99,7 +99,7 @@ import {
99
99
  sumTranscriptUsageInWindow,
100
100
  worseConnectivityOutcome,
101
101
  wrapScheduledTaskPrompt
102
- } from "../chunk-R5CP4WAO.js";
102
+ } from "../chunk-DVAHAZQN.js";
103
103
  import {
104
104
  parsePsRows,
105
105
  reapOrphanChannelMcps
@@ -6199,7 +6199,7 @@ var cachedMaintenanceWindow = null;
6199
6199
  var lastVersionCheckAt = 0;
6200
6200
  var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
6201
6201
  var lastResponsivenessProbeAt = 0;
6202
- var agtCliVersion = true ? "0.28.34" : "dev";
6202
+ var agtCliVersion = true ? "0.28.35" : "dev";
6203
6203
  function resolveBrewPath(execFileSync4) {
6204
6204
  try {
6205
6205
  const out = execFileSync4("which", ["brew"], { timeout: 5e3 }).toString().trim();
@@ -7327,7 +7327,7 @@ async function pollCycle() {
7327
7327
  }
7328
7328
  try {
7329
7329
  const { detectHostSecurity } = await import("../host-security-6PDFG7F5.js");
7330
- const { collectDiagnostics } = await import("../persistent-session-RNALQ7JD.js");
7330
+ const { collectDiagnostics } = await import("../persistent-session-CSRLAED4.js");
7331
7331
  const diagCodeNames = [...agentState.persistentSessionAgents];
7332
7332
  const agentDiagnostics = diagCodeNames.length > 0 ? collectDiagnostics(diagCodeNames) : void 0;
7333
7333
  let tailscaleHostname;
@@ -7428,7 +7428,7 @@ async function pollCycle() {
7428
7428
  const {
7429
7429
  collectResponsivenessProbes,
7430
7430
  getResponsivenessIntervalMs
7431
- } = await import("../responsiveness-probe-DRP2PPVE.js");
7431
+ } = await import("../responsiveness-probe-43ON4QKC.js");
7432
7432
  const probeIntervalMs = getResponsivenessIntervalMs();
7433
7433
  if (now - lastResponsivenessProbeAt > probeIntervalMs) {
7434
7434
  const probeCodeNames = [...agentState.persistentSessionAgents];
@@ -7460,7 +7460,7 @@ async function pollCycle() {
7460
7460
  collectResponsivenessProbes,
7461
7461
  livePendingInboundOldestAgeSeconds,
7462
7462
  parkPendingInbound
7463
- } = await import("../responsiveness-probe-DRP2PPVE.js");
7463
+ } = await import("../responsiveness-probe-43ON4QKC.js");
7464
7464
  const { getProjectDir: wedgeProjectDir } = await import("../claude-scheduler-FATCLHDM.js");
7465
7465
  const wedgeNow = /* @__PURE__ */ new Date();
7466
7466
  const liveAgents = agentState.persistentSessionAgents;
@@ -11432,7 +11432,7 @@ async function processClaudePairSessions(agents) {
11432
11432
  killPairSession,
11433
11433
  pairTmuxSession,
11434
11434
  finalizeClaudePairOnboarding
11435
- } = await import("../claude-pair-runtime-LP4W56RT.js");
11435
+ } = await import("../claude-pair-runtime-DLP427EB.js");
11436
11436
  for (const pairId of pendingResp.cancelled_pair_ids ?? []) {
11437
11437
  log(`[claude-pair] sweeping orphan tmux session for pair ${pairId.slice(0, 8)}`);
11438
11438
  const killed = await killPairSession(pairTmuxSession(pairId));
@@ -21159,6 +21159,20 @@ var AdminDebugClient = class _AdminDebugClient {
21159
21159
  run_id: this.runId
21160
21160
  });
21161
21161
  }
21162
+ /** Request a HITL-gated agent-config update (ENG-6425). */
21163
+ requestConfigUpdate(args) {
21164
+ if (!this.agentId) {
21165
+ throw makeError(400, "AdminDebugClient.requestConfigUpdate requires agentId (set AGT_AGENT_ID)");
21166
+ }
21167
+ return this.post("/admin/debug/actions/update-config", {
21168
+ target_agent_id: args.target_agent_id,
21169
+ field: args.field,
21170
+ new_value: args.new_value,
21171
+ reason: args.reason,
21172
+ agent_id: this.agentId,
21173
+ run_id: this.runId
21174
+ });
21175
+ }
21162
21176
  /** Poll a remedial action's HITL decision. */
21163
21177
  getActionStatus(requestId) {
21164
21178
  return this.get(`/admin/debug/actions/${encodeURIComponent(requestId)}`);
@@ -21199,8 +21213,16 @@ var requestActionSchema = external_exports.object({
21199
21213
  target_agent_id: external_exports.string().min(1).max(64).describe("UUID of the customer agent to act on."),
21200
21214
  reason: external_exports.string().min(1).max(2e3).describe("Why this action is needed \u2014 shown verbatim to the human approver. Be specific.")
21201
21215
  });
21216
+ var requestConfigUpdateSchema = external_exports.object({
21217
+ target_agent_id: external_exports.string().min(1).max(64).describe("UUID of the customer agent whose config to change."),
21218
+ field: external_exports.enum(["primary_model", "secondary_model", "tertiary_model"]).describe("The agent-config field to change. Only the model tiers are settable."),
21219
+ new_value: external_exports.string().min(1).max(128).describe(
21220
+ "The new model value. For Claude Code (subscription) agents use a family alias (fable/opus/opus[fast]/sonnet/haiku); for routed agents (OpenClaw/NemoClaw) use a full stored model id (e.g. openrouter/anthropic/claude-opus-4-6). The value is validated against the target agent \u2014 an invalid value is rejected before any approval is requested."
21221
+ ),
21222
+ reason: external_exports.string().min(1).max(2e3).describe("Why this change is needed \u2014 shown verbatim to the human approver. Be specific.")
21223
+ });
21202
21224
  var checkActionStatusSchema = external_exports.object({
21203
- request_id: external_exports.string().min(1).max(64).describe("The action request_id returned by request_action.")
21225
+ request_id: external_exports.string().min(1).max(64).describe("The action request_id returned by request_action or request_config_update.")
21204
21226
  });
21205
21227
  var queryAuditLogSchema = external_exports.object({
21206
21228
  agent_id: external_exports.string().min(1).max(64).describe("UUID of the agent whose audit events to read (required \u2014 the read is scoped to this agent's org)."),
@@ -21375,6 +21397,24 @@ server.tool(
21375
21397
  }
21376
21398
  }
21377
21399
  );
21400
+ server.tool(
21401
+ "request_config_update",
21402
+ "Request a HITL-gated change to a customer agent's model config (primary/secondary/tertiary_model). A HUMAN must approve in Slack before anything happens, and only if writes are armed for this stage (shadow mode runs the approval but executes nothing). The change is reversible and applies at the agent's NEXT session launch after /host/refresh \u2014 it does not restart the agent. The new value is validated against the agent before approval is requested: Claude Code (subscription) agents take a family alias (fable/opus/opus[fast]/sonnet/haiku); routed agents take a full stored model id (e.g. openrouter/anthropic/claude-opus-4-6). Use this to fix a misconfigured model (e.g. an agent wedged on a model its auth can't access). Returns { request_id, status, write_mode, notification_status }. Pass { target_agent_id, field, new_value, reason }.",
21403
+ requestConfigUpdateSchema.shape,
21404
+ async (args) => {
21405
+ try {
21406
+ const result = await client.requestConfigUpdate({
21407
+ target_agent_id: args.target_agent_id,
21408
+ field: args.field,
21409
+ new_value: args.new_value,
21410
+ reason: args.reason
21411
+ });
21412
+ return { content: [{ type: "text", text: JSON.stringify(result, null, 2) }] };
21413
+ } catch (err) {
21414
+ return { content: [{ type: "text", text: formatError2(err) }], isError: true };
21415
+ }
21416
+ }
21417
+ );
21378
21418
  server.tool(
21379
21419
  "check_action_status",
21380
21420
  "Poll the decision on a remedial action you requested (the approval result is also pushed to you via direct-chat). Returns { status, result_payload, denial_reason, resolved_at }. Pass { request_id }.",
@@ -25,8 +25,8 @@ import {
25
25
  takeZombieDetection,
26
26
  writeDirectChatSessionState,
27
27
  writePersistentClaudeWrapper
28
- } from "./chunk-HTRILMXV.js";
29
- import "./chunk-R5CP4WAO.js";
28
+ } from "./chunk-OOM6UIVP.js";
29
+ import "./chunk-DVAHAZQN.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-RNALQ7JD.js.map
59
+ //# sourceMappingURL=persistent-session-CSRLAED4.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  paneLogPath
3
- } from "./chunk-HTRILMXV.js";
4
- import "./chunk-R5CP4WAO.js";
3
+ } from "./chunk-OOM6UIVP.js";
4
+ import "./chunk-DVAHAZQN.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-DRP2PPVE.js.map
253
+ //# sourceMappingURL=responsiveness-probe-43ON4QKC.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@integrity-labs/agt-cli",
3
- "version": "0.28.34",
3
+ "version": "0.28.35",
4
4
  "description": "Augmented Team CLI — agent provisioning and management",
5
5
  "type": "module",
6
6
  "engines": {