thoreinstein/gemini-obsidian/wiki-ingest
Claude Code and agent skill by thoreinstein/gemini-obsidian
- community
Checking that the SKILL.md file is still in the repository.
Use when the user wants to ingest external sources into the vault — PDFs, markdown files, transcripts, Readwise exports, or any document. Triggers on "ingest", "process document", "import into vault", "distill this", "add to vault", or "extract knowledge from".
Install
npx vskill@latest install thoreinstein/gemini-obsidian/wiki-ingestSKILL.md
Wiki Ingest
Distill external sources into vault-native notes following VAULT_CONVENTIONS, with provenance tracking and deduplication.
Workflow
1. Identify Sources
Accept one or more source paths from the user. Sources can be:
- Files on disk (markdown, PDF, text, transcripts)
- Vault-internal notes (Readwise highlights, working notes to promote)
- A directory to scan for ingestible files
For vault-internal sources, use obsidian_read_note. For external files, use the Read tool.
2. Check Manifest
Read .manifest.json from the vault root using Read tool.
For each source path, check if it exists in sources:
- Not present → new source, proceed to extract
- Present but source modified since `ingested_at` → re-ingest
- Present and unchanged → skip (tell user "already ingested, use --force to re-process")
3. Extract Knowledge
Read the source content. Identify:
- Patterns — reusable approaches, techniques, or practices
- Traps — pitfalls, anti-patterns, things that went wrong
- Decisions — architectural or design choices with rationale
- Concepts — definitions, mental models, frameworks
For each extraction, classify its provenance:
- Extracted (unmarked) — directly stated in the source
- Inferred
^[inferred]— synthesized, generalized, or implied but not stated - Ambiguous
^[ambiguous]— source is unclear or contradicts other sources
4. Deduplicate
For each extracted concept, search the vault:
- Call
obsidian_rag_querywith the concept name/summary,limit: 5 - If a strong match exists, read the existing note with
obsidian_read_note - Decide: merge into existing note or create new note
Merge when: the existing note covers the same concept and the new source adds information. Create when: no existing note covers this concept, or the angle is sufficiently different.
5. Present Plan
Before creating or modifying any notes, present the plan to the user:
Wait for user confirmation before proceeding.
6. Write Notes
For new notes, use obsidian_create_note with content following VAULT_CONVENTIONS templates:
- Set
type:to pattern, trap, or decision - Set
project:to the source project or "general" - Set
tags:from content - Set
created:to today's date - Set
provenance:fractions based on inline marker counts - Include
## Linkssection with[[wikilinks]]to related vault notes - Add
## Sourcessection citing the ingested source
For merges, use obsidian_insert_at_heading or obsidian_replace_section to add new content to existing notes. Update the provenance: frontmatter if the mix changed, using obsidian_update_frontmatter.
7. Placement Rules
- Cross-project patterns/traps/decisions →
Engineering/Patterns/,Engineering/Traps/,Engineering/Decisions/ - Project-specific knowledge →
working/<project>/knowledge/ - If unclear, ask the user
8. Update Manifest
After all notes are written, update .manifest.json:
For each processed source, add/update an entry in sources:
Update stats.total_sources_ingested and stats.total_pages. Set last_updated to now.
Write the updated manifest back using the Write tool.
9. Suggest MOC Updates
For each new Engineering/ note created, check which thematic MOCs it belongs in. Suggest additions but don't auto-edit MOCs — use /moc-update for that.
Arguments
- Source path(s):
/wiki-ingest ~/Documents/paper.pdf - Optional project scope:
/wiki-ingest working/appiary/knowledge/auth-notes.md - Optional force flag:
/wiki-ingest --force <path>to re-ingest unchanged sources
Tips
- Run
/indexfirst ifobsidian_rag_queryreturns poor results - For Readwise books, ingest the book's highlight file (e.g.,
Readwise/Books/<title>.md) - Large sources may yield many extractions — review the plan carefully before confirming
- Provenance fractions don't need to be exact; approximate to the nearest 0.05
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/wiki-ingest/SKILL.md
Popularity
- Repository stars
- 99
- Repository forks
- 7
- 7-day trend score
- 23
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/thoreinstein/gemini-obsidian/wiki-ingest)