@open-everywhere/provider-slack 0.3.0 → 0.5.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 (76) hide show
  1. package/agent/app-manifest.ts +49 -7
  2. package/agent/channels/slack-events.ts +31 -19
  3. package/agent/channels/slack-front.ts +209 -11
  4. package/agent/channels/slack-home.ts +511 -0
  5. package/agent/channels/slack-memory-canvas.ts +382 -0
  6. package/agent/channels/slack-offboarding.ts +89 -0
  7. package/agent/channels/slack-origin-codec.ts +8 -0
  8. package/agent/channels/slack-step-label.ts +177 -0
  9. package/agent/channels/slack-wake-backscroll.ts +3 -2
  10. package/agent/channels/slack.ts +31 -18
  11. package/agent/docs-generated.ts +1 -1
  12. package/agent/ops.ts +5 -0
  13. package/agent/provider-events.ts +1 -1
  14. package/agent/register.ts +9 -0
  15. package/agent/setup/page.ts +3 -1
  16. package/agent/slack-as-you.ts +107 -0
  17. package/agent/surface-parity.ts +3 -0
  18. package/dist/agent/app-manifest.d.ts +11 -0
  19. package/dist/agent/app-manifest.d.ts.map +1 -1
  20. package/dist/agent/app-manifest.js +40 -7
  21. package/dist/agent/app-manifest.js.map +1 -1
  22. package/dist/agent/channels/slack-events.d.ts +13 -5
  23. package/dist/agent/channels/slack-events.d.ts.map +1 -1
  24. package/dist/agent/channels/slack-events.js +28 -17
  25. package/dist/agent/channels/slack-events.js.map +1 -1
  26. package/dist/agent/channels/slack-front.d.ts +52 -0
  27. package/dist/agent/channels/slack-front.d.ts.map +1 -1
  28. package/dist/agent/channels/slack-front.js +142 -11
  29. package/dist/agent/channels/slack-front.js.map +1 -1
  30. package/dist/agent/channels/slack-home.d.ts +95 -0
  31. package/dist/agent/channels/slack-home.d.ts.map +1 -0
  32. package/dist/agent/channels/slack-home.js +445 -0
  33. package/dist/agent/channels/slack-home.js.map +1 -0
  34. package/dist/agent/channels/slack-memory-canvas.d.ts +65 -0
  35. package/dist/agent/channels/slack-memory-canvas.d.ts.map +1 -0
  36. package/dist/agent/channels/slack-memory-canvas.js +325 -0
  37. package/dist/agent/channels/slack-memory-canvas.js.map +1 -0
  38. package/dist/agent/channels/slack-offboarding.d.ts +31 -0
  39. package/dist/agent/channels/slack-offboarding.d.ts.map +1 -0
  40. package/dist/agent/channels/slack-offboarding.js +75 -0
  41. package/dist/agent/channels/slack-offboarding.js.map +1 -0
  42. package/dist/agent/channels/slack-origin-codec.d.ts.map +1 -1
  43. package/dist/agent/channels/slack-origin-codec.js +8 -0
  44. package/dist/agent/channels/slack-origin-codec.js.map +1 -1
  45. package/dist/agent/channels/slack-step-label.d.ts +17 -0
  46. package/dist/agent/channels/slack-step-label.d.ts.map +1 -0
  47. package/dist/agent/channels/slack-step-label.js +170 -0
  48. package/dist/agent/channels/slack-step-label.js.map +1 -0
  49. package/dist/agent/channels/slack-wake-backscroll.d.ts +2 -2
  50. package/dist/agent/channels/slack-wake-backscroll.d.ts.map +1 -1
  51. package/dist/agent/channels/slack-wake-backscroll.js +3 -3
  52. package/dist/agent/channels/slack-wake-backscroll.js.map +1 -1
  53. package/dist/agent/channels/slack.d.ts.map +1 -1
  54. package/dist/agent/channels/slack.js +31 -18
  55. package/dist/agent/channels/slack.js.map +1 -1
  56. package/dist/agent/docs-generated.js +1 -1
  57. package/dist/agent/docs-generated.js.map +1 -1
  58. package/dist/agent/ops.d.ts.map +1 -1
  59. package/dist/agent/ops.js +5 -1
  60. package/dist/agent/ops.js.map +1 -1
  61. package/dist/agent/provider-events.js +1 -1
  62. package/dist/agent/provider-events.js.map +1 -1
  63. package/dist/agent/register.d.ts.map +1 -1
  64. package/dist/agent/register.js +9 -1
  65. package/dist/agent/register.js.map +1 -1
  66. package/dist/agent/setup/page.d.ts.map +1 -1
  67. package/dist/agent/setup/page.js +3 -1
  68. package/dist/agent/setup/page.js.map +1 -1
  69. package/dist/agent/slack-as-you.d.ts +38 -0
  70. package/dist/agent/slack-as-you.d.ts.map +1 -0
  71. package/dist/agent/slack-as-you.js +82 -0
  72. package/dist/agent/slack-as-you.js.map +1 -0
  73. package/dist/agent/surface-parity.d.ts.map +1 -1
  74. package/dist/agent/surface-parity.js +3 -0
  75. package/dist/agent/surface-parity.js.map +1 -1
  76. package/package.json +27 -3
@@ -0,0 +1,107 @@
1
+ // "SEARCH SLACK AS YOU" — Slack's own MCP server on a person's own Slack sign-in (OPE-2421).
2
+ //
3
+ // The bot is the normal Slack route: it sees the channels it is in. This preset lets a person let the agent "see
4
+ // what you see" — the channels and conversations the bot is not in — and post in their name. An admin turns it on
5
+ // by adding ONE entry to the app's `agent/access/mcp-servers.ts`:
6
+ //
7
+ // export const MCP_SERVERS = defineMcpServers([slackAsYou({ clientId: "<your Slack app's Client ID>" })]);
8
+ //
9
+ // WHAT IT REUSES. The org's own Slack app — the one the bot already runs on. Slack opens its MCP server to an
10
+ // internal app (each org's own Open Everywhere app is one) through that app's static OAuth client, with NO dynamic
11
+ // client registration. So the entry names the app's public Client ID, and the app's Client Secret by its
12
+ // credential-store REF (`npx oe secret set db:slack:oauth-client-secret`), never by value.
13
+ //
14
+ // WHAT THE ADMIN CHANGES IN THE SLACK APP: the MCP toggle (the app config's Agents section), the `mcp:connect` bot
15
+ // scope, the user scopes below and the sign-in redirect URL. The manifest this bundle generates carries the scopes
16
+ // and the redirect once the entry is declared (app-manifest.ts `personalMcp`); the toggle stays a click.
17
+ //
18
+ // WHAT CORE DOES WITH IT (connections/mcp-servers.ts `personalSurface`): a Slack 1:1 DM only, the person's own
19
+ // token only, bot first, the offer made in the moment, a card for every write as the person, and the host-side
20
+ // connector plane, never the sandbox egress plane.
21
+ //
22
+ // 🔴 THIS MODULE IMPORTS ONLY TYPES. The app's declaration file loads at `oe build` time with nothing registered,
23
+ // so this file must load with nothing registered too.
24
+
25
+ import type { McpServerDeclaration } from "@open-everywhere/core/agent/adapter-api.js";
26
+
27
+ /** The connection's name, and the grant key the seat sees: `slack-as-you`. */
28
+ export const SLACK_AS_YOU_NAME = "slack-as-you";
29
+
30
+ /** Slack's hosted MCP endpoint (streamable HTTP). */
31
+ export const SLACK_MCP_URL = "https://mcp.slack.com/mcp";
32
+
33
+ /** Where a person consents: Slack's user-only authorize endpoint. */
34
+ const SLACK_USER_AUTHORIZE_URL = "https://slack.com/oauth/v2_user/authorize";
35
+
36
+ /** Where the code becomes the person's user token: `oauth.v2.user.access`. */
37
+ const SLACK_USER_ACCESS_URL = "https://slack.com/api/oauth.v2.user.access";
38
+
39
+ /** The default credential-store REF of the Slack app's Client Secret. */
40
+ export const SLACK_AS_YOU_SECRET_REF = "db:slack:oauth-client-secret";
41
+
42
+ /** The bot scope Slack requires on an app that connects to its MCP server. */
43
+ export const SLACK_MCP_BOT_SCOPE = "mcp:connect";
44
+
45
+ /** The tool groups of Slack's MCP server, and the USER scopes each one needs. */
46
+ export const SLACK_AS_YOU_SCOPES = {
47
+ /** Search messages, files and people as the person. */
48
+ search: ["search:read.public", "search:read.private", "search:read.mpim", "search:read.im", "search:read.files", "search:read.users", "files:read"],
49
+ /** Read channels, threads, canvases and profiles as the person. */
50
+ read: ["channels:history", "groups:history", "mpim:history", "im:history", "canvases:read", "users:read"],
51
+ /** Post as the person. Every write takes an approval card first. */
52
+ write: ["chat:write"],
53
+ } as const satisfies Record<string, readonly string[]>;
54
+
55
+ /** One of Slack's MCP tool groups. */
56
+ export type SlackAsYouToolGroup = keyof typeof SLACK_AS_YOU_SCOPES;
57
+
58
+ /** Every user scope the given groups need, in a stable order and with no duplicates. */
59
+ export function slackAsYouUserScopes(groups: readonly SlackAsYouToolGroup[] = ["search", "read", "write"]): readonly string[] {
60
+ const out: string[] = [];
61
+ for (const group of ["search", "read", "write"] as const) {
62
+ if (!groups.includes(group)) continue;
63
+ for (const scope of SLACK_AS_YOU_SCOPES[group]) if (!out.includes(scope)) out.push(scope);
64
+ }
65
+ return out;
66
+ }
67
+
68
+ /** What the admin supplies. */
69
+ export interface SlackAsYouOptions {
70
+ /** The Slack app's Client ID (Basic Information → App Credentials). Public: it rides the authorize URL. */
71
+ readonly clientId: string;
72
+ /** The credential-store REF of the app's Client Secret. Absent ⇒ {@link SLACK_AS_YOU_SECRET_REF}. */
73
+ readonly clientSecretRef?: string;
74
+ /** The broker that ref resolves through. Absent ⇒ "db", the encrypted credential store. */
75
+ readonly clientSecretBroker?: string;
76
+ /** The tool groups a person consents to. Absent ⇒ all three. Leave out `write` for a read-only connection. */
77
+ readonly tools?: readonly SlackAsYouToolGroup[];
78
+ /** Narrow who gets it in their own Slack DM, as in any declared server. Absent ⇒ every person. */
79
+ readonly people?: McpServerDeclaration["people"];
80
+ }
81
+
82
+ /** The `agent/access/mcp-servers.ts` entry for "search Slack as you". */
83
+ export function slackAsYou(opts: SlackAsYouOptions): McpServerDeclaration {
84
+ const groups = opts.tools ?? (["search", "read", "write"] as const);
85
+ return {
86
+ name: SLACK_AS_YOU_NAME,
87
+ url: SLACK_MCP_URL,
88
+ description:
89
+ "Search Slack as you: Slack's own MCP server, signed in as the person in this DM. It reads the channels, threads " +
90
+ "and messages THEY can see, including ones the bot is not in" +
91
+ (groups.includes("write") ? ", and it can post in their name (each post takes an approval card)." : "."),
92
+ personalSurface: { platform: "slack", label: "Slack" },
93
+ signIn: {
94
+ mode: "static-confidential",
95
+ authorizationEndpoint: SLACK_USER_AUTHORIZE_URL,
96
+ tokenEndpoint: SLACK_USER_ACCESS_URL,
97
+ clientId: opts.clientId,
98
+ clientSecretRef: opts.clientSecretRef ?? SLACK_AS_YOU_SECRET_REF,
99
+ ...(opts.clientSecretBroker !== undefined ? { clientSecretBroker: opts.clientSecretBroker } : {}),
100
+ bodyEncoding: "form",
101
+ // 🔴 ONE comma-joined element, on purpose. Slack reads `scope` as a COMMA-separated list, and the OAuth client
102
+ // joins the elements of this array with a space (oe-oauth/oauth-client.ts).
103
+ scopes: [slackAsYouUserScopes(groups).join(",")],
104
+ },
105
+ ...(opts.people !== undefined ? { people: opts.people } : {}),
106
+ };
107
+ }
@@ -37,6 +37,9 @@ export const SLACK_SURFACE_PARITY: SurfaceParityDeclaration = {
37
37
  // keeps its `threadTs`, so a DM thread can be owned. `scheduleDmWake` ran on the RAW divert until
38
38
  // OPE-1719, which orphaned any seat spawned inside one.
39
39
  "owned-thread-ingress": "supported",
40
+ // A finished thread's done mark (OPE-2430): `threadRootMessage` names the thread's parent ts, and
41
+ // `setSurfaceReaction`'s inline Slack arm places the white_check_mark there.
42
+ "thread-done-reaction": "supported",
40
43
  // The reference wiring for the other five: `slack-wake-backscroll.ts slackSeatCatchUpFetch` reads
41
44
  // `conversations.history` since the seat's own `lastWakeAt`, enriches in-window threads with
42
45
  // `conversations.replies`, and hands the normalized window to core's shared catch-up path.
@@ -27,7 +27,18 @@ export interface SlackAppManifestOptions {
27
27
  /** The slash command's name without the slash — the `identity.commandName` setting. Absent ⇒
28
28
  * {@link SLACK_DEFAULT_COMMAND_NAME}. */
29
29
  readonly commandName?: string;
30
+ /**
31
+ * The app declares "search Slack as you" (`slackAsYou` in `agent/access/mcp-servers.ts`, OPE-2421). Adds
32
+ * the `mcp:connect` bot scope, the user scopes a person consents to, and the redirect URL their sign-in
33
+ * returns to. Absent ⇒ none of them: an app that does not use Slack's MCP server asks for no user scope.
34
+ * The MCP toggle itself (the app config's Agents section) has no manifest field, so it stays a click.
35
+ */
36
+ readonly personalMcp?: boolean;
30
37
  }
38
+ /** The path the person's OAuth sign-in returns to — core's `OE_OAUTH_CALLBACK_PATH`
39
+ * (connections/oe-oauth-callback.ts). Spelled here because this module imports nothing from core;
40
+ * `scripts/slack-as-you-test.ts` fails if the two drift. */
41
+ export declare const SLACK_PERSONAL_SIGN_IN_CALLBACK_PATH = "/oauth/v1/callback";
31
42
  /** The app name a manifest carries: the explicit name, else the configured name, else the default.
32
43
  * A configured name past Slack's limit is cut to fit, because Slack refuses the whole paste. */
33
44
  export declare function slackManifestAppName(opts?: SlackAppManifestOptions): string;
@@ -1 +1 @@
1
- {"version":3,"file":"app-manifest.d.ts","sourceRoot":"","sources":["../../agent/app-manifest.ts"],"names":[],"mappings":"AAaA;;mEAEmE;AACnE,eAAO,MAAM,6BAA6B,oBAAoB,CAAC;AAE/D;yFACyF;AACzF,eAAO,MAAM,sBAAsB,oBAAoB,CAAC;AAKxD,4EAA4E;AAC5E,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C,oGAAoG;AACpG,eAAO,MAAM,kBAAkB,KAAK,CAAC;AAErC;0GAC0G;AAC1G,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKnE;AAED;;kFAEkF;AAClF,MAAM,WAAW,uBAAuB;IACtC;;yBAEqB;IACrB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;;0CAEsC;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;8CAC0C;IAC1C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;iGACiG;AACjG,wBAAgB,oBAAoB,CAAC,IAAI,GAAE,uBAA4B,GAAG,MAAM,CAM/E;AAQD;+DAC+D;AAC/D,wBAAgB,wBAAwB,CAAC,IAAI,GAAE,uBAA4B,GAAG,MAAM,CA2JnF;AAED,8CAA8C;AAC9C,eAAO,MAAM,qBAAqB,+BAA+B,CAAC;AAElE,kFAAkF;AAClF,eAAO,MAAM,wBAAwB,EAAE,SAAS,MAAM,EAOrD,CAAC;AAEF;;8BAE8B;AAC9B,eAAO,MAAM,0BAA0B,EAAE,SAAS,MAAM,EAKvD,CAAC"}
1
+ {"version":3,"file":"app-manifest.d.ts","sourceRoot":"","sources":["../../agent/app-manifest.ts"],"names":[],"mappings":"AAeA;;mEAEmE;AACnE,eAAO,MAAM,6BAA6B,oBAAoB,CAAC;AAE/D;yFACyF;AACzF,eAAO,MAAM,sBAAsB,oBAAoB,CAAC;AAKxD,4EAA4E;AAC5E,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAE1C,oGAAoG;AACpG,eAAO,MAAM,kBAAkB,KAAK,CAAC;AAErC;0GAC0G;AAC1G,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAKnE;AAED;;kFAEkF;AAClF,MAAM,WAAW,uBAAuB;IACtC;;yBAEqB;IACrB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B;;0CAEsC;IACtC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B;8CAC0C;IAC1C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;CAChC;AAED;;6DAE6D;AAC7D,eAAO,MAAM,oCAAoC,uBAAuB,CAAC;AAEzE;iGACiG;AACjG,wBAAgB,oBAAoB,CAAC,IAAI,GAAE,uBAA4B,GAAG,MAAM,CAM/E;AAQD;+DAC+D;AAC/D,wBAAgB,wBAAwB,CAAC,IAAI,GAAE,uBAA4B,GAAG,MAAM,CAsLnF;AAED,8CAA8C;AAC9C,eAAO,MAAM,qBAAqB,+BAA+B,CAAC;AAElE,kFAAkF;AAClF,eAAO,MAAM,wBAAwB,EAAE,SAAS,MAAM,EAQrD,CAAC;AAEF;;8BAE8B;AAC9B,eAAO,MAAM,0BAA0B,EAAE,SAAS,MAAM,EAKvD,CAAC"}
@@ -6,10 +6,11 @@
6
6
  // scope array below against the runbook's documented scopes. It used to live in the setup CLI, where
7
7
  // the ops server could not reach it at all.
8
8
  //
9
- // 🔴 THIS MODULE IMPORTS NOTHING, DELIBERATELY. The setup CLI depends on the bundle for this
10
- // document alone, so a leaf module costs it no transitive weight — not the adapter-api barrel, not
11
- // eve, not the Slack Web API client. `agent/ops.ts` does the typed registration; this file holds
12
- // only the vendor's own knowledge.
9
+ // 🔴 THIS MODULE IMPORTS NOTHING BUT ANOTHER LEAF, DELIBERATELY. The setup CLI depends on the bundle
10
+ // for this document alone, so a leaf module costs it no transitive weight — not the adapter-api
11
+ // barrel, not eve, not the Slack Web API client. `agent/ops.ts` does the typed registration; this file
12
+ // holds only the vendor's own knowledge. `./slack-as-you.ts` is a leaf too (it imports only types).
13
+ import { SLACK_MCP_BOT_SCOPE, slackAsYouUserScopes } from "./slack-as-you.js";
13
14
  /** The token the request URLs carry where the deployment's own host belongs. The ops plane
14
15
  * substitutes it (packages/core/agent/ops/surface-manifest.ts); the setup check leaves it for the
15
16
  * operator, who has usually not deployed yet when they run it. */
@@ -33,6 +34,10 @@ export function slackAppNameProblem(raw) {
33
34
  return `the app name is ${name.length} characters; Slack accepts at most ${SLACK_APP_NAME_MAX}`;
34
35
  return undefined;
35
36
  }
37
+ /** The path the person's OAuth sign-in returns to — core's `OE_OAUTH_CALLBACK_PATH`
38
+ * (connections/oe-oauth-callback.ts). Spelled here because this module imports nothing from core;
39
+ * `scripts/slack-as-you-test.ts` fails if the two drift. */
40
+ export const SLACK_PERSONAL_SIGN_IN_CALLBACK_PATH = "/oauth/v1/callback";
36
41
  /** The app name a manifest carries: the explicit name, else the configured name, else the default.
37
42
  * A configured name past Slack's limit is cut to fit, because Slack refuses the whole paste. */
38
43
  export function slackManifestAppName(opts = {}) {
@@ -54,14 +59,19 @@ function shortcutName(prefix, appName, neutral) {
54
59
  export function slackAppManifestTemplate(opts = {}) {
55
60
  const appName = slackManifestAppName(opts);
56
61
  const commandName = opts.commandName?.trim() || SLACK_DEFAULT_COMMAND_NAME;
62
+ const personalMcp = opts.personalMcp === true;
57
63
  return JSON.stringify({
58
64
  display_information: { name: appName },
59
65
  features: {
60
66
  // THE MESSAGES TAB (OPE-2222). With no `app_home` block, Slack creates the app with the
61
67
  // Messages tab OFF, and a person who opens a DM with the bot sees "Sending messages to this
62
68
  // app has been turned off". DMs are the primary wake (`message.im` below), so the tab is
63
- // on and writable. The product has no Home tab (`app_home_opened` is not routed).
64
- app_home: { home_tab_enabled: false, messages_tab_enabled: true, messages_tab_read_only_enabled: false },
69
+ // on and writable.
70
+ // THE HOME TAB (OPE-2451) is on too: it is the person's private page — what the agent
71
+ // remembers about them, with Edit, Forget and Export, and what their domains know. Opening
72
+ // it delivers `app_home_opened` (below), and the front route publishes the page
73
+ // (channels/slack-home.ts).
74
+ app_home: { home_tab_enabled: true, messages_tab_enabled: true, messages_tab_read_only_enabled: false },
65
75
  bot_user: { display_name: appName, always_online: true },
66
76
  // The "/oe" ZERO-INFERENCE control command (agent/commands/core.ts). Declared here rather
67
77
  // than left to a manual setup step because one of its subcommands is `/oe stop` (OPE-418),
@@ -112,7 +122,11 @@ export function slackAppManifestTemplate(opts = {}) {
112
122
  // line in the manifest, not just in the code that handles the callback. It is harmless on the
113
123
  // hand-paste path: an app created from this manifest and installed from the Slack console
114
124
  // never visits the URL.
115
- redirect_urls: [`https://${SLACK_DEPLOY_HOST_PLACEHOLDER}/setup/callback`],
125
+ redirect_urls: [
126
+ `https://${SLACK_DEPLOY_HOST_PLACEHOLDER}/setup/callback`,
127
+ // "SEARCH SLACK AS YOU" (OPE-2421): a person's own sign-in returns here, to core's OAuth callback.
128
+ ...(personalMcp ? [`https://${SLACK_DEPLOY_HOST_PLACEHOLDER}${SLACK_PERSONAL_SIGN_IN_CALLBACK_PATH}`] : []),
129
+ ],
116
130
  scopes: {
117
131
  bot: [
118
132
  "app_mentions:read",
@@ -161,7 +175,19 @@ export function slackAppManifestTemplate(opts = {}) {
161
175
  // users.info — the DM-partner trust check. Without this, EVERY DM binds `external`
162
176
  // (fail-closed) on a fresh install, silently (OPE-175).
163
177
  "users:read",
178
+ // conversations.canvases.create + canvases.edit — the domain memory canvas (OPE-2451,
179
+ // channels/slack-memory-canvas.ts): a domain's internal channels show what the domain
180
+ // knows. Without it the canvas refresh fails with `missing_scope`, logged and audited
181
+ // per channel, and memory itself is unaffected.
182
+ "canvases:write",
183
+ // Slack requires this bot scope on an app whose people connect to Slack's MCP server
184
+ // (OPE-2421). Declared only when the app declares "search Slack as you".
185
+ ...(personalMcp ? [SLACK_MCP_BOT_SCOPE] : []),
164
186
  ],
187
+ // The USER scopes a person consents to for "search Slack as you" (OPE-2421). The install
188
+ // asks for none of them: `/setup` requests bot scopes only, and each person grants these for
189
+ // themselves, in the moment, through Slack's user-only consent.
190
+ ...(personalMcp ? { user: [...slackAsYouUserScopes()] } : {}),
165
191
  },
166
192
  },
167
193
  settings: {
@@ -175,6 +201,9 @@ export function slackAppManifestTemplate(opts = {}) {
175
201
  // message.mpim → mpim:history (group DMs; without it only an @mention there is heard)
176
202
  // member_joined_channel → channels:read, groups:read, mpim:read (the channel-join intro)
177
203
  // reaction_added, reaction_removed → reactions:read (reaction feedback)
204
+ // app_home_opened → no scope (the Home tab page, OPE-2451)
205
+ // channel_shared → channels:read, groups:read (re-run the memory canvas gate, OPE-2451)
206
+ // user_change → users:read (automatic offboarding on a deactivated member, OPE-2423)
178
207
  // scripts/slack-app-manifest-test.ts derives the handled set from the code and fails if
179
208
  // this list drops one (OPE-2223).
180
209
  bot_events: [
@@ -186,6 +215,9 @@ export function slackAppManifestTemplate(opts = {}) {
186
215
  "member_joined_channel",
187
216
  "reaction_added",
188
217
  "reaction_removed",
218
+ "app_home_opened",
219
+ "channel_shared",
220
+ "user_change",
189
221
  ],
190
222
  },
191
223
  // The INTERACTIVITY Request URL — the SAME public route Event Subscriptions uses. Every
@@ -212,6 +244,7 @@ export const SLACK_APP_MANIFEST_STEPS = [
212
244
  "Pick the workspace, choose JSON, and paste the manifest below.",
213
245
  "Next → Create.",
214
246
  "Install to Workspace, and approve the scopes Slack lists.",
247
+ "Unless you set identity.name and chose your own icon, give the app the project mark: Basic Information → Display Information → App icon, and upload https://raw.githubusercontent.com/open-everywhere/open-everywhere/main/brand/png/mark-square-1024.png. Slack's manifest has no icon field, so this step stays by hand.",
215
248
  "Before the first deploy, Slack cannot verify the Event Subscriptions URL: it answers only once a deploy that holds SLACK_SIGNING_SECRET is up. After the deploy, paste the manifest again with the real host (App Manifest → Save Changes), then retry the verification under Event Subscriptions.",
216
249
  ];
217
250
  /** What the operator brings back. The token and the secret are environment variables, not
@@ -1 +1 @@
1
- {"version":3,"file":"app-manifest.js","sourceRoot":"","sources":["../../agent/app-manifest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app-manifest.js","sourceRoot":"","sources":["../../agent/app-manifest.ts"],"names":[],"mappings":"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"}
@@ -598,7 +598,7 @@ export declare function auditDmBotAuthorDrop(ev: ParsedMessageEvent, dmKind: "im
598
598
  * DM leg in the pack exercised a synthetic envelope and a regression in Slack's own DM delivery to
599
599
  * us was invisible. This carve-out lets the driver in through the real front door.
600
600
  *
601
- * WHY IT IS NOT THE `OE_TEST_DRIVER_IDS` ALLOWLIST, which already lifts the same bot at the
601
+ * WHY IT IS NOT THE `wake.driverAllowlist` SETTING, which already lifts the same bot at the
602
602
  * engagement and mention doors. A DM seat holds a window token, delegation and memory, so admitting
603
603
  * a bot into a DM is a strictly larger grant than admitting one into a watched channel. Reusing the
604
604
  * channel allowlist would have widened the DM door for every deployment that already sets it, on
@@ -780,7 +780,7 @@ export interface NameDropRouteDeps {
780
780
  }) => Promise<WakeBackscrollLines | null>;
781
781
  /** The per-author membership probe the hydrated-context withhold uses (OPE-525,
782
782
  * {@link withholdNameDropContext}). Defaults to the live {@link slackAuthorIsMember}; injectable
783
- * so the withhold is testable without Slack. Never called on the shipped `taint` grain. */
783
+ * so the withhold is testable without Slack. Never called on the `taint` opt-out grain. */
784
784
  readonly authorIsMember?: SlackMemberProbe;
785
785
  /** Start the judged turn in a thread rooted at the triggering message. `context` (when present)
786
786
  * is the backscroll — ADDITIONAL history the channel appends before the delivery turn. */
@@ -854,6 +854,14 @@ export declare function _resetBotDisplayName(): void;
854
854
  * onto a fired session — one gate, two security consumers.
855
855
  */
856
856
  export declare function confirmChannelInternal(channelId: string): Promise<boolean>;
857
+ /**
858
+ * {@link confirmChannelInternal} read FRESH: the cached verdict is dropped first, so the answer is
859
+ * today's `conversations.info`, and the cache is refilled with it. For the one consumer that must not
860
+ * act on a verdict up to a TTL old — the domain memory canvas (slack-memory-canvas.ts, OPE-2451),
861
+ * which decides whether every line of a domain's memory stays on screen in this channel. A wake keeps
862
+ * the cached read; the canvas is written rarely enough to pay for one call.
863
+ */
864
+ export declare function confirmChannelInternalFresh(channelId: string): Promise<boolean>;
857
865
  /**
858
866
  * Positively confirm a channel is internal (fail-closed, same TTL-cached
859
867
  * conversations.info as {@link confirmChannelInternal}) AND surface its member count —
@@ -1024,7 +1032,7 @@ export declare function applySlackExternalPolicy(ev: ParsedMessageEvent, p: Part
1024
1032
  * other in the plane. A `bot` line carries a bot id, and a machine author is never excluded, so only
1025
1033
  * `senderType: "user"` lines are asked about.
1026
1034
  *
1027
- * COSTS NOTHING ON THE SHIPPED GRAIN: `taint` returns the wake by reference before any probe runs.
1035
+ * COSTS NOTHING ON THE OPT-OUT GRAIN: `taint` returns the wake by reference before any probe runs.
1028
1036
  * On `withhold` it costs one TTL-cached `users.info` per DISTINCT hydrated author, resolved in
1029
1037
  * parallel, and the render budget caps the hydration at ten lines.
1030
1038
  */
@@ -1332,7 +1340,7 @@ export interface SupervisorRouteDeps {
1332
1340
  * {@link withholdNameDropContext}) — the same dep, spelled the same way, as the native route it
1333
1341
  * replaces ({@link NameDropRouteDeps.authorIsMember}). Defaults to the live
1334
1342
  * {@link slackAuthorIsMember}; injectable so the withhold is testable without Slack. Never called
1335
- * on the shipped `taint` grain, and never on a wake that carries no hydrated lines. */
1343
+ * on the `taint` opt-out grain, and never on a wake that carries no hydrated lines. */
1336
1344
  readonly authorIsMember?: SlackMemberProbe;
1337
1345
  /**
1338
1346
  * Start/continue the supervisor session under its reserved token. `window` is present ONLY on
@@ -1404,7 +1412,7 @@ export interface SupervisorRouteDeps {
1404
1412
  * Route one unowned message to the channel supervisor: pure disqualifiers, then the
1405
1413
  * fail-closed internal-channel confirmation (which also surfaces the member count for the
1406
1414
  * envelope), then create-or-fetch the supervisor session and deliver the judged wake. The
1407
- * caller (slack-front) only reaches here once the domain has opted into ambientSupervisor.
1415
+ * caller (slack-front) only reaches here once the domain has ambientSupervisor on (the default).
1408
1416
  *
1409
1417
  * `opts.directMention` (SINGLE-WINDOW @mention routing — the GitHub reference's
1410
1418
  * `treatMentionAsDirect`/`directMention` shape): the trigger is the `message.channels` SIBLING of
@@ -1 +1 @@
1
- {"version":3,"file":"slack-events.d.ts","sourceRoot":"","sources":["../../../agent/channels/slack-events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slack-events.d.ts","sourceRoot":"","sources":["../../../agent/channels/slack-events.ts"],"names":[],"mappings":"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"}
@@ -1070,8 +1070,8 @@ export async function routeMessageEvent(ev, deps) {
1070
1070
  ...(ev.enterpriseId === undefined ? {} : { enterpriseId: ev.enterpriseId }),
1071
1071
  });
1072
1072
  // ── THE EXTERNAL-PARTICIPANT POLICY (OPE-507 / OPE-504) ────────────────────────────────────────
1073
- // Inert on the shipped grains (`taint` / `engage`), so a deployment that has not opted in is
1074
- // byte-identical. It sits here because this is where the author evidence first exists — see the
1073
+ // Inert only on the `taint` / `engage` opt-out, where it is byte-identical to before it
1074
+ // existed; the shipped grains suppress here. It sits here because this is where the author evidence first exists — see the
1075
1075
  // block comment on `slackExternalVerdict` for why that is lower than Discord's gate.
1076
1076
  {
1077
1077
  const verdict = await applySlackExternalPolicy(ev, p, { trust: wakeTrust, refuted: authorFacts.refuted }, "routeMessageEvent");
@@ -1450,7 +1450,7 @@ export async function auditDmBotAuthorDrop(ev, dmKind, selfBotId) {
1450
1450
  dmKind,
1451
1451
  botId: ev.botId,
1452
1452
  team: ev.teamId ?? null,
1453
- // TRUE ⇒ the `OE_TEST_DRIVER_IDS` allowlist vouches for this bot at the engagement and mention
1453
+ // TRUE ⇒ the `wake.driverAllowlist` setting vouches for this bot at the engagement and mention
1454
1454
  // doors, and the DM door dropped it anyway. That is not a defect: the DM door reads its OWN,
1455
1455
  // narrower lever (`wake.e2eDrivers`, {@link dmDoorAdmitsDriver}), so a bot on the channel
1456
1456
  // allowlist has no DM standing. The row carries the distinction as data.
@@ -1471,7 +1471,7 @@ export async function auditDmBotAuthorDrop(ev, dmKind, selfBotId) {
1471
1471
  * DM leg in the pack exercised a synthetic envelope and a regression in Slack's own DM delivery to
1472
1472
  * us was invisible. This carve-out lets the driver in through the real front door.
1473
1473
  *
1474
- * WHY IT IS NOT THE `OE_TEST_DRIVER_IDS` ALLOWLIST, which already lifts the same bot at the
1474
+ * WHY IT IS NOT THE `wake.driverAllowlist` SETTING, which already lifts the same bot at the
1475
1475
  * engagement and mention doors. A DM seat holds a window token, delegation and memory, so admitting
1476
1476
  * a bot into a DM is a strictly larger grant than admitting one into a watched channel. Reusing the
1477
1477
  * channel allowlist would have widened the DM door for every deployment that already sets it, on
@@ -1871,7 +1871,7 @@ export async function routeNameDropEvent(ev, deps) {
1871
1871
  // reference-only and marks the taint join too — not just the trigger's own author. Fail-soft:
1872
1872
  // a regrade failure keeps the fetched (ungraded) lines, exactly like every other backscroll leg.
1873
1873
  // 🔴 THE REGRADE KEEPS THE LIVE PROBE, and `deps.authorIsMember` must NOT be threaded here. That
1874
- // dep is the WITHHOLD's probe and its contract is "never called on the shipped `taint` grain"
1874
+ // dep is the WITHHOLD's probe and its contract is "never called on the `taint` opt-out grain"
1875
1875
  // (OPE-525); this regrade runs on every hydration, whatever the grain, so sharing the dep would
1876
1876
  // break that contract and make a grain-gated lookup look grain-blind. The two share the
1877
1877
  // TTL-cached probe underneath, which is where the call is actually saved.
@@ -1988,7 +1988,7 @@ export async function routeNameDropEvent(ev, deps) {
1988
1988
  });
1989
1989
  // ── THE EXTERNAL-PARTICIPANT POLICY (OPE-507 / OPE-504) ────────────────────────────────────────
1990
1990
  // A name-drop is AMBIENT by construction (the gate above disqualifies an @mention), so an excluded
1991
- // author's name-drop is owed nothing and is suppressed in silence. Inert on the shipped grains.
1991
+ // author's name-drop is owed nothing and is suppressed in silence. Inert only on the opt-out grains.
1992
1992
  {
1993
1993
  const verdict = await applySlackExternalPolicy(ev, p, { trust: wakeTrust, refuted: authorFacts.refuted }, "routeNameDropEvent");
1994
1994
  if (verdict !== "proceed")
@@ -2005,7 +2005,7 @@ export async function routeNameDropEvent(ev, deps) {
2005
2005
  // about the people quoted in that hydration: a member name-drops the bot in a channel where a
2006
2006
  // refuted guest has been talking, and without this the guest's bytes reach the model verbatim.
2007
2007
  // `withholdNameDropContext` runs the shared transform and returns the wake BY REFERENCE on the
2008
- // shipped `taint` grain, so nothing moves for a deployment that has not opted in.
2008
+ // `taint` opt-out grain, so nothing moves for a deployment that opted out.
2009
2009
  const rendered = renderWake(await withholdNameDropContext(slackNameDropWake(ev, name, {
2010
2010
  trust: wakeTrust,
2011
2011
  triggerAuthorName: triggerName.authorName,
@@ -2123,6 +2123,17 @@ async function channelInternalAndMeta(channelId) {
2123
2123
  export async function confirmChannelInternal(channelId) {
2124
2124
  return (await channelInternalAndMeta(channelId)).internal;
2125
2125
  }
2126
+ /**
2127
+ * {@link confirmChannelInternal} read FRESH: the cached verdict is dropped first, so the answer is
2128
+ * today's `conversations.info`, and the cache is refilled with it. For the one consumer that must not
2129
+ * act on a verdict up to a TTL old — the domain memory canvas (slack-memory-canvas.ts, OPE-2451),
2130
+ * which decides whether every line of a domain's memory stays on screen in this channel. A wake keeps
2131
+ * the cached read; the canvas is written rarely enough to pay for one call.
2132
+ */
2133
+ export async function confirmChannelInternalFresh(channelId) {
2134
+ channelTrustCache.delete(channelId);
2135
+ return (await channelInternalAndMeta(channelId)).internal;
2136
+ }
2126
2137
  /**
2127
2138
  * Positively confirm a channel is internal (fail-closed, same TTL-cached
2128
2139
  * conversations.info as {@link confirmChannelInternal}) AND surface its member count —
@@ -2491,7 +2502,7 @@ function externalPolicyDropReason(verdict) {
2491
2502
  * other in the plane. A `bot` line carries a bot id, and a machine author is never excluded, so only
2492
2503
  * `senderType: "user"` lines are asked about.
2493
2504
  *
2494
- * COSTS NOTHING ON THE SHIPPED GRAIN: `taint` returns the wake by reference before any probe runs.
2505
+ * COSTS NOTHING ON THE OPT-OUT GRAIN: `taint` returns the wake by reference before any probe runs.
2495
2506
  * On `withhold` it costs one TTL-cached `users.info` per DISTINCT hydrated author, resolved in
2496
2507
  * parallel, and the render budget caps the hydration at ten lines.
2497
2508
  */
@@ -3077,8 +3088,8 @@ export function liveNameDropDeps(send) {
3077
3088
  }
3078
3089
  // --- channel-supervisor delivery (Slack Claude-Tag parity, T1.3) ---------------
3079
3090
  //
3080
- // The "always-on teammate" leg. When a channel's domain opts into ambientSupervisor
3081
- // (memory/domain.ts, fail-closed off) AND the channel is POSITIVELY confirmed internal,
3091
+ // The "always-on teammate" leg. When a channel's domain has ambientSupervisor on
3092
+ // (memory/domain.ts, default ON since OPE-2409) AND the channel is POSITIVELY confirmed internal,
3082
3093
  // an unowned message (top-level, or in-thread but not engaged) is delivered to a single
3083
3094
  // long-lived CHANNEL-SUPERVISOR session instead of the name-drop-only path. The supervisor
3084
3095
  // is one durable eve session per channel, addressed by a RESERVED continuation token
@@ -3148,7 +3159,7 @@ export function shouldSupervisorWake(input) {
3148
3159
  * Route one unowned message to the channel supervisor: pure disqualifiers, then the
3149
3160
  * fail-closed internal-channel confirmation (which also surfaces the member count for the
3150
3161
  * envelope), then create-or-fetch the supervisor session and deliver the judged wake. The
3151
- * caller (slack-front) only reaches here once the domain has opted into ambientSupervisor.
3162
+ * caller (slack-front) only reaches here once the domain has ambientSupervisor on (the default).
3152
3163
  *
3153
3164
  * `opts.directMention` (SINGLE-WINDOW @mention routing — the GitHub reference's
3154
3165
  * `treatMentionAsDirect`/`directMention` shape): the trigger is the `message.channels` SIBLING of
@@ -3280,7 +3291,7 @@ export async function routeSupervisorEvent(ev, deps, opts) {
3280
3291
  });
3281
3292
  // ── THE EXTERNAL-PARTICIPANT POLICY (OPE-507 / OPE-504) ────────────────────────────────────────
3282
3293
  // ABOVE THE SESSION MINT, deliberately: a suppressed wake must not rotate a generation or claim a
3283
- // fresh generation's first-wake backscroll. Inert on the shipped grains (`taint` / `engage`).
3294
+ // fresh generation's first-wake backscroll. Inert only on the `taint` / `engage` opt-out.
3284
3295
  const externalPolicy = slackExternalPolicyForRoom(domainKeyOf(p));
3285
3296
  {
3286
3297
  const verdict = await applySlackExternalPolicy(ev, p, { trust: wakeTrust, refuted: authorFacts.refuted }, "routeSupervisorEvent");
@@ -3417,8 +3428,8 @@ export async function routeSupervisorEvent(ev, deps, opts) {
3417
3428
  // BEHAVIOUR 3 (OPE-507) — the ARRIVED-MARKER over the first-wake backscroll. The trigger author
3418
3429
  // cleared the gate above, so this wake fires; a SIBLING the probe refuted has not, and under
3419
3430
  // `withhold` their bytes must not enter. The transform replaces the body, the pre-edit body and the
3420
- // attachments, and it returns the SAME ARRAY by reference on the shipped `taint` grain, so no
3421
- // golden moves on a deployment that has not opted in.
3431
+ // attachments, and it returns the SAME ARRAY by reference on the `taint` opt-out grain, so no
3432
+ // golden moves on a deployment that opted out.
3422
3433
  const backscroll = priorContext.map((m) => (withholdsBody(m, externalPolicy) ? withheldWakeMessage(m) : m));
3423
3434
  // POSITIVELY confirmed internal → stamp the trust verdict into the wake auth, exactly like the
3424
3435
  // name-drop / engaged-thread paths. An UNSTAMPED wake auth downgrades the whole session to
@@ -3432,7 +3443,7 @@ export async function routeSupervisorEvent(ev, deps, opts) {
3432
3443
  //
3433
3444
  // 🔴 A WITHHELD SIBLING NEVER KEYS TAINT. `ingestedAfterWithholding` REMOVES the entries the
3434
3445
  // transform above stripped, because their bytes did not enter — a join over a message that did not
3435
- // ingest would claim an exposure that did not happen. On the shipped `taint` grain it returns the
3446
+ // ingest would claim an exposure that did not happen. On the `taint` opt-out grain it returns the
3436
3447
  // SAME ARRAY by reference, so the auth bag is byte-identical.
3437
3448
  //
3438
3449
  // 🔴 THE HYDRATED NAME-DROP LINES JOIN TOO (OPE-475/OPE-525, carried onto the seat road by
@@ -3531,8 +3542,8 @@ export async function routeSupervisorEvent(ev, deps, opts) {
3531
3542
  // and without this the guest's bytes reach the model verbatim. It is the SAME function the
3532
3543
  // native route calls, over the WHOLE wake — so the envelope backscroll's own withholding (the
3533
3544
  // `priorContext` map above) and the hydrated lines are decided by one transform, and it returns
3534
- // the wake BY REFERENCE on the shipped `taint` grain, so nothing moves for a deployment that has
3535
- // not opted in. Run only on the name-drop tier, which is the only tier that carries the slot.
3545
+ // the wake BY REFERENCE on the `taint` opt-out grain, so nothing moves for a deployment that
3546
+ // opted out. Run only on the name-drop tier, which is the only tier that carries the slot.
3536
3547
  const wake = slackChannelWatchWake(ev, {
3537
3548
  mode: "supervisor",
3538
3549
  trust: wakeTrust,