Initial commit with translated description
This commit is contained in:
29
README.md
Normal file
29
README.md
Normal file
@@ -0,0 +1,29 @@
|
||||
# Notion Skill
|
||||
|
||||
This skill enables working with Notion pages and databases via the official Notion API.
|
||||
|
||||
## Quick Start
|
||||
|
||||
1. Create a Notion Integration at https://www.notion.so/my-integrations
|
||||
2. Copy the Internal Integration Token
|
||||
3. Export it: `export NOTION_API_KEY=secret_xxx`
|
||||
4. Share the integration with pages/databases you want to access
|
||||
|
||||
## Features
|
||||
|
||||
- Read and create pages
|
||||
- Append blocks to pages
|
||||
- Query databases
|
||||
- Create and update database rows
|
||||
- Schema inspection and changes (with safety checks)
|
||||
|
||||
## Requirements
|
||||
|
||||
- `NOTION_API_KEY` environment variable
|
||||
- `notion-cli` (Node.js) or `notion-cli-py` (Python) - see installation instructions in SKILL.md
|
||||
|
||||
## Version
|
||||
|
||||
Current version: 0.1.0
|
||||
|
||||
This is a declarative skill that documents safe, recommended operations. The actual API calls are performed by a local CLI tool.
|
||||
114
SKILL.md
Normal file
114
SKILL.md
Normal file
@@ -0,0 +1,114 @@
|
||||
---
|
||||
name: notion
|
||||
description: "通过官方Notion API处理Notion页面和数据库。"
|
||||
homepage: https://developers.notion.com
|
||||
metadata:
|
||||
clawdbot:
|
||||
emoji: 🧠
|
||||
requires:
|
||||
env:
|
||||
- NOTION_API_KEY
|
||||
install:
|
||||
- id: node
|
||||
kind: note
|
||||
label: "Requires notion-cli (Node.js) or notion-cli-py (Python). See docs below."
|
||||
---
|
||||
|
||||
# Notion
|
||||
|
||||
This skill lets the agent work with **Notion pages and databases** using the official Notion API.
|
||||
|
||||
The skill is declarative: it documents **safe, recommended operations** and assumes a local CLI
|
||||
(`notion-cli`) that actually performs API calls.
|
||||
|
||||
## Authentication
|
||||
|
||||
- Create a Notion Integration at https://www.notion.so/my-integrations
|
||||
- Copy the Internal Integration Token.
|
||||
- Export it as:
|
||||
|
||||
```bash
|
||||
export NOTION_API_KEY=secret_xxx
|
||||
```
|
||||
|
||||
Share the integration with the pages or databases you want to access.
|
||||
Unshared content is invisible to the API.
|
||||
|
||||
## Profiles (personal / work)
|
||||
|
||||
You may define multiple profiles (e.g. personal, work) via env or config.
|
||||
|
||||
Default profile: personal
|
||||
|
||||
Override via:
|
||||
|
||||
```bash
|
||||
export NOTION_PROFILE=work
|
||||
```
|
||||
|
||||
## Pages
|
||||
|
||||
**Read page:**
|
||||
|
||||
```bash
|
||||
notion-cli page get <page_id>
|
||||
```
|
||||
|
||||
**Append blocks:**
|
||||
|
||||
```bash
|
||||
notion-cli block append <page_id> --markdown "..."
|
||||
```
|
||||
|
||||
Prefer appending over rewriting content.
|
||||
|
||||
**Create page:**
|
||||
|
||||
```bash
|
||||
notion-cli page create --parent <page_id> --title "..."
|
||||
```
|
||||
|
||||
## Databases
|
||||
|
||||
**Inspect schema:**
|
||||
|
||||
```bash
|
||||
notion-cli db get <database_id>
|
||||
```
|
||||
|
||||
**Query database:**
|
||||
|
||||
```bash
|
||||
notion-cli db query <database_id> --filter <json> --sort <json>
|
||||
```
|
||||
|
||||
**Create row:**
|
||||
|
||||
```bash
|
||||
notion-cli page create --database <database_id> --props <json>
|
||||
```
|
||||
|
||||
**Update row:**
|
||||
|
||||
```bash
|
||||
notion-cli page update <page_id> --props <json>
|
||||
```
|
||||
|
||||
## Schema changes (advanced)
|
||||
|
||||
Always inspect diffs before applying schema changes.
|
||||
|
||||
Never modify database schema without explicit confirmation.
|
||||
|
||||
Recommended flow:
|
||||
|
||||
```bash
|
||||
notion-cli db schema diff <database_id> --desired <json>
|
||||
notion-cli db schema apply <database_id> --desired <json>
|
||||
```
|
||||
|
||||
## Safety notes
|
||||
|
||||
- Notion API is rate-limited; batch carefully.
|
||||
- Prefer append and updates over destructive operations.
|
||||
- IDs are opaque; store them explicitly, do not infer from URLs.
|
||||
6
_meta.json
Normal file
6
_meta.json
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"ownerId": "kn74xbafpdxdkny48h4mf5dmcd8019j4",
|
||||
"slug": "notion-skill",
|
||||
"version": "1.0.0",
|
||||
"publishedAt": 1769524433792
|
||||
}
|
||||
Reference in New Issue
Block a user