Skip to main content

process-inbox

Process Obsidian and Drafts inboxes using scan-classify-confirm-execute. Claude pre-classifies all items, groups by action type, presents a numbered summary for user confirmation. Use when: 'process inbox', 'clear inbox', 'let's process', or during reviews.

معلومات المصدر

المستودع
emcodeio/weave
آخر نشاط في المصدر
٣ يونيو ٢٠٢٦ في ٢١:٠٩
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٢
التفرعات
١

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
process-inbox
description
Process Obsidian and Drafts inboxes using scan-classify-confirm-execute. Claude pre-classifies all items, groups by action type, presents a numbered summary for user confirmation. Use when: 'process inbox', 'clear inbox', 'let's process', or during reviews.
disable-model-invocation
true
# Process Inbox Three-pass workflow: Claude scans and classifies everything, user confirms with minimal effort, Claude executes in batch. ## Routing Context ### Active projects !`obsidian search query="categories: Projects status: active" vault="{{VAULT_NAME}}" limit=30 2>/dev/null || echo "(Could not scan projects)"` ### Area notes !`obsidian search query="tags: area" vault="{{VAULT_NAME}}" limit=20 2>/dev/null || echo "(Could not scan areas)"` --- ## Pass 1: Scan & Classify Read ALL items from both inboxes. Assign each a sequential number (flat across both sources). ### 1.1 Gather items **Drafts inbox**: `mcp__drafts__drafts_inbox` — read all items. **Obsidian inbox**: `obsidian search query="path:Inbox/" vault="{{VAULT_NAME}}"` — then read each item. **Token management**: For files over 5000 lines, read only the first 50-100 lines plus frontmatter. Enough to classify — specialized skills handle full content later. ### 1.2 Auto-classify each item Apply heuristics in order (first match wins): | Signal | Type | Routing | |--------|------|---------| | File >50k chars + book metadata (`author` + `title` + `publisher`/`contributor`) | Book | References/ with `categories: ["[[Books]]"]`; flag `/ingest-book` to process chapter-by-chapter | | `type: capture` + LLM conversation markers (role alternation, claude.ai/chatgpt links, `## Prompt:`/`## Response:`) | LLM conversation | Rename descriptively, Notes/, flag `/process-llm-conversation` | | Work meeting transcript — colleagues, workstreams, standup/1:1/cross-team/client/design-review | Work transcript | Flag `/process-transcript` (auto-detects the work frame) | | Other transcript / meeting recording — class, group discussion, teaching handout, or generic recording | Transcript | Flag `/process-transcript` (generic frame) | | `tags: [clippings]` + full body (>500 chars after frontmatter) | Article (full content) | Flag `/ingest-written-content` | | `tags: [clippings]` + minimal body OR body is a single URL | URL stub | Fetch & classify, or file as reference | | Filename matches `Name (@handle)` + minimal body | Person stub | References/ as Person note | | `source-file:` in frontmatter or `![[non-markdown]]` embed | Wrapper note | Read attachment, summarize, file | | Confluence URL or work-related technical content | Work reference | Notes/ with `areas: [[Work]]` | | Working draft or in-progress reference material (WIP indicators, partial content, mentions active workbench cluster or project with workbench items) | In-progress work | Workbench/ with `status: drafting`, link to parent project | | Short note (<500 chars) + action language (imperative verbs, "need to", "todo") | Action item | Extract to project/Action Pool | | None of the above | Needs context | Ask user | For items where routing destination is ambiguous, use `mcp__qmd__query` with `vec` sub-query + `intent` "finding the right project or area to route this inbox item to." ### 1.3 Group and present summary Group items by **action type** (what happens to them). Present ALL items in a single output. **Output format:** ``` ## Inbox Summary: X Drafts + Y Obsidian items ### Quick File (move + enrich frontmatter) 1. [Obsidian] **Note Name** — brief description → Destination/ | areas: [[Area]] | categories: [[Category]] ### Specialized Processing (flag for dedicated skills) 2. [Obsidian] **Note Name** (size, type) → `/skill-name` — brief rationale ### Fetch & Classify (URL-only, need content to route) 3. [Obsidian] **Note Name** — what the URL appears to be → Fetch to decide: likely options ### Action Extraction (pull actions into projects/pools) 4. [Drafts] **"Draft text preview"** — context → Extract to [[Project Name]] or [[Action Pool]] ### Delete (no lasting value) 5. [Source] **Note Name** — why it has no value ### Needs Context (can't confidently classify) 6. [Source] **Note Name** — what's unclear → Question for user --- Anything to adjust? Reference by number. "Looks good" to proceed. ``` **Formatting rules:** - Sequential numbers across all groups (not per-group) - Source tagged: `[Drafts]` or `[Obsidian]` - Bold filename for scanning - One-line description with key metadata - Arrow `→` for routing recommendation - Omit empty groups --- ## Pass 2: User Review This is the ONLY decision point. Wait for user input. **Accepted response patterns:** - `looks good` / `go` / `confirmed` — execute all as recommended - `3 → delete` — override item 3's routing - `7 → project X` — redirect to specific project - `5 is a book I want → add to Wishlist` — add context that changes routing - `skip 1, 4` — leave items in inbox for later (don't process this session) - `tell me more about 6` — re-read item 6 and present more detail - Any combination of the above After receiving input: 1. Acknowledge overrides/context briefly 2. If the user asked for more detail on an item, provide it and wait for their decision 3. Otherwise proceed directly to execution — no further confirmation needed --- ## Pass 3: Execute Process in this order (simplest first — maximizes value if interrupted): ### 3.1 Delete items - Obsidian items: delete the inbox note - Drafts items: `mcp__drafts__drafts_trash` ### 3.2 Quick-file items For each item: - Enrich frontmatter: `categories`, `areas`, `status`, `tags`, `created` - Move to appropriate directory (Notes/ or References/) - Proactive linking: related notes, category verification, backlinks - **Person stubs**: Check References/ for existing person note — merge if found - **Work docs**: Set `areas: ["[[Work]]"]` and appropriate categories ### 3.3 Fetch & classify URL stubs For URL-only items confirmed for fetching: - Use `defuddle parse "$URL" --md` to extract content - Re-classify based on fetched content: - Full article worth ingesting → flag for `/ingest-written-content` - Product page, course announcement, simple reference → quick-file - No lasting value → delete (confirm with user) ### 3.4 Action extraction For items containing action items: - Extract action with GTD phrasing (starts with verb). Suggest energy/time hints: `~focused`, `~quick`, `~2h`, `~errand` - Use QMD to find right project/area if not obvious - Add as checkbox to target project's Actions section or `[[Action Pool]]` - Offer Apple Reminder if there's a deadline - File or delete the source inbox note ### 3.5 Wrapper notes For wrapper notes (non-markdown file references): - Read the attachment (PDFs up to 20 pages via Read tool; images are multimodal) - Write a `## Summary` section into the wrapper note - File wrapper to permanent location (Notes/ or References/) ### 3.5a Workbench routing For items classified as in-progress work: - Set lightweight frontmatter: `status: drafting`, `created`, `project` (if identifiable), `tags` - Move to `Workbench/` (or appropriate subdirectory if a cluster exists) - No proactive linking (workbench exemption applies) ### 3.6 Specialized processing items These get moved out of Inbox/ but NOT deeply processed inline. Filing and deep processing are separate operations. For each item: - Add minimal frontmatter (`categories`, `areas`, `status: active`, `created`, `tags`) - Rename if needed (e.g., cryptic filenames → descriptive titles based on content) - Move to permanent location (Notes/ for transcripts/conversations, References/ for books/articles) - **Do NOT invoke the specialized skill** — just note it in the summary ### 3.7 Drafts cleanup For Drafts items routed to Obsidian: - If item needs to become a vault note: run "Save in Obsidian Vault" Drafts action, then process the resulting Inbox/ note - Archive all processed drafts: `mcp__drafts__drafts_archive` - Trash discarded drafts: `mcp__drafts__drafts_trash` --- ## After Processing Commit vault changes, then present summary: ``` ## Processing Complete ### Executed - X items quick-filed - X URLs fetched and filed - X actions extracted → [[destinations]] - X items deleted - X drafts archived ### Ready for Specialized Processing - [[Note Name]] → `/skill-name` - [[Note Name]] → `/skill-name` ### Skipped (still in inbox) - Item X — reason Inbox: N → M | Committed: "Process inbox: N items routed" ``` Omit empty sections. If specialized items exist, remind the user they can process them at leisure with the listed skill commands.
عرض على GitHub