clarify
Skill0 starsChanged 7 months agoMITView on GitHub
Process inbox items using GTD workflow
80 other projects use a version of this.
Adopted by
Most recently taken up by
- PeanutGT/NutsSkillstheir own version, first seen Nov 8, 2026
- venhdev/skillstheir own version, first seen Nov 8, 2026
- mel0nyrame/skillstheir own version, first seen Nov 8, 2026
- Integralist/agent-skillstheir own version, first seen Nov 6, 2026
- theexperiencecompany/gaiatheir own version, first seen Nov 3, 2026
- mag123c/toktracktheir own version, first seen Nov 3, 2026
Used with
Projects with it also use quieter, arrange and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
HK-hubSkillquieter
Tones down visually aggressive or overstimulating designs, reducing intensity while preserving quality. Use when the user mentions too bold, too loud, overwhelming, aggressive, garish, or wants a calmer, more refined aesthetic.
Also in 29 projects that use this
HK-hubSkillarrange
Improve layout, spacing, and visual rhythm. Fixes monotonous grids, inconsistent spacing, and weak visual hierarchy. Use when the user mentions layout feeling off, spacing issues, visual hierarchy, crowded UI, alignment problems, or wanting better composition.
Also in 14 projects that use this
zwy123zwySkillnormalize
将用户随意输入的提示词规范化为结构清晰、便于大模型执行的标准化提示词。适用于需要整理、统一提示词格式时调用。
Also in 19 projects that use this
owshq-mecSkilllayout
Improve layout, spacing, and visual rhythm. Fixes monotonous grids, inconsistent spacing, and weak visual hierarchy. Use when the user mentions layout feeling off, spacing issues, visual hierarchy, crowded UI, alignment problems, or wanting better composition.
Also in 8 projects that use this
- +8 more from HK-hub
Other versions80 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 80
- spool-lab/spool★ 592same name
- paperboytm/spool★ 590same name
- talesofai/cohub★ 585same name
- zaxbysauce/opencode-swarm★ 519same name
- ZaxbyHub/opencode-swarm★ 518same name
- educlopez/ui-craft★ 441same name
- nexmoe/DayBee★ 424same name
- nexmoe/eve★ 424same name
- ryanthedev/code-foundations★ 381same name
- Southclaws/storyden★ 348same name
70 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository9 other files it gives its agents.
- obsidian-gtd-cliAGENTS.md
- nextSkill
- organizeSkill
- projectSkill
- purgeSkill
- reviewSkill
- stuckSkill
- systems-reviewSkill
- task-prioritisationSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
43 rules. 0 are common, 25 are distinctive, and 18 are very specific to this project.
0
Common
Most of the 77 edited versions we read keep these.
25
Distinctive
This author's own choices. Worth a look.
18
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 18
Mark done: prefer python3 tools/obsidian_tasks.py done ...
- Very specific: line 19
Cancel/drop with history: prefer python3 tools/obsidian_tasks.py cancel ...
- Very specific: line 20
Rewrite task text: prefer python3 tools/obsidian_tasks.py rewrite ...
- Very specific: line 21
Change priority / someday: prefer python3 tools/obsidian_tasks.py set-priority ...
- Very specific: line 34
When batch editing or moving tasks, prefer description matching over line numbers.
- Very specific: line 35
When a recurring task mutation is not covered by the wrappers, suggest extending tools/obsidian_tasks.py before reaching for a one-off raw …
- Very specific: line 39
CRITICAL: Never run parallel writes to the same file.
- Distinctive: line 44
Default to batch suggestions: present numbered options/sub-options before edits.
- Distinctive: line 45
Treat explicit user selections as confirmation for those chosen actions.
- Distinctive: line 46
If an action is unclear, destructive (delete/move), or conflicts with stated preferences, pause and ask for explicit yes/no before running …
- Very specific: line 47
Use --dry-run only when requested.
- Very specific: line 52
If any selection is ambiguous/destructive/conflicting, ask for explicit confirmation on those items.
- Very specific: line 64
Use the /obsidian skill's GTD Inbox Dataview eval query.
- Distinctive: line 65
No context tags (@deep, @quick, @batch, @read, @partner, @out, etc.)
- Distinctive: line 66
Not scheduled or overdue
- Distinctive: line 67
Not in excluded folders (Checklists, Templates, Recurring)
- Distinctive: line 68
Not blocked or done
- Distinctive: line 75
If there are more than 10 inbox items, present only the first 10 and process them.
- Distinctive: line 76
After those are handled, ask whether to show the next 10.
- Very specific: line 82
Always preserve the original link in the rewritten task line.
- Very specific: line 83
Place links before context tags (e.g., Task https://...
- Very specific: line 85
If the task contains a TikTok or Instagram URL, auto-assign @batch in the background without presenting options, then continue with the …
- Very specific: line 89
When a task contains a bare TikTok URL (e.g., https://vm.tiktok.com/...), resolve it to a descriptive markdown link using curl with the …
- Distinctive: line 111
Write a short, natural, lowercase title (sentence case) summarising the video content
- Distinctive: line 114
Keep it concise (under ~80 chars)
- Distinctive: line 119
If the user says a weekday (e.g., "Tuesday" or "Thursday"), schedule the task for the first upcoming occurrence of that day.
- Distinctive: line 123
If an item is clearly a book, game, product, or other reference, suggest creating a reference note (using the appropriate reference …
- Distinctive: line 135
YES: Do it now, mark as done
- Distinctive: line 139
Defer: Add context tag + scheduled date
- Distinctive: line 140
Delegate: Add @waiting tag + person
- Distinctive: line 141
Do ASAP: Add context tag
- Very specific: line 143
Use the /obsidian skill's preferred order to execute these actions:
- Distinctive: line 206
When scheduling, you can use:
- Distinctive: line 216
One action per task: - If multiple steps, it's a project
- Distinctive: line 217
Always add context: - Every actionable task gets a context tag
- Distinctive: line 218
Schedule deferred items: - If not now, when?
- Very specific: line 223
Use the /obsidian skill's inbox query with .slice(0, 5) to process just a few items at a time
- Distinctive: line 227
All file modifications are tracked via git - commit regularly to preserve history
- Distinctive: line 231
After processing, tasks with context tags will appear in their respective Dashboard.md sections:
- Distinctive: line 242
Use the gmcli skill/tooling for Gmail actions and follow the same confirmation-first pattern.
- Very specific: line 245
When creating tasks from Gmail, use the /obsidian skill ($OBS vault=$VAULT daily:path then $OBS vault=$VAULT append path=...
- Distinctive: line 246
When suggesting options for Gmail triage, include a recommended context tag (e.g., @batch/@quick) and note that archiving is the default …
- Very specific: line 250
Archive syntax: Use gmcli <email> labels <threadId...> --remove INBOX (flag form).
“Common” is measured: kept by at least 6 in 10 of the 77 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
GTD Clarify Skill
Help process unprocessed items in the Obsidian vault using GTD (Getting Things Done) methodology.
Vault Operations
Use the /obsidian skill for all vault reads and writes. Load it before running any commands:
→ ~/.claude/skills/obsidian/SKILL.md
Quick reference (see /obsidian skill for full patterns):
- Find inbox items: Dataview eval inbox query
- Add task to daily note:
daily:path+append - Mark done: prefer
python3 tools/obsidian_tasks.py done ...(wraps nativetask ... done) - Cancel/drop with history: prefer
python3 tools/obsidian_tasks.py cancel ...→- [x] ... ❌ YYYY-MM-DD - Rewrite task text: prefer
python3 tools/obsidian_tasks.py rewrite ... - Change priority / someday: prefer
python3 tools/obsidian_tasks.py set-priority ... - Add task under heading: eval +
vault.process()insert-under-heading - Move task: eval +
vault.process()(delete from source + append to dest) - Delete task permanently: eval +
vault.process()splice
Open Today's Daily Note in Obsidian
cmd.exe /c start "" "obsidian://daily"Stable Targeting (Avoid Line-Shift Errors)
When batch editing or moving tasks, prefer description matching over line numbers.
When a recurring task mutation is not covered by the wrappers, suggest extending tools/obsidian_tasks.py before reaching for a one-off raw script.
Avoid Parallel Edits to the Same File
CRITICAL: Never run parallel writes to the same file. app.vault.process() is atomic per call, but two concurrent evals on the same file will race. Sequence writes to the same file; different files can be parallel.
IMPORTANT: Confirmation & Execution
CRITICAL (aligned with safety):
- Default to batch suggestions: present numbered options/sub-options before edits.
- Treat explicit user selections as confirmation for those chosen actions.
- If an action is unclear, destructive (delete/move), or conflicts with stated preferences, pause and ask for explicit yes/no before running tools.
- Use
--dry-runonly when requested.
Agents should:
- Find and display inbox items.
- Present batch suggestions (numbered/sub-options) and capture the user's selections.
- If any selection is ambiguous/destructive/conflicting, ask for explicit confirmation on those items; otherwise proceed.
- Execute the selected actions with stable matching (description-based).
- Summarize what changed.
Batch Suggestion Mode (Default)
Present options as numbered items with sub-options (e.g., 1, 1.1, 1.2, 2, 2.1) for inbox processing by default. Users may respond with multiple selections in a single message (e.g., 1.1 2.2 3.1 4.2) — process all of them together: archive in one batch call, add tasks in sequence, then confirm. If an item clearly needs multiple steps, include a sub-option to promote it to a project (e.g., 1.3 Create project: "<Name>" and seed next actions). When suggesting actions, always look for opportunities to complete the task using an LLM agent (e.g., Claude Code CLI, Codex CLI, Gemini CLI). When a task could be accelerated by an LLM agent (drafting, summarizing, research, email), include a sub-option to delegate to an agent (e.g., 1.4 Use LLM agent to draft/research/summarize) and also suggest adding @ai context tag to those tasks. After selections, proceed unless a step is ambiguous, destructive, or conflicting-then ask to confirm those specific items.
Workflow
1. Find Inbox Items
Use the /obsidian skill's GTD Inbox Dataview eval query. It finds tasks that need clarification:
- No context tags (@deep, @quick, @batch, @read, @partner, @out, etc.)
- Not scheduled or overdue
- Not in excluded folders (Checklists, Templates, Recurring)
- Not blocked or done
- Excludes
@somedayand lowest-priority (⏬) items
For someday/maybe items, use the /obsidian skill's Someday/maybe query.
1.0 Batch Size Guidance
If there are more than 10 inbox items, present only the first 10 and process them. After those are handled, ask whether to show the next 10. Repeat until the user stops or the inbox is cleared.
1.1 Link-Heavy Items
For raw URLs, default to actions like "Read/Watch [source]" with @batch unless the user prefers archiving or a different context.
Always preserve the original link in the rewritten task line.
Place links before context tags (e.g., Task https://... @batch).
If the task contains a TikTok or Instagram URL, auto-assign @batch in the background without presenting options, then continue with the rest.
TikTok Title Resolution
When a task contains a bare TikTok URL (e.g., https://vm.tiktok.com/...), resolve it to a descriptive markdown link using curl with the facebookexternalhit user-agent (TikTok serves OG metadata to social crawlers):
# 1. Resolve the short URL to get the canonical URL
resolved=$(curl -sL -o /dev/null -w "%{url_effective}" "https://vm.tiktok.com/ZNRfjoYEP/")
# 2. Fetch OG description from the resolved URL
desc=$(curl -sL -H "User-Agent: facebookexternalhit/1.1" "$resolved" \
| grep -oP 'og:description.*?content="[^"]*"' \
| sed 's/.*content="//;s/"//')Then rewrite the task line from:
- [ ] https://vm.tiktok.com/ZNRfjoYEP/ @batchto:
- [ ] [Short descriptive title](https://vm.tiktok.com/ZNRfjoYEP/) @batchGuidelines for the title:
- Write a short, natural, lowercase title (sentence case) summarising the video content
- Derive it from the
og:descriptioncontent returned by curl - Strip like/comment counts, hashtags, and disclaimers — just capture the gist
- Keep it concise (under ~80 chars)
- Batch multiple TikTok URLs in a single loop to save time
1.2 Scheduling Shorthand
If the user says a weekday (e.g., "Tuesday" or "Thursday"), schedule the task for the first upcoming occurrence of that day.
1.3 Reference Creation
If an item is clearly a book, game, product, or other reference, suggest creating a reference note (using the appropriate reference skill/tooling) and then mark the task done once the reference is created.
2. Process Items Interactively
The GTD clarify workflow asks these questions for each task:
- What is it? (Clarify the item)
- Is it actionable?
- NO: Trash / Reference / Lowest Priority (⏬)
- YES: Continue...
- What's the next action? (Specific, concrete step)
- Can it be done in 2 minutes?
- YES: Do it now, mark as done
- NO: Continue...
- Is it a project? (Multiple steps required?)
- Defer, delegate, or do?
- Defer: Add context tag + scheduled date
- Delegate: Add @waiting tag + person
- Do ASAP: Add context tag
Use the /obsidian skill's preferred order to execute these actions:
- Native CLI commands
tools/obsidian_tasks.py/tools/obsidian_cli.py- Raw eval patterns only if no wrapper exists yet
Context Tags
Tasks are organized by context (where/when/with whom/what focus can you do it):
Computer Tasks (by focus level):
@deep- Deep focus work (2+ hours, requires concentration, no interruptions)- Examples: Programming, writing, complex analysis, learning new skills
@quick- Quick wins (<15 minutes, low effort, can do anytime)- Examples: Reply to email, update task, quick search, file something
@batch- Similar tasks to batch together (saves mental switching)- Examples: Process emails, update multiple spreadsheets, review documents
@pc- Legacy context (being phased out - use specific contexts above)
Other Contexts:
@work- Work context (retired — use @deep/@quick/@batch instead)@partner- Requires partner/collaborator@out- Errands/outside/garden@ai- AI-related tasks@ponderables- Things to think about@stuck- Blocked items
Note: @someday context is deprecated. For "someday/maybe" items, use lowest priority (⏬) instead.
How to Choose PC Context:
Ask yourself:
- How long will this take?
- 2+ hours →
@deep - <15 min →
@quick
- 2+ hours →
- What's my energy level right now?
- Fresh/morning → Check
@deep - Tired/afternoon → Check
@quick
- Fresh/morning → Check
- Can I batch this with similar tasks?
- Multiple emails/updates →
@batch
- Multiple emails/updates →
- Does this require deep focus?
- Yes, no interruptions →
@deep - No, can handle interruptions →
@quick
- Yes, no interruptions →
Priority Levels
Tasks use Obsidian Tasks plugin priority symbols:
- ⏫ Highest priority
- 🔼 High priority
- (no symbol) Normal priority
- 🔽 Low priority
- ⏬ Lowest priority (use for someday/maybe items)
Date Formats
Tasks use Obsidian Tasks plugin emoji metadata:
- ⏳ YYYY-MM-DD - Scheduled date
- 📅 YYYY-MM-DD - Due date
- 🛫 YYYY-MM-DD - Start date
- ✅ YYYY-MM-DD - Done date
When scheduling, you can use:
today- Today's datetomorrow- Tomorrow's date+N- N days from now (e.g.,+3for 3 days)YYYY-MM-DD- Specific date
Best Practices
- Process inbox regularly - Daily or weekly, aim for inbox zero
- Be specific - "Call dentist for appointment" not "dentist"
- One action per task - If multiple steps, it's a project
- Always add context - Every actionable task gets a context tag
- Schedule deferred items - If not now, when?
- Trust your system - Once processed, don't second-guess
Tips
- Use the
/obsidianskill's inbox query with.slice(0, 5)to process just a few items at a time - Cancelled processing leaves tasks unchanged
- Deleted tasks are removed from files
- For someday/maybe items, add lowest priority (⏬) instead of using @someday context
- All file modifications are tracked via git - commit regularly to preserve history
Integration with Dashboard
After processing, tasks with context tags will appear in their respective Dashboard.md sections:
- @pc tasks → PC section
- @home tasks → Home section
- etc.
Tasks that remain without context tags will continue to appear in "To Process" section.
Gmail Follow-up
If the user explicitly asks to clarify Gmail (e.g., "clarify my gmail inbox"), go straight to Gmail triage — do not require processing the Obsidian inbox first. If the user runs a general /clarify without specifying, process the Obsidian inbox first, then offer to switch to Gmail.
Use the gmcli skill/tooling for Gmail actions and follow the same confirmation-first pattern.
Gmail clarify defaults:
- When creating tasks from Gmail, use the /obsidian skill (
$OBS vault=$VAULT daily:paththen$OBS vault=$VAULT append path=... content="- [ ] ...") to add to today's daily note and archive the email unless the user explicitly says not to. - When suggesting options for Gmail triage, include a recommended context tag (e.g., @batch/@quick) and note that archiving is the default after action.
- For any "read" task created from Gmail, always include a Gmail URL that opens the email directly. Use
gmcli <email> url <threadId>to generate the link, and place it after the task description before the context tag. - Archive all triaged emails by default (including ones with tasks created), not just the ones with no action.
gmcli labelssupports multiple thread IDs in a single call — pass them space-separated:gmcli <email> labels id1 id2 id3 --remove INBOX. Do NOT use a for loop.- Archive syntax: Use
gmcli <email> labels <threadId...> --remove INBOX(flag form). The positional formgmcli <email> labels remove <threadId> INBOXsilently succeeds without archiving. Always verify the first archive withgmcli <email> search "in:inbox" | grep <id>before bulk-archiving the rest. - Always use the Obsidian CLI (
daily:path+append) to add tasks to today's daily note — it uses the system clock, which is authoritative. Do not compute today's date from the system prompt (it may be stale).
Example Session
Agent: Found 3 inbox items:
GTD/Dashboard.md:
1. Buy groceries
2. Research new framework
3. Fix kitchen sink
Suggestions:
1. Buy groceries → @out, schedule tomorrow
1.1 Rewrite: "Buy weekly groceries" @out ⏳ 2026-01-03
2. Research new framework → @deep
2.1 Promote to project (multi-step)
3. Fix kitchen sink → @partner (need to discuss)
3.1 Rewrite: "Discuss kitchen sink repair options" @partner
Accept all? Or override by number:
User: accept
Agent: [executes via /obsidian skill edit-by-match patterns]
✓ 1: Rewritten + scheduled
✓ 2: Tagged @deep
✓ 3: Rewritten + tagged @partnerRelated Skills
/obsidian— All vault read/write operations/organize— Batch context tagging, project creation/project— Multi-step outcome management/review— Weekly review workflow
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

