notion-flows: Your Notion Pages Are Your Automation Code

Published: (March 10, 2026 at 03:50 AM EDT)
3 min read
Source: Dev.to

Source: Dev.to

The Idea That Broke My Brain a Little

What if your automation logic lived inside Notion—not as a diagram, not as a config file, but as a plain‑English page you just… edit?

  • No redeploy.
  • No YAML.
  • No drag‑and‑drop node editors.

How It Works

  1. Open a Notion page.
  2. Write what you want in plain English.
  3. Run notion-flows run.
  4. Claude reads your page and executes it against your Notion databases.

That’s notion‑flows.

notion‑flows demo: Notion page registry, CLI list, and agentic run loop

What It Does

notion-flows is a TypeScript CLI that treats Notion pages as executable business logic.

  • You create a registry page in Notion.
  • Each child page under that registry is a flow—a plain‑English description of an automation.
  • The CLI discovers those pages, sends them to Claude (using Notion MCP tools), and Claude executes the instructions step‑by‑step.

Three Example Flows (Included Out of the Box)

🔥 Follow Up Cold Leads

This flow finds leads who haven't been contacted in 7 or more days
and drafts personalized follow‑up messages.

(Add the remaining example flows here, each with a brief description and a code block if needed.)

Conditions

  • Check Contacts DB for Status = "Lead" or Status = "Prospect".
  • Filter where Last Contacted is 7+ days ago.
  • If Deal Value > $2,000, tag as hot.

Actions

  • Draft a warm, professional follow‑up for each contact.
  • Update the Next Action field with the draft message.
  • Update Last Contacted to today.

📝 Content Idea Generator

Prompt

Generate 5 high‑value content ideas for a TypeScript consulting business
targeting early‑stage startups, add them to the Content Pipeline database,
and write a full first draft for the highest ROI idea.

📊 Weekly CEO Brief

Prompt

Generate a weekly executive brief by reading all databases,
then append it to this page.

The Agentic Loop

The core of notion‑flows is a Claude agentic loop that uses Notion MCP tools.

while (toolCallCount) {
  // ...agent logic...
}

// Prints DB IDs → paste them into .env
npx tsx src/cli.ts run

The setup command scaffolds your entire workspace:

  • Creates the ⚡ notion‑flows registry page.
  • Creates Contacts, Content Pipeline, and Revenue databases with full property schemas.
  • Seeds all three example flow pages.

Why This Matters

Most automation tools force you to learn a new interface (canvas, DSL, config syntax). notion‑flows flips that: the interface is a Notion page, which you already know.

  • Share flows with non‑technical teammates.
  • Edit logic directly in Notion; re‑run the CLI.
  • No PRs, no deployments.

The Notion page is the code.

What’s Next

  • Scheduled triggerstrigger: schedule: 0 9 * * 1 syntax is parsed; just needs a cron runner.
  • Multi‑workspace support – share flows between orgs.
  • Flow versioning – Notion’s page history already serves as a git log.

Built for the Notion dev.to challenge. Source code on GitHub.

0 views
Back to Blog

Related posts

Read more »