Agentops
Notion-powered control plane for OpenClaw AI agents — monitor, dispatch, tune, backup, and clone your agent fleet
Install / Use
/learn @awsdataarchitect/AgentopsREADME
🤖 AgentOps — Notion-Powered Control Plane for OpenClaw Agent Fleets
Notion MCP Challenge Entry — Use Notion as the human-in-the-loop command center for managing OpenClaw AI agents.
AgentOps turns your Notion workspace into a fully functional agent operations control plane. Monitor your OpenClaw fleet, dispatch tasks, track token usage, tune agent prompts, and backup your entire configuration — all through Notion.
Humans stay in control. Every agent, task, and configuration lives in Notion. Edit a page to pause an agent. Change a priority by updating a select field. Notion is the database.
📸 Screenshots
Dashboard
Real-time overview of your OpenClaw agent fleet — 18 agents, success rate, token usage, pipeline health, and recent activity.

Agent Registry
All 18 OpenClaw agents with status, schedules, and one-click pause/resume. Filter by type: cron, monitor, heartbeat, subagent, or demo agents.

Task Queue
Priority-based task queue with status tracking. Create tasks manually or let the OpenClaw runtime dispatch them automatically.

Run Log
Full execution history — every agent run with input, output, duration, and token count.

Alerts
Failure alerts with acknowledge workflow. No more digging through log files.

Token Usage
Per-agent token breakdown, 7-day trends, and top consumers across your OpenClaw fleet.

Workspace Sync
Push OpenClaw configuration files (SOUL.md, AGENTS.md, TOOLS.md, prompts) to Notion. Secrets auto-redacted.

Agent Tuning
Bidirectional prompt sync between disk and Notion. Edit prompts in Notion, apply live to running OpenClaw agents.

Backup & Clone
Full fleet backup to Notion. Export/import agent configurations as portable JSON bundles.

Notion Workspace
All agent data lives directly in your Notion workspace — Agent Registry, Task Queue, Run Log, Alerts, Backups, and Agent Prompts. No external database.

✨ Features
Core
- 🔗 Notion as Database — No external DB. Notion databases store agents, tasks, runs, and alerts
- 🤖 3 Built-in Agents — Summarizer, Code Reviewer, Sentiment Analyzer (no external AI APIs needed)
- 📋 Task Queue — Priority-based, auto-dispatched to matching agents every 10 seconds
- 📊 Real-time Dashboard — Live metrics: success rate, latency, throughput, fleet health
- 🚨 Alert System — Automatic error alerts with acknowledge workflow
- ⚡ WebSocket Updates — Real-time UI updates when tasks complete
- 🔐 Notion OAuth 2.0 — Secure authentication, no API keys to manage
OpenClaw Integration
- 🦀 OpenClaw Fleet Sync — Pull live agent data from
openclaw cron listinto the dashboard - 🏷️ OpenClaw Badges — Visual indicators distinguishing OpenClaw agents from demo agents
- 📅 Schedule Display — Cron schedules shown in human-readable format for each agent
Token Analytics
- 💰 Token Dashboard — All-time, daily, weekly token consumption
- 📊 Per-Agent Breakdown — Sortable table with total, average, and last-run token counts
- 📈 7-Day Trend — Visual bar chart of token usage over the past week
Workspace Sync
- 📤 Push to Notion — Sync SOUL.md, AGENTS.md, TOOLS.md, USER.md, HEARTBEAT.md, IDENTITY.md
- 🔒 Secret Redaction — Automatically strips tokens, passwords, and API keys before sync
- 📝 Markdown to Blocks — Converts markdown to Notion blocks (headings, lists, code, annotations)
Agent Tuning
- ✏️ Bidirectional Sync — Edit prompts in Notion or on disk, sync either direction
- 🔍 Diff Detection — See which prompts are in sync and which have diverged
- 🚀 Apply Live — Pull from Notion and apply to running OpenClaw agents with one click
Backup & Clone
- 🗄️ Full Backup — Workspace files, prompts, cron definitions, agent registry to a Notion page
- ♻️ Restore — Write files back to disk from any Notion backup
- 📦 Export Fleet — Download entire agent fleet as a portable JSON bundle
- 📥 Import Fleet — Upload a JSON bundle to recreate agents on a fresh OpenClaw instance
🏗️ Architecture
┌─────────────────────────────────────────────────────────────┐
│ NOTION WORKSPACE │
│ │
│ ┌──────────────┐ ┌──────────────┐ ┌─────────┐ ┌────────┐ │
│ │Agent Registry│ │ Task Queue │ │ Run Log │ │ Alerts │ │
│ │ (18 agents) │ │ (78 tasks) │ │(78 runs)│ │(2 errs)│ │
│ └──────┬───────┘ └──────┬───────┘ └────┬────┘ └───┬────┘ │
│ │ Notion API (MCP) │ │ │
└─────────┼────────────────┼──────────────┼───────────┼────────┘
│ │ │ │
┌─────────┴────────────────┴──────────────┴───────────┴────────┐
│ AGENTOPS SERVER │
│ │
│ ┌──────────┐ ┌──────────┐ ┌───────────┐ ┌───────────────┐ │
│ │ OAuth │ │ REST │ │ Runtime │ │ OpenClaw │ │
│ │ Flow │ │ API │ │ (10s poll)│ │ Integration │ │
│ └──────────┘ └──────────┘ └───────────┘ └───────────────┘ │
│ │
│ ┌─────────────────────┐ ┌────────────────────────────────┐ │
│ │ Demo Agents │ │ OpenClaw Fleet (14 cron) │ │
│ │ • Summarizer │ │ • newsletter-scout/writer/pub │ │
│ │ • Code Reviewer │ │ • podcast-generator │ │
│ │ • Sentiment │ │ • job-scout/followup │ │
│ └─────────────────────┘ │ • go-train-monitor │ │
│ │ • daily-backup, heartbeat... │ │
│ └────────────────────────────────┘ │
└───────────────────────────────────────────────────────────────┘
│
┌─────────┴─────────────────────────────────────────────────────┐
│ REACT DASHBOARD │
│ │
│ ┌──────────┐ ┌────────┐ ┌───────┐ ┌────────┐ ┌──────────┐ │
│ │Dashboard │ │ Agents │ │ Tasks │ │ Tokens │ │Workspace │ │
│ ├──────────┤ ├────────┤ ├───────┤ ├────────┤ ├──────────┤ │
│ │ Runs │ │ Alerts │ │Tuning │ │ Backup │ │ Clone │ │
│ └──────────┘ └────────┘ └───────┘ └────────┘ └──────────┘ │
└────────────────────────────────────────────────────────────────┘
🚀 Quick Start
Prerequisites
- Node.js 18+
- A Notion Integration (public or internal)
- OpenClaw (optional, for fleet integration)
1. Clone & Install
git clone https://github.com/awsdataarchitect/agentops.git
cd agentops
npm run setup
2. Configure
cp server/.env.example server/.env
Edit server/.env:
NOTION_CLIENT_ID=your_notion_client_id
NOTION_CLIENT_SECRET=your_notion_client_secret
S3_BACKUP_BUCKET=your-backup-bucket
PORT=3000
3. Run
npm start
4. Connect to Notion
- Click "Connect to Notion"
- Authorize the integration
- Click "Setup" to create databases and seed agents
- Start creating tasks or explore the dashboard
🤖 Built-in Agents
| Agent | Input | Output | How It Works | |-------|-------|--------|--------------| | Summarizer | URL | Extractive summary | Sentence scoring by word frequency + position | | Code Reviewer | Code snippet | Lint feedback | 20+ regex rules for security, style, best practices | | Sentiment Analyzer | Text | Score (-1 to 1) + label | Keyword scoring with negation + intensifiers |
All agents are self-contained — no external AI API keys required.
🔄 How It Works
- Human creates a task in the dashboard or directly in Notion
- Runtime polls the Task Queue every 10 seconds
- Matches task to an active agent by type
- Executes the agent, updating status in real-time
- Writes results to the Run Log in Notion
- Creates alerts if anything fails
- Human reviews in the dashboard or Notion
The key insight: Notion is both the UI and the database. Humans can pause agents, reprioritize tasks, review outputs, and acknowledge alerts — all by editing Notion pages.
📁 Project Structure
agentops/
├── server/
│ ├── src/
│ │ ├── index.js # Express + WebSocket server
│ │ ├── routes/
│ │ │ ├── auth.js # Notion OAuth flow
│ │ │ ├── setup.js # Database creation + seeding
│ │ │ ├── agents.js # Agent CRUD
│ │ │ ├── tasks.js # Task queue
│ │ │ ├── runs.js # Run log
│ │ │ ├── alerts.js # Alert management
│ │ │ ├── dashboard.js # Aggregated metrics
│ │ │ ├── dispatch.js # Manual dispatch
│ │ │ ├── openclaw.js # OpenClaw sync + events
│ │ │ ├── tokens.js # Token analytics
│ │ │ ├── workspace.js # Workspace sync
│ │ │ ├── tuning.js # Agent tuning
│ │ │ └── backup.js # Backup + clone
│ │ ├── services/
│ │ │ ├── notion.js # Notion API + schemas
│ │ │ ├── runtime.js # Agent runtime (poll + dispatch)
│ │ │ ├── state.js # Persistent state
│ │ │ ├── notion-utils.js # Block chunking helpers
│ │ │
Related Skills
node-connect
342.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
85.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
342.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
342.5kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
