@controllerai/cli 0.2.21 → 0.2.22

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.
Files changed (39) hide show
  1. package/README.md +6 -3
  2. package/dist/api/client.js +5 -6
  3. package/dist/api/client.js.map +1 -1
  4. package/dist/commands/agent.js +161 -45
  5. package/dist/commands/agent.js.map +1 -1
  6. package/dist/commands/integration.js +28 -2
  7. package/dist/commands/integration.js.map +1 -1
  8. package/dist/commands/skills.js +1 -0
  9. package/dist/commands/skills.js.map +1 -1
  10. package/dist/commands/templateSetup.js +42 -0
  11. package/dist/commands/templateSetup.js.map +1 -0
  12. package/dist/index.js +2 -0
  13. package/dist/index.js.map +1 -1
  14. package/dist/permissionTool.js +1 -1
  15. package/dist/permissionTool.js.map +1 -1
  16. package/package.json +1 -1
  17. package/skills/controllerai-agents/SKILL.md +4 -2
  18. package/skills/controllerai-integration-actions/SKILL.md +21 -16
  19. package/skills/controllerai-start/SKILL.md +2 -0
  20. package/skills/controllerai-start/references/mcp-tool-map.md +3 -1
  21. package/skills/controllerai-template-setup/SKILL.md +132 -0
  22. package/skills/controllerai-template-setup/agents/openai.yaml +4 -0
  23. package/skills/controllerai-workflows/references/command-map.md +1 -0
  24. package/skills/manifest.json +61 -44
  25. package/skills-mcp/controllerai-agents/SKILL.md +5 -5
  26. package/skills-mcp/controllerai-ai-nodes/SKILL.md +0 -1
  27. package/skills-mcp/controllerai-data/SKILL.md +0 -3
  28. package/skills-mcp/controllerai-data/references/data-rails.md +0 -2
  29. package/skills-mcp/controllerai-expressions/SKILL.md +0 -1
  30. package/skills-mcp/controllerai-flow-control/SKILL.md +0 -2
  31. package/skills-mcp/controllerai-flow-control/references/patterns.md +0 -1
  32. package/skills-mcp/controllerai-integration-actions/SKILL.md +20 -19
  33. package/skills-mcp/controllerai-runs/SKILL.md +0 -1
  34. package/skills-mcp/controllerai-start/SKILL.md +2 -0
  35. package/skills-mcp/controllerai-start/references/mcp-tool-map.md +3 -1
  36. package/skills-mcp/controllerai-template-setup/SKILL.md +10 -0
  37. package/skills-mcp/controllerai-triggers/SKILL.md +0 -3
  38. package/skills-mcp/controllerai-workflows/SKILL.md +0 -1
  39. package/skills-mcp/manifest.json +60 -49
package/README.md CHANGED
@@ -44,8 +44,8 @@ For an agent, first decide whether each capability is one ready integration
44
44
  action or needs a workflow. A direct action does not require workflow context:
45
45
 
46
46
  ```sh
47
- cai integration search "send a Slack message"
48
- cai integration actions --integration <integrationSlug> "send message"
47
+ cai integration search "send a Slack message" --agent-attachable
48
+ cai integration actions --integration <integrationSlug> "send message" --agent-attachable
49
49
  cai integration action --integration <integrationSlug> --key <actionKey>
50
50
  cai connection list --integration <integrationSlug>
51
51
  cai connection connect <integrationSlug> --wait
@@ -59,7 +59,10 @@ cai agent tools <agentId>
59
59
 
60
60
  `integration search` includes provider integrations and native workflow actions in one
61
61
  server-ranked list. `integration actions <query>` uses the catalog's global relevance order;
62
- add `--integration <slug>` to list or narrow one integration.
62
+ add `--integration <slug>` to list or narrow one integration. Add `--agent-attachable` to either
63
+ discovery command when selecting a direct agent action. The exact action detail reports whether
64
+ the action is attachable and, for a native registry action, whether it needs a connection; omit
65
+ the connection steps and `agent add-action --connection` when it does not.
63
66
 
64
67
  Ready actions run without per-call approval by default. Add
65
68
  `--require-confirmation` when the operation sends communications, writes or
@@ -11,7 +11,7 @@ const bareRestError = (value) => {
11
11
  return typeof value.error === 'string' ? value.error : '';
12
12
  };
13
13
  const DEFAULT_TIMEOUT = 120_000;
14
- export const APPROVAL_POLL_TIMEOUT_MS = 9 * 60_000;
14
+ export const APPROVAL_POLL_TIMEOUT_MS = null;
15
15
  const APPROVAL_POLL_INITIAL_DELAY_MS = 750;
16
16
  const APPROVAL_POLL_MAX_DELAY_MS = 5_000;
17
17
  const APPROVAL_REQUEST_TIMEOUT_MS = 30_000;
@@ -303,7 +303,7 @@ export class ApiClient {
303
303
  process.stderr.write(`${message}\n`);
304
304
  }
305
305
  async pollBuilderApproval(tool, approvalId) {
306
- const deadline = this.now() + this.approvalPollTimeoutMs;
306
+ const deadline = this.approvalPollTimeoutMs === null ? Infinity : this.now() + this.approvalPollTimeoutMs;
307
307
  let delayMs = APPROVAL_POLL_INITIAL_DELAY_MS;
308
308
  let reportedStatus = 'pending';
309
309
  let reportedTransientFailure = false;
@@ -462,9 +462,7 @@ const decodeCallToolResult = (value, tool) => {
462
462
  detail: { tool },
463
463
  });
464
464
  }
465
- const payload = content
466
- .map(item => (typeof item.text === 'string' ? item.text : ''))
467
- .join('');
465
+ const payload = content.map(item => (typeof item.text === 'string' ? item.text : '')).join('');
468
466
  if (value.isError === true) {
469
467
  throw toolError(payload || 'Tool reported an error', tool);
470
468
  }
@@ -496,7 +494,8 @@ const badApprovalResponse = (message, tool, approvalId) => new CaiError(message,
496
494
  ...(validApprovalId(approvalId) ? { approvalId } : {}),
497
495
  },
498
496
  });
499
- const isApprovalRequiredCandidate = (value) => isObject(value) && Object.prototype.hasOwnProperty.call(value, 'approvalRequired') &&
497
+ const isApprovalRequiredCandidate = (value) => isObject(value) &&
498
+ Object.prototype.hasOwnProperty.call(value, 'approvalRequired') &&
500
499
  value.approvalRequired === true;
501
500
  const parseApprovalRequiredPayload = (value, tool) => {
502
501
  if (!isObject(value)) {
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/api/client.ts"],"names":[],"mappings":"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"}
@@ -18,17 +18,86 @@ export const resolveConfirmationChoice = (opts) => {
18
18
  const confirmationReview = (required) => required
19
19
  ? 'approval required before every run'
20
20
  : 'runs without approval — review writes, messages, deletion, and spend before attaching';
21
- export const directActionToolOp = (input) => ({
22
- op: 'add',
23
- toolType: 'pipedream',
24
- nodeSlug: input.integration,
25
- nodeComponentKey: input.action,
26
- connectionId: input.connectionId,
27
- ...(input.description !== undefined ? { toolDescription: input.description } : {}),
28
- // Never omit this field: the product default is no approval while older
29
- // backend entry points historically defaulted an omitted value to approval.
30
- requiresConfirmation: input.requiresConfirmation,
31
- });
21
+ const slackRouteChoice = (opts) => {
22
+ const hasRouteFlags = opts.slackConnection !== undefined ||
23
+ opts.slackChannel !== undefined ||
24
+ opts.slackChannelName !== undefined;
25
+ if (opts.slack === false) {
26
+ if (hasRouteFlags) {
27
+ throw userError('--no-slack cannot be combined with --slack-* flags.', 'CONFLICTING_INPUT');
28
+ }
29
+ return null;
30
+ }
31
+ if (!hasRouteFlags)
32
+ return undefined;
33
+ if (opts.slackConnection === undefined || opts.slackChannel === undefined) {
34
+ throw userError('Pass --slack-connection and --slack-channel together; --slack-channel-name is optional.', 'SLACK_ROUTE_PAIR_REQUIRED');
35
+ }
36
+ if (!opts.slackChannel.trim() || opts.slackChannelName?.trim() === '') {
37
+ throw userError('Slack channel id and name must not be empty.', 'BAD_SLACK_CHANNEL');
38
+ }
39
+ return {
40
+ connectionId: parsePositiveId(opts.slackConnection, 'slack connectionId'),
41
+ targetType: 'channel',
42
+ channelId: opts.slackChannel.trim(),
43
+ ...(opts.slackChannelName !== undefined ? { channelName: opts.slackChannelName.trim() } : {}),
44
+ };
45
+ };
46
+ const requireSlackApproval = (requiresConfirmation) => {
47
+ if (requiresConfirmation !== true) {
48
+ throw userError('Slack routes only matter for tools that require approval. Pass --require-confirmation ' +
49
+ 'to configure a Slack approval route.', 'SLACK_ROUTE_REQUIRES_CONFIRMATION');
50
+ }
51
+ };
52
+ const slackApprovals = (route) => !route || route.enabled === false ? 'no' : route.channelName || route.channelId || 'no';
53
+ const slackApprovalReview = (route) => {
54
+ if (route === undefined)
55
+ return 'not returned — verify with `cai agent tools`';
56
+ if (!route || route.enabled === false)
57
+ return 'not posted to Slack';
58
+ const channel = route.channelName
59
+ ? `#${route.channelName.replace(/^#/, '')} (${route.channelId})`
60
+ : route.channelId;
61
+ return `${channel ?? route.people?.join(', ') ?? '-'} via connection ${route.connectionId}`;
62
+ };
63
+ const isDirectActionToolType = (toolType) => toolType === 'pipedream' || toolType === 'registry';
64
+ export const directActionToolOp = async (api, input) => {
65
+ const [node, details] = await Promise.all([
66
+ api.rest(`/nodes/${encodeURIComponent(input.integration)}`),
67
+ api.rest('/nodes/component/get', {
68
+ method: 'POST',
69
+ body: { nodeSlug: input.integration, key: input.action },
70
+ }),
71
+ ]);
72
+ if (details?.component?.agentExposable !== true) {
73
+ throw userError(`Action "${input.action}" on integration "${input.integration}" is not attachable to ` +
74
+ 'agents. Control-flow, data, file, agent, AI, and HTTP nodes are never attachable.', 'ACTION_NOT_AGENT_ATTACHABLE');
75
+ }
76
+ if (!isDirectActionToolType(node?.source)) {
77
+ throw userError(`Integration "${input.integration}" returned an unsupported action source; expected ` +
78
+ 'registry or pipedream.', 'BAD_ACTION_SOURCE');
79
+ }
80
+ if (node.authRequired !== true && input.connectionId !== undefined) {
81
+ throw userError(`Action "${input.action}" on integration "${input.integration}" needs no connection. ` +
82
+ 'Omit --connection and retry.', 'ACTION_CONNECTION_NOT_USED');
83
+ }
84
+ if (node.authRequired === true && input.connectionId === undefined) {
85
+ throw userError(`Action "${input.action}" on integration "${input.integration}" requires a connection. ` +
86
+ `Keep this exact action, run \`cai connection connect ${input.integration}\` to authorize ` +
87
+ 'it, then retry with --connection <id>.', 'ACTION_CONNECTION_REQUIRED');
88
+ }
89
+ return {
90
+ op: 'add',
91
+ toolType: node.source,
92
+ nodeSlug: input.integration,
93
+ nodeComponentKey: input.action,
94
+ ...(input.connectionId !== undefined ? { connectionId: input.connectionId } : {}),
95
+ ...(input.description !== undefined ? { toolDescription: input.description } : {}),
96
+ // Never omit this field: the product default is no approval while older
97
+ // backend entry points historically defaulted an omitted value to approval.
98
+ requiresConfirmation: input.requiresConfirmation,
99
+ };
100
+ };
32
101
  const sleep = (ms) => new Promise(resolve => setTimeout(resolve, ms));
33
102
  const parsePositiveId = (raw, label) => {
34
103
  const value = Number(raw);
@@ -149,7 +218,10 @@ const updateDraft = async (api, agentId, patch) => {
149
218
  try {
150
219
  return await api.rest(`/agents/${agentId}/draft`, {
151
220
  method: 'PATCH',
152
- body: { baseUpdatedAt: current.updatedAt, ...patch },
221
+ body: {
222
+ baseUpdatedAt: current.updatedAt,
223
+ ...(typeof patch === 'function' ? await patch() : patch),
224
+ },
153
225
  });
154
226
  }
155
227
  catch (error) {
@@ -576,10 +648,16 @@ export const registerAgent = (program) => {
576
648
  .requiredOption('--flow <flowId>', 'flow exposed to the agent')
577
649
  .option('--description <text>', 'description the model uses when choosing the tool')
578
650
  .option('--require-confirmation', 'pause every invocation for an explicit user approval before the workflow runs', false)
651
+ .option('--slack-connection <connectionId>', 'your active Slack connection; requires --slack-channel and --require-confirmation')
652
+ .option('--slack-channel <channelId>', 'approval channel; requires --slack-connection')
653
+ .option('--slack-channel-name <name>', 'optional approval channel display name')
579
654
  .description('Add a follow-live workflow tool with a backend-generated name to the draft')
580
655
  .action(async (rawId, opts, command) => {
581
656
  const { api } = buildClient(command);
582
657
  const agentId = parsePositiveId(rawId, 'agentId');
658
+ const slackRoute = slackRouteChoice(opts);
659
+ if (slackRoute)
660
+ requireSlackApproval(opts.requireConfirmation);
583
661
  const result = await updateDraft(api, agentId, {
584
662
  toolOps: [
585
663
  {
@@ -591,11 +669,13 @@ export const registerAgent = (program) => {
591
669
  // Workflow tools always follow the latest published workflow release.
592
670
  versionPolicy: 'latest',
593
671
  requiresConfirmation: Boolean(opts.requireConfirmation),
672
+ ...(slackRoute !== undefined ? { slackRoute } : {}),
594
673
  },
595
674
  ],
596
675
  });
597
676
  const added = result.tools.find(tool => tool.workflowId === Number(opts.workflowId) && tool.flowId === opts.flow);
598
- emit({ agentId, tool: added ?? null, liveChanged: false }, () => printKeyValues([
677
+ const slackReview = slackApprovalReview(added?.slackRoute);
678
+ emit({ agentId, tool: added ?? null, liveChanged: false, slackApprovals: slackReview }, () => printKeyValues([
599
679
  ['agentId', agentId],
600
680
  ['toolId', added?.id ?? '-'],
601
681
  ['tool', added?.toolName ?? '(generated by backend)'],
@@ -607,6 +687,7 @@ export const registerAgent = (program) => {
607
687
  ? 'not required'
608
688
  : 'not returned — verify with `cai agent tools`',
609
689
  ],
690
+ ['Slack approvals', slackReview],
610
691
  ['state', 'draft updated — live version unchanged'],
611
692
  ]));
612
693
  });
@@ -615,41 +696,49 @@ export const registerAgent = (program) => {
615
696
  .argument('<agentId>')
616
697
  .requiredOption('--integration <slug>', 'exact slug from `cai integration search`')
617
698
  .requiredOption('--action <key>', 'exact action key from `cai integration actions`')
618
- .requiredOption('--connection <id>', 'active connection for this integration')
699
+ .option('--connection <id>', 'active connection when this integration requires auth')
619
700
  .option('--description <text>', 'when the agent should choose this action')
620
701
  .option('--require-confirmation', 'require approval before each run; default is no approval, so decide for writes or spend', false)
702
+ .option('--slack-connection <connectionId>', 'your active Slack connection; requires --slack-channel and --require-confirmation')
703
+ .option('--slack-channel <channelId>', 'approval channel; requires --slack-connection')
704
+ .option('--slack-channel-name <name>', 'optional approval channel display name')
621
705
  .description('Attach one ready integration action to the draft; explicitly review its confirmation policy')
622
706
  .action(async (rawId, opts, command) => {
623
707
  const { api } = buildClient(command);
624
708
  const agentId = parsePositiveId(rawId, 'agentId');
625
- const connectionId = parsePositiveId(opts.connection, 'connectionId');
709
+ const connectionId = opts.connection === undefined ? undefined : parsePositiveId(opts.connection, 'connectionId');
626
710
  const requiresConfirmation = Boolean(opts.requireConfirmation);
711
+ const slackRoute = slackRouteChoice(opts);
712
+ if (slackRoute)
713
+ requireSlackApproval(requiresConfirmation);
714
+ const toolOp = await directActionToolOp(api, {
715
+ integration: opts.integration,
716
+ action: opts.action,
717
+ connectionId,
718
+ description: opts.description,
719
+ requiresConfirmation,
720
+ });
627
721
  const result = await updateDraft(api, agentId, {
628
- toolOps: [
629
- directActionToolOp({
630
- integration: opts.integration,
631
- action: opts.action,
632
- connectionId,
633
- description: opts.description,
634
- requiresConfirmation,
635
- }),
636
- ],
722
+ toolOps: [{ ...toolOp, ...(slackRoute !== undefined ? { slackRoute } : {}) }],
637
723
  });
638
- const added = result.tools.find(tool => tool.toolType === 'pipedream' &&
724
+ const added = result.tools.find(tool => tool.toolType === toolOp.toolType &&
639
725
  tool.nodeSlug === opts.integration &&
640
726
  tool.nodeComponentKey === opts.action);
727
+ const slackReview = slackApprovalReview(added?.slackRoute);
641
728
  emit({
642
729
  agentId,
643
730
  tool: added ?? null,
644
731
  liveChanged: false,
645
732
  confirmationReview: confirmationReview(requiresConfirmation),
733
+ slackApprovals: slackReview,
646
734
  }, () => printKeyValues([
647
735
  ['agentId', agentId],
648
736
  ['toolId', added?.id ?? '-'],
649
737
  ['integration', opts.integration],
650
738
  ['action', opts.action],
651
- ['connection', connectionId],
739
+ ['connection', connectionId ?? 'not required'],
652
740
  ['confirmation', confirmationReview(requiresConfirmation)],
741
+ ['Slack approvals', slackReview],
653
742
  ['state', 'draft updated — live version unchanged'],
654
743
  ]));
655
744
  });
@@ -661,37 +750,60 @@ export const registerAgent = (program) => {
661
750
  .option('--connection <id>', 'rebind a ready integration action to another connection')
662
751
  .option('--require-confirmation', 'require approval before every invocation')
663
752
  .option('--no-confirmation', 'run without approval; use only after reviewing writes, messages, deletion, and spend')
664
- .description('Update a draft tool; direct-action connection grants are live-bound before republish')
753
+ .option('--slack-connection <connectionId>', 'your active Slack connection; requires --slack-channel and an approval-requiring tool')
754
+ .option('--slack-channel <channelId>', 'approval channel; requires --slack-connection')
755
+ .option('--slack-channel-name <name>', 'optional approval channel display name')
756
+ .option('--no-slack', 'remove Slack approval routing from the draft tool')
757
+ .description('Update a draft tool; action connection grants apply immediately without publishing')
665
758
  .action(async (rawId, opts, command) => {
666
759
  const { api } = buildClient(command);
667
760
  const agentId = parsePositiveId(rawId, 'agentId');
668
761
  const toolId = parsePositiveId(opts.tool, 'toolId');
669
762
  const requiresConfirmation = resolveConfirmationChoice(opts);
763
+ const slackRoute = slackRouteChoice(opts);
764
+ if (slackRoute && requiresConfirmation !== undefined)
765
+ requireSlackApproval(requiresConfirmation);
670
766
  if (opts.description === undefined &&
671
767
  opts.connection === undefined &&
672
- requiresConfirmation === undefined) {
673
- throw userError('Pass --description, --connection, --require-confirmation, or --no-confirmation.', 'NO_CHANGES');
768
+ requiresConfirmation === undefined &&
769
+ slackRoute === undefined) {
770
+ throw userError('Pass --description, --connection, --require-confirmation, --no-confirmation, ' +
771
+ '--slack-connection with --slack-channel, or --no-slack.', 'NO_CHANGES');
674
772
  }
675
- const result = await updateDraft(api, agentId, {
676
- toolOps: [
677
- {
678
- op: 'update',
679
- toolId,
680
- ...(opts.description !== undefined ? { toolDescription: opts.description } : {}),
681
- ...(opts.connection !== undefined
682
- ? { connectionId: parsePositiveId(opts.connection, 'connectionId') }
683
- : {}),
684
- ...(requiresConfirmation !== undefined ? { requiresConfirmation } : {}),
685
- },
686
- ],
773
+ const result = await updateDraft(api, agentId, async () => {
774
+ if (slackRoute && requiresConfirmation === undefined) {
775
+ const currentTools = await api.rest(`/agents/${agentId}/tools`);
776
+ const currentTool = (currentTools ?? []).find(tool => tool.id === toolId);
777
+ if (!currentTool)
778
+ throw userError(`Agent tool ${toolId} was not found.`, 'AGENT_TOOL_NOT_FOUND');
779
+ requireSlackApproval(currentTool.requiresConfirmation);
780
+ }
781
+ return {
782
+ toolOps: [
783
+ {
784
+ op: 'update',
785
+ toolId,
786
+ ...(opts.description !== undefined ? { toolDescription: opts.description } : {}),
787
+ ...(opts.connection !== undefined
788
+ ? { connectionId: parsePositiveId(opts.connection, 'connectionId') }
789
+ : {}),
790
+ ...(requiresConfirmation !== undefined ? { requiresConfirmation } : {}),
791
+ ...(slackRoute !== undefined ? { slackRoute } : {}),
792
+ },
793
+ ],
794
+ };
687
795
  });
688
796
  const updated = result.tools.find(tool => tool.id === toolId);
689
- const liveAuthorizationChanged = opts.connection !== undefined && updated?.toolType === 'pipedream';
797
+ const liveAuthorizationChanged = opts.connection !== undefined && isDirectActionToolType(updated?.toolType);
798
+ const liveSlackRoutingChanged = slackRoute !== undefined;
799
+ const slackReview = slackApprovalReview(updated?.slackRoute);
690
800
  emit({
691
801
  agentId,
692
802
  tool: updated ?? null,
693
- liveChanged: liveAuthorizationChanged,
803
+ liveChanged: liveAuthorizationChanged || liveSlackRoutingChanged,
694
804
  liveAuthorizationChanged,
805
+ ...(liveSlackRoutingChanged ? { liveSlackRoutingChanged } : {}),
806
+ slackApprovals: slackReview,
695
807
  ...(requiresConfirmation !== undefined
696
808
  ? { confirmationReview: confirmationReview(requiresConfirmation) }
697
809
  : {}),
@@ -705,6 +817,7 @@ export const registerAgent = (program) => {
705
817
  ? 'unchanged'
706
818
  : confirmationReview(requiresConfirmation),
707
819
  ],
820
+ ['Slack approvals', slackReview],
708
821
  [
709
822
  'state',
710
823
  liveAuthorizationChanged
@@ -725,7 +838,7 @@ export const registerAgent = (program) => {
725
838
  const currentTools = await api.rest(`/agents/${agentId}/tools`);
726
839
  const removed = (currentTools ?? []).find(tool => tool.id === toolId);
727
840
  const result = await updateDraft(api, agentId, { toolOps: [{ op: 'remove', toolId }] });
728
- const liveAuthorizationRevoked = removed?.toolType === 'pipedream';
841
+ const liveAuthorizationRevoked = isDirectActionToolType(removed?.toolType);
729
842
  emit({
730
843
  agentId,
731
844
  removedToolId: toolId,
@@ -882,7 +995,7 @@ export const registerAgent = (program) => {
882
995
  agent
883
996
  .command('tools')
884
997
  .argument('<agentId>')
885
- .description('List owner draft tools or the published projection visible to a shared user')
998
+ .description('List owner draft tools with Slack approvals, or the published projection visible to a shared user')
886
999
  .action(async (rawId, _opts, command) => {
887
1000
  const { api } = buildClient(command);
888
1001
  const agentId = parsePositiveId(rawId, 'agentId');
@@ -894,6 +1007,7 @@ export const registerAgent = (program) => {
894
1007
  action: tool.nodeComponentKey ?? tool.flowName ?? tool.flowId ?? null,
895
1008
  confirm: Boolean(tool.requiresConfirmation),
896
1009
  connection: tool.connectionId ?? null,
1010
+ slackApprovals: slackApprovals(tool.slackRoute),
897
1011
  }));
898
1012
  emit({ agentId, tools: annotated }, () => printTable([
899
1013
  'id',
@@ -905,6 +1019,7 @@ export const registerAgent = (program) => {
905
1019
  'tier',
906
1020
  'policy',
907
1021
  'confirm',
1022
+ 'slackApprovals',
908
1023
  ], (tools ?? []).map(tool => [
909
1024
  tool.id,
910
1025
  tool.toolType,
@@ -915,6 +1030,7 @@ export const registerAgent = (program) => {
915
1030
  tool.schemaTier ?? '-',
916
1031
  tool.versionPolicy ?? '-',
917
1032
  tool.requiresConfirmation ? 'required' : 'no',
1033
+ slackApprovals(tool.slackRoute),
918
1034
  ])));
919
1035
  });
920
1036
  agent