AI assistants in the terminal are plain at the start. You make them better with add-ons. The three big assistants use the same six kinds of add-ons, with slightly different names and folders. This page explains each kind in plain words, then shows where each one lives.
The six kinds of add-ons
Skill (a superpower). A skill teaches the assistant one job well, for example "review my changes" or "write a release note". It is a folder with a SKILL.md file inside. The assistant reads only the skill's name and description at the start, and loads the full instructions when the job comes up. All three assistants follow the open Agent Skills standard, so one skill folder often works in all three.
Subagent. A subagent is a helper assistant with its own instructions. The main assistant hands it one part of the work, for example "search the code" or "check for security problems", and gets a short report back. This keeps the main conversation small.
Hook. A hook is a small program that runs by itself at a fixed moment, for example before the assistant runs a command or when it finishes a turn. Use hooks for rules that must always apply, such as "block this dangerous command". A note file can only ask; a hook can enforce.
Slash command. A slash command is a short command that starts with / and that you type at the assistant's prompt, for example /help. Some are built in. In Claude Code, every skill also becomes a slash command.
Connector (MCP server). A connector lets the assistant use another app or service, for example a documentation service, a browser or a notes app. Connectors use a shared standard called MCP (Model Context Protocol), so one connector works in all three assistants.
Note file (memory). A note file is a plain text file with standing instructions, for example your build command or your style rules. The assistant reads it at the start of every session, so you do not repeat yourself. See The note file.
A plugin (Claude Code, Codex) or extension (Gemini CLI) is a package that bundles several of these add-ons in one install.
Where each add-on lives
~ means your home folder. "Project" paths are inside your project folder.
| Add-on | Claude Code | Codex CLI | Gemini CLI |
|---|---|---|---|
| Skills | ~/.claude/skills/ and .claude/skills/ (each skill: a folder with SKILL.md) | ~/.agents/skills and .agents/skills | ~/.gemini/skills/ or ~/.agents/skills/, and .gemini/skills/ or .agents/skills/ |
| Subagents | Markdown files in ~/.claude/agents/ and .claude/agents/ | TOML files in ~/.codex/agents/ and .codex/agents/ | Markdown files in ~/.gemini/agents/ and .gemini/agents/ |
| Hooks | hooks in ~/.claude/settings.json or .claude/settings.json | hooks.json or [hooks] in config.toml, in ~/.codex/ or .codex/ | hooks in ~/.gemini/settings.json or .gemini/settings.json |
| Slash commands | Built in, plus one per skill (old .claude/commands/ files still work) | Built in; type $ or /skills to use a skill | Built in, plus your own .toml files in ~/.gemini/commands/ and .gemini/commands/ |
| Connectors (MCP) | claude mcp add; saved in ~/.claude.json or .mcp.json | codex mcp add; saved in ~/.codex/config.toml or .codex/config.toml | gemini mcp add; saved in ~/.gemini/settings.json or .gemini/settings.json |
| Note file | CLAUDE.md (~/.claude/CLAUDE.md and in the project) | AGENTS.md (~/.codex/AGENTS.md and in the project) | GEMINI.md (~/.gemini/GEMINI.md and in the project) |
Two more facts help when you use more than one assistant:
- Claude Code reads a project's
AGENTS.mdwhen the project has noCLAUDE.md. - Gemini CLI can read other note file names, such as
AGENTS.md, if you set thecontext.fileNamesetting.
Which add-on to use
| You want to | Use |
|---|---|
| Teach the assistant a repeatable job | A skill |
| Give the assistant access to another app or service | A connector |
| Write down facts it needs in every session | The note file |
| Make a rule that must always apply | A hook |
| Split a big job into separate parts | Subagents |
Install your first add-ons
- Skills: Claude Code, Codex, Gemini CLI
- Connectors: Claude Code, Codex, Gemini CLI
Every add-on can change what the assistant does on your computer. Install add-ons only from people you trust, and read what they contain first. Our Skills, Agents and Connectors lists show add-ons that we checked.
Sources
- code.claude.com/docs/en/skills
- code.claude.com/docs/en/sub-agents
- code.claude.com/docs/en/hooks
- code.claude.com/docs/en/mcp
- code.claude.com/docs/en/memory
- developers.openai.com/codex/customization/overview
- developers.openai.com/codex/skills
- developers.openai.com/codex/subagents
- developers.openai.com/codex/hooks
- developers.openai.com/codex/mcp
- developers.openai.com/codex/guides/agents-md
- developers.openai.com/codex/cli/slash-commands
- geminicli.com/docs/cli/skills
- geminicli.com/docs/core/subagents
- geminicli.com/docs/hooks
- geminicli.com/docs/tools/mcp-server
- geminicli.com/docs/cli/gemini-md
- geminicli.com/docs/cli/custom-commands