← Dissel AI · Perspectives

Notion playbook

Ten Notion Custom Agents we ship in production. With the recipes.

Notion Custom Agents went from beta to default in 2026. Most teams still only use the chat box. Here are ten agents we run inside client workspaces today, what each one does, the tools it touches, and the failure mode that took us longest to fix.

Derk Disselhoff·Founder, Dissel AI·June 2026·10 min read

Custom Agents are the most underused capability in Notion in 2026. Every workspace can now wire an agent to its databases, its connected tools and its instructions, and have it run end to end. Most teams have not built one. The teams that have, mostly built a single Q and A bot and called it a day.

Below are ten agents we run inside client workspaces today. Each is a recipe you can copy, with the trigger, the databases it reads, the tools it writes to, and the one failure mode we had to fix the hard way.

1. Inbound triage agent

Trigger: a new row in the Leads database. Reads the lead, enriches the company through a connected web search, scores fit against the ICP page, drafts a personalised first email, and assigns the right AE. Writes back to the Leads row with score, draft and owner. Failure mode we fixed: it kept inventing seniority titles. Solution: enforce extraction from the actual LinkedIn page, not the model's prior.

2. Meeting prep agent

Trigger: 30 minutes before a calendar event. Pulls the attendee, finds the matching deal or account in Notion, reads the last three touchpoints, and posts a one-page brief to the meeting note. Failure mode: it summarised emails that were already replied to. Solution: filter by thread state, not just date.

3. Renewal risk agent

Trigger: weekly cron. Walks the accounts database, scores renewal risk from usage signals and ticket history, drafts a save-play for the CSM, and creates a task on at-risk accounts. Failure mode: noisy on accounts with seasonal usage. Solution: rolling 90-day window with a sector-specific baseline.

4. RFP responder agent

Trigger: a new row in the RFPs database with a PDF attached. Extracts the questions, drafts answers from the knowledge base, flags every question without a confident source, and creates a review task for the deal owner. Failure mode: it confidently fabricated security answers. Solution: every security question routes through a small hand-curated security database, no model fallback allowed.

5. Weekly business review agent

Trigger: every Monday at 7am. Pulls revenue numbers from Stripe, pipeline from Notion, support from the ticket database, and assembles a narrative WBR document with what changed week over week and the open questions. Failure mode: it buried the bad news. Solution: explicit instruction to lead with anything red, and a verifier that checks the doc opens with a delta line.

6. Hiring scorecard agent

Trigger: a new candidate added to the ATS database. Reads the resume, scores it against the role profile page, drafts either a rejection email or a phone-screen invite, and updates the candidate record. Failure mode: it was too generous on borderline candidates. Solution: a calibration set of 20 past decisions used as few-shot anchors.

7. Vendor renewal agent

Trigger: 60 days before a vendor contract renewal. Pulls usage from the vendor database, drafts a renew-renegotiate-cancel recommendation, posts to the finance review channel. Failure mode: did not catch contracts with auto-renewal clauses shorter than 60 days. Solution: separate database property for notice period, sorted independently.

8. Knowledge curator agent

Trigger: any time a knowledge page is edited or a Slack question gets repeated. Detects stale or conflicting pages, drafts a merge or update, and creates a task for the page owner. Failure mode: it merged pages with subtle scope differences. Solution: never auto-merge, always propose with a diff and require human approval.

9. Finance close agent

Trigger: first business day of the month. Reconciles bank transactions against invoices in Notion, flags anomalies, drafts the month-end memo, updates the finance dashboard. Failure mode: it silently dropped foreign-currency lines. Solution: explicit currency normalisation step with an audit log of every conversion.

10. Founder inbox agent

Trigger: any email received by the founder. Categorises into reply now, reply later, route to team, ignore. For route-to-team, drafts a handover with context, links to the relevant Notion page, and assigns the right teammate. Failure mode: it routed cold outbound to internal teammates as if it were a real ask. Solution: cold-outbound classifier runs first, hard ignore.

What every recipe shares

  1. 01A clear trigger. Cron, database row, calendar event or inbound message. Never a chat box.
  2. 02A scoped read surface. Two or three Notion databases plus one external tool. No grand reads.
  3. 03A write that survives a Friday. The output goes to a Notion record someone owns, not a chat reply.
  4. 04An eval set. Twenty examples we replay weekly to catch drift.
  5. 05A human reviewer for the first two weeks, then a sampled review after.

The agents we tried and killed

Not every recipe survives contact with a real workspace. We have killed the all-purpose company chat agent (nobody asked it anything once the novelty wore off), the auto-replying support agent (one wrong reply burns more trust than 100 right ones save), and the proactive Slack pinger (people learned to mute it within a week). The pattern: agents that nudge humans without doing the work get ignored. Agents that own a small surface end to end stick.

How to start

Pick the one recipe above that maps to a workflow that hurts in your company this quarter. Build it as a Custom Agent. Run it under a human reviewer for two weeks. Add the next one. The full implementation arc is laid out on the Notion AI operating system page. If you want help shipping the first three, book the audit.

Further reading