oh-my-customcode 0.1.4 → 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/README.md +80 -129
- package/dist/cli/index.js +95 -95
- package/dist/index.js +7 -32
- package/package.json +1 -1
- package/templates/{agents/sw-architect/documenter/AGENT.md → .claude/agents/arch-documenter.md} +7 -39
- package/templates/{agents/sw-architect/speckit-agent/AGENT.md → .claude/agents/arch-speckit-agent.md} +61 -63
- package/templates/.claude/agents/be-express-expert.md +71 -0
- package/templates/.claude/agents/be-fastapi-expert.md +33 -0
- package/templates/.claude/agents/be-go-backend-expert.md +33 -0
- package/templates/.claude/agents/be-nestjs-expert.md +51 -0
- package/templates/.claude/agents/be-springboot-expert.md +75 -0
- package/templates/.claude/agents/db-supabase-expert.md +63 -0
- package/templates/{agents/sw-engineer/frontend/svelte-agent/AGENT.md → .claude/agents/fe-svelte-agent.md} +16 -31
- package/templates/.claude/agents/fe-vercel-agent.md +57 -0
- package/templates/{agents/sw-engineer/frontend/vuejs-agent/AGENT.md → .claude/agents/fe-vuejs-agent.md} +16 -31
- package/templates/.claude/agents/infra-aws-expert.md +37 -0
- package/templates/.claude/agents/infra-docker-expert.md +37 -0
- package/templates/.claude/agents/lang-golang-expert.md +33 -0
- package/templates/.claude/agents/lang-java21-expert.md +56 -0
- package/templates/.claude/agents/lang-kotlin-expert.md +33 -0
- package/templates/.claude/agents/lang-python-expert.md +33 -0
- package/templates/.claude/agents/lang-rust-expert.md +33 -0
- package/templates/.claude/agents/lang-typescript-expert.md +33 -0
- package/templates/.claude/agents/mgr-creator.md +102 -0
- package/templates/{agents/manager/gitnerd/AGENT.md → .claude/agents/mgr-gitnerd.md} +8 -17
- package/templates/.claude/agents/mgr-sauron.md +139 -0
- package/templates/{agents/manager/supplier/AGENT.md → .claude/agents/mgr-supplier.md} +14 -46
- package/templates/.claude/agents/mgr-sync-checker.md +89 -0
- package/templates/{agents/manager/updater/AGENT.md → .claude/agents/mgr-updater.md} +21 -53
- package/templates/{agents/qa-team/qa-engineer/AGENT.md → .claude/agents/qa-engineer.md} +13 -24
- package/templates/{agents/qa-team/qa-planner/AGENT.md → .claude/agents/qa-planner.md} +10 -20
- package/templates/{agents/qa-team/qa-writer/AGENT.md → .claude/agents/qa-writer.md} +10 -20
- package/templates/.claude/agents/sys-memory-keeper.md +105 -0
- package/templates/.claude/agents/sys-naggy.md +81 -0
- package/templates/{agents/sw-engineer/tooling/bun-expert/AGENT.md → .claude/agents/tool-bun-expert.md} +28 -39
- package/templates/.claude/agents/tool-npm-expert.md +76 -0
- package/templates/.claude/agents/tool-optimizer.md +75 -0
- package/templates/{agents/tutor/go-tutor/AGENT.md → .claude/agents/tutor-go.md} +16 -27
- package/templates/.claude/contexts/ecomode.md +5 -5
- package/templates/.claude/rules/MUST-agent-design.md +60 -42
- package/templates/.claude/rules/MUST-agent-identification.md +11 -11
- package/templates/.claude/rules/MUST-continuous-improvement.md +2 -2
- package/templates/.claude/rules/MUST-intent-transparency.md +18 -18
- package/templates/.claude/rules/MUST-orchestrator-coordination.md +156 -113
- package/templates/.claude/rules/MUST-parallel-execution.md +28 -28
- package/templates/.claude/rules/MUST-sync-verification.md +52 -45
- package/templates/.claude/rules/MUST-tool-identification.md +12 -14
- package/templates/.claude/rules/SHOULD-ecomode.md +3 -3
- package/templates/.claude/rules/SHOULD-hud-statusline.md +4 -4
- package/templates/.claude/rules/SHOULD-memory-integration.md +4 -4
- package/templates/.claude/rules/SHOULD-pipeline-mode.md +1 -1
- package/templates/.claude/skills/audit-agents/SKILL.md +116 -0
- package/templates/{skills/infrastructure → .claude/skills}/aws-best-practices/SKILL.md +4 -4
- package/templates/.claude/skills/create-agent/SKILL.md +91 -0
- package/templates/.claude/skills/dev-lead-routing/SKILL.md +238 -0
- package/templates/{commands/dev/refactor.md → .claude/skills/dev-refactor/SKILL.md} +17 -20
- package/templates/{commands/dev/review.md → .claude/skills/dev-review/SKILL.md} +16 -17
- package/templates/{agents/manager/supplier/refs/skills/infrastructure → .claude/skills}/docker-best-practices/SKILL.md +4 -4
- package/templates/{agents/manager/supplier/refs/skills/backend → .claude/skills}/fastapi-best-practices/SKILL.md +4 -4
- package/templates/.claude/skills/fix-refs/SKILL.md +107 -0
- package/templates/{agents/manager/supplier/refs/skills/backend → .claude/skills}/go-backend-best-practices/SKILL.md +4 -4
- package/templates/{skills/development → .claude/skills}/go-best-practices/SKILL.md +4 -4
- package/templates/{commands/system/help.md → .claude/skills/help/SKILL.md} +34 -46
- package/templates/{skills/orchestration → .claude/skills}/intent-detection/SKILL.md +14 -14
- package/templates/{agents/manager/supplier/refs/skills/orchestration → .claude/skills}/intent-detection/patterns/agent-triggers.yaml +117 -110
- package/templates/{agents/sw-engineer/language/kotlin-expert/refs → .claude/skills}/kotlin-best-practices/SKILL.md +4 -4
- package/templates/{commands/system/lists.md → .claude/skills/lists/SKILL.md} +25 -33
- package/templates/{agents/manager/supplier/refs/skills/system → .claude/skills}/memory-management/SKILL.md +10 -10
- package/templates/{commands/memory/recall.md → .claude/skills/memory-recall/SKILL.md} +31 -43
- package/templates/{commands/memory/save.md → .claude/skills/memory-save/SKILL.md} +27 -29
- package/templates/.claude/skills/npm-audit/SKILL.md +72 -0
- package/templates/.claude/skills/npm-publish/SKILL.md +63 -0
- package/templates/.claude/skills/npm-version/SKILL.md +75 -0
- package/templates/.claude/skills/optimize-analyze/SKILL.md +55 -0
- package/templates/.claude/skills/optimize-bundle/SKILL.md +67 -0
- package/templates/.claude/skills/optimize-report/SKILL.md +74 -0
- package/templates/{skills/orchestration → .claude/skills}/pipeline-execution/SKILL.md +4 -4
- package/templates/{commands/pipeline/list.md → .claude/skills/pipeline-list/SKILL.md} +11 -18
- package/templates/{commands/pipeline/run.md → .claude/skills/pipeline-run/SKILL.md} +38 -22
- package/templates/{agents/sw-engineer/language/python-expert/refs → .claude/skills}/python-best-practices/SKILL.md +4 -4
- package/templates/.claude/skills/qa-lead-routing/SKILL.md +277 -0
- package/templates/{skills/development → .claude/skills}/react-best-practices/SKILL.md +4 -4
- package/templates/{skills/system → .claude/skills}/result-aggregation/SKILL.md +17 -17
- package/templates/{agents/sw-engineer/language/rust-expert/refs → .claude/skills}/rust-best-practices/SKILL.md +4 -4
- package/templates/.claude/skills/sauron-watch/SKILL.md +144 -0
- package/templates/.claude/skills/secretary-routing/SKILL.md +178 -0
- package/templates/{skills/backend → .claude/skills}/springboot-best-practices/SKILL.md +4 -4
- package/templates/{commands/system/status.md → .claude/skills/status/SKILL.md} +29 -39
- package/templates/.claude/skills/supabase-postgres-best-practices/SKILL.md +98 -0
- package/templates/{skills/development → .claude/skills}/typescript-best-practices/SKILL.md +4 -4
- package/templates/{commands/updater/docs.md → .claude/skills/update-docs/SKILL.md} +71 -96
- package/templates/{commands/updater/external.md → .claude/skills/update-external/SKILL.md} +34 -99
- package/templates/{agents/manager/supplier/refs/skills/development → .claude/skills}/vercel-deploy/SKILL.md +4 -4
- package/templates/{agents/manager/supplier/refs/skills/development → .claude/skills}/web-design-guidelines/SKILL.md +4 -4
- package/templates/CLAUDE.md.en +71 -70
- package/templates/CLAUDE.md.ko +64 -64
- package/templates/guides/aws/index.yaml +1 -1
- package/templates/guides/docker/index.yaml +1 -1
- package/templates/guides/fastapi/index.yaml +1 -1
- package/templates/guides/go-backend/index.yaml +1 -1
- package/templates/guides/golang/index.yaml +1 -1
- package/templates/guides/index.yaml +9 -0
- package/templates/guides/kotlin/index.yaml +1 -1
- package/templates/guides/python/index.yaml +1 -1
- package/templates/guides/rust/index.yaml +1 -1
- package/templates/guides/springboot/index.yaml +1 -1
- package/templates/guides/supabase-postgres/README.md +32 -0
- package/templates/guides/supabase-postgres/index.yaml +19 -0
- package/templates/guides/typescript/index.yaml +1 -1
- package/templates/manifest.json +9 -15
- package/templates/pipelines/examples/code-review.yaml +1 -1
- package/templates/agents/index.yaml +0 -243
- package/templates/agents/infra-engineer/aws-expert/AGENT.md +0 -47
- package/templates/agents/infra-engineer/aws-expert/index.yaml +0 -27
- package/templates/agents/infra-engineer/aws-expert/refs/aws/common-patterns.md +0 -169
- package/templates/agents/infra-engineer/aws-expert/refs/aws/index.yaml +0 -26
- package/templates/agents/infra-engineer/aws-expert/refs/aws/well-architected.md +0 -143
- package/templates/agents/infra-engineer/aws-expert/refs/aws-best-practices/SKILL.md +0 -279
- package/templates/agents/infra-engineer/aws-expert/refs/aws-best-practices/index.yaml +0 -27
- package/templates/agents/infra-engineer/docker-expert/AGENT.md +0 -47
- package/templates/agents/infra-engineer/docker-expert/index.yaml +0 -27
- package/templates/agents/infra-engineer/docker-expert/refs/docker/compose-best-practices.md +0 -284
- package/templates/agents/infra-engineer/docker-expert/refs/docker/dockerfile-best-practices.md +0 -262
- package/templates/agents/infra-engineer/docker-expert/refs/docker/index.yaml +0 -26
- package/templates/agents/infra-engineer/docker-expert/refs/docker-best-practices/SKILL.md +0 -274
- package/templates/agents/infra-engineer/docker-expert/refs/docker-best-practices/index.yaml +0 -26
- package/templates/agents/manager/creator/AGENT.md +0 -274
- package/templates/agents/manager/creator/index.yaml +0 -66
- package/templates/agents/manager/creator/refs/rules/MAY-optimization.md +0 -93
- package/templates/agents/manager/creator/refs/rules/MUST-agent-design.md +0 -107
- package/templates/agents/manager/creator/refs/rules/MUST-agent-identification.md +0 -108
- package/templates/agents/manager/creator/refs/rules/MUST-continuous-improvement.md +0 -132
- package/templates/agents/manager/creator/refs/rules/MUST-intent-transparency.md +0 -199
- package/templates/agents/manager/creator/refs/rules/MUST-language-policy.md +0 -62
- package/templates/agents/manager/creator/refs/rules/MUST-orchestrator-coordination.md +0 -334
- package/templates/agents/manager/creator/refs/rules/MUST-parallel-execution.md +0 -398
- package/templates/agents/manager/creator/refs/rules/MUST-permissions.md +0 -84
- package/templates/agents/manager/creator/refs/rules/MUST-safety.md +0 -69
- package/templates/agents/manager/creator/refs/rules/MUST-sync-verification.md +0 -219
- package/templates/agents/manager/creator/refs/rules/MUST-tool-identification.md +0 -174
- package/templates/agents/manager/creator/refs/rules/SHOULD-ecomode.md +0 -145
- package/templates/agents/manager/creator/refs/rules/SHOULD-error-handling.md +0 -102
- package/templates/agents/manager/creator/refs/rules/SHOULD-hud-statusline.md +0 -96
- package/templates/agents/manager/creator/refs/rules/SHOULD-interaction.md +0 -103
- package/templates/agents/manager/creator/refs/rules/SHOULD-memory-integration.md +0 -114
- package/templates/agents/manager/creator/refs/rules/SHOULD-pipeline-mode.md +0 -165
- package/templates/agents/manager/creator/refs/rules/index.yaml +0 -125
- package/templates/agents/manager/gitnerd/index.yaml +0 -55
- package/templates/agents/manager/sauron/AGENT.md +0 -153
- package/templates/agents/manager/sauron/index.yaml +0 -52
- package/templates/agents/manager/supplier/index.yaml +0 -31
- package/templates/agents/manager/supplier/refs/guides/aws/common-patterns.md +0 -169
- package/templates/agents/manager/supplier/refs/guides/aws/index.yaml +0 -26
- package/templates/agents/manager/supplier/refs/guides/aws/well-architected.md +0 -143
- package/templates/agents/manager/supplier/refs/guides/claude-code/01-overview.md +0 -42
- package/templates/agents/manager/supplier/refs/guides/claude-code/03-tools.md +0 -107
- package/templates/agents/manager/supplier/refs/guides/claude-code/04-agent-skills.md +0 -90
- package/templates/agents/manager/supplier/refs/guides/claude-code/05-agent-sdk.md +0 -129
- package/templates/agents/manager/supplier/refs/guides/claude-code/06-mcp.md +0 -165
- package/templates/agents/manager/supplier/refs/guides/claude-code/07-prompt-engineering.md +0 -100
- package/templates/agents/manager/supplier/refs/guides/claude-code/08-testing.md +0 -58
- package/templates/agents/manager/supplier/refs/guides/claude-code/09-guardrails.md +0 -80
- package/templates/agents/manager/supplier/refs/guides/claude-code/10-monitoring.md +0 -89
- package/templates/agents/manager/supplier/refs/guides/claude-code/11-sub-agents.md +0 -159
- package/templates/agents/manager/supplier/refs/guides/claude-code/index.yaml +0 -51
- package/templates/agents/manager/supplier/refs/guides/docker/compose-best-practices.md +0 -284
- package/templates/agents/manager/supplier/refs/guides/docker/dockerfile-best-practices.md +0 -262
- package/templates/agents/manager/supplier/refs/guides/docker/index.yaml +0 -26
- package/templates/agents/manager/supplier/refs/guides/fastapi/best-practices.md +0 -232
- package/templates/agents/manager/supplier/refs/guides/fastapi/index.yaml +0 -21
- package/templates/agents/manager/supplier/refs/guides/go-backend/index.yaml +0 -26
- package/templates/agents/manager/supplier/refs/guides/go-backend/project-layout.md +0 -243
- package/templates/agents/manager/supplier/refs/guides/go-backend/uber-style.md +0 -212
- package/templates/agents/manager/supplier/refs/guides/golang/concurrency.md +0 -282
- package/templates/agents/manager/supplier/refs/guides/golang/effective-go.md +0 -309
- package/templates/agents/manager/supplier/refs/guides/golang/error-handling.md +0 -250
- package/templates/agents/manager/supplier/refs/guides/golang/index.yaml +0 -27
- package/templates/agents/manager/supplier/refs/guides/index.yaml +0 -101
- package/templates/agents/manager/supplier/refs/guides/kotlin/coding-conventions.md +0 -247
- package/templates/agents/manager/supplier/refs/guides/kotlin/idioms.md +0 -234
- package/templates/agents/manager/supplier/refs/guides/kotlin/index.yaml +0 -26
- package/templates/agents/manager/supplier/refs/guides/python/index.yaml +0 -26
- package/templates/agents/manager/supplier/refs/guides/python/pep8-style-guide.md +0 -202
- package/templates/agents/manager/supplier/refs/guides/python/zen-of-python.md +0 -79
- package/templates/agents/manager/supplier/refs/guides/rust/error-handling.md +0 -262
- package/templates/agents/manager/supplier/refs/guides/rust/index.yaml +0 -26
- package/templates/agents/manager/supplier/refs/guides/rust/ownership.md +0 -180
- package/templates/agents/manager/supplier/refs/guides/springboot/best-practices.md +0 -361
- package/templates/agents/manager/supplier/refs/guides/springboot/index.yaml +0 -22
- package/templates/agents/manager/supplier/refs/guides/typescript/advanced-types.md +0 -225
- package/templates/agents/manager/supplier/refs/guides/typescript/index.yaml +0 -26
- package/templates/agents/manager/supplier/refs/guides/typescript/type-system.md +0 -219
- package/templates/agents/manager/supplier/refs/guides/web-design/accessibility.md +0 -66
- package/templates/agents/manager/supplier/refs/guides/web-design/index.yaml +0 -20
- package/templates/agents/manager/supplier/refs/guides/web-design/performance.md +0 -102
- package/templates/agents/manager/supplier/refs/rules/MAY-optimization.md +0 -93
- package/templates/agents/manager/supplier/refs/rules/MUST-agent-design.md +0 -107
- package/templates/agents/manager/supplier/refs/rules/MUST-agent-identification.md +0 -108
- package/templates/agents/manager/supplier/refs/rules/MUST-continuous-improvement.md +0 -132
- package/templates/agents/manager/supplier/refs/rules/MUST-intent-transparency.md +0 -199
- package/templates/agents/manager/supplier/refs/rules/MUST-language-policy.md +0 -62
- package/templates/agents/manager/supplier/refs/rules/MUST-orchestrator-coordination.md +0 -334
- package/templates/agents/manager/supplier/refs/rules/MUST-parallel-execution.md +0 -398
- package/templates/agents/manager/supplier/refs/rules/MUST-permissions.md +0 -84
- package/templates/agents/manager/supplier/refs/rules/MUST-safety.md +0 -69
- package/templates/agents/manager/supplier/refs/rules/MUST-sync-verification.md +0 -219
- package/templates/agents/manager/supplier/refs/rules/MUST-tool-identification.md +0 -174
- package/templates/agents/manager/supplier/refs/rules/SHOULD-ecomode.md +0 -145
- package/templates/agents/manager/supplier/refs/rules/SHOULD-error-handling.md +0 -102
- package/templates/agents/manager/supplier/refs/rules/SHOULD-hud-statusline.md +0 -96
- package/templates/agents/manager/supplier/refs/rules/SHOULD-interaction.md +0 -103
- package/templates/agents/manager/supplier/refs/rules/SHOULD-memory-integration.md +0 -114
- package/templates/agents/manager/supplier/refs/rules/SHOULD-pipeline-mode.md +0 -165
- package/templates/agents/manager/supplier/refs/rules/index.yaml +0 -125
- package/templates/agents/manager/supplier/refs/skills/backend/fastapi-best-practices/index.yaml +0 -25
- package/templates/agents/manager/supplier/refs/skills/backend/go-backend-best-practices/index.yaml +0 -26
- package/templates/agents/manager/supplier/refs/skills/backend/springboot-best-practices/SKILL.md +0 -356
- package/templates/agents/manager/supplier/refs/skills/backend/springboot-best-practices/index.yaml +0 -27
- package/templates/agents/manager/supplier/refs/skills/development/go-best-practices/SKILL.md +0 -202
- package/templates/agents/manager/supplier/refs/skills/development/go-best-practices/index.yaml +0 -25
- package/templates/agents/manager/supplier/refs/skills/development/kotlin-best-practices/SKILL.md +0 -255
- package/templates/agents/manager/supplier/refs/skills/development/kotlin-best-practices/index.yaml +0 -27
- package/templates/agents/manager/supplier/refs/skills/development/python-best-practices/SKILL.md +0 -221
- package/templates/agents/manager/supplier/refs/skills/development/python-best-practices/index.yaml +0 -25
- package/templates/agents/manager/supplier/refs/skills/development/react-best-practices/SKILL.md +0 -100
- package/templates/agents/manager/supplier/refs/skills/development/react-best-practices/index.yaml +0 -39
- package/templates/agents/manager/supplier/refs/skills/development/rust-best-practices/SKILL.md +0 -266
- package/templates/agents/manager/supplier/refs/skills/development/rust-best-practices/index.yaml +0 -26
- package/templates/agents/manager/supplier/refs/skills/development/typescript-best-practices/SKILL.md +0 -320
- package/templates/agents/manager/supplier/refs/skills/development/typescript-best-practices/index.yaml +0 -28
- package/templates/agents/manager/supplier/refs/skills/development/vercel-deploy/index.yaml +0 -30
- package/templates/agents/manager/supplier/refs/skills/development/web-design-guidelines/index.yaml +0 -34
- package/templates/agents/manager/supplier/refs/skills/index.yaml +0 -129
- package/templates/agents/manager/supplier/refs/skills/infrastructure/aws-best-practices/SKILL.md +0 -279
- package/templates/agents/manager/supplier/refs/skills/infrastructure/aws-best-practices/index.yaml +0 -27
- package/templates/agents/manager/supplier/refs/skills/infrastructure/docker-best-practices/index.yaml +0 -26
- package/templates/agents/manager/supplier/refs/skills/orchestration/intent-detection/SKILL.md +0 -214
- package/templates/agents/manager/supplier/refs/skills/orchestration/intent-detection/index.yaml +0 -30
- package/templates/agents/manager/supplier/refs/skills/orchestration/pipeline-execution/SKILL.md +0 -188
- package/templates/agents/manager/supplier/refs/skills/orchestration/pipeline-execution/index.yaml +0 -27
- package/templates/agents/manager/supplier/refs/skills/system/memory-management/index.yaml +0 -30
- package/templates/agents/manager/supplier/refs/skills/system/result-aggregation/SKILL.md +0 -163
- package/templates/agents/manager/supplier/refs/skills/system/result-aggregation/index.yaml +0 -36
- package/templates/agents/manager/sync-checker/AGENT.md +0 -34
- package/templates/agents/manager/sync-checker/index.yaml +0 -32
- package/templates/agents/manager/updater/index.yaml +0 -31
- package/templates/agents/manager/updater/refs/rules/MAY-optimization.md +0 -93
- package/templates/agents/manager/updater/refs/rules/MUST-agent-design.md +0 -107
- package/templates/agents/manager/updater/refs/rules/MUST-agent-identification.md +0 -108
- package/templates/agents/manager/updater/refs/rules/MUST-continuous-improvement.md +0 -132
- package/templates/agents/manager/updater/refs/rules/MUST-intent-transparency.md +0 -199
- package/templates/agents/manager/updater/refs/rules/MUST-language-policy.md +0 -62
- package/templates/agents/manager/updater/refs/rules/MUST-orchestrator-coordination.md +0 -334
- package/templates/agents/manager/updater/refs/rules/MUST-parallel-execution.md +0 -398
- package/templates/agents/manager/updater/refs/rules/MUST-permissions.md +0 -84
- package/templates/agents/manager/updater/refs/rules/MUST-safety.md +0 -69
- package/templates/agents/manager/updater/refs/rules/MUST-sync-verification.md +0 -219
- package/templates/agents/manager/updater/refs/rules/MUST-tool-identification.md +0 -174
- package/templates/agents/manager/updater/refs/rules/SHOULD-ecomode.md +0 -145
- package/templates/agents/manager/updater/refs/rules/SHOULD-error-handling.md +0 -102
- package/templates/agents/manager/updater/refs/rules/SHOULD-hud-statusline.md +0 -96
- package/templates/agents/manager/updater/refs/rules/SHOULD-interaction.md +0 -103
- package/templates/agents/manager/updater/refs/rules/SHOULD-memory-integration.md +0 -114
- package/templates/agents/manager/updater/refs/rules/SHOULD-pipeline-mode.md +0 -165
- package/templates/agents/manager/updater/refs/rules/index.yaml +0 -125
- package/templates/agents/orchestrator/dev-lead/AGENT.md +0 -163
- package/templates/agents/orchestrator/dev-lead/index.yaml +0 -73
- package/templates/agents/orchestrator/planner/AGENT.md +0 -102
- package/templates/agents/orchestrator/planner/index.yaml +0 -38
- package/templates/agents/orchestrator/qa-lead/AGENT.md +0 -92
- package/templates/agents/orchestrator/qa-lead/index.yaml +0 -40
- package/templates/agents/orchestrator/secretary/AGENT.md +0 -181
- package/templates/agents/orchestrator/secretary/index.yaml +0 -55
- package/templates/agents/orchestrator/secretary/refs/rules/MAY-optimization.md +0 -93
- package/templates/agents/orchestrator/secretary/refs/rules/MUST-agent-design.md +0 -107
- package/templates/agents/orchestrator/secretary/refs/rules/MUST-agent-identification.md +0 -108
- package/templates/agents/orchestrator/secretary/refs/rules/MUST-continuous-improvement.md +0 -132
- package/templates/agents/orchestrator/secretary/refs/rules/MUST-intent-transparency.md +0 -199
- package/templates/agents/orchestrator/secretary/refs/rules/MUST-language-policy.md +0 -62
- package/templates/agents/orchestrator/secretary/refs/rules/MUST-orchestrator-coordination.md +0 -334
- package/templates/agents/orchestrator/secretary/refs/rules/MUST-parallel-execution.md +0 -398
- package/templates/agents/orchestrator/secretary/refs/rules/MUST-permissions.md +0 -84
- package/templates/agents/orchestrator/secretary/refs/rules/MUST-safety.md +0 -69
- package/templates/agents/orchestrator/secretary/refs/rules/MUST-sync-verification.md +0 -219
- package/templates/agents/orchestrator/secretary/refs/rules/MUST-tool-identification.md +0 -174
- package/templates/agents/orchestrator/secretary/refs/rules/SHOULD-ecomode.md +0 -145
- package/templates/agents/orchestrator/secretary/refs/rules/SHOULD-error-handling.md +0 -102
- package/templates/agents/orchestrator/secretary/refs/rules/SHOULD-hud-statusline.md +0 -96
- package/templates/agents/orchestrator/secretary/refs/rules/SHOULD-interaction.md +0 -103
- package/templates/agents/orchestrator/secretary/refs/rules/SHOULD-memory-integration.md +0 -114
- package/templates/agents/orchestrator/secretary/refs/rules/SHOULD-pipeline-mode.md +0 -165
- package/templates/agents/orchestrator/secretary/refs/rules/index.yaml +0 -125
- package/templates/agents/qa-team/qa-engineer/index.yaml +0 -59
- package/templates/agents/qa-team/qa-planner/index.yaml +0 -47
- package/templates/agents/qa-team/qa-writer/index.yaml +0 -44
- package/templates/agents/sw-architect/documenter/index.yaml +0 -39
- package/templates/agents/sw-architect/speckit-agent/index.yaml +0 -78
- package/templates/agents/sw-engineer/backend/express-expert/AGENT.md +0 -132
- package/templates/agents/sw-engineer/backend/express-expert/index.yaml +0 -36
- package/templates/agents/sw-engineer/backend/fastapi-expert/AGENT.md +0 -47
- package/templates/agents/sw-engineer/backend/fastapi-expert/index.yaml +0 -27
- package/templates/agents/sw-engineer/backend/fastapi-expert/refs/fastapi/best-practices.md +0 -232
- package/templates/agents/sw-engineer/backend/fastapi-expert/refs/fastapi/index.yaml +0 -21
- package/templates/agents/sw-engineer/backend/fastapi-expert/refs/fastapi-best-practices/SKILL.md +0 -269
- package/templates/agents/sw-engineer/backend/fastapi-expert/refs/fastapi-best-practices/index.yaml +0 -25
- package/templates/agents/sw-engineer/backend/go-backend-expert/AGENT.md +0 -47
- package/templates/agents/sw-engineer/backend/go-backend-expert/index.yaml +0 -27
- package/templates/agents/sw-engineer/backend/go-backend-expert/refs/go-backend/index.yaml +0 -26
- package/templates/agents/sw-engineer/backend/go-backend-expert/refs/go-backend/project-layout.md +0 -243
- package/templates/agents/sw-engineer/backend/go-backend-expert/refs/go-backend/uber-style.md +0 -212
- package/templates/agents/sw-engineer/backend/go-backend-expert/refs/go-backend-best-practices/SKILL.md +0 -337
- package/templates/agents/sw-engineer/backend/go-backend-expert/refs/go-backend-best-practices/index.yaml +0 -26
- package/templates/agents/sw-engineer/backend/nestjs-expert/AGENT.md +0 -107
- package/templates/agents/sw-engineer/backend/nestjs-expert/index.yaml +0 -43
- package/templates/agents/sw-engineer/backend/springboot-expert/AGENT.md +0 -103
- package/templates/agents/sw-engineer/backend/springboot-expert/index.yaml +0 -69
- package/templates/agents/sw-engineer/backend/springboot-expert/refs/springboot/best-practices.md +0 -361
- package/templates/agents/sw-engineer/backend/springboot-expert/refs/springboot/index.yaml +0 -22
- package/templates/agents/sw-engineer/backend/springboot-expert/refs/springboot-best-practices/SKILL.md +0 -356
- package/templates/agents/sw-engineer/backend/springboot-expert/refs/springboot-best-practices/index.yaml +0 -27
- package/templates/agents/sw-engineer/frontend/svelte-agent/index.yaml +0 -41
- package/templates/agents/sw-engineer/frontend/vercel-agent/AGENT.md +0 -67
- package/templates/agents/sw-engineer/frontend/vercel-agent/index.yaml +0 -43
- package/templates/agents/sw-engineer/frontend/vercel-agent/refs/react-best-practices/SKILL.md +0 -100
- package/templates/agents/sw-engineer/frontend/vercel-agent/refs/react-best-practices/index.yaml +0 -39
- package/templates/agents/sw-engineer/frontend/vercel-agent/refs/vercel-deploy/SKILL.md +0 -73
- package/templates/agents/sw-engineer/frontend/vercel-agent/refs/vercel-deploy/index.yaml +0 -30
- package/templates/agents/sw-engineer/frontend/vercel-agent/refs/web-design/accessibility.md +0 -66
- package/templates/agents/sw-engineer/frontend/vercel-agent/refs/web-design/index.yaml +0 -20
- package/templates/agents/sw-engineer/frontend/vercel-agent/refs/web-design/performance.md +0 -102
- package/templates/agents/sw-engineer/frontend/vercel-agent/refs/web-design-guidelines/SKILL.md +0 -117
- package/templates/agents/sw-engineer/frontend/vercel-agent/refs/web-design-guidelines/index.yaml +0 -34
- package/templates/agents/sw-engineer/frontend/vuejs-agent/index.yaml +0 -48
- package/templates/agents/sw-engineer/language/golang-expert/AGENT.md +0 -47
- package/templates/agents/sw-engineer/language/golang-expert/index.yaml +0 -27
- package/templates/agents/sw-engineer/language/golang-expert/refs/go-best-practices/SKILL.md +0 -202
- package/templates/agents/sw-engineer/language/golang-expert/refs/go-best-practices/index.yaml +0 -25
- package/templates/agents/sw-engineer/language/golang-expert/refs/golang/concurrency.md +0 -282
- package/templates/agents/sw-engineer/language/golang-expert/refs/golang/effective-go.md +0 -309
- package/templates/agents/sw-engineer/language/golang-expert/refs/golang/error-handling.md +0 -250
- package/templates/agents/sw-engineer/language/golang-expert/refs/golang/index.yaml +0 -27
- package/templates/agents/sw-engineer/language/java21-expert/AGENT.md +0 -122
- package/templates/agents/sw-engineer/language/java21-expert/index.yaml +0 -51
- package/templates/agents/sw-engineer/language/kotlin-expert/AGENT.md +0 -47
- package/templates/agents/sw-engineer/language/kotlin-expert/index.yaml +0 -27
- package/templates/agents/sw-engineer/language/kotlin-expert/refs/kotlin/coding-conventions.md +0 -247
- package/templates/agents/sw-engineer/language/kotlin-expert/refs/kotlin/idioms.md +0 -234
- package/templates/agents/sw-engineer/language/kotlin-expert/refs/kotlin/index.yaml +0 -26
- package/templates/agents/sw-engineer/language/kotlin-expert/refs/kotlin-best-practices/index.yaml +0 -27
- package/templates/agents/sw-engineer/language/python-expert/AGENT.md +0 -47
- package/templates/agents/sw-engineer/language/python-expert/index.yaml +0 -27
- package/templates/agents/sw-engineer/language/python-expert/refs/python/index.yaml +0 -26
- package/templates/agents/sw-engineer/language/python-expert/refs/python/pep8-style-guide.md +0 -202
- package/templates/agents/sw-engineer/language/python-expert/refs/python/zen-of-python.md +0 -79
- package/templates/agents/sw-engineer/language/python-expert/refs/python-best-practices/index.yaml +0 -25
- package/templates/agents/sw-engineer/language/rust-expert/AGENT.md +0 -47
- package/templates/agents/sw-engineer/language/rust-expert/index.yaml +0 -27
- package/templates/agents/sw-engineer/language/rust-expert/refs/rust/error-handling.md +0 -262
- package/templates/agents/sw-engineer/language/rust-expert/refs/rust/index.yaml +0 -26
- package/templates/agents/sw-engineer/language/rust-expert/refs/rust/ownership.md +0 -180
- package/templates/agents/sw-engineer/language/rust-expert/refs/rust-best-practices/index.yaml +0 -26
- package/templates/agents/sw-engineer/language/typescript-expert/AGENT.md +0 -47
- package/templates/agents/sw-engineer/language/typescript-expert/index.yaml +0 -27
- package/templates/agents/sw-engineer/language/typescript-expert/refs/typescript/advanced-types.md +0 -225
- package/templates/agents/sw-engineer/language/typescript-expert/refs/typescript/index.yaml +0 -26
- package/templates/agents/sw-engineer/language/typescript-expert/refs/typescript/type-system.md +0 -219
- package/templates/agents/sw-engineer/language/typescript-expert/refs/typescript-best-practices/SKILL.md +0 -320
- package/templates/agents/sw-engineer/language/typescript-expert/refs/typescript-best-practices/index.yaml +0 -28
- package/templates/agents/sw-engineer/tooling/bun-expert/index.yaml +0 -46
- package/templates/agents/sw-engineer/tooling/npm-expert/AGENT.md +0 -160
- package/templates/agents/sw-engineer/tooling/npm-expert/index.yaml +0 -45
- package/templates/agents/sw-engineer/tooling/optimizer/AGENT.md +0 -170
- package/templates/agents/sw-engineer/tooling/optimizer/index.yaml +0 -45
- package/templates/agents/system/memory-keeper/AGENT.md +0 -126
- package/templates/agents/system/memory-keeper/index.yaml +0 -45
- package/templates/agents/system/naggy/AGENT.md +0 -72
- package/templates/agents/system/naggy/index.yaml +0 -35
- package/templates/agents/tutor/go-tutor/index.yaml +0 -48
- package/templates/commands/COMMANDS.md +0 -136
- package/templates/commands/creator/agent.md +0 -121
- package/templates/commands/git/branch.yaml +0 -8
- package/templates/commands/git/commit.yaml +0 -4
- package/templates/commands/git/pr.yaml +0 -4
- package/templates/commands/git/status.yaml +0 -4
- package/templates/commands/git/sync.yaml +0 -4
- package/templates/commands/index.yaml +0 -225
- package/templates/commands/intent/explain.md +0 -144
- package/templates/commands/naggy/add.yaml +0 -8
- package/templates/commands/naggy/done.yaml +0 -8
- package/templates/commands/naggy/list.yaml +0 -4
- package/templates/commands/naggy/priority.yaml +0 -11
- package/templates/commands/naggy/remind.yaml +0 -4
- package/templates/commands/npm/audit.yaml +0 -62
- package/templates/commands/npm/publish.yaml +0 -52
- package/templates/commands/npm/version.yaml +0 -62
- package/templates/commands/optimize/analyze.yaml +0 -34
- package/templates/commands/optimize/bundle.yaml +0 -50
- package/templates/commands/optimize/report.yaml +0 -56
- package/templates/commands/sauron/quick.yaml +0 -4
- package/templates/commands/sauron/report.yaml +0 -4
- package/templates/commands/sauron/watch.yaml +0 -4
- package/templates/commands/supplier/audit.md +0 -133
- package/templates/commands/supplier/fix.md +0 -121
- package/templates/commands/sync/agents.yaml +0 -4
- package/templates/commands/sync/check.yaml +0 -4
- package/templates/commands/sync/commands.yaml +0 -4
- package/templates/commands/sync/docs.yaml +0 -4
- package/templates/commands/sync/fix.yaml +0 -4
- package/templates/skills/backend/fastapi-best-practices/SKILL.md +0 -269
- package/templates/skills/backend/fastapi-best-practices/index.yaml +0 -25
- package/templates/skills/backend/go-backend-best-practices/SKILL.md +0 -337
- package/templates/skills/backend/go-backend-best-practices/index.yaml +0 -26
- package/templates/skills/backend/springboot-best-practices/index.yaml +0 -27
- package/templates/skills/development/go-best-practices/index.yaml +0 -25
- package/templates/skills/development/kotlin-best-practices/SKILL.md +0 -255
- package/templates/skills/development/kotlin-best-practices/index.yaml +0 -27
- package/templates/skills/development/python-best-practices/SKILL.md +0 -221
- package/templates/skills/development/python-best-practices/index.yaml +0 -25
- package/templates/skills/development/react-best-practices/index.yaml +0 -39
- package/templates/skills/development/rust-best-practices/SKILL.md +0 -266
- package/templates/skills/development/rust-best-practices/index.yaml +0 -26
- package/templates/skills/development/typescript-best-practices/index.yaml +0 -28
- package/templates/skills/development/vercel-deploy/SKILL.md +0 -73
- package/templates/skills/development/vercel-deploy/index.yaml +0 -30
- package/templates/skills/development/web-design-guidelines/SKILL.md +0 -117
- package/templates/skills/development/web-design-guidelines/index.yaml +0 -34
- package/templates/skills/index.yaml +0 -129
- package/templates/skills/infrastructure/aws-best-practices/index.yaml +0 -27
- package/templates/skills/infrastructure/docker-best-practices/SKILL.md +0 -274
- package/templates/skills/infrastructure/docker-best-practices/index.yaml +0 -26
- package/templates/skills/orchestration/intent-detection/index.yaml +0 -30
- package/templates/skills/orchestration/intent-detection/patterns/agent-triggers.yaml +0 -342
- package/templates/skills/orchestration/pipeline-execution/index.yaml +0 -27
- package/templates/skills/system/memory-management/SKILL.md +0 -194
- package/templates/skills/system/memory-management/index.yaml +0 -30
- package/templates/skills/system/result-aggregation/index.yaml +0 -36
|
@@ -1,356 +0,0 @@
|
|
|
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
|
|
@@ -1,27 +0,0 @@
|
|
|
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
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
# Svelte Agent
|
|
2
|
-
|
|
3
|
-
metadata:
|
|
4
|
-
name: svelte-agent
|
|
5
|
-
type: sw-engineer/frontend
|
|
6
|
-
description: Expert Svelte developer with compiler-based reactivity and SvelteKit expertise
|
|
7
|
-
|
|
8
|
-
source:
|
|
9
|
-
type: internal
|
|
10
|
-
|
|
11
|
-
capabilities:
|
|
12
|
-
- Svelte compiler-based reactivity
|
|
13
|
-
- Reactive statements and stores
|
|
14
|
-
- Component composition with slots
|
|
15
|
-
- SvelteKit full-stack development
|
|
16
|
-
- SSR and SSG strategies
|
|
17
|
-
- Transitions and animations
|
|
18
|
-
|
|
19
|
-
skills:
|
|
20
|
-
- name: svelte-best-practices
|
|
21
|
-
category: development
|
|
22
|
-
path: ../../../../skills/development/svelte-best-practices
|
|
23
|
-
|
|
24
|
-
references:
|
|
25
|
-
- name: Svelte Documentation
|
|
26
|
-
url: https://svelte.dev/docs
|
|
27
|
-
- name: Svelte Tutorial
|
|
28
|
-
url: https://svelte.dev/tutorial
|
|
29
|
-
- name: Svelte Reactivity
|
|
30
|
-
url: https://svelte.dev/docs/svelte-components
|
|
31
|
-
- name: Svelte Stores
|
|
32
|
-
url: https://svelte.dev/docs/svelte-store
|
|
33
|
-
- name: SvelteKit Documentation
|
|
34
|
-
url: https://kit.svelte.dev/docs
|
|
35
|
-
|
|
36
|
-
triggers:
|
|
37
|
-
- "Svelte"
|
|
38
|
-
- "SvelteKit"
|
|
39
|
-
- "Svelte store"
|
|
40
|
-
- "svelte component"
|
|
41
|
-
- "$: reactive"
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
# Vercel Agent
|
|
2
|
-
|
|
3
|
-
> **Type**: Worker
|
|
4
|
-
> **Source**: External (GitHub)
|
|
5
|
-
> **Origin**: https://github.com/vercel-labs/agent-skills
|
|
6
|
-
|
|
7
|
-
## Purpose
|
|
8
|
-
|
|
9
|
-
Frontend development specialist agent for React/Next.js projects with Vercel deployment capabilities.
|
|
10
|
-
|
|
11
|
-
## Capabilities
|
|
12
|
-
|
|
13
|
-
### 1. React/Next.js Optimization
|
|
14
|
-
- Performance optimization with 40+ rules
|
|
15
|
-
- Bundle size optimization
|
|
16
|
-
- Server-side rendering best practices
|
|
17
|
-
- Data fetching patterns
|
|
18
|
-
|
|
19
|
-
### 2. Web Design Review
|
|
20
|
-
- Accessibility audit (100+ rules)
|
|
21
|
-
- UX/UI best practices
|
|
22
|
-
- ARIA labels and focus states
|
|
23
|
-
- Dark mode, i18n support
|
|
24
|
-
|
|
25
|
-
### 3. Vercel Deployment
|
|
26
|
-
- Auto-detect 40+ frameworks
|
|
27
|
-
- One-command deployment
|
|
28
|
-
- Preview URL generation
|
|
29
|
-
- Ownership transfer support
|
|
30
|
-
|
|
31
|
-
## Required Skills
|
|
32
|
-
|
|
33
|
-
| Skill | Category | Purpose |
|
|
34
|
-
|-------|----------|---------|
|
|
35
|
-
| react-best-practices | development | React/Next.js optimization |
|
|
36
|
-
| web-design-guidelines | development | UI/UX code review |
|
|
37
|
-
| vercel-deploy | development | Deployment automation |
|
|
38
|
-
|
|
39
|
-
## Workflow
|
|
40
|
-
|
|
41
|
-
```
|
|
42
|
-
1. Analyze project structure
|
|
43
|
-
2. Apply relevant skill based on task:
|
|
44
|
-
- Code review → web-design-guidelines
|
|
45
|
-
- Performance → react-best-practices
|
|
46
|
-
- Deploy → vercel-deploy
|
|
47
|
-
3. Execute skill instructions
|
|
48
|
-
4. Report results
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
## Usage Triggers
|
|
52
|
-
|
|
53
|
-
- "Optimize React performance"
|
|
54
|
-
- "Review UI code"
|
|
55
|
-
- "Check accessibility"
|
|
56
|
-
- "Deploy to Vercel"
|
|
57
|
-
- "Audit bundle size"
|
|
58
|
-
|
|
59
|
-
## Update
|
|
60
|
-
|
|
61
|
-
```bash
|
|
62
|
-
# Check for updates
|
|
63
|
-
# Origin: https://github.com/vercel-labs/agent-skills/releases
|
|
64
|
-
|
|
65
|
-
# Update command
|
|
66
|
-
npx add-skill vercel-labs/agent-skills
|
|
67
|
-
```
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
# Vercel Agent
|
|
2
|
-
# External agent from vercel-labs/agent-skills
|
|
3
|
-
|
|
4
|
-
metadata:
|
|
5
|
-
name: vercel-agent
|
|
6
|
-
type: sw-engineer/frontend
|
|
7
|
-
description: Frontend development agent with React/Next.js optimization, web design review, and Vercel deployment capabilities
|
|
8
|
-
|
|
9
|
-
source:
|
|
10
|
-
type: external
|
|
11
|
-
origin: github
|
|
12
|
-
url: https://github.com/vercel-labs/agent-skills
|
|
13
|
-
version: "1.0.0"
|
|
14
|
-
last_updated: "2025-01-22"
|
|
15
|
-
update_command: "npx add-skill vercel-labs/agent-skills"
|
|
16
|
-
changelog_url: https://github.com/vercel-labs/agent-skills/releases
|
|
17
|
-
|
|
18
|
-
skills:
|
|
19
|
-
- name: react-best-practices
|
|
20
|
-
category: development
|
|
21
|
-
path: ../../../../skills/development/react-best-practices
|
|
22
|
-
|
|
23
|
-
- name: web-design-guidelines
|
|
24
|
-
category: development
|
|
25
|
-
path: ../../../../skills/development/web-design-guidelines
|
|
26
|
-
|
|
27
|
-
- name: vercel-deploy
|
|
28
|
-
category: development
|
|
29
|
-
path: ../../../../skills/development/vercel-deploy
|
|
30
|
-
|
|
31
|
-
capabilities:
|
|
32
|
-
- React/Next.js performance optimization
|
|
33
|
-
- UI code review (accessibility, UX)
|
|
34
|
-
- Vercel deployment automation
|
|
35
|
-
- Bundle size optimization
|
|
36
|
-
- Web design best practices
|
|
37
|
-
|
|
38
|
-
triggers:
|
|
39
|
-
- "React optimization"
|
|
40
|
-
- "UI review"
|
|
41
|
-
- "Deploy to Vercel"
|
|
42
|
-
- "Performance check"
|
|
43
|
-
- "Accessibility audit"
|
package/templates/agents/sw-engineer/frontend/vercel-agent/refs/react-best-practices/SKILL.md
DELETED
|
@@ -1,100 +0,0 @@
|
|
|
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.
|
package/templates/agents/sw-engineer/frontend/vercel-agent/refs/react-best-practices/index.yaml
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
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
|