08 · 7 core services
The plugin tree
Seven core pieces hold the system up, and one of them is the agent loop.
Every piece claims a stable name in the shared context, and the others look it up by that name.
| Piece | What it does | Key |
|---|---|---|
| Session log | Records everything that happens | ctx.sessions |
| Prompt assembler | Builds what the model reads at the start of each request | ctx.systemPrompt |
| Tool registry | Holds what the model can use and runs it with guards | ctx.tools |
| Agent definition | Describes what an agent is | ctx.agents |
| Agent loop | Drives the work forward | ctx.agentLoop |
| Model adapter | Translates between the internal vocabulary and each provider API | ctx.llm |
| Per-agent logging | Provides traces scoped to an agent | no key |
There are dedicated pieces for files, terminals, language servers, web access, subagents, background tasks, context compaction and quite a few more.
Technical detail optional
The reference documentation publishes one page per subsystem, with signatures extracted from the code and checked in continuous integration. The seventh piece provides agent-scoped logging and claims no context key.