skills/nav-skill-creator/SKILL.md
Analyze codebase patterns and create custom skills for repetitive workflows. Use when project needs automation or pattern enforcement. Auto-invoke when user says "create a skill for...", "automate this workflow", or "we keep doing X manually".
npx skillsauth add alekspetrov/navigator nav-skill-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.
Create project-specific skills by analyzing codebase patterns and automating repetitive workflows.
Auto-invoke when user mentions:
Ask clarifying questions:
Example dialogue:
User: "Create a skill for adding React components"
Assistant: "I'll analyze your codebase to understand React component patterns.
- What directory are components in?
- Do you use TypeScript or JavaScript?
- Do you want tests generated automatically?
- Are there style files (CSS/SCSS) per component?"
Use Task agent to explore (saves 60-80% tokens):
Use Task agent with subagent_type=Explore:
"Find existing [pattern type] in codebase:
- Locate all [files matching pattern]
- Identify common structure
- Extract best practices
- Find configuration files
- Return summary of findings"
What to look for:
Example for React components:
Task agent finds:
- Components in src/components/
- PascalCase naming (UserProfile.tsx)
- Co-located tests (UserProfile.test.tsx)
- Props interfaces defined above component
- Export default at bottom
Determine skill metadata:
name: [project]-[pattern-type]
description: [When to auto-invoke + what it does]
allowed-tools: [Read, Write, Edit, Grep, Glob, Bash, Task]
version: 1.0.0
Plan directory structure:
skills/[skill-name]/
├── SKILL.md # Main instructions
├── functions/ # Python helper scripts
│ └── [generator].py
├── examples/ # Reference implementations
│ └── [example].[ext]
└── templates/ # Output format templates
└── [template].[ext]
Design predefined functions:
Example functions for frontend-component skill:
component_generator.py - Generate component boilerplatetest_generator.py - Generate test filestyle_generator.py - Generate style filename_validator.py - Validate component naming4.1 Create SKILL.md
---
name: [skill-name]
description: [Auto-invocation triggers + purpose]
allowed-tools: [List of tools]
version: 1.0.0
---
# [Skill Title]
[Brief description of what this skill does]
## When to Invoke
Auto-invoke when user says:
- "[trigger phrase 1]"
- "[trigger phrase 2]"
- "[trigger phrase 3]"
## What This Does
1. [Step 1 overview]
2. [Step 2 overview]
3. [Step 3 overview]
## Execution Steps
### Step 1: [Step Name]
[Detailed instructions for this step]
**Use predefined function**: `functions/[function-name].py`
4.2 Create Predefined Functions
# functions/[generator].py
def generate_[output](name, config):
"""
Generate [output type] based on project patterns.
Args:
name: [Description]
config: [Description]
Returns:
[output]: [Description]
"""
# Implementation based on codebase analysis
pass
4.3 Create Examples
examples/
└── [reference-implementation].[ext]
- Real example from codebase (best practice)
- Shows expected structure
- Demonstrates conventions
4.4 Create Templates
templates/
└── [output-template].[ext]
- Skeleton structure with placeholders
- ${VAR_NAME} for substitution
- Comments explaining sections
5.1 Verify skill loads:
# In project root
grep -r "name: [skill-name]" skills/
5.2 Test auto-invocation:
In Claude Code conversation:
"[Use one of the auto-invoke trigger phrases]"
Expected: Skill should be detected and loaded
5.3 Test execution:
5.4 Iterate if needed:
Update project documentation:
#### [Skill Name]
**Auto-invoke**: "[trigger phrase]"
**Purpose**: [What it does]
**Generates**: [Output type]
- **[skill-name]**: [Brief description]
### [Skill Name]
**Created**: [Date]
**Pattern**: [What pattern it enforces]
**Functions**: [List of predefined functions]
Register in plugin.json (if applicable):
{
"skills": [
{
"name": "[skill-name]",
"path": "skills/[skill-name]/SKILL.md"
}
]
}
User: "Create a skill for adding REST API endpoints"
Execution:
Clarify:
Analyze (via Task agent):
Find existing API endpoints:
- Routes in api/routes/
- Controllers in api/controllers/
- Middleware in api/middleware/
- Tests in tests/api/
Design:
name: backend-api-endpoint
description: Add new REST API endpoint following project conventions. Use when user says "add endpoint", "create API", or "new route".
allowed-tools: Read, Write, Edit, Grep, Glob, Bash
Generate:
skills/backend-api-endpoint/
├── SKILL.md
├── functions/
│ ├── endpoint_generator.py
│ └── route_validator.py
├── examples/
│ └── user-endpoint.ts
└── templates/
├── route-template.ts
└── test-template.spec.ts
Test:
User: "Add a POST /posts endpoint"
Skill: Auto-invoked, generates route + controller + test
Verify: Files follow project conventions
Document: Update CLAUDE.md, README.md, plugin-patterns.md
User: "Automate creating new React components"
Execution:
Clarify:
Analyze (via Task agent):
Find React components:
- Components in src/components/
- PascalCase naming
- TypeScript (.tsx)
- CSS modules (.module.css)
- Tests with RTL
Design:
name: frontend-component
description: Create new React component with TypeScript, styles, and tests. Use when user says "create component", "add component", or "new React component".
allowed-tools: Read, Write, Edit, Grep, Glob, Bash
Generate:
skills/frontend-component/
├── SKILL.md
├── functions/
│ ├── component_generator.py
│ ├── test_generator.py
│ └── style_generator.py
├── examples/
│ ├── Button.tsx
│ └── Button.test.tsx
└── templates/
├── component-template.tsx
├── test-template.test.tsx
└── style-template.module.css
Test:
User: "Create a UserProfile component"
Skill: Auto-invoked, generates component + test + styles
Verify: Props interface, exports, naming correct
Document: Update project docs
After generating skill, show summary:
✅ Skill Created: [skill-name]
Structure:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📁 skills/[skill-name]/
├── SKILL.md
├── functions/
│ └── [N functions created]
├── examples/
│ └── [N examples added]
└── templates/
└── [N templates created]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Auto-Invocation Triggers:
- "[trigger 1]"
- "[trigger 2]"
- "[trigger 3]"
Next Steps:
1. Test the skill: "[example trigger phrase]"
2. Iterate if needed
3. Documentation updated
Try it now: "[example usage]"
Problem: Skill created but doesn't trigger automatically
Solutions:
plugin.json includes skill registrationProblem: Predefined functions throw errors
Solutions:
Problem: Generated code doesn't match project conventions
Solutions:
Problem: Skill tries to do too much
Solutions:
This skill succeeds when:
The skill-creator is Navigator's self-improving engine - it learns your patterns and automates them 🔄
tools
Sync project CLAUDE.md to the installed Navigator version, preserving customizations. Use when user says "sync CLAUDE.md", "update CLAUDE.md", or when detecting outdated Navigator configuration.
tools
Automates design review, token extraction, component mapping, and implementation planning. Reduces design handoff from 6-10 hours to 5 minutes via direct Figma MCP integration. Auto-invoke when user mentions design review, Figma mockup, or design handoff.
tools
Automates Navigator plugin updates. Detects current version, updates plugin, verifies installation, updates project CLAUDE.md, and validates new features. Auto-invoke when user mentions upgrading Navigator or getting new features.
documentation
Manage Navigator task documentation - create implementation plans, archive completed tasks, update task index. Use when user starts new feature, completes work, or says "document this feature".