Skip to content

Notion-Based Rapid Prototyping

A multi-agent system that monitors Notion databases and automatically generates complete application prototypes. Describe your app idea in Notion, add a {{prototype: type}} tag, and agents build it in an isolated git worktree.

Prototype Types

TagWorkflowOutput
{{prototype: uv_script}}/plan_uv_scriptPython CLI tool (UV inline deps)
{{prototype: vite_vue}}/plan_vite_vueVue 3 + TypeScript + Vite web app
{{prototype: bun_scripts}}/plan_bun_scriptsBun TypeScript service/API
{{prototype: uv_mcp}}/plan_uv_mcpMCP server for AI tool integration

Notion Task Format

markdown
Title: Build a GitHub Issue Tracker CLI

Create a CLI tool to:
- List issues by repo
- Create issues with templates
- Export to CSV

{{prototype: uv_script}}
{{app: gh-tracker}}
{{model: opus}}

execute

The task becomes eligible when the last content block starts with execute or continue - <prompt>.

Environment Setup

bash
# Required
export NOTION_AGENTIC_TASK_TABLE_ID=your-notion-db-id

Running the System

bash
# Continuous monitoring (15s interval)
uv run adws/adw_triggers/adw_trigger_cron_notion_tasks.py

# Single pass — process all eligible tasks and exit
uv run adws/adw_triggers/adw_trigger_cron_notion_tasks.py --once

# Dry run — logs what would run without executing
uv run adws/adw_triggers/adw_trigger_cron_notion_tasks.py --dry-run

# Stop the monitor
./scripts/kill_notion_cron.sh

# Clean up old worktrees
./scripts/prune_worktrees.sh

Workflow Scripts

  • adw_build_update_notion_task.py — 2-phase: /build/update_notion_task
  • adw_plan_implement_update_notion_task.py — 3-phase: /plan_{prototype}/implement/update_notion_task. Accepts --prototype flag.
  • adw_trigger_cron_notion_tasks.py — Polls Notion every 15s, claims tasks to In progress, spawns detached subprocesses.

Task Eligibility

A Notion task is eligible when:

  1. Status is Not started or HIL Review
  2. Last content block starts with execute or continue - <prompt>

Supported Tags

TagEffect
&#123;&#123;prototype: type&#125;&#125;Triggers specialized plan command
&#123;&#123;model: opus/sonnet&#125;&#125;Claude model override
&#123;&#123;workflow: plan&#125;&#125;Force 3-phase workflow (even without prototype)
&#123;&#123;worktree: name&#125;&#125;Pre-specify worktree name
&#123;&#123;app: name&#125;&#125;Target app directory name

Slash Commands

CommandPurpose
/get_notion_tasksQuery Notion DB for eligible tasks, returns JSON array
/update_notion_taskUpdate Notion page status with callout blocks
/update_notion_task_with_filePost agent output files to Notion as formatted blocks
/make_worktree_nameGenerate descriptive worktree name from task description
/plan_uv_scriptPlan UV single-file Python script MVP
/plan_vite_vuePlan Vite + Vue 3 web application MVP
/plan_bun_scriptsPlan Bun TypeScript application MVP
/plan_uv_mcpPlan MCP server for AI tool integration

Agentics SOP — AI Developer Workflow & Agentic Coding Reference