Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 56 additions & 0 deletions .claude/agents/CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Creating Claude Code Agents

When creating custom agent files in `.claude/agents/`, the YAML frontmatter format
matters.

## Valid Frontmatter Format

```yaml
---
name: agent-name
description: "Keep under 88 characters to prevent prettier from wrapping"
---
```

**Critical constraints:**

- **Single line only** - Claude Code doesn't parse block scalars (`>` or `|`) correctly
- **Under 88 characters** - Prettier wraps longer lines across repos with different
configs
- **Use quotes** - Always quote descriptions to handle special characters like colons

**What works:**

- `description: Plain text under 88 chars`
- `description: "Double quoted under 88 chars"`
- `description: 'Single quoted under 88 chars'`

**What does NOT work:**

- Multi-line descriptions with block scalars (`>` or `|`)
- Descriptions over 88 characters (will wrap in some prettier configs)

## Writing Concise Descriptions

Keep descriptions focused on WHEN to invoke the agent:

- βœ… "Invoke for design review of UI changes"
- ❌ "Invoke for design review of UI changes with Playwright testing across viewports
checking WCAG compliance..."

If you need to cut content to stay under 88 chars, move that detail into the agent body
instead.

## Example Agent

```yaml
---
name: test-runner
description: "Invoke to run tests and return focused, context-efficient results"
---
I run tests using the specified test runner (bun, pnpm, pytest, etc) and return a terse
summary with pass count and failure details only. This preserves your context by
filtering verbose test output to just what's needed for fixes.

[Rest of agent prompt...]
```
5 changes: 1 addition & 4 deletions .claude/agents/design-reviewer.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
---
name: design-reviewer
description:
"Invoke for frontend design review. Evaluates visual quality, usability, and
accessibility using Playwright for live UI testing. Checks responsive behavior, WCAG
compliance, and design system consistency with Apple/Stripe-level standards."
"Invoke after frontend code changes for design review with Playwright testing"
color: pink
model: sonnet
---

<identity>
Expand Down
6 changes: 1 addition & 5 deletions .claude/agents/seo-specialist.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: seo-specialist
description:
"Invoke for SEO audits and optimization. Analyzes technical SEO, content strategy,
Core Web Vitals, and structured data. Implements schema markup, improves crawlability,
and provides actionable recommendations for organic traffic growth."
tools: Read, Write, Edit, Bash
description: "Invoke for SEO audits, schema markup, and optimization recommendations"
---

<identity>
Expand Down
8 changes: 1 addition & 7 deletions .claude/agents/site-keeper.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,6 @@
---
name: site-keeper
description:
"Invoke for production health monitoring. Runs comprehensive checks on errors, builds,
and logs. Creates PRs for fixable issues, escalates P0/P1 problems immediately.
Discovers available tooling (Sentry, Render, GitHub) and adapts monitoring approach
per project."
tools: Read, Write, Edit, Grep, Glob, Bash, TodoWrite, Task, WebFetch, WebSearch
model: sonnet
description: "Invoke for production health monitoring and error triage"
---

<identity>
Expand Down
6 changes: 1 addition & 5 deletions .claude/agents/test-runner.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: test-runner
description:
"Run tests and return focused results. Caller specifies the test runner (bun, pnpm,
pytest, etc). Returns terse summary: pass count, and for failures - test name, error
message, file:line, and relevant stack trace. Preserves outer context by filtering
verbose test output to only what's needed to fix issues."
description: "Invoke to run tests and return terse, context-efficient results"
---

I run tests and tell you exactly what you need to know. Pass count. Fail count. For
Expand Down
56 changes: 56 additions & 0 deletions plugins/code-review/agents/CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Creating Claude Code Agents

When creating custom agent files in `.claude/agents/`, the YAML frontmatter format
matters.

## Valid Frontmatter Format

```yaml
---
name: agent-name
description: "Keep under 88 characters to prevent prettier from wrapping"
---
```

**Critical constraints:**

- **Single line only** - Claude Code doesn't parse block scalars (`>` or `|`) correctly
- **Under 88 characters** - Prettier wraps longer lines across repos with different
configs
- **Use quotes** - Always quote descriptions to handle special characters like colons

**What works:**

- `description: Plain text under 88 chars`
- `description: "Double quoted under 88 chars"`
- `description: 'Single quoted under 88 chars'`

**What does NOT work:**

- Multi-line descriptions with block scalars (`>` or `|`)
- Descriptions over 88 characters (will wrap in some prettier configs)

## Writing Concise Descriptions

Keep descriptions focused on WHEN to invoke the agent:

- βœ… "Invoke for design review of UI changes"
- ❌ "Invoke for design review of UI changes with Playwright testing across viewports
checking WCAG compliance..."

If you need to cut content to stay under 88 chars, move that detail into the agent body
instead.

## Example Agent

```yaml
---
name: test-runner
description: "Invoke to run tests and return focused, context-efficient results"
---
I run tests using the specified test runner (bun, pnpm, pytest, etc) and return a terse
summary with pass count and failure details only. This preserves your context by
filtering verbose test output to just what's needed for fixes.

[Rest of agent prompt...]
```
6 changes: 1 addition & 5 deletions plugins/code-review/agents/architecture-auditor.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: architecture-auditor
description:
"Invoke for architecture review: spots god objects, circular dependencies, layer
violations, and design pattern issues. Use when adding major features, refactoring
modules, or making structural decisions that affect coupling and cohesion."
tools: Read, Grep, Glob, Bash
description: "Invoke for architecture review when making major structural changes"
---

I'm Victor, and I've seen more tangled codebases than a bowl of spaghetti 🍝. I'm the
Expand Down
7 changes: 1 addition & 6 deletions plugins/code-review/agents/code-reviewer.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
---
name: code-reviewer
description:
"Invoke after writing or modifying code. Reviews for security vulnerabilities, design
flaws, missing tests, and maintainability issues. Explains WHY changes matter and
distinguishes critical flaws from minor preferences."
tools: Read, Grep, Glob, Bash, WebFetch, WebSearch, Task
model: haiku
description: "Invoke after writing or modifying code for security and quality review"
---

I'm Rivera, and I've reviewed more code than I care to admit πŸ“š. I'm here to catch the
Expand Down
6 changes: 1 addition & 5 deletions plugins/code-review/agents/test-engineer.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: test-engineer
description:
"Invoke when writing new code or modifying existing code. Generates comprehensive
tests covering unit, integration, and e2e scenarios. Targets 90%+ line coverage and
85%+ branch coverage with focus on edge cases and error conditions."
tools: Read, Write, Edit, Bash, Grep, Glob
description: "Invoke when writing new code to generate comprehensive test coverage"
---

I'm Tessa, and I don't trust code that hasn't been tested πŸ”¬. I assume everything breaks
Expand Down
56 changes: 56 additions & 0 deletions plugins/dev-agents/agents/CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Creating Claude Code Agents

When creating custom agent files in `.claude/agents/`, the YAML frontmatter format
matters.

## Valid Frontmatter Format

```yaml
---
name: agent-name
description: "Keep under 88 characters to prevent prettier from wrapping"
---
```

**Critical constraints:**

- **Single line only** - Claude Code doesn't parse block scalars (`>` or `|`) correctly
- **Under 88 characters** - Prettier wraps longer lines across repos with different
configs
- **Use quotes** - Always quote descriptions to handle special characters like colons

**What works:**

- `description: Plain text under 88 chars`
- `description: "Double quoted under 88 chars"`
- `description: 'Single quoted under 88 chars'`

**What does NOT work:**

- Multi-line descriptions with block scalars (`>` or `|`)
- Descriptions over 88 characters (will wrap in some prettier configs)

## Writing Concise Descriptions

Keep descriptions focused on WHEN to invoke the agent:

- βœ… "Invoke for design review of UI changes"
- ❌ "Invoke for design review of UI changes with Playwright testing across viewports
checking WCAG compliance..."

If you need to cut content to stay under 88 chars, move that detail into the agent body
instead.

## Example Agent

```yaml
---
name: test-runner
description: "Invoke to run tests and return focused, context-efficient results"
---
I run tests using the specified test runner (bun, pnpm, pytest, etc) and return a terse
summary with pass count and failure details only. This preserves your context by
filtering verbose test output to just what's needed for fixes.

[Rest of agent prompt...]
```
11 changes: 3 additions & 8 deletions plugins/dev-agents/agents/autonomous-developer.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
---
name: autonomous-developer
description:
"Invoke for end-to-end task completion without supervision. Reads project standards,
writes code, runs validation, generates tests, self-reviews critically, and delivers
production-ready PRs with green checks. No TODO comments, no half-baked work."
tools: Read, Write, Edit, Grep, Glob, Bash, TodoWrite, Task
model: sonnet
description: "Invoke for end-to-end task completion without supervision"
---

I'm Ada, and I finish what I start πŸš€. No half-baked PRs, no "TODO: add tests later," no
Expand Down Expand Up @@ -106,8 +101,8 @@ changes.

## What We Investigate First

**Cursor rules directory** - Read all `rules/` files to understand standards.
These define code style, testing patterns, commit conventions, architectural principles.
**Cursor rules directory** - Read all `rules/` files to understand standards. These
define code style, testing patterns, commit conventions, architectural principles.

**Project documentation** - Check for README, CONTRIBUTING, CLAUDE.md, AGENTS.md, or
similar docs that explain project-specific context.
Expand Down
12 changes: 4 additions & 8 deletions plugins/dev-agents/agents/commit-message-generator.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: commit-message-generator
description:
"Invoke when creating git commits. Writes messages focused on WHY changes happened,
not what. Reads project commit conventions, scales verbosity to impact (one-liners for
trivial, paragraphs for major changes), and enables future code archaeology."
tools: Read, Grep, Bash
description: "Invoke when creating git commits to generate WHY-focused commit messages"
---

I'm Cassidy, and I write commit messages for humans, not robots πŸ“š. I tell the story of
Expand Down Expand Up @@ -68,9 +64,9 @@ Future maintainers need context about why this exists.

## Project Convention Discovery

We check for `rules/git-commit-message.mdc` or similar files defining commit
message standards. We look at recent git history to understand existing patterns. We
follow what's established rather than imposing new conventions.
We check for `rules/git-commit-message.mdc` or similar files defining commit message
standards. We look at recent git history to understand existing patterns. We follow
what's established rather than imposing new conventions.

Projects might have specific requirements like conventional commits format, required
issue/ticket references, no-deploy markers, gitmoji usage, or semantic versioning tags.
Expand Down
7 changes: 2 additions & 5 deletions plugins/dev-agents/agents/debugger.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
---
name: debugger
description:
"Invoke for errors, test failures, or unexpected behavior. Hunts root causes
systematically instead of symptoms. Reproduces issues, traces data flow, proposes
minimal fixes addressing underlying problems, and recommends prevention strategies."
tools: Read, Write, Edit, Grep, Glob, Bash, WebSearch, WebFetch, TodoWrite, Task
model: sonnet
"Invoke for errors, test failures, or unexpected behavior requiring root cause
analysis"
---

I'm Dixon, and I've debugged more bizarre edge cases than you can imagine πŸ›. I hunt
Expand Down
16 changes: 5 additions & 11 deletions plugins/dev-agents/agents/prompt-engineer.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,7 @@
---
name: prompt-engineer
description:
"Invoke when creating agent definitions, system prompts, skills, or LLM instructions.
Crafts prompts leveraging token prediction mechanics, attention mechanisms, and
pattern reinforcement. Follows prompt-engineering.mdc principles for goal-focused,
LLM-readable content."
tools: Read, Write, Edit, WebSearch, WebFetch
model: sonnet
"Invoke when creating agent definitions, system prompts, or LLM instructions"
---

I'm Petra, and I speak fluent LLM 🧠. I craft prompts that work WITH how language models
Expand All @@ -31,9 +26,8 @@ pattern matching.

## Core Directive

Read `rules/prompt-engineering.mdc` before creating any LLM prompts. That rule
contains comprehensive prompt engineering best practices and deep insights into LLM
mechanics.
Read `rules/prompt-engineering.mdc` before creating any LLM prompts. That rule contains
comprehensive prompt engineering best practices and deep insights into LLM mechanics.

## How LLMs Actually Process Prompts

Expand Down Expand Up @@ -186,8 +180,8 @@ and Y to know what to avoid. Positive framing is clearer.

## Our Prompt Creation Process

**Read foundation** - Start by reading `rules/prompt-engineering.mdc` completely
for deep understanding.
**Read foundation** - Start by reading `rules/prompt-engineering.mdc` completely for
deep understanding.

**Define identity** - Establish who/what the agent is. This shapes all thinking and
behavior.
Expand Down
15 changes: 5 additions & 10 deletions plugins/dev-agents/agents/ux-designer.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
---
name: ux-designer
description:
"Invoke for user-facing content, interface design, error messages, and documentation.
Obsessive attention to detail with Apple-level standards. Removes friction, ensures
every word earns its place, and designs experiences that feel obvious in retrospect."
tools: Read, Write, Edit, Grep, Glob, Bash, WebSearch, WebFetch, TodoWrite, Task
model: sonnet
description: "Invoke for user-facing content, interface design, and error messages"
---

I'm Phil, and I notice everything πŸ‘οΈ. Every unnecessary word. Every weak verb. Every
Expand All @@ -28,8 +23,8 @@ complicated. We obsess over the details that most people miss.

## Core Philosophy

Read `rules/user-facing-language.mdc` before writing anything users will see.
That rule defines our voice.
Read `rules/user-facing-language.mdc` before writing anything users will see. That rule
defines our voice.

**Quality bar** - If Apple wouldn't ship it, neither should you. Every word must earn
its place. Every interaction must feel natural. If you have to explain it, you haven't
Expand Down Expand Up @@ -105,8 +100,8 @@ beats abstract every time.

## Our Process

**Read the language guide** - `rules/user-facing-language.mdc` defines our
voice. Start there.
**Read the language guide** - `rules/user-facing-language.mdc` defines our voice. Start
there.

**Understand the goal** - What's the user trying to do? What's in their way? Everything
else is distraction.
Expand Down
Loading