Use this skill whenever the user wants to ingest, analyze, or summarize an external source and convert it into quick notes for their Obsidian vault. Triggers on: any URL (GitHub repos, webpages, YouTube videos, arXiv papers, Reddit threads, HuggingFace), any file path (PDFs, images), vault folder paths for review, or the command '/indagatio'. Also triggers on Korean requests like '분석해줘', '리뷰해줘', '정리해줘', '요약해줘', '퀵 노트로 변환' when paired with an external source or link. Also triggers on English requests like 'analyze this repo', 'summarize this paper/article/video', 'extract key concepts from this'. The core intent is: user points at something outside the vault (or a vault folder to review) and wants structured quick notes created from it.
Indagatio (Latin): investigation, tracking, inquiry
Skill for converting external sources and internal vault content into quick notes.
/indagatio <URL or path>/indagatio --large <URL> (force large scale)/indagatio arxiv:2401.12345references/tool-selection.md Playwright Gate.Self-check: Is this more comprehensive than manual? Did I discover unknown info? If not → redo Step 2b.
Cross-source recommendations:
| Source | Check Also |
|---|---|
| GitHub | Official docs, blogs, videos |
| Official Docs | GitHub implementation, community |
| Blog/Personal | Official docs + GitHub (verify) |
| Paper | GitHub impl, announcements, follow-ups |
| Video | Official docs, GitHub, text guides |
| Community | Official source for original info |
| Source Type | Pattern | Tool |
|---|---|---|
| GitHub | github.com/user/repo | skill-seekers github |
| Web (multi-page) | docs, guides | skill-seekers scrape |
| Web (single page) | news, blog, article, docs | WebFetch (multi-pass) — DEFAULT for all web URLs |
| Web (dynamic/SPA) | WebFetch returns empty/broken + confirmed JS-only | Playwright MCP — ONLY after WebFetch fails |
reddit.com/* | Playwright MCP (old.reddit.com) | |
*.pdf | skill-seekers pdf | |
| Paper | arxiv:, DOI | paper-search MCP |
| YouTube | youtube.com/watch?v= | Gemini CLI /indagatio (user runs manually, then provides output) |
| Image | *.png, *.jpg | Read (Vision) |
| HuggingFace | huggingface.co/... | WebFetch |
| Note | [[note name]] | Obsidian MCP |
| Vault Folder | [[50-NNNNNN. Project]], vault path | Obsidian MCP + Glob |
| Topic Search | keyword, concept | Brave Search → WebSearch (fallback) |
→ See references/source-detection.md for URL patterns.
→ See references/tool-selection.md for tool decision tree and prompts.
→ See ../_common/references/frontmatter-standard.md for status taxonomy.
Memory Check → Source Detect → Scale → Fetch (multi-pass + link crawl) → Verify → Analyze → Quick Note → Log → Memory Save
indagatio ends after Quick Note creation. Daily Note logging handled by purgatio.
Check claude-mem for cached topic info before fetching externally.
mcp__plugin_claude-mem_mcp-search__search: query: "{topic}", limit: 5
If found → ask user: "캐시된 정보가 있습니다 (검증일: YYYY-MM-DD). 새로 분석할까요?" If not found → proceed to Step 1.
→ See references/source-detection.md for regex patterns and detection order.
1a. Multi-source: Same topic → merge; different topics → separate notes; independent → parallel.
1b. Detection order: file extension → URL patterns → special prefixes → Obsidian link → vault path → general URL → topic search.
1c. Duplicate Check: Search 00. INBOX/01. Quick Notes/Indagatio-Log.md for URL. If found → ask user.
1d. MCP & Dependency Check:
1e. Existing Note Check:
Glob: **/*{topic}*.md + Grep: {topic} in vault path→ See references/scale-algorithm.md for decision tree.
| Scale | Single Page | Analysis Depth |
|---|---|---|
| Small | <1,500 words, <5 sections | Quick summary |
| Medium | 1,500-5,000 words, 5-10 sections | Structured overview |
| Large | 5,000+ words, 10+ sections | Comprehensive breakdown |
User Override: --small, --medium, --large, --no-crawl (skip link crawl), --no-expand (skip scope expansion).
After assessing primary source, ALWAYS search for related topics:
Brave Search (1순위, Pro Plan: 50/sec parallel, unlimited):
"{topic} guide tutorial" count: 15"{topic} site:reddit.com OR site:news.ycombinator.com" count: 10"{topic} FAQ troubleshooting" count: 10"{topic} 2025 2026 update release" count: 10Present scope expansion suggestion to user with discovered subtopics
If confirmed → fetch additional sources per subtopic
Reddit note: Use old.reddit.com (www blocks Playwright).
Skip: --no-expand, highly specific single API endpoint, explicit scope limit.
When Topic Search / Scope Expansion returns 10+ results → hierarchical processing to prevent hallucination.
Skip when: <10 items, single source, --no-batch, total tokens < 30K.
→ See references/hierarchical-summarization.md for batch calculation, hierarchy, and processing rules.
Run ALL applicable passes in sequence. Never skip a pass. Pass 1b is NOT optional for Medium/Large.
3a. Pass 1 — Structure + Links (all scales): WebFetch with structure+links extraction prompt. Extract headings, word counts, content types, and ALL inline hyperlinks as a LINK INVENTORY.
3b. Pass 1b — Related Link Crawl (MANDATORY for Medium/Large): Never skip when scale ≥ Medium. This step is required.
[[wikilink]]; supporting detail → inlinelinks_crawled in frontmatter to actual count fetchedThis step takes ~34s per link (~100-200s total). No excuse to skip.
Skip ONLY when: Small scale, --no-crawl flag, non-web source, or 0 links in inventory.
→ See references/tool-selection.md Pass 1b for full procedure, filtering rules, and Atomicity Gate criteria.
3c. Pass 2 — Detail (Medium/Large): WebFetch with detail extraction prompt. Incorporate context from Pass 1b linked pages.
3d. Pass 3 — Images (if images detected in Pass 1): WebFetch with image URL extraction prompt. Verify CDN patterns.
Tool selection order for web URLs:
references/tool-selection.md Playwright Gate.Key rules:
/indagatio <URL> manually → provide output file → parsegemini CLI from Claude Code Bash (Google ToS violation)old.reddit.com (exception: Playwright allowed for Reddit)→ See references/tool-selection.md for all prompts, code examples, and fallback workflows.
4a. Image URL Verification: Check URL pattern validity (CDN patterns OK, hex strings you generated → INVALID). Invalid → placeholder + warning.
4b. Content Completeness:
| Scale | Minimum |
|---|---|
| Small | 500+ words, 3+ concepts |
| Medium | 1,500+ words, 6+ concepts |
| Large | 3,000+ words, 10+ concepts |
If thin → re-fetch with more specific prompts.
4c. Language Balance: Technical terms need English in parentheses. Concepts explained, not just listed.
4d. Comment Insights (Reddit, HN, forums only):
Filter comments by quality (technical detail, specific data, corrections to OP → High; practical tips → Medium; opinions without evidence → Low).
Cross-verify every extracted comment via Brave Search/official docs:
→ See references/quicknote-format.md for 댓글 인사이트 output section format.
Skip: Non-community sources, <5 comments, no High quality comments, --no-comments.
4e. Difficulty Assessment:
Assess content difficulty (1-10) based on source_type × scale baseline:
| source_type | small | medium | large |
|---|---|---|---|
| youtube | 2 | 3 | 4 |
| web | 3 | 4 | 5 |
| github | 4 | 6 | 8 |
| paper | 6 | 7 | 9 |
| 4 | 5 | 7 | |
| huggingface | 5 | 7 | 8 |
| topic-search | 3 | 5 | 6 |
| image | 2 | 3 | 4 |
| note | 3 | 4 | 5 |
Content complexity adjustment: +1 if multi-domain, +1 if requires prior knowledge, -1 if introductory. Clamp to 1-10.
Add difficulty: {value} to quick note frontmatter after scale:.
Bilingual Term Rule: 한국어 용어 (English Term) — all technical terms, proper nouns, abbreviations, tool names.
Depth: Small → bullets OK; Medium → 2-3 sentences/concept; Large → full paragraph with examples.
AI Processing: Structure → Key concepts (full explanations) → Why it matters → Practical examples → Action items → Vault connections.
CRITICAL: Timestamp Acquisition — NEVER guess. Always run before creating file:
date "+%Y.%m.%d-%Hh%Mm" # Filename
date "+%Y-%m-%d %H:%M" # Frontmatter
Output Path: 00. INBOX/01. Quick Notes/notes/YYYY.MM.DD-HHhMMm {Source Title} Analysis.md
→ See references/quicknote-format.md for full template.
Append to 00. INBOX/01. Quick Notes/Indagatio-Log.md:
| YYYY-MM-DD | HH:mm | <source_url> | <source_type> | <scale> | <image_status> | [[Quick Note Title]] |
Save verified information to claude-mem after Quick Note creation:
mcp__plugin_claude-mem_mcp-search__save_memory:
title: "{topic}", text: "핵심 정보...\n출처: {URL}\n검증일: YYYY-MM-DD"
Skip: Vault folder review, image-only analysis, failed fetches.
Before reporting completion, verify:
links_crawled > 0 in frontmatter (Medium/Large web source)관련 페이지 section present with populated table (Medium/Large)If any verification fails → fix before reporting completion.
If unchecked → back to Step 2b.
Special workflow for reviewing internal vault folders (projects, system guides, etc.).
→ See references/vault-folder-review.md for full template and analysis guidelines.
Key differences from external: Data from internal vault; focus on status + progress (not content extraction); output includes expansion suggestions based on external resources.
Expansion suggestions: Context-dependent analysis of current level, project purpose, tech stack, trends → recommend next-level resources, related tools, practical applications, communities.
/indagatio or natural languagereferences/source-detection.md - URL pattern matchingreferences/scale-algorithm.md - Scale determinationreferences/quicknote-format.md - Output templatereferences/tool-selection.md - Tool decision tree and promptsreferences/vault-folder-review.md - Vault folder review templatereferences/hierarchical-summarization.md - Bulk result processingreferences/reddit-guide.md - Reddit navigation../_common/references/logging-standard.md - Unified loggingSKILL.md content: English (context efficiency) User-facing output: Korean (user preference) Trigger patterns: English + Korean (accessibility)