@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.
- package/agent/app-manifest.ts +49 -7
- package/agent/channels/slack-events.ts +31 -19
- package/agent/channels/slack-front.ts +209 -11
- package/agent/channels/slack-home.ts +511 -0
- package/agent/channels/slack-memory-canvas.ts +382 -0
- package/agent/channels/slack-offboarding.ts +89 -0
- package/agent/channels/slack-origin-codec.ts +8 -0
- package/agent/channels/slack-step-label.ts +177 -0
- package/agent/channels/slack-wake-backscroll.ts +3 -2
- package/agent/channels/slack.ts +31 -18
- package/agent/docs-generated.ts +1 -1
- package/agent/ops.ts +5 -0
- package/agent/provider-events.ts +1 -1
- package/agent/register.ts +9 -0
- package/agent/setup/page.ts +3 -1
- package/agent/slack-as-you.ts +107 -0
- package/agent/surface-parity.ts +3 -0
- package/dist/agent/app-manifest.d.ts +11 -0
- package/dist/agent/app-manifest.d.ts.map +1 -1
- package/dist/agent/app-manifest.js +40 -7
- package/dist/agent/app-manifest.js.map +1 -1
- package/dist/agent/channels/slack-events.d.ts +13 -5
- package/dist/agent/channels/slack-events.d.ts.map +1 -1
- package/dist/agent/channels/slack-events.js +28 -17
- package/dist/agent/channels/slack-events.js.map +1 -1
- package/dist/agent/channels/slack-front.d.ts +52 -0
- package/dist/agent/channels/slack-front.d.ts.map +1 -1
- package/dist/agent/channels/slack-front.js +142 -11
- package/dist/agent/channels/slack-front.js.map +1 -1
- package/dist/agent/channels/slack-home.d.ts +95 -0
- package/dist/agent/channels/slack-home.d.ts.map +1 -0
- package/dist/agent/channels/slack-home.js +445 -0
- package/dist/agent/channels/slack-home.js.map +1 -0
- package/dist/agent/channels/slack-memory-canvas.d.ts +65 -0
- package/dist/agent/channels/slack-memory-canvas.d.ts.map +1 -0
- package/dist/agent/channels/slack-memory-canvas.js +325 -0
- package/dist/agent/channels/slack-memory-canvas.js.map +1 -0
- package/dist/agent/channels/slack-offboarding.d.ts +31 -0
- package/dist/agent/channels/slack-offboarding.d.ts.map +1 -0
- package/dist/agent/channels/slack-offboarding.js +75 -0
- package/dist/agent/channels/slack-offboarding.js.map +1 -0
- package/dist/agent/channels/slack-origin-codec.d.ts.map +1 -1
- package/dist/agent/channels/slack-origin-codec.js +8 -0
- package/dist/agent/channels/slack-origin-codec.js.map +1 -1
- package/dist/agent/channels/slack-step-label.d.ts +17 -0
- package/dist/agent/channels/slack-step-label.d.ts.map +1 -0
- package/dist/agent/channels/slack-step-label.js +170 -0
- package/dist/agent/channels/slack-step-label.js.map +1 -0
- package/dist/agent/channels/slack-wake-backscroll.d.ts +2 -2
- package/dist/agent/channels/slack-wake-backscroll.d.ts.map +1 -1
- package/dist/agent/channels/slack-wake-backscroll.js +3 -3
- package/dist/agent/channels/slack-wake-backscroll.js.map +1 -1
- package/dist/agent/channels/slack.d.ts.map +1 -1
- package/dist/agent/channels/slack.js +31 -18
- package/dist/agent/channels/slack.js.map +1 -1
- package/dist/agent/docs-generated.js +1 -1
- package/dist/agent/docs-generated.js.map +1 -1
- package/dist/agent/ops.d.ts.map +1 -1
- package/dist/agent/ops.js +5 -1
- package/dist/agent/ops.js.map +1 -1
- package/dist/agent/provider-events.js +1 -1
- package/dist/agent/provider-events.js.map +1 -1
- package/dist/agent/register.d.ts.map +1 -1
- package/dist/agent/register.js +9 -1
- package/dist/agent/register.js.map +1 -1
- package/dist/agent/setup/page.d.ts.map +1 -1
- package/dist/agent/setup/page.js +3 -1
- package/dist/agent/setup/page.js.map +1 -1
- package/dist/agent/slack-as-you.d.ts +38 -0
- package/dist/agent/slack-as-you.d.ts.map +1 -0
- package/dist/agent/slack-as-you.js +82 -0
- package/dist/agent/slack-as-you.js.map +1 -0
- package/dist/agent/surface-parity.d.ts.map +1 -1
- package/dist/agent/surface-parity.js +3 -0
- package/dist/agent/surface-parity.js.map +1 -1
- 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
|
+
}
|
package/agent/surface-parity.ts
CHANGED
|
@@ -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":"
|
|
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
|
|
10
|
-
// document alone, so a leaf module costs it no transitive weight — not the adapter-api
|
|
11
|
-
// eve, not the Slack Web API client. `agent/ops.ts` does the typed registration; this file
|
|
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.
|
|
64
|
-
|
|
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: [
|
|
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":"AAAA,qEAAqE;AACrE,EAAE;AACF,gFAAgF;AAChF,gGAAgG;AAChG,kGAAkG;AAClG,qGAAqG;AACrG,4CAA4C;AAC5C,EAAE;AACF,
|
|
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 `
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
1074
|
-
//
|
|
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 `
|
|
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 `
|
|
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
|
|
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
|
|
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
|
-
//
|
|
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
|
|
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
|
|
3081
|
-
// (memory/domain.ts,
|
|
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
|
|
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
|
|
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
|
|
3421
|
-
// golden moves on a deployment that
|
|
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
|
|
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
|
|
3535
|
-
//
|
|
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,
|