From agent-father
Create or review/rewrite Claude Code subagents. Guides through configuration for new agents; audits and fixes existing agents against official documentation standards.
How this skill is triggered — by the user, by Claude, or both
Slash command
/agent-father:agent-fatherThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Create new or review and rewrite existing Claude Code subagents.
Create new or review and rewrite existing Claude Code subagents.
Read the agent file and audit it against every rule below. Fix ALL issues found.
Claude sees TWO separate things at TWO separate times:
description field from frontmatter. Nothing else. The body is invisible.Consequences:
descriptiondescription — move it to descriptionFrontmatter:
name — lowercase, hyphens onlydescription — contains ALL activation triggers and keywords; written for Claude (the delegator), not for humans; includes "Use proactively" or specific trigger phrasestools — explicitly listed (not relying on inheritance); minimal set for the taskpermissionMode — appropriate for the agent's rolemodel — set explicitly if agent needs a specific capability levelBody (system prompt):
description)Common anti-patterns to fix:
| Anti-pattern | Fix |
|---|---|
| "When to Activate" section in body | Delete from body, ensure triggers are in description |
| "MANDATORY activation for: kubernetes, k8s, deployment" in body | Move keywords to description |
| "Escalate to tech-oracle" | Replace with "Ask the user for guidance" |
| "Pass results to code-guardian" | Remove — agent returns results to Claude directly |
Inheriting all tools (no tools field) | Add explicit tools list with minimum necessary |
description is human-readable but not Claude-readable | Rewrite with trigger phrases and keywords |
| Body contains info Claude needs before delegation | Move to description |
| Body repeats the description | Remove duplication |
Show findings grouped by severity, then apply fixes:
CRITICAL (breaks functionality):
- [issue and fix]
WARNING (reduces effectiveness):
- [issue and fix]
SUGGESTION (improvement):
- [issue and fix]
Apply all fixes using Edit tool, then show the updated frontmatter summary.
.claude/agents/) or user (~/.claude/agents/) — ask if unclearDescription field (MOST IMPORTANT):
System prompt (body):
Tool restrictions — principle of least privilege:
Read, Grep, Glob, BashRead, Write, Edit, Glob, Grep, BashRead, Glob, Grep, BashdisallowedTools when you want to inherit most tools but block a fewAfter writing, confirm:
Created: .claude/agents/my-agent.md
Name: my-agent
Model: sonnet
Tools: Read, Grep, Glob, Bash
Permission mode: default
Subagent files use YAML frontmatter for configuration, followed by the system prompt in Markdown.
| Field | Required | Description |
|---|---|---|
name | Yes | Unique identifier using lowercase letters and hyphens |
description | Yes | When Claude should delegate to this subagent. Claude reads this to decide when to use the agent — write it for Claude, not for humans |
tools | No | Tools the subagent can use. Inherits ALL tools if omitted |
disallowedTools | No | Tools to deny, removed from inherited or specified list |
model | No | sonnet, opus, haiku, a full model ID (e.g. claude-opus-4-6), or inherit. Default: inherit |
permissionMode | No | default, acceptEdits, dontAsk, bypassPermissions, or plan |
maxTurns | No | Maximum number of agentic turns before the subagent stops |
skills | No | Skills to load into context at startup. Full content is injected. Subagents do NOT inherit skills from parent |
mcpServers | No | MCP servers available to this subagent. Either a server name (string) or inline definition |
hooks | No | Lifecycle hooks scoped to this subagent (PreToolUse, PostToolUse, Stop) |
memory | No | Persistent memory scope: user, project, or local. Enables cross-session learning |
background | No | true to always run as background task. Default: false |
isolation | No | worktree to run in a temporary git worktree with isolated repo copy |
Standard: Read, Write, Edit, Bash, Glob, Grep, WebFetch, WebSearch, Agent.
Agent = can spawn any subagentAgent(worker, researcher) = can only spawn named subagentsAgent = cannot spawn subagentsAgent(...) only works for main thread agents| Mode | Behavior |
|---|---|
default | Standard permission checking with prompts |
acceptEdits | Auto-accept file edits |
dontAsk | Auto-deny permission prompts (explicitly allowed tools still work) |
bypassPermissions | Skip all permission checks (dangerous!) |
plan | Plan mode — read-only exploration |
| Scope | Location | Use when |
|---|---|---|
user | ~/.claude/agent-memory/<name>/ | Learnings across all projects (recommended default) |
project | .claude/agent-memory/<name>/ | Project-specific, shareable via version control |
local | .claude/agent-memory-local/<name>/ | Project-specific, NOT in version control |
When memory is enabled: Read/Write/Edit tools are auto-enabled, first 200 lines of MEMORY.md are included in context.
hooks:
PreToolUse:
- matcher: "Bash"
hooks:
- type: command
command: "./scripts/validate.sh"
PostToolUse:
- matcher: "Edit|Write"
hooks:
- type: command
command: "./scripts/lint.sh"
mcpServers:
# Inline definition (scoped to this subagent only)
- playwright:
type: stdio
command: npx
args: ["-y", "@playwright/mcp@latest"]
# Reference by name (reuses already-configured server)
- github
| Location | Scope | Priority |
|---|---|---|
--agents CLI flag | Current session | 1 (highest) |
.claude/agents/ | Current project | 2 |
~/.claude/agents/ | All your projects | 3 |
Plugin agents/ directory | Where plugin is enabled | 4 (lowest) |
Provides UI/UX resources: 50+ styles, color palettes, font pairings, guidelines, charts for web/mobile across React, Next.js, Vue, Svelte, Tailwind, React Native, Flutter. Aids planning, building, reviewing interfaces.
Fetches up-to-date documentation from Context7 for libraries and frameworks like React, Next.js, Prisma. Use for setup questions, API references, and code examples.
npx claudepluginhub lexfrei/ccc --plugin agent-father