acp-router
Route plain-language requests for Claude Code, Cursor, Copilot, OpenClaw ACP, OpenCode,…
Notion CLI/API for pages, Markdown content, data sources, files, comments, search, Workers, and raw API calls.
$ npx -y skills add openclaw/openclaw --skill notion --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/notionContext preview
The summary Claude sees to decide when to auto-load this skill.
Notion CLI/API for pages, Markdown content, data sources, files, comments, search, Workers, and raw API calls.
name: notion
description: "Notion CLI/API for pages, Markdown content, data sources, files, comments, search, Workers, and raw API calls."
homepage: https://developers.notion.com/cli/get-started/overview
metadata:
{
"openclaw":
{
"emoji": "📝",
"requires": { "anyBins": ["ntn", "curl"] },
"primaryEnv": "NOTION_API_TOKEN",
"install":
[
{
"id": "node",
"kind": "node",
"package": "ntn",
"bins": ["ntn"],
"label": "Install official Notion CLI (npm)",
},
],
},
}Prefer official `ntn` CLI. Use curl only when `ntn` is unavailable or a raw request is clearer.
npm install -g ntn ntn --version ntn login
Script/headless auth:
export NOTION_API_TOKEN=secret_or_ntn_token export NOTION_API_VERSION=2026-03-11
`ntn api` sets `Authorization` and `Notion-Version` automatically. It uses CLI login by default, or `NOTION_API_TOKEN` when set.
ntn doctor ntn api ls ntn api ls --json ntn api v1/comments --help ntn api v1/comments --spec -X POST ntn api v1/comments --docs -X POST
Markdown-first helpers:
ntn pages get <page-id> ntn pages get <page-id> --json ntn pages create --parent page:<page-id> --content '# Title\n\nBody' ntn pages create --parent data-source:<data-source-id> < page.md ntn pages update <page-id> --content '# Updated' ntn pages update <page-id> < page.md ntn pages trash <page-id> --yes
Notes:
ntn datasources resolve <database-id>
ntn datasources resolve <database-id> --json
ntn datasources query <data-source-id>
ntn datasources query <data-source-id> --limit 50 --json
ntn datasources query <data-source-id> --sort 'Date desc'
ntn datasources query <data-source-id> --filter '{"property":"Done","checkbox":{"equals":true}}'Use `resolve` when you have a database ID. Query needs a data source ID.
ntn api v1/users/me ntn api v1/search query=roadmap page_size:=10 ntn api v1/pages 'parent[data_source_id]='"$DS_ID" 'properties[Name][title][0][text][content]=New item' ntn api "v1/pages/$PAGE_ID" -X PATCH in_trash:=true ntn api "v1/blocks/$PAGE_ID/children" -X PATCH \ 'children[0][type]=paragraph' \ 'children[0][paragraph][rich_text][0][text][content]=Hello'
Input syntax:
ntn files create < image.png ntn files create --filename photo.png --content-type image/png < /tmp/photo ntn files create --external-url https://example.com/photo.png ntn files get <upload-id> ntn files list
ntn workers new ntn workers deploy ntn workers list --json ntn workers runs list --json ntn workers runs logs <run-id>
Workers may require Business/Enterprise plan and workspace enablement.
curl -sS "https://api.notion.com/v1/users/me" \ -H "Authorization: Bearer $NOTION_API_TOKEN" \ -H "Notion-Version: 2026-03-11" \ -H "Content-Type: application/json"
OpenClaw is an open-source AI assistant that runs on your own computer and meets you in the channels you already use: Discord, iMessage, Slack, Teams, Telegram, WhatsApp, and 20+ more, plus native apps for macOS, iOS, Android, Windows, and Linux.
Repo: openclaw/openclaw
Route plain-language requests for Claude Code, Cursor, Copilot, OpenClaw ACP, OpenCode,…
Use when controlling web pages with the OpenClaw browser tool, especially multi-step flows,…
Present hosted widget documents on a connected macOS panel and control panel visibility or…
Use when asked to open, run, test, or show an app in Crabbox, including native desktops, web…
Use the diffs tool to produce real, shareable diffs (viewer URL, file artifact, or both)…
Discord messaging workflows through OpenClaw's message tool.