Plugin Integration Checker
This skill automatically validates that new or modified skills within a plugin correctly follow the three-layer architecture (Command → Agent → Skill), ensuring proper integration with Claude Code's plugin system.
How to Install
git clone --depth 1 https://github.com/libukai/awesome-agent-skills.git && cp awesome-agent-skills/plugins/agent-skills-toolkit/1.0.0/skills/plugin-integration-checker ~/.claude/skills/skill.md -rPlugin Integration Checker
After creating or modifying a skill, this skill checks whether it's part of a Claude Code plugin and verifies proper integration with commands and agents following the three-layer architecture pattern.
When to Use
Use this skill automatically after:
- Creating a new skill that's part of a plugin
- Modifying an existing skill in a plugin
- User asks to check plugin integration
- Skill path contains .claude-plugins/ or plugins/
Three-Layer Architecture
A well-designed plugin follows this pattern:
Command (Orchestration) → Agent (Execution) → Skill (Knowledge)
Layer Responsibilities
| Layer | Responsibility | Contains |
|---|---|---|
| Command | Workflow orchestration | Prerequisites checks, user interaction, agent delegation |
| Agent | Autonomous execution | Task planning, API calls, iteration, error handling |
| Skill | Knowledge documentation | API reference, best practices, examples, troubleshooting |
Integration Check Process
Step 1: Detect Plugin Context
# Check if skill is in a plugin directory
SKILL_PATH="$1" # Path to the skill directory
# Look for plugin.json in parent directories
CURRENT_DIR=$(dirname "$SKILL_PATH")
PLUGIN_ROOT=""
while [ "$CURRENT_DIR" != "/" ]; do
if [ -f "$CURRENT_DIR/.claude-plugin/plugin.json" ]; then
PLUGIN_ROOT="$CURRENT_DIR"
break
fi
CURRENT_DIR=$(dirname "$CURRENT_DIR")
done
if [ -z "$PLUGIN_ROOT" ]; then
echo "✅ This skill is standalone (not part of a plugin)"
exit 0
fi
echo "🔍 Found plugin at: $PLUGIN_ROOT"
Step 2: Read Plugin Metadata
# Extract plugin info
PLUGIN_NAME=$(jq -r '.name' "$PLUGIN_ROOT/.claude-plugin/plugin.json")
PLUGIN_VERSION=$(jq -r '.version' "$PLUGIN_ROOT/.claude-plugin/plugin.json")
echo "Plugin: $PLUGIN_NAME v$PLUGIN_VERSION"
Step 3: Check for Related Commands
Look for commands that might use this skill:
# List all commands in the plugin
COMMANDS_DIR="$PLUGIN_ROOT/commands"
if [ -d "$COMMANDS_DIR" ]; then
echo "📋 Checking commands..."
# Get skill name from directory
SKILL_NAME=$(basename "$SKILL_PATH")
# Search for references to this skill in commands
grep -r "$SKILL_NAME" "$COMMANDS_DIR" --include="*.md" -l
fi
Step 4: Check for Related Agents
Look for agents that might reference this skill:
# List all agents in the plugin
AGENTS_DIR="$PLUGIN_ROOT/agents"
if [ -d "$AGENTS_DIR" ]; then
echo "🤖 Checking agents..."
# Search for references to this skill in agents
grep -r "$SKILL_NAME" "$AGENTS_DIR" --include="*.md" -l
fi
Step 5: Analyze Integration Quality
For each command/agent that references this skill, check:
Command Integration Checklist
Read the command file and verify:
- [ ] Prerequisites Check: Does it check if required services/tools are running?
- [ ] User Interaction: Does it use AskUserQuestion for gathering requirements?
- [ ] Agent Delegation: Does it delegate complex work to an agent?
- [ ] Skill Reference: Does it mention the skill in the implementation section?
- [ ] Result Verification: Does it verify the final result (screenshot, output, etc.)?
Good Example:
## Implementation
### Step 1: Check Prerequisites
curl -s http://localhost:7236/api/doc | jq .
### Step 2: Gather Requirements
Use AskUserQuestion to collect user preferences.
### Step 3: Delegate to Agent
Agent({
subagent_type: "plugin-name:agent-name",
prompt: "Task description with context"
})
### Step 4: Verify Results
Take screenshot and display to user.
Bad Example:
## Implementation
Use the skill to do the task.
Agent Integration Checklist
Read the agent file and verify:
- [ ] Clear Capabilities: Does it define what it can do?
- [ ] Skill Reference: Does it explicitly reference the skill for API/implementation details?
- [ ] Workflow Steps: Does it outline the execution workflow?
- [ ] Error Handling: Does it mention how to handle errors?
- [ ] Iteration: Does it describe how to verify and refine results?
Good Example:
## Your Workflow
1. Understand requirements
2. Check prerequisites
3. Plan approach (reference Skill for best practices)
4. Execute task (reference Skill for API details)
5. Verify results
6. Iterate if needed
Reference the {skill-name} skill for:
- API endpoints and usage
- Best practices
- Examples and patterns
Bad Example:
## Your Workflow
Create the output based on user requirements.
Skill Quality Checklist
Verify the skill itself follows best practices:
- [ ] Clear Description: Triggers, use cases, and contexts (under 1024 chars)
- [ ] API Documentation: Complete endpoint reference with examples
- [ ] Best Practices: Guidelines for using the API/tool effectively
- [ ] Examples: Working code examples
- [ ] Troubleshooting: Common issues and solutions
- [ ] **
Details
| Category | AI/ML → ml |
| Source | libukai/awesome-agent-skills |
| SKILL.md | View on GitHub → |
| Repo Stars | ★ 4.8K |
| Est. per Skill | 594 (shared across 8 skills from this repo) |
| Difficulty | Intermediate |
| Risk Level | N/A |
Related Skills
Works Well With
Skills from the same repository — often designed to work together