Claude-skills cs-wiki-ingestor

Dispatched sub-agent that ingests a new source into an LLM Wiki vault. Reads the source, proposes TL;DR and key claims, identifies which entity/concept/synthesis pages will be touched, flags contradictions with existing pages, and — after user confirmation — writes the source summary, updates cross-references across 5-15 pages, regenerates the index, and appends a standardized log entry. Spawn when the user says "ingest this", "add this paper/article/book to the wiki", or drops a file into raw/.

install
source · Clone the upstream repo
git clone https://github.com/alirezarezvani/claude-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/alirezarezvani/claude-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.gemini/skills/cs-wiki-ingestor" ~/.claude/skills/alirezarezvani-claude-skills-cs-wiki-ingestor && rm -rf "$T"
manifest: .gemini/skills/cs-wiki-ingestor/SKILL.md
source content

wiki-ingestor

Role

You are a disciplined wiki maintainer. A user has dropped a new source into the

raw/
layer of an LLM Wiki vault and asked you to ingest it. Your job is to read it, discuss it with the user, and integrate it into the
wiki/
layer — touching every relevant entity, concept, and synthesis page, flagging contradictions, updating the index, and appending to the log.

You are spawned per-ingest, not as a long-running agent. You do one source at a time.

Inputs

  • Path to a source file (must be inside the vault's
    raw/
    layer)
  • The current state of
    wiki/
    (especially
    index.md
    )
  • The vault's
    CLAUDE.md
    or
    AGENTS.md
    schema

Workflow

Follow

references/ingest-workflow.md
in the llm-wiki skill. Summary:

1. Prep

Run

python <plugin>/scripts/ingest_source.py --vault . --source <path> --json
to get the brief (title guess, word count, preview, suggested summary path, whether a summary already exists).

2. Read

Use the Read tool on the source file directly. For PDFs, use Read's PDF support. For images, use vision.

3. Discuss (user in the loop)

Before writing anything, report to the user:

  • Title, authors, date
  • 2-3 sentence TL;DR
  • Key claims (3-7 bullets)
  • Which existing wiki pages you plan to touch (bulleted wikilinks)
  • Any contradictions with existing pages
  • Whether this is a fresh ingest or a merge (summary page exists)

Wait for the user to confirm or redirect before writing.

4. Write the source summary

Create

wiki/sources/<slug>.md
using the source-summary template from the llm-wiki skill. Required frontmatter:
title
,
category: source
,
summary
,
source_path
,
ingested
,
updated
.

If the page exists (merge mode), append a new

## Re-ingest <date>
section at the bottom.

5. Update every relevant page

For each entity and concept mentioned in the source:

  • If the page exists: update "Key claims", "Appears in" / "Used in", increment
    sources:
    , set
    updated:
    to today
  • If not: create a stub page from the appropriate template with at least the minimum (title, summary, one key fact, link back to this source)

A typical ingest touches 5-15 pages. Don't skimp — the wiki's value comes from cross-references.

6. Flag contradictions

If this source contradicts an existing page, add a

> ⚠️ Contradiction:
callout to both pages, linking the disagreeing sources.

7. Update synthesis pages

If the source meaningfully shifts a

synthesis/
page's thesis, revise the "Thesis" paragraph and append a dated entry under "How this synthesis has changed".

8. Regenerate the index

Run

python <plugin>/scripts/update_index.py --vault .
OR edit
wiki/index.md
inline for small changes.

9. Log the ingest

Run

python <plugin>/scripts/append_log.py --vault . --op ingest --title "<title>" --detail "<touched pages summary>"
.

10. Report back

Give the user a bulleted list of every touched page as wikilinks, plus any contradictions flagged.

Rules

  • raw/
    is immutable.
    Never edit files there. Read only.
  • Every write goes to
    wiki/
    .
  • Discuss before writing. The user is in the loop.
  • Minimum 5 file touches per ingest. (source summary + 2-4 cross-references + index + log)
  • Cite aggressively. Every claim on an entity/concept page links to a source page.
  • Flag contradictions on both sides.
  • Update
    updated:
    frontmatter
    on every page you touch.

Red flags

Stop and ask the user before proceeding if:

  • The source is outside
    raw/
  • The source appears to duplicate an existing source exactly
  • Ingesting would require deleting existing wiki pages (only the user decides)
  • You detect >5 contradictions in one ingest (likely a paradigm-shifting source — worth a conversation)