Ability Name: community/notion-quick-capture#188
Ability Name: community/notion-quick-capture#188azazrashid wants to merge 9 commits intoopenhome-dev:devfrom
Conversation
Add notion-quick-capture community ability
Voice inbox for Notion: capture tasks and notes, search pages,
read content, and query databases by voice via the Notion API.
Deliverables:
- community/notion-quick-capture/main.py — ability logic (quick add
to database, quick note to page, search, read page, query database;
first-run setup with token validation and database discovery;
handling for multi-data-source DBs and invalid tokens)
- community/notion-quick-capture/config.json — unique_name and
matching_hotwords for trigger registration
- community/notion-quick-capture/__init__.py — package marker
- community/notion-quick-capture/README.md — setup (integration
creation, sharing with OpenHome), trigger words, example flows,
API usage, limitations
Behavior:
- Uses Notion API 2022-06-28; internal integration token (no OAuth).
- Persists integration_token, databases (nickname + schema cache),
notes_page_id in notion_capture_prefs.json (delete-then-write).
- Validates token on startup; re-runs setup if invalid.
- Skips/removes databases that use multiple data sources (unsupported).
- Quick add/query fall back to title-only or no filter when schema
fetch fails.
- Exit words and resume_normal_flow() on all paths; editor_logging_handler
only; no blocked imports.
Suggested Trigger Words
"notion",
"add to my tasks",
"new task",
"add a note",
"add to notion",
"notion note",
"search notion",
"find in notion",
"read from notion",
"notion tasks",
"what tasks",
"capture to notion"
Demo:
https://www.loom.com/share/8b19595010914807a8ec50da118bb8b5
https://www.loom.com/share/ce9d7c49a9a64556919c9684555323e8
🔀 Branch Merge CheckPR direction: ✅ Passed — |
✅ Ability Validation Passed |
✅ Community PR Path Check — PassedAll changed files are inside the |
🔍 Lint Results✅
|
Signed-off-by: Abubakar Abbasi <abubakarabbasi541@gmail.com>
|
I checked the setup on the link, and I did not get the |
|
@abubakar4360 I checked and it's there. You have to go to the notion.so/profile url and create an internal integration. |
|
Hello @azazrashid, I checked the demo, great work on the notion ability. The schema caching design is smart — fetching and storing Notion property types once and reusing them across the session keeps the LLM property-mapping prompt accurate without hammering the API on every command. A few things to fix before this can go through:
|
uzair401
left a comment
There was a problem hiding this comment.
Hi @azazrashid, Please address the issues highlighted by @abubakar4360, and then we will proceed further.

Add notion-quick-capture community ability
Voice inbox for Notion: capture tasks and notes, search pages, read content, and query databases by voice via the Notion API.
Deliverables:
Behavior:
Suggested Trigger Words
"notion",
"add to my tasks",
"new task",
"add a note",
"add to notion",
"notion note",
"search notion",
"find in notion",
"read from notion",
"notion tasks",
"what tasks",
"capture to notion"
Demo:
https://www.loom.com/share/8b19595010914807a8ec50da118bb8b5 https://www.loom.com/share/ce9d7c49a9a64556919c9684555323e8
Type
Checklist
community/my-ability-name/main.pyfollows SDK pattern (extendsMatchingCapability, hasregister_capability+call)README.mdincluded with description, suggested triggers, and setupresume_normal_flow()called on every exit pathprint()— usingeditor_logging_handlerredis,connection_manager,user_config)asyncio.sleep()orasyncio.create_task()— usingsession_tasks