@integrity-labs/agt-cli 0.28.453 → 0.28.454

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,7 +40,7 @@ import {
40
40
  success,
41
41
  table,
42
42
  warn
43
- } from "../chunk-HYKSLRTJ.js";
43
+ } from "../chunk-23E2T5UT.js";
44
44
  import {
45
45
  AnchorSessionClient,
46
46
  CHANNEL_REGISTRY,
@@ -4830,7 +4830,7 @@ import { execFileSync, execSync } from "child_process";
4830
4830
  import { existsSync as existsSync10, realpathSync as realpathSync2 } from "fs";
4831
4831
  import chalk18 from "chalk";
4832
4832
  import ora16 from "ora";
4833
- var cliVersion = true ? "0.28.453" : "dev";
4833
+ var cliVersion = true ? "0.28.454" : "dev";
4834
4834
  async function fetchLatestVersion() {
4835
4835
  const host2 = getHost();
4836
4836
  if (!host2) return null;
@@ -6002,7 +6002,7 @@ function handleError(err) {
6002
6002
  }
6003
6003
 
6004
6004
  // src/bin/agt.ts
6005
- var cliVersion2 = true ? "0.28.453" : "dev";
6005
+ var cliVersion2 = true ? "0.28.454" : "dev";
6006
6006
  var program = new Command();
6007
6007
  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");
6008
6008
  program.hook("preAction", async (thisCommand, actionCommand) => {
@@ -4910,7 +4910,7 @@ function requireHost() {
4910
4910
  }
4911
4911
 
4912
4912
  // src/lib/api-client.ts
4913
- var agtCliVersion = true ? "0.28.453" : "dev";
4913
+ var agtCliVersion = true ? "0.28.454" : "dev";
4914
4914
  var lastConfigHash = null;
4915
4915
  function setConfigHash(hash) {
4916
4916
  lastConfigHash = hash && hash.length > 0 ? hash : null;
@@ -7411,4 +7411,4 @@ export {
7411
7411
  managerInstallSystemUnitCommand,
7412
7412
  managerUninstallSystemUnitCommand
7413
7413
  };
7414
- //# sourceMappingURL=chunk-HYKSLRTJ.js.map
7414
+ //# sourceMappingURL=chunk-23E2T5UT.js.map
@@ -42,7 +42,7 @@ import {
42
42
  resolveEffectivePinRaw,
43
43
  safeWriteJsonAtomic,
44
44
  setConfigHash
45
- } from "../chunk-HYKSLRTJ.js";
45
+ } from "../chunk-23E2T5UT.js";
46
46
  import {
47
47
  getProjectDir as getProjectDir2,
48
48
  getReadyTasks,
@@ -9949,7 +9949,7 @@ var agentRestartTimezoneInputs = /* @__PURE__ */ new Map();
9949
9949
  var lastVersionCheckAt = 0;
9950
9950
  var VERSION_CHECK_INTERVAL_MS = 5 * 60 * 1e3;
9951
9951
  var lastResponsivenessProbeAt = 0;
9952
- var agtCliVersion = true ? "0.28.453" : "dev";
9952
+ var agtCliVersion = true ? "0.28.454" : "dev";
9953
9953
  function resolveBrewPath(execFileSync2) {
9954
9954
  try {
9955
9955
  const out = execFileSync2("which", ["brew"], { timeout: 5e3 }).toString().trim();
@@ -7633,6 +7633,42 @@ var require__ = __commonJS({
7633
7633
  }
7634
7634
  });
7635
7635
 
7636
+ // ../core/dist/alerts/snooze.js
7637
+ var FIXED_SECONDS;
7638
+ var init_snooze = __esm({
7639
+ "../core/dist/alerts/snooze.js"() {
7640
+ "use strict";
7641
+ FIXED_SECONDS = {
7642
+ "15m": 15 * 60,
7643
+ "1h": 60 * 60,
7644
+ "4h": 4 * 60 * 60
7645
+ };
7646
+ }
7647
+ });
7648
+
7649
+ // ../core/dist/channels/slack-block-kit.js
7650
+ function decodeActionId(actionId) {
7651
+ const m = ACTION_ID_RE.exec(actionId);
7652
+ if (!m)
7653
+ return null;
7654
+ return { callbackId: m[1], token: m[2] };
7655
+ }
7656
+ function isRoutableActionId(actionId) {
7657
+ return decodeActionId(actionId) !== null;
7658
+ }
7659
+ function isLinkButton(element) {
7660
+ return typeof element.url === "string" && element.url.length > 0;
7661
+ }
7662
+ var ACTION_ID_RE, UNROUTABLE_ACTION_ID_MESSAGE;
7663
+ var init_slack_block_kit = __esm({
7664
+ "../core/dist/channels/slack-block-kit.js"() {
7665
+ "use strict";
7666
+ init_snooze();
7667
+ ACTION_ID_RE = /^aug:([0-9a-f-]{36}):([A-Za-z0-9_-]{1,200})$/;
7668
+ UNROUTABLE_ACTION_ID_MESSAGE = "interactive buttons must be created with the `request_buttons` tool \u2014 it mints the `aug:<callback-id>:<token>` action_id that makes a tap routable. A hand-written action_id renders fine but its click is silently dropped: the agent is never notified and the buttons are never swapped for the chosen value. For a non-interactive button, set `url` to make it a link button.";
7669
+ }
7670
+ });
7671
+
7636
7672
  // ../../node_modules/.pnpm/yaml@2.8.4/node_modules/yaml/dist/nodes/identity.js
7637
7673
  var require_identity = __commonJS({
7638
7674
  "../../node_modules/.pnpm/yaml@2.8.4/node_modules/yaml/dist/nodes/identity.js"(exports) {
@@ -22561,7 +22597,7 @@ __export(slack_block_kit_runtime_exports, {
22561
22597
  apiCall: () => apiCall,
22562
22598
  buildAskUserBlocks: () => buildAskUserBlocks,
22563
22599
  createPendingInteraction: () => createPendingInteraction,
22564
- decodeActionId: () => decodeActionId,
22600
+ decodeActionId: () => decodeActionId2,
22565
22601
  encodeActionId: () => encodeActionId2,
22566
22602
  generateOptionToken: () => generateOptionToken,
22567
22603
  getMutedNotifyChannels: () => getMutedNotifyChannels,
@@ -22682,6 +22718,8 @@ function validateActionsBlock(b, path, push) {
22682
22718
  push(`${path}.elements[${i}].action_id`, "button requires a non-empty `action_id`");
22683
22719
  } else if (actionId.length > SLACK_LIMITS.identifierChars) {
22684
22720
  push(`${path}.elements[${i}].action_id`, `max ${SLACK_LIMITS.identifierChars} chars`);
22721
+ } else if (!isRoutableActionId(actionId) && !isLinkButton(el)) {
22722
+ push(`${path}.elements[${i}].action_id`, UNROUTABLE_ACTION_ID_MESSAGE);
22685
22723
  }
22686
22724
  const value = el.value;
22687
22725
  if (value !== void 0) {
@@ -22712,8 +22750,8 @@ function validateTextObject(text, path, maxChars, allowedTypes, push) {
22712
22750
  function encodeActionId2(callbackId, token) {
22713
22751
  return `aug:${callbackId}:${token}`;
22714
22752
  }
22715
- function decodeActionId(actionId) {
22716
- const m = ACTION_ID_RE.exec(actionId);
22753
+ function decodeActionId2(actionId) {
22754
+ const m = ACTION_ID_RE2.exec(actionId);
22717
22755
  if (!m) return null;
22718
22756
  return { callbackId: m[1], token: m[2] };
22719
22757
  }
@@ -22806,11 +22844,12 @@ async function getMutedNotifyChannels(cfg) {
22806
22844
  return [];
22807
22845
  }
22808
22846
  }
22809
- var SLACK_LIMITS, SUPPORTED_BLOCK_TYPES, SUPPORTED_ACTION_ELEMENTS, ACTION_ID_RE;
22847
+ var SLACK_LIMITS, SUPPORTED_BLOCK_TYPES, SUPPORTED_ACTION_ELEMENTS, ACTION_ID_RE2;
22810
22848
  var init_slack_block_kit_runtime = __esm({
22811
22849
  "src/slack-block-kit-runtime.ts"() {
22812
22850
  "use strict";
22813
22851
  init_ask_user_runtime();
22852
+ init_slack_block_kit();
22814
22853
  init_ask_user_runtime();
22815
22854
  SLACK_LIMITS = {
22816
22855
  blocksPerMessage: 50,
@@ -22825,7 +22864,7 @@ var init_slack_block_kit_runtime = __esm({
22825
22864
  };
22826
22865
  SUPPORTED_BLOCK_TYPES = ["header", "section", "divider", "context", "actions"];
22827
22866
  SUPPORTED_ACTION_ELEMENTS = ["button"];
22828
- ACTION_ID_RE = /^aug:([0-9a-f-]{36}):([A-Za-z0-9_-]{1,200})$/;
22867
+ ACTION_ID_RE2 = /^aug:([0-9a-f-]{36}):([A-Za-z0-9_-]{1,200})$/;
22829
22868
  }
22830
22869
  });
22831
22870
 
@@ -31308,12 +31347,8 @@ var compiledCharter = ajv.compile(charterSchema);
31308
31347
  var compiledTools = ajv.compile(toolsSchema);
31309
31348
  var compiledIntegrationMetadata = ajv.compile(integrationMetadataSchema);
31310
31349
 
31311
- // ../core/dist/alerts/snooze.js
31312
- var FIXED_SECONDS = {
31313
- "15m": 15 * 60,
31314
- "1h": 60 * 60,
31315
- "4h": 4 * 60 * 60
31316
- };
31350
+ // ../core/dist/integrations/integration-broker/card-renderer.js
31351
+ init_slack_block_kit();
31317
31352
 
31318
31353
  // ../core/dist/channels/registry.js
31319
31354
  var CHANNEL_REGISTRY = [
@@ -31779,6 +31814,7 @@ var MSTEAMS_SCOPE_PRESETS = {
31779
31814
  };
31780
31815
 
31781
31816
  // ../core/dist/channels/kanban-card-state.js
31817
+ init_slack_block_kit();
31782
31818
  var KANBAN_TERMINAL_STATUSES = /* @__PURE__ */ new Set([
31783
31819
  "done",
31784
31820
  "failed",
@@ -34061,6 +34097,9 @@ var WAITING_KINDS = [
34061
34097
  ];
34062
34098
  var WAITING_KIND_SET = new Set(WAITING_KINDS);
34063
34099
 
34100
+ // ../core/dist/alerts/index.js
34101
+ init_snooze();
34102
+
34064
34103
  // ../core/dist/conversations/metrics.js
34065
34104
  var PERIOD_CONFIG = {
34066
34105
  "24h": { windowMs: 24 * 60 * 60 * 1e3, bucket: "hour" },
@@ -7633,6 +7633,42 @@ var require__ = __commonJS({
7633
7633
  }
7634
7634
  });
7635
7635
 
7636
+ // ../core/dist/alerts/snooze.js
7637
+ var FIXED_SECONDS;
7638
+ var init_snooze = __esm({
7639
+ "../core/dist/alerts/snooze.js"() {
7640
+ "use strict";
7641
+ FIXED_SECONDS = {
7642
+ "15m": 15 * 60,
7643
+ "1h": 60 * 60,
7644
+ "4h": 4 * 60 * 60
7645
+ };
7646
+ }
7647
+ });
7648
+
7649
+ // ../core/dist/channels/slack-block-kit.js
7650
+ function decodeActionId(actionId) {
7651
+ const m = ACTION_ID_RE.exec(actionId);
7652
+ if (!m)
7653
+ return null;
7654
+ return { callbackId: m[1], token: m[2] };
7655
+ }
7656
+ function isRoutableActionId(actionId) {
7657
+ return decodeActionId(actionId) !== null;
7658
+ }
7659
+ function isLinkButton(element) {
7660
+ return typeof element.url === "string" && element.url.length > 0;
7661
+ }
7662
+ var ACTION_ID_RE, UNROUTABLE_ACTION_ID_MESSAGE;
7663
+ var init_slack_block_kit = __esm({
7664
+ "../core/dist/channels/slack-block-kit.js"() {
7665
+ "use strict";
7666
+ init_snooze();
7667
+ ACTION_ID_RE = /^aug:([0-9a-f-]{36}):([A-Za-z0-9_-]{1,200})$/;
7668
+ UNROUTABLE_ACTION_ID_MESSAGE = "interactive buttons must be created with the `request_buttons` tool \u2014 it mints the `aug:<callback-id>:<token>` action_id that makes a tap routable. A hand-written action_id renders fine but its click is silently dropped: the agent is never notified and the buttons are never swapped for the chosen value. For a non-interactive button, set `url` to make it a link button.";
7669
+ }
7670
+ });
7671
+
7636
7672
  // ../../node_modules/.pnpm/yaml@2.8.4/node_modules/yaml/dist/nodes/identity.js
7637
7673
  var require_identity = __commonJS({
7638
7674
  "../../node_modules/.pnpm/yaml@2.8.4/node_modules/yaml/dist/nodes/identity.js"(exports) {
@@ -22561,7 +22597,7 @@ __export(slack_block_kit_runtime_exports, {
22561
22597
  apiCall: () => apiCall,
22562
22598
  buildAskUserBlocks: () => buildAskUserBlocks,
22563
22599
  createPendingInteraction: () => createPendingInteraction,
22564
- decodeActionId: () => decodeActionId,
22600
+ decodeActionId: () => decodeActionId2,
22565
22601
  encodeActionId: () => encodeActionId2,
22566
22602
  generateOptionToken: () => generateOptionToken,
22567
22603
  getMutedNotifyChannels: () => getMutedNotifyChannels,
@@ -22682,6 +22718,8 @@ function validateActionsBlock(b, path, push) {
22682
22718
  push(`${path}.elements[${i}].action_id`, "button requires a non-empty `action_id`");
22683
22719
  } else if (actionId.length > SLACK_LIMITS.identifierChars) {
22684
22720
  push(`${path}.elements[${i}].action_id`, `max ${SLACK_LIMITS.identifierChars} chars`);
22721
+ } else if (!isRoutableActionId(actionId) && !isLinkButton(el)) {
22722
+ push(`${path}.elements[${i}].action_id`, UNROUTABLE_ACTION_ID_MESSAGE);
22685
22723
  }
22686
22724
  const value = el.value;
22687
22725
  if (value !== void 0) {
@@ -22712,8 +22750,8 @@ function validateTextObject(text, path, maxChars, allowedTypes, push) {
22712
22750
  function encodeActionId2(callbackId, token) {
22713
22751
  return `aug:${callbackId}:${token}`;
22714
22752
  }
22715
- function decodeActionId(actionId) {
22716
- const m = ACTION_ID_RE.exec(actionId);
22753
+ function decodeActionId2(actionId) {
22754
+ const m = ACTION_ID_RE2.exec(actionId);
22717
22755
  if (!m) return null;
22718
22756
  return { callbackId: m[1], token: m[2] };
22719
22757
  }
@@ -22806,11 +22844,12 @@ async function getMutedNotifyChannels(cfg) {
22806
22844
  return [];
22807
22845
  }
22808
22846
  }
22809
- var SLACK_LIMITS, SUPPORTED_BLOCK_TYPES, SUPPORTED_ACTION_ELEMENTS, ACTION_ID_RE;
22847
+ var SLACK_LIMITS, SUPPORTED_BLOCK_TYPES, SUPPORTED_ACTION_ELEMENTS, ACTION_ID_RE2;
22810
22848
  var init_slack_block_kit_runtime = __esm({
22811
22849
  "src/slack-block-kit-runtime.ts"() {
22812
22850
  "use strict";
22813
22851
  init_ask_user_runtime();
22852
+ init_slack_block_kit();
22814
22853
  init_ask_user_runtime();
22815
22854
  SLACK_LIMITS = {
22816
22855
  blocksPerMessage: 50,
@@ -22825,7 +22864,7 @@ var init_slack_block_kit_runtime = __esm({
22825
22864
  };
22826
22865
  SUPPORTED_BLOCK_TYPES = ["header", "section", "divider", "context", "actions"];
22827
22866
  SUPPORTED_ACTION_ELEMENTS = ["button"];
22828
- ACTION_ID_RE = /^aug:([0-9a-f-]{36}):([A-Za-z0-9_-]{1,200})$/;
22867
+ ACTION_ID_RE2 = /^aug:([0-9a-f-]{36}):([A-Za-z0-9_-]{1,200})$/;
22829
22868
  }
22830
22869
  });
22831
22870
 
@@ -31610,12 +31649,8 @@ var compiledCharter = ajv.compile(charterSchema);
31610
31649
  var compiledTools = ajv.compile(toolsSchema);
31611
31650
  var compiledIntegrationMetadata = ajv.compile(integrationMetadataSchema);
31612
31651
 
31613
- // ../core/dist/alerts/snooze.js
31614
- var FIXED_SECONDS = {
31615
- "15m": 15 * 60,
31616
- "1h": 60 * 60,
31617
- "4h": 4 * 60 * 60
31618
- };
31652
+ // ../core/dist/integrations/integration-broker/card-renderer.js
31653
+ init_slack_block_kit();
31619
31654
 
31620
31655
  // ../core/dist/channels/registry.js
31621
31656
  var CHANNEL_REGISTRY = [
@@ -32081,6 +32116,7 @@ var MSTEAMS_SCOPE_PRESETS = {
32081
32116
  };
32082
32117
 
32083
32118
  // ../core/dist/channels/kanban-card-state.js
32119
+ init_slack_block_kit();
32084
32120
  var KANBAN_TERMINAL_STATUSES = /* @__PURE__ */ new Set([
32085
32121
  "done",
32086
32122
  "failed",
@@ -34363,6 +34399,9 @@ var WAITING_KINDS = [
34363
34399
  ];
34364
34400
  var WAITING_KIND_SET = new Set(WAITING_KINDS);
34365
34401
 
34402
+ // ../core/dist/alerts/index.js
34403
+ init_snooze();
34404
+
34366
34405
  // ../core/dist/conversations/metrics.js
34367
34406
  var PERIOD_CONFIG = {
34368
34407
  "24h": { windowMs: 24 * 60 * 60 * 1e3, bucket: "hour" },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@integrity-labs/agt-cli",
3
- "version": "0.28.453",
3
+ "version": "0.28.454",
4
4
  "description": "Augmented Team CLI — agent provisioning and management",
5
5
  "type": "module",
6
6
  "engines": {