Inspiration
Most learning apps expose a human UI and leave agents to scrape the DOM. We wanted the opposite: a learning world where the human and browser agent share one explicit game state and can genuinely take turns.
What it does
0x1 Expedition Vault turns a topic, YouTube lecture, public article/PDF, pasted notes, or uploaded text into a branching learning roguelike. Learners study sources, answer quizzes, build causal chains, defend models in adversarial dialogue, choose risk/recovery branches, accumulate strikes, fail runs, recover, and defeat a final systems boss.
The branching map is not cosmetic: unresolved splits expose multiple selectable paths. A route is marked taken only after the learner or agent commits to it; same-row alternatives become skipped for that run, matching the source expedition semantics.
Why WebMCP
The page registers four tools directly on document.modelContext:
ingest_learning_materialexplore_modulesubmit_solutioninspect_progress
The key point is that these tools do not maintain an agent-only copy of the course. Human clicks and agent tool calls mutate the same expedition graph, active room, checkpoint, belief trajectory, strikes, branch choices, mastery, and failure state. An agent can forge a course, inspect progress, choose a branch, submit a solution, fail the same run, or advance the same map the learner sees.
Better together
A human can watch a source video and clear a checkpoint; the agent can then inspect the resulting state and continue from the newly available branch. Or the agent can ingest a new topic and generate an expedition that appears immediately in the learner UI. WebMCP removes the brittle layer of DOM guessing and makes the collaboration explicit, structured, and inspectable.
Cognition, not keyword recall
Generated expeditions separate source study from hidden cognition checks. Later rooms test causal transfer, source-vs-inference separation, falsification, adversarial prediction, and integrative defense. Hidden checks conceal their rubric and discount terms already present in the prompt. Human and WebMCP text answers use the same semantic evaluator; verbose nonsense cannot clear a checkpoint.
How we built it
The app uses SvelteKit/Svelte 5, Vite, native document.modelContext.registerTool(...), a deterministic source-grounded curriculum generator, serverless-native PDF extraction, opportunistic YouTube transcript extraction with source-honest metadata fallback, and persistent browser-local expedition state. The map runtime ports the original expedition engine's seeded node/edge geometry and explicit path-choice semantics.
Reliability
The deployed build was tested end-to-end on Vercel: source ingestion, branching path selection in both directions, three-strike run failure, restart, staged Back-EMF causal chain, Lenz adversarial dialogue, five-variable boss system model, WebMCP failure parity, and visible progression all pass.
Links
Live app: https://webmcp-app.vercel.app
Source: https://github.com/stefanbuesch/0x1-expedition-vault-webmcp
Built With
- document.modelcontext
- javascript
- svelte-5
- sveltekit
- vercel
- vite
- webmcp
- youtube
Log in or sign up for Devpost to join the conversation.