Transform extracted engineer expertise into an actionable skill with progressive disclosure, allowing agents to find and apply relevant patterns for specific tasks.
Transforms extracted engineer expertise into organized, queryable skills with progressive disclosure. Claude uses this to convert engineer profiles into task-specific guidance systems that provide relevant patterns, examples, and best practices only when needed for specific coding tasks.
/plugin marketplace add jamesrochabrun/skills/plugin install all-skills@skills-marketplaceThis skill inherits all available tools. When active, it can use any tool Claude has access to.
scripts/create_expert_skill.shTransform extracted engineer profiles into ready-to-use skills with progressive disclosure, enabling AI agents to efficiently find and apply the right expertise for any coding task.
Takes the output from engineer-expertise-extractor and creates a structured, queryable skill that:
./extract_engineer.sh senior_dev
# Output: engineer_profiles/senior_dev/
./create_expert_skill.sh senior_dev
# Output: expert-skills/senior-dev-mentor/
Result: A ready-to-use skill that agents can query for specific guidance.
Without progressive disclosure:
With progressive disclosure:
When you create a skill from an engineer profile, you get:
expert-skills/
└── [engineer-name]-mentor/
├── SKILL.md (skill documentation)
├── query_expertise.sh (interactive query tool)
├── expertise/
│ ├── by_task/
│ │ ├── authentication.md
│ │ ├── api_design.md
│ │ ├── database_design.md
│ │ ├── error_handling.md
│ │ └── testing.md
│ ├── by_language/
│ │ ├── typescript.md
│ │ ├── python.md
│ │ └── go.md
│ ├── by_pattern/
│ │ ├── dependency_injection.md
│ │ ├── repository_pattern.md
│ │ └── factory_pattern.md
│ └── quick_reference/
│ ├── coding_style.md
│ ├── naming_conventions.md
│ └── best_practices.md
└── examples/
├── authentication_service.ts
├── api_controller.ts
└── test_example.spec.ts
Agent asks: "How would they implement user authentication?"
Skill provides:
by_task/authentication.mdNOT provided (yet):
Agent asks: "Show me their TypeScript coding style"
Skill provides:
Agent asks: "How do they implement dependency injection?"
Skill provides:
"Using the skill expert-skills/senior-dev-mentor/, show me how to
implement authentication"
Skill responds with:
"Using expert-skills/senior-dev-mentor/, write a TypeScript service
following their style"
Skill provides:
"Using expert-skills/senior-dev-mentor/, implement the repository
pattern as they would"
Skill provides:
Expertise organized by common development tasks:
Separate docs for each language they use:
Design patterns they commonly use:
Fast access to essentials:
Script that helps find expertise:
./query_expertise.sh
What are you working on?
1) Authentication
2) API Design
3) Database
4) Testing
5) Custom query
Select: 1
=== Authentication Expertise ===
[Shows relevant patterns, examples, best practices]
Engineer profile from extractor:
engineer_profiles/senior_dev/
├── coding_style/
├── patterns/
├── best_practices/
├── architecture/
├── code_review/
└── examples/
Skill with progressive disclosure:
expert-skills/senior-dev-mentor/
├── SKILL.md
├── query_expertise.sh
├── expertise/
│ ├── by_task/
│ ├── by_language/
│ ├── by_pattern/
│ └── quick_reference/
└── examples/
File: expertise/by_task/authentication.md
# Authentication - Senior Dev's Approach
## Overview
How senior_dev implements authentication based on 15 PRs analyzed.
## Preferred Approach
- JWT-based authentication
- Refresh token rotation
- HttpOnly cookies for web
- Token in headers for mobile/API
## Implementation Pattern
### Service Structure
[Code example from their PR #1234]
### Token Generation
[Code example from their PR #5678]
### Token Validation
[Code example from their PR #9012]
## Testing Approach
- Unit tests for token generation
- Integration tests for auth flow
- Security tests for token validation
[Test examples from their code]
## Security Considerations
From their code reviews:
- Always validate token signature
- Check expiration
- Implement rate limiting
- Use secure random for secrets
## Common Pitfalls They Avoid
- Storing tokens in localStorage (XSS risk)
- Not rotating refresh tokens
- Weak secret keys
- Missing token expiration
## Related Patterns
- Error handling for auth failures
- Middleware pattern for auth checks
- Repository pattern for user lookup
## Examples
See: examples/authentication_service.ts
Problem: AI generates code that doesn't match team style
Solution:
"Using expert-skills/senior-dev-mentor/, write a user service"
Result: Code matching senior dev's exact style and patterns
Problem: How would senior dev approach this specific problem?
Solution:
"Using expert-skills/tech-lead-mentor/, how do I handle rate limiting?"
Result: Their specific approach, examples, and reasoning
Problem: Learn what experienced engineer looks for
Solution:
"Using expert-skills/architect-mentor/, review this code"
Result: Review following their standards and priorities
Problem: New engineer needs to learn team conventions
Solution: Give them access to expert-skills
Result: Learn from real examples, specific to their tasks
./query_expertise.sh
> Working on: Authentication
> Language: TypeScript
Output:
=== Authentication in TypeScript ===
Preferred approach: JWT with refresh tokens
[Shows specific auth pattern]
[Provides TS code example]
[Testing strategy]
[Security checklist]
Related: error_handling.md, api_design.md
./query_expertise.sh
> Working on: Database design
> Database: PostgreSQL
Output:
=== Database Design - PostgreSQL ===
Schema design approach:
- Normalized tables
- Foreign keys enforced
- Indexes on lookups
- Migrations for changes
[Shows migration example]
[Query optimization patterns]
[Testing approach]
./query_expertise.sh
> Working on: Error handling
> Language: Python
Output:
=== Error Handling in Python ===
Pattern: Custom exception classes + global handler
[Shows exception hierarchy]
[Handler implementation]
[Logging approach]
[User-facing messages]
cd engineer-skill-creator
./scripts/create_expert_skill.sh [engineer-username]
./scripts/create_expert_skill.sh [engineer-username] --focus api,testing
Limits skill to specific focus areas.
Automatic categorization:
Query system:
Documentation:
"Load the expert-skills/senior-dev-mentor/ skill and help me
implement this feature following their approach"
"Using expert-skills/tech-lead-mentor/, review this PR for:
- Code style compliance
- Pattern usage
- Best practices
- Security considerations"
"Using expert-skills/architect-mentor/, how would they design
this microservice?"
When engineer profile is updated:
./scripts/update_expert_skill.sh senior-dev
Re-generates skill with new expertise.
Each skill generation includes:
DO:
DON'T:
DO:
DON'T:
What Skills Can Do:
What Skills Cannot Do:
The Engineer Skill Creator transforms extracted expertise into actionable, queryable skills:
Input: Engineer profile (from extractor) Process: Categorize, organize, create query system Output: Progressive disclosure skill
Benefits:
Use with agents:
"Using expert-skills/[engineer]-mentor/, [task description]"
The complete workflow:
extract_engineer.sh usernamecreate_expert_skill.sh username"Progressive disclosure: Show only what's needed, when it's needed."
Use when working with Payload CMS projects (payload.config.ts, collections, fields, hooks, access control, Payload API). Use when debugging validation errors, security issues, relationship queries, transactions, or hook behavior.