engineer-expertise-extractor
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseEngineer Expertise Extractor
工程师专业技能提取器
Extract and document an engineer's coding expertise by analyzing their GitHub contributions, creating a structured knowledge base that captures their coding style, patterns, best practices, and architectural decisions.
通过分析工程师的GitHub贡献,提取并归档其编码专业技能,创建结构化的知识库,收录其编码风格、模式、最佳实践和架构决策。
What This Skill Does
该技能的作用
Researches an engineer's work to create a "digital mentor" by:
- Analyzing Pull Requests - Extract code patterns, review style, decisions
- Extracting Coding Style - Document their preferences and conventions
- Identifying Patterns - Common solutions and approaches they use
- Capturing Best Practices - Their quality standards and guidelines
- Organizing Examples - Real code samples from their work
- Documenting Decisions - Architectural choices and reasoning
通过以下方式调研工程师的工作成果,打造「数字导师」:
- 分析Pull Request - 提取代码模式、评审风格、决策逻辑
- 提取编码风格 - 记录其偏好和编码规范
- 识别编码模式 - 他们常用的通用解决方案和实现思路
- 收录最佳实践 - 他们的质量标准和开发准则
- 整理示例代码 - 来自其实际工作的真实代码样例
- 归档决策逻辑 - 架构选择背后的原因和考量
Why This Matters
应用价值
Knowledge Preservation:
- Capture expert knowledge before they leave
- Document tribal knowledge
- Create mentorship materials
- Onboard new engineers faster
Consistency:
- Align team coding standards
- Replicate expert approaches
- Maintain code quality
- Scale expertise across team
Learning:
- Learn from senior engineers
- Understand decision-making
- See real-world patterns
- Improve code quality
知识留存:
- 在专家离职前留存其核心知识
- 归档团队隐性知识
- 制作导师培训材料
- 加快新工程师上手速度
一致性保障:
- 对齐团队编码标准
- 复现专家的实现思路
- 维持代码质量
- 让专家经验在全团队复用
学习提升:
- 向资深工程师学习
- 理解决策逻辑
- 学习真实业务场景下的编码模式
- 提升代码质量
How It Works
工作原理
1. Research Phase
1. 调研阶段
Using GitHub CLI (), the skill:
gh- Fetches engineer's pull requests
- Analyzes code changes
- Reviews their comments and feedback
- Extracts patterns and conventions
- Identifies their expertise areas
该技能通过GitHub CLI()完成以下操作:
gh- 拉取工程师提交的Pull Request
- 分析代码变更
- 梳理其提交的评论和反馈
- 提取编码模式和规范
- 识别其擅长的技术领域
2. Analysis Phase
2. 分析阶段
Categorizes findings into:
- Coding Style - Formatting, naming, structure
- Patterns - Common solutions and approaches
- Best Practices - Quality guidelines
- Architecture - Design decisions
- Testing - Testing approaches
- Code Review - Feedback patterns
- Documentation - Doc style and practices
将分析结果归类为以下维度:
- 编码风格 - 格式化、命名、代码结构
- 编码模式 - 通用解决方案和实现思路
- 最佳实践 - 质量准则
- 架构设计 - 设计决策
- 测试策略 - 测试实现思路
- Code Review - 反馈模式
- 文档规范 - 文档风格和实践
3. Organization Phase
3. 整理阶段
Creates structured folders:
engineer_profiles/
└── [engineer_name]/
├── README.md (overview)
├── coding_style/
│ ├── languages/
│ ├── naming_conventions.md
│ ├── code_structure.md
│ └── formatting_preferences.md
├── patterns/
│ ├── common_solutions.md
│ ├── design_patterns.md
│ └── code_examples/
├── best_practices/
│ ├── code_quality.md
│ ├── testing_approach.md
│ ├── performance.md
│ └── security.md
├── architecture/
│ ├── design_decisions.md
│ ├── tech_choices.md
│ └── trade_offs.md
├── code_review/
│ ├── feedback_style.md
│ ├── common_suggestions.md
│ └── review_examples.md
└── examples/
├── by_language/
├── by_pattern/
└── notable_prs/创建结构化的目录存储结果:
engineer_profiles/
└── [engineer_name]/
├── README.md (overview)
├── coding_style/
│ ├── languages/
│ ├── naming_conventions.md
│ ├── code_structure.md
│ └── formatting_preferences.md
├── patterns/
│ ├── common_solutions.md
│ ├── design_patterns.md
│ └── code_examples/
├── best_practices/
│ ├── code_quality.md
│ ├── testing_approach.md
│ ├── performance.md
│ └── security.md
├── architecture/
│ ├── design_decisions.md
│ ├── tech_choices.md
│ └── trade_offs.md
├── code_review/
│ ├── feedback_style.md
│ ├── common_suggestions.md
│ └── review_examples.md
└── examples/
├── by_language/
├── by_pattern/
└── notable_prs/Output Structure
输出结构
Engineer Profile README
工程师档案README
Contains:
- Engineer overview
- Areas of expertise
- Languages and technologies
- Key contributions
- Coding philosophy
- How to use this profile
包含内容:
- 工程师基本介绍
- 擅长的技术领域
- 掌握的语言和技术栈
- 核心贡献
- 编码理念
- 该档案的使用说明
Coding Style Documentation
编码风格文档
Captures:
- Naming conventions (variables, functions, classes)
- Code structure preferences
- File organization
- Comment style
- Formatting preferences
- Language-specific idioms
Example:
markdown
undefined收录内容:
- 命名规范(变量、函数、类)
- 代码结构偏好
- 文件组织方式
- 注释风格
- 格式化偏好
- 特定语言的惯用写法
示例:
markdown
undefinedCoding Style: [Engineer Name]
Coding Style: [Engineer Name]
Naming Conventions
Naming Conventions
Variables
Variables
- Use descriptive names: not
userAuthenticationua - Boolean variables: ,
isActive,hasPermissioncanEdit - Collections: plural names ,
users,itemstransactions
- Use descriptive names: not
userAuthenticationua - Boolean variables: ,
isActive,hasPermissioncanEdit - Collections: plural names ,
users,itemstransactions
Functions
Functions
- Verb-first: ,
getUserById,validateInputcalculateTotal - Pure functions preferred
- Single responsibility
- Verb-first: ,
getUserById,validateInputcalculateTotal - Pure functions preferred
- Single responsibility
Classes
Classes
- PascalCase: ,
UserServicePaymentProcessor - Interface prefix:
IUserRepository - Concrete implementations:
MongoUserRepository
- PascalCase: ,
UserServicePaymentProcessor - Interface prefix:
IUserRepository - Concrete implementations:
MongoUserRepository
Code Structure
Code Structure
File Organization
File Organization
- One class per file
- Related functions grouped together
- Tests alongside implementation
- Clear separation of concerns
- One class per file
- Related functions grouped together
- Tests alongside implementation
- Clear separation of concerns
Function Length
Function Length
- Max 20-30 lines preferred
- Extract helper functions
- Single level of abstraction
undefined- Max 20-30 lines preferred
- Extract helper functions
- Single level of abstraction
undefinedPatterns Documentation
编码模式文档
Captures:
- Recurring solutions
- Design patterns used
- Architectural patterns
- Problem-solving approaches
Example:
markdown
undefined收录内容:
- 反复出现的解决方案
- 使用的设计模式
- 架构模式
- 问题解决思路
示例:
markdown
undefinedCommon Patterns: [Engineer Name]
Common Patterns: [Engineer Name]
Dependency Injection
Dependency Injection
Used consistently across services:
```typescript
// Pattern: Constructor injection
class UserService {
constructor(
private readonly userRepo: IUserRepository,
private readonly logger: ILogger
) {}
}
```
Why: Testability, loose coupling, clear dependencies
Used consistently across services:
```typescript
// Pattern: Constructor injection
class UserService {
constructor(
private readonly userRepo: IUserRepository,
private readonly logger: ILogger
) {}
}
```
Why: Testability, loose coupling, clear dependencies
Error Handling
Error Handling
Consistent error handling approach:
```typescript
// Pattern: Custom error types + global handler
class ValidationError extends Error {
constructor(message: string) {
super(message);
this.name = 'ValidationError';
}
}
// Usage
if (!isValid(input)) {
throw new ValidationError('Invalid input format');
}
```
Why: Type-safe errors, centralized handling, clear debugging
undefinedConsistent error handling approach:
```typescript
// Pattern: Custom error types + global handler
class ValidationError extends Error {
constructor(message: string) {
super(message);
this.name = 'ValidationError';
}
}
// Usage
if (!isValid(input)) {
throw new ValidationError('Invalid input format');
}
```
Why: Type-safe errors, centralized handling, clear debugging
undefinedBest Practices Documentation
最佳实践文档
Captures:
- Quality standards
- Testing approaches
- Performance guidelines
- Security practices
- Documentation standards
Example:
markdown
undefined收录内容:
- 质量标准
- 测试策略
- 性能准则
- 安全实践
- 文档标准
示例:
markdown
undefinedBest Practices: [Engineer Name]
Best Practices: [Engineer Name]
Testing
Testing
Unit Test Structure
Unit Test Structure
- AAA pattern (Arrange, Act, Assert)
- One assertion per test preferred
- Test names describe behavior
- Mock external dependencies
```typescript
describe('UserService', () => {
describe('createUser', () => {
it('should create user with valid data', async () => {
// Arrange
const userData = { email: 'test@example.com', name: 'Test' };
const mockRepo = createMockRepository();
// Act
const result = await userService.createUser(userData);
// Assert
expect(result.id).toBeDefined();
expect(result.email).toBe(userData.email);
});});
});
```
- AAA pattern (Arrange, Act, Assert)
- One assertion per test preferred
- Test names describe behavior
- Mock external dependencies
```typescript
describe('UserService', () => {
describe('createUser', () => {
it('should create user with valid data', async () => {
// Arrange
const userData = { email: 'test@example.com', name: 'Test' };
const mockRepo = createMockRepository();
// Act
const result = await userService.createUser(userData);
// Assert
expect(result.id).toBeDefined();
expect(result.email).toBe(userData.email);
});});
});
```
Test Coverage
Test Coverage
- Aim for 80%+ coverage
- 100% coverage for critical paths
- Integration tests for APIs
- E2E tests for user flows
- Aim for 80%+ coverage
- 100% coverage for critical paths
- Integration tests for APIs
- E2E tests for user flows
Code Review Standards
Code Review Standards
What to Check
What to Check
- Tests included and passing
- No console.logs remaining
- Error handling present
- Comments explain "why" not "what"
- No hardcoded values
- Security considerations addressed
undefined- Tests included and passing
- No console.logs remaining
- Error handling present
- Comments explain "why" not "what"
- No hardcoded values
- Security considerations addressed
undefinedArchitecture Documentation
架构设计文档
Captures:
- Design decisions
- Technology choices
- Trade-offs made
- System design approaches
Example:
markdown
undefined收录内容:
- 设计决策
- 技术选型
- 权衡考量
- 系统设计思路
示例:
markdown
undefinedArchitectural Decisions: [Engineer Name]
Architectural Decisions: [Engineer Name]
Decision: Microservices vs Monolith
Decision: Microservices vs Monolith
Context: Scaling user service
Decision: Start monolith, extract services when needed
Reasoning:
- Team size: 5 engineers
- Product stage: MVP
- Premature optimization risk
- Easier debugging and deployment
Trade-offs:
- Monolith pros: Simpler, faster development
- Monolith cons: Harder to scale later
- Decision: Optimize for current needs, refactor when hitting limits
Context: Scaling user service
Decision: Start monolith, extract services when needed
Reasoning:
- Team size: 5 engineers
- Product stage: MVP
- Premature optimization risk
- Easier debugging and deployment
Trade-offs:
- Monolith pros: Simpler, faster development
- Monolith cons: Harder to scale later
- Decision: Optimize for current needs, refactor when hitting limits
Decision: REST vs GraphQL
Decision: REST vs GraphQL
Context: API design for mobile app
Decision: REST with versioning
Reasoning:
- Team familiar with REST
- Simple use cases
- Caching easier
- Over-fetching not a problem yet
When to reconsider: If frontend needs complex queries
undefinedContext: API design for mobile app
Decision: REST with versioning
Reasoning:
- Team familiar with REST
- Simple use cases
- Caching easier
- Over-fetching not a problem yet
When to reconsider: If frontend needs complex queries
undefinedCode Review Documentation
Code Review文档
Captures:
- Feedback patterns
- Review approach
- Common suggestions
- Communication style
Example:
markdown
undefined收录内容:
- 反馈模式
- 评审思路
- 常见建议
- 沟通风格
示例:
markdown
undefinedCode Review Style: [Engineer Name]
Code Review Style: [Engineer Name]
Review Approach
Review Approach
Priority Order
Priority Order
- Security vulnerabilities
- Logic errors
- Test coverage
- Code structure
- Naming and style
- Security vulnerabilities
- Logic errors
- Test coverage
- Code structure
- Naming and style
Feedback Style
Feedback Style
- Specific and constructive
- Explains "why" behind suggestions
- Provides examples
- Asks questions to understand reasoning
- Specific and constructive
- Explains "why" behind suggestions
- Provides examples
- Asks questions to understand reasoning
Common Suggestions
Common Suggestions
Security:
- "Consider input validation here"
- "This query is vulnerable to SQL injection"
- "Should we rate-limit this endpoint?"
Performance:
- "This N+1 query could be optimized with a join"
- "Consider caching this expensive operation"
- "Memoize this pure function"
Testing:
- "Can we add a test for the error case?"
- "What happens if the API returns null?"
- "Let's test the boundary conditions"
Code Quality:
- "Can we extract this into a helper function?"
- "This function is doing too many things"
- "Consider a more descriptive variable name"
undefinedSecurity:
- "Consider input validation here"
- "This query is vulnerable to SQL injection"
- "Should we rate-limit this endpoint?"
Performance:
- "This N+1 query could be optimized with a join"
- "Consider caching this expensive operation"
- "Memoize this pure function"
Testing:
- "Can we add a test for the error case?"
- "What happens if the API returns null?"
- "Let's test the boundary conditions"
Code Quality:
- "Can we extract this into a helper function?"
- "This function is doing too many things"
- "Consider a more descriptive variable name"
undefinedUsing This Skill
如何使用该技能
Extract Engineer Profile
提取工程师档案
bash
./scripts/extract_engineer.sh [github-username]Interactive workflow:
- Enter GitHub username
- Select repository scope (all/specific org)
- Choose analysis depth (last N PRs)
- Specify focus areas (languages, topics)
- Extract and organize findings
Output: Structured profile in
engineer_profiles/[username]/bash
./scripts/extract_engineer.sh [github-username]交互式工作流:
- 输入GitHub用户名
- 选择仓库范围(全部/指定组织)
- 选择分析深度(最近N个PR)
- 指定重点分析领域(语言、主题)
- 提取并整理分析结果
输出: 结构化档案存储在 目录下
engineer_profiles/[username]/Analyze Specific Repository
分析指定仓库
bash
./scripts/analyze_repo.sh [repo-url] [engineer-username]Focuses analysis on specific repository contributions.
bash
./scripts/analyze_repo.sh [repo-url] [engineer-username]仅分析工程师在指定仓库的贡献。
Update Existing Profile
更新已有档案
bash
./scripts/update_profile.sh [engineer-username]Adds new PRs and updates existing profile.
bash
./scripts/update_profile.sh [engineer-username]拉取新的PR并更新已有档案。
Research Sources
数据来源
GitHub CLI Queries
GitHub CLI 查询
Pull Requests:
bash
gh pr list --author [username] --limit 100 --state all
gh pr view [pr-number] --json title,body,files,reviews,commentsCode Changes:
bash
gh pr diff [pr-number]
gh api repos/{owner}/{repo}/pulls/{pr}/filesReviews:
bash
gh pr view [pr-number] --comments
gh api repos/{owner}/{repo}/pulls/{pr}/reviewsCommits:
bash
gh api search/commits --author [username]Pull Request:
bash
gh pr list --author [username] --limit 100 --state all
gh pr view [pr-number] --json title,body,files,reviews,comments代码变更:
bash
gh pr diff [pr-number]
gh api repos/{owner}/{repo}/pulls/{pr}/files评审内容:
bash
gh pr view [pr-number] --comments
gh api repos/{owner}/{repo}/pulls/{pr}/reviews提交记录:
bash
gh api search/commits --author [username]Analysis Techniques
分析技术
Pattern Recognition:
- Identify recurring code structures
- Extract common solutions
- Detect naming patterns
- Find architectural choices
Style Extraction:
- Analyze formatting consistency
- Extract naming conventions
- Identify comment patterns
- Detect structural preferences
Best Practice Identification:
- Look for testing patterns
- Find error handling approaches
- Identify security practices
- Extract performance optimizations
模式识别:
- 识别反复出现的代码结构
- 提取通用解决方案
- 检测命名模式
- 提取架构选择
风格提取:
- 分析格式一致性
- 提取命名规范
- 识别注释模式
- 检测代码结构偏好
最佳实践识别:
- 查找测试模式
- 提取错误处理思路
- 识别安全实践
- 提取性能优化方案
Use Cases
使用场景
1. Onboarding New Engineers
1. 新工程师入职培训
Problem: New engineer needs to learn team standards
Solution: Provide senior engineer's profile as reference
Benefits:
- Real examples from codebase
- Understand team conventions
- See decision-making process
- Learn best practices
问题: 新工程师需要学习团队标准
解决方案: 提供资深工程师的档案作为参考
收益:
- 来自代码库的真实示例
- 理解团队规范
- 了解决策流程
- 学习最佳实践
2. Code Review Training
2. Code Review培训
Problem: Teaching good code review skills
Solution: Study experienced reviewer's feedback patterns
Benefits:
- Learn what to look for
- Understand feedback style
- See common issues
- Improve review quality
问题: 需要教授良好的Code Review技能
解决方案: 学习资深评审人员的反馈模式
收益:
- 了解评审时需要关注的点
- 理解反馈风格
- 认识常见问题
- 提升评审质量
3. Knowledge Transfer
3. 知识迁移
Problem: Senior engineer leaving, knowledge lost
Solution: Extract their expertise before departure
Benefits:
- Preserve tribal knowledge
- Document decisions
- Maintain code quality
- Reduce bus factor
问题: 资深工程师离职会导致知识流失
解决方案: 在其离职前提取专业技能
收益:
- 留存团队隐性知识
- 归档决策逻辑
- 维持代码质量
- 降低bus factor
4. Establishing Team Standards
4. 建立团队标准
Problem: Inconsistent coding styles across team
Solution: Extract patterns from best engineers, create standards
Benefits:
- Evidence-based standards
- Real-world examples
- Buy-in from team
- Consistent codebase
问题: 团队编码风格不统一
解决方案: 提取优秀工程师的编码模式,制定团队标准
收益:
- 基于实际案例的标准
- 真实场景示例
- 获得团队认可
- 代码库风格统一
5. AI Agent Training
5. AI Agent训练
Problem: Agent needs to code like specific engineer
Solution: Provide extracted profile to agent
Benefits:
- Match expert's style
- Follow their patterns
- Apply their best practices
- Maintain consistency
问题: 需要Agent按照特定工程师的风格编码
解决方案: 为Agent提供提取好的工程师档案
收益:
- 匹配专家的编码风格
- 遵循其编码模式
- 应用其最佳实践
- 维持编码一致性
Profile Usage by Agents
Agent对档案的使用
When an agent has access to an engineer profile, it can:
Code Generation:
- Follow extracted naming conventions
- Use identified patterns
- Apply documented best practices
- Match architectural style
Code Review:
- Provide feedback in engineer's style
- Check for common issues they'd catch
- Apply their quality standards
- Match their priorities
Problem Solving:
- Use their common solutions
- Follow their architectural approach
- Apply their design patterns
- Consider their trade-offs
Example Agent Prompt:
"Using the profile at engineer_profiles/senior_dev/, write a user service
following their coding style, patterns, and best practices. Pay special
attention to their error handling approach and testing standards."当Agent可以访问工程师档案时,它可以完成以下操作:
代码生成:
- 遵循提取的命名规范
- 使用识别到的编码模式
- 应用归档的最佳实践
- 匹配架构设计风格
Code Review:
- 按照工程师的风格提供反馈
- 检查专家通常会发现的常见问题
- 应用其质量标准
- 匹配其评审优先级
问题解决:
- 使用专家的通用解决方案
- 遵循其架构设计思路
- 应用其设计模式
- 参考其权衡考量
Agent提示词示例:
"Using the profile at engineer_profiles/senior_dev/, write a user service
following their coding style, patterns, and best practices. Pay special
attention to their error handling approach and testing standards."Best Practices
使用最佳实践
Research Ethics
调研伦理
DO:
- ✅ Get permission before extracting
- ✅ Focus on public contributions
- ✅ Respect privacy
- ✅ Use for learning and improvement
DON'T:
- ❌ Extract without permission
- ❌ Share profiles externally
- ❌ Include sensitive information
- ❌ Use for performance reviews
允许的行为:
- ✅ 提取前获得许可
- ✅ 仅分析公开贡献
- ✅ 尊重隐私
- ✅ 用于学习和提升
禁止的行为:
- ❌ 未经许可提取
- ❌ 对外分享档案
- ❌ 包含敏感信息
- ❌ 用于绩效评估
Profile Maintenance
档案维护
Regular Updates:
- Refresh every quarter
- Add new significant PRs
- Update with latest patterns
- Archive outdated practices
Quality Control:
- Verify extracted patterns
- Review examples for relevance
- Update documentation
- Remove deprecated practices
定期更新:
- 每季度刷新一次
- 添加新的重要PR
- 更新最新的编码模式
- 归档过时的实践
质量控制:
- 验证提取的模式
- 检查示例的相关性
- 更新文档
- 移除已废弃的实践
Effective Usage
高效使用
For Learning:
- Study patterns with context
- Understand reasoning behind choices
- Practice applying techniques
- Ask questions when unclear
For Replication:
- Start with style guide
- Reference patterns for similar problems
- Adapt to current context
- Don't blindly copy
用于学习:
- 结合上下文学习编码模式
- 理解选择背后的原因
- 练习应用相关技术
- 遇到疑问时主动提问
用于复现:
- 从风格指南开始
- 参考类似问题的编码模式
- 适配当前场景
- 不要盲目复制
Limitations
局限性
What This Extracts:
- ✅ Coding style and conventions
- ✅ Common patterns and approaches
- ✅ Best practices and guidelines
- ✅ Architectural decisions
- ✅ Review feedback patterns
What This Doesn't Capture:
- ❌ Real-time problem-solving process
- ❌ Verbal communication style
- ❌ Meeting discussions
- ❌ Design phase thinking
- ❌ Interpersonal mentoring
可提取的内容:
- ✅ 编码风格和规范
- ✅ 通用编码模式和实现思路
- ✅ 最佳实践和开发准则
- ✅ 架构决策
- ✅ 评审反馈模式
无法提取的内容:
- ❌ 实时问题解决流程
- ❌ 口头沟通风格
- ❌ 会议讨论内容
- ❌ 设计阶段的思考
- ❌ 人际指导能力
Future Enhancements
未来优化方向
Potential additions:
- Slack message analysis (communication style)
- Design doc extraction (design thinking)
- Meeting notes analysis (decision process)
- Video analysis (pair programming sessions)
- Code metrics tracking (evolution over time)
潜在的新增功能:
- Slack消息分析(沟通风格)
- 设计文档提取(设计思路)
- 会议记录分析(决策流程)
- 视频分析(结对编程会话)
- 代码指标跟踪(能力随时间的变化)
Example Output
输出示例
engineer_profiles/
└── senior_dev/
├── README.md
│ # Senior Dev - Staff Engineer
│ Expertise: TypeScript, Node.js, System Design
│ Focus: API design, performance optimization
│
├── coding_style/
│ ├── typescript_style.md
│ ├── naming_conventions.md
│ └── code_structure.md
│
├── patterns/
│ ├── dependency_injection.md
│ ├── error_handling.md
│ └── examples/
│ ├── service_pattern.ts
│ └── repository_pattern.ts
│
├── best_practices/
│ ├── testing_strategy.md
│ ├── code_quality.md
│ └── performance.md
│
├── architecture/
│ ├── api_design.md
│ ├── database_design.md
│ └── scaling_approach.md
│
├── code_review/
│ ├── feedback_examples.md
│ └── review_checklist.md
│
└── examples/
└── notable_prs/
├── pr_1234_auth_refactor.md
└── pr_5678_performance_fix.mdengineer_profiles/
└── senior_dev/
├── README.md
│ # Senior Dev - Staff Engineer
│ Expertise: TypeScript, Node.js, System Design
│ Focus: API design, performance optimization
│
├── coding_style/
│ ├── typescript_style.md
│ ├── naming_conventions.md
│ └── code_structure.md
│
├── patterns/
│ ├── dependency_injection.md
│ ├── error_handling.md
│ └── examples/
│ ├── service_pattern.ts
│ └── repository_pattern.ts
│
├── best_practices/
│ ├── testing_strategy.md
│ ├── code_quality.md
│ └── performance.md
│
├── architecture/
│ ├── api_design.md
│ ├── database_design.md
│ └── scaling_approach.md
│
├── code_review/
│ ├── feedback_examples.md
│ └── review_checklist.md
│
└── examples/
└── notable_prs/
├── pr_1234_auth_refactor.md
└── pr_5678_performance_fix.mdSummary
总结
This skill transforms an engineer's GitHub contributions into a structured, reusable knowledge base. It captures their expertise in a format that:
- Humans can learn from - Clear documentation with examples
- Agents can replicate - Structured patterns and guidelines
- Teams can adopt - Evidence-based best practices
- Organizations can preserve - Knowledge that survives turnover
The goal: Make expertise scalable, learnable, and replicable.
"The best way to learn is from those who have already mastered it."
该技能将工程师的GitHub贡献转化为结构化、可复用的知识库。它收录的专业技能可以满足以下需求:
- 可供人类学习 - 带示例的清晰文档
- 可供Agent复现 - 结构化的模式和准则
- 可供团队采纳 - 基于实际案例的最佳实践
- 可供组织留存 - 不受人员变动影响的知识资产
目标: 让专业技能可规模化、可学习、可复现。
「最好的学习方式是向已经掌握技能的人学习。」