Agent skill

Notion

by huangruiteng in huangruiteng/CS-Notes

Notion API for creating and managing pages, databases, and blocks.

MITAuto-check passed

Install Notion

skills CLI
$ npx skills add huangruiteng/CS-Notes --skill notion -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install huangruiteng/CS-Notes notion --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/huangruiteng/CS-Notes.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.trae/openclaw-skills/notion .claude/skills/notion && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
notion
GitHub stars
4k
Used in
15 other repos
Token cost
~1.3k tokens
SKILL.md length
262 words
Files
3
Skills in repo
38
Repo updated
First seen
Licence
MIT

At a glance

Notion API for creating and managing pages, databases, and blocks.

  • Works in 4 steps: Create an integration at… → Copy the API key (starts with ntn_ or… → Store it → …
  • SKILL.md covers Setup, API Basics, Common Operations and Property Types, plus 2 more sections
  • Calls curl; reaches api.notion.com; needs NOTION_KEY

What it does

Notion is an agent skill from huangruiteng/CS-Notes. Notion API for creating and managing pages, databases, and blocks.

Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files (for example `.clawhub/origin.json` and `_meta.json`).

It works with Notion. The licence is MIT.

Example prompts

  • “/notion”

Requirements

  • A credential in NOTION_KEY

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Create an integration at https://notion.so/my-integrations
  2. Copy the API key (starts with ntn_ or secret_)
  3. Store it
  4. Share target pages/databases with your integration (click "..." → "Connect to" → your integration name)

What it can do on your machine

Read from SKILL.md and the folder at commit d01d8f8. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • api.notion.com

    Also links to:

    • notion.so

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • NOTION_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Notion loads about 1.3k tokens when it runs. Until then it costs about 18 tokens; SKILL.md has 262 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~18
When it runs · the whole SKILL.md, loaded when a task matches
~1.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from huangruiteng/CS-Notes at commit d01d8f8, republished under its MIT licence (© huangruiteng). 262 words, ~1,258 tokens.

Download SKILL.mdSave it as .claude/skills/notion/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
notion
description
Notion API for creating and managing pages, databases, and blocks.
homepage
https://developers.notion.com

notion

Use the Notion API to create/read/update pages, data sources (databases), and blocks.

Setup

  1. Create an integration at https://notion.so/my-integrations
  2. Copy the API key (starts with ntn_ or secret_)
  3. Store it:
bash
mkdir -p ~/.config/notion
echo "ntn_your_key_here" > ~/.config/notion/api_key
  1. Share target pages/databases with your integration (click "..." → "Connect to" → your integration name)

API Basics

All requests need:

bash
NOTION_KEY=$(cat ~/.config/notion/api_key)
curl -X GET "https://api.notion.com/v1/..." \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json"

Note: The Notion-Version header is required. This skill uses 2025-09-03 (latest). In this version, databases are called "data sources" in the API.

Common Operations

Search for pages and data sources:

bash
curl -X POST "https://api.notion.com/v1/search" \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json" \
  -d '{"query": "page title"}'

Get page:

bash
curl "https://api.notion.com/v1/pages/{page_id}" \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03"

Get page content (blocks):

bash
curl "https://api.notion.com/v1/blocks/{page_id}/children" \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03"

Create page in a data source:

bash
curl -X POST "https://api.notion.com/v1/pages" \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json" \
  -d '{
    "parent": {"database_id": "xxx"},
    "properties": {
      "Name": {"title": [{"text": {"content": "New Item"}}]},
      "Status": {"select": {"name": "Todo"}}
    }
  }'

Query a data source (database):

bash
curl -X POST "https://api.notion.com/v1/data_sources/{data_source_id}/query" \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json" \
  -d '{
    "filter": {"property": "Status", "select": {"equals": "Active"}},
    "sorts": [{"property": "Date", "direction": "descending"}]
  }'

Create a data source (database):

bash
curl -X POST "https://api.notion.com/v1/data_sources" \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json" \
  -d '{
    "parent": {"page_id": "xxx"},
    "title": [{"text": {"content": "My Database"}}],
    "properties": {
      "Name": {"title": {}},
      "Status": {"select": {"options": [{"name": "Todo"}, {"name": "Done"}]}},
      "Date": {"date": {}}
    }
  }'

Update page properties:

bash
curl -X PATCH "https://api.notion.com/v1/pages/{page_id}" \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json" \
  -d '{"properties": {"Status": {"select": {"name": "Done"}}}}'

Add blocks to page:

bash
curl -X PATCH "https://api.notion.com/v1/blocks/{page_id}/children" \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json" \
  -d '{
    "children": [
      {"object": "block", "type": "paragraph", "paragraph": {"rich_text": [{"text": {"content": "Hello"}}]}}
    ]
  }'

Property Types

Common property formats for database items:

  • Title: {"title": [{"text": {"content": "..."}}]}
  • Rich text: {"rich_text": [{"text": {"content": "..."}}]}
  • Select: {"select": {"name": "Option"}}
  • Multi-select: {"multi_select": [{"name": "A"}, {"name": "B"}]}
  • Date: {"date": {"start": "2024-01-15", "end": "2024-01-16"}}
  • Checkbox: {"checkbox": true}
  • Number: {"number": 42}
  • URL: {"url": "https://..."}
  • Email: {"email": "a@b.com"}
  • Relation: {"relation": [{"id": "page_id"}]}

Key Differences in 2025-09-03

  • Databases → Data Sources: Use /data_sources/ endpoints for queries and retrieval
  • Two IDs: Each database now has both a database_id and a data_source_id
    • Use database_id when creating pages (parent: {"database_id": "..."})
    • Use data_source_id when querying (POST /v1/data_sources/{id}/query)
  • Search results: Databases return as "object": "data_source" with their data_source_id
  • Parent in responses: Pages show parent.data_source_id alongside parent.database_id
  • Finding the data_source_id: Search for the database, or call GET /v1/data_sources/{data_source_id}

Notes

  • Page/database IDs are UUIDs (with or without dashes)
  • The API cannot set database view filters — that's UI-only
  • Rate limit: ~3 requests/second average
  • Use is_inline: true when creating data sources to embed them in pages

© huangruiteng, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files in .trae/openclaw-skills/notion of huangruiteng/CS-Notes.

  • SKILL.md
  • .clawhub/origin.json
  • _meta.json

Open the folder on GitHubat commit d01d8f8

Used in 16 other repositories

We found 17 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 15 other GitHub owners. This page covers the copy in huangruiteng/CS-Notes, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Notion next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Notion compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Notion this skillhuangruiteng/CS-Notes4k15 repos~1.3kAutomated safety check: PassMIT
Code Design Rationale Investigatorcursor/plugins10k9 repos~2.6kAutomated safety check: PassNone
Xiaohei Chinese Article Illustrationshelloianneo/ian-xiaohei-illustrations12k3 repos~470Automated safety check: WarnMIT
ComposioComposioHQ/composio30k1 repos~1.7kAutomated safety check: PassMIT
Debug SkillTypeCellOS/BlockNote10k—~1.8kAutomated safety check: PassCustom licence
Marketing PlanNexus-JPF/note-companion8705 repos~5.2kAutomated safety check: PassMIT

Similar skills

  • Official

    Digs into why code is shaped the way it is by checking git history, pull requests and connected tools in parallel, then reporting a cited read on the tradeoffs.

    10k GitHub starsUsed in 9 repos~2.6k tokens
    DevelopmentAuto-check passed
  • Xiaohei Chinese Article Illustrations

    helloianneo/ian-xiaohei-illustrations

    Plans and generates 16:9 hand-drawn illustrations for Chinese articles on a white background, with a recurring black character and a few red, orange and blue handwritten notes.

    12k GitHub starsUsed in 3 repos~470 tokens
    Media & CreativeAuto-check: warnings
  • Composio

    ComposioHQ/composio

    Route and complete Composio work across Composio For You and Composio Platform.

    30k GitHub starsUsed in 1 repo~1.7k tokens
    Productivity & AutomationAuto-check passed
  • Debug Skill

    TypeCellOS/BlockNote

    Instructions for navigating and debugging BlockNote in a browser.

    10k GitHub stars~1.8k tokensUpdated today
    DevelopmentAuto-check passed
  • Marketing Plan

    Nexus-JPF/note-companion

    When the user needs a comprehensive marketing plan for a client, a company they advise, or their own product.

    870 GitHub starsUsed in 5 repos~5.2k tokens
    Marketing & SEOAuto-check passed
  • Docs Skill

    TypeCellOS/BlockNote

    Conventions and verification workflow for writing and restructuring the documentation site (docs/content).

    10k GitHub stars~1.9k tokensUpdated today
    Frontend & DesignAuto-check passed

More from huangruiteng/CS-Notes

All 38 skills in this repo
  • CLI Creator

    huangruiteng/CS-Notes

    Build a composable CLI for Codex from API docs, an OpenAPI spec, existing curl examples, an SDK, a web app, an admin tool, or a local script.

    4k GitHub starsUsed in 2 repos~2.7k tokens
    Auto-check passed
  • Slack

    huangruiteng/CS-Notes

    A skill your agent uses when you need to control Slack from Clawdbot via the slack tool, including reacting to messages or pinning/unpinning items in Slack channels or DMs.

    4k GitHub starsUsed in 10 repos~578 tokens
    Auto-check passed
  • Codex Thread Heartbeat

    huangruiteng/CS-Notes

    Inspect and manage guarded Codex App-native or launchd heartbeats for Codex main control threads.

    4k GitHub stars~1.5k tokensUpdated 2 days ago
    Auto-check passed
  • Codex Thread Reader

    huangruiteng/CS-Notes

    Locate and read a Codex thread by a codex thread link, thread id, or rollout path across all local CODEXHOME directories (~/.codex, ~/.codex-gpt, ...).

    4k GitHub stars~1.4k tokensUpdated 2 days ago
    Auto-check passed
  • Research Material Scout

    huangruiteng/CS-Notes

    A skill your agent uses when the user asks Codex to research, find learning materials, process "素材:" links, "请你读" / "精读" a material, build a material radar, or use SenSight-like broad information…

    4k GitHub stars~8.6k tokensUpdated 2 days ago
    Auto-check passed
  • GitHub

    huangruiteng/CS-Notes

    Interact with GitHub using the gh CLI. An agent skill from huangruiteng/CS-Notes.

    4k GitHub starsUsed in 28 repos~279 tokens
    Auto-check passed

Works with

Questions about Notion

What does Notion do?

Notion API for creating and managing pages, databases, and blocks. Notion is an agent skill from huangruiteng/CS-Notes. Notion API for creating and managing pages, databases, and blocks.

How do I install Notion in Claude Code?

Run `npx skills add huangruiteng/CS-Notes --skill notion -a claude-code`. Or copy the skill folder (.trae/openclaw-skills/notion in huangruiteng/CS-Notes) into .claude/skills/notion in your project. Claude Code loads it when a task matches its description.

How do I install Notion in Codex?

Run `npx skills add huangruiteng/CS-Notes --skill notion -a codex`. Or copy the skill folder (.trae/openclaw-skills/notion in huangruiteng/CS-Notes) into .agents/skills/notion in your project. Codex loads it when a task matches its description.

Can I use Notion in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add huangruiteng/CS-Notes --skill notion -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/notion, .gemini/skills/notion, .github/skills/notion and .opencode/skills/notion in your project.

What does Notion need to run?

Going by SKILL.md and its folder, Notion needs the command-line tools its instructions call (curl) and credentials named NOTION_KEY. Our summary lists: A credential in NOTION_KEY.

Does Notion access the network?

SKILL.md names 2 domains. In commands or code: api.notion.com; the agent is likely to contact it when it follows the instructions. As links in the text: notion.so. This is read from the text; nothing was executed.

Is Notion safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Notion use?

Notion is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Notion use?

About 1.3k tokens (SKILL.md is roughly 5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Notion?

Skills that share tags, products or a category with Notion: Code Design Rationale Investigator (cursor/plugins, 10k stars), Xiaohei Chinese Article Illustrations (helloianneo/ian-xiaohei-illustrations, 12k stars), Composio (ComposioHQ/composio, 30k stars) and Debug Skill (TypeCellOS/BlockNote, 10k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Notion?

huangruiteng (a GitHub user) maintains it in huangruiteng/CS-Notes, which has 4,000 GitHub stars. The repository holds 38 skills in this directory. The repository was last updated on October 6, 2026.

Source: huangruiteng/CS-Notes on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.