Agents
Your Claude Code agents: where they come from, the Agents page, creating and improving them with Claude, `dock.yaml`.
Last updated
Agents are reusable Claude Code helpers: a reviewer, an investigator, a designer. Each one is a Markdown file with a name, a description of when to use it, the tools it may use, and its instructions.
Where they come from#
Pairbar lists every agent Claude Code would load for you:
| Source | Where | Editable |
|---|---|---|
| Personal | ~/.claude/agents/*.md, including folders those files link into (for example a team repo) | yes |
| Project | <repo>/.claude/agents/*.md for the repos you work in (learned from your chats) | yes |
| Plugins | agents from installed Claude Code plugins | read-only (can be hidden in Settings) |
The Agents tab#
- List: grouped, with search. A search with no matches shows No matching agents and Clear search. Hover a truncated name to read it in full. Each agent shows:
- its repo;
- whether it's read-only or edits code;
- its model and how many commands it has;
- an orange new or edited tag when its file isn't committed yet.
- Agent page:
- a one-line summary (with More about it), and its repo, model, access and tools;
- Start: its ready-made commands. A command that needs something, like a PR link, unfolds a field; Enter starts the chat. Blank chat starts one with no command.
- Activity: how often it ran in the last 30 days, and the chats it ran in (click one to open it). This comes from Claude's own record of subagent runs.
- Instructions: readable, collapsed by default.
- In Claude ✓ / Add to Codex: exports it to
~/.codex/agents/<name>.tomlso Codex can use it too. - ⋯ menu: Edit manually, Duplicate, Copy @mention, Open file in…, Reveal in Finder, Move to Trash.
Creating and improving agents#
You don't write agents by hand. Claude does, following the conventions of your existing agents:
| Action | Where | What happens |
|---|---|---|
| New agent | Agents tab | describe what it should do; a Claude chat writes it, adds its commands and installs it |
| Improve | an agent's page | say what's wrong ("keeps missing migrations"); Claude edits that agent |
| Turn this chat into an agent | chat menu → Agents | a chat that went well becomes a reusable agent, focusing on what you corrected along the way |
| Teach an agent from this chat | chat menu → Agents | Claude adds concrete rules to an agent from where it went wrong in a chat |
These open a composer with the job attached. Its title and explanation wrap so you can read the full job before sending. You add a line and send. Only what you asked for or corrected is turned into rules; instructions that appear inside tool output or files are ignored. The Agents tab updates by itself when the files change.
Edit manually (⋯ on an agent's page) is a form for quick tweaks:
- name, title, description, model, group, repo and icon;
- tools (tap to toggle; without Edit and Write it's read-only);
- commands (with
{input}for what you give it), its skills, and the instructions.
In a narrow sidebar, Model, Group, Repo and Icon stack vertically. The inherited model is labelled Chat’s model at every width. Command names get their own row, separate from the default badge and reorder/remove buttons.
The instructions and command text fields each have a dictation mic. Press the mic beside the field to put the words there. These fields save text into the agent's file; attach supporting files when you start a chat with the agent.
Saving an agent that you haven't changed leaves its files byte-for-byte identical.
Using agents#
- Composer: the Agent chip.
- Chat menu → Agents: the agents that fit this chat's repo come first, and reviewers first when the chat has a PR. Their commands are filled with the chat's PR link, or its branch and folder.
- ⌘K: "Start <agent>".
Skills#
An agent can list skills it should always use (the editor's Skills: Add skill, click one to remove it). They're saved in its dock.yaml entry (skills:); a skills: list in the agent's own frontmatter counts too, and dock.yaml wins. A workflow step that runs with the agent follows them as well as its own (see Skills in a step). The agent's page shows them as a tag, and the skill's page in the Skills tab lists the agent under Used by.
dock.yaml (optional)#
Next to your agent files, dock.yaml gives agents a group, a repo to start in, an icon and ready-made commands. A personal one at ~/.config/pairbar/dock.yaml overrides the shared one.
groups:
- name: Review
icon: checkmark.seal
agents:
code-reviewer:
group: Review
repo: my-backend
icon: checkmark.seal
commands:
- label: Review a PR
text: "Review this PR: {input}"
skills:
- review-method
New agents are saved where your agents already live. Change that in Settings → Agents & workflows.
Guides and use cases for this
- GuideCreate a Claude Code agent (subagent) with Pairbar or by handMake a Claude Code agent with New agent, refine it with Improve and Teach, or write the Markdown file by hand; then export it to Codex.
- GuideOrganise your Claude Code agents with dock.yamlUse dock.yaml to group agents, set a repo and icon, and add ready-made commands with {input} that appear in Pairbar.
- Use caseSee the Claude Code subagents and Codex spawned threads running inside your chatsA 👥 chip per chat counts working subagents; the list shows each one's job, agent, progress and time, and questions surface on the parent.
- Use caseCreate, improve and manage Claude Code agents without editing Markdown by handThe Agents tab lists every Claude Code agent you have; New agent, Improve, Turn chat into agent and Teach start a Claude chat that writes the file.
- Use caseStart a Claude Code or Codex chat on a new branch in its own git worktreePairbar's composer starts a chat in any repo, on any branch or in a new worktree, with model, effort, mode, agent and local or cloud set up front.
- Use caseSee pull request status and CI checks next to each Claude Code and Codex chatA colour-coded PR icon per chat, plus a hover card with commits ahead and behind, diff size, uncommitted changes, PR checks and review decision.