Use when the task involves elizaOS core runtime concepts, plugins, actions, providers, evaluators, services, memories, state composition, or upstream elizaOS development. Covers the main abstractions and the TypeScript runtime mental model.
Install with the open skills CLI (global, non-interactive — available in every Claude Code session):
npx skills add elizaOS/eliza --skill "elizaos" -g -a claude-code -yOr manually — clone and copy the skill directory (SKILL.md + companion files):
git clone --depth 1 https://github.com/elizaOS/eliza /tmp/eliza && cp -r /tmp/eliza/packages/skills/skills/elizaos ~/.claude/skills/elizaosThis skill is a directory: SKILL.md is the entry point; the files below ship with it.
---
name: elizaos
description: "Use when the task involves elizaOS core runtime concepts, plugins, actions, providers, evaluators, services, memories, state composition, or upstream elizaOS development. Covers the main abstractions and the TypeScript runtime mental model."
---
# elizaOS
elizaOS is the plugin-based agent runtime that Eliza builds on top of.
## Read These References First
- `references/core-abstractions.md` for the runtime mental model and message flow
- `references/plugin-development.md` for plugin extension points and implementation patterns
## Use This Skill When
- a change touches `eliza/`
- you need to reason about `AgentRuntime`
- you are implementing or debugging actions, providers, evaluators, services, or model handlers
- you need the correct plugin lifecycle instead of guessing from Eliza wrappers
## Working Rules
- Treat the TypeScript runtime in `eliza/packages/core/src/` as the primary reference implementation.
- Prefer elizaOS-native abstractions over product-specific wrappers when reasoning about upstream behavior.
- Remember the split between persistent `Memory` and ephemeral `State`.
- Remember that plugins are the main composition mechanism.
Use when facing 2+ independent tasks that can be worked on without shared state or sequential dependencies
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes
Use when implementing any feature or bugfix, before writing implementation code