You're on
main— the empty template. The actual populated demo (two ingested codebases as grounded, cross-linked wikis + the live graph) lives on thedemobranch.maindeliberately omits that ingested content so “Use this template” works — GitHub can't generate a template from a repo with git submodules, and the demo pins its sources as submodules. When you use the template, leave “Include all branches” off (thedemobranch carries the submodules).
The companion demo for wikify-repo. wikify-repo is the tool — a CLI + agent skill that ingests a code repo into a grounded markdown wiki. This repo is what that tool produces: a live, browseable example so you can see the output before installing anything.
It's a Karpathy LLM-wiki that
handles two source types in one knowledge base: code repos — ingested by the
wikify-ingest-repo skill (which ships with
wikify-repo, not defined here) into a grounded,
lint-clean markdown wiki an agent answers internals questions from — and articles / docs / notes,
ingested the classic Karpathy way (read → summarize → cross-link). Code is the headline; prose rides
along in the same index.md / log.md. See SCHEMA.md for the full workflow.
This repo is both:
- a showcase — browse a real, populated wiki on the
demobranch; and - a template — you're on it: click “Use this template” to start your own code-wiki with the skills and agent conventions already wired up.
(click image for interactive view)
A snapshot of the live viewer (92 pages · 384 links) — the populated wiki on the demo branch.
Every node is a wiki page; every edge a markdown link between pages. The two dense clusters are the two
ingested codebases — mini_pytorch_xla
and wikify-repo — joined
through the shared root index.md and the prose pages. Code pages are colored by page type
(code:concepts, code:catalog, code:doc-concepts, code:overview); prose by folder
(topics, sources).
SCHEMA.md single source of truth — the three layers, ingest/query/lint, retrieval rules.
raw/ immutable inputs — never modified.
code/<slug>/ ingested repos as git SUBMODULES, pinned by gitlink (this demo defaults to acquire: submodule).
sources/ ingested articles / docs / notes — committed source of truth.
wiki/ LLM-owned markdown — the product.
index.md read-first catalog: code repos, cross-repo concepts, topics, sources, notes.
log.md append-only event log (## [date] <op> | <name>).
code/ code wikis (one dir per repo) + an auto code catalog (index.md).
<slug>/ one CODE wiki per repo:
overview.md high-level map — main concepts + system diagrams.
concepts/ grounded mechanism pages (prose + Mermaid + citations).
catalog/ per-module symbol catalogs — signatures, docstrings, source links, uses-by.
doc-concepts/ pages derived from the repo's own docs.
concepts/ cross-repo vocabulary — each concept links down to every repo's implementation (via wikify-connect-repo).
sources/ one summary page per ingested article.
topics/ synthesized prose pages — entities, concepts, comparisons.
notes/ cross-cutting answers filed back from queries.
On this template branch wiki/ starts empty (just index.md + log.md stubs) and raw/ doesn't
exist yet — both fill in on your first ingest. To browse a populated one, switch to the
demo branch, whose code sources are
git submodules (pinned by gitlink):
git clone --recurse-submodules -b demo https://github.com/vlasenkoalexey/wikify-repo-demo
# already cloned? git checkout demo && git submodule update --initOn the demo branch, open
wiki/index.md and follow
links, or grep -ri "<term>" wiki/. Everything is plain markdown — no embeddings, no database. An agent
answers cheaply by reading index.md, grepping to the right page, and citing the catalog anchor.
-
Use this template (button above) — or
git clonethis branch. Leave “Include all branches” off (thedemobranch's submodules would break generation). -
Install the tooling once — see wikify-repo (
pip install -e .→setup-vendor.sh→install-skill.sh /path/to/this-repo). -
In Claude Code, Codex, or Antigravity, just say:
The skill pins + indexes the repo, writes the grounded pages, lints them, assembles
wiki/<slug>/, and updatesindex.md+log.md. Re-running is idempotent;ingest --ref <commit>updates to a newer commit and rebuilds only what changed. From the second repo on, it can connect shared concepts across repos into the cross-repowiki/concepts/pages (thewikify-connect-reposkill).
The wiki sits between raw repos and your questions: the cross-references are already there, the dynamic-dispatch seams a call-graph walk misses are covered by deterministic catalogs, and every mechanism page is grounded in real SCIP symbols. The tedious part — the bookkeeping — is done once and kept current, so answers are fast, grounded, and consistent. Conceptually, the generated wiki is an annotated map of your codebase that an LLM agent can navigate efficiently.
Note on citation anchors: a citation like
catalog/<module>.md#Buffer.shaperesolves against the catalog's frontmattersymbols:map (that's what the linter gates), not against a rendered heading — so clicking one on github.com opens the right catalog file but won't auto-scroll. Grep the anchor name inside the file, or read the wiki locally.