From sjh-skills
Manages the user's Notion-based LifeOS (PARA method + Make Time) with tasks, notes, projects, journals, and resources via MCP or REST API.
How this skill is triggered — by the user, by Claude, or both
Slash command
/sjh-skills:notion-lifeosThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
A Notion life management system based on the PARA method and Make Time framework.
CONFIG.private.md.exampleJEFF_SU_SUMMARY.mdLICENSEREADME.mdREADME.zh-CN.mdevals/trigger_eval.jsonreferences/advanced.mdreferences/api-guide.mdreferences/mcp-guide.mdreferences/query-guide.mdreferences/schema.mdreferences/setup.mdscripts/check_today_journal.shscripts/collect-drift-data.shscripts/create-task.shscripts/list_undone_tasks.shscripts/query-notes.shscripts/query-projects.shscripts/query-tasks.shA Notion life management system based on the PARA method and Make Time framework.
See JEFF_SU_SUMMARY.md for detailed design philosophy.
Read these as needed — do NOT load them all upfront:
| File | When to read |
|---|---|
| references/schema.md | Before creating/updating any entry (get field names & types) |
| references/mcp-guide.md | When using MCP tools (Claude Code / Claude.ai) |
| references/api-guide.md | When using REST API (OpenClaw / Codex / other agents) |
| references/query-guide.md | When querying/filtering data (tasks by date, done status, etc.) |
| references/advanced.md | For composite intents or error handling |
notion-search is semantic only and CANNOT filter by property values.| User Intent | Target DB | Method |
|---|---|---|
| "Take a note about XXX" | Notes | MCP / API |
| "Add a task: XXX" | Task | scripts/create-task.sh / MCP / API |
| "The best thing today was..." | Make Time | MCP / API (check dedup first) |
| "Create project XXX" | Projects | MCP / API |
| "Today's tasks" | Task | scripts/query-tasks.sh --date today |
| "Any unfinished tasks?" | Task | scripts/query-tasks.sh --undone |
| "Today's unfinished tasks" | Task | scripts/query-tasks.sh --date today --undone |
| "Search notes about XX" | Notes | MCP notion-search |
| "Add a resource/reference" | Resources | MCP / API |
| "Query my recent thoughts" | Notes | scripts/query-notes.sh --type Thoughts |
| "List active projects" | Projects | scripts/query-projects.sh |
| "Tasks completed this month" | Task | scripts/query-tasks.sh --done --since YYYY-MM-DD --by-edited |
| "/challenge X" | Notes | scripts/query-notes.sh + CC analysis (see Reflection Commands) |
| "/emerge" | Notes | scripts/query-notes.sh + CC analysis (see Reflection Commands) |
| "/drift" | Projects + Task + Git | scripts/collect-drift-data.sh + CC analysis (see Reflection Commands) |
For Note Type selection and Make Time journal extraction logic, see references/query-guide.md. For composite intents (multiple actions in one message), see references/advanced.md.
~/.config/notion-lifeos/CONFIG.private.md for IDs (fallback: CONFIG.private.md in skill dir). If missing, search for "LifeOS" root page (NOT "LifeOS Template"). Last resort: guide user to references/setup.md.scripts/check_today_journal.sh). Update if exists.2026-03-08).These commands use Notion data + Git history as input, with CC performing the analysis. Output is terminal only — never write to Notion.
Stress-test a current belief against past writing.
scripts/query-notes.sh --type Thoughts --days 90 --limit 50notion-fetch to read the top 15-20 most relevant notes (do NOT fetch all 50 — context budget)Surface recurring themes and hidden patterns in recent thinking.
scripts/query-notes.sh --type Thoughts --days 30 --limit 50notion-fetch to read those 15 notesDetect gaps between stated goals and actual activity.
scripts/collect-drift-data.sh --days N (default 30)~/.claude/rules/personal-context.md for project↔repo mapping hints__YES__ / __NO__, NOT true/falseuserDefined: (e.g., userDefined:URL)date:PropName:start, date:PropName:end, date:PropName:is_datetimedatabase_id, MCP uses data_source_id — they differnpx claudepluginhub jiahao-shao1/sjh-skills --plugin sjh-skillsDesigns a personal knowledge management system using the CODE framework (Capture, Organize, Distill, Express) for capturing, organizing, and retrieving notes and ideas.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
Applies a firm's KYC/AML rules grid to parsed onboarding records: assigns risk rating, checks required documents, outputs rule outcomes with citations, and routes for escalation.