@tinkcarlos/skillora 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/skills/.temp-skill-index.md +245 -0
- package/.claude/skills/SKILL.md +264 -0
- package/.claude/skills/api-scaffolding/SKILL.md +431 -0
- package/.claude/skills/api-scaffolding/agents/backend-architect.md +282 -0
- package/.claude/skills/api-scaffolding/agents/django-pro.md +144 -0
- package/.claude/skills/api-scaffolding/agents/fastapi-pro.md +156 -0
- package/.claude/skills/api-scaffolding/agents/graphql-architect.md +146 -0
- package/.claude/skills/api-scaffolding/skills/fastapi-templates/SKILL.md +171 -0
- package/.claude/skills/api-testing-observability/SKILL.md +583 -0
- package/.claude/skills/api-testing-observability/agents/api-documenter.md +146 -0
- package/.claude/skills/api-testing-observability/commands/api-mock.md +1320 -0
- package/.claude/skills/brainstorming/SKILL.md +283 -0
- package/.claude/skills/bug-fixing/SKILL.md +382 -0
- package/.claude/skills/bug-fixing/references/backend-guide.md +132 -0
- package/.claude/skills/bug-fixing/references/bug-guide.md +354 -0
- package/.claude/skills/bug-fixing/references/bug-record-template.md +134 -0
- package/.claude/skills/bug-fixing/references/bug-records.md +88 -0
- package/.claude/skills/bug-fixing/references/code-review-gate.md +81 -0
- package/.claude/skills/bug-fixing/references/common-bugs.md +140 -0
- package/.claude/skills/bug-fixing/references/complete-workflow.md +361 -0
- package/.claude/skills/bug-fixing/references/config-driven-fixes.md +136 -0
- package/.claude/skills/bug-fixing/references/context-isolation-protocol.md +268 -0
- package/.claude/skills/bug-fixing/references/cross-surface-regression.md +120 -0
- package/.claude/skills/bug-fixing/references/database-investigation.md +129 -0
- package/.claude/skills/bug-fixing/references/dependency-and-integrity-protocol.md +369 -0
- package/.claude/skills/bug-fixing/references/fix-completeness-checklist.md +239 -0
- package/.claude/skills/bug-fixing/references/frontend-guide.md +219 -0
- package/.claude/skills/bug-fixing/references/fullstack-joint-guide.md +123 -0
- package/.claude/skills/bug-fixing/references/functional-breakage.md +117 -0
- package/.claude/skills/bug-fixing/references/ide-lint-errors-guide.md +176 -0
- package/.claude/skills/bug-fixing/references/impact-analysis.md +511 -0
- package/.claude/skills/bug-fixing/references/investigation-checklist.md +263 -0
- package/.claude/skills/bug-fixing/references/knowledge-extraction-guide.md +531 -0
- package/.claude/skills/bug-fixing/references/knowledge-workflow.md +212 -0
- package/.claude/skills/bug-fixing/references/post-edit-quality-gate.md +30 -0
- package/.claude/skills/bug-fixing/references/python-env-and-testing.md +126 -0
- package/.claude/skills/bug-fixing/references/rca-guide.md +428 -0
- package/.claude/skills/bug-fixing/references/similar-bug-patterns.md +113 -0
- package/.claude/skills/bug-fixing/references/skill-delegation-guide.md +350 -0
- package/.claude/skills/bug-fixing/references/skill-orchestration.md +155 -0
- package/.claude/skills/bug-fixing/references/testing-strategy.md +350 -0
- package/.claude/skills/bug-fixing/references/tooling-build-scripts.md +162 -0
- package/.claude/skills/bug-fixing/references/user-input-validation.md +77 -0
- package/.claude/skills/bug-fixing/references/ux-patterns.md +158 -0
- package/.claude/skills/bug-fixing/references/windows-terminal-hygiene.md +106 -0
- package/.claude/skills/bug-fixing/references/zero-regression-matrix.md +239 -0
- package/.claude/skills/bug-fixing/references/zero-risk-protocol.md +102 -0
- package/.claude/skills/bug-fixing/scripts/format_code.py +611 -0
- package/.claude/skills/bug-fixing/scripts/generate_report_template.py +74 -0
- package/.claude/skills/bug-fixing/scripts/lint_check.py +816 -0
- package/.claude/skills/bug-fixing/scripts/requirements.txt +36 -0
- package/.claude/skills/cicd-pipeline/SKILL.md +300 -0
- package/.claude/skills/code-review/SKILL.md +535 -0
- package/.claude/skills/code-review/references/anti-pattern-scan.md +102 -0
- package/.claude/skills/code-review/references/automated-analysis.md +456 -0
- package/.claude/skills/code-review/references/backend-common-issues.md +589 -0
- package/.claude/skills/code-review/references/backend-expert-guide.md +415 -0
- package/.claude/skills/code-review/references/backend-review.md +868 -0
- package/.claude/skills/code-review/references/batch-processing-strategy.md +198 -0
- package/.claude/skills/code-review/references/call-chain-analysis-protocol.md +166 -0
- package/.claude/skills/code-review/references/common-patterns.md +321 -0
- package/.claude/skills/code-review/references/configuration-review.md +425 -0
- package/.claude/skills/code-review/references/control-flow-completeness.md +114 -0
- package/.claude/skills/code-review/references/database-review.md +298 -0
- package/.claude/skills/code-review/references/dependency-and-integrity-protocol.md +313 -0
- package/.claude/skills/code-review/references/external-standards.md +51 -0
- package/.claude/skills/code-review/references/feature-review.md +329 -0
- package/.claude/skills/code-review/references/file-review-template.md +326 -0
- package/.claude/skills/code-review/references/frontend-advanced.md +654 -0
- package/.claude/skills/code-review/references/frontend-common-issues.md +482 -0
- package/.claude/skills/code-review/references/frontend-expert-guide.md +342 -0
- package/.claude/skills/code-review/references/frontend-review.md +783 -0
- package/.claude/skills/code-review/references/fullstack-consistency.md +418 -0
- package/.claude/skills/code-review/references/fullstack-review.md +477 -0
- package/.claude/skills/code-review/references/functional-completeness.md +386 -0
- package/.claude/skills/code-review/references/hidden-bugs-detection.md +473 -0
- package/.claude/skills/code-review/references/ide-lint-errors-guide.md +173 -0
- package/.claude/skills/code-review/references/infrastructure-review.md +453 -0
- package/.claude/skills/code-review/references/iteration-review.md +264 -0
- package/.claude/skills/code-review/references/job-review.md +335 -0
- package/.claude/skills/code-review/references/layered-checklist-protocol.md +157 -0
- package/.claude/skills/code-review/references/logic-completeness.md +535 -0
- package/.claude/skills/code-review/references/mandatory-checklist.md +288 -0
- package/.claude/skills/code-review/references/multi-language-guide.md +800 -0
- package/.claude/skills/code-review/references/new-project-review.md +226 -0
- package/.claude/skills/code-review/references/non-code-files-review.md +451 -0
- package/.claude/skills/code-review/references/overlooked-issues.md +657 -0
- package/.claude/skills/code-review/references/platform-specific-review.md +195 -0
- package/.claude/skills/code-review/references/precision-analysis-protocol.md +260 -0
- package/.claude/skills/code-review/references/python-patterns.md +494 -0
- package/.claude/skills/code-review/references/rca-techniques.md +362 -0
- package/.claude/skills/code-review/references/report-template.md +430 -0
- package/.claude/skills/code-review/references/resource-limits-and-degradation.md +137 -0
- package/.claude/skills/code-review/references/review-dimensions.md +311 -0
- package/.claude/skills/code-review/references/review-guide.md +202 -0
- package/.claude/skills/code-review/references/review-knowledge-workflow.md +257 -0
- package/.claude/skills/code-review/references/review-progress-tracker-protocol.md +172 -0
- package/.claude/skills/code-review/references/review-record-template.md +195 -0
- package/.claude/skills/code-review/references/skill-orchestration.md +143 -0
- package/.claude/skills/code-review/references/ui-ux-review.md +470 -0
- package/.claude/skills/containerization/SKILL.md +313 -0
- package/.claude/skills/database-migrations/agents/database-admin.md +142 -0
- package/.claude/skills/database-migrations/agents/database-optimizer.md +144 -0
- package/.claude/skills/database-migrations/commands/migration-observability.md +408 -0
- package/.claude/skills/database-migrations/commands/sql-migrations.md +492 -0
- package/.claude/skills/finishing-a-development-branch/SKILL.md +319 -0
- package/.claude/skills/frontend-design/LICENSE.txt +177 -0
- package/.claude/skills/frontend-design/SKILL.md +587 -0
- package/.claude/skills/frontend-design/references/color-consistency.md +487 -0
- package/.claude/skills/frontend-design/references/color-palettes-full.md +657 -0
- package/.claude/skills/frontend-design/references/design-system-generator.md +285 -0
- package/.claude/skills/frontend-design/references/font-pairings-full.md +705 -0
- package/.claude/skills/frontend-design/references/industry-anti-patterns.md +281 -0
- package/.claude/skills/frontend-design/references/layout-anti-patterns.md +582 -0
- package/.claude/skills/frontend-design/references/motion-patterns.md +659 -0
- package/.claude/skills/frontend-design/references/pre-delivery-checklist.md +153 -0
- package/.claude/skills/frontend-design/references/responsive-design.md +555 -0
- package/.claude/skills/frontend-design/references/style-modification-rules.md +335 -0
- package/.claude/skills/frontend-design/references/ui-styles-full.md +383 -0
- package/.claude/skills/frontend-design/references/ui-styles-rating.md +191 -0
- package/.claude/skills/frontend-design/references/ux-guidelines.md +640 -0
- package/.claude/skills/fullstack-developer/SKILL.md +512 -0
- package/.claude/skills/fullstack-developer/references/api-contract-guide.md +312 -0
- package/.claude/skills/fullstack-developer/references/api-response-patterns.md +223 -0
- package/.claude/skills/fullstack-developer/references/async-patterns.md +220 -0
- package/.claude/skills/fullstack-developer/references/bug-prevention.md +914 -0
- package/.claude/skills/fullstack-developer/references/code-quality-checklist.md +271 -0
- package/.claude/skills/fullstack-developer/references/complete-development-workflow.md +278 -0
- package/.claude/skills/fullstack-developer/references/context-isolation-protocol.md +256 -0
- package/.claude/skills/fullstack-developer/references/database-migration.md +331 -0
- package/.claude/skills/fullstack-developer/references/dependency-and-integrity-protocol.md +390 -0
- package/.claude/skills/fullstack-developer/references/development-phases.md +333 -0
- package/.claude/skills/fullstack-developer/references/expert-guide.md +214 -0
- package/.claude/skills/fullstack-developer/references/file-import-patterns.md +114 -0
- package/.claude/skills/fullstack-developer/references/graceful-degradation-patterns.md +78 -0
- package/.claude/skills/fullstack-developer/references/ide-lint-errors-guide.md +183 -0
- package/.claude/skills/fullstack-developer/references/integration-testing.md +301 -0
- package/.claude/skills/fullstack-developer/references/mock-api-patterns.md +307 -0
- package/.claude/skills/fullstack-developer/references/phase-gate-template.md +249 -0
- package/.claude/skills/fullstack-developer/references/post-edit-quality-gate.md +30 -0
- package/.claude/skills/fullstack-developer/references/python-engineering.md +79 -0
- package/.claude/skills/fullstack-developer/references/skill-orchestration.md +214 -0
- package/.claude/skills/fullstack-developer/references/skill-router-table.md +304 -0
- package/.claude/skills/fullstack-developer/references/state-sync.md +217 -0
- package/.claude/skills/fullstack-developer/references/ui-testing-checklist.md +292 -0
- package/.claude/skills/fullstack-developer/scripts/format_code.py +611 -0
- package/.claude/skills/fullstack-developer/scripts/lint_check.py +816 -0
- package/.claude/skills/fullstack-developer/scripts/requirements.txt +36 -0
- package/.claude/skills/performance-optimization/SKILL.md +250 -0
- package/.claude/skills/product-requirements/SKILL.md +357 -0
- package/.claude/skills/product-requirements/references/acceptance-criteria.md +335 -0
- package/.claude/skills/product-requirements/references/answer-first-questioning-protocol.md +299 -0
- package/.claude/skills/product-requirements/references/competitive-analysis-guide.md +183 -0
- package/.claude/skills/product-requirements/references/document-accuracy-protocol.md +253 -0
- package/.claude/skills/product-requirements/references/document-management-protocol.md +278 -0
- package/.claude/skills/product-requirements/references/external-standards.md +62 -0
- package/.claude/skills/product-requirements/references/feature-spec-template.md +359 -0
- package/.claude/skills/product-requirements/references/knowledge-acquisition-protocol.md +251 -0
- package/.claude/skills/product-requirements/references/plan-execution-protocol.md +334 -0
- package/.claude/skills/product-requirements/references/plan-generation-protocol.md +264 -0
- package/.claude/skills/product-requirements/references/prioritization-frameworks.md +80 -0
- package/.claude/skills/product-requirements/references/requirement-decomposition-protocol.md +291 -0
- package/.claude/skills/product-requirements/references/user-story-examples.md +297 -0
- package/.claude/skills/product-requirements/references/workflow-templates.md +266 -0
- package/.claude/skills/react-best-practices/SKILL.md +198 -0
- package/.claude/skills/react-best-practices/references/advanced-patterns.md +94 -0
- package/.claude/skills/react-best-practices/references/bundle-optimization.md +182 -0
- package/.claude/skills/react-best-practices/references/client-data-fetching.md +112 -0
- package/.claude/skills/react-best-practices/references/complete-guide.md +2249 -0
- package/.claude/skills/react-best-practices/references/eliminating-waterfalls.md +169 -0
- package/.claude/skills/react-best-practices/references/javascript-performance.md +256 -0
- package/.claude/skills/react-best-practices/references/rendering-performance.md +230 -0
- package/.claude/skills/react-best-practices/references/rerender-optimization.md +214 -0
- package/.claude/skills/react-best-practices/references/server-performance.md +182 -0
- package/.claude/skills/security-audit/SKILL.md +226 -0
- package/.claude/skills/shared-references/advanced-debugging-techniques.md +186 -0
- package/.claude/skills/shared-references/code-quality-checklist.md +218 -0
- package/.claude/skills/shared-references/code-review-efficiency-guide.md +125 -0
- package/.claude/skills/shared-references/mcp-dependency-compatibility-protocol.md +276 -0
- package/.claude/skills/shared-references/skill-call-graph.md +230 -0
- package/.claude/skills/shared-references/skill-orchestration-protocol.md +281 -0
- package/.claude/skills/shared-references/subagent-dispatch-templates.md +199 -0
- package/.claude/skills/skill-expert-skills/LICENSE.txt +204 -0
- package/.claude/skills/skill-expert-skills/QUICK_NAVIGATION.md +374 -0
- package/.claude/skills/skill-expert-skills/SKILL.md +247 -0
- package/.claude/skills/skill-expert-skills/docs/_index.md +91 -0
- package/.claude/skills/skill-expert-skills/references/deep-research-methodology.md +389 -0
- package/.claude/skills/skill-expert-skills/references/docs-generation-workflow.md +398 -0
- package/.claude/skills/skill-expert-skills/references/domain-expertise-protocol.md +343 -0
- package/.claude/skills/skill-expert-skills/references/domain-knowledge/_index.md +54 -0
- package/.claude/skills/skill-expert-skills/references/domain-knowledge/backend-expertise.md +517 -0
- package/.claude/skills/skill-expert-skills/references/domain-knowledge/bug-fixing-expertise.md +363 -0
- package/.claude/skills/skill-expert-skills/references/domain-knowledge/code-review-expertise.md +392 -0
- package/.claude/skills/skill-expert-skills/references/domain-knowledge/frontend-expertise.md +410 -0
- package/.claude/skills/skill-expert-skills/references/domain-knowledge-template.md +503 -0
- package/.claude/skills/skill-expert-skills/references/examples.md +782 -0
- package/.claude/skills/skill-expert-skills/references/integration-examples.md +655 -0
- package/.claude/skills/skill-expert-skills/references/knowledge-validation-checklist.md +246 -0
- package/.claude/skills/skill-expert-skills/references/latest-knowledge-acquisition.md +461 -0
- package/.claude/skills/skill-expert-skills/references/mcp-tools-guide.md +439 -0
- package/.claude/skills/skill-expert-skills/references/official-best-practices.md +616 -0
- package/.claude/skills/skill-expert-skills/references/patterns.md +218 -0
- package/.claude/skills/skill-expert-skills/references/plugin-skills-guide.md +432 -0
- package/.claude/skills/skill-expert-skills/references/requirement-elicitation-protocol.md +290 -0
- package/.claude/skills/skill-expert-skills/references/skill-creator-SKILL.md +353 -0
- package/.claude/skills/skill-expert-skills/references/skill-templates.md +583 -0
- package/.claude/skills/skill-expert-skills/references/skills-knowledge-base.md +561 -0
- package/.claude/skills/skill-expert-skills/references/tools-guide.md +379 -0
- package/.claude/skills/skill-expert-skills/references/troubleshooting.md +378 -0
- package/.claude/skills/skill-expert-skills/references/universality-guide.md +205 -0
- package/.claude/skills/skill-expert-skills/references/writing-style-guide.md +466 -0
- package/.claude/skills/skill-expert-skills/scripts/__pycache__/quick_validate.cpython-313.pyc +0 -0
- package/.claude/skills/skill-expert-skills/scripts/__pycache__/universal_validate.cpython-313.pyc +0 -0
- package/.claude/skills/skill-expert-skills/scripts/analyze_trigger.py +425 -0
- package/.claude/skills/skill-expert-skills/scripts/diff_with_official.py +188 -0
- package/.claude/skills/skill-expert-skills/scripts/init_skill.py +349 -0
- package/.claude/skills/skill-expert-skills/scripts/package_skill.py +156 -0
- package/.claude/skills/skill-expert-skills/scripts/quick_validate.py +493 -0
- package/.claude/skills/skill-expert-skills/scripts/requirements.txt +2 -0
- package/.claude/skills/skill-expert-skills/scripts/universal_validate.py +182 -0
- package/.claude/skills/skill-expert-skills/scripts/upgrade_skill.py +431 -0
- package/.claude/skills/subagent-driven-development/SKILL.md +268 -0
- package/.claude/skills/test-driven-development/SKILL.md +246 -0
- package/.claude/skills/test-driven-development/references/testing-anti-patterns.md +192 -0
- package/.claude/skills/using-git-worktrees/SKILL.md +266 -0
- package/.claude/skills/using-skillstack/SKILL.md +127 -0
- package/.claude/skills/vercel-deploy/SKILL.md +166 -0
- package/.claude/skills/vercel-deploy/scripts/deploy.sh +249 -0
- package/.claude/skills/verification-before-completion/SKILL.md +305 -0
- package/.claude/skills/writing-plans/SKILL.md +259 -0
- package/README.md +69 -0
- package/bin/cli.js +468 -0
- package/lib/init.js +333 -0
- package/package.json +29 -0
|
@@ -0,0 +1,655 @@
|
|
|
1
|
+
# Skill 集成示例 (Integration Examples)
|
|
2
|
+
|
|
3
|
+
> 最后更新: 2025-01-17
|
|
4
|
+
> 用途: 提供 Skill 集成的完整示例和最佳实践
|
|
5
|
+
> 适用于: 多个 Skill 协同工作、Skill 作为依赖项使用
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## 目录
|
|
10
|
+
|
|
11
|
+
1. [示例索引](#1-示例索引)
|
|
12
|
+
2. [示例 1: 前端 + 后端协作](#2-示例-1-前端--后端协作)
|
|
13
|
+
3. [示例 2: Skill 链式工作流](#3-示例-2-skill-链式工作流)
|
|
14
|
+
4. [示例 3: 全栈 Skill 集成](#4-示例-3-全栈-skill-集成)
|
|
15
|
+
5. [Skill 依赖管理](#5-skill-依赖管理)
|
|
16
|
+
6. [最佳实践](#6-最佳实践)
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## 1. 示例索引
|
|
21
|
+
|
|
22
|
+
| 示例 | 涉及 Skills | 复杂度 | 使用场景 |
|
|
23
|
+
|------|------------|--------|----------|
|
|
24
|
+
| [示例 1](#2-示例-1-前端--后端协作) | frontend-expertise + backend-expertise | 中 | 前后端团队协作 |
|
|
25
|
+
| [示例 2](#3-示例-2-skill-链式工作流) | bug-fixing + code-review + testing-patterns | 高 | 端到端开发流程 |
|
|
26
|
+
| [示例 3](#4-示例-3-全栈-skill-集成) | 所有核心 Skills | 高 | 大型项目完整开发 |
|
|
27
|
+
| [依赖管理](#5-skill-依赖管理) | - | - | Skill 作为依赖项 |
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## 2. 示例 1: 前端 + 后端协作
|
|
32
|
+
|
|
33
|
+
### 2.1 场景
|
|
34
|
+
|
|
35
|
+
用户需要创建一个完整的 API 功能,涉及:
|
|
36
|
+
- 后端 API 设计和实现
|
|
37
|
+
- 前端组件开发和集成
|
|
38
|
+
- 前后端联调
|
|
39
|
+
|
|
40
|
+
### 2.2 涉及的 Skills
|
|
41
|
+
|
|
42
|
+
| Skill | 角色 | 关键产出 |
|
|
43
|
+
|--------|------|----------|
|
|
44
|
+
| `backend-expertise` | 后端架构、API 设计 | API 文档、接口实现 |
|
|
45
|
+
| `frontend-expertise` | 前端组件、状态管理 | React 组件、状态逻辑 |
|
|
46
|
+
| `api-design-reviewer` | API 质量审查 | 审查报告、改进建议 |
|
|
47
|
+
|
|
48
|
+
### 2.3 协作流程
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
┌─────────────────────────────────────────┐
|
|
52
|
+
│ 前后端协作流程 │
|
|
53
|
+
├─────────────────────────────────────────┤
|
|
54
|
+
│ │
|
|
55
|
+
│ Step 1: 后端设计 │
|
|
56
|
+
│ ├─ backend-expertise: API 设计 │
|
|
57
|
+
│ ├─ api-design-reviewer: 设计审查 │
|
|
58
|
+
│ └─ 后端实现代码 │
|
|
59
|
+
│ │
|
|
60
|
+
│ Step 2: 前端开发 │
|
|
61
|
+
│ ├─ frontend-expertise: 组件设计 │
|
|
62
|
+
│ ├─ frontend-expertise: 状态管理 │
|
|
63
|
+
│ └─ 前端实现组件 │
|
|
64
|
+
│ │
|
|
65
|
+
│ Step 3: 联调测试 │
|
|
66
|
+
│ ├─ frontend-expertise: 联调策略 │
|
|
67
|
+
│ ├─ backend-expertise: 错误处理 │
|
|
68
|
+
│ └─ 代码审查 │
|
|
69
|
+
│ │
|
|
70
|
+
└─────────────────────────────────────────┘
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### 2.4 示例:RESTful API + React 前端
|
|
74
|
+
|
|
75
|
+
#### 后端 SKILL.md 片段
|
|
76
|
+
|
|
77
|
+
```markdown
|
|
78
|
+
## API 端点设计
|
|
79
|
+
|
|
80
|
+
### 设计阶段
|
|
81
|
+
使用 backend-expertise 和 api-design-reviewer:
|
|
82
|
+
1. 设计资源模型
|
|
83
|
+
2. 规划 RESTful 端点
|
|
84
|
+
3. 定义错误响应格式
|
|
85
|
+
4. 审查设计质量
|
|
86
|
+
|
|
87
|
+
### 实现阶段
|
|
88
|
+
1. 实现数据访问层
|
|
89
|
+
2. 实现 API 端点
|
|
90
|
+
3. 添加输入验证
|
|
91
|
+
4. 编写 API 文档
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
#### 前端 SKILL.md 片段
|
|
95
|
+
|
|
96
|
+
```markdown
|
|
97
|
+
## API 集成
|
|
98
|
+
|
|
99
|
+
### 组件设计
|
|
100
|
+
使用 frontend-expertise:
|
|
101
|
+
1. 设计数据获取层 (React Query/SWR)
|
|
102
|
+
2. 创建 API 客户端
|
|
103
|
+
3. 设计错误处理和重试逻辑
|
|
104
|
+
4. 实现加载状态
|
|
105
|
+
|
|
106
|
+
### 状态管理
|
|
107
|
+
使用 frontend-expertise:
|
|
108
|
+
1. 设计全局状态结构
|
|
109
|
+
2. 实现缓存策略
|
|
110
|
+
3. 处理乐观更新
|
|
111
|
+
4. 管理错误状态
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### 2.5 协作示例
|
|
115
|
+
|
|
116
|
+
```javascript
|
|
117
|
+
// 前端:使用 React Query + 后端 API
|
|
118
|
+
|
|
119
|
+
// 1. API 客户端 (由 backend-expertise 设计)
|
|
120
|
+
import { useQuery, useMutation } from '@tanstack/react-query';
|
|
121
|
+
|
|
122
|
+
const useUsers = () => {
|
|
123
|
+
return useQuery(
|
|
124
|
+
['users'],
|
|
125
|
+
() => fetch('/api/v1/users').then(r => r.json())
|
|
126
|
+
);
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
// 2. 优化策略 (由 frontend-expertise 优化)
|
|
130
|
+
const useUsers = () => {
|
|
131
|
+
return useQuery(
|
|
132
|
+
['users'],
|
|
133
|
+
() => fetch('/api/v1/users').then(r => r.json()),
|
|
134
|
+
{
|
|
135
|
+
staleTime: 5 * 60 * 1000, // 5 分钟缓存
|
|
136
|
+
retry: 3, // 失败重试 3 次
|
|
137
|
+
}
|
|
138
|
+
);
|
|
139
|
+
};
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## 3. 示例 2: Skill 链式工作流
|
|
145
|
+
|
|
146
|
+
### 3.1 场景
|
|
147
|
+
|
|
148
|
+
用户需要修复一个复杂的 Bug,涉及:
|
|
149
|
+
- Bug 定位和根因分析
|
|
150
|
+
- 修复方案设计和实现
|
|
151
|
+
- 代码审查和质量检查
|
|
152
|
+
- 测试用例编写和验证
|
|
153
|
+
|
|
154
|
+
### 3.2 涉及的 Skills
|
|
155
|
+
|
|
156
|
+
| Skill | 角色 | 关键产出 |
|
|
157
|
+
|--------|------|----------|
|
|
158
|
+
| `bug-fixing-expertise` | 根因分析、修复实现 | 5 Why 分析、修复方案 |
|
|
159
|
+
| `code-review-expertise` | 修复代码审查 | 审查报告、改进建议 |
|
|
160
|
+
| `frontend-expertise` | 前端测试 | 测试用例、自动化测试 |
|
|
161
|
+
| `backend-expertise` | 后端测试 | 测试用例、集成测试 |
|
|
162
|
+
|
|
163
|
+
### 3.3 Skill 链流程
|
|
164
|
+
|
|
165
|
+
```
|
|
166
|
+
┌─────────────────────────────────────────┐
|
|
167
|
+
│ Bug 修复 Skill 链 │
|
|
168
|
+
├─────────────────────────────────────────┤
|
|
169
|
+
│ │
|
|
170
|
+
│ Step 1: Bug 分析 │
|
|
171
|
+
│ └─ bug-fixing-expertise │
|
|
172
|
+
│ ├─ 5 Why 根因分析 │
|
|
173
|
+
│ ├─ 修复方案设计 │
|
|
174
|
+
│ └─ 影响分析 │
|
|
175
|
+
│ │
|
|
176
|
+
│ Step 2: 修复实现 │
|
|
177
|
+
│ └─ bug-fixing-expertise │
|
|
178
|
+
│ ├─ 实施修复代码 │
|
|
179
|
+
│ ├─ 添加回归测试 │
|
|
180
|
+
│ └─ 更新文档 │
|
|
181
|
+
│ │
|
|
182
|
+
│ Step 3: 代码审查 │
|
|
183
|
+
│ └─ code-review-expertise │
|
|
184
|
+
│ ├─ 审查修复质量 │
|
|
185
|
+
│ ├─ 检查安全性 │
|
|
186
|
+
│ └─ 验证测试覆盖 │
|
|
187
|
+
│ │
|
|
188
|
+
│ Step 4: 测试验证 │
|
|
189
|
+
│ ├─ frontend-expertise (前端测试) │
|
|
190
|
+
│ └─ backend-expertise (后端测试) │
|
|
191
|
+
│ │
|
|
192
|
+
│ Step 5: 知识沉淀 │
|
|
193
|
+
│ └─ bug-fixing-expertise │
|
|
194
|
+
│ ├─ 更新 Bug 知识库 │
|
|
195
|
+
│ └─ 提炼通用模式 │
|
|
196
|
+
│ │
|
|
197
|
+
└─────────────────────────────────────────┘
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
### 3.4 完整示例:API Bug 修复
|
|
201
|
+
|
|
202
|
+
#### Step 1: Bug 分析 (bug-fixing-expertise)
|
|
203
|
+
|
|
204
|
+
```
|
|
205
|
+
📝 Bug 报告:
|
|
206
|
+
用户反馈:分页数据不一致
|
|
207
|
+
|
|
208
|
+
🔍 5 Why 根因分析:
|
|
209
|
+
Why 1: 为什么显示数据不一致?
|
|
210
|
+
→ 前端和后端返回的数据格式不同
|
|
211
|
+
|
|
212
|
+
Why 2: 为什么格式不同?
|
|
213
|
+
→ 后端 API 返回嵌套结构,前端期望扁平
|
|
214
|
+
|
|
215
|
+
Why 3: 为什么后端返回嵌套?
|
|
216
|
+
→ 代码中使用了 ORM 的序列化方法
|
|
217
|
+
|
|
218
|
+
Why 4: 为什么使用了错误方法?
|
|
219
|
+
→ 开发者没有阅读 API 设计文档
|
|
220
|
+
|
|
221
|
+
Why 5: 如何根本解决?
|
|
222
|
+
→ 统一 API 响应格式,更新 API 文档,培训团队
|
|
223
|
+
|
|
224
|
+
📊 影响分析:
|
|
225
|
+
- 受影响的用户:所有使用该 API 的前端页面
|
|
226
|
+
- 影响范围:3 个主要功能模块
|
|
227
|
+
- 优先级:P0 (高优先级)
|
|
228
|
+
```
|
|
229
|
+
|
|
230
|
+
#### Step 2: 修复实现 (bug-fixing-expertise)
|
|
231
|
+
|
|
232
|
+
```python
|
|
233
|
+
# 后端修复:统一 API 响应格式
|
|
234
|
+
|
|
235
|
+
# 修复前 (错误的嵌套格式)
|
|
236
|
+
@router.get("/api/v1/users")
|
|
237
|
+
async def get_users():
|
|
238
|
+
users = db.query(User).all()
|
|
239
|
+
return {"data": {"users": users}} # 错误的嵌套
|
|
240
|
+
|
|
241
|
+
# 修复后 (扁平格式)
|
|
242
|
+
@router.get("/api/v1/users")
|
|
243
|
+
async def get_users():
|
|
244
|
+
users = db.query(User).all()
|
|
245
|
+
return {
|
|
246
|
+
"data": users, # 扁平数组
|
|
247
|
+
"meta": {
|
|
248
|
+
"total": len(users),
|
|
249
|
+
"page": 1
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
#### Step 3: 前端适配 (frontend-expertise)
|
|
255
|
+
|
|
256
|
+
```javascript
|
|
257
|
+
// 前端:使用新的扁平格式
|
|
258
|
+
|
|
259
|
+
import { useQuery } from '@tanstack/react-query';
|
|
260
|
+
|
|
261
|
+
const useUsers = () => {
|
|
262
|
+
return useQuery({
|
|
263
|
+
queryKey: ['users'],
|
|
264
|
+
queryFn: async () => {
|
|
265
|
+
const response = await fetch('/api/v1/users').then(r => r.json());
|
|
266
|
+
return response.data; // 直接使用 data
|
|
267
|
+
}
|
|
268
|
+
});
|
|
269
|
+
};
|
|
270
|
+
|
|
271
|
+
// 组件中使用
|
|
272
|
+
function UserList() {
|
|
273
|
+
const { data: users, isLoading, error } = useUsers();
|
|
274
|
+
|
|
275
|
+
if (isLoading) return <LoadingSpinner />;
|
|
276
|
+
if (error) return <ErrorMessage error={error} />;
|
|
277
|
+
|
|
278
|
+
return (
|
|
279
|
+
<ul>
|
|
280
|
+
{users.map(user => (
|
|
281
|
+
<li key={user.id}>{user.name}</li>
|
|
282
|
+
))}
|
|
283
|
+
</ul>
|
|
284
|
+
);
|
|
285
|
+
}
|
|
286
|
+
```
|
|
287
|
+
|
|
288
|
+
#### Step 4: 代码审查 (code-review-expertise)
|
|
289
|
+
|
|
290
|
+
```
|
|
291
|
+
📋 代码审查报告:
|
|
292
|
+
|
|
293
|
+
后端代码:
|
|
294
|
+
- ✅ API 响应格式统一
|
|
295
|
+
- ✅ 错误处理完善
|
|
296
|
+
- ⚠️ 建议添加分页参数验证
|
|
297
|
+
- ⚠️ 建议添加速率限制
|
|
298
|
+
|
|
299
|
+
前端代码:
|
|
300
|
+
- ✅ 正确使用新的 API 格式
|
|
301
|
+
- ✅ 错误处理完善
|
|
302
|
+
- ⚠️ 建议添加虚拟列表优化
|
|
303
|
+
- ⚠️ 建议添加分页组件
|
|
304
|
+
|
|
305
|
+
安全性检查:
|
|
306
|
+
- ✅ 无 SQL 注入风险
|
|
307
|
+
- ✅ 输入验证充分
|
|
308
|
+
- ✅ 错误信息不泄露敏感数据
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
#### Step 5: 测试验证 (frontend-expertise + backend-expertise)
|
|
312
|
+
|
|
313
|
+
```python
|
|
314
|
+
# 后端测试
|
|
315
|
+
def test_api_response_format():
|
|
316
|
+
response = client.get("/api/v1/users")
|
|
317
|
+
assert "data" in response.json()
|
|
318
|
+
assert isinstance(response.json()["data"], list)
|
|
319
|
+
assert "meta" in response.json()
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
```javascript
|
|
323
|
+
// 前端测试
|
|
324
|
+
describe('User API Integration', () => {
|
|
325
|
+
it('should fetch and display users', async () => {
|
|
326
|
+
render(<UserList />);
|
|
327
|
+
await waitFor(() => screen.getAllByText(/User \d+/));
|
|
328
|
+
expect(screen.getAllByText(/User \d+/)).toHaveLength(10);
|
|
329
|
+
});
|
|
330
|
+
|
|
331
|
+
it('should handle loading state', async () => {
|
|
332
|
+
const { result } = renderHook(() => useUsers());
|
|
333
|
+
expect(result.current.isLoading).toBe(true);
|
|
334
|
+
});
|
|
335
|
+
});
|
|
336
|
+
```
|
|
337
|
+
|
|
338
|
+
---
|
|
339
|
+
|
|
340
|
+
## 4. 示例 3: 全栈 Skill 集成
|
|
341
|
+
|
|
342
|
+
### 4.1 场景
|
|
343
|
+
|
|
344
|
+
从零开始开发一个完整的用户认证系统,涉及:
|
|
345
|
+
- 需求分析和设计
|
|
346
|
+
- 后端 API 开发
|
|
347
|
+
- 前端界面开发
|
|
348
|
+
- 安全实现
|
|
349
|
+
- 测试和部署
|
|
350
|
+
|
|
351
|
+
### 4.2 Skill 依赖图
|
|
352
|
+
|
|
353
|
+
```
|
|
354
|
+
┌─────────────┐
|
|
355
|
+
│ 项目启动 │
|
|
356
|
+
└──────┬──────┘
|
|
357
|
+
↓
|
|
358
|
+
┌────────────────┐
|
|
359
|
+
│ 领域专家化 │
|
|
360
|
+
│ (Step 0) │
|
|
361
|
+
└──────┬─────────┘
|
|
362
|
+
↓
|
|
363
|
+
┌────────────────────────┐
|
|
364
|
+
│ 技术架构设计 │
|
|
365
|
+
│ backend-expertise │
|
|
366
|
+
└──────┬─────────────┘
|
|
367
|
+
↓
|
|
368
|
+
┌───────────┬──────────┬────────┐
|
|
369
|
+
↓ ↓ ↓ ↓
|
|
370
|
+
┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐
|
|
371
|
+
│ 数据库 │ │ API │ │前端 │ │安全 │
|
|
372
|
+
│ 设计 │ │ 开发 │ │开发 │ │实现 │
|
|
373
|
+
└──────┘ └──────┘ └──────┘ └──────┘
|
|
374
|
+
↓
|
|
375
|
+
┌─────────────────────────────────────────┐
|
|
376
|
+
│ 集成测试与代码审查 │
|
|
377
|
+
│ (frontend + backend + security) │
|
|
378
|
+
└─────────────────────────────────────────┘
|
|
379
|
+
```
|
|
380
|
+
|
|
381
|
+
### 4.3 完整工作流
|
|
382
|
+
|
|
383
|
+
#### 阶段 1: 需求分析 (30 分钟)
|
|
384
|
+
|
|
385
|
+
```
|
|
386
|
+
使用 Skills: product-requirements, domain-expertise-protocol
|
|
387
|
+
|
|
388
|
+
1. 收集需求
|
|
389
|
+
- 用户注册、登录、密码重置
|
|
390
|
+
- OAuth 集成(Google, GitHub)
|
|
391
|
+
- JWT Token 管理
|
|
392
|
+
|
|
393
|
+
2. 设计系统架构
|
|
394
|
+
- 使用 backend-expertise 设计 API 架构
|
|
395
|
+
- 使用 frontend-expertise 设计前端架构
|
|
396
|
+
- 使用 security-expertise 设计安全策略
|
|
397
|
+
|
|
398
|
+
3. 输出产物
|
|
399
|
+
- 需求文档
|
|
400
|
+
- API 设计文档
|
|
401
|
+
- 安全需求文档
|
|
402
|
+
```
|
|
403
|
+
|
|
404
|
+
#### 阶段 2: 后端开发 (2 小时)
|
|
405
|
+
|
|
406
|
+
```
|
|
407
|
+
使用 Skills: backend-expertise, api-design-reviewer, security-expertise
|
|
408
|
+
|
|
409
|
+
1. 数据库设计
|
|
410
|
+
- Users 表(包含 OAuth 信息)
|
|
411
|
+
- Sessions 表(Token 管理)
|
|
412
|
+
- 使用 database-expertise 优化索引
|
|
413
|
+
|
|
414
|
+
2. API 实现
|
|
415
|
+
- 注册、登录、注销端点
|
|
416
|
+
- OAuth 回调处理
|
|
417
|
+
- JWT Token 生成和验证
|
|
418
|
+
|
|
419
|
+
3. 安全实现
|
|
420
|
+
- 密码哈希(bcrypt/argon2)
|
|
421
|
+
- JWT 签名和验证
|
|
422
|
+
- Rate Limiting 防暴力破解
|
|
423
|
+
- HTTPS 强制
|
|
424
|
+
|
|
425
|
+
4. API 文档编写
|
|
426
|
+
- OpenAPI/Swagger 规范
|
|
427
|
+
- 使用 api-design-reviewer 审查
|
|
428
|
+
```
|
|
429
|
+
|
|
430
|
+
#### 阶段 3: 前端开发 (3 小时)
|
|
431
|
+
|
|
432
|
+
```
|
|
433
|
+
使用 Skills: frontend-expertise, backend-expertise (用于理解 API)
|
|
434
|
+
|
|
435
|
+
1. 认证组件开发
|
|
436
|
+
- 登录表单
|
|
437
|
+
- 注册表单
|
|
438
|
+
- 密码重置表单
|
|
439
|
+
- OAuth 按钮集成
|
|
440
|
+
|
|
441
|
+
2. 状态管理
|
|
442
|
+
- 认证状态(已登录/未登录)
|
|
443
|
+
- 用户信息状态
|
|
444
|
+
- Token 管理状态
|
|
445
|
+
|
|
446
|
+
3. API 集成
|
|
447
|
+
- API 客户端封装
|
|
448
|
+
- 错误处理和重试
|
|
449
|
+
- Token 自动刷新
|
|
450
|
+
|
|
451
|
+
4. 路由和导航
|
|
452
|
+
- 受保护路由配置
|
|
453
|
+
- 重定向逻辑
|
|
454
|
+
```
|
|
455
|
+
|
|
456
|
+
#### 阶段 4: 测试与审查 (1 小时)
|
|
457
|
+
|
|
458
|
+
```
|
|
459
|
+
使用 Skills: testing-patterns, code-review-expertise, security-expertise
|
|
460
|
+
|
|
461
|
+
1. 安全测试
|
|
462
|
+
- SQL 注入测试
|
|
463
|
+
- XSS 攻击测试
|
|
464
|
+
- CSRF 防护测试
|
|
465
|
+
- Rate Limiting 验证
|
|
466
|
+
|
|
467
|
+
2. 功能测试
|
|
468
|
+
- 登录流程端到端测试
|
|
469
|
+
- Token 刷新测试
|
|
470
|
+
- OAuth 回调测试
|
|
471
|
+
|
|
472
|
+
3. 性能测试
|
|
473
|
+
- API 响应时间
|
|
474
|
+
- 前端渲染性能
|
|
475
|
+
|
|
476
|
+
4. 代码审查
|
|
477
|
+
- 后端代码审查 (backend-expertise + code-review)
|
|
478
|
+
- 前端代码审查 (frontend-expertise + code-review)
|
|
479
|
+
- 安全代码审查 (security-expertise)
|
|
480
|
+
```
|
|
481
|
+
|
|
482
|
+
### 4.4 技术栈推荐
|
|
483
|
+
|
|
484
|
+
| 层级 | 推荐技术 | 对应 Skill |
|
|
485
|
+
|------|----------|------------|
|
|
486
|
+
| 后端框架 | FastAPI, Django | backend-expertise |
|
|
487
|
+
| 数据库 | PostgreSQL | database-expertise |
|
|
488
|
+
| 认证 | JWT, OAuth 2.0 | security-expertise |
|
|
489
|
+
| 前端框架 | React, Next.js | frontend-expertise |
|
|
490
|
+
| 状态管理 | Zustand, TanStack Query | frontend-expertise |
|
|
491
|
+
| 表单 | React Hook Form, Zod | frontend-expertise |
|
|
492
|
+
| 测试 | Jest, Playwright, pytest | testing-patterns |
|
|
493
|
+
|
|
494
|
+
---
|
|
495
|
+
|
|
496
|
+
## 5. Skill 依赖管理
|
|
497
|
+
|
|
498
|
+
### 5.1 依赖声明
|
|
499
|
+
|
|
500
|
+
在 SKILL.md frontmatter 中声明依赖:
|
|
501
|
+
|
|
502
|
+
```yaml
|
|
503
|
+
---
|
|
504
|
+
name: my-complex-skill
|
|
505
|
+
description: |
|
|
506
|
+
Complex skill that depends on backend-expertise and frontend-expertise.
|
|
507
|
+
|
|
508
|
+
Use when building full-stack features requiring both backend and frontend expertise.
|
|
509
|
+
|
|
510
|
+
Dependencies: backend-expertise, frontend-expertise
|
|
511
|
+
|
|
512
|
+
required-skills:
|
|
513
|
+
- backend-expertise
|
|
514
|
+
- frontend-expertise
|
|
515
|
+
---
|
|
516
|
+
```
|
|
517
|
+
|
|
518
|
+
### 5.2 依赖检查
|
|
519
|
+
|
|
520
|
+
在 Skill 执行前检查依赖是否可用:
|
|
521
|
+
|
|
522
|
+
```python
|
|
523
|
+
def check_skill_dependencies(required_skills: List[str]) -> bool:
|
|
524
|
+
"""检查依赖 Skill 是否可用"""
|
|
525
|
+
for skill in required_skills:
|
|
526
|
+
skill_path = Path(f".claude/skills/{skill}/SKILL.md")
|
|
527
|
+
if not skill_path.exists():
|
|
528
|
+
print(f"❌ Missing dependency: {skill}")
|
|
529
|
+
return False
|
|
530
|
+
return True
|
|
531
|
+
```
|
|
532
|
+
|
|
533
|
+
### 5.3 依赖调用示例
|
|
534
|
+
|
|
535
|
+
```python
|
|
536
|
+
# 在 Skill 中调用其他 Skill
|
|
537
|
+
|
|
538
|
+
def my_complex_skill():
|
|
539
|
+
# 检查依赖
|
|
540
|
+
if not check_skill_dependencies(["backend-expertise", "frontend-expertise"]):
|
|
541
|
+
return {"error": "Missing dependencies"}
|
|
542
|
+
|
|
543
|
+
# 调用 backend-expertise
|
|
544
|
+
backend_advice = use_backend_expertise_for_api_design()
|
|
545
|
+
|
|
546
|
+
# 调用 frontend-expertise
|
|
547
|
+
frontend_advice = use_frontend_expertise_for_integration()
|
|
548
|
+
|
|
549
|
+
# 结合两个 Skill 的建议
|
|
550
|
+
return {
|
|
551
|
+
"backend": backend_advice,
|
|
552
|
+
"frontend": frontend_advice,
|
|
553
|
+
"integrated_plan": merge_advices(backend_advice, frontend_advice)
|
|
554
|
+
}
|
|
555
|
+
```
|
|
556
|
+
|
|
557
|
+
---
|
|
558
|
+
|
|
559
|
+
## 6. 最佳实践
|
|
560
|
+
|
|
561
|
+
### 6.1 Skill 组合原则
|
|
562
|
+
|
|
563
|
+
| 原则 | 说明 | 示例 |
|
|
564
|
+
|------|------|------|
|
|
565
|
+
| **单一职责** | 每个 Skill 专注一个领域 | `backend-expertise` 负责后端,不涉及前端 |
|
|
566
|
+
| **高内聚低耦合** | 相关 Skill 之间协作紧密 | `bug-fixing` 和 `code-review` 可以结合使用 |
|
|
567
|
+
| **避免循环依赖** | A → B → A 会造成循环 | 避免 `skill-a` 依赖 `skill-b`,`skill-b` 依赖 `skill-a` |
|
|
568
|
+
| **接口清晰** | Skill 之间通过明确的接口交互 | 使用标准的 API 响应格式 |
|
|
569
|
+
|
|
570
|
+
### 6.2 工作流设计
|
|
571
|
+
|
|
572
|
+
```
|
|
573
|
+
良好的 Skill 组合工作流:
|
|
574
|
+
|
|
575
|
+
1. 明确主 Skill 和辅助 Skill
|
|
576
|
+
- 主 Skill: 负责主要流程
|
|
577
|
+
- 辅助 Skill: 提供特定领域的专业知识
|
|
578
|
+
|
|
579
|
+
2. 定义清晰的输入输出接口
|
|
580
|
+
- 主 Skill 提供领域信息给辅助 Skill
|
|
581
|
+
- 辅助 Skill 返回专业建议给主 Skill
|
|
582
|
+
|
|
583
|
+
3. 使用渐进式披露
|
|
584
|
+
- 主 SKILL.md 简洁描述主要流程
|
|
585
|
+
- 详细专业知识在 references/
|
|
586
|
+
|
|
587
|
+
4. 添加知识共享机制
|
|
588
|
+
- 使用共享的领域知识库
|
|
589
|
+
- 更新共同的 references 文档
|
|
590
|
+
```
|
|
591
|
+
|
|
592
|
+
### 6.3 错误处理
|
|
593
|
+
|
|
594
|
+
```python
|
|
595
|
+
# Skill 调用失败时的优雅降级
|
|
596
|
+
|
|
597
|
+
def execute_with_fallback(primary_skill: str, fallback_skill: str, context: dict):
|
|
598
|
+
"""主要 Skill 失败时使用备用 Skill"""
|
|
599
|
+
try:
|
|
600
|
+
result = execute_primary_skill(primary_skill, context)
|
|
601
|
+
return {"source": primary_skill, "result": result}
|
|
602
|
+
except Exception as e:
|
|
603
|
+
print(f"⚠️ Primary skill {primary_skill} failed: {e}")
|
|
604
|
+
result = execute_fallback_skill(fallback_skill, context)
|
|
605
|
+
return {"source": fallback_skill, "result": result, "warning": "Used fallback"}
|
|
606
|
+
```
|
|
607
|
+
|
|
608
|
+
### 6.4 文档管理
|
|
609
|
+
|
|
610
|
+
```
|
|
611
|
+
推荐的项目文档结构:
|
|
612
|
+
|
|
613
|
+
project/
|
|
614
|
+
├── .claude/skills/
|
|
615
|
+
│ ├── my-complex-skill/
|
|
616
|
+
│ │ ├── SKILL.md
|
|
617
|
+
│ │ ├── references/
|
|
618
|
+
│ │ │ ├── backend-advice.md (从 backend-expertise 提取)
|
|
619
|
+
│ │ │ ├── frontend-advice.md (从 frontend-expertise 提取)
|
|
620
|
+
│ │ │ └── integration-notes.md
|
|
621
|
+
│ ├── backend-expertise/ (依赖 Skill)
|
|
622
|
+
│ └── frontend-expertise/ (依赖 Skill)
|
|
623
|
+
```
|
|
624
|
+
```
|
|
625
|
+
|
|
626
|
+
---
|
|
627
|
+
|
|
628
|
+
## 7. 总结
|
|
629
|
+
|
|
630
|
+
### 7.1 关键要点
|
|
631
|
+
|
|
632
|
+
1. **Skill 组合可以解决复杂问题** - 前后端协作、全栈开发等
|
|
633
|
+
2. **需要清晰的接口和责任分工** - 每个 Skill 负责特定领域
|
|
634
|
+
3. **共享领域知识库提高效率** - 避免重复研究
|
|
635
|
+
4. **渐进式披露保持简洁性** - 主 SKILL.md 简洁,详细信息在 references/
|
|
636
|
+
5. **优雅的错误处理和回退机制** - 一个 Skill 失败不影响整体流程
|
|
637
|
+
|
|
638
|
+
### 7.2 适用场景
|
|
639
|
+
|
|
640
|
+
| 场景 | 推荐的 Skill 组合 |
|
|
641
|
+
|------|----------------------|
|
|
642
|
+
| 前端 + 后端开发 | `frontend-expertise` + `backend-expertise` + `api-design-reviewer` |
|
|
643
|
+
| Bug 修复流程 | `bug-fixing-expertise` + `code-review-expertise` + `testing-patterns` |
|
|
644
|
+
| 全栈功能开发 | `product-requirements` + 所有领域专家 Skills |
|
|
645
|
+
| 代码质量改进 | `code-review-expertise` + `testing-patterns` + 具体领域 Skills |
|
|
646
|
+
| 安全审计 | `security-expertise` + `code-review-expertise` |
|
|
647
|
+
|
|
648
|
+
---
|
|
649
|
+
|
|
650
|
+
## 参考资料
|
|
651
|
+
|
|
652
|
+
- [Domain Expertise Protocol](domain-expertise-protocol.md) - 领域专家化流程
|
|
653
|
+
- [Skill Knowledge Base](skills-knowledge-base.md) - Skill 知识库
|
|
654
|
+
- [Skill Templates](skill-templates.md) - Skill 模板
|
|
655
|
+
- [Official Best Practices](official-best-practices.md) - 官方最佳实践
|