Why Add Notion?
Syncing Notion pages allows your agent to:- Answer questions using your teamβs documentation
- Reference business definitions and glossaries
- Use onboarding docs, runbooks, and process guides as context
Adding Notion
During initialization When you runnao init, you can add Notion interactively:
nao_config.yaml:
api_keyβ Your Notion integration API key. Use{{ env('NOTION_API_KEY') }}to reference an environment variable.pagesβ List of Notion page IDs to sync. You can find a page ID in the page URL:https://notion.so/workspace/Page-ID-here.
What Happens at nao sync
When you runnao sync, nao:
- Connects to Notion using your API key
- Fetches each configured page and its content
- Exports pages as markdown files
- Writes them under
docs/notion/in your nao project
Databases and embedded views
nao sync exports Notion databases as markdown tables, both when a database is listed directly in notion.pages and when it is embedded inside a synced page. Previously an embedded database was replaced with a child_database is not supported note, leaving the file looking complete but missing the data - now the table content comes through.
A database referenced by its plain URL is exported in full, without any view-specific filtering. To export a specific view instead, include its ?v=<view_id> in the URL - the export then applies that viewβs filters, sorts, row order, and visible columns, so the agent sees the same slice you see in Notion.
Context Configuration
Initialize and configure your nao project
Synchronization
Learn how to sync and update your agentβs context