@cuylabs/channel-slack-agent-core 0.5.1 → 0.6.0

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 (72) hide show
  1. package/README.md +14 -40
  2. package/dist/{adapter.d.ts → adapter/index.d.ts} +4 -5
  3. package/dist/adapter/index.js +9 -0
  4. package/dist/app-surface.js +5 -7
  5. package/dist/app.d.ts +2 -1
  6. package/dist/app.js +6 -9
  7. package/dist/{assistant.d.ts → assistant/index.d.ts} +4 -4
  8. package/dist/{assistant.js → assistant/index.js} +3 -5
  9. package/dist/{chunk-JMLB7A2V.js → chunk-5NQYLOAW.js} +5 -5
  10. package/dist/{chunk-NIPAN4KA.js → chunk-A2PLAVW6.js} +2 -3
  11. package/dist/chunk-C7VSW4ZM.js +548 -0
  12. package/dist/chunk-ELR6MQD7.js +12 -0
  13. package/dist/{chunk-CYEBGC6G.js → chunk-FNT4TXNQ.js} +5 -5
  14. package/dist/{chunk-DHPD4XH5.js → chunk-NOVWLAVP.js} +1 -9
  15. package/dist/{chunk-M64Z6TYL.js → chunk-P7KK5GQG.js} +7 -6
  16. package/dist/chunk-P7PFQ3SQ.js +396 -0
  17. package/dist/{chunk-IWUYIAY5.js → chunk-QEJ7TAZJ.js} +5 -7
  18. package/dist/{chunk-FDRQOG7Q.js → chunk-TIQGJ52F.js} +13 -14
  19. package/dist/{chunk-WO4BJMF3.js → chunk-VCXPNQRB.js} +5 -5
  20. package/dist/{chunk-BFUPAJON.js → chunk-ZDVD46RT.js} +37 -37
  21. package/dist/context-fragments-CQEDcjYR.d.ts +30 -0
  22. package/dist/express-assistant.d.ts +2 -1
  23. package/dist/express-assistant.js +4 -7
  24. package/dist/express.d.ts +2 -1
  25. package/dist/express.js +3 -6
  26. package/dist/feedback/index.d.ts +1 -0
  27. package/dist/feedback/index.js +10 -0
  28. package/dist/history/index.d.ts +57 -0
  29. package/dist/history/index.js +8 -0
  30. package/dist/index.d.ts +14 -13
  31. package/dist/index.js +63 -160
  32. package/dist/{interactive.d.ts → interactive/index.d.ts} +3 -3
  33. package/dist/{interactive.js → interactive/index.js} +1 -2
  34. package/dist/mcp.js +0 -1
  35. package/dist/{shared.d.ts → shared/index.d.ts} +7 -33
  36. package/dist/{shared.js → shared/index.js} +2 -6
  37. package/dist/socket.d.ts +2 -1
  38. package/dist/socket.js +6 -9
  39. package/dist/source/index.d.ts +154 -0
  40. package/dist/source/index.js +38 -0
  41. package/docs/README.md +11 -0
  42. package/docs/reference/boundary.md +22 -0
  43. package/docs/reference/exports.md +24 -0
  44. package/package.json +27 -51
  45. package/dist/adapter.js +0 -13
  46. package/dist/bolt.d.ts +0 -8
  47. package/dist/bolt.js +0 -10
  48. package/dist/chunk-2SUAW6MV.js +0 -12
  49. package/dist/chunk-645NNJIM.js +0 -12
  50. package/dist/chunk-ANIZ5NT4.js +0 -12
  51. package/dist/chunk-GNXWTKQ6.js +0 -48
  52. package/dist/chunk-HFT2FXJP.js +0 -12
  53. package/dist/chunk-I2KLQ2HA.js +0 -22
  54. package/dist/chunk-K2E6A377.js +0 -12
  55. package/dist/chunk-NDVXBI7Z.js +0 -12
  56. package/dist/chunk-PX4RGO3N.js +0 -12
  57. package/dist/chunk-VHGV66M7.js +0 -12
  58. package/dist/diagnostics.d.ts +0 -1
  59. package/dist/diagnostics.js +0 -10
  60. package/dist/feedback.d.ts +0 -1
  61. package/dist/feedback.js +0 -10
  62. package/dist/history.d.ts +0 -1
  63. package/dist/history.js +0 -10
  64. package/dist/policy.d.ts +0 -1
  65. package/dist/policy.js +0 -10
  66. package/dist/setup.d.ts +0 -1
  67. package/dist/setup.js +0 -10
  68. package/dist/targets.d.ts +0 -1
  69. package/dist/targets.js +0 -10
  70. package/dist/users.d.ts +0 -1
  71. package/dist/users.js +0 -10
  72. /package/dist/{chunk-IXY3BXU5.js → chunk-J6CW2RGO.js} +0 -0
package/dist/express.d.ts CHANGED
@@ -4,7 +4,8 @@ import { AgentTurnSource } from '@cuylabs/agent-core';
4
4
  import { Application } from 'express';
5
5
  import { c as createSlackChannelAdapter } from './adapter-Cmd2C90g.js';
6
6
  import { a as SlackChannelOptions } from './types-BqRzb_Cd.js';
7
- import { CreateSlackBoltAppOptions, SlackDirectAuthOptions, SlackDirectAuthMode } from '@cuylabs/channel-slack/bolt';
7
+ import { CreateSlackBoltAppOptions } from '@cuylabs/channel-slack/transports/http';
8
+ import { SlackDirectAuthOptions, SlackDirectAuthMode } from '@cuylabs/channel-slack/auth';
8
9
  import '@cuylabs/channel-slack/core';
9
10
  import './interactive-o_NZb-Xg.js';
10
11
 
package/dist/express.js CHANGED
@@ -1,11 +1,8 @@
1
1
  import {
2
2
  mountSlackAgent
3
- } from "./chunk-WO4BJMF3.js";
4
- import "./chunk-FDRQOG7Q.js";
5
- import "./chunk-GNXWTKQ6.js";
6
- import "./chunk-DHPD4XH5.js";
7
- import "./chunk-ANIZ5NT4.js";
8
- import "./chunk-I2KLQ2HA.js";
3
+ } from "./chunk-VCXPNQRB.js";
4
+ import "./chunk-TIQGJ52F.js";
5
+ import "./chunk-NOVWLAVP.js";
9
6
  export {
10
7
  mountSlackAgent
11
8
  };
@@ -0,0 +1 @@
1
+ export { RegisterSlackFeedbackOptions, SLACK_FEEDBACK_ACTION_ID, SlackFeedbackBlockOptions, SlackFeedbackButtonConfig, SlackFeedbackContext, SlackFeedbackContextBlock, SlackFeedbackHandler, SlackFeedbackVerdict, createSlackFeedbackBlock, registerSlackFeedbackAction } from '@cuylabs/channel-slack/feedback';
@@ -0,0 +1,10 @@
1
+ import {
2
+ SLACK_FEEDBACK_ACTION_ID,
3
+ createSlackFeedbackBlock,
4
+ registerSlackFeedbackAction
5
+ } from "../chunk-ELR6MQD7.js";
6
+ export {
7
+ SLACK_FEEDBACK_ACTION_ID,
8
+ createSlackFeedbackBlock,
9
+ registerSlackFeedbackAction
10
+ };
@@ -0,0 +1,57 @@
1
+ import { Logger } from '@cuylabs/agent-core';
2
+ import { SlackHistoryUnavailable, SlackSupplementalHistoryVisibilityMode } from '@cuylabs/channel-slack/history';
3
+ import { MountSlackAgentAppTurnRequestContext } from '../app-surface.js';
4
+ import { a as SlackContextFragmentPayload } from '../context-fragments-CQEDcjYR.js';
5
+ import '@slack/bolt';
6
+ import '@slack/web-api';
7
+ import '../options-Uf-qmQKN.js';
8
+ import '@cuylabs/channel-slack/core';
9
+ import '../interactive-o_NZb-Xg.js';
10
+ import '../options-C7OYeNR-.js';
11
+ import '@cuylabs/channel-slack/feedback';
12
+ import '@cuylabs/channel-slack/assistant';
13
+ import '../types-BqRzb_Cd.js';
14
+ import '../types-Crpil4kb.js';
15
+
16
+ interface SlackAgentTurnHistoryOptions {
17
+ enabled: boolean;
18
+ limit: number;
19
+ maxCharacters: number;
20
+ unavailableNoteFormatter?: (issue: SlackHistoryUnavailable) => string | undefined;
21
+ visibilityAllowedUserIds?: readonly string[];
22
+ visibilityMode?: SlackSupplementalHistoryVisibilityMode;
23
+ }
24
+ interface SlackAgentTurnHistoryProfileResolver {
25
+ resolve(options: {
26
+ botToken?: string;
27
+ teamId?: string;
28
+ userId: string;
29
+ }): Promise<{
30
+ displayName?: string;
31
+ }>;
32
+ }
33
+ interface LoadSlackAgentTurnHistoryContextOptions {
34
+ history: SlackAgentTurnHistoryOptions;
35
+ logger?: Pick<Logger, "debug" | "info" | "warn">;
36
+ originChannelId?: string;
37
+ profileResolver?: SlackAgentTurnHistoryProfileResolver;
38
+ request: MountSlackAgentAppTurnRequestContext;
39
+ }
40
+ type SlackAgentTurnHistoryContextResult = {
41
+ fragment?: SlackContextFragmentPayload;
42
+ originChannelMessageCount: number;
43
+ originChannelUnavailableReason?: string;
44
+ originChannelVisibilityOmittedMessageCount: number;
45
+ prompt?: string;
46
+ threadMessageCount: number;
47
+ threadUnavailableReason?: string;
48
+ threadVisibilityOmittedMessageCount: number;
49
+ topLevelChannelMessageCount: number;
50
+ topLevelChannelUnavailableReason?: string;
51
+ topLevelChannelVisibilityOmittedMessageCount: number;
52
+ visibilityOmittedMessageCount: number;
53
+ };
54
+ declare function loadSlackAgentTurnHistoryContext({ history, logger, originChannelId: providedOriginChannelId, profileResolver, request, }: LoadSlackAgentTurnHistoryContextOptions): Promise<SlackAgentTurnHistoryContextResult>;
55
+ declare function emptySlackAgentTurnHistoryContextResult(): SlackAgentTurnHistoryContextResult;
56
+
57
+ export { type LoadSlackAgentTurnHistoryContextOptions, type SlackAgentTurnHistoryContextResult, type SlackAgentTurnHistoryOptions, type SlackAgentTurnHistoryProfileResolver, emptySlackAgentTurnHistoryContextResult, loadSlackAgentTurnHistoryContext };
@@ -0,0 +1,8 @@
1
+ import {
2
+ emptySlackAgentTurnHistoryContextResult,
3
+ loadSlackAgentTurnHistoryContext
4
+ } from "../chunk-P7PFQ3SQ.js";
5
+ export {
6
+ emptySlackAgentTurnHistoryContextResult,
7
+ loadSlackAgentTurnHistoryContext
8
+ };
package/dist/index.d.ts CHANGED
@@ -1,22 +1,17 @@
1
- export { ExtractSlackMessageTextOptions, RawSlackActionTokenPayload, RawSlackAppMentionPayload, RawSlackAssistantThreadPayload, RawSlackMessagePayload, SlackActivityInfo, SlackAmbientTurnContext, SlackAssistantStatusUpdate, SlackAssistantSuggestedPrompt, SlackAssistantSuggestedPrompts, SlackAssistantTaskDisplayMode, SlackAssistantThreadContext, SlackAssistantUtilities, SlackAuthContext, SlackChannelType, SlackChatStreamStartArgs, SlackMessageAuthorshipOptions, SlackMessageFormatter, SlackMessageFormattingOptions, SlackMessageTextPayload, SlackThreadStatusSetter, SlackTurnPreparation, SlackTurnRequestContext, SlackUserIdentity, currentSlackTurnContext, extractSlackActionToken, extractSlackAttachmentsText, extractSlackAuthContext, extractSlackBlocksText, extractSlackMessageText, extractSlackUserIdentity, formatSlackAttributedFollowUp, isProcessableMessage, markdownToSlackMrkdwn, parseSlackMentionActivity, parseSlackMessageActivity, resolveSlackChannelType, resolveSlackMessageFormatter, resolveThreadAwareSlackSessionId, runWithSlackTurnContext, stripLeadingMentions } from '@cuylabs/channel-slack/core';
2
- export { S as SlackApprovalRequest, a as SlackEventInteractiveRequestHandler, b as SlackHumanInputRequest, c as SlackInteractiveMessage, d as SlackInteractiveMessageRef, e as SlackInteractiveRequest, f as SlackInteractiveRequestBaseContext, g as SlackInteractiveRequestContext, h as SlackInteractiveRequestHandler, i as SlackInteractiveRequestKind, j as SlackInteractiveResponder } from './interactive-o_NZb-Xg.js';
3
- export { DEFAULT_SLACK_CONTEXT_FRAGMENT_KEY, SlackChatStream, SlackContextFragmentMiddlewareOptions, SlackContextFragmentPayload, SlackContextFragmentResolver, SlackContextFragmentResolverContext, SlackResponseSink, SlackStreamChunk, SlackStreamTaskStatus, UnsupportedSlackInteractiveRequestError, bridgeAgentEventsToSlack, createSlackContextFragmentMiddleware } from './shared.js';
1
+ export { D as DEFAULT_SLACK_CONTEXT_FRAGMENT_KEY, S as SlackContextFragmentMiddlewareOptions, a as SlackContextFragmentPayload, b as SlackContextFragmentResolver, c as SlackContextFragmentResolverContext, d as createSlackContextFragmentMiddleware } from './context-fragments-CQEDcjYR.js';
2
+ export { SlackChatStream, SlackResponseSink, SlackStreamChunk, SlackStreamTaskStatus, UnsupportedSlackInteractiveRequestError, bridgeAgentEventsToSlack } from './shared/index.js';
4
3
  export { S as SlackEventBridgeOptions, r as resolveSlackEventBridgeOptions } from './options-C7OYeNR-.js';
5
- export * from '@cuylabs/channel-slack/bolt';
4
+ export { S as SlackApprovalRequest, a as SlackEventInteractiveRequestHandler, b as SlackHumanInputRequest, c as SlackInteractiveMessage, d as SlackInteractiveMessageRef, e as SlackInteractiveRequest, f as SlackInteractiveRequestBaseContext, g as SlackInteractiveRequestContext, h as SlackInteractiveRequestHandler, i as SlackInteractiveRequestKind, j as SlackInteractiveResponder } from './interactive-o_NZb-Xg.js';
6
5
  export { c as createSlackChannelAdapter } from './adapter-Cmd2C90g.js';
7
6
  export { S as SlackChannelAdapter, a as SlackChannelOptions, b as SlackSessionStrategy, c as SlackStreamingMode, d as SlackToolStartEvent } from './types-BqRzb_Cd.js';
8
- export { SlackSessionMap, createSlackSessionMap } from './adapter.js';
9
- export { createSlackAssistantBridge } from './assistant.js';
7
+ export { SlackSessionMap, createSlackSessionMap } from './adapter/index.js';
8
+ export { createSlackAssistantBridge } from './assistant/index.js';
10
9
  export { A as AssistantLifecycleArgs, a as AssistantThreadStartedArgs, C as CreateSlackAssistantBridgeOptions, M as MaybePromise, S as SlackAssistantBridge, b as SlackAssistantFeedbackConfig, c as SlackAssistantSessionStrategy, d as SlackAssistantStatusContext, e as SlackAssistantThreadContextStoreLike, f as SlackAssistantThreadStartedContext, g as SlackAssistantTurnPreparation, h as SlackAssistantUserMessageContext, r as resolveAssistantSessionId } from './options-Uf-qmQKN.js';
11
10
  export { ParsedAssistantUserMessage, createSlackAssistantThreadContextStore, parseSlackMessageActivityFromMessageEvent } from '@cuylabs/channel-slack/assistant';
12
- export { CreateSlackSupplementalHistoryVisibilityPolicyOptions, FormatSlackHistoryForPromptOptions, LoadSlackTurnHistoryContextOptions, ReadSlackChannelHistoryOptions, ReadSlackThreadHistoryOptions, SlackAssistantSurfaceThreadRootNormalization, SlackAssistantSurfaceThreadRootNormalizationContext, SlackContextFragmentBudgetBehavior, SlackContextFragmentKind, SlackContextFragmentLifetime, SlackContextFragmentPlacement, SlackContextFragmentRole, SlackHistoryAuthorFormatter, SlackHistoryAuthorResolutionErrorContext, SlackHistoryAuthorResolver, SlackHistoryAuthorResolverContext, SlackHistoryContextSource, SlackHistoryMessage, SlackHistoryMessageRole, SlackHistoryPage, SlackHistoryReaderClient, SlackHistoryUnavailable, SlackSessionTranscriptInspector, SlackSupplementalHistoryInclusionDecision, SlackSupplementalHistoryInclusionReason, SlackSupplementalHistoryInclusionSource, SlackSupplementalHistoryPolicy, SlackSupplementalHistoryPolicyRequest, SlackSupplementalHistoryVisibilityContext, SlackSupplementalHistoryVisibilityDecision, SlackSupplementalHistoryVisibilityErrorContext, SlackSupplementalHistoryVisibilityMode, SlackSupplementalHistoryVisibilityPolicy, SlackTurnHistoryContextResult, createSlackSupplementalHistoryPolicy, createSlackSupplementalHistoryVisibilityPolicy, formatSlackHistoryForPrompt, loadSlackTurnHistoryContext, readSlackChannelHistory, readSlackThreadHistory } from '@cuylabs/channel-slack/history';
11
+ export { LoadSlackAgentTurnHistoryContextOptions, SlackAgentTurnHistoryContextResult, SlackAgentTurnHistoryOptions, SlackAgentTurnHistoryProfileResolver, emptySlackAgentTurnHistoryContextResult, loadSlackAgentTurnHistoryContext } from './history/index.js';
13
12
  export { S as SlackInteractiveActionIds, a as SlackInteractiveActor, b as SlackInteractiveApprovalRequest, c as SlackInteractiveController, d as SlackInteractiveControllerOptions, e as SlackInteractiveHumanInputRequest, f as SlackInteractiveMessageTarget, g as SlackInteractivePendingWaiter, h as SlackInteractivePostedMessage, i as SlackInteractiveRequestRecord, j as SlackInteractiveRequestStatus, k as SlackInteractiveRequestStore, l as SlackInteractiveRequestWaitOptions, m as SlackInteractiveResolution, n as SlackInteractiveStoredRequest } from './types-Crpil4kb.js';
14
- export { buildApprovalRequestMessage, buildHumanInputModal, buildHumanInputRequestMessage, buildResolvedMessage, cloneRecord, createInMemorySlackInteractiveRequestStore, createSlackInteractiveController, decodeActionValue, encodeActionValue, nowIso } from './interactive.js';
15
- export * from '@cuylabs/channel-slack/policy';
16
- export * from '@cuylabs/channel-slack/users';
17
- export * from '@cuylabs/channel-slack/diagnostics';
18
- export * from '@cuylabs/channel-slack/setup';
19
- export * from '@cuylabs/channel-slack/targets';
13
+ export { buildApprovalRequestMessage, buildHumanInputModal, buildHumanInputRequestMessage, buildResolvedMessage, cloneRecord, createInMemorySlackInteractiveRequestStore, createSlackInteractiveController, decodeActionValue, encodeActionValue, nowIso } from './interactive/index.js';
14
+ export { InspectSlackTurnStatusVisibilityOptions, ResolvedSlackTurnStatusVisibilityOptions, RouteSlackAgentEventOptions, SlackActiveToolCall, SlackAgentEventQueue, SlackAgentEventQueueState, SlackSubagentCompletionMessage, SlackSubagentCompletionMessageFormatterOptions, SlackSubagentCompletionNotifierOptions, SlackSubagentCompletionPoster, SlackSubagentCompletionRun, SlackSubagentCompletionSlackContext, SlackSubagentCompletionTurnContext, SlackTurnActivityState, SlackTurnPhase, SlackTurnStatusVisibilityOptions, SlackTurnStatusVisibilityState, SlackTurnStatusVisibilityWarning, SlackTypedApprovalAction, coalesceSlackAgentEvents, createSlackSubagentCompletionNotifier, formatDefaultSlackSubagentCompletionMessage, immediateSlackTextResponse, inspectSlackTurnStatusVisibility, isAbortLikeError, isRunningAgentTurnError, isSlackCancelMessage, isSlackSubagentTerminalEvent, isSlackTerminalTurnPhase, isSlackWaitingForHumanTurnPhase, recordSlackTurnActivity, resolveSlackTurnStatusVisibilityOptions, resolveSlackTypedApprovalAction, routeSlackAgentEvent, shouldInspectSlackTurnStatusVisibility, shouldQueueSlackAgentEvent } from './source/index.js';
20
15
  export { MountSlackAgentOptions, MountSlackAgentResult, mountSlackAgent } from './express.js';
21
16
  export { MountSlackAssistantAgentOptions, MountSlackAssistantAgentResult, mountSlackAssistantAgent } from './express-assistant.js';
22
17
  export { MountSlackAgentAppSocketOptions, MountSlackAgentAppSocketResult, MountSlackAssistantAgentSocketOptions, MountSlackAssistantAgentSocketResult, mountSlackAgentAppSocket, mountSlackAssistantAgentSocket } from './socket.js';
@@ -24,9 +19,15 @@ export { MountSlackAgentAppOptions, MountSlackAgentAppResult, mountSlackAgentApp
24
19
  export { CreateSlackMcpServerConfigOptions, SLACK_MCP_URL, createSlackMcpServerConfig } from './mcp.js';
25
20
  export { MountSlackAgentAppTurnRequestContext } from './app-surface.js';
26
21
  import '@cuylabs/agent-core';
22
+ import '@cuylabs/channel-slack/core';
27
23
  import '@slack/bolt';
28
24
  import '@slack/web-api';
29
25
  import '@cuylabs/channel-slack/feedback';
26
+ import '@cuylabs/channel-slack/history';
27
+ import '@cuylabs/agent-core/dispatch';
30
28
  import 'node:http';
31
29
  import 'express';
30
+ import '@cuylabs/channel-slack/transports/http';
31
+ import '@cuylabs/channel-slack/auth';
32
+ import '@cuylabs/channel-slack/transports/socket';
32
33
  import '@cuylabs/agent-core/mcp';
package/dist/index.js CHANGED
@@ -1,16 +1,7 @@
1
1
  import {
2
- mountSlackAgentAppSocket,
3
- mountSlackAssistantAgentSocket
4
- } from "./chunk-IWUYIAY5.js";
5
- import {
6
- targets_exports
7
- } from "./chunk-K2E6A377.js";
8
- import {
9
- users_exports
10
- } from "./chunk-HFT2FXJP.js";
11
- import {
12
- history_exports
13
- } from "./chunk-PX4RGO3N.js";
2
+ emptySlackAgentTurnHistoryContextResult,
3
+ loadSlackAgentTurnHistoryContext
4
+ } from "./chunk-P7PFQ3SQ.js";
14
5
  import {
15
6
  buildApprovalRequestMessage,
16
7
  buildHumanInputModal,
@@ -22,148 +13,64 @@ import {
22
13
  decodeActionValue,
23
14
  encodeActionValue,
24
15
  nowIso
25
- } from "./chunk-IXY3BXU5.js";
26
- import {
27
- SLACK_MCP_URL,
28
- createSlackMcpServerConfig
29
- } from "./chunk-RFHXERNL.js";
30
- import {
31
- policy_exports
32
- } from "./chunk-2SUAW6MV.js";
33
- import {
34
- setup_exports
35
- } from "./chunk-645NNJIM.js";
16
+ } from "./chunk-J6CW2RGO.js";
36
17
  import {
37
18
  DEFAULT_SLACK_CONTEXT_FRAGMENT_KEY,
38
19
  createSlackContextFragmentMiddleware
39
- } from "./chunk-NIPAN4KA.js";
20
+ } from "./chunk-A2PLAVW6.js";
21
+ import {
22
+ coalesceSlackAgentEvents,
23
+ createSlackSubagentCompletionNotifier,
24
+ formatDefaultSlackSubagentCompletionMessage,
25
+ immediateSlackTextResponse,
26
+ inspectSlackTurnStatusVisibility,
27
+ isAbortLikeError,
28
+ isRunningAgentTurnError,
29
+ isSlackCancelMessage,
30
+ isSlackSubagentTerminalEvent,
31
+ isSlackTerminalTurnPhase,
32
+ isSlackWaitingForHumanTurnPhase,
33
+ recordSlackTurnActivity,
34
+ resolveSlackTurnStatusVisibilityOptions,
35
+ resolveSlackTypedApprovalAction,
36
+ routeSlackAgentEvent,
37
+ shouldInspectSlackTurnStatusVisibility,
38
+ shouldQueueSlackAgentEvent
39
+ } from "./chunk-C7VSW4ZM.js";
40
40
  import {
41
41
  mountSlackAgentApp
42
- } from "./chunk-CYEBGC6G.js";
43
- import "./chunk-M64Z6TYL.js";
44
- import {
45
- diagnostics_exports
46
- } from "./chunk-NDVXBI7Z.js";
42
+ } from "./chunk-FNT4TXNQ.js";
47
43
  import {
48
44
  mountSlackAssistantAgent
49
- } from "./chunk-JMLB7A2V.js";
45
+ } from "./chunk-5NQYLOAW.js";
46
+ import {
47
+ mountSlackAgent
48
+ } from "./chunk-VCXPNQRB.js";
49
+ import {
50
+ SLACK_MCP_URL,
51
+ createSlackMcpServerConfig
52
+ } from "./chunk-RFHXERNL.js";
53
+ import {
54
+ mountSlackAgentAppSocket,
55
+ mountSlackAssistantAgentSocket
56
+ } from "./chunk-QEJ7TAZJ.js";
57
+ import "./chunk-P7KK5GQG.js";
50
58
  import {
51
59
  createSlackAssistantBridge,
52
60
  createSlackAssistantThreadContextStore,
53
61
  parseSlackMessageActivityFromMessageEvent,
54
62
  resolveAssistantSessionId
55
- } from "./chunk-BFUPAJON.js";
56
- import "./chunk-VHGV66M7.js";
57
- import {
58
- mountSlackAgent
59
- } from "./chunk-WO4BJMF3.js";
63
+ } from "./chunk-ZDVD46RT.js";
64
+ import "./chunk-ELR6MQD7.js";
60
65
  import {
61
66
  createSlackChannelAdapter,
62
- createSlackSessionMap,
63
- resolveThreadAwareSlackSessionId
64
- } from "./chunk-FDRQOG7Q.js";
65
- import {
66
- extractSlackActionToken,
67
- extractSlackAttachmentsText,
68
- extractSlackAuthContext,
69
- extractSlackBlocksText,
70
- extractSlackMessageText,
71
- extractSlackUserIdentity,
72
- isProcessableMessage,
73
- markdownToSlackMrkdwn,
74
- parseSlackMentionActivity,
75
- parseSlackMessageActivity,
76
- resolveSlackChannelType,
77
- resolveSlackMessageFormatter,
78
- stripLeadingMentions
79
- } from "./chunk-GNXWTKQ6.js";
67
+ createSlackSessionMap
68
+ } from "./chunk-TIQGJ52F.js";
80
69
  import {
81
70
  UnsupportedSlackInteractiveRequestError,
82
71
  bridgeAgentEventsToSlack,
83
- currentSlackTurnContext,
84
- resolveSlackEventBridgeOptions,
85
- runWithSlackTurnContext
86
- } from "./chunk-DHPD4XH5.js";
87
- import {
88
- bolt_exports
89
- } from "./chunk-ANIZ5NT4.js";
90
- import {
91
- __export,
92
- __reExport
93
- } from "./chunk-I2KLQ2HA.js";
94
-
95
- // src/index.ts
96
- var index_exports = {};
97
- __export(index_exports, {
98
- DEFAULT_SLACK_CONTEXT_FRAGMENT_KEY: () => DEFAULT_SLACK_CONTEXT_FRAGMENT_KEY,
99
- SLACK_MCP_URL: () => SLACK_MCP_URL,
100
- UnsupportedSlackInteractiveRequestError: () => UnsupportedSlackInteractiveRequestError,
101
- bridgeAgentEventsToSlack: () => bridgeAgentEventsToSlack,
102
- buildApprovalRequestMessage: () => buildApprovalRequestMessage,
103
- buildHumanInputModal: () => buildHumanInputModal,
104
- buildHumanInputRequestMessage: () => buildHumanInputRequestMessage,
105
- buildResolvedMessage: () => buildResolvedMessage,
106
- cloneRecord: () => cloneRecord,
107
- createInMemorySlackInteractiveRequestStore: () => createInMemorySlackInteractiveRequestStore,
108
- createSlackAssistantBridge: () => createSlackAssistantBridge,
109
- createSlackAssistantThreadContextStore: () => createSlackAssistantThreadContextStore,
110
- createSlackChannelAdapter: () => createSlackChannelAdapter,
111
- createSlackContextFragmentMiddleware: () => createSlackContextFragmentMiddleware,
112
- createSlackInteractiveController: () => createSlackInteractiveController,
113
- createSlackMcpServerConfig: () => createSlackMcpServerConfig,
114
- createSlackSessionMap: () => createSlackSessionMap,
115
- createSlackSupplementalHistoryPolicy: () => history_exports.createSlackSupplementalHistoryPolicy,
116
- createSlackSupplementalHistoryVisibilityPolicy: () => history_exports.createSlackSupplementalHistoryVisibilityPolicy,
117
- currentSlackTurnContext: () => currentSlackTurnContext,
118
- decodeActionValue: () => decodeActionValue,
119
- encodeActionValue: () => encodeActionValue,
120
- extractSlackActionToken: () => extractSlackActionToken,
121
- extractSlackAttachmentsText: () => extractSlackAttachmentsText,
122
- extractSlackAuthContext: () => extractSlackAuthContext,
123
- extractSlackBlocksText: () => extractSlackBlocksText,
124
- extractSlackMessageText: () => extractSlackMessageText,
125
- extractSlackUserIdentity: () => extractSlackUserIdentity,
126
- formatSlackAttributedFollowUp: () => formatSlackAttributedFollowUp,
127
- formatSlackHistoryForPrompt: () => history_exports.formatSlackHistoryForPrompt,
128
- isProcessableMessage: () => isProcessableMessage,
129
- loadSlackTurnHistoryContext: () => history_exports.loadSlackTurnHistoryContext,
130
- markdownToSlackMrkdwn: () => markdownToSlackMrkdwn,
131
- mountSlackAgent: () => mountSlackAgent,
132
- mountSlackAgentApp: () => mountSlackAgentApp,
133
- mountSlackAgentAppSocket: () => mountSlackAgentAppSocket,
134
- mountSlackAssistantAgent: () => mountSlackAssistantAgent,
135
- mountSlackAssistantAgentSocket: () => mountSlackAssistantAgentSocket,
136
- nowIso: () => nowIso,
137
- parseSlackMentionActivity: () => parseSlackMentionActivity,
138
- parseSlackMessageActivity: () => parseSlackMessageActivity,
139
- parseSlackMessageActivityFromMessageEvent: () => parseSlackMessageActivityFromMessageEvent,
140
- readSlackChannelHistory: () => history_exports.readSlackChannelHistory,
141
- readSlackThreadHistory: () => history_exports.readSlackThreadHistory,
142
- resolveAssistantSessionId: () => resolveAssistantSessionId,
143
- resolveSlackChannelType: () => resolveSlackChannelType,
144
- resolveSlackEventBridgeOptions: () => resolveSlackEventBridgeOptions,
145
- resolveSlackMessageFormatter: () => resolveSlackMessageFormatter,
146
- resolveThreadAwareSlackSessionId: () => resolveThreadAwareSlackSessionId,
147
- runWithSlackTurnContext: () => runWithSlackTurnContext,
148
- stripLeadingMentions: () => stripLeadingMentions
149
- });
150
-
151
- // src/shared/follow-up.ts
152
- import { formatSlackAttributedFollowUp } from "@cuylabs/channel-slack/core";
153
-
154
- // src/index.ts
155
- __reExport(index_exports, bolt_exports);
156
- __reExport(index_exports, policy_exports);
157
- __reExport(index_exports, users_exports);
158
- __reExport(index_exports, diagnostics_exports);
159
- __reExport(index_exports, setup_exports);
160
- __reExport(index_exports, targets_exports);
161
- var export_createSlackSupplementalHistoryPolicy = history_exports.createSlackSupplementalHistoryPolicy;
162
- var export_createSlackSupplementalHistoryVisibilityPolicy = history_exports.createSlackSupplementalHistoryVisibilityPolicy;
163
- var export_formatSlackHistoryForPrompt = history_exports.formatSlackHistoryForPrompt;
164
- var export_loadSlackTurnHistoryContext = history_exports.loadSlackTurnHistoryContext;
165
- var export_readSlackChannelHistory = history_exports.readSlackChannelHistory;
166
- var export_readSlackThreadHistory = history_exports.readSlackThreadHistory;
72
+ resolveSlackEventBridgeOptions
73
+ } from "./chunk-NOVWLAVP.js";
167
74
  export {
168
75
  DEFAULT_SLACK_CONTEXT_FRAGMENT_KEY,
169
76
  SLACK_MCP_URL,
@@ -174,6 +81,7 @@ export {
174
81
  buildHumanInputRequestMessage,
175
82
  buildResolvedMessage,
176
83
  cloneRecord,
84
+ coalesceSlackAgentEvents,
177
85
  createInMemorySlackInteractiveRequestStore,
178
86
  createSlackAssistantBridge,
179
87
  createSlackAssistantThreadContextStore,
@@ -182,38 +90,33 @@ export {
182
90
  createSlackInteractiveController,
183
91
  createSlackMcpServerConfig,
184
92
  createSlackSessionMap,
185
- export_createSlackSupplementalHistoryPolicy as createSlackSupplementalHistoryPolicy,
186
- export_createSlackSupplementalHistoryVisibilityPolicy as createSlackSupplementalHistoryVisibilityPolicy,
187
- currentSlackTurnContext,
93
+ createSlackSubagentCompletionNotifier,
188
94
  decodeActionValue,
95
+ emptySlackAgentTurnHistoryContextResult,
189
96
  encodeActionValue,
190
- extractSlackActionToken,
191
- extractSlackAttachmentsText,
192
- extractSlackAuthContext,
193
- extractSlackBlocksText,
194
- extractSlackMessageText,
195
- extractSlackUserIdentity,
196
- formatSlackAttributedFollowUp,
197
- export_formatSlackHistoryForPrompt as formatSlackHistoryForPrompt,
198
- isProcessableMessage,
199
- export_loadSlackTurnHistoryContext as loadSlackTurnHistoryContext,
200
- markdownToSlackMrkdwn,
97
+ formatDefaultSlackSubagentCompletionMessage,
98
+ immediateSlackTextResponse,
99
+ inspectSlackTurnStatusVisibility,
100
+ isAbortLikeError,
101
+ isRunningAgentTurnError,
102
+ isSlackCancelMessage,
103
+ isSlackSubagentTerminalEvent,
104
+ isSlackTerminalTurnPhase,
105
+ isSlackWaitingForHumanTurnPhase,
106
+ loadSlackAgentTurnHistoryContext,
201
107
  mountSlackAgent,
202
108
  mountSlackAgentApp,
203
109
  mountSlackAgentAppSocket,
204
110
  mountSlackAssistantAgent,
205
111
  mountSlackAssistantAgentSocket,
206
112
  nowIso,
207
- parseSlackMentionActivity,
208
- parseSlackMessageActivity,
209
113
  parseSlackMessageActivityFromMessageEvent,
210
- export_readSlackChannelHistory as readSlackChannelHistory,
211
- export_readSlackThreadHistory as readSlackThreadHistory,
114
+ recordSlackTurnActivity,
212
115
  resolveAssistantSessionId,
213
- resolveSlackChannelType,
214
116
  resolveSlackEventBridgeOptions,
215
- resolveSlackMessageFormatter,
216
- resolveThreadAwareSlackSessionId,
217
- runWithSlackTurnContext,
218
- stripLeadingMentions
117
+ resolveSlackTurnStatusVisibilityOptions,
118
+ resolveSlackTypedApprovalAction,
119
+ routeSlackAgentEvent,
120
+ shouldInspectSlackTurnStatusVisibility,
121
+ shouldQueueSlackAgentEvent
219
122
  };
@@ -1,8 +1,8 @@
1
- import { i as SlackInteractiveRequestRecord, k as SlackInteractiveRequestStore, b as SlackInteractiveApprovalRequest, S as SlackInteractiveActionIds, e as SlackInteractiveHumanInputRequest, m as SlackInteractiveResolution, d as SlackInteractiveControllerOptions, c as SlackInteractiveController } from './types-Crpil4kb.js';
2
- export { a as SlackInteractiveActor, f as SlackInteractiveMessageTarget, g as SlackInteractivePendingWaiter, h as SlackInteractivePostedMessage, j as SlackInteractiveRequestStatus, l as SlackInteractiveRequestWaitOptions, n as SlackInteractiveStoredRequest } from './types-Crpil4kb.js';
1
+ import { i as SlackInteractiveRequestRecord, k as SlackInteractiveRequestStore, b as SlackInteractiveApprovalRequest, S as SlackInteractiveActionIds, e as SlackInteractiveHumanInputRequest, m as SlackInteractiveResolution, d as SlackInteractiveControllerOptions, c as SlackInteractiveController } from '../types-Crpil4kb.js';
2
+ export { a as SlackInteractiveActor, f as SlackInteractiveMessageTarget, g as SlackInteractivePendingWaiter, h as SlackInteractivePostedMessage, j as SlackInteractiveRequestStatus, l as SlackInteractiveRequestWaitOptions, n as SlackInteractiveStoredRequest } from '../types-Crpil4kb.js';
3
3
  import '@cuylabs/agent-core';
4
4
  import '@slack/bolt';
5
- import './interactive-o_NZb-Xg.js';
5
+ import '../interactive-o_NZb-Xg.js';
6
6
  import '@cuylabs/channel-slack/core';
7
7
 
8
8
  declare function createInMemorySlackInteractiveRequestStore(): SlackInteractiveRequestStore;
@@ -9,8 +9,7 @@ import {
9
9
  decodeActionValue,
10
10
  encodeActionValue,
11
11
  nowIso
12
- } from "./chunk-IXY3BXU5.js";
13
- import "./chunk-I2KLQ2HA.js";
12
+ } from "../chunk-J6CW2RGO.js";
14
13
  export {
15
14
  buildApprovalRequestMessage,
16
15
  buildHumanInputModal,
package/dist/mcp.js CHANGED
@@ -2,7 +2,6 @@ import {
2
2
  SLACK_MCP_URL,
3
3
  createSlackMcpServerConfig
4
4
  } from "./chunk-RFHXERNL.js";
5
- import "./chunk-I2KLQ2HA.js";
6
5
  export {
7
6
  SLACK_MCP_URL,
8
7
  createSlackMcpServerConfig
@@ -1,9 +1,9 @@
1
- import { SlackAmbientTurnContext } from '@cuylabs/channel-slack/core';
2
- export * from '@cuylabs/channel-slack/core';
3
- import { AgentEvent, AgentContextFragmentBuildContext, AgentContextFragmentInput, AgentContextFragmentKind, AgentContextFragmentRole, AgentContextFragmentPlacement, AgentContextFragmentLifetime, AgentContextFragmentBudgetBehavior, AgentMiddleware } from '@cuylabs/agent-core';
4
- import { S as SlackEventBridgeOptions } from './options-C7OYeNR-.js';
5
- export { r as resolveSlackEventBridgeOptions } from './options-C7OYeNR-.js';
6
- import './interactive-o_NZb-Xg.js';
1
+ export { D as DEFAULT_SLACK_CONTEXT_FRAGMENT_KEY, S as SlackContextFragmentMiddlewareOptions, a as SlackContextFragmentPayload, b as SlackContextFragmentResolver, c as SlackContextFragmentResolverContext, d as createSlackContextFragmentMiddleware } from '../context-fragments-CQEDcjYR.js';
2
+ import { AgentEvent } from '@cuylabs/agent-core';
3
+ import { S as SlackEventBridgeOptions } from '../options-C7OYeNR-.js';
4
+ export { r as resolveSlackEventBridgeOptions } from '../options-C7OYeNR-.js';
5
+ export { S as SlackApprovalRequest, a as SlackEventInteractiveRequestHandler, b as SlackHumanInputRequest, c as SlackInteractiveMessage, d as SlackInteractiveMessageRef, e as SlackInteractiveRequest, f as SlackInteractiveRequestBaseContext, g as SlackInteractiveRequestContext, h as SlackInteractiveRequestHandler, i as SlackInteractiveRequestKind, j as SlackInteractiveResponder } from '../interactive-o_NZb-Xg.js';
6
+ import '@cuylabs/channel-slack/core';
7
7
 
8
8
  /**
9
9
  * Slack response-sink contracts consumed by the event bridge.
@@ -100,30 +100,4 @@ declare class UnsupportedSlackInteractiveRequestError extends Error {
100
100
  constructor(kind: "approval" | "human-input", requestId: string, message: string);
101
101
  }
102
102
 
103
- declare const DEFAULT_SLACK_CONTEXT_FRAGMENT_KEY = "slackContextFragment";
104
- interface SlackContextFragmentPayload extends Partial<Pick<AgentContextFragmentInput, "budgetBehavior" | "dedupeKey" | "kind" | "lifetime" | "maxChars" | "metadata" | "placement" | "role" | "source" | "title">> {
105
- content: string;
106
- }
107
- interface SlackContextFragmentResolverContext {
108
- slack: Readonly<SlackAmbientTurnContext>;
109
- step: AgentContextFragmentBuildContext;
110
- }
111
- type SlackContextFragmentResolver = (context: SlackContextFragmentResolverContext) => AgentContextFragmentInput | SlackContextFragmentPayload | string | undefined | Promise<AgentContextFragmentInput | SlackContextFragmentPayload | string | undefined>;
112
- interface SlackContextFragmentMiddlewareOptions {
113
- name?: string;
114
- contextKey?: string;
115
- resolve?: SlackContextFragmentResolver;
116
- kind?: AgentContextFragmentKind;
117
- role?: AgentContextFragmentRole;
118
- placement?: AgentContextFragmentPlacement;
119
- lifetime?: AgentContextFragmentLifetime;
120
- title?: string;
121
- source?: string;
122
- budgetBehavior?: AgentContextFragmentBudgetBehavior;
123
- maxChars?: number;
124
- dedupeKey?: string | ((context: SlackContextFragmentResolverContext) => string | undefined);
125
- metadata?: Record<string, unknown> | ((context: SlackContextFragmentResolverContext) => Record<string, unknown> | undefined);
126
- }
127
- declare function createSlackContextFragmentMiddleware(options?: SlackContextFragmentMiddlewareOptions): AgentMiddleware;
128
-
129
- export { DEFAULT_SLACK_CONTEXT_FRAGMENT_KEY, type SlackChatStream, type SlackContextFragmentMiddlewareOptions, type SlackContextFragmentPayload, type SlackContextFragmentResolver, type SlackContextFragmentResolverContext, SlackEventBridgeOptions, type SlackResponseSink, type SlackStreamChunk, type SlackStreamTaskStatus, UnsupportedSlackInteractiveRequestError, bridgeAgentEventsToSlack, createSlackContextFragmentMiddleware };
103
+ export { type SlackChatStream, SlackEventBridgeOptions, type SlackResponseSink, type SlackStreamChunk, type SlackStreamTaskStatus, UnsupportedSlackInteractiveRequestError, bridgeAgentEventsToSlack };
@@ -1,16 +1,12 @@
1
1
  import {
2
2
  DEFAULT_SLACK_CONTEXT_FRAGMENT_KEY,
3
3
  createSlackContextFragmentMiddleware
4
- } from "./chunk-NIPAN4KA.js";
4
+ } from "../chunk-A2PLAVW6.js";
5
5
  import {
6
6
  UnsupportedSlackInteractiveRequestError,
7
7
  bridgeAgentEventsToSlack,
8
8
  resolveSlackEventBridgeOptions
9
- } from "./chunk-DHPD4XH5.js";
10
- import "./chunk-I2KLQ2HA.js";
11
-
12
- // src/shared.ts
13
- export * from "@cuylabs/channel-slack/core";
9
+ } from "../chunk-NOVWLAVP.js";
14
10
  export {
15
11
  DEFAULT_SLACK_CONTEXT_FRAGMENT_KEY,
16
12
  UnsupportedSlackInteractiveRequestError,
package/dist/socket.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { App } from '@slack/bolt';
2
- import { SlackDirectAuthOptions, CreateSlackSocketBoltAppOptions, SlackDirectAuthMode } from '@cuylabs/channel-slack/bolt';
2
+ import { CreateSlackSocketBoltAppOptions } from '@cuylabs/channel-slack/transports/socket';
3
+ import { SlackDirectAuthOptions, SlackDirectAuthMode } from '@cuylabs/channel-slack/auth';
3
4
  import { S as SlackAssistantBridge, C as CreateSlackAssistantBridgeOptions, b as SlackAssistantFeedbackConfig } from './options-Uf-qmQKN.js';
4
5
  import { SlackAgentAppSurfaceOptions } from './app-surface.js';
5
6
  import { SlackFeedbackHandler } from '@cuylabs/channel-slack/feedback';
package/dist/socket.js CHANGED
@@ -1,15 +1,12 @@
1
1
  import {
2
2
  mountSlackAgentAppSocket,
3
3
  mountSlackAssistantAgentSocket
4
- } from "./chunk-IWUYIAY5.js";
5
- import "./chunk-M64Z6TYL.js";
6
- import "./chunk-BFUPAJON.js";
7
- import "./chunk-VHGV66M7.js";
8
- import "./chunk-FDRQOG7Q.js";
9
- import "./chunk-GNXWTKQ6.js";
10
- import "./chunk-DHPD4XH5.js";
11
- import "./chunk-ANIZ5NT4.js";
12
- import "./chunk-I2KLQ2HA.js";
4
+ } from "./chunk-QEJ7TAZJ.js";
5
+ import "./chunk-P7KK5GQG.js";
6
+ import "./chunk-ZDVD46RT.js";
7
+ import "./chunk-ELR6MQD7.js";
8
+ import "./chunk-TIQGJ52F.js";
9
+ import "./chunk-NOVWLAVP.js";
13
10
  export {
14
11
  mountSlackAgentAppSocket,
15
12
  mountSlackAssistantAgentSocket