Source Code
Reflect Notes Skill
Reflect is a networked note-taking app. Notes are E2E encrypted, so the API is append-only โ we can write but not read note contents.
Setup
- Create OAuth credentials at https://reflect.app/developer/oauth
- Generate an access token from that interface
- Set environment variables:
export REFLECT_TOKEN="your-access-token" export REFLECT_GRAPH_ID="your-graph-id" # Find via: curl -H "Authorization: Bearer $REFLECT_TOKEN" https://reflect.app/api/graphs
Or store in 1Password and update scripts/reflect.sh with your vault/item path.
What We Can Do
- Append to daily notes โ Add items to today's note (or a specific date)
- Create new notes โ Create standalone notes with subject + markdown content
- Create links โ Save bookmarks with highlights
- Get links/books โ Retrieve saved links and books
API Reference
Base URL: https://reflect.app/api
Auth: Authorization: Bearer <access_token>
Append to Daily Note
curl -X PUT "https://reflect.app/api/graphs/$REFLECT_GRAPH_ID/daily-notes" \
-H "Authorization: Bearer $REFLECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"text": "Your text here",
"transform_type": "list-append",
"date": "2026-01-25", # optional, defaults to today
"list_name": "[[List Name]]" # optional, append to specific list
}'
Create a Note
curl -X POST "https://reflect.app/api/graphs/$REFLECT_GRAPH_ID/notes" \
-H "Authorization: Bearer $REFLECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"subject": "Note Title",
"content_markdown": "# Heading\n\nContent here...",
"pinned": false
}'
Create a Link
curl -X POST "https://reflect.app/api/graphs/$REFLECT_GRAPH_ID/links" \
-H "Authorization: Bearer $REFLECT_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com",
"title": "Page Title",
"description": "Optional description",
"highlights": ["Quote 1", "Quote 2"]
}'
Get Links
curl "https://reflect.app/api/graphs/$REFLECT_GRAPH_ID/links" \
-H "Authorization: Bearer $REFLECT_TOKEN"
Helper Script
Use scripts/reflect.sh for common operations:
# Append to daily note
./scripts/reflect.sh daily "Remember to review PR #6"
# Append to specific list in daily note
./scripts/reflect.sh daily "Buy milk" "[[Shopping]]"
# Create a new note
./scripts/reflect.sh note "Meeting Notes" "# Standup\n\n- Discussed X\n- Action item: Y"
# Save a link
./scripts/reflect.sh link "https://example.com" "Example Site" "Great resource"
Use Cases
- Capture todos from chat โ append to daily note
- Save interesting links mentioned in conversation
- Create meeting notes or summaries
- Sync reminders to Reflect for persistence
- Backlink to lists like
[[Ideas]]or[[Project Name]]
Limitations
- Cannot read note contents (E2E encrypted)
- Append-only โ can't edit or delete existing content
- No search โ can't query existing notes