Skip to content

feat(den-api): route "send me on Slack" to slack_send_as_bot - #6543

Open
benjaminshafii wants to merge 1 commit into
devfrom
feat/slack-send-as-bot-routing
Open

benjaminshafii wants to merge 1 commit into
devfrom
feat/slack-send-as-bot-routing

Conversation

@benjaminshafii

Copy link
Copy Markdown
Member

What is this about?

Follow-up to #6540: agents now pick slack_send_as_bot (target me) when someone asks to be sent or notified something on Slack, instead of Slack's slack_send_message.

What problem does it solve?

"Send me the summary on Slack" or "ping me when it's done" could still go to slack_send_message, which posts as the person, so they never get notified.

What was the situation before?

Search drops "me" as a filler word, so "send me X on Slack" tied slack_send_message (which wins ties), and Slack's own tool description tells agents to DM the user's own id for messages to themselves.

How is this implemented?

  • ee/apps/den-api/src/mcp/slack-send-as-bot.ts: a message to the person themselves ("me"/"myself" plus notify/DM/ping, or a send word with "Slack", no other channel) counts as a full-weight word, and notification words score like the name. "As me"/"from me" lists nothing; other queries keep the plain score.
  • Description names the intents (send me, DM me, notify me, ping me, remind me, also in Automations).
  • agent-server.ts: the conditional sentence (only while the capability is available) now says to use it with target me, including in Automations and their instructions; slack_send_message posts as the user and doesn't notify them.

What else changed?

  • docs/features/slack-send-as-bot/README.md: one paragraph on the routing.

Release note

none

Evidence

No E2E: search and guidance only. ee/apps/den-api/test/slack-send-as-bot.test.ts ranks Slack's real tool descriptions: self-notification queries put slack_send_as_bot first; "as me", "DM my teammate" and "send a Slack message" keep slack_send_message first.

@vercel

vercel Bot commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
openwork-app Ready Ready Preview Oct 27, 2026 5:24am UTC
openwork-den Ready Ready Preview Oct 27, 2026 5:24am UTC
openwork-diagnostics Ready Ready Preview Oct 27, 2026 5:24am UTC
openwork-landing Ready Ready Preview, v0 Oct 27, 2026 5:24am UTC

Request Review

@github-actions

github-actions Bot commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

OpenWork evidence

Status Commit Preview Updated
🟢 Ready · evidence passed af26317 Open preview 2026-10-27 05:30:35 UTC

Run details · Open the preview to inspect evidence and sandbox options.

@diff-warden diff-warden Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Warden clearance. Complete security and confidentiality review of 71f6c585f0ad5d558f46714579012e71b6feb396 found no high or medium security findings and no confidentiality findings. Any new push dismisses this approval. Analysis run

@diff-warden

diff-warden Bot commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

Warden: approved

No high or medium security findings and no confidentiality findings.

Reviewed af2631702d38 · Warden run · Updates after every Warden run.

Slack's own slack_send_message tells agents to DM the user's own id when
they want a message to themselves, which posts as them and never
notifies them. Capability search drops "me" as a filler word, so "send
me the summary on Slack" scored like "send the summary on Slack" and
tied slack_send_message, which wins ties by name.

searchSlackSendAsBotCapability now treats a message to the person
themselves ("me"/"myself" with notify, DM, ping, or a send word next to
"Slack", and no other channel named) as a full-weight word and scores
the notification words like its name. "As me" / "from me" lists
nothing, and queries without that intent keep the plain score, so
"DM my teammate" and "send a Slack message" still put the Slack
connection's tools first. The description names the intents and the
gateway's conditional sentence now says: use slack_send_as_bot with
target me, including in Automations and their instructions;
slack_send_message posts as the user and does not notify them.

Ranking tests score Slack's real tool descriptions with the external
scorer and the gateway's merge order.

Signed-off-by: Benjamin Shafii <ben@prologe.io>

This branch was successfully deployed

6 active deployments
Evidence / PR 6543 — af263170 Deployed Oct 27, 2026 by github-actions[bot]
Preview – openwork-den — af263170 Deployed Oct 27, 2026 by vercel[bot]
Preview – openwork-landing — af263170 Deployed Oct 27, 2026 by vercel[bot]
Preview – openwork-app — af263170 Deployed Oct 27, 2026 by vercel[bot]
Preview – openwork-diagnostics — af263170 Deployed Oct 27, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant