Commit ec6b6b4
extensions: add Notion integration for read-only workspace access
Add notion.ts extension providing read-only access to Notion workspaces via
the Notion REST API. Enables agents to search for pages/databases, retrieve
full page content with nested blocks, query database entries with filters,
and inspect database schemas.
Features:
- Search: Find pages and databases by text query or type filter
- Get: Retrieve complete page content formatted as markdown, including
paragraphs, headings, lists, code blocks, callouts, and nested content
(up to 1 level deep)
- List: Query database entries with JSON filters and sorting
- Database: Inspect schema and property types
Configuration:
- NOTION_API_KEY (internal integration token) in ~/.config/.env
- Pages/databases must be explicitly shared with the integration
- Read-only access (no write, update, or delete capabilities)
Documentation:
- Updated .env.schema with NOTION_API_KEY configuration
- Updated CONFIGURATION.md with setup instructions and capabilities
- Added comprehensive docs/notion-integration.md covering setup,
usage examples, use cases, limitations, security, and troubleshooting
Use cases:
- Documentation lookup during task execution
- Specification and ADR retrieval for dev-agents
- Project database queries for task context
The integration follows the same pattern as existing extensions (linear.ts,
sentry-monitor.ts) and includes proper error handling, type safety, and
security considerations (token stored in 600-perms env file, read-only
access enforced by API capabilities).
Tested with TypeScript compilation (no errors) and biome linting (clean).1 parent 66cb52b commit ec6b6b4
5 files changed
Lines changed: 792 additions & 3 deletions
File tree
- docs
- pi/extensions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
182 | 182 | | |
183 | 183 | | |
184 | 184 | | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
185 | 192 | | |
186 | 193 | | |
187 | 194 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
84 | 84 | | |
85 | 85 | | |
86 | 86 | | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
87 | 104 | | |
88 | 105 | | |
89 | 106 | | |
| |||
0 commit comments