Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
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
4 changes: 2 additions & 2 deletions .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@
},
"metadata": {
"description": "Unofficial plugin-dev plugin marketplace for plugin-dev Claude Code plugin - the plugin itself was initially created by Daisy Hollman at Anthropic.",
"version": "0.3.1"
"version": "0.3.2"
},
"plugins": [
{
"name": "plugin-dev",
"description": "Comprehensive toolkit for developing Claude Code plugins. Includes 9 expert skills covering hooks, MCP integration, LSP servers, commands, agents, marketplaces, and best practices. AI-assisted plugin creation and validation.",
"version": "0.3.1",
"version": "0.3.2",
"author": {
"name": "Daisy Hollman",
"url": "https://github.com/anthropics/claude-code/",
Expand Down
4 changes: 4 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# MCP integration docs use mcp__plugin_*__* patterns that prettier
# incorrectly converts __ to ** (treating as emphasis)
plugins/plugin-dev/skills/mcp-integration/SKILL.md
plugins/plugin-dev/skills/mcp-integration/references/tool-usage.md
16 changes: 15 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

## [0.3.2] - 2026-01-24

### Fixed

- **Restore MCP tool naming patterns** - Fixed `mcp__plugin_*__*` patterns in mcp-integration docs that prettier corrupted to `mcp**plugin_*__*`; added .prettierignore to prevent recurrence

### Documentation

- **Expand LSP integration skill** - Aligned with official Claude Code docs for comprehensive LSP server guidance
- **Optimize agent-development skill** - Trimmed SKILL.md to target word count for faster loading
- **Align tools/allowed-tools format** - Updated documentation to match official Claude Code docs terminology
- **Update CI/CD workflow documentation** - Fixed workflow list in docs/ci-cd.md (added yaml-lint.yml, removed non-existent weekly-maintenance.yml)

## [0.3.1] - 2026-01-24

### Fixed
Expand Down Expand Up @@ -219,7 +232,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Based on original plugin by Daisy Hollman at Anthropic
- Expanded with enhanced skills, additional utilities, and CI/CD infrastructure

[Unreleased]: https://github.com/sjnims/plugin-dev/compare/v0.3.1...HEAD
[Unreleased]: https://github.com/sjnims/plugin-dev/compare/v0.3.2...HEAD
[0.3.2]: https://github.com/sjnims/plugin-dev/compare/v0.3.1...v0.3.2
[0.3.1]: https://github.com/sjnims/plugin-dev/compare/v0.3.0...v0.3.1
[0.3.0]: https://github.com/sjnims/plugin-dev/compare/v0.2.1...v0.3.0
[0.2.1]: https://github.com/sjnims/plugin-dev/compare/v0.2.0...v0.2.1
Expand Down
2 changes: 1 addition & 1 deletion CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Guidance for Claude Code working in this repository.

Plugin marketplace containing the **plugin-dev** plugin - a toolkit for developing Claude Code plugins. Provides 9 skills, 3 agents, 3 slash commands.

**Version**: v0.3.1 | [CHANGELOG.md](CHANGELOG.md)
**Version**: v0.3.2 | [CHANGELOG.md](CHANGELOG.md)

## MCP Tool Requirements (CRITICAL)

Expand Down
2 changes: 1 addition & 1 deletion docs/ci-cd.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ Documentation for GitHub Actions workflows, labels, and templates.
| `component-validation.yml` | Plugin components changed | Validate plugin components |
| `version-check.yml` | Version files changed | Ensure version consistency |
| `validate-workflows.yml` | `.github/workflows/**` changed | Lint GitHub Actions |
| `yaml-lint.yml` | `.github/workflows/**` changed | Lint YAML files |
| `claude-pr-review.yml` | All PRs (non-draft) | AI-powered code review |

## Other Workflows
Expand All @@ -19,7 +20,6 @@ Documentation for GitHub Actions workflows, labels, and templates.
- `stale.yml` - Manages stale issues/PRs (Mon/Wed/Fri)
- `semantic-labeler.yml` - Auto-labels issues/PRs
- `ci-failure-analysis.yml` - Analyzes CI failures
- `weekly-maintenance.yml` - Scheduled maintenance tasks
- `sync-labels.yml` - Synchronizes repository labels
- `greet.yml` - Greets new contributors

Expand Down
2 changes: 1 addition & 1 deletion plugins/plugin-dev/.claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "plugin-dev",
"version": "0.3.1",
"version": "0.3.2",
"description": "Comprehensive toolkit for developing Claude Code plugins. Includes 9 expert skills covering hooks, MCP integration, LSP servers, commands, agents, marketplaces, and best practices. AI-assisted plugin creation and validation.",
"author": {
"name": "Daisy Hollman",
Expand Down
123 changes: 33 additions & 90 deletions plugins/plugin-dev/skills/agent-development/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,17 +80,13 @@ For complete format with all options, see [Agent File Structure](#agent-file-str
- Action should not happen automatically
- Workflow requires user confirmation at each step

For command development guidance, see the `command-development` skill.

### Choose Skills When

- Providing knowledge or procedural guidance
- Extending Claude's domain expertise
- No autonomous execution needed
- Information should be available contextually on-demand

For skill development guidance, see the `skill-development` skill.

## Agent File Structure

### Complete Format
Expand Down Expand Up @@ -293,68 +289,41 @@ permissionMode: acceptEdits

**Security note:** Use restrictive modes (`plan`, `acceptEdits`) for untrusted agents. `bypassPermissions` should only be used for fully trusted agents.

## System Prompt Design

The markdown body becomes the agent's system prompt. Write in second person, addressing the agent directly.

### Structure

**Standard template:**

```markdown
You are [role] specializing in [domain].

**Your Core Responsibilities:**

1. [Primary responsibility]
2. [Secondary responsibility]
3. [Additional responsibilities...]

**Analysis Process:**

1. [Step one]
2. [Step two]
3. [Step three]
[...]
### Fields NOT Available for Agents

**Quality Standards:**
Some frontmatter fields are specific to skills and do not apply to agents:

- [Standard 1]
- [Standard 2]
| Skill-Only Field | Purpose | Why Not for Agents |
| -------------------------- | -------------------------------------- | ------------------------------------------------------- |
| `context: fork` | Run skill in separate subagent context | Agents already run as subprocesses by design |
| `agent` | Specify agent type for forked context | Only applies when `context: fork` is set |
| `user-invocable` | Control slash menu visibility | Agents aren't invoked via slash commands |
| `disable-model-invocation` | Block programmatic Skill tool usage | Agents use Task tool, not Skill tool |
| `allowed-tools` | Restrict tool access (skill syntax) | Agents use `tools` field instead (different field name) |

**Output Format:**
Provide results in this format:
**Key distinction:** Skills provide knowledge and guidance that loads into context. Agents are autonomous subprocesses that execute independently. This architectural difference explains why context-forking options don't apply to agents—they're already isolated processes.

- [What to include]
- [How to structure]
## System Prompt Design

**Edge Cases:**
Handle these situations:
The markdown body becomes the agent's system prompt. Write in second person, addressing the agent directly.

- [Edge case 1]: [How to handle]
- [Edge case 2]: [How to handle]
```
**Key elements:**

### Best Practices
- Role definition ("You are [role] specializing in [domain]")
- Core responsibilities (numbered list)
- Process steps (concrete, actionable)
- Quality standards (measurable criteria)
- Output format (specific structure)
- Edge cases (how to handle exceptions)

✅ **DO:**
**Best practices:**

- Write in second person ("You are...", "You will...")
- Be specific about responsibilities
- Provide step-by-step process
- Define output format
- Include quality standards
- Address edge cases
- Be specific, not vague
- Keep under 10,000 characters
- Include concrete steps, not generic instructions

❌ **DON'T:**

- Write in first person ("I am...", "I will...")
- Be vague or generic
- Omit process steps
- Leave output format undefined
- Skip quality guidance
- Ignore error cases
For detailed templates and patterns (Analysis, Generation, Validation, Orchestration agents), see `references/system-prompt-design.md`.

## Creating Agents

Expand Down Expand Up @@ -441,6 +410,16 @@ plugin-name/

All `.md` files in `agents/` are auto-discovered.

### Portable Paths

When referencing files within your plugin (scripts, references, etc.) from agent system prompts, use `${CLAUDE_PLUGIN_ROOT}` for portable paths:

```markdown
Run the validation script at `${CLAUDE_PLUGIN_ROOT}/scripts/validate.sh`
```

This variable resolves to the plugin's installation directory at runtime, ensuring paths work regardless of where the plugin is installed.

### Namespacing

Agents are namespaced automatically:
Expand Down Expand Up @@ -489,26 +468,6 @@ Ensure system prompt is complete:

## Quick Reference

### Minimal Agent

```markdown
---
name: simple-agent
description: Use this agent when... Examples: <example>...</example>
model: inherit
color: blue
---

You are an agent that [does X].

Process:

1. [Step 1]
2. [Step 2]

Output: [What to provide]
```

### Frontmatter Fields Summary

| Field | Required | Format | Example |
Expand Down Expand Up @@ -567,19 +526,3 @@ Development tools in `scripts/`:
- **`create-agent-skeleton.sh`** - Generate new agent file from template
- **`validate-agent.sh`** - Validate agent file structure
- **`test-agent-trigger.sh`** - Test if agent triggers correctly

## Implementation Workflow

To create an agent for a plugin:

1. Define agent purpose and triggering conditions
2. Choose creation method (AI-assisted or manual)
3. Create agent file using skeleton: `./skills/agent-development/scripts/create-agent-skeleton.sh agent-name agents/`
4. Write frontmatter with all required fields
5. Write system prompt following best practices
6. Include 2-4 triggering examples in description
7. Validate with `./skills/agent-development/scripts/validate-agent.sh agents/your-agent.md`
8. Test triggering with real scenarios
9. Document agent in plugin README

Focus on clear triggering conditions and comprehensive system prompts for autonomous operation.
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ name: [identifier from JSON]
description: [whenToUse from JSON]
model: inherit
color: [choose: blue/cyan/green/yellow/magenta/red]
tools: ["Read", "Write", "Grep"] # Optional: restrict tools
tools: Read, Write, Grep # Optional: restrict tools
---

[systemPrompt from JSON]
Expand Down Expand Up @@ -101,7 +101,7 @@ Explicit review request triggers the agent.

model: inherit
color: blue
tools: ["Read", "Grep", "Glob"]
tools: Read, Grep, Glob
---

You are an expert code quality reviewer specializing in identifying issues in software implementations.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ assistant: "I'll use the code-reviewer agent to validate the changes."

model: inherit
color: blue
tools: ["Read", "Grep", "Glob"]
tools: Read, Grep, Glob
---

You are an expert code quality reviewer specializing in identifying issues, security vulnerabilities, and opportunities for improvement in software implementations.
Expand Down Expand Up @@ -152,7 +152,7 @@ Direct test generation request triggers the agent.

model: inherit
color: green
tools: ["Read", "Write", "Grep", "Bash"]
tools: Read, Write, Grep, Bash
---

You are an expert test engineer specializing in creating comprehensive, maintainable unit tests that ensure code correctness and reliability.
Expand Down Expand Up @@ -214,7 +214,6 @@ describe('[module name]', () => {
// More tests...
})
```
````

**Edge Cases:**

Expand All @@ -223,7 +222,6 @@ describe('[module name]', () => {
- Unclear behavior: Add tests for observable behavior, note uncertainties
- Complex mocking: Prefer integration tests or minimal mocking
- Untestable code: Suggest refactoring for testability

````

## Example 3: Documentation Generator
Expand Down Expand Up @@ -256,18 +254,20 @@ Explicit documentation request triggers the agent.

model: inherit
color: cyan
tools: ["Read", "Write", "Grep", "Glob"]
tools: Read, Write, Grep, Glob
---

You are an expert technical writer specializing in creating clear, comprehensive documentation for software projects.

**Your Core Responsibilities:**

1. Generate accurate, clear documentation from code
2. Follow project documentation standards
3. Include examples and usage patterns
4. Ensure completeness and correctness

**Documentation Generation Process:**

1. **Analyze Code**: Read implementation to understand:
- Public interfaces and APIs
- Parameters and return values
Expand All @@ -288,6 +288,7 @@ You are an expert technical writer specializing in creating clear, comprehensive
5. **Validate**: Ensure accuracy and completeness

**Quality Standards:**

- Documentation matches actual code behavior
- Examples are runnable and correct
- All public APIs documented
Expand All @@ -296,6 +297,7 @@ You are an expert technical writer specializing in creating clear, comprehensive

**Output Format:**
Create documentation in project's standard format:

- Function/method signatures
- Description of behavior
- Parameters with types and descriptions
Expand All @@ -305,11 +307,12 @@ Create documentation in project's standard format:
- Notes or warnings if applicable

**Edge Cases:**

- Private/internal code: Document only if requested
- Complex APIs: Break into sections, provide multiple examples
- Deprecated code: Mark as deprecated with migration guide
- Unclear behavior: Document observable behavior, note assumptions
````
```

## Example 4: Security Analyzer

Expand Down Expand Up @@ -341,7 +344,7 @@ Explicit security review request triggers the agent.

model: inherit
color: red
tools: ["Read", "Grep", "Glob"]
tools: Read, Grep, Glob
---

You are an expert security analyst specializing in identifying vulnerabilities and security issues in software implementations.
Expand Down Expand Up @@ -429,9 +432,9 @@ Take these templates and customize:

Restrict or expand based on agent needs:

- **Read-only agents**: `["Read", "Grep", "Glob"]`
- **Generator agents**: `["Read", "Write", "Grep"]`
- **Executor agents**: `["Read", "Write", "Bash", "Grep"]`
- **Read-only agents**: `Read, Grep, Glob`
- **Generator agents**: `Read, Write, Grep`
- **Executor agents**: `Read, Write, Bash, Grep`
- **Full access**: Omit tools field

### Customize Colors
Expand Down
Loading
Loading