Use when setting up project-specific skills via /cc:setup-project or when user requests custom skills for their codebase - analyzes project to create specialized skills that capture architecture knowledge, coding conventions, testing patterns, and deployment workflows
Scanned 9/8/2026
Install to Claude Code
npx -y skills add mattnigh/skills_collection --skill collection --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Collection?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/mattnigh-collection-1b04637a)More formats (shields.io, HTML) on the badges page.
---
name: project-skill-creator
description: Use when setting up project-specific skills via /cc:setup-project or when user requests custom skills for their codebase - analyzes project to create specialized skills that capture architecture knowledge, coding conventions, testing patterns, and deployment workflows
---
# Project Skill Creator
## Overview
**Creating project-specific skills captures institutional knowledge and patterns that generic skills cannot provide.**
This skill analyzes your project and creates specialized skills (e.g., `project-architecture`, `project-conventions`, `project-testing`) that document project-specific patterns, standards, and workflows that all agents and future developers should follow.
**Core principle:** Project-specific skills transform tribal knowledge into discoverable documentation.
**REQUIRED BACKGROUND:** Use `writing-skills` for skill creation methodology. This skill applies those principles to project-specific content.
## When to Use
Use this skill when:
- User runs `/cc:setup-project` command
- User requests "create custom skills for my project"
- Project has unique architecture or patterns to document
- Team needs standardized conventions
- Onboarding new developers or agents
Do NOT use for:
- Generic patterns already covered by existing skills
- One-off projects without reusable patterns
- Projects still in early prototyping phase
## Project-Specific Skills to Create
### 1. project-architecture
**Purpose:** Document and explain the system architecture
**When to create:** Always (if project has clear architecture)
**Content:**
- High-level architecture diagram/description
- Component responsibilities
- Data flow and interactions
- Key design decisions and trade-offs
- How to extend the architecture
**Example trigger:** "Use when implementing features, adding components, or understanding system design - documents THIS project's architecture, component responsibilities, and design patterns"
### 2. project-conventions
**Purpose:** Capture code style and naming conventions
**When to create:** If project has specific conventions beyond standard linters
**Content:**
- Naming conventions (files, classes, functions)
- Code organization patterns
- Import/export conventions
- Comment and documentation standards
- File/directory structure rules
**Example trigger:** "Use when writing new code in this project - enforces naming conventions, code organization, and style patterns specific to this codebase"
### 3. project-testing
**Purpose:** Document testing approach and patterns
**When to create:** If project has specific testing patterns
**Content:**
- Testing philosophy and requirements
- Test organization (unit/integration/e2e)
- Fixture patterns and test utilities
- Mocking strategies
- Coverage requirements
- Example test patterns from project
**Example trigger:** "Use when writing tests - follows THIS project's testing patterns, fixture conventions, and test organization structure"
### 4. project-deployment
**Purpose:** Document build, release, and deployment process
**When to create:** If project has specific deployment workflow
**Content:**
- Build process and commands
- Environment setup
- Deployment steps
- Release checklist
- CI/CD pipeline explanation
- Rollback procedures
**Example trigger:** "Use when deploying, releasing, or setting up environments - documents THIS project's build process, deployment steps, and release workflow"
### 5. project-domain
**Purpose:** Capture domain-specific knowledge
**When to create:** If project has unique business domain
**Content:**
- Domain terminology and glossary
- Business rules and constraints
- Domain models and relationships
- Common workflows and use cases
- Domain-specific patterns
**Example trigger:** "Use when implementing business logic or understanding domain concepts - documents THIS project's business domain, terminology, and domain-specific rules"
## Project Analysis Workflow
### Phase 1: Project Understanding
**1. Architecture Discovery**
Analyze project structure:
```bash
# Get overview of directory structure
ls -R | head -100
# Look for architecture documentation
find . -name "README*" -o -name "ARCHITECTURE*" -o -name "DESIGN*"
# Analyze directory organization
tree -d -L 3
```
Identify architectural patterns:
- Monolith vs microservices
- Layered architecture (presentation/business/data)
- Clean architecture (domain/application/infrastructure)
- MVC, MVVM, or other patterns
- Frontend architecture (components, state management)
**2. Convention Discovery**
Sample 10-15 files to find patterns:
- File naming: kebab-case, snake_case, PascalCase?
- Class naming conventions
- Function naming patterns
- Import organization
- Comment styles
**3. Testing Pattern Discovery**
Examine test files:
```bash
# Find test files
find . -name "*test*" -o -name "*spec*" | head -20
# Read sample tests to understand patterns
```
Identify:
- Test organization structure
- Fixture patterns
- Mocking approach
- Assertion style
- Test naming conventions
**4. Deployment Process Discovery**
Check for:
- CI/CD configuration (`.github/workflows`, `.gitlab-ci.yml`)
- Build scripts (`package.json scripts`, `Makefile`, `justfile`)
- Docker setup (`Dockerfile`, `docker-compose.yml`)
- Deployment documentation
### Phase 2: Interactive Planning
**CRITICAL: Present findings and proposed skills to user.**
Create summary:
```markdown
## Project Analysis Summary
**Architecture Pattern:** {discovered pattern}
**Key Components:**
- {component 1} - {purpose}
- {component 2} - {purpose}
**Conventions Found:**
- File naming: {pattern}
- Class naming: {pattern}
- Import organization: {pattern}
**Testing Approach:**
- Test organization: {structure}
- Fixture patterns: {description}
- Coverage: {requirements}
**Deployment:**
- Build process: {description}
- CI/CD: {platform and approach}
## Recommended Skills
I recommend creating these project-specific skills:
1. **project-architecture** - Document {architecture pattern} and component responsibilities
2. **project-conventions** - Capture {naming} and {organization} conventions
3. **project-testing** - Document {testing approach} and fixture patterns
4. **project-deployment** - Document {build process} and deployment steps
Should I create these skills?
```
Get user approval before proceeding.
### Phase 3: Skill Generation
For each approved skill, follow `writing-skills` methodology:
**1. Create Skill Directory**
```bash
mkdir -p .claude/skills/project-{skill-name}
```
**2. Generate SKILL.md**
Use template:
```yaml
---
name: project-{skill-name}
description: Use when {specific triggers} - {what this skill provides specific to THIS project}
---
# Project {Skill Name}
## Overview
{One paragraph explaining what this skill provides for THIS project}
**Core principle:** {Key principle from project}
## {Main Content Sections}
{Content specific to this skill type - see templates below}
## When NOT to Use
- {Situations where this skill doesn't apply}
- {Edge cases or exceptions}
## Examples from This Project
{2-3 concrete examples from actual project code}
## Common Mistakes
{Project-specific anti-patterns to avoid}
```
**3. Populate with Project-Specific Content**
**For project-architecture:**
```markdown
## Architecture Overview
{High-level description}
**Pattern:** {Architecture pattern name}
## Component Responsibilities
### {Component 1}
**Location:** `{path}`
**Purpose:** {what it does}
**Dependencies:** {what it depends on}
### {Component 2}
{...}
## Data Flow
{How data moves through the system}
## Key Design Decisions
### Decision: {Decision name}
**Rationale:** {why this decision was made}
**Trade-offs:** {what we gave up}
**Alternatives considered:** {what else was considered}
## Extending the Architecture
When adding new features:
1. {Step 1 with specific guidance}
2. {Step 2}
{Include actual examples from project}
```
**For project-conventions:**
```markdown
## File Naming
**Pattern:** {discovered pattern}
Examples from this project:
- {actual file 1}
- {actual file 2}
## Class/Component Naming
**Pattern:** {discovered pattern}
Examples:
```{language}
{actual code example 1}
{actual code example 2}
```
## Import Organization
**Pattern:** {discovered pattern}
Standard import order:
```{language}
{actual example from project}
```
## Code Organization
**Pattern:** One {unit} per file
Example structure:
```
{actual directory tree from project}
```
## Documentation Standards
{How comments and docs should be written}
Example:
```{language}
{actual documented code from project}
```
```
**For project-testing:**
```markdown
## Testing Philosophy
{What project values in tests}
## Test Organization
```
{actual test directory structure}
```
**Unit tests:** `{location}` - {what they test}
**Integration tests:** `{location}` - {what they test}
**E2E tests:** `{location}` - {what they test}
## Fixture Patterns
{Describe how project uses fixtures}
Example from this project:
```{language}
{actual fixture code}
```
## Test Naming
**Pattern:** {discovered pattern}
Examples:
- {actual test name 1}
- {actual test name 2}
## Mocking Strategy
{How project handles mocking}
Example:
```{language}
{actual mock code}
```
## Coverage Requirements
{Project coverage standards}
## Running Tests
```bash
{actual commands from project}
```
```
**For project-deployment:**
```markdown
## Build Process
**Command:** `{actual command}`
**Steps:**
1. {step 1 from actual build}
2. {step 2}
## Environment Setup
{How to configure environments}
## Deployment Steps
### Development
```bash
{actual deployment commands}
```
### Production
```bash
{actual production deployment}
```
## CI/CD Pipeline
{Describe actual CI/CD setup}
**Stages:**
1. {stage 1} - {what happens}
2. {stage 2} - {what happens}
## Release Checklist
- [ ] {actual checklist item 1}
- [ ] {actual checklist item 2}
## Rollback Procedure
{How to rollback in this project}
```
## Implementation Steps
**Use TodoWrite to create todos for each step:**
1. [ ] Analyze project architecture and structure
2. [ ] Discover naming and code conventions
3. [ ] Examine testing patterns and approach
4. [ ] Review deployment and build process
5. [ ] Identify domain-specific knowledge to capture
6. [ ] Create analysis summary
7. [ ] Present findings and proposed skills to user
8. [ ] Get user approval for skill creation
9. [ ] For each approved skill:
- [ ] Create skill directory
- [ ] Generate SKILL.md with frontmatter
- [ ] Populate with project-specific examples
- [ ] Include actual code from project
10. [ ] Confirm skills created with user
## Examples
### Example 1: FastAPI Project
**Analysis:**
- Clean Architecture (domain/application/infrastructure)
- Repository pattern for data access
- Dependency injection via FastAPI
- pytest with async support
**Skills Created:**
1. `project-architecture` - Documents Clean Architecture layers, repository pattern usage
2. `project-testing` - Documents pytest async patterns, fixture conventions
3. `project-deployment` - Documents Docker build, migrations, deployment to AWS
### Example 2: React Project
**Analysis:**
- Component-based architecture
- Custom hooks in `src/hooks/`
- Compound component patterns
- Vitest for testing
**Skills Created:**
1. `project-architecture` - Documents component structure, state management approach
2. `project-conventions` - Documents component naming, hook conventions, file organization
3. `project-testing` - Documents Vitest setup, testing-library patterns
## Quality Checklist
Before considering skills complete:
- [ ] All skills include actual code examples from project
- [ ] Frontmatter description includes specific triggers
- [ ] Content is project-specific (not generic advice)
- [ ] File paths and commands are exact (not placeholders)
- [ ] Examples are real code from the project
- [ ] "When NOT to Use" section included
- [ ] User has approved all skills
- [ ] Skills saved to `.claude/skills/project-{name}/`
## Common Mistakes
### ❌ Generic Content
Writing generic advice instead of project-specific patterns
**Fix:** Include actual code examples and exact file paths
### ❌ Placeholder Examples
Using generic placeholders like `{your-component}.tsx`
**Fix:** Use actual filenames and code from project
### ❌ Missing Context
Not explaining WHY patterns exist
**Fix:** Document decisions, trade-offs, and rationale
### ❌ Too Verbose
Creating encyclopedic documentation
**Fix:** Keep skills focused and scannable (< 500 lines)
### ❌ Skipping Approval
Generating skills without user review
**Fix:** Always present findings and get approval
## Integration with writing-skills
Follow these `writing-skills` principles:
- **Test-driven:** Verify skills help agents solve real tasks
- **Concise:** Target < 500 words for frequently-loaded skills
- **Examples over explanation:** Show actual project code
- **Cross-reference:** Reference other skills by name
- **Claude Search Optimization:** Rich description with triggers
## Skill Naming Convention
**CRITICAL:** Use `project-{name}` format:
- ✅ `project-architecture`
- ✅ `project-conventions`
- ✅ `project-testing`
- ✅ `project-deployment`
- ✅ `project-domain`
- ❌ `architecture-guide` (not discoverable as project-specific)
- ❌ `my-testing-patterns` (unclear scope)
The `project-` prefix ensures:
- Clear distinction from generic skills
- Consistent discovery pattern
- No naming conflicts
## Updating Skills
As project evolves, skills need updates:
**Triggers for updates:**
- Architecture changes
- New conventions adopted
- Testing approach evolves
- Deployment process changes
**Update workflow:**
1. Identify what changed
2. Update skill content
3. Add changelog note in skill
4. Test with real scenarios
## Storage Location
**All project-specific skills:** `.claude/skills/project-{name}/SKILL.md`
**Never store in:**
- `cc/skills/` (that's for generic CrispyClaude skills)
- Project source directories (not discoverable)
- Documentation folder (wrong tool for the job)
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!