@integrity-labs/agt-cli 0.28.1126 → 0.28.1127

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-DIOP5LSU.js";
43
+ } from "../chunk-7W5TLMFG.js";
44
44
  import {
45
45
  getProjectDir,
46
46
  isSessionResumeDisabled,
47
47
  readDirectChatSessionState
48
- } from "../chunk-C5YNHEST.js";
48
+ } from "../chunk-37PZYGGA.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-JI2D2TA2.js";
82
+ } from "../chunk-6J7WE4J4.js";
83
83
  import "../chunk-OCMJ5E6J.js";
84
84
  import "../chunk-XWVM4KPK.js";
85
85
  import "../chunk-EL5MWGGH.js";
@@ -5474,7 +5474,7 @@ import { execFileSync, execSync } from "child_process";
5474
5474
  import { existsSync as existsSync11, realpathSync as realpathSync2 } from "fs";
5475
5475
  import chalk18 from "chalk";
5476
5476
  import ora16 from "ora";
5477
- var cliVersion = true ? "0.28.1126" : "dev";
5477
+ var cliVersion = true ? "0.28.1127" : "dev";
5478
5478
  async function fetchLatestVersion() {
5479
5479
  const host2 = getHost();
5480
5480
  if (!host2) return null;
@@ -6734,7 +6734,7 @@ function handleError(err) {
6734
6734
  }
6735
6735
 
6736
6736
  // src/bin/agt.ts
6737
- var cliVersion2 = true ? "0.28.1126" : "dev";
6737
+ var cliVersion2 = true ? "0.28.1127" : "dev";
6738
6738
  var program = new Command();
6739
6739
  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");
6740
6740
  program.hook("preAction", async (thisCommand, actionCommand) => {
@@ -24,7 +24,7 @@ import {
24
24
  rotateDailySession,
25
25
  sessionFileExists,
26
26
  todayLocalIso
27
- } from "./chunk-JI2D2TA2.js";
27
+ } from "./chunk-6J7WE4J4.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-C5YNHEST.js.map
6117
+ //# sourceMappingURL=chunk-37PZYGGA.js.map
@@ -1119,6 +1119,7 @@ function formatEmailDomainConfigLines(config) {
1119
1119
  const enforceLive = config.enforce_live === true;
1120
1120
  const approvalLive = config.approval_live === true;
1121
1121
  const approvalCoveredActions = stringList(config.approval_covered_actions);
1122
+ const noVerifiedDomain = config.not_live_reason === "no_verified_domain";
1122
1123
  if (stage) {
1123
1124
  const stageName = isEmailGuardStage(stage) ? EMAIL_GUARD_STAGE_LABELS[stage] : stage;
1124
1125
  lines.push(stageName === stage ? ` - setting: ${stage}` : ` - setting: ${stageName} (stage ${stage})`);
@@ -1129,8 +1130,12 @@ function formatEmailDomainConfigLines(config) {
1129
1130
  lines.push(` *SCOPE - the hold below does NOT cover every route to sending mail, and this host does not report which routes it covers. Where you cannot confirm a send is covered - an unusual provider or tool, a mail rule or filter, a draft-send whose recipients are not in the call - treat it as unheld: produce the draft and hand it to a human.*`);
1130
1131
  }
1131
1132
  lines.push(` *Human approval: sending to a non-allowed domain is allowed but routed to a person for approval. Attempt the send as you normally would - do NOT refuse it outright, and do NOT tell the user to go and send it themselves: the platform is configured to hold it and route it to an approver (an Approve/Deny card), and you are told the outcome. Two limits on that. (1) An explicit user instruction WINS: if the user asked you to route it for their review, to leave it in drafts, or to check with them before it goes, do THAT - leave the message unsent and tell them it is ready. Their instruction is not satisfied by the platform's hold. (2) Do NOT assume the hold engaged. If the send tool returns a sent/delivered result rather than a pending/held one, the hold did not fire - say so plainly in the same turn, treat the message as already gone, and do not send again to a non-allowed domain until a human confirms the gate is working.*`);
1133
+ } else if (stage === "require_approval" && noVerifiedDomain) {
1134
+ lines.push(` *Approval routing is armed, but your organization has no verified email domain yet, so nothing can tell internal from external recipients and no send would be held. A message to a non-allowed domain would go straight out. Do NOT send one. Prepare it as a draft, tell the user it is ready and needs them to send it, and tell them an operator needs to verify the organization's email domain (Organization \u2192 Settings \u2192 Email domains in the console) before the hold can work.*`);
1132
1135
  } else if (stage === "require_approval") {
1133
1136
  lines.push(` *Currently observe-only for approval: the API records the domain decision to guardrail_audit_log but does not block sends at this stage, and approval routing is NOT armed - so nothing would hold a message to a non-allowed domain. It would go straight out. Do NOT send one. Prepare it as a draft, tell the user it is ready and needs them to send it, and let them decide. This is deliberate fail-closed behaviour: a hold the platform cannot confirm is treated as no hold at all. Treat the restriction as authoritative guidance; the runtime flip is operator-side.*`);
1137
+ } else if (stage === "enforce" && !enforceLive && noVerifiedDomain) {
1138
+ lines.push(` *Blocking is armed, but your organization has no verified email domain yet, so nothing can tell internal from external recipients and no send would be blocked. A message to a non-allowed domain would go straight out. Do NOT send one. Prepare it as a draft, tell the user it is ready and needs them to send it, and tell them an operator needs to verify the organization's email domain (Organization \u2192 Settings \u2192 Email domains in the console) before the block can work.*`);
1134
1139
  } else if (!(stage === "enforce" && enforceLive)) {
1135
1140
  lines.push(` *Currently observe-only: the API records domain decisions to guardrail_audit_log but does not block sends at this stage. Honor the restriction as authoritative guidance; the runtime flip is operator-side.*`);
1136
1141
  }
@@ -1300,7 +1305,7 @@ function requireApprovalHowLines(g, level, holds) {
1300
1305
  const emailHold = holds.requireApproval;
1301
1306
  const domainHold = emailHold === null ? holds.domain : null;
1302
1307
  const actions = requireApprovalActions(g.config);
1303
- const namesEmail = actions === null || actions.includes(REQUIRE_APPROVAL_EMAIL_ACTION);
1308
+ const namesEmail = actions === null ? domainHold === null : actions.includes(REQUIRE_APPROVAL_EMAIL_ACTION);
1304
1309
  const namesOther = actions === null || actions.some((a) => a !== REQUIRE_APPROVAL_EMAIL_ACTION);
1305
1310
  const asksAboutEmail = namesEmail && emailHold === null && domainHold === null;
1306
1311
  const ask = namesOther || asksAboutEmail || namesEmail && domainHold !== null;
@@ -1364,6 +1369,9 @@ function effectiveEmailEnforcement(g) {
1364
1369
  if (stage === "require_approval") {
1365
1370
  return g.enforcement === "enforce" ? "warn" : g.enforcement;
1366
1371
  }
1372
+ if (stage === "enforce" && g.config?.["not_live_reason"] === "no_verified_domain") {
1373
+ return g.enforcement === "enforce" ? "warn" : g.enforcement;
1374
+ }
1367
1375
  return "log";
1368
1376
  }
1369
1377
  function buildGuardrailsSection(guardrails) {
@@ -5258,6 +5266,8 @@ var NOTICE_KIND_AUDIENCE = {
5258
5266
  aws_grant_denied: "agent",
5259
5267
  gcp_grant_resolved: "agent",
5260
5268
  gcp_grant_denied: "agent",
5269
+ azure_grant_resolved: "agent",
5270
+ azure_grant_denied: "agent",
5261
5271
  // HITL tool-call approvals: "Do NOT call this tool again, do NOT claim the
5262
5272
  // action happened, and do NOT poll".
5263
5273
  integration_invoke_resolved: "agent",
@@ -16836,4 +16846,4 @@ export {
16836
16846
  peekCurrentSession,
16837
16847
  readDailySessionPin
16838
16848
  };
16839
- //# sourceMappingURL=chunk-JI2D2TA2.js.map
16849
+ //# sourceMappingURL=chunk-6J7WE4J4.js.map