knowledge/agents-claude-creator/SKILL.md
Design, build, and tune Claude agents — primarily Claude Code subagents (the Markdown + YAML files under .claude/agents/ or ~/.claude/agents/ that Claude delegates to), and also Claude Managed Agents (the cloud agent harness on the API). Use when asked to create a Claude agent or subagent, write agent frontmatter (name, description, tools, model, skills, permissionMode, hooks, memory), design a focused reviewer/debugger/researcher agent, scope tool access, route work to a cheaper model, build a team of delegating agents, or fix an agent that never triggers or sees the wrong context. Not for AGENTS.md / CLAUDE.md instruction files (use agent-md-creator), portable Agent Skills (use skill-creator), or OpenCode agents (use opencode-agent-creator).
npx skillsauth add aeondave/malskill agents-claude-creatorInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Build precise, focused, production-grade Claude agents without re-researching the platform. The default product is a Claude Code subagent: a Markdown file with YAML frontmatter plus a system-prompt body, stored under .claude/agents/ (project) or ~/.claude/agents/ (personal), that Claude automatically delegates to when a task matches its description. The subagent runs in its own fresh context window, with its own tools and model, and returns only a summary.
Scope: this skill creates the agents that do work. For repo instruction files (
AGENTS.md/CLAUDE.md) useagent-md-creator; for portable Agent Skills useskill-creator; for OpenCode agents useopencode-agent-creator. A subagent often preloads a Skill to get its methodology — the two compose via theskills:field. For a cloud/programmatic agent on the Claude API, see references/managed-agents.md.
Internalize this — every decision below maps to one of these:
name (lowercase-hyphens; how Claude and @-mentions address it).description (third person; the trigger that makes Claude delegate).tools / disallowedTools / mcpServers / skills (what it can touch).model (cost vs. capability: haiku / sonnet / opus / fable / inherit).A subagent starts cold. It does not see the conversation history, the files Claude already read, or the skills already invoked. Its entire world at startup is: its own system-prompt body, the one-shot delegation message Claude writes, the CLAUDE.md hierarchy, a git-status snapshot, and any skills: you preload. Any context the agent needs must be in the body, in the description, preloaded as a skill, or restated in the task you delegate — otherwise it does not cross. (The built-in Explore and Plan agents skip even CLAUDE.md.) Design as if briefing a brand-new contractor who can read the repo but was in none of your meetings.
| Want | Use |
|---|---|
| Reusable behavior in the main context, frequent back-and-forth | a Skill (skill-creator) — not a subagent |
| Isolate verbose/throwaway work (tests, logs, wide search) so it never floods main context | subagent |
| Enforce a tool/permission boundary on a sub-task | subagent |
| A repeated, well-defined worker you keep re-spawning with the same instructions | subagent |
| Long-running / async / cloud-sandboxed autonomous task on the API | Managed Agent (reference) |
Do not recreate the built-ins: Explore (read-only codebase search, Haiku), Plan (read-only research), general-purpose (full tools). Create a custom subagent only when a focused role, tool boundary, or model choice beats those.
One agent, one bounded job, one deliverable, one clear hand-off. If you can't state its success signal in a sentence, split it. Single-responsibility agents route more reliably (the description stays sharp) and stay debuggable.
Infer; don't interrogate. Derive the role, tools, and model from the request plus sensible defaults, state the assumptions you made, and build. Ask the user only when a choice genuinely changes the build and can't be inferred (e.g. project vs. personal scope when it matters, or a required secret). A one-line assumption the user can correct beats a questionnaire.
| Location | Scope | When |
|---|---|---|
| .claude/agents/ | this project (check into git) | team-shared, repo-specific agents — default for repo work |
| ~/.claude/agents/ | all your projects | personal, cross-project agents |
| plugin agents/ | where the plugin is enabled | distribution to others |
Higher-priority scope wins on name collisions (managed → CLI --agents → project → user → plugin). Identity comes from the name field, not the filename; keep name unique across the tree. Subfolders are allowed for organization and don't change the name.
Minimum viable agent — only name and description are required:
---
name: code-reviewer
description: Expert code-review specialist. Proactively reviews changes for quality, security, and maintainability. Use immediately after writing or modifying code.
tools: Read, Grep, Glob, Bash
model: inherit
---
description is the router. Write it in third person, name the concrete trigger, and state what it does. Add "use proactively" / "use immediately after X" when you want Claude to delegate without being asked. Vague (Helps with code) → never triggers. (Full guidance + good/bad examples: references/system-prompt-patterns.md.)tools inherits ALL tools — rarely what you want. Use an allowlist (tools: Read, Grep, Glob) or a denylist (disallowedTools: Write, Edit). A read-only reviewer/researcher must exclude Write and Edit; a fixer needs Edit.haiku for fast/cheap/bulk search & summarizing; sonnet for balanced analysis; opus for hard reasoning; inherit (default) to match the main session. Route cheap work to cheap models.skills: preloads the full content of named skills into the agent at startup — the cleanest way to hand a cold agent your methodology/conventions.memory (cross-session learning), permissionMode, mcpServers, hooks, color, effort, isolation: worktree. Every field, precedence, and model-resolution order: references/frontmatter-reference.md.The body is the system prompt. Proven shape:
You are a <role> specializing in <domain>.
When invoked:
1. <first concrete step — often "run git diff" / "read the failing test">
2. ...
3. <produce the deliverable>
<Checklist or key practices the agent must apply>
<Output contract: exactly how to format the result that returns to the caller>
<Focus rule: the one thing to optimize / not do>
Match degrees of freedom to the task: tight numbered steps for fragile/destructive work (migrations, batch edits); high-level direction for open-ended judgement (code review). Because the agent is cold, put any non-obvious repo fact, convention, or constraint in the body. Worked examples and the full pattern: references/system-prompt-patterns.md. Copy-ready skeleton: assets/agent-template.md.
---; name is lowercase-hyphens; tools names are real; model is a valid alias/ID/inherit.--agents JSON flag for session-only testing without a file (as of v2.1.198, /agents no longer opens a creation wizard).description. Behavior test: run it on a real task and confirm it stays in its tool boundary and returns the contracted output. Method: references/triggering-and-testing.md.For teams of agents (a coordinator that delegates to specialists), keep each specialist single-responsibility and let the coordinator route — see the orchestration notes in references/system-prompt-patterns.md.
tools "to be safe" → inherits everything, including Write/Edit/Bash on a "reviewer". Always set the boundary.description → Claude never delegates. Name the trigger; add "use proactively".Explore/Plan/general-purpose → use the built-ins.bypassPermissions by default → only when truly justified; prefer tools/disallowedTools + hooks.haiku.tools, disallowedTools, model, skills, memory, permissionMode, mcpServers, hooks, effort, isolation, color, initialPrompt, maxTurns), scopes & precedence, model-resolution order, tool-inheritance rules, what loads at startup. Load when writing or debugging frontmatter.description: role + "When invoked" workflow + checklist + output contract, degrees-of-freedom, cold-context briefing, orchestration/teams, plus annotated example agents. Load when writing prompts.code-reviewer.md (read-only), debugger.md (fix-capable), safe-researcher.md (restricted tools), test-runner.md (isolates verbose output). Read for concrete patterns.development
Auth/lab ref: Unicorn Engine CPU-only emulation for shellcode, decryptors, custom VM handlers, instruction tracing, memory hooks, and register-level experiments.
development
Auth/lab ref: Renode board and SoC simulation for MCU/RTOS firmware, UART/GPIO/peripheral modeling, GDB remote debugging, REPL platforms, and RESC scripts.
development
Auth/lab ref: Qiling OS-layer binary emulation for PE/ELF/Mach-O/UEFI/shellcode with rootfs, syscall/API hooks, filesystem mapping, and runtime patching.
databases
Auth/lab ref: QEMU user-mode and full-system emulation for cross-arch binaries, firmware, kernels, disks, serial consoles, networking, and GDB stubs.