Chapter
Learn the primitives — so the rest of the guide clicks (your building blocks)
Before the tiers, the vocabulary. The tiers show how to use these well; this is what they are and how to make one.
They're not hidden settings or some LLM dark magic. These agentic-engineering primitives live as plain-text files (Markdown, JSON, a shell script or two) — study them, understand them. And for stable teamwork they must be versioned and shared: every teammate and every CI run inherits the same setup, not a config trapped on one laptop.
| Primitive | What it is | Where it lives | Create it with |
|---|---|---|---|
| CLAUDE.md | Always-loaded project memory (conventions, gotchas) | repo root + subdirs | write the file (or /init) |
| Slash command | A reusable prompt you trigger by hand with /name |
.claude/commands/name.md |
write the file |
| Skill | Knowledge/workflow the model auto-loads when the task matches its description | .claude/skills/name/SKILL.md (a folder) |
write SKILL.md; add scripts/assets |
| Subagent | A separate Claude instance with its own context window, tools, and model; returns only a summary | .claude/agents/name.md |
/agents (recommended) or write the file |
| Hook | Deterministic shell script on a lifecycle event | .claude/settings.json |
add to hooks → Tier 5 |
| MCP server | A connector giving Claude external tools (browser, DB, tracker) | .mcp.json / claude mcp add |
Tier 3, Tip 3.7 |
| Permissions | Allow/deny rules + modes (default / auto / plan / bypass) for what runs without asking | .claude/settings.json |
/permissions or settings |
| Plugin | One installable unit bundling skills + hooks + subagents + MCP — how teams distribute all of the above | a marketplace / git repo | /plugin to browse & install |
Most of these are files you commit. The central config is .claude/settings.json (precedence: managed › CLI args › local › project › user) — it's where permissions, hooks, mcpServers, model, and inline agents can all be declared. A plugin is just a pre-packaged set of these files, so a teammate runs /plugin install on day one and inherits your whole setup.
Each primitive's full anatomy — the frontmatter, a worked example, when to reach for it — lands in the tier that uses it: Skills and MCP servers in Tier 3, hooks in Tier 5, subagents in Tier 6.