ZERO TO SOURCE READER
9 hours—not a skim, but a complete learning ramp
Six sessions move from mental model to shipped extensions. Each names its prerequisite, outcome, and reason for the next layer.
01
SESSION 1
≈ 51 minBuild the mental model
Understand the problem before studying how complexity is divided.
After this layer, you canExplain the boundary between model, agent, and harness
H01What is a harness, really?Why can the same model feel like a different system inside another agent product?12mH02Why everything is a pluginIf sessions, tools, and even the agent loop are plugins, what remains as the core?13mH03The six-plane system mapAcross thousands of source files, how do you decide where new behavior belongs?14mH04How to read the source cityIn a large agent repository, do you search functions first or find contracts first?12m02
SESSION 2
≈ 82 minLearn the composition grammar
Read the system through Cordis contexts, effects, services, events, scopes, and config trees.
After this layer, you canRead why a real plugin tree can mount, replace, and unwind
H05Context: the plugin collaboration surfaceIs Context a convenient global variable, or the system's boundary object?15mH06Effects and fibers: make disposal finishWhy does AbortController.abort() not mean a plugin has finished unloading?16mH07Services and events: separate capability from cooperationWhen should you call ctx.fs, and when should you listen to fs/write-intent?17mH08Scope, realm, and rescopeHow can two agents see different tools, personas, and working directories in one process?16mH09Profiles, bundles, patches, and the boot treeHow do you replace models, sandboxing, or tools without forking upstream?18m03
SESSION 3
≈ 117 minTrace the agent spine
From agent creation through SessionEvent, turns, steps, prompts, LLMs, and tools.
After this layer, you canExplain a complete model request event by event
H10Agent creation, ownership, and cancellationWho may destroy an agent, and how does a half-failed creation roll back?19mH11SessionEvent: the single source of truthWhy persist raw assistant chunks instead of only the final message?20mH12Inbox, turns, and stepsWhy does one user message not imply one model request?20mH13A prompt is not one stringHow can plugins add model-visible context without everyone editing one systemPrompt?18mH14LLM adapters and the streaming vocabularyWhy can DeepSeek, replay, and other providers stream into the same agent loop?18mH15Tool execution is not a function callWhy can a later plugin not re-allow a dangerous call already denied upstream?22m04
SESSION 4
≈ 99 minUnderstand safety and durability
Approval, sandboxing, filesystem policy, compaction, persistence, projections, and invariants.
After this layer, you canJudge whether the system stays trustworthy under denial, crashes, cancellation, and long context
H16Approval, policy, and permission presetsWhy does danger-full-access plus never-ask still not mean every tool can execute?18mH17Sandbox, FS, shell, and one execution worldWhy does replacing the subprocess provider move Bash, PTY, LSP, and external subagents together?20mH18Compaction, token metering, and spillHow do you shorten context without breaking tool call/result pairing or deleting original facts?21mH19Persistence, projections, and queriesWhy should a session list not load the complete event log for every row?22mH20Cancellation, timeouts, and defensive invariantsWhy can a timeout not simply Promise.race and forget the still-running work?18m05
SESSION 5
≈ 81 minScale beyond one agent
Goals, plans, todos, subagents, jobs, workflows, schedules, and capability discovery.
After this layer, you canSeparate state, delegation, orchestration, and long-running work
H21Goals, plan mode, and todosWhy can all todos be complete while the goal is not?18mH22Subagents, continuations, and jobsAfter starting a subagent, who owns it, who may continue it, and who must stop it?22mH23Workflow engine and durable schedulesWhy can workflow, job, and schedule not collapse into one background-task concept?22mH24Skills, MCP, LSP, and Web capabilitiesSkills and plugins both extend agents—why are they not the same?19m06
SESSION 6
≈ 83 minBuild and ship extensions
Turn understanding into tools, adapters, client surfaces, profiles, and bundles.
After this layer, you canShip a capability without patching the agent loop
H25Lab: add a toolBeyond name, description, and execute, what makes a production-grade tool definition?20mH26Lab: design a capability seam and providerWhen should you add a provider, and when should you design a new seam?22mH27Lab: Web, CLI, ACP, SDK, and HostHow does a Web UI button become agent behavior without making the browser own business state?21mH28Lab: from plugins to a shippable productWhat boundaries separate a locally working plugin from a shippable product?20m