@controllerai/cli 0.2.21 → 0.2.23

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 +178 -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,100 @@ 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 collectSlackApprover = (value, previous = []) => [
22
+ ...previous,
23
+ value,
24
+ ];
25
+ const slackRouteChoice = (opts) => {
26
+ const hasRouteFlags = opts.slackConnection !== undefined ||
27
+ opts.slackChannel !== undefined ||
28
+ opts.slackChannelName !== undefined ||
29
+ opts.slackApprover !== undefined;
30
+ if (opts.slack === false) {
31
+ if (hasRouteFlags) {
32
+ throw userError('--no-slack cannot be combined with --slack-* flags.', 'CONFLICTING_INPUT');
33
+ }
34
+ return null;
35
+ }
36
+ if (!hasRouteFlags)
37
+ return undefined;
38
+ if (opts.slackConnection === undefined || opts.slackChannel === undefined) {
39
+ throw userError('Pass --slack-connection and --slack-channel together; --slack-channel-name is optional.', 'SLACK_ROUTE_PAIR_REQUIRED');
40
+ }
41
+ if (!opts.slackChannel.trim() || opts.slackChannelName?.trim() === '') {
42
+ throw userError('Slack channel id and name must not be empty.', 'BAD_SLACK_CHANNEL');
43
+ }
44
+ const approvers = opts.slackApprover?.map(value => value.trim());
45
+ if (approvers !== undefined &&
46
+ (approvers.length < 1 ||
47
+ approvers.length > 8 ||
48
+ approvers.some(value => !/^[UW][A-Z0-9]+$/.test(value)))) {
49
+ throw userError('Pass 1–8 Slack user ids (starting with U or W) using repeatable --slack-approver.', 'BAD_SLACK_APPROVERS');
50
+ }
51
+ return {
52
+ connectionId: parsePositiveId(opts.slackConnection, 'slack connectionId'),
53
+ targetType: 'channel',
54
+ channelId: opts.slackChannel.trim(),
55
+ ...(opts.slackChannelName !== undefined ? { channelName: opts.slackChannelName.trim() } : {}),
56
+ ...(approvers !== undefined ? { approvers } : {}),
57
+ };
58
+ };
59
+ const requireSlackApproval = (requiresConfirmation) => {
60
+ if (requiresConfirmation !== true) {
61
+ throw userError('Slack routes only matter for tools that require approval. Pass --require-confirmation ' +
62
+ 'to configure a Slack approval route.', 'SLACK_ROUTE_REQUIRES_CONFIRMATION');
63
+ }
64
+ };
65
+ const slackApprovals = (route) => !route || route.enabled === false ? 'no' : route.channelName || route.channelId || 'no';
66
+ const slackApprovalReview = (route) => {
67
+ if (route === undefined)
68
+ return 'not returned — verify with `cai agent tools`';
69
+ if (!route || route.enabled === false)
70
+ return 'not posted to Slack';
71
+ const channel = route.channelName
72
+ ? `#${route.channelName.replace(/^#/, '')} (${route.channelId})`
73
+ : route.channelId;
74
+ const approvers = route.approvers?.length ? route.approvers.join(', ') : 'connection owner only';
75
+ return `${channel ?? route.people?.join(', ') ?? '-'} via connection ${route.connectionId}; approvers: ${approvers}`;
76
+ };
77
+ const isDirectActionToolType = (toolType) => toolType === 'pipedream' || toolType === 'registry';
78
+ export const directActionToolOp = async (api, input) => {
79
+ const [node, details] = await Promise.all([
80
+ api.rest(`/nodes/${encodeURIComponent(input.integration)}`),
81
+ api.rest('/nodes/component/get', {
82
+ method: 'POST',
83
+ body: { nodeSlug: input.integration, key: input.action },
84
+ }),
85
+ ]);
86
+ if (details?.component?.agentExposable !== true) {
87
+ throw userError(`Action "${input.action}" on integration "${input.integration}" is not attachable to ` +
88
+ 'agents. Control-flow, data, file, agent, AI, and HTTP nodes are never attachable.', 'ACTION_NOT_AGENT_ATTACHABLE');
89
+ }
90
+ if (!isDirectActionToolType(node?.source)) {
91
+ throw userError(`Integration "${input.integration}" returned an unsupported action source; expected ` +
92
+ 'registry or pipedream.', 'BAD_ACTION_SOURCE');
93
+ }
94
+ if (node.authRequired !== true && input.connectionId !== undefined) {
95
+ throw userError(`Action "${input.action}" on integration "${input.integration}" needs no connection. ` +
96
+ 'Omit --connection and retry.', 'ACTION_CONNECTION_NOT_USED');
97
+ }
98
+ if (node.authRequired === true && input.connectionId === undefined) {
99
+ throw userError(`Action "${input.action}" on integration "${input.integration}" requires a connection. ` +
100
+ `Keep this exact action, run \`cai connection connect ${input.integration}\` to authorize ` +
101
+ 'it, then retry with --connection <id>.', 'ACTION_CONNECTION_REQUIRED');
102
+ }
103
+ return {
104
+ op: 'add',
105
+ toolType: node.source,
106
+ nodeSlug: input.integration,
107
+ nodeComponentKey: input.action,
108
+ ...(input.connectionId !== undefined ? { connectionId: input.connectionId } : {}),
109
+ ...(input.description !== undefined ? { toolDescription: input.description } : {}),
110
+ // Never omit this field: the product default is no approval while older
111
+ // backend entry points historically defaulted an omitted value to approval.
112
+ requiresConfirmation: input.requiresConfirmation,
113
+ };
114
+ };
32
115
  const sleep = (ms) => new Promise(resolve => setTimeout(resolve, ms));
33
116
  const parsePositiveId = (raw, label) => {
34
117
  const value = Number(raw);
@@ -149,7 +232,10 @@ const updateDraft = async (api, agentId, patch) => {
149
232
  try {
150
233
  return await api.rest(`/agents/${agentId}/draft`, {
151
234
  method: 'PATCH',
152
- body: { baseUpdatedAt: current.updatedAt, ...patch },
235
+ body: {
236
+ baseUpdatedAt: current.updatedAt,
237
+ ...(typeof patch === 'function' ? await patch() : patch),
238
+ },
153
239
  });
154
240
  }
155
241
  catch (error) {
@@ -576,10 +662,17 @@ export const registerAgent = (program) => {
576
662
  .requiredOption('--flow <flowId>', 'flow exposed to the agent')
577
663
  .option('--description <text>', 'description the model uses when choosing the tool')
578
664
  .option('--require-confirmation', 'pause every invocation for an explicit user approval before the workflow runs', false)
665
+ .option('--slack-connection <connectionId>', 'your active Slack connection; requires --slack-channel and --require-confirmation')
666
+ .option('--slack-channel <channelId>', 'approval channel; requires --slack-connection')
667
+ .option('--slack-channel-name <name>', 'optional approval channel display name')
668
+ .option('--slack-approver <slackUserId>', 'who can approve in Slack; repeat for 1–8 users; requires --slack-channel; defaults to connection owner', collectSlackApprover)
579
669
  .description('Add a follow-live workflow tool with a backend-generated name to the draft')
580
670
  .action(async (rawId, opts, command) => {
581
671
  const { api } = buildClient(command);
582
672
  const agentId = parsePositiveId(rawId, 'agentId');
673
+ const slackRoute = slackRouteChoice(opts);
674
+ if (slackRoute)
675
+ requireSlackApproval(opts.requireConfirmation);
583
676
  const result = await updateDraft(api, agentId, {
584
677
  toolOps: [
585
678
  {
@@ -591,11 +684,13 @@ export const registerAgent = (program) => {
591
684
  // Workflow tools always follow the latest published workflow release.
592
685
  versionPolicy: 'latest',
593
686
  requiresConfirmation: Boolean(opts.requireConfirmation),
687
+ ...(slackRoute !== undefined ? { slackRoute } : {}),
594
688
  },
595
689
  ],
596
690
  });
597
691
  const added = result.tools.find(tool => tool.workflowId === Number(opts.workflowId) && tool.flowId === opts.flow);
598
- emit({ agentId, tool: added ?? null, liveChanged: false }, () => printKeyValues([
692
+ const slackReview = slackApprovalReview(added?.slackRoute);
693
+ emit({ agentId, tool: added ?? null, liveChanged: false, slackApprovals: slackReview }, () => printKeyValues([
599
694
  ['agentId', agentId],
600
695
  ['toolId', added?.id ?? '-'],
601
696
  ['tool', added?.toolName ?? '(generated by backend)'],
@@ -607,6 +702,7 @@ export const registerAgent = (program) => {
607
702
  ? 'not required'
608
703
  : 'not returned — verify with `cai agent tools`',
609
704
  ],
705
+ ['Slack approvals', slackReview],
610
706
  ['state', 'draft updated — live version unchanged'],
611
707
  ]));
612
708
  });
@@ -615,41 +711,50 @@ export const registerAgent = (program) => {
615
711
  .argument('<agentId>')
616
712
  .requiredOption('--integration <slug>', 'exact slug from `cai integration search`')
617
713
  .requiredOption('--action <key>', 'exact action key from `cai integration actions`')
618
- .requiredOption('--connection <id>', 'active connection for this integration')
714
+ .option('--connection <id>', 'active connection when this integration requires auth')
619
715
  .option('--description <text>', 'when the agent should choose this action')
620
716
  .option('--require-confirmation', 'require approval before each run; default is no approval, so decide for writes or spend', false)
717
+ .option('--slack-connection <connectionId>', 'your active Slack connection; requires --slack-channel and --require-confirmation')
718
+ .option('--slack-channel <channelId>', 'approval channel; requires --slack-connection')
719
+ .option('--slack-channel-name <name>', 'optional approval channel display name')
720
+ .option('--slack-approver <slackUserId>', 'who can approve in Slack; repeat for 1–8 users; requires --slack-channel; defaults to connection owner', collectSlackApprover)
621
721
  .description('Attach one ready integration action to the draft; explicitly review its confirmation policy')
622
722
  .action(async (rawId, opts, command) => {
623
723
  const { api } = buildClient(command);
624
724
  const agentId = parsePositiveId(rawId, 'agentId');
625
- const connectionId = parsePositiveId(opts.connection, 'connectionId');
725
+ const connectionId = opts.connection === undefined ? undefined : parsePositiveId(opts.connection, 'connectionId');
626
726
  const requiresConfirmation = Boolean(opts.requireConfirmation);
727
+ const slackRoute = slackRouteChoice(opts);
728
+ if (slackRoute)
729
+ requireSlackApproval(requiresConfirmation);
730
+ const toolOp = await directActionToolOp(api, {
731
+ integration: opts.integration,
732
+ action: opts.action,
733
+ connectionId,
734
+ description: opts.description,
735
+ requiresConfirmation,
736
+ });
627
737
  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
- ],
738
+ toolOps: [{ ...toolOp, ...(slackRoute !== undefined ? { slackRoute } : {}) }],
637
739
  });
638
- const added = result.tools.find(tool => tool.toolType === 'pipedream' &&
740
+ const added = result.tools.find(tool => tool.toolType === toolOp.toolType &&
639
741
  tool.nodeSlug === opts.integration &&
640
742
  tool.nodeComponentKey === opts.action);
743
+ const slackReview = slackApprovalReview(added?.slackRoute);
641
744
  emit({
642
745
  agentId,
643
746
  tool: added ?? null,
644
747
  liveChanged: false,
645
748
  confirmationReview: confirmationReview(requiresConfirmation),
749
+ slackApprovals: slackReview,
646
750
  }, () => printKeyValues([
647
751
  ['agentId', agentId],
648
752
  ['toolId', added?.id ?? '-'],
649
753
  ['integration', opts.integration],
650
754
  ['action', opts.action],
651
- ['connection', connectionId],
755
+ ['connection', connectionId ?? 'not required'],
652
756
  ['confirmation', confirmationReview(requiresConfirmation)],
757
+ ['Slack approvals', slackReview],
653
758
  ['state', 'draft updated — live version unchanged'],
654
759
  ]));
655
760
  });
@@ -661,37 +766,61 @@ export const registerAgent = (program) => {
661
766
  .option('--connection <id>', 'rebind a ready integration action to another connection')
662
767
  .option('--require-confirmation', 'require approval before every invocation')
663
768
  .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')
769
+ .option('--slack-connection <connectionId>', 'your active Slack connection; requires --slack-channel and an approval-requiring tool')
770
+ .option('--slack-channel <channelId>', 'approval channel; requires --slack-connection')
771
+ .option('--slack-channel-name <name>', 'optional approval channel display name')
772
+ .option('--slack-approver <slackUserId>', 'who can approve in Slack; repeat for 1–8 users; requires --slack-channel; defaults to connection owner', collectSlackApprover)
773
+ .option('--no-slack', 'remove Slack approval routing from the draft tool')
774
+ .description('Update a draft tool; action connection grants apply immediately without publishing')
665
775
  .action(async (rawId, opts, command) => {
666
776
  const { api } = buildClient(command);
667
777
  const agentId = parsePositiveId(rawId, 'agentId');
668
778
  const toolId = parsePositiveId(opts.tool, 'toolId');
669
779
  const requiresConfirmation = resolveConfirmationChoice(opts);
780
+ const slackRoute = slackRouteChoice(opts);
781
+ if (slackRoute && requiresConfirmation !== undefined)
782
+ requireSlackApproval(requiresConfirmation);
670
783
  if (opts.description === undefined &&
671
784
  opts.connection === undefined &&
672
- requiresConfirmation === undefined) {
673
- throw userError('Pass --description, --connection, --require-confirmation, or --no-confirmation.', 'NO_CHANGES');
785
+ requiresConfirmation === undefined &&
786
+ slackRoute === undefined) {
787
+ throw userError('Pass --description, --connection, --require-confirmation, --no-confirmation, ' +
788
+ '--slack-connection with --slack-channel, or --no-slack.', 'NO_CHANGES');
674
789
  }
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
- ],
790
+ const result = await updateDraft(api, agentId, async () => {
791
+ if (slackRoute && requiresConfirmation === undefined) {
792
+ const currentTools = await api.rest(`/agents/${agentId}/tools`);
793
+ const currentTool = (currentTools ?? []).find(tool => tool.id === toolId);
794
+ if (!currentTool)
795
+ throw userError(`Agent tool ${toolId} was not found.`, 'AGENT_TOOL_NOT_FOUND');
796
+ requireSlackApproval(currentTool.requiresConfirmation);
797
+ }
798
+ return {
799
+ toolOps: [
800
+ {
801
+ op: 'update',
802
+ toolId,
803
+ ...(opts.description !== undefined ? { toolDescription: opts.description } : {}),
804
+ ...(opts.connection !== undefined
805
+ ? { connectionId: parsePositiveId(opts.connection, 'connectionId') }
806
+ : {}),
807
+ ...(requiresConfirmation !== undefined ? { requiresConfirmation } : {}),
808
+ ...(slackRoute !== undefined ? { slackRoute } : {}),
809
+ },
810
+ ],
811
+ };
687
812
  });
688
813
  const updated = result.tools.find(tool => tool.id === toolId);
689
- const liveAuthorizationChanged = opts.connection !== undefined && updated?.toolType === 'pipedream';
814
+ const liveAuthorizationChanged = opts.connection !== undefined && isDirectActionToolType(updated?.toolType);
815
+ const liveSlackRoutingChanged = slackRoute !== undefined;
816
+ const slackReview = slackApprovalReview(updated?.slackRoute);
690
817
  emit({
691
818
  agentId,
692
819
  tool: updated ?? null,
693
- liveChanged: liveAuthorizationChanged,
820
+ liveChanged: liveAuthorizationChanged || liveSlackRoutingChanged,
694
821
  liveAuthorizationChanged,
822
+ ...(liveSlackRoutingChanged ? { liveSlackRoutingChanged } : {}),
823
+ slackApprovals: slackReview,
695
824
  ...(requiresConfirmation !== undefined
696
825
  ? { confirmationReview: confirmationReview(requiresConfirmation) }
697
826
  : {}),
@@ -705,6 +834,7 @@ export const registerAgent = (program) => {
705
834
  ? 'unchanged'
706
835
  : confirmationReview(requiresConfirmation),
707
836
  ],
837
+ ['Slack approvals', slackReview],
708
838
  [
709
839
  'state',
710
840
  liveAuthorizationChanged
@@ -725,7 +855,7 @@ export const registerAgent = (program) => {
725
855
  const currentTools = await api.rest(`/agents/${agentId}/tools`);
726
856
  const removed = (currentTools ?? []).find(tool => tool.id === toolId);
727
857
  const result = await updateDraft(api, agentId, { toolOps: [{ op: 'remove', toolId }] });
728
- const liveAuthorizationRevoked = removed?.toolType === 'pipedream';
858
+ const liveAuthorizationRevoked = isDirectActionToolType(removed?.toolType);
729
859
  emit({
730
860
  agentId,
731
861
  removedToolId: toolId,
@@ -882,7 +1012,7 @@ export const registerAgent = (program) => {
882
1012
  agent
883
1013
  .command('tools')
884
1014
  .argument('<agentId>')
885
- .description('List owner draft tools or the published projection visible to a shared user')
1015
+ .description('List owner draft tools with Slack approvals, or the published projection visible to a shared user')
886
1016
  .action(async (rawId, _opts, command) => {
887
1017
  const { api } = buildClient(command);
888
1018
  const agentId = parsePositiveId(rawId, 'agentId');
@@ -894,6 +1024,7 @@ export const registerAgent = (program) => {
894
1024
  action: tool.nodeComponentKey ?? tool.flowName ?? tool.flowId ?? null,
895
1025
  confirm: Boolean(tool.requiresConfirmation),
896
1026
  connection: tool.connectionId ?? null,
1027
+ slackApprovals: slackApprovals(tool.slackRoute),
897
1028
  }));
898
1029
  emit({ agentId, tools: annotated }, () => printTable([
899
1030
  'id',
@@ -905,6 +1036,7 @@ export const registerAgent = (program) => {
905
1036
  'tier',
906
1037
  'policy',
907
1038
  'confirm',
1039
+ 'slackApprovals',
908
1040
  ], (tools ?? []).map(tool => [
909
1041
  tool.id,
910
1042
  tool.toolType,
@@ -915,6 +1047,7 @@ export const registerAgent = (program) => {
915
1047
  tool.schemaTier ?? '-',
916
1048
  tool.versionPolicy ?? '-',
917
1049
  tool.requiresConfirmation ? 'required' : 'no',
1050
+ slackApprovals(tool.slackRoute),
918
1051
  ])));
919
1052
  });
920
1053
  agent