lumi-ingest

Converts raw source files into structured wiki pages with graph edges and citations.

Updated Jun 3, 2026
One-click install
npx skills add https://github.com/MathematicGuy/team-006-vin20k --skill lumi-ingest-mathematicguy
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: lumi-ingest
Source: https://github.com/MathematicGuy/team-006-vin20k/tree/main/lumina-wiki/.agents/skills/lumi-ingest
Command: npx skills add https://github.com/MathematicGuy/team-006-vin20k --skill lumi-ingest-mathematicguy

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pypdf, and includes references (resource) components.

What problem does it solve? Turning a raw PDF, article, or paper into a well-linked knowledge base entry is tedious: you must summarize it, create concept and author pages, wire up bidirectional graph edges, record citations, and keep everything deduplicated. This Skill automates that entire pipeline while keeping you in control through four review checkpoints. ## Core Features & Use Cases - Four-stage gated workflow: Draft, lint, verify, and finalize stages each pause for human review, and progress is persisted so an interrupted ingest resumes exactly where it stopped, even across sessions. - Flexible input modes: Accepts a local file path, an arxiv ID, DOI, or URL (the PDF is fetched automatically via a multi-provider resolver), or a paper title matched against a research shortlist. - Graph and citation management: Creates source pages, concept and person stubs, bidirectional graph edges, and citation links through the wiki.mjs CLI, with dedup policies that prevent duplicate pages and edges. - Use Case: You drop a new paper into raw/sources/ and say "ingest raw/sources/attention-revisited-2026.pdf". The skill drafts the source page and stubs, auto-fixes lint issues, checks the summary against the source text, and finalizes with a log entry — pausing at each gate for your approval. ## Quick Start Ask the agent to ingest a source by saying "ingest raw/sources/my-paper.pdf" or "ingest arxiv:2604.03501" and then approve or revise at each checkpoint.

Frequently Asked Questions about lumi-ingest

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I ingest a PDF into a wiki knowledge base?▼

Provide the file path, for example "ingest raw/sources/paper.pdf", and the skill drafts a source page with summary, key claims, concept and person stubs, graph edges, and citations. You review and accept at the draft gate before lint, verify, and finalize stages run.

Can I ingest a paper by arxiv ID or DOI without downloading it first?▼

Yes. Pass a bare identifier like "ingest arxiv:2604.03501" or a DOI, and the resolve_pdf.py tool runs a metadata anchor plus a multi-provider PDF ladder (OpenAlex, Unpaywall, CORE, arxiv) to fetch the file automatically.

What happens if an ingest is interrupted mid-session?▼

Progress is durable: gate state lives in the source entry's ingest_status frontmatter and fine-grained phase checkpoints live in a JSON state file. Re-running the skill with the same slug resumes at the exact gate or phase where it stopped.

How does the skill avoid creating duplicate concept pages?▼

Before creating any stub it runs resolve-alias to check whether a foundation page already covers the term, and read-meta to detect existing concept or person pages. Existing pages are appended to conservatively rather than overwritten.

What are the limitations of PDF ingestion for scanned documents?▼

Scanned or image-only PDFs fail text extraction, and OCR is explicitly out of scope. The extractor reports a scanned/blank warning and asks you to supply a text-based PDF or plain text instead.