Ingest
Skill marsmike/agentic-toolkit/plugins/readwise/skills/ingest
Vault-first toolkit for Claude Code — curated plugins over an Obsidian-compatible knowledge vault, governed by an explicit contract, gated by evals, continuously delivered.
npx -y skills add marsmike/agentic-toolkit --skill ingestAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 10 days oldThe repository was created 10 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Pull new Readwise highlights (Reader v3 + Classic v2) and write them as origin-prefixed capture notes in 01_Capture/. Use when syncing Readwise or running the full pipeline's first stage.
SKILL.md
2.3 KB, as published. Nobody here has run it
Readwise Ingest
Pulls new clippings from the Readwise API and writes each one as a capture note in
01_Capture/ — flat, origin-prefixed (Readwise-...), filesystem-first throughout
(contract/KNOWLEDGE_API.md). No enrichment happens here; that's the enrich skill.
Preservation rule (non-negotiable)
Every clipping the user saved must end up in 01_Capture/. Never drop an item because
it looks noisy, off-topic, or short — the user sometimes clips outside their usual
interests on purpose. See references/ingest-workflow.md
for the coverage check that enforces this before any deletion from Readwise.
Quick start
uv run --project "$CLAUDE_PLUGIN_ROOT/scripts" python3 -c "
import readwise_api as rw
items = rw.reader_list_all(updated_after='2026-06-01')
print(len(items), 'items')
"
Then follow references/ingest-workflow.md's numbered steps.
Vault resolution and profile
TOOLKIT_VAULT env var, else ./vault relative to the repo root (contract/PROFILE.md).
Profile: $VAULT/Config/toolkit/readwise.md — see profile.example.md for fields
(enrichers, backlog_sweep). Secrets stay in READWISE_TOKEN, never in the vault.
Hard requirements
- Backlog sweep, every run.
updated_afteris a watermark, not an inventory — items saved before the window and never captured stay invisible forever otherwise. See references/ingest-workflow.md. - Dedup-safe writes.
build_captures.write_capture()/write_book_capture()check01_Capture/for an existing note with the samereadwise_doc_idbefore writing — re-running ingest over the same clipping is a no-op, not a second file. - Coverage check gates deletion. Never delete/archive anything in Readwise until
every ingested
doc_idis confirmed present in a written capture.
References
- ingest-workflow.md — full procedure: fetch, backlog sweep, write, coverage check, cleanup
- api.md — Readwise API endpoint reference and rate limits