# Create Agent

> Scaffold a new custom agent — reviewers, researchers, or workflow agents. Use when asked to create, scaffold, or add a new agent.

- Skill: `alexanderop/create-agent` (Agent Skill)
- Install (CLI): `npx skillmds@latest add alexanderop/create-agent`
- Raw SKILL.md: https://api.skillmd.com/api/skills/alexanderop/create-agent/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: alexanderop (https://skillmd.com/u/alexanderop)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/alexanderop/create-agent

---


# Create Agent

Scaffold a new `.agent.md` file with correct VS Code Copilot frontmatter and structure.

## Workflow

### Step 1: Determine Agent Type

Ask the user what kind of agent they want to create:

1. **Reviewer** — a code review subagent (dispatched by the `creview` orchestrator)
2. **Researcher** — a read-only codebase exploration agent
3. **Workflow** — a user-facing agent for specific tasks

### Step 2: Gather Details

Based on agent type, ask:

- **Name** — lowercase, hyphenated (e.g., `vue-reviewer`, `python-linter`)
- **Description** — what it does in one sentence
- **Domain** — what file types or patterns it targets (for reviewers)

### Step 3: Generate the Agent File

#### For Reviewers

Reviewers are subagents dispatched by the `creview` orchestrator. They:
- Are hidden from the user dropdown
- Cannot be auto-invoked by other agents
- Have read-only tools only
- Follow the standard finding output format

```yaml
---
name: [name]-reviewer
description: "[What it reviews] — [specific focus areas]"
user-invocable: false
disable-model-invocation: true
tools: ['search/codebase', 'search/usages']
---
```

The body should include:
- Clear role description
- What to look for (specific patterns, smells, or violations)
- Confidence calibration (High/Medium/Low with definitions)
- What NOT to flag (to avoid noise)
- Standard output format (Finding with Severity, Confidence, File, Category, Description, Suggestion)

#### For Researchers

Researchers are read-only subagents used by other agents for codebase exploration.

```yaml
---
name: [name]
description: "[What it researches]"
user-invocable: false
disable-model-invocation: true
tools: ['search/codebase', 'search/usages', 'search/changes', 'web/fetch']
---
```

#### For Workflow Agents

Workflow agents are user-facing and can have full tool access.

```yaml
---
name: [name]
description: "[What it does]"
argument-hint: "[Expected input]"
tools: ['*']
---
```

### Step 4: Place the File

Write the agent file to `.github/agents/[name].agent.md`.

### Step 5: Explain Auto-Discovery

For reviewers, explain:
- The `creview` orchestrator uses `agents: ['*']` and auto-discovers all `*-reviewer.agent.md` files
- It reads the reviewer's `description` to determine if it's relevant to the current diff
- The reviewer will be dispatched automatically when files matching its domain are changed
- No configuration needed — just create the file and it's active

## VS Code Copilot Frontmatter Reference

| Field | Type | Notes |
|-------|------|-------|
| `name` | string | Agent identifier (lowercase, hyphenated) |
| `description` | string | Shown in chat input; used for smart routing |
| `argument-hint` | string | Guidance text for input |
| `tools` | string[] | Tool/tool-set names |
| `agents` | string[] or `*` | Subagent availability |
| `user-invocable` | boolean | Show in dropdown (default: true) |
| `disable-model-invocation` | boolean | Prevent auto-invocation (default: false) |
| `handoffs` | object[] | Workflow transitions |

**Banned fields** (Claude Code only — must not appear):
`color`, `context`, `allowed-tools`, `disallowedTools`

**Deprecated fields:**
`infer` — use `user-invocable` and `disable-model-invocation` instead

