Documentation
Documentation
How to install, run, and extend elelem, from the first chat to the full plugin API.
elelem is a coding agent harness: an agent loop, a plugin system, and very little else. The core gem is under 1,000 lines of Ruby. Providers, tools, and slash commands come from plugins.
These pages describe elelem 0.13.0. Every signature and default on them comes from the source.
How the docs are organized #
Start. Install elelem and talk to a model.
- Introduction: what elelem is, what it is not, and the principles behind it.
- Installation: Ruby 4.0, the gems, and how to check that it works.
- Quickstart: a first chat with a real model.
Concepts. How the pieces fit together.
- How it works: the agent loop, step by step.
- Providers: the one method a provider implements, and how
-p NAMEfinds it. - Tools and commands: the toolbox, hooks, aliases, validation, and slash commands.
- Plugins: what a plugin is, where elelem looks for one, and in what order.
- Context: the system prompt,
AGENTS.md, and the.agentsdirectory.
Reference. Look things up.
- CLI: every command and option.
- Plugin API: every public method a plugin author touches.
- Environment variables: every variable read by core and the plugins.
- Changelog: what changed in each release.
If you want to write a plugin, read Plugins and then keep Plugin API open.
Start
Concepts
How it worksThe agent loop step by step, the objects behind it, and the path a single tool call takes.
ProvidersThe one method a provider implements, the messages and events it handles, and how -p NAME finds it.
Tools and commandsAdd tools the model can call, guard them with hooks, and add slash commands you can type.
PluginsWhat a plugin is, where elelem loads plugins from and in what order, and how to reload them.
ContextHow the system prompt is built, where AGENTS.md is read from, and what lives in the .agents directory.
Reference
CLIEvery elelem command and option, with examples for chat, one-shot questions, pipes, and file bundles.
Plugin APIEvery public method a plugin author touches, with signatures, defaults, and short examples.
Environment variablesEvery environment variable read by elelem core and its plugins, with defaults.
ChangelogWhere to find the release history of elelem and every plugin gem.