@integrity-labs/agt-cli 0.28.1115 → 0.28.1117

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.
@@ -16,7 +16,7 @@ import {
16
16
  parseEnvFileEntries,
17
17
  parseEnvIntegrations,
18
18
  shellQuote
19
- } from "./chunk-YTCFFKTS.js";
19
+ } from "./chunk-6WEBDE4W.js";
20
20
  import {
21
21
  BIND_FAILURE_QUARANTINE_THRESHOLD,
22
22
  INTEGRATIONS_SECTION_END,
@@ -79,7 +79,7 @@ import {
79
79
  sessionTranscriptDir,
80
80
  worseConnectivityOutcome,
81
81
  wrapScheduledTaskPrompt
82
- } from "./chunk-I332Y7ZA.js";
82
+ } from "./chunk-HXPYOFFT.js";
83
83
  import {
84
84
  classifyUnanswerablePane,
85
85
  isConsumerTermsDialogVisible,
@@ -7518,7 +7518,7 @@ function exchangeFailureKind(err) {
7518
7518
  }
7519
7519
 
7520
7520
  // src/lib/api-client.ts
7521
- var agtCliVersion = true ? "0.28.1115" : "dev";
7521
+ var agtCliVersion = true ? "0.28.1117" : "dev";
7522
7522
  var lastConfigHash = null;
7523
7523
  function setConfigHash(hash) {
7524
7524
  lastConfigHash = hash && hash.length > 0 ? hash : null;
@@ -12664,4 +12664,4 @@ export {
12664
12664
  managerInstallSystemUnitCommand,
12665
12665
  managerUninstallSystemUnitCommand
12666
12666
  };
12667
- //# sourceMappingURL=chunk-MKAOLKYE.js.map
12667
+ //# sourceMappingURL=chunk-VFOXL3K7.js.map
@@ -266,7 +266,7 @@ async function spawnPairSession(session) {
266
266
  return { ok: true };
267
267
  } catch {
268
268
  }
269
- const { resolveClaudeBinary } = await import("./persistent-session-DMGOR6L5.js");
269
+ const { resolveClaudeBinary } = await import("./persistent-session-MR3X4YKR.js");
270
270
  const claudeBin = resolveClaudeBinary();
271
271
  const pairEnv = {
272
272
  ...process.env,
@@ -734,4 +734,4 @@ export {
734
734
  startClaudePair,
735
735
  submitClaudePairCode
736
736
  };
737
- //# sourceMappingURL=claude-pair-runtime-LC2KGTRK.js.map
737
+ //# sourceMappingURL=claude-pair-runtime-4DHOMQSA.js.map
@@ -68,7 +68,7 @@ import {
68
68
  safeWriteJsonAtomic,
69
69
  setConfigHash,
70
70
  tripClass
71
- } from "../chunk-MKAOLKYE.js";
71
+ } from "../chunk-VFOXL3K7.js";
72
72
  import {
73
73
  getProjectDir as getProjectDir2,
74
74
  getReadyTasks,
@@ -155,7 +155,7 @@ import {
155
155
  webFetchBaselineValue,
156
156
  webFetchRestartNeeded,
157
157
  writeEgressAllowlist
158
- } from "../chunk-YTCFFKTS.js";
158
+ } from "../chunk-6WEBDE4W.js";
159
159
  import {
160
160
  ACCOUNT_ENFORCEMENT_MARKER_FILENAME,
161
161
  AnchorSessionClient,
@@ -265,7 +265,7 @@ import {
265
265
  subagentActivityAgeSeconds,
266
266
  sumTranscriptUsageInWindow,
267
267
  transcriptActivityAgeSeconds
268
- } from "../chunk-I332Y7ZA.js";
268
+ } from "../chunk-HXPYOFFT.js";
269
269
  import {
270
270
  classifyUnanswerablePane,
271
271
  paneRemedy
@@ -14143,7 +14143,7 @@ var pendingDayRolloverReset = /* @__PURE__ */ new Set();
14143
14143
  var dayRolloverInboundHold = /* @__PURE__ */ new Map();
14144
14144
  var INBOUND_HOLD_EPISODE_GAP_MS = 12e4;
14145
14145
  async function channelInboundActivityAgeSecondsFor(codeName) {
14146
- const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-JYYAJNID.js");
14146
+ const { newestPendingInboundActivityMtimeMs } = await import("../responsiveness-probe-7HVQMWP6.js");
14147
14147
  const newest = newestPendingInboundActivityMtimeMs(dirname11(paneLogPath(codeName)));
14148
14148
  if (newest === null) return null;
14149
14149
  return Math.max(0, Math.floor((Date.now() - newest) / 1e3));
@@ -14901,7 +14901,7 @@ var agentRestartTimezoneInputs = /* @__PURE__ */ new Map();
14901
14901
  var lastVersionCheckAt = 0;
14902
14902
  var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
14903
14903
  var lastResponsivenessProbeAt = 0;
14904
- var agtCliVersion = true ? "0.28.1115" : "dev";
14904
+ var agtCliVersion = true ? "0.28.1117" : "dev";
14905
14905
  function resolveBrewPath(execFileSync3) {
14906
14906
  try {
14907
14907
  const out = execFileSync3("which", ["brew"], { timeout: 5e3 }).toString().trim();
@@ -16518,7 +16518,7 @@ function flushRestartedAgentDiagnostics(hostId, codeNames) {
16518
16518
  if (codeNames.length === 0) return;
16519
16519
  void (async () => {
16520
16520
  try {
16521
- const { collectDiagnostics } = await import("../persistent-session-DMGOR6L5.js");
16521
+ const { collectDiagnostics } = await import("../persistent-session-MR3X4YKR.js");
16522
16522
  await api.post("/host/heartbeat", {
16523
16523
  host_id: hostId,
16524
16524
  agent_diagnostics: collectDiagnostics(codeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor, runtimeVersionFor)
@@ -16660,7 +16660,7 @@ async function pollCycleInner() {
16660
16660
  }
16661
16661
  try {
16662
16662
  const { detectHostSecurity } = await import("../host-security-KQYYZZVW.js");
16663
- const { collectDiagnostics } = await import("../persistent-session-DMGOR6L5.js");
16663
+ const { collectDiagnostics } = await import("../persistent-session-MR3X4YKR.js");
16664
16664
  const diagCodeNames = [...agentState.persistentSessionAgents];
16665
16665
  const agentDiagnostics = diagCodeNames.length > 0 ? collectDiagnostics(diagCodeNames, quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor, runtimeVersionFor) : void 0;
16666
16666
  let tailscaleHostname;
@@ -16868,7 +16868,7 @@ async function pollCycleInner() {
16868
16868
  collectPanelessActivityProbes,
16869
16869
  getResponsivenessIntervalMs,
16870
16870
  occupancyQualificationClassifications
16871
- } = await import("../responsiveness-probe-JYYAJNID.js");
16871
+ } = await import("../responsiveness-probe-7HVQMWP6.js");
16872
16872
  const probeIntervalMs = getResponsivenessIntervalMs();
16873
16873
  if (now - lastResponsivenessProbeAt > probeIntervalMs) {
16874
16874
  const probeCodeNames = [...agentState.persistentSessionAgents];
@@ -16985,7 +16985,7 @@ async function pollCycleInner() {
16985
16985
  collectResponsivenessProbes,
16986
16986
  livePendingInboundOldestAgeSeconds,
16987
16987
  parkPendingInbound
16988
- } = await import("../responsiveness-probe-JYYAJNID.js");
16988
+ } = await import("../responsiveness-probe-7HVQMWP6.js");
16989
16989
  const { getProjectDir: wedgeProjectDir } = await import("../scheduler-engine-M6AFZWNU.js");
16990
16990
  const wedgeNow = /* @__PURE__ */ new Date();
16991
16991
  const liveAgents = agentState.persistentSessionAgents;
@@ -17271,7 +17271,7 @@ async function pollCycleInner() {
17271
17271
  }
17272
17272
  }
17273
17273
  );
17274
- const { parkPendingInbound } = await import("../responsiveness-probe-JYYAJNID.js");
17274
+ const { parkPendingInbound } = await import("../responsiveness-probe-7HVQMWP6.js");
17275
17275
  const { parked, deadLettered } = parkPendingInbound(codeName, new Date(fatalNowMs));
17276
17276
  paneFatalStreak.delete(codeName);
17277
17277
  paneFatalRestarts.set(codeName, [...history, fatalNowMs]);
@@ -17302,7 +17302,7 @@ async function pollCycleInner() {
17302
17302
  TRANSCRIPT_MOUNT_ESCALATION_REFRESH_MS,
17303
17303
  bindSourceEscalations
17304
17304
  } = await import("../transcript-mount-health-OHE6IVJV.js");
17305
- const { transcriptBindSourcesFor, ensureTranscriptBindSources } = await import("../persistent-session-DMGOR6L5.js");
17305
+ const { transcriptBindSourcesFor, ensureTranscriptBindSources } = await import("../persistent-session-MR3X4YKR.js");
17306
17306
  const mountConfig = resolveTranscriptMountConfig();
17307
17307
  const liveAgents = agentState.persistentSessionAgents;
17308
17308
  for (const tracked of [
@@ -17467,7 +17467,7 @@ async function pollCycleInner() {
17467
17467
  }
17468
17468
  try {
17469
17469
  const { scrapeMcpFailedBannerCount } = await import("../pane-mcp-banner-scraper-VR5QGP3J.js");
17470
- const { probeSessionAuth } = await import("../session-auth-dead-75QVSVYA.js");
17470
+ const { probeSessionAuth } = await import("../session-auth-dead-2KE5HIRM.js");
17471
17471
  const observations = [];
17472
17472
  const pendingCacheCommits = [];
17473
17473
  const modelApiErrorReportingOn = hostFlagStore().getBoolean("model-api-error-reporting");
@@ -22055,7 +22055,7 @@ async function handleRestartDoorbell(agentId, requestedAt, restartReason) {
22055
22055
  try {
22056
22056
  const freshId = rotateSessionForWedge(codeName);
22057
22057
  consecutiveWedgeCycles.delete(codeName);
22058
- const { parkPendingInbound: parkForRestart } = await import("../responsiveness-probe-JYYAJNID.js");
22058
+ const { parkPendingInbound: parkForRestart } = await import("../responsiveness-probe-7HVQMWP6.js");
22059
22059
  const { parked, deadLettered } = parkForRestart(codeName, /* @__PURE__ */ new Date());
22060
22060
  const parkNote = parked > 0 ? `, ${parked} inbound parked` : "";
22061
22061
  const deadNote = deadLettered > 0 ? `, ${deadLettered} undeliverable dead-lettered` : "";
@@ -22098,7 +22098,7 @@ async function handleRestartDoorbell(agentId, requestedAt, restartReason) {
22098
22098
  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}`));
22099
22099
  void (async () => {
22100
22100
  try {
22101
- const { collectDiagnostics } = await import("../persistent-session-DMGOR6L5.js");
22101
+ const { collectDiagnostics } = await import("../persistent-session-MR3X4YKR.js");
22102
22102
  await api.post("/host/heartbeat", {
22103
22103
  host_id: hostId,
22104
22104
  agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor, runtimeVersionFor)
@@ -22149,7 +22149,7 @@ async function respawnAgentAfterMcpStop(codeName, reason) {
22149
22149
  }
22150
22150
  try {
22151
22151
  const hostId = await getHostId();
22152
- const { collectDiagnostics } = await import("../persistent-session-DMGOR6L5.js");
22152
+ const { collectDiagnostics } = await import("../persistent-session-MR3X4YKR.js");
22153
22153
  await api.post("/host/heartbeat", {
22154
22154
  host_id: hostId,
22155
22155
  agent_diagnostics: collectDiagnostics([codeName], quarantineEntriesFor, claudeMdSizeFor, spawnOutcomeForDiagnostics, pidPressureFor, forwardedToolsFor, runtimeVersionFor)
@@ -22822,7 +22822,7 @@ async function processClaudePairSessions(agents) {
22822
22822
  // cannot take it for itself — by the time it runs, the write it is looking
22823
22823
  // for may already have happened.
22824
22824
  snapshotPairConfig
22825
- } = await import("../claude-pair-runtime-LC2KGTRK.js");
22825
+ } = await import("../claude-pair-runtime-4DHOMQSA.js");
22826
22826
  for (const pairId of pendingResp.cancelled_pair_ids ?? []) {
22827
22827
  log(`[claude-pair] sweeping orphan tmux session for pair ${pairId.slice(0, 8)}`);
22828
22828
  const killed = await killPairSession(pairTmuxSession(pairId));
@@ -33316,6 +33316,38 @@ var OAUTH_PROVIDERS = {
33316
33316
  extraAuthorizeParams: {},
33317
33317
  clientAuthMethod: "body",
33318
33318
  userInfoUrl: "https://api.linkedin.com/v2/userinfo"
33319
+ },
33320
+ // CS-2039: Google Business Profile, native OAuth + brokered REST (the
33321
+ // linkedin-ads shape). Confidential Google client with refresh tokens, the
33322
+ // same model as google-workspace; OAUTH_GOOGLE_BUSINESS_PROFILE_CLIENT_ID /
33323
+ // _SECRET may be the SAME Google OAuth client as google-workspace (the
33324
+ // redirect URI `/integrations/oauth/callback` is shared by every provider).
33325
+ //
33326
+ // `business.manage` is the ONLY Business Profile scope Google offers: there
33327
+ // is no read-only variant, so read-only is enforced by the broker exposing
33328
+ // read tools only (google-business-profile-shared.ts), not by consent.
33329
+ // That is also why `readOnlyScopes` is omitted rather than set equal.
33330
+ //
33331
+ // THE GATE THAT IS NOT CODE: every Business Profile API sits at a quota of
33332
+ // 0 requests/minute per Google Cloud project until Google approves that
33333
+ // project's "Application for Basic API Access". Until then every call 429s.
33334
+ // See docs/runbooks/google-business-profile-dogfood.md.
33335
+ //
33336
+ // No userInfoUrl: the userinfo endpoint needs `openid`/`email`, which are
33337
+ // deliberately not requested, so the callback's best-effort label falls
33338
+ // back to a plain "Connected".
33339
+ "google-business-profile": {
33340
+ definitionId: "google-business-profile",
33341
+ authorizeUrl: "https://accounts.google.com/o/oauth2/v2/auth",
33342
+ tokenUrl: "https://oauth2.googleapis.com/token",
33343
+ revokeUrl: "https://oauth2.googleapis.com/revoke",
33344
+ defaultScopes: ["https://www.googleapis.com/auth/business.manage"],
33345
+ supportsRefresh: true,
33346
+ extraAuthorizeParams: {
33347
+ access_type: "offline",
33348
+ prompt: "consent"
33349
+ },
33350
+ clientAuthMethod: "body"
33319
33351
  }
33320
33352
  };
33321
33353
  OAUTH_PROVIDERS["xero-control-plane"] = {
package/dist/mcp/index.js CHANGED
@@ -25801,6 +25801,38 @@ var OAUTH_PROVIDERS = {
25801
25801
  extraAuthorizeParams: {},
25802
25802
  clientAuthMethod: "body",
25803
25803
  userInfoUrl: "https://api.linkedin.com/v2/userinfo"
25804
+ },
25805
+ // CS-2039: Google Business Profile, native OAuth + brokered REST (the
25806
+ // linkedin-ads shape). Confidential Google client with refresh tokens, the
25807
+ // same model as google-workspace; OAUTH_GOOGLE_BUSINESS_PROFILE_CLIENT_ID /
25808
+ // _SECRET may be the SAME Google OAuth client as google-workspace (the
25809
+ // redirect URI `/integrations/oauth/callback` is shared by every provider).
25810
+ //
25811
+ // `business.manage` is the ONLY Business Profile scope Google offers: there
25812
+ // is no read-only variant, so read-only is enforced by the broker exposing
25813
+ // read tools only (google-business-profile-shared.ts), not by consent.
25814
+ // That is also why `readOnlyScopes` is omitted rather than set equal.
25815
+ //
25816
+ // THE GATE THAT IS NOT CODE: every Business Profile API sits at a quota of
25817
+ // 0 requests/minute per Google Cloud project until Google approves that
25818
+ // project's "Application for Basic API Access". Until then every call 429s.
25819
+ // See docs/runbooks/google-business-profile-dogfood.md.
25820
+ //
25821
+ // No userInfoUrl: the userinfo endpoint needs `openid`/`email`, which are
25822
+ // deliberately not requested, so the callback's best-effort label falls
25823
+ // back to a plain "Connected".
25824
+ "google-business-profile": {
25825
+ definitionId: "google-business-profile",
25826
+ authorizeUrl: "https://accounts.google.com/o/oauth2/v2/auth",
25827
+ tokenUrl: "https://oauth2.googleapis.com/token",
25828
+ revokeUrl: "https://oauth2.googleapis.com/revoke",
25829
+ defaultScopes: ["https://www.googleapis.com/auth/business.manage"],
25830
+ supportsRefresh: true,
25831
+ extraAuthorizeParams: {
25832
+ access_type: "offline",
25833
+ prompt: "consent"
25834
+ },
25835
+ clientAuthMethod: "body"
25804
25836
  }
25805
25837
  };
25806
25838
  OAUTH_PROVIDERS["xero-control-plane"] = {
@@ -39950,6 +39950,38 @@ var OAUTH_PROVIDERS = {
39950
39950
  extraAuthorizeParams: {},
39951
39951
  clientAuthMethod: "body",
39952
39952
  userInfoUrl: "https://api.linkedin.com/v2/userinfo"
39953
+ },
39954
+ // CS-2039: Google Business Profile, native OAuth + brokered REST (the
39955
+ // linkedin-ads shape). Confidential Google client with refresh tokens, the
39956
+ // same model as google-workspace; OAUTH_GOOGLE_BUSINESS_PROFILE_CLIENT_ID /
39957
+ // _SECRET may be the SAME Google OAuth client as google-workspace (the
39958
+ // redirect URI `/integrations/oauth/callback` is shared by every provider).
39959
+ //
39960
+ // `business.manage` is the ONLY Business Profile scope Google offers: there
39961
+ // is no read-only variant, so read-only is enforced by the broker exposing
39962
+ // read tools only (google-business-profile-shared.ts), not by consent.
39963
+ // That is also why `readOnlyScopes` is omitted rather than set equal.
39964
+ //
39965
+ // THE GATE THAT IS NOT CODE: every Business Profile API sits at a quota of
39966
+ // 0 requests/minute per Google Cloud project until Google approves that
39967
+ // project's "Application for Basic API Access". Until then every call 429s.
39968
+ // See docs/runbooks/google-business-profile-dogfood.md.
39969
+ //
39970
+ // No userInfoUrl: the userinfo endpoint needs `openid`/`email`, which are
39971
+ // deliberately not requested, so the callback's best-effort label falls
39972
+ // back to a plain "Connected".
39973
+ "google-business-profile": {
39974
+ definitionId: "google-business-profile",
39975
+ authorizeUrl: "https://accounts.google.com/o/oauth2/v2/auth",
39976
+ tokenUrl: "https://oauth2.googleapis.com/token",
39977
+ revokeUrl: "https://oauth2.googleapis.com/revoke",
39978
+ defaultScopes: ["https://www.googleapis.com/auth/business.manage"],
39979
+ supportsRefresh: true,
39980
+ extraAuthorizeParams: {
39981
+ access_type: "offline",
39982
+ prompt: "consent"
39983
+ },
39984
+ clientAuthMethod: "body"
39953
39985
  }
39954
39986
  };
39955
39987
  OAUTH_PROVIDERS["xero-control-plane"] = {
@@ -34337,6 +34337,38 @@ var OAUTH_PROVIDERS = {
34337
34337
  extraAuthorizeParams: {},
34338
34338
  clientAuthMethod: "body",
34339
34339
  userInfoUrl: "https://api.linkedin.com/v2/userinfo"
34340
+ },
34341
+ // CS-2039: Google Business Profile, native OAuth + brokered REST (the
34342
+ // linkedin-ads shape). Confidential Google client with refresh tokens, the
34343
+ // same model as google-workspace; OAUTH_GOOGLE_BUSINESS_PROFILE_CLIENT_ID /
34344
+ // _SECRET may be the SAME Google OAuth client as google-workspace (the
34345
+ // redirect URI `/integrations/oauth/callback` is shared by every provider).
34346
+ //
34347
+ // `business.manage` is the ONLY Business Profile scope Google offers: there
34348
+ // is no read-only variant, so read-only is enforced by the broker exposing
34349
+ // read tools only (google-business-profile-shared.ts), not by consent.
34350
+ // That is also why `readOnlyScopes` is omitted rather than set equal.
34351
+ //
34352
+ // THE GATE THAT IS NOT CODE: every Business Profile API sits at a quota of
34353
+ // 0 requests/minute per Google Cloud project until Google approves that
34354
+ // project's "Application for Basic API Access". Until then every call 429s.
34355
+ // See docs/runbooks/google-business-profile-dogfood.md.
34356
+ //
34357
+ // No userInfoUrl: the userinfo endpoint needs `openid`/`email`, which are
34358
+ // deliberately not requested, so the callback's best-effort label falls
34359
+ // back to a plain "Connected".
34360
+ "google-business-profile": {
34361
+ definitionId: "google-business-profile",
34362
+ authorizeUrl: "https://accounts.google.com/o/oauth2/v2/auth",
34363
+ tokenUrl: "https://oauth2.googleapis.com/token",
34364
+ revokeUrl: "https://oauth2.googleapis.com/revoke",
34365
+ defaultScopes: ["https://www.googleapis.com/auth/business.manage"],
34366
+ supportsRefresh: true,
34367
+ extraAuthorizeParams: {
34368
+ access_type: "offline",
34369
+ prompt: "consent"
34370
+ },
34371
+ clientAuthMethod: "body"
34340
34372
  }
34341
34373
  };
34342
34374
  OAUTH_PROVIDERS["xero-control-plane"] = {
@@ -34529,6 +34529,38 @@ var OAUTH_PROVIDERS = {
34529
34529
  extraAuthorizeParams: {},
34530
34530
  clientAuthMethod: "body",
34531
34531
  userInfoUrl: "https://api.linkedin.com/v2/userinfo"
34532
+ },
34533
+ // CS-2039: Google Business Profile, native OAuth + brokered REST (the
34534
+ // linkedin-ads shape). Confidential Google client with refresh tokens, the
34535
+ // same model as google-workspace; OAUTH_GOOGLE_BUSINESS_PROFILE_CLIENT_ID /
34536
+ // _SECRET may be the SAME Google OAuth client as google-workspace (the
34537
+ // redirect URI `/integrations/oauth/callback` is shared by every provider).
34538
+ //
34539
+ // `business.manage` is the ONLY Business Profile scope Google offers: there
34540
+ // is no read-only variant, so read-only is enforced by the broker exposing
34541
+ // read tools only (google-business-profile-shared.ts), not by consent.
34542
+ // That is also why `readOnlyScopes` is omitted rather than set equal.
34543
+ //
34544
+ // THE GATE THAT IS NOT CODE: every Business Profile API sits at a quota of
34545
+ // 0 requests/minute per Google Cloud project until Google approves that
34546
+ // project's "Application for Basic API Access". Until then every call 429s.
34547
+ // See docs/runbooks/google-business-profile-dogfood.md.
34548
+ //
34549
+ // No userInfoUrl: the userinfo endpoint needs `openid`/`email`, which are
34550
+ // deliberately not requested, so the callback's best-effort label falls
34551
+ // back to a plain "Connected".
34552
+ "google-business-profile": {
34553
+ definitionId: "google-business-profile",
34554
+ authorizeUrl: "https://accounts.google.com/o/oauth2/v2/auth",
34555
+ tokenUrl: "https://oauth2.googleapis.com/token",
34556
+ revokeUrl: "https://oauth2.googleapis.com/revoke",
34557
+ defaultScopes: ["https://www.googleapis.com/auth/business.manage"],
34558
+ supportsRefresh: true,
34559
+ extraAuthorizeParams: {
34560
+ access_type: "offline",
34561
+ prompt: "consent"
34562
+ },
34563
+ clientAuthMethod: "body"
34532
34564
  }
34533
34565
  };
34534
34566
  OAUTH_PROVIDERS["xero-control-plane"] = {
@@ -68,8 +68,8 @@ import {
68
68
  writeDirectChatSessionState,
69
69
  writeEgressAllowlist,
70
70
  writePersistentClaudeWrapper
71
- } from "./chunk-YTCFFKTS.js";
72
- import "./chunk-I332Y7ZA.js";
71
+ } from "./chunk-6WEBDE4W.js";
72
+ import "./chunk-HXPYOFFT.js";
73
73
  import "./chunk-OCMJ5E6J.js";
74
74
  import "./chunk-XWVM4KPK.js";
75
75
  import "./chunk-EL5MWGGH.js";
@@ -145,4 +145,4 @@ export {
145
145
  writeEgressAllowlist,
146
146
  writePersistentClaudeWrapper
147
147
  };
148
- //# sourceMappingURL=persistent-session-DMGOR6L5.js.map
148
+ //# sourceMappingURL=persistent-session-MR3X4YKR.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  paneLogPath
3
- } from "./chunk-YTCFFKTS.js";
4
- import "./chunk-I332Y7ZA.js";
3
+ } from "./chunk-6WEBDE4W.js";
4
+ import "./chunk-HXPYOFFT.js";
5
5
  import "./chunk-OCMJ5E6J.js";
6
6
  import "./chunk-XWVM4KPK.js";
7
7
  import "./chunk-EL5MWGGH.js";
@@ -802,4 +802,4 @@ export {
802
802
  readAndResetSlackReplyBindingClassifications,
803
803
  readAndResetSlackReplyTargetClassifications
804
804
  };
805
- //# sourceMappingURL=responsiveness-probe-JYYAJNID.js.map
805
+ //# sourceMappingURL=responsiveness-probe-7HVQMWP6.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  sessionTranscriptDir
3
- } from "./chunk-I332Y7ZA.js";
3
+ } from "./chunk-HXPYOFFT.js";
4
4
  import "./chunk-DGUM43GV.js";
5
5
 
6
6
  // src/lib/session-auth-dead.ts
@@ -204,4 +204,4 @@ export {
204
204
  decideSessionAuthState,
205
205
  probeSessionAuth
206
206
  };
207
- //# sourceMappingURL=session-auth-dead-75QVSVYA.js.map
207
+ //# sourceMappingURL=session-auth-dead-2KE5HIRM.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@integrity-labs/agt-cli",
3
- "version": "0.28.1115",
3
+ "version": "0.28.1117",
4
4
  "description": "Augmented Team CLI — agent provisioning and management",
5
5
  "type": "module",
6
6
  "engines": {