Notion's Internal AI Agents Explained: Feedback Router & Scruff (2026)
How Notion uses Custom Agents: Feedback Router, Scruff, Wilbur and more. What each agent does, Scruff's metrics, pricing, triggers, and how to copy them.
Notion runs its own company on Custom Agents. It uses them for routine internal work: routing product feedback, triaging web issues, answering support questions, reviewing copy, and investigating security alerts. Notion reports “2,800 agents working around the clock at Notion” (Notion release notes), and Akshay Kothari says, “We now have more agents than employees.” The most-used agent routes feedback: “At Notion, our most-used agent is one our co-founder built to route product feedback” (Introducing Custom Agents). This explainer covers each named agent: Feedback Router, Wilbur, the CX knowledge agent, Vera, Work-in-flight, Smilers, Mr. Nice Guy and Scruff. For each one, you get what it does and how to copy it.
The main source is Notion's post “How Notion uses Custom Agents” by Drew Evans, published February 24, 2026. Supporting sources are linked inline. Custom Agents launched in Notion 3.3 on February 24, 2026, so every product date below is from 2026.
Every Notion Internal Agent at a Glance
Notion has publicly named eight internal Custom Agents, and only one of them, Scruff, comes with published performance numbers. The table below lists each agent with its owning team, its trigger, its job, and any metric Notion has shared. Where Notion's sources don't name a trigger, the table says “not specified” or “inferred.”
| Agent | Team | Trigger | What it does | Published metric (source) |
|---|---|---|---|---|
| Feedback Router | Product / Product Operations | Slack message in #all-feedback | Identifies the product area, creates tasks for the right team, cross-posts to other Slack channels | Not published. Described as “used daily by employees across the company” |
| Wilbur | Web team | Slack messages in #web-team | First-pass triage (broken homepage link, bad translation), replies in Slack, files a task, tags the right person | Not published |
| CX knowledge agent | Customer Experience | Questions in Slack #cx-ask | Searches the CX knowledge base and enablement docs, answers with source links, opens a “knowledge base update request” when no answer exists | Not published. The template demo cites “thousands of questions every week” as volume, not as an outcome |
| Vera the Voice Coach | Marketing | Tagged in Slack | Reviews copy and answers questions against the style guide | Not published |
| Work-in-flight | Team leads | Weekly (schedule inferred from “weekly pulse”) | Weekly pulse on what is moving, stuck or coming up | Not published |
| Smilers | Environment team | Slack (exact trigger not specified) | Answers office questions | Not published |
| Mr. Nice Guy | Built for one person, now cross-team | Not specified (on-demand use inferred) | Tone adjuster | Not published |
| Scruff | Security | New entries in an Alerts database | Investigates alerts using a Runbooks database, a Notes page and MCP (Wiz, Crowdstrike, Scanner.dev) | 6+ hrs/week saved; 84% lower median time to investigate false positives; 93% faster median time to resolution; 95% threat-classification accuracy (Meet Scruff) |
Reading the table: Scruff is the only Notion agent with published performance metrics. “Not published” means Notion hasn't shared numbers. It does not mean the agent underperforms.
Three of these agents share one design. Feedback Router, Scruff and the CX knowledge agent each have a trigger (a Slack message or a database entry), a knowledge artifact the agent reads (a rules page, runbooks, or a knowledge base), and a writable surface for memory or escalation (the rules page, a Notes page, or a KB update request). If you copy only one idea from this article, copy that three-part structure.
Feedback Router: Notion's Most-Used Agent, Explained
Feedback Router is a Notion Custom Agent that watches the Slack channel #all-feedback, works out which product area each piece of feedback concerns, creates tasks for the right teams, and cross-posts to relevant Slack channels. It belongs to Product and Product Operations, and it is the agent Kothari calls Notion's most-used.
It was also Notion's first Custom Agent. According to Notion's YouTube demo, its routing rules “started as a blank page.” A third-party write-up from Latent Space identifies the demo's presenter as co-founder Simon Last. That identification comes from Latent Space, not from Notion's own post.
Richard Kang described the change this way: “Feedback is always coming in. It used to take a lot of manual work to route, transcribe, and create new tasks… Our Feedback Router has really freed us up to actually work on getting things implemented.”
How it works, step by step
- A Slack trigger fires when someone posts a new message in #all-feedback.
- The agent reads its routing-rules page. This page is its memory: a plain list of which kinds of feedback belong to which teams.
- If a rule matches, it files a bug or task in the task database and cross-posts to the owning team's channel.
- If no rule matches, it says so in the thread instead of guessing.
- A human replies with the right team.
- The agent files the task, cross-posts, and updates its own rules page so it handles the same case without help next time.
Why the self-updating rules page matters
The self-updating rules page turns human corrections into persistent memory. When a human replies with the right team, that answer doesn't vanish into a Slack thread. It becomes a rule. Routing accuracy improves without anyone editing a prompt, and the rules page stays readable, so anyone can audit why the agent sent something where it did.
This is the pattern most worth stealing. It makes a triage agent trustworthy in week one, because it admits uncertainty instead of misfiling. It also makes the agent cheaper to maintain by week ten, because the edge cases have already been written down by the people who know the answers.
How to copy it
- Start from the official template: notion.com/custom-agent-templates/feedback-router. Notion also has a use-case page at Triage product feedback.
- Set up four parts: a Slack trigger, a task database, a blank rules page, and an instruction telling the agent to update the rules from feedback.
- Decide how to seed the rules page. Add 5–10 known product areas and their owners, or start blank as Notion did. Seeding cuts week-one noise. Starting blank shows you which areas actually generate feedback.
- Name one human owner to answer “no rule matched” replies during the first week. Unanswered misses are how a router loses trust.
- Keep rules short and specific. “Billing, invoices, seat counts → Monetization, post to #team-monetization” works better than a paragraph of guidance.
What Feedback Routing Doesn't Do (and What Fills the Gap)
A feedback router moves each piece of feedback to the right team, and that's the whole job. It doesn't count how often a request appears, dedupe near-identical requests, size requests by account revenue, or connect Slack posts to what customers say on sales and CS calls.
There's also a coverage problem. Much of the feedback that matters is heard on customer calls, in support tickets and in survey responses, and it never reaches #all-feedback. A Slack-triggered router only sees what someone remembers to post. If an account executive hears the same objection on six calls and posts it once, the router sees one message.
Tools like BuildBetter sit alongside a router to cover that gap. It captures customer calls directly, ingests Slack, tickets and surveys, clusters recurring themes, and produces cited insights and PRDs that link back to the source conversation.
The practical pairing looks like this:
- The router answers “who owns this?” It gets each post to the right team quickly.
- The insights layer answers “how big is this, and who is asking?” It adds frequency, deduplication, account context and evidence from calls.
A fair caveat: if you only need triage of internal Slack posts, the Notion template may be enough on its own. To be clear, Notion does not use or endorse BuildBetter. This is a separate option for teams that need the analysis layer. For a worked example of that layer, see how Ramp approached a customer-insight agent.
Scruff: Notion's Security Agent and Its Four Metrics
Scruff is Notion Security's Custom Agent. New entries in an Alerts database trigger it, and it investigates each alert using a Runbooks database, a Notes page, and MCP connections to Wiz, Crowdstrike and Scanner.dev. Notion introduced it in “Meet Scruff” on January 12, 2026.
Notion published four metrics for Scruff:
- 6+ hours saved per week.
- 84% reduction in median time to investigate for false positive alerts.
- 93% faster median time to resolution for false positive alerts.
- 95% accuracy on threat classification.
Read these precisely. Both the 84% and 93% figures apply to false-positive alerts specifically, not to all alerts. Both are medians, not averages.
Scruff matters for two reasons. It is the only Notion agent with public numbers, so it's the best evidence that this agent design produces measurable results. It also shows that the pattern works beyond Slack: a database trigger plus runbooks handles security investigation the same way a Slack trigger plus a rules page handles feedback.
The architecture maps directly onto Feedback Router. The runbooks are procedural knowledge (how to investigate each alert type). The Notes page is working memory (what the agent found and decided). Swap “runbooks” for “routing rules” and you have the same agent.
How to copy it
- Create an Alerts database fed by your existing security tooling.
- Write runbooks as database entries, one per alert type, with the steps a human analyst would follow.
- Add a Notes page the agent can write findings to.
- Connect your security tools via MCP. Custom MCP is supported if Wiz or Crowdstrike aren't in your stack.
- Keep a human approval step before any remediation. Even at 95% classification accuracy, a person should sign off before anything changes in production.
Wilbur: The Web Team's Triage Agent
Wilbur is the Web team's triage agent, built after the team saw Feedback Router. That origin is the useful detail: one working agent spread to another team.
Wilbur listens to #web-team and does first-pass triage on issues such as a broken homepage link or a bad translation. It replies in Slack, files a task, and tags the right person. Notion hasn't published metrics for Wilbur.
How to copy it
- Duplicate the Feedback Router template.
- Scope it to one team channel instead of a company-wide feedback channel.
- Add an owner-tagging rule per issue type (for example, translations → localization owner, broken links → web engineer on call).
The CX Knowledge Agent: Answers With Sources in #cx-ask
The CX knowledge agent answers Customer Experience questions in Slack #cx-ask, cites its sources, and flags gaps in the knowledge base. Dianmarie De Jesus on the Customer Experience team built it. It searches the CX knowledge base and enablement docs, then replies with source links. If no answer exists, it opens a “knowledge base update request.”
The template demo describes “thousands of questions every week.” That figure describes volume, not results. The problem it addresses is familiar to any support lead: “Copy-pasting the same links again and again wastes time that adds up quickly.”
Notion's template for this pattern is titled “customer support bot” and lives at notion.com/custom-agent-templates/customer-support-bot. Notion hasn't published metrics for this agent.
How to copy it
- Start from the customer support bot template.
- Point it at your knowledge base and enablement pages, and nothing else.
- Require a source link in every answer so reps can verify before sending.
- Route unanswered questions to a KB-request database so gaps become documentation work.
Vera, Work-in-flight, Smilers and Mr. Nice Guy
Notion's smaller agents show that a useful Custom Agent can be a single page of context plus a trigger. None of these four has published metrics, but each one is easy to copy.
Vera the Voice Coach (Marketing)
Vera is built on Notion's style guide. When someone tags it in Slack, it reviews copy or answers questions about voice and style.
- Turn your style guide into a Notion page.
- Give the agent read access to that page.
- Trigger it on @mention in Slack.
Notion hasn't published metrics for Vera.
Work-in-flight (team leads)
Work-in-flight gives team leads a weekly pulse on what is moving, what is stuck, and what is coming up.
- Use a scheduled trigger, such as Monday morning.
- Give it access to the relevant project databases.
- Fix the output format to three headings: moving, stuck, upcoming.
Notion hasn't published metrics for Work-in-flight.
Smilers (Environment team)
Smilers answers office questions in Slack: the questions an office team hears over and over.
- Build an office FAQ page.
- Use a Slack channel trigger.
- Treat it as a low-risk first agent for ops teams. A wrong answer about meeting rooms costs little.
Notion hasn't published metrics for Smilers.
Mr. Nice Guy
Mr. Nice Guy is a tone adjuster. It was built for one person and is now used across teams.
- Write a short instruction set describing the tone you want.
- Invoke it on demand when drafting messages.
- Expect personal agents like this to become team tools once colleagues see the output.
Notion hasn't published metrics for Mr. Nice Guy.
What Notion Custom Agents Cost and Require
Notion Custom Agents run on Notion credits, an add-on for Business and Enterprise plans priced at $10 per 1,000 credits. They launched in Notion 3.3 on February 24, 2026, and were free through May 3, 2026. From May 4, 2026, agents consume credits (Notion pricing). Credits reset monthly and do not roll over (Notion agents).
Notion hasn't published how many credits Feedback Router, Scruff or any other internal agent uses per run, so any per-agent cost estimate would be a guess. Track your own credit use for two weeks before setting a budget.
Per Notion's help center, agents can be triggered by:
- Schedule.
- Notion events: a comment, a page added or removed, a property updated, or an AI Meeting Note finished.
- Slack: a message, an emoji reaction, or an @mention.
| Requirement | Detail |
|---|---|
| Plan | Business or Enterprise, with the credits add-on |
| Billing unit | Notion credits, $10 per 1,000 |
| Rollover | None. Credits reset monthly |
| Triggers | Schedule; Notion events; Slack message, emoji reaction or @mention |
| Integrations | Slack, Mail, Calendar, and MCP (Linear, Figma, HubSpot, Ramp, Wiz, Stripe, GitHub, Intercom, Amplitude, Attio, Sentry, custom MCP) |
Lessons From Notion's Scale: 2,800 Agents and a Manager Agent
Notion's leadership wants everyone to build agents. CTO Fuzzy Khosrowshahi put it this way: “We have an immense amount of talent here and want everyone to experiment with AI.”
Scale brings its own problem: noise. According to Latent Space (a third-party source), Simon Last built a manager agent over a colleague's 30+ GTM agents, cutting about 70 notifications a day to about 5. Sarah Sachs framed the goal: “it's not replacing people, it's replacing processes.”
The takeaway for any team past its first handful of agents: plan for consolidation and summary layers early. Ten agents each posting to Slack will bury the people they were meant to help. A manager agent, or a single weekly digest like Work-in-flight, keeps the output readable.
For comparison with how other companies approach internal agents, see Vercel's internal AI agents and Ramp's AI product factory.
Where to Start: Copy Feedback Router First
Feedback routing is the best first agent for most product and ops teams. Four properties make it a safe bet:
- The input is high-volume and already in Slack. No new data pipeline is needed.
- Misroutes are low-risk. A task in the wrong team's queue gets moved; nothing breaks.
- Human corrections build memory automatically through the self-updating rules page.
- Value is visible to every team on day one, because every team sees tasks arrive in their channel.
Notion's own history supports this. Feedback Router was its first agent and became its most-used, and Wilbur was built after the Web team saw it.
A five-step starter plan:
- Create #all-feedback, or reuse an existing feedback channel.
- Install the Feedback Router template.
- Connect a task database.
- Assign a rules-page owner.
- Review the misroutes after two weeks and tighten the rules.
Once routing works, the next question is usually “which of these requests matter most?” Answering that means adding volume, dedupe and revenue context by layering call and ticket analysis on top.
FAQ
What is Notion's Feedback Router?
Feedback Router is a Notion Custom Agent that watches the Slack channel #all-feedback, identifies which product area each piece of feedback concerns, creates tasks for the right team, and cross-posts to relevant Slack channels. It was Notion's first Custom Agent and, per Akshay Kothari, its most-used.
Can I use the Feedback Router template?
Yes. Notion publishes it at notion.com/custom-agent-templates/feedback-router. You need a Slack trigger, a task database and a rules page, plus a Business or Enterprise plan with Notion credits.
How does Feedback Router learn?
When no routing rule matches, the agent says so. A human replies with the right team, and the agent files the task, cross-posts, and updates its own rules page so it handles that case next time. Its rules “started as a blank page.”
How much do Notion Custom Agents cost?
Custom Agents were free through May 3, 2026. Since May 4, 2026, they run on Notion credits, an add-on for Business and Enterprise plans priced at $10 per 1,000 credits. Credits reset monthly and do not roll over. Notion has not published how many credits each internal agent uses per run.
How many agents does Notion run internally?
Notion reports 2,800 agents working around the clock. Akshay Kothari says Notion now has more agents than employees.
What is Scruff, and does any other Notion agent have published results?
Scruff is Notion Security's agent. It investigates alerts from an Alerts database using runbooks and MCP tools (Wiz, Crowdstrike, Scanner.dev). Notion reports 6+ hours saved weekly, an 84% reduction in median time to investigate false-positive alerts, 93% faster median time to resolution and 95% threat-classification accuracy. Scruff is the only Notion agent with published metrics; Notion hasn't shared numbers for Feedback Router, Wilbur, the CX knowledge agent, Vera, Work-in-flight, Smilers or Mr. Nice Guy.
Does Feedback Router analyze or prioritize feedback?
No. It routes feedback to the right team. Counting requests, clustering themes, and connecting them to what customers say on calls and in tickets need a separate insights layer such as BuildBetter.
Make churn optional.
Routing tells you who owns a piece of feedback. BuildBetter tells you how many customers are asking, what they said on the call, and the themes behind it, then turns it into cited insights, PRDs and tickets your team can ship.