oh-my-customcode 0.1.2 → 0.1.4

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.
Files changed (233) hide show
  1. package/README.md +45 -32
  2. package/dist/cli/index.js +12 -20
  3. package/dist/index.js +3 -3
  4. package/package.json +2 -2
  5. package/templates/.claude/rules/MUST-orchestrator-coordination.md +68 -0
  6. package/templates/.claude/rules/MUST-parallel-execution.md +66 -9
  7. package/templates/.claude/rules/MUST-tool-identification.md +79 -17
  8. package/templates/.claude/rules/SHOULD-hud-statusline.md +8 -1
  9. package/templates/agents/index.yaml +6 -0
  10. package/templates/agents/infra-engineer/aws-expert/refs/aws/common-patterns.md +169 -0
  11. package/templates/agents/infra-engineer/aws-expert/refs/aws/index.yaml +26 -0
  12. package/templates/agents/infra-engineer/aws-expert/refs/aws/well-architected.md +143 -0
  13. package/templates/agents/infra-engineer/aws-expert/refs/aws-best-practices/SKILL.md +279 -0
  14. package/templates/agents/infra-engineer/aws-expert/refs/aws-best-practices/index.yaml +27 -0
  15. package/templates/agents/infra-engineer/docker-expert/refs/docker/compose-best-practices.md +284 -0
  16. package/templates/agents/infra-engineer/docker-expert/refs/docker/dockerfile-best-practices.md +262 -0
  17. package/templates/agents/infra-engineer/docker-expert/refs/docker/index.yaml +26 -0
  18. package/templates/agents/infra-engineer/docker-expert/refs/docker-best-practices/SKILL.md +274 -0
  19. package/templates/agents/infra-engineer/docker-expert/refs/docker-best-practices/index.yaml +26 -0
  20. package/templates/agents/manager/creator/refs/rules/MAY-optimization.md +93 -0
  21. package/templates/agents/manager/creator/refs/rules/MUST-agent-design.md +107 -0
  22. package/templates/agents/manager/creator/refs/rules/MUST-agent-identification.md +108 -0
  23. package/templates/agents/manager/creator/refs/rules/MUST-continuous-improvement.md +132 -0
  24. package/templates/agents/manager/creator/refs/rules/MUST-intent-transparency.md +199 -0
  25. package/templates/agents/manager/creator/refs/rules/MUST-language-policy.md +62 -0
  26. package/templates/agents/manager/creator/refs/rules/MUST-orchestrator-coordination.md +334 -0
  27. package/templates/agents/manager/creator/refs/rules/MUST-parallel-execution.md +398 -0
  28. package/templates/agents/manager/creator/refs/rules/MUST-permissions.md +84 -0
  29. package/templates/agents/manager/creator/refs/rules/MUST-safety.md +69 -0
  30. package/templates/agents/manager/creator/refs/rules/MUST-sync-verification.md +219 -0
  31. package/templates/agents/manager/creator/refs/rules/MUST-tool-identification.md +174 -0
  32. package/templates/agents/manager/creator/refs/rules/SHOULD-ecomode.md +145 -0
  33. package/templates/agents/manager/creator/refs/rules/SHOULD-error-handling.md +102 -0
  34. package/templates/agents/manager/creator/refs/rules/SHOULD-hud-statusline.md +96 -0
  35. package/templates/agents/manager/creator/refs/rules/SHOULD-interaction.md +103 -0
  36. package/templates/agents/manager/creator/refs/rules/SHOULD-memory-integration.md +114 -0
  37. package/templates/agents/manager/creator/refs/rules/SHOULD-pipeline-mode.md +165 -0
  38. package/templates/agents/manager/creator/refs/rules/index.yaml +125 -0
  39. package/templates/agents/manager/supplier/refs/guides/aws/common-patterns.md +169 -0
  40. package/templates/agents/manager/supplier/refs/guides/aws/index.yaml +26 -0
  41. package/templates/agents/manager/supplier/refs/guides/aws/well-architected.md +143 -0
  42. package/templates/agents/manager/supplier/refs/guides/claude-code/01-overview.md +42 -0
  43. package/templates/agents/manager/supplier/refs/guides/claude-code/03-tools.md +107 -0
  44. package/templates/agents/manager/supplier/refs/guides/claude-code/04-agent-skills.md +90 -0
  45. package/templates/agents/manager/supplier/refs/guides/claude-code/05-agent-sdk.md +129 -0
  46. package/templates/agents/manager/supplier/refs/guides/claude-code/06-mcp.md +165 -0
  47. package/templates/agents/manager/supplier/refs/guides/claude-code/07-prompt-engineering.md +100 -0
  48. package/templates/agents/manager/supplier/refs/guides/claude-code/08-testing.md +58 -0
  49. package/templates/agents/manager/supplier/refs/guides/claude-code/09-guardrails.md +80 -0
  50. package/templates/agents/manager/supplier/refs/guides/claude-code/10-monitoring.md +89 -0
  51. package/templates/agents/manager/supplier/refs/guides/claude-code/11-sub-agents.md +159 -0
  52. package/templates/agents/manager/supplier/refs/guides/claude-code/index.yaml +51 -0
  53. package/templates/agents/manager/supplier/refs/guides/docker/compose-best-practices.md +284 -0
  54. package/templates/agents/manager/supplier/refs/guides/docker/dockerfile-best-practices.md +262 -0
  55. package/templates/agents/manager/supplier/refs/guides/docker/index.yaml +26 -0
  56. package/templates/agents/manager/supplier/refs/guides/fastapi/best-practices.md +232 -0
  57. package/templates/agents/manager/supplier/refs/guides/fastapi/index.yaml +21 -0
  58. package/templates/agents/manager/supplier/refs/guides/go-backend/index.yaml +26 -0
  59. package/templates/agents/manager/supplier/refs/guides/go-backend/project-layout.md +243 -0
  60. package/templates/agents/manager/supplier/refs/guides/go-backend/uber-style.md +212 -0
  61. package/templates/agents/manager/supplier/refs/guides/golang/concurrency.md +282 -0
  62. package/templates/agents/manager/supplier/refs/guides/golang/effective-go.md +309 -0
  63. package/templates/agents/manager/supplier/refs/guides/golang/error-handling.md +250 -0
  64. package/templates/agents/manager/supplier/refs/guides/golang/index.yaml +27 -0
  65. package/templates/agents/manager/supplier/refs/guides/index.yaml +101 -0
  66. package/templates/agents/manager/supplier/refs/guides/kotlin/coding-conventions.md +247 -0
  67. package/templates/agents/manager/supplier/refs/guides/kotlin/idioms.md +234 -0
  68. package/templates/agents/manager/supplier/refs/guides/kotlin/index.yaml +26 -0
  69. package/templates/agents/manager/supplier/refs/guides/python/index.yaml +26 -0
  70. package/templates/agents/manager/supplier/refs/guides/python/pep8-style-guide.md +202 -0
  71. package/templates/agents/manager/supplier/refs/guides/python/zen-of-python.md +79 -0
  72. package/templates/agents/manager/supplier/refs/guides/rust/error-handling.md +262 -0
  73. package/templates/agents/manager/supplier/refs/guides/rust/index.yaml +26 -0
  74. package/templates/agents/manager/supplier/refs/guides/rust/ownership.md +180 -0
  75. package/templates/agents/manager/supplier/refs/guides/springboot/best-practices.md +361 -0
  76. package/templates/agents/manager/supplier/refs/guides/springboot/index.yaml +22 -0
  77. package/templates/agents/manager/supplier/refs/guides/typescript/advanced-types.md +225 -0
  78. package/templates/agents/manager/supplier/refs/guides/typescript/index.yaml +26 -0
  79. package/templates/agents/manager/supplier/refs/guides/typescript/type-system.md +219 -0
  80. package/templates/agents/manager/supplier/refs/guides/web-design/accessibility.md +66 -0
  81. package/templates/agents/manager/supplier/refs/guides/web-design/index.yaml +20 -0
  82. package/templates/agents/manager/supplier/refs/guides/web-design/performance.md +102 -0
  83. package/templates/agents/manager/supplier/refs/rules/MAY-optimization.md +93 -0
  84. package/templates/agents/manager/supplier/refs/rules/MUST-agent-design.md +107 -0
  85. package/templates/agents/manager/supplier/refs/rules/MUST-agent-identification.md +108 -0
  86. package/templates/agents/manager/supplier/refs/rules/MUST-continuous-improvement.md +132 -0
  87. package/templates/agents/manager/supplier/refs/rules/MUST-intent-transparency.md +199 -0
  88. package/templates/agents/manager/supplier/refs/rules/MUST-language-policy.md +62 -0
  89. package/templates/agents/manager/supplier/refs/rules/MUST-orchestrator-coordination.md +334 -0
  90. package/templates/agents/manager/supplier/refs/rules/MUST-parallel-execution.md +398 -0
  91. package/templates/agents/manager/supplier/refs/rules/MUST-permissions.md +84 -0
  92. package/templates/agents/manager/supplier/refs/rules/MUST-safety.md +69 -0
  93. package/templates/agents/manager/supplier/refs/rules/MUST-sync-verification.md +219 -0
  94. package/templates/agents/manager/supplier/refs/rules/MUST-tool-identification.md +174 -0
  95. package/templates/agents/manager/supplier/refs/rules/SHOULD-ecomode.md +145 -0
  96. package/templates/agents/manager/supplier/refs/rules/SHOULD-error-handling.md +102 -0
  97. package/templates/agents/manager/supplier/refs/rules/SHOULD-hud-statusline.md +96 -0
  98. package/templates/agents/manager/supplier/refs/rules/SHOULD-interaction.md +103 -0
  99. package/templates/agents/manager/supplier/refs/rules/SHOULD-memory-integration.md +114 -0
  100. package/templates/agents/manager/supplier/refs/rules/SHOULD-pipeline-mode.md +165 -0
  101. package/templates/agents/manager/supplier/refs/rules/index.yaml +125 -0
  102. package/templates/agents/manager/supplier/refs/skills/backend/fastapi-best-practices/SKILL.md +269 -0
  103. package/templates/agents/manager/supplier/refs/skills/backend/fastapi-best-practices/index.yaml +25 -0
  104. package/templates/agents/manager/supplier/refs/skills/backend/go-backend-best-practices/SKILL.md +337 -0
  105. package/templates/agents/manager/supplier/refs/skills/backend/go-backend-best-practices/index.yaml +26 -0
  106. package/templates/agents/manager/supplier/refs/skills/backend/springboot-best-practices/SKILL.md +356 -0
  107. package/templates/agents/manager/supplier/refs/skills/backend/springboot-best-practices/index.yaml +27 -0
  108. package/templates/agents/manager/supplier/refs/skills/development/go-best-practices/SKILL.md +202 -0
  109. package/templates/agents/manager/supplier/refs/skills/development/go-best-practices/index.yaml +25 -0
  110. package/templates/agents/manager/supplier/refs/skills/development/kotlin-best-practices/SKILL.md +255 -0
  111. package/templates/agents/manager/supplier/refs/skills/development/kotlin-best-practices/index.yaml +27 -0
  112. package/templates/agents/manager/supplier/refs/skills/development/python-best-practices/SKILL.md +221 -0
  113. package/templates/agents/manager/supplier/refs/skills/development/python-best-practices/index.yaml +25 -0
  114. package/templates/agents/manager/supplier/refs/skills/development/react-best-practices/SKILL.md +100 -0
  115. package/templates/agents/manager/supplier/refs/skills/development/react-best-practices/index.yaml +39 -0
  116. package/templates/agents/manager/supplier/refs/skills/development/rust-best-practices/SKILL.md +266 -0
  117. package/templates/agents/manager/supplier/refs/skills/development/rust-best-practices/index.yaml +26 -0
  118. package/templates/agents/manager/supplier/refs/skills/development/typescript-best-practices/SKILL.md +320 -0
  119. package/templates/agents/manager/supplier/refs/skills/development/typescript-best-practices/index.yaml +28 -0
  120. package/templates/agents/manager/supplier/refs/skills/development/vercel-deploy/SKILL.md +73 -0
  121. package/templates/agents/manager/supplier/refs/skills/development/vercel-deploy/index.yaml +30 -0
  122. package/templates/agents/manager/supplier/refs/skills/development/web-design-guidelines/SKILL.md +117 -0
  123. package/templates/agents/manager/supplier/refs/skills/development/web-design-guidelines/index.yaml +34 -0
  124. package/templates/agents/manager/supplier/refs/skills/index.yaml +129 -0
  125. package/templates/agents/manager/supplier/refs/skills/infrastructure/aws-best-practices/SKILL.md +279 -0
  126. package/templates/agents/manager/supplier/refs/skills/infrastructure/aws-best-practices/index.yaml +27 -0
  127. package/templates/agents/manager/supplier/refs/skills/infrastructure/docker-best-practices/SKILL.md +274 -0
  128. package/templates/agents/manager/supplier/refs/skills/infrastructure/docker-best-practices/index.yaml +26 -0
  129. package/templates/agents/manager/supplier/refs/skills/orchestration/intent-detection/SKILL.md +214 -0
  130. package/templates/agents/manager/supplier/refs/skills/orchestration/intent-detection/index.yaml +30 -0
  131. package/templates/agents/manager/supplier/refs/skills/orchestration/intent-detection/patterns/agent-triggers.yaml +342 -0
  132. package/templates/agents/manager/supplier/refs/skills/orchestration/pipeline-execution/SKILL.md +188 -0
  133. package/templates/agents/manager/supplier/refs/skills/orchestration/pipeline-execution/index.yaml +27 -0
  134. package/templates/agents/manager/supplier/refs/skills/system/memory-management/SKILL.md +194 -0
  135. package/templates/agents/manager/supplier/refs/skills/system/memory-management/index.yaml +30 -0
  136. package/templates/agents/manager/supplier/refs/skills/system/result-aggregation/SKILL.md +163 -0
  137. package/templates/agents/manager/supplier/refs/skills/system/result-aggregation/index.yaml +36 -0
  138. package/templates/agents/manager/updater/refs/rules/MAY-optimization.md +93 -0
  139. package/templates/agents/manager/updater/refs/rules/MUST-agent-design.md +107 -0
  140. package/templates/agents/manager/updater/refs/rules/MUST-agent-identification.md +108 -0
  141. package/templates/agents/manager/updater/refs/rules/MUST-continuous-improvement.md +132 -0
  142. package/templates/agents/manager/updater/refs/rules/MUST-intent-transparency.md +199 -0
  143. package/templates/agents/manager/updater/refs/rules/MUST-language-policy.md +62 -0
  144. package/templates/agents/manager/updater/refs/rules/MUST-orchestrator-coordination.md +334 -0
  145. package/templates/agents/manager/updater/refs/rules/MUST-parallel-execution.md +398 -0
  146. package/templates/agents/manager/updater/refs/rules/MUST-permissions.md +84 -0
  147. package/templates/agents/manager/updater/refs/rules/MUST-safety.md +69 -0
  148. package/templates/agents/manager/updater/refs/rules/MUST-sync-verification.md +219 -0
  149. package/templates/agents/manager/updater/refs/rules/MUST-tool-identification.md +174 -0
  150. package/templates/agents/manager/updater/refs/rules/SHOULD-ecomode.md +145 -0
  151. package/templates/agents/manager/updater/refs/rules/SHOULD-error-handling.md +102 -0
  152. package/templates/agents/manager/updater/refs/rules/SHOULD-hud-statusline.md +96 -0
  153. package/templates/agents/manager/updater/refs/rules/SHOULD-interaction.md +103 -0
  154. package/templates/agents/manager/updater/refs/rules/SHOULD-memory-integration.md +114 -0
  155. package/templates/agents/manager/updater/refs/rules/SHOULD-pipeline-mode.md +165 -0
  156. package/templates/agents/manager/updater/refs/rules/index.yaml +125 -0
  157. package/templates/agents/orchestrator/dev-lead/AGENT.md +47 -0
  158. package/templates/agents/orchestrator/secretary/AGENT.md +49 -0
  159. package/templates/agents/orchestrator/secretary/refs/rules/MAY-optimization.md +93 -0
  160. package/templates/agents/orchestrator/secretary/refs/rules/MUST-agent-design.md +107 -0
  161. package/templates/agents/orchestrator/secretary/refs/rules/MUST-agent-identification.md +108 -0
  162. package/templates/agents/orchestrator/secretary/refs/rules/MUST-continuous-improvement.md +132 -0
  163. package/templates/agents/orchestrator/secretary/refs/rules/MUST-intent-transparency.md +199 -0
  164. package/templates/agents/orchestrator/secretary/refs/rules/MUST-language-policy.md +62 -0
  165. package/templates/agents/orchestrator/secretary/refs/rules/MUST-orchestrator-coordination.md +334 -0
  166. package/templates/agents/orchestrator/secretary/refs/rules/MUST-parallel-execution.md +398 -0
  167. package/templates/agents/orchestrator/secretary/refs/rules/MUST-permissions.md +84 -0
  168. package/templates/agents/orchestrator/secretary/refs/rules/MUST-safety.md +69 -0
  169. package/templates/agents/orchestrator/secretary/refs/rules/MUST-sync-verification.md +219 -0
  170. package/templates/agents/orchestrator/secretary/refs/rules/MUST-tool-identification.md +174 -0
  171. package/templates/agents/orchestrator/secretary/refs/rules/SHOULD-ecomode.md +145 -0
  172. package/templates/agents/orchestrator/secretary/refs/rules/SHOULD-error-handling.md +102 -0
  173. package/templates/agents/orchestrator/secretary/refs/rules/SHOULD-hud-statusline.md +96 -0
  174. package/templates/agents/orchestrator/secretary/refs/rules/SHOULD-interaction.md +103 -0
  175. package/templates/agents/orchestrator/secretary/refs/rules/SHOULD-memory-integration.md +114 -0
  176. package/templates/agents/orchestrator/secretary/refs/rules/SHOULD-pipeline-mode.md +165 -0
  177. package/templates/agents/orchestrator/secretary/refs/rules/index.yaml +125 -0
  178. package/templates/agents/sw-engineer/backend/fastapi-expert/refs/fastapi/best-practices.md +232 -0
  179. package/templates/agents/sw-engineer/backend/fastapi-expert/refs/fastapi/index.yaml +21 -0
  180. package/templates/agents/sw-engineer/backend/fastapi-expert/refs/fastapi-best-practices/SKILL.md +269 -0
  181. package/templates/agents/sw-engineer/backend/fastapi-expert/refs/fastapi-best-practices/index.yaml +25 -0
  182. package/templates/agents/sw-engineer/backend/go-backend-expert/refs/go-backend/index.yaml +26 -0
  183. package/templates/agents/sw-engineer/backend/go-backend-expert/refs/go-backend/project-layout.md +243 -0
  184. package/templates/agents/sw-engineer/backend/go-backend-expert/refs/go-backend/uber-style.md +212 -0
  185. package/templates/agents/sw-engineer/backend/go-backend-expert/refs/go-backend-best-practices/SKILL.md +337 -0
  186. package/templates/agents/sw-engineer/backend/go-backend-expert/refs/go-backend-best-practices/index.yaml +26 -0
  187. package/templates/agents/sw-engineer/backend/springboot-expert/refs/springboot/best-practices.md +361 -0
  188. package/templates/agents/sw-engineer/backend/springboot-expert/refs/springboot/index.yaml +22 -0
  189. package/templates/agents/sw-engineer/backend/springboot-expert/refs/springboot-best-practices/SKILL.md +356 -0
  190. package/templates/agents/sw-engineer/backend/springboot-expert/refs/springboot-best-practices/index.yaml +27 -0
  191. package/templates/agents/sw-engineer/frontend/vercel-agent/refs/react-best-practices/SKILL.md +100 -0
  192. package/templates/agents/sw-engineer/frontend/vercel-agent/refs/react-best-practices/index.yaml +39 -0
  193. package/templates/agents/sw-engineer/frontend/vercel-agent/refs/vercel-deploy/SKILL.md +73 -0
  194. package/templates/agents/sw-engineer/frontend/vercel-agent/refs/vercel-deploy/index.yaml +30 -0
  195. package/templates/agents/sw-engineer/frontend/vercel-agent/refs/web-design/accessibility.md +66 -0
  196. package/templates/agents/sw-engineer/frontend/vercel-agent/refs/web-design/index.yaml +20 -0
  197. package/templates/agents/sw-engineer/frontend/vercel-agent/refs/web-design/performance.md +102 -0
  198. package/templates/agents/sw-engineer/frontend/vercel-agent/refs/web-design-guidelines/SKILL.md +117 -0
  199. package/templates/agents/sw-engineer/frontend/vercel-agent/refs/web-design-guidelines/index.yaml +34 -0
  200. package/templates/agents/sw-engineer/language/golang-expert/refs/go-best-practices/SKILL.md +202 -0
  201. package/templates/agents/sw-engineer/language/golang-expert/refs/go-best-practices/index.yaml +25 -0
  202. package/templates/agents/sw-engineer/language/golang-expert/refs/golang/concurrency.md +282 -0
  203. package/templates/agents/sw-engineer/language/golang-expert/refs/golang/effective-go.md +309 -0
  204. package/templates/agents/sw-engineer/language/golang-expert/refs/golang/error-handling.md +250 -0
  205. package/templates/agents/sw-engineer/language/golang-expert/refs/golang/index.yaml +27 -0
  206. package/templates/agents/sw-engineer/language/kotlin-expert/refs/kotlin/coding-conventions.md +247 -0
  207. package/templates/agents/sw-engineer/language/kotlin-expert/refs/kotlin/idioms.md +234 -0
  208. package/templates/agents/sw-engineer/language/kotlin-expert/refs/kotlin/index.yaml +26 -0
  209. package/templates/agents/sw-engineer/language/kotlin-expert/refs/kotlin-best-practices/SKILL.md +255 -0
  210. package/templates/agents/sw-engineer/language/kotlin-expert/refs/kotlin-best-practices/index.yaml +27 -0
  211. package/templates/agents/sw-engineer/language/python-expert/refs/python/index.yaml +26 -0
  212. package/templates/agents/sw-engineer/language/python-expert/refs/python/pep8-style-guide.md +202 -0
  213. package/templates/agents/sw-engineer/language/python-expert/refs/python/zen-of-python.md +79 -0
  214. package/templates/agents/sw-engineer/language/python-expert/refs/python-best-practices/SKILL.md +221 -0
  215. package/templates/agents/sw-engineer/language/python-expert/refs/python-best-practices/index.yaml +25 -0
  216. package/templates/agents/sw-engineer/language/rust-expert/refs/rust/error-handling.md +262 -0
  217. package/templates/agents/sw-engineer/language/rust-expert/refs/rust/index.yaml +26 -0
  218. package/templates/agents/sw-engineer/language/rust-expert/refs/rust/ownership.md +180 -0
  219. package/templates/agents/sw-engineer/language/rust-expert/refs/rust-best-practices/SKILL.md +266 -0
  220. package/templates/agents/sw-engineer/language/rust-expert/refs/rust-best-practices/index.yaml +26 -0
  221. package/templates/agents/sw-engineer/language/typescript-expert/refs/typescript/advanced-types.md +225 -0
  222. package/templates/agents/sw-engineer/language/typescript-expert/refs/typescript/index.yaml +26 -0
  223. package/templates/agents/sw-engineer/language/typescript-expert/refs/typescript/type-system.md +219 -0
  224. package/templates/agents/sw-engineer/language/typescript-expert/refs/typescript-best-practices/SKILL.md +320 -0
  225. package/templates/agents/sw-engineer/language/typescript-expert/refs/typescript-best-practices/index.yaml +28 -0
  226. package/templates/agents/tutor/go-tutor/AGENT.md +130 -0
  227. package/templates/agents/tutor/go-tutor/index.yaml +48 -0
  228. package/templates/examples/code-review.yaml +66 -0
  229. package/templates/guides/claude-code/11-sub-agents.md +159 -0
  230. package/templates/index.yaml +18 -0
  231. package/templates/manifest.json +55 -0
  232. package/templates/skills/orchestration/intent-detection/patterns/agent-triggers.yaml +9 -0
  233. package/templates/templates/pipeline-template.yaml +50 -0
@@ -0,0 +1,22 @@
1
+ # Spring Boot Guide
2
+
3
+ metadata:
4
+ name: springboot
5
+ description: Spring Boot framework reference documentation
6
+
7
+ source:
8
+ type: external
9
+ origin: spring.io
10
+ urls:
11
+ - https://docs.spring.io/spring-boot/docs/current/reference/html/
12
+ - https://spring.io/guides
13
+ - https://www.baeldung.com/spring-boot
14
+ last_fetched: "2026-01-22"
15
+
16
+ documents:
17
+ - name: best-practices
18
+ path: ./best-practices.md
19
+ description: Spring Boot best practices and patterns
20
+
21
+ used_by:
22
+ - springboot-expert
@@ -0,0 +1,356 @@
1
+ # Spring Boot Best Practices Skill
2
+
3
+ > **Category**: Backend
4
+ > **Source**: Internal (based on Spring documentation and Baeldung)
5
+
6
+ ## Purpose
7
+
8
+ Apply Spring Boot patterns for building enterprise-grade applications.
9
+
10
+ ## Rules
11
+
12
+ ### 1. Project Structure
13
+
14
+ ```yaml
15
+ structure:
16
+ layout: layered architecture
17
+ packages:
18
+ - controller: REST endpoints
19
+ - service: Business logic
20
+ - repository: Data access
21
+ - model/entity: Domain objects
22
+ - dto: Data transfer objects
23
+ - config: Configuration classes
24
+ - exception: Custom exceptions
25
+
26
+ example: |
27
+ com.example.app/
28
+ ├── controller/
29
+ │ └── UserController.java
30
+ ├── service/
31
+ │ ├── UserService.java
32
+ │ └── impl/UserServiceImpl.java
33
+ ├── repository/
34
+ │ └── UserRepository.java
35
+ ├── model/
36
+ │ └── User.java
37
+ ├── dto/
38
+ │ ├── UserRequest.java
39
+ │ └── UserResponse.java
40
+ ├── config/
41
+ │ └── SecurityConfig.java
42
+ └── exception/
43
+ └── UserNotFoundException.java
44
+ ```
45
+
46
+ ### 2. Dependency Injection
47
+
48
+ ```yaml
49
+ prefer:
50
+ - Constructor injection over field injection
51
+ - Interface-based dependencies
52
+ - @RequiredArgsConstructor with final fields
53
+
54
+ patterns: |
55
+ // GOOD: Constructor injection
56
+ @Service
57
+ @RequiredArgsConstructor
58
+ public class UserService {
59
+ private final UserRepository userRepository;
60
+ private final EmailService emailService;
61
+ }
62
+
63
+ // AVOID: Field injection
64
+ @Service
65
+ public class UserService {
66
+ @Autowired
67
+ private UserRepository userRepository; // Not recommended
68
+ }
69
+ ```
70
+
71
+ ### 3. REST API Design
72
+
73
+ ```yaml
74
+ controller:
75
+ annotations:
76
+ - "@RestController"
77
+ - "@RequestMapping with base path"
78
+ - "@Validated for input validation"
79
+
80
+ patterns: |
81
+ @RestController
82
+ @RequestMapping("/api/v1/users")
83
+ @RequiredArgsConstructor
84
+ public class UserController {
85
+
86
+ private final UserService userService;
87
+
88
+ @GetMapping("/{id}")
89
+ public ResponseEntity<UserResponse> getUser(@PathVariable Long id) {
90
+ return ResponseEntity.ok(userService.findById(id));
91
+ }
92
+
93
+ @PostMapping
94
+ @ResponseStatus(HttpStatus.CREATED)
95
+ public UserResponse createUser(@Valid @RequestBody UserRequest request) {
96
+ return userService.create(request);
97
+ }
98
+
99
+ @PutMapping("/{id}")
100
+ public UserResponse updateUser(
101
+ @PathVariable Long id,
102
+ @Valid @RequestBody UserRequest request
103
+ ) {
104
+ return userService.update(id, request);
105
+ }
106
+
107
+ @DeleteMapping("/{id}")
108
+ @ResponseStatus(HttpStatus.NO_CONTENT)
109
+ public void deleteUser(@PathVariable Long id) {
110
+ userService.delete(id);
111
+ }
112
+ }
113
+ ```
114
+
115
+ ### 4. Service Layer
116
+
117
+ ```yaml
118
+ principles:
119
+ - Business logic in service layer
120
+ - Transaction boundaries at service level
121
+ - Interface + implementation pattern
122
+
123
+ patterns: |
124
+ public interface UserService {
125
+ UserResponse findById(Long id);
126
+ UserResponse create(UserRequest request);
127
+ }
128
+
129
+ @Service
130
+ @Transactional(readOnly = true)
131
+ @RequiredArgsConstructor
132
+ public class UserServiceImpl implements UserService {
133
+
134
+ private final UserRepository userRepository;
135
+ private final UserMapper userMapper;
136
+
137
+ @Override
138
+ public UserResponse findById(Long id) {
139
+ User user = userRepository.findById(id)
140
+ .orElseThrow(() -> new UserNotFoundException(id));
141
+ return userMapper.toResponse(user);
142
+ }
143
+
144
+ @Override
145
+ @Transactional
146
+ public UserResponse create(UserRequest request) {
147
+ User user = userMapper.toEntity(request);
148
+ return userMapper.toResponse(userRepository.save(user));
149
+ }
150
+ }
151
+ ```
152
+
153
+ ### 5. Data Access
154
+
155
+ ```yaml
156
+ repository:
157
+ use: Spring Data JPA
158
+ custom_queries: "@Query annotation or method naming"
159
+
160
+ patterns: |
161
+ public interface UserRepository extends JpaRepository<User, Long> {
162
+
163
+ Optional<User> findByEmail(String email);
164
+
165
+ @Query("SELECT u FROM User u WHERE u.status = :status")
166
+ List<User> findByStatus(@Param("status") UserStatus status);
167
+
168
+ @Query(value = "SELECT * FROM users WHERE created_at > :date",
169
+ nativeQuery = true)
170
+ List<User> findRecentUsers(@Param("date") LocalDateTime date);
171
+ }
172
+
173
+ entity: |
174
+ @Entity
175
+ @Table(name = "users")
176
+ @Getter
177
+ @NoArgsConstructor(access = AccessLevel.PROTECTED)
178
+ public class User {
179
+
180
+ @Id
181
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
182
+ private Long id;
183
+
184
+ @Column(nullable = false, unique = true)
185
+ private String email;
186
+
187
+ @Enumerated(EnumType.STRING)
188
+ private UserStatus status;
189
+
190
+ @CreatedDate
191
+ private LocalDateTime createdAt;
192
+ }
193
+ ```
194
+
195
+ ### 6. Exception Handling
196
+
197
+ ```yaml
198
+ global_handler:
199
+ use: "@ControllerAdvice"
200
+ custom_exceptions: domain-specific
201
+
202
+ patterns: |
203
+ @RestControllerAdvice
204
+ public class GlobalExceptionHandler {
205
+
206
+ @ExceptionHandler(UserNotFoundException.class)
207
+ @ResponseStatus(HttpStatus.NOT_FOUND)
208
+ public ErrorResponse handleUserNotFound(UserNotFoundException ex) {
209
+ return new ErrorResponse("USER_NOT_FOUND", ex.getMessage());
210
+ }
211
+
212
+ @ExceptionHandler(MethodArgumentNotValidException.class)
213
+ @ResponseStatus(HttpStatus.BAD_REQUEST)
214
+ public ErrorResponse handleValidation(MethodArgumentNotValidException ex) {
215
+ List<String> errors = ex.getBindingResult()
216
+ .getFieldErrors()
217
+ .stream()
218
+ .map(e -> e.getField() + ": " + e.getDefaultMessage())
219
+ .toList();
220
+ return new ErrorResponse("VALIDATION_ERROR", errors);
221
+ }
222
+ }
223
+ ```
224
+
225
+ ### 7. Configuration
226
+
227
+ ```yaml
228
+ profiles:
229
+ use: application-{profile}.yml
230
+ externalize: sensitive values
231
+
232
+ patterns: |
233
+ # application.yml
234
+ spring:
235
+ profiles:
236
+ active: ${SPRING_PROFILES_ACTIVE:local}
237
+ datasource:
238
+ url: ${DATABASE_URL}
239
+ username: ${DATABASE_USERNAME}
240
+ password: ${DATABASE_PASSWORD}
241
+
242
+ # application-local.yml
243
+ spring:
244
+ datasource:
245
+ url: jdbc:h2:mem:testdb
246
+ driver-class-name: org.h2.Driver
247
+
248
+ configuration_class: |
249
+ @Configuration
250
+ @ConfigurationProperties(prefix = "app")
251
+ @Validated
252
+ public class AppProperties {
253
+
254
+ @NotBlank
255
+ private String name;
256
+
257
+ @Min(1)
258
+ private int maxConnections;
259
+
260
+ // getters, setters
261
+ }
262
+ ```
263
+
264
+ ### 8. Security
265
+
266
+ ```yaml
267
+ principles:
268
+ - Use Spring Security
269
+ - Externalize secrets
270
+ - Implement proper authentication
271
+
272
+ patterns: |
273
+ @Configuration
274
+ @EnableWebSecurity
275
+ @RequiredArgsConstructor
276
+ public class SecurityConfig {
277
+
278
+ private final JwtTokenProvider tokenProvider;
279
+
280
+ @Bean
281
+ public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
282
+ return http
283
+ .csrf(csrf -> csrf.disable())
284
+ .sessionManagement(session ->
285
+ session.sessionCreationPolicy(SessionCreationPolicy.STATELESS))
286
+ .authorizeHttpRequests(auth -> auth
287
+ .requestMatchers("/api/v1/auth/**").permitAll()
288
+ .requestMatchers("/api/v1/admin/**").hasRole("ADMIN")
289
+ .anyRequest().authenticated())
290
+ .addFilterBefore(jwtFilter(), UsernamePasswordAuthenticationFilter.class)
291
+ .build();
292
+ }
293
+ }
294
+ ```
295
+
296
+ ### 9. Testing
297
+
298
+ ```yaml
299
+ layers:
300
+ unit: "@MockBean, Mockito"
301
+ integration: "@SpringBootTest"
302
+ slice: "@WebMvcTest, @DataJpaTest"
303
+
304
+ patterns: |
305
+ // Controller test
306
+ @WebMvcTest(UserController.class)
307
+ class UserControllerTest {
308
+
309
+ @Autowired
310
+ private MockMvc mockMvc;
311
+
312
+ @MockBean
313
+ private UserService userService;
314
+
315
+ @Test
316
+ void getUser_shouldReturnUser() throws Exception {
317
+ given(userService.findById(1L))
318
+ .willReturn(new UserResponse(1L, "test@example.com"));
319
+
320
+ mockMvc.perform(get("/api/v1/users/1"))
321
+ .andExpect(status().isOk())
322
+ .andExpect(jsonPath("$.email").value("test@example.com"));
323
+ }
324
+ }
325
+
326
+ // Repository test
327
+ @DataJpaTest
328
+ class UserRepositoryTest {
329
+
330
+ @Autowired
331
+ private UserRepository userRepository;
332
+
333
+ @Test
334
+ void findByEmail_shouldReturnUser() {
335
+ User user = userRepository.save(new User("test@example.com"));
336
+
337
+ Optional<User> found = userRepository.findByEmail("test@example.com");
338
+
339
+ assertThat(found).isPresent();
340
+ assertThat(found.get().getEmail()).isEqualTo("test@example.com");
341
+ }
342
+ }
343
+ ```
344
+
345
+ ## Application
346
+
347
+ When writing Spring Boot code:
348
+
349
+ 1. **Always** use constructor injection
350
+ 2. **Always** use layered architecture
351
+ 3. **Prefer** interface-based services
352
+ 4. **Use** DTOs for API contracts
353
+ 5. **Handle** exceptions globally
354
+ 6. **Externalize** configuration
355
+ 7. **Secure** endpoints properly
356
+ 8. **Test** each layer appropriately
@@ -0,0 +1,27 @@
1
+ # Spring Boot Best Practices Skill
2
+
3
+ metadata:
4
+ name: springboot-best-practices
5
+ category: backend
6
+ description: Spring Boot patterns for enterprise Java applications
7
+
8
+ source:
9
+ type: internal
10
+ reference:
11
+ - https://docs.spring.io/spring-boot/docs/current/reference/html/
12
+ - https://spring.io/guides
13
+ - https://www.baeldung.com/spring-boot
14
+
15
+ provides:
16
+ - Project structure patterns
17
+ - Dependency injection best practices
18
+ - REST API design guidelines
19
+ - Service layer patterns
20
+ - Data access patterns
21
+ - Exception handling
22
+ - Configuration management
23
+ - Security implementation
24
+ - Testing strategies
25
+
26
+ used_by:
27
+ - springboot-expert
@@ -0,0 +1,100 @@
1
+ # React Best Practices
2
+
3
+ > **Source**: vercel-labs/agent-skills
4
+ > **Rules**: 40+ rules in 8 categories
5
+
6
+ ## When to Use
7
+
8
+ - Writing React/Next.js components
9
+ - Data fetching implementation
10
+ - Performance review
11
+ - Bundle size optimization
12
+
13
+ ## Categories by Priority
14
+
15
+ ### Critical Priority
16
+
17
+ #### Waterfall Elimination
18
+ ```
19
+ - Avoid sequential data fetching
20
+ - Use parallel data fetching
21
+ - Implement proper loading states
22
+ - Prefetch critical data
23
+ ```
24
+
25
+ #### Bundle Optimization
26
+ ```
27
+ - Minimize client-side JavaScript
28
+ - Use dynamic imports
29
+ - Tree-shake unused code
30
+ - Analyze bundle with tools
31
+ ```
32
+
33
+ ### High Priority
34
+
35
+ #### Server-Side Performance
36
+ ```
37
+ - Use Server Components by default
38
+ - Minimize 'use client' directives
39
+ - Implement streaming where possible
40
+ - Cache server responses
41
+ ```
42
+
43
+ ### Medium-High Priority
44
+
45
+ #### Client-Side Fetching
46
+ ```
47
+ - Use SWR or React Query
48
+ - Implement optimistic updates
49
+ - Handle loading/error states
50
+ - Cache API responses
51
+ ```
52
+
53
+ ### Medium Priority
54
+
55
+ #### Rendering
56
+ ```
57
+ - Avoid unnecessary re-renders
58
+ - Use React.memo strategically
59
+ - Implement useMemo/useCallback properly
60
+ - Virtualize long lists
61
+ ```
62
+
63
+ #### Caching
64
+ ```
65
+ - Implement proper cache headers
66
+ - Use ISR for dynamic content
67
+ - Cache database queries
68
+ - CDN caching strategies
69
+ ```
70
+
71
+ #### Code Splitting
72
+ ```
73
+ - Split by route
74
+ - Lazy load below-fold content
75
+ - Dynamic import heavy libraries
76
+ - Preload critical chunks
77
+ ```
78
+
79
+ ### Low-Medium Priority
80
+
81
+ #### Image Optimization
82
+ ```
83
+ - Use next/image
84
+ - Implement proper sizing
85
+ - Use modern formats (WebP, AVIF)
86
+ - Lazy load off-screen images
87
+ ```
88
+
89
+ ## Execution Flow
90
+
91
+ ```
92
+ 1. Identify optimization area
93
+ 2. Check relevant category rules
94
+ 3. Apply recommendations
95
+ 4. Verify improvements
96
+ ```
97
+
98
+ ## Scripts
99
+
100
+ See `scripts/` directory for automation helpers.
@@ -0,0 +1,39 @@
1
+ # React Best Practices Skill
2
+
3
+ metadata:
4
+ name: react-best-practices
5
+ category: development
6
+ description: React/Next.js performance optimization with 40+ rules in 8 categories
7
+
8
+ source:
9
+ type: external
10
+ origin: github
11
+ url: https://github.com/vercel-labs/agent-skills
12
+ path: skills/react-best-practices
13
+ version: "1.0.0"
14
+ last_updated: "2025-01-22"
15
+
16
+ triggers:
17
+ - "optimize React"
18
+ - "performance review"
19
+ - "bundle size"
20
+ - "data fetching"
21
+ - "Next.js optimization"
22
+
23
+ categories:
24
+ - name: waterfall-elimination
25
+ priority: critical
26
+ - name: bundle-optimization
27
+ priority: critical
28
+ - name: server-performance
29
+ priority: high
30
+ - name: client-fetching
31
+ priority: medium-high
32
+ - name: rendering
33
+ priority: medium
34
+ - name: caching
35
+ priority: medium
36
+ - name: code-splitting
37
+ priority: medium
38
+ - name: image-optimization
39
+ priority: low-medium
@@ -0,0 +1,73 @@
1
+ # Vercel Deploy
2
+
3
+ > **Source**: vercel-labs/agent-skills
4
+ > **Capability**: Instant deployment to Vercel
5
+
6
+ ## When to Use
7
+
8
+ - Deploy application to Vercel
9
+ - Create preview deployments
10
+ - Generate shareable URLs
11
+
12
+ ## Features
13
+
14
+ ### Framework Detection
15
+ ```
16
+ Auto-detects 40+ frameworks from package.json:
17
+ - Next.js
18
+ - React
19
+ - Vue
20
+ - Nuxt
21
+ - Svelte
22
+ - Astro
23
+ - and more...
24
+ ```
25
+
26
+ ### Auto Exclusions
27
+ ```
28
+ Automatically excludes:
29
+ - node_modules/
30
+ - .git/
31
+ - .env files
32
+ ```
33
+
34
+ ### Output
35
+ ```
36
+ On successful deployment:
37
+ 1. Preview URL (view deployment)
38
+ 2. Claim URL (transfer ownership)
39
+ ```
40
+
41
+ ## Execution Flow
42
+
43
+ ```
44
+ 1. Detect project framework
45
+ 2. Prepare deployment bundle
46
+ 3. Upload to Vercel
47
+ 4. Return URLs
48
+ ```
49
+
50
+ ## Output Format
51
+
52
+ ```
53
+ [Deploy Success]
54
+ Preview: https://project-xxx.vercel.app
55
+ Claim: https://vercel.com/claim/xxx
56
+ ```
57
+
58
+ ## Scripts
59
+
60
+ See `scripts/deploy.sh` for deployment automation.
61
+
62
+ ## Requirements
63
+
64
+ - Valid project structure
65
+ - package.json present
66
+ - Vercel CLI or API token (for authenticated deploys)
67
+
68
+ ## Limitations
69
+
70
+ - Claimable deploys are anonymous
71
+ - Preview URLs are temporary
72
+ - Full features require Vercel account
73
+ ```
@@ -0,0 +1,30 @@
1
+ # Vercel Deploy Skill
2
+
3
+ metadata:
4
+ name: vercel-deploy
5
+ category: development
6
+ description: Deploy applications to Vercel with auto-detection and preview URLs
7
+
8
+ source:
9
+ type: external
10
+ origin: github
11
+ url: https://github.com/vercel-labs/agent-skills
12
+ path: skills/vercel-deploy-claimable
13
+ version: "1.0.0"
14
+ last_updated: "2025-01-22"
15
+
16
+ triggers:
17
+ - "deploy to Vercel"
18
+ - "create preview"
19
+ - "publish site"
20
+ - "Vercel deployment"
21
+
22
+ capabilities:
23
+ - Auto-detect 40+ frameworks
24
+ - Generate preview URLs
25
+ - Ownership transfer links
26
+ - Exclude node_modules, .git automatically
27
+
28
+ requirements:
29
+ - Vercel CLI or API access
30
+ - Project with package.json
@@ -0,0 +1,66 @@
1
+ # Accessibility Best Practices
2
+
3
+ > Reference guide for web-design-guidelines skill
4
+
5
+ ## Core Principles
6
+
7
+ ### WCAG 2.1 Compliance
8
+ ```
9
+ Level A: Minimum accessibility
10
+ Level AA: Standard compliance (recommended)
11
+ Level AAA: Enhanced accessibility
12
+ ```
13
+
14
+ ### POUR Principles
15
+ ```
16
+ Perceivable: Content available to senses
17
+ Operable: Interface navigable
18
+ Understandable: Clear and predictable
19
+ Robust: Works across technologies
20
+ ```
21
+
22
+ ## Quick Reference
23
+
24
+ ### Color Contrast
25
+ ```
26
+ Normal text: 4.5:1 minimum
27
+ Large text: 3:1 minimum
28
+ UI components: 3:1 minimum
29
+ ```
30
+
31
+ ### Keyboard Navigation
32
+ ```
33
+ Tab: Move forward
34
+ Shift+Tab: Move backward
35
+ Enter/Space: Activate
36
+ Escape: Close/Cancel
37
+ Arrow keys: Navigate within component
38
+ ```
39
+
40
+ ### ARIA Landmarks
41
+ ```html
42
+ <header role="banner">
43
+ <nav role="navigation">
44
+ <main role="main">
45
+ <aside role="complementary">
46
+ <footer role="contentinfo">
47
+ ```
48
+
49
+ ### Common ARIA Attributes
50
+ ```html
51
+ aria-label="Description"
52
+ aria-labelledby="element-id"
53
+ aria-describedby="description-id"
54
+ aria-hidden="true|false"
55
+ aria-expanded="true|false"
56
+ aria-selected="true|false"
57
+ aria-live="polite|assertive"
58
+ ```
59
+
60
+ ## Testing Tools
61
+
62
+ - axe DevTools
63
+ - WAVE
64
+ - Lighthouse
65
+ - VoiceOver (macOS)
66
+ - NVDA (Windows)