The Learning Hub has five parts. They form a single loop: you learn something → it becomes a blueprint → it goes live → next time you can see what already exists → you learn the next thing.
Five pieces, one loop. The rules tell agents how to build. The blueprints are what gets built. The Action makes them live. The manifest lets the next agent see what already exists.
Everything lives in two GitHub repos. The split is simple: the rules are public (so any agent can fetch them), the content is private (so your blueprints stay yours).
Public repo = how to build. Private repo = what was built. Agents fetch from the public one, push to the private one.
Every session starts the same way: an agent fetches CONVENTIONS.md. But there are three doors in — one for each way you might use the system.
Edit CONVENTIONS.md once → every new session everywhere picks up the change. No installs, no updates, no deployments needed for the rules.
From a laptop, the agent does everything. You just type /learn, have a conversation, and the agent builds, files, and pushes the blueprint. The Action takes care of the rest.
From a laptop, everything is automated. The agent reads the rules, sees existing blueprints via the manifest, builds, files, and pushes. You just talk.
From a phone (claude.ai), the agent can't push to the private repo. You're the bridge — you copy the HTML and paste it into GitHub on mobile. Cross-references and log entries wait for your next laptop session.
What waits for laptop: cross-reference backlinks to existing blueprints, log.md entry, last-quizzed meta updates. The blueprint itself works standalone — it's just not wired into the graph yet.
Phone produces a standalone blueprint. Laptop wires it into the graph. Both end up live on the same site.
Every push to main that touches topics/, assets/, or scripts/ triggers the GitHub Action. It runs one Python script, commits the generated files, and deploys to Cloudflare Pages. The whole thing takes about 30 seconds.
What build-index.py does:
<meta> tags (tags, prerequisites, last-quizzed, dates)<a href> links between blueprints to build the cross-reference graphindex.html — the visual landing page (lists blueprints, search, tag filters, quiz nudges). The graph is not drawn here; it lives in manifest.jsonmanifest.json — machine-readable list for agents to cross-referenceNever hand-edit index.html or manifest.json — they're overwritten on every push. The script is the only thing that makes them.
Right now there's one mode: "build me a blueprint on X" → the agent produces it. The plan is to add a second mode where the learning happens in conversation first, and the blueprint captures what the conversation surfaced.
Design decision: the agent will ask which mode you want at the start of every session. This hasn't been built yet — it's the next feature after testing is complete.
Learn mode makes the "Remember" callouts real. They come from gaps you actually had, not gaps the agent guessed you might have.
The cross-reference model here — the graph is the structure, categories emerge as clusters of links, no enforced taxonomy — is borrowed from Karpathy's LLM Wiki pattern. CONVENTIONS.md plays the role of that pattern's schema layer, topics/ the wiki layer, and log.md its chronological record.
Where it diverges is instructive. The Hub has no immutable raw sources layer — its source is a conversation, which evaporates — and no ingest or lint operation. Its pages are teaching blueprints, one topic taught intuition-up, rather than entity and synthesis pages compiled from a document collection. Read the llm-wiki blueprint for what each of those layers buys, and what their absence costs.
The Learning Hub is two repos and a loop. The public repo holds CONVENTIONS.md — one file any agent fetches to learn how to build a blueprint. The private repo holds the blueprints. You enter from a laptop (the agent does everything) or a phone (you paste the HTML manually). Every push triggers a GitHub Action that rebuilds the index and deploys to Cloudflare Pages. The manifest feeds back to the next agent so it can see what already exists. The whole system grows by agents writing to it, and the cross-links between blueprints are the structure — no taxonomy, no hierarchy, just connections that emerge as you learn.