codeforge-dev 1.12.0 → 1.14.1

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 (226) hide show
  1. package/.devcontainer/CHANGELOG.md +175 -2
  2. package/.devcontainer/CLAUDE.md +61 -268
  3. package/.devcontainer/README.md +17 -9
  4. package/.devcontainer/config/defaults/ccstatusline-settings.json +147 -0
  5. package/.devcontainer/config/defaults/main-system-prompt.md +6 -1
  6. package/.devcontainer/config/defaults/rules/spec-workflow.md +1 -55
  7. package/.devcontainer/config/defaults/rules/workspace-scope.md +13 -4
  8. package/.devcontainer/config/defaults/settings.json +5 -3
  9. package/.devcontainer/config/file-manifest.json +14 -0
  10. package/.devcontainer/devcontainer.json +32 -7
  11. package/.devcontainer/docs/optional-features.md +0 -65
  12. package/.devcontainer/docs/plugins.md +38 -23
  13. package/.devcontainer/features/ast-grep/devcontainer-feature.json +0 -1
  14. package/.devcontainer/features/biome/install.sh +13 -0
  15. package/.devcontainer/features/ccburn/devcontainer-feature.json +0 -1
  16. package/.devcontainer/features/ccms/devcontainer-feature.json +0 -1
  17. package/.devcontainer/features/ccms/install.sh +1 -1
  18. package/.devcontainer/features/ccstatusline/devcontainer-feature.json +0 -1
  19. package/.devcontainer/features/ccstatusline/install.sh +17 -115
  20. package/.devcontainer/features/ccusage/devcontainer-feature.json +0 -1
  21. package/.devcontainer/features/chromaterm/README.md +42 -0
  22. package/.devcontainer/features/chromaterm/chromaterm.yml +35 -0
  23. package/.devcontainer/features/chromaterm/devcontainer-feature.json +22 -0
  24. package/.devcontainer/features/chromaterm/install.sh +113 -0
  25. package/.devcontainer/features/claude-monitor/devcontainer-feature.json +0 -1
  26. package/.devcontainer/features/claude-session-dashboard/README.md +40 -0
  27. package/.devcontainer/features/claude-session-dashboard/devcontainer-feature.json +34 -0
  28. package/.devcontainer/features/claude-session-dashboard/install.sh +172 -0
  29. package/.devcontainer/features/kitty-terminfo/README.md +32 -0
  30. package/.devcontainer/features/kitty-terminfo/devcontainer-feature.json +13 -0
  31. package/.devcontainer/features/kitty-terminfo/install.sh +72 -0
  32. package/.devcontainer/features/lsp-servers/devcontainer-feature.json +0 -1
  33. package/.devcontainer/features/mcp-qdrant/devcontainer-feature.json +0 -1
  34. package/.devcontainer/features/shellcheck/install.sh +6 -2
  35. package/.devcontainer/features/tree-sitter/devcontainer-feature.json +0 -1
  36. package/.devcontainer/plugins/devs-marketplace/.claude-plugin/marketplace.json +48 -59
  37. package/.devcontainer/plugins/devs-marketplace/plugins/agent-system/.claude-plugin/plugin.json +7 -0
  38. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/AGENT-REDIRECTION.md +7 -12
  39. package/.devcontainer/plugins/devs-marketplace/plugins/agent-system/README.md +197 -0
  40. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/REVIEW-RUBRIC.md +1 -1
  41. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/architect.md +3 -1
  42. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/bash-exec.md +3 -0
  43. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/claude-guide.md +5 -2
  44. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/debug-logs.md +7 -2
  45. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/dependency-analyst.md +6 -2
  46. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/doc-writer.md +4 -1
  47. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/explorer.md +4 -2
  48. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/generalist.md +10 -2
  49. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/git-archaeologist.md +5 -2
  50. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/migrator.md +4 -1
  51. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/perf-profiler.md +4 -1
  52. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/refactorer.md +5 -1
  53. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/researcher.md +6 -2
  54. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/security-auditor.md +5 -2
  55. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/spec-writer.md +3 -1
  56. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/statusline-config.md +4 -1
  57. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/agents/test-writer.md +4 -1
  58. package/.devcontainer/plugins/devs-marketplace/plugins/agent-system/hooks/hooks.json +51 -0
  59. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/scripts/guard-readonly-bash.py +2 -2
  60. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/scripts/inject-cwd.py +7 -4
  61. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/scripts/redirect-builtin-agents.py +17 -6
  62. package/.devcontainer/plugins/devs-marketplace/plugins/agent-system/scripts/task-completed-check.py +166 -0
  63. package/.devcontainer/plugins/devs-marketplace/plugins/agent-system/scripts/teammate-idle-check.py +81 -0
  64. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/scripts/verify-no-regression.py +14 -10
  65. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → agent-system}/scripts/verify-tests-pass.py +2 -14
  66. package/.devcontainer/plugins/devs-marketplace/plugins/auto-code-quality/README.md +17 -31
  67. package/.devcontainer/plugins/devs-marketplace/plugins/auto-code-quality/hooks/hooks.json +5 -1
  68. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → auto-code-quality}/scripts/advisory-test-runner.py +9 -8
  69. package/.devcontainer/plugins/devs-marketplace/plugins/codeforge-lsp/README.md +28 -0
  70. package/.devcontainer/plugins/devs-marketplace/plugins/dangerous-command-blocker/README.md +28 -0
  71. package/.devcontainer/plugins/devs-marketplace/plugins/dangerous-command-blocker/scripts/block-dangerous.py +2 -2
  72. package/.devcontainer/plugins/devs-marketplace/plugins/notify-hook/README.md +28 -0
  73. package/.devcontainer/plugins/devs-marketplace/plugins/notify-hook/hooks/hooks.json +0 -1
  74. package/.devcontainer/plugins/devs-marketplace/plugins/protected-files-guard/README.md +28 -0
  75. package/.devcontainer/plugins/devs-marketplace/plugins/protected-files-guard/scripts/guard-protected-bash.py +1 -1
  76. package/.devcontainer/plugins/devs-marketplace/plugins/protected-files-guard/scripts/guard-protected.py +2 -2
  77. package/.devcontainer/plugins/devs-marketplace/plugins/session-context/.claude-plugin/plugin.json +7 -0
  78. package/.devcontainer/plugins/devs-marketplace/plugins/session-context/README.md +140 -0
  79. package/.devcontainer/plugins/devs-marketplace/plugins/session-context/hooks/hooks.json +33 -0
  80. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → session-context}/scripts/commit-reminder.py +3 -2
  81. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → session-context}/scripts/git-state-injector.py +18 -2
  82. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → session-context}/scripts/todo-harvester.py +9 -1
  83. package/.devcontainer/plugins/devs-marketplace/plugins/skill-engine/.claude-plugin/plugin.json +7 -0
  84. package/.devcontainer/plugins/devs-marketplace/plugins/skill-engine/README.md +158 -0
  85. package/.devcontainer/plugins/devs-marketplace/plugins/skill-engine/hooks/hooks.json +16 -0
  86. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/scripts/skill-suggester.py +189 -100
  87. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/api-design/SKILL.md +9 -6
  88. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/ast-grep-patterns/SKILL.md +7 -6
  89. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/claude-agent-sdk/SKILL.md +8 -8
  90. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/claude-code-headless/SKILL.md +8 -9
  91. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/debugging/SKILL.md +11 -7
  92. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/dependency-management/SKILL.md +10 -6
  93. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/docker/SKILL.md +8 -8
  94. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/docker-py/SKILL.md +9 -7
  95. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/documentation-patterns/SKILL.md +7 -6
  96. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/fastapi/SKILL.md +9 -8
  97. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/git-forensics/SKILL.md +11 -9
  98. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/migration-patterns/SKILL.md +7 -6
  99. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/performance-profiling/SKILL.md +10 -8
  100. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/pydantic-ai/SKILL.md +8 -7
  101. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/refactoring-patterns/SKILL.md +9 -8
  102. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/security-checklist/SKILL.md +9 -8
  103. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/skill-building/SKILL.md +7 -7
  104. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/sqlite/SKILL.md +9 -7
  105. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/svelte5/SKILL.md +7 -8
  106. package/.devcontainer/plugins/devs-marketplace/plugins/skill-engine/skills/team/SKILL.md +271 -0
  107. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/testing/SKILL.md +10 -7
  108. package/.devcontainer/plugins/devs-marketplace/plugins/spec-workflow/.claude-plugin/plugin.json +7 -0
  109. package/.devcontainer/plugins/devs-marketplace/plugins/spec-workflow/README.md +192 -0
  110. package/.devcontainer/plugins/devs-marketplace/plugins/spec-workflow/hooks/hooks.json +16 -0
  111. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/scripts/spec-reminder.py +3 -2
  112. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/skills/spec-build/SKILL.md +9 -6
  113. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/skills/spec-check/SKILL.md +10 -5
  114. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/skills/spec-init/SKILL.md +8 -4
  115. package/.devcontainer/plugins/devs-marketplace/plugins/spec-workflow/skills/spec-init/references/roadmap-template.md +33 -0
  116. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/skills/spec-new/SKILL.md +8 -4
  117. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/skills/spec-refine/SKILL.md +10 -7
  118. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/skills/spec-review/SKILL.md +10 -6
  119. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/skills/spec-update/SKILL.md +10 -5
  120. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/skills/specification-writing/SKILL.md +9 -9
  121. package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/.claude-plugin/plugin.json +1 -2
  122. package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/README.md +28 -0
  123. package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/hooks/hooks.json +16 -0
  124. package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → ticket-workflow}/scripts/ticket-linker.py +9 -1
  125. package/.devcontainer/plugins/devs-marketplace/plugins/workspace-scope-guard/README.md +104 -32
  126. package/.devcontainer/plugins/devs-marketplace/plugins/workspace-scope-guard/hooks/hooks.json +49 -3
  127. package/.devcontainer/plugins/devs-marketplace/plugins/workspace-scope-guard/scripts/guard-workspace-scope.py +269 -58
  128. package/.devcontainer/plugins/devs-marketplace/plugins/workspace-scope-guard/scripts/inject-workspace-cwd.py +44 -0
  129. package/.devcontainer/scripts/setup-aliases.sh +13 -5
  130. package/.devcontainer/scripts/setup-config.sh +1 -0
  131. package/.devcontainer/scripts/setup-projects.sh +1 -1
  132. package/README.md +5 -5
  133. package/package.json +6 -2
  134. package/setup.js +3 -2
  135. package/.devcontainer/.env +0 -33
  136. package/.devcontainer/features/README.md +0 -126
  137. package/.devcontainer/plugins/devs-marketplace/plugins/auto-formatter/.claude-plugin/plugin.json +0 -7
  138. package/.devcontainer/plugins/devs-marketplace/plugins/auto-formatter/README.md +0 -81
  139. package/.devcontainer/plugins/devs-marketplace/plugins/auto-formatter/hooks/hooks.json +0 -17
  140. package/.devcontainer/plugins/devs-marketplace/plugins/auto-formatter/scripts/__pycache__/format-on-stop.cpython-314.pyc +0 -0
  141. package/.devcontainer/plugins/devs-marketplace/plugins/auto-formatter/scripts/format-on-stop.py +0 -297
  142. package/.devcontainer/plugins/devs-marketplace/plugins/auto-linter/.claude-plugin/plugin.json +0 -7
  143. package/.devcontainer/plugins/devs-marketplace/plugins/auto-linter/README.md +0 -92
  144. package/.devcontainer/plugins/devs-marketplace/plugins/auto-linter/hooks/hooks.json +0 -17
  145. package/.devcontainer/plugins/devs-marketplace/plugins/auto-linter/scripts/__pycache__/lint-file.cpython-314.pyc +0 -0
  146. package/.devcontainer/plugins/devs-marketplace/plugins/auto-linter/scripts/lint-file.py +0 -536
  147. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/.claude-plugin/plugin.json +0 -8
  148. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/README.md +0 -250
  149. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/hooks/hooks.json +0 -112
  150. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/advisory-test-runner.cpython-314.pyc +0 -0
  151. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/collect-edited-files.cpython-314.pyc +0 -0
  152. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/commit-reminder.cpython-314.pyc +0 -0
  153. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/git-state-injector.cpython-314.pyc +0 -0
  154. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/guard-readonly-bash.cpython-314.pyc +0 -0
  155. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/redirect-builtin-agents.cpython-314.pyc +0 -0
  156. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/skill-suggester.cpython-314.pyc +0 -0
  157. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/syntax-validator.cpython-314.pyc +0 -0
  158. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/ticket-linker.cpython-314.pyc +0 -0
  159. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/todo-harvester.cpython-314.pyc +0 -0
  160. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/verify-no-regression.cpython-314.pyc +0 -0
  161. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/__pycache__/verify-tests-pass.cpython-314.pyc +0 -0
  162. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/collect-edited-files.py +0 -46
  163. package/.devcontainer/plugins/devs-marketplace/plugins/code-directive/scripts/syntax-validator.py +0 -146
  164. package/.devcontainer/plugins/devs-marketplace/plugins/dangerous-command-blocker/scripts/__pycache__/block-dangerous.cpython-314.pyc +0 -0
  165. package/.devcontainer/plugins/devs-marketplace/plugins/protected-files-guard/scripts/__pycache__/guard-protected.cpython-314.pyc +0 -0
  166. package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/.claude-plugin/system-prompt.md +0 -184
  167. package/.devcontainer/plugins/devs-marketplace/plugins/workspace-scope-guard/scripts/__pycache__/guard-workspace-scope.cpython-314.pyc +0 -0
  168. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive/.claude-plugin/commands/debug.md → agent-system/skills/debug/SKILL.md} +0 -0
  169. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/api-design/references/error-handling.md +0 -0
  170. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/api-design/references/rest-conventions.md +0 -0
  171. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/ast-grep-patterns/references/language-patterns.md +0 -0
  172. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/claude-agent-sdk/references/sdk-typescript-reference.md +0 -0
  173. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/claude-code-headless/references/cli-flags-and-output.md +0 -0
  174. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/claude-code-headless/references/sdk-and-mcp.md +0 -0
  175. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/debugging/references/error-patterns.md +0 -0
  176. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/debugging/references/log-locations.md +0 -0
  177. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/dependency-management/references/ecosystem-commands.md +0 -0
  178. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/dependency-management/references/license-compliance.md +0 -0
  179. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/docker/references/compose-services.md +0 -0
  180. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/docker/references/dockerfile-patterns.md +0 -0
  181. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/docker-py/references/container-lifecycle.md +0 -0
  182. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/docker-py/references/resources-and-security.md +0 -0
  183. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/documentation-patterns/references/api-doc-templates.md +0 -0
  184. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/documentation-patterns/references/docstring-formats.md +0 -0
  185. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/fastapi/references/middleware-and-lifespan.md +0 -0
  186. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/fastapi/references/pydantic-models.md +0 -0
  187. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/fastapi/references/routing-and-dependencies.md +0 -0
  188. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/fastapi/references/sse-and-streaming.md +0 -0
  189. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/git-forensics/references/advanced-commands.md +0 -0
  190. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/git-forensics/references/investigation-playbooks.md +0 -0
  191. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/migration-patterns/references/javascript-migrations.md +0 -0
  192. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/migration-patterns/references/python-migrations.md +0 -0
  193. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/performance-profiling/references/interpreting-results.md +0 -0
  194. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/performance-profiling/references/tool-commands.md +0 -0
  195. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/pydantic-ai/references/agents-and-tools.md +0 -0
  196. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/pydantic-ai/references/models-and-streaming.md +0 -0
  197. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/refactoring-patterns/references/safe-transformations.md +0 -0
  198. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/refactoring-patterns/references/smell-catalog.md +0 -0
  199. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/security-checklist/references/owasp-patterns.md +0 -0
  200. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/security-checklist/references/secrets-patterns.md +0 -0
  201. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/skill-building/references/cross-vendor-principles.md +0 -0
  202. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/skill-building/references/patterns-and-antipatterns.md +0 -0
  203. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/skill-building/references/skill-authoring-patterns.md +0 -0
  204. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/sqlite/references/advanced-queries.md +0 -0
  205. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/sqlite/references/javascript-patterns.md +0 -0
  206. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/sqlite/references/python-patterns.md +0 -0
  207. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/sqlite/references/schema-and-pragmas.md +0 -0
  208. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/svelte5/references/ai-sdk-svelte.md +0 -0
  209. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/svelte5/references/component-patterns.md +0 -0
  210. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/svelte5/references/layercake.md +0 -0
  211. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/svelte5/references/migration-guide.md +0 -0
  212. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/svelte5/references/runes-and-reactivity.md +0 -0
  213. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/svelte5/references/spa-and-routing.md +0 -0
  214. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/svelte5/references/svelte-dnd-action.md +0 -0
  215. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/testing/references/fastapi-testing.md +0 -0
  216. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → skill-engine}/skills/testing/references/svelte-testing.md +0 -0
  217. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/skills/spec-build/references/review-checklist.md +0 -0
  218. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/skills/spec-init/references/backlog-template.md +0 -0
  219. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/skills/spec-init/references/milestones-template.md +0 -0
  220. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/skills/spec-new/references/template.md +0 -0
  221. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/skills/specification-writing/references/criteria-patterns.md +0 -0
  222. /package/.devcontainer/plugins/devs-marketplace/plugins/{code-directive → spec-workflow}/skills/specification-writing/references/ears-templates.md +0 -0
  223. /package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/{.claude-plugin/commands/ticket/357/200/272create-pr.md" → skills/ticketcreate-pr/SKILL.md} +0 -0
  224. /package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/{.claude-plugin/commands/ticket/357/200/272new.md" → skills/ticketnew/SKILL.md} +0 -0
  225. /package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/{.claude-plugin/commands/ticket/357/200/272review-commit.md" → skills/ticketreview-commit/SKILL.md} +0 -0
  226. /package/.devcontainer/plugins/devs-marketplace/plugins/ticket-workflow/{.claude-plugin/commands/ticket/357/200/272work.md" → skills/ticketwork/SKILL.md} +0 -0
@@ -0,0 +1,271 @@
1
+ ---
2
+ name: team
3
+ description: >-
4
+ Guides agent team orchestration with TeamCreate, parallel teammate
5
+ spawning, task coordination, specialist agent selection, and
6
+ --teammate-mode configuration for concurrent workstreams. USE WHEN
7
+ the user asks to "spawn a team", "create a team of agents", "use a
8
+ swarm", "work in parallel", "coordinate multiple agents", "split this
9
+ across agents", "team up", or works with TeamCreate, SendMessage, and
10
+ multi-agent workflows. DO NOT USE for single-agent sequential tasks
11
+ where parallelism adds no value — a team requires 3+ independent
12
+ workstreams.
13
+ version: 0.2.0
14
+ disable-model-invocation: true
15
+ ---
16
+
17
+ # Agent Team Orchestration
18
+
19
+ ## Mental Model
20
+
21
+ A team is a group of specialist agents working in parallel under a lead (you). Each teammate runs independently with its own context — they share a task list but not conversation history. The lead decomposes work into parallel streams, spawns specialists, assigns tasks, and coordinates integration.
22
+
23
+ Teams add value only when work can be parallelized. If every task depends on the previous one, a single agent is faster. The threshold: **3+ independent workstreams** that can run concurrently.
24
+
25
+ ```
26
+ Lead (you)
27
+ ├── TeamCreate → creates the team
28
+ ├── TaskCreate (×N) → defines work units
29
+ ├── Task (×N) → spawns specialist teammates
30
+ ├── TaskUpdate (×N) → assigns tasks to teammates
31
+ ├── SendMessage → coordinates during execution
32
+ └── TeamDelete → cleans up after completion
33
+ ```
34
+
35
+ ---
36
+
37
+ ## Two Modes
38
+
39
+ Parse `$ARGUMENTS` for an optional `--now` flag to determine behavior:
40
+
41
+ | Input | Mode | Behavior |
42
+ |-------|------|----------|
43
+ | `/team refactor the auth module` | Guidance | Absorb team knowledge, propose a plan, discuss with user |
44
+ | `/team --now refactor the auth module` | Immediate | Create team, spawn agents, start work without waiting |
45
+ | `/team` | Guidance | Ask the user what the team should accomplish |
46
+
47
+ Strip `--now` from the purpose string before using it. Everything remaining is `<PURPOSE>`.
48
+
49
+ ### Guidance Mode (default — no `--now`)
50
+
51
+ Inject the knowledge in this skill into context. **Do not force immediate action.** Analyze the purpose, propose a team composition, and discuss the approach with the user before acting. Use your judgment about when to create the team.
52
+
53
+ ### Immediate Mode (`--now` flag present)
54
+
55
+ Act now without waiting for further input:
56
+
57
+ 1. **Analyze purpose** — determine workstreams and specialist roles needed
58
+ 2. **Create team** — `TeamCreate` with a kebab-case name derived from purpose
59
+ 3. **Create tasks** — `TaskCreate` for each work unit with dependencies via `TaskUpdate`
60
+ 4. **Spawn teammates** — `Task` with `team_name`, specialist `subagent_type`, descriptive `name`
61
+ 5. **Assign tasks** — `TaskUpdate` with `owner` set to each teammate's name
62
+ 6. **Coordinate** — monitor via `TaskList`, message via `SendMessage`
63
+ 7. **Shutdown** — `shutdown_request` to all teammates, then `TeamDelete`
64
+
65
+ ---
66
+
67
+ ## Team Lifecycle
68
+
69
+ ### 1. Create the Team
70
+
71
+ ```
72
+ TeamCreate:
73
+ team_name: "auth-refactor" # kebab-case, descriptive
74
+ description: "Refactor auth module for OAuth2 support"
75
+ ```
76
+
77
+ One team per lead session. No nested teams.
78
+
79
+ ### 2. Create Tasks
80
+
81
+ Each task should be independently completable by one agent:
82
+
83
+ ```
84
+ TaskCreate:
85
+ subject: "Write unit tests for OAuth2 flow" # imperative
86
+ description: "Full context the assignee needs..." # self-contained
87
+ activeForm: "Writing OAuth2 unit tests" # present continuous
88
+ ```
89
+
90
+ Set ordering constraints with `TaskUpdate`:
91
+ - `addBlockedBy: ["1"]` — this task waits for task 1
92
+ - `addBlocks: ["3"]` — task 3 waits for this task
93
+
94
+ ### 3. Spawn Teammates
95
+
96
+ Each teammate is spawned via the `Task` tool with `team_name`:
97
+
98
+ ```
99
+ Task:
100
+ team_name: "auth-refactor"
101
+ subagent_type: "agent-system:test-writer" # specialist agent type
102
+ name: "test-writer" # used for messaging and assignment
103
+ prompt: "All context needed for the work..." # teammates have NO prior history
104
+ ```
105
+
106
+ **Critical:** Teammates do not inherit your conversation. The spawn `prompt` must include every piece of context the teammate needs — file paths, requirements, constraints, conventions.
107
+
108
+ ### 4. Assign Tasks
109
+
110
+ ```
111
+ TaskUpdate:
112
+ taskId: "2"
113
+ owner: "test-writer" # matches the teammate's name
114
+ ```
115
+
116
+ ### 5. Coordinate
117
+
118
+ - **Check progress:** `TaskList` shows all tasks with status and owner
119
+ - **Direct message:** `SendMessage` with `type: "message"` and `recipient: "test-writer"`
120
+ - **Broadcast:** `SendMessage` with `type: "broadcast"` — use ONLY for critical team-wide issues
121
+ - **Idle is normal:** Teammates go idle after each turn. This is expected. Send a message to wake them.
122
+ - **Quality gate hooks:** TeammateIdle and TaskCompleted hooks run automatically. TeammateIdle checks for incomplete tasks (exit 2 → teammate keeps working); TaskCompleted runs the test suite (exit 2 → task stays open). See agent-system plugin hooks.
123
+
124
+ **In-process mode keyboard shortcuts:**
125
+
126
+ | Shortcut | Action |
127
+ |----------|--------|
128
+ | `Shift+Down` | Cycle through teammates |
129
+ | `Ctrl+T` | Toggle task list |
130
+ | `Enter` | View a teammate's session |
131
+ | `Escape` | Interrupt teammate's current turn |
132
+
133
+ > **Tip:** Use `claude --teammate-mode in-process` for per-session display mode override. Configure permanently via `teammateMode` in settings.json.
134
+
135
+ ### 5a. Plan Approval
136
+
137
+ When `CLAUDE_CODE_PLAN_MODE_REQUIRED` is `true` (current setting), teammates run in read-only plan mode until the lead approves their plan.
138
+
139
+ **Workflow:**
140
+ 1. Teammate enters plan mode → creates an implementation plan
141
+ 2. Lead receives `plan_approval_request` message with the plan
142
+ 3. Lead reviews the plan and sends `plan_approval_response` (approve or reject)
143
+ 4. On approval → teammate exits plan mode and implements
144
+ 5. On rejection → teammate stays in plan mode, revises, resubmits
145
+
146
+ **Influencing plans:** Include criteria in the spawn `prompt` to shape what the lead should look for (e.g., "only approve plans that include test coverage", "reject plans that modify shared utilities without coordination").
147
+
148
+ ### 6. Shutdown
149
+
150
+ When all tasks are complete:
151
+
152
+ 1. Send `shutdown_request` to each teammate via `SendMessage`
153
+ 2. Wait for confirmations
154
+ 3. `TeamDelete` to remove team and task directories
155
+ 4. Report results to the user
156
+
157
+ ---
158
+
159
+ ## Specialist Agent Types
160
+
161
+ Choose the agent whose domain matches the work. **Generalist is a last resort.**
162
+
163
+ | Agent Type | Domain | Capabilities |
164
+ |-----------|--------|-------------|
165
+ | `researcher` | Codebase & web research | Read-only |
166
+ | `test-writer` | Write test suites | Read + Write + Bash |
167
+ | `refactorer` | Safe code transformations | Read + Write + Bash |
168
+ | `doc-writer` | README, API docs, docstrings | Read + Write |
169
+ | `migrator` | Framework upgrades, version bumps | Read + Write + Bash |
170
+ | `security-auditor` | OWASP audit, secrets scan | Read-only |
171
+ | `git-archaeologist` | Git history investigation | Read-only + Bash |
172
+ | `dependency-analyst` | Outdated/vulnerable deps | Read-only + Bash |
173
+ | `spec-writer` | Requirements & acceptance criteria | Read-only |
174
+ | `perf-profiler` | Profiling & benchmarks | Read-only + Bash |
175
+ | `debug-logs` | Log analysis & diagnostics | Read-only + Bash |
176
+ | `architect` | Implementation planning | Read-only |
177
+ | `explorer` | Fast codebase search | Read-only |
178
+ | `generalist` | Multi-step tasks (last resort) | All tools |
179
+ | `bash-exec` | Command execution | Bash only |
180
+
181
+ Prefix with `agent-system:` when spawning (e.g., `agent-system:test-writer`).
182
+
183
+ ---
184
+
185
+ ## Use Cases
186
+
187
+ **Parallel code review** — split review criteria into independent domains (security, performance, test coverage). Each reviewer focuses on one lens, reducing blind spots.
188
+
189
+ **Competing hypotheses** — adversarial investigation where teammates explore different theories about a bug or design decision. Each builds evidence for their hypothesis; lead synthesizes findings.
190
+
191
+ **Cross-layer coordination** — frontend, backend, and tests each owned by a different teammate. Clear file ownership prevents conflicts; integration points are managed by the lead.
192
+
193
+ **Research sweep** — parallel investigation of libraries, APIs, or approaches. Each researcher covers one option; lead compares findings and makes the selection.
194
+
195
+ ---
196
+
197
+ ## Team Composition Examples
198
+
199
+ | Purpose | Recommended Team |
200
+ |---------|-----------------|
201
+ | Feature build | `researcher` + `test-writer` + `doc-writer` |
202
+ | Security hardening | `security-auditor` + `dependency-analyst` |
203
+ | Codebase cleanup | `refactorer` + `test-writer` |
204
+ | Migration project | `researcher` + `migrator` |
205
+ | Performance work | `perf-profiler` + `refactorer` |
206
+ | Full-stack feature | `architect` + `generalist` (backend) + `generalist` (frontend) + `test-writer` |
207
+ | Code audit | `security-auditor` + `dependency-analyst` + `perf-profiler` |
208
+ | Documentation sprint | `researcher` + `doc-writer` |
209
+
210
+ ---
211
+
212
+ ## Anti-Patterns
213
+
214
+ | Anti-Pattern | Why It Fails | Instead |
215
+ |-------------|-------------|---------|
216
+ | More than 5 teammates | Coordination overhead outweighs parallelism | Limit to 2–5, matching actual parallel workstreams |
217
+ | Same-file edits by two agents | Merge conflicts are unrecoverable | Assign file ownership — one agent per file |
218
+ | Sequential-only work | Team adds overhead with zero parallel benefit | Use a single agent |
219
+ | Generalist everywhere | Specialists carry domain knowledge and safety hooks | Pick the specialist whose domain matches |
220
+ | Empty spawn prompts | Teammates have no prior context | Include all requirements, file paths, conventions |
221
+ | Skipping shutdown | Orphaned agents consume resources | Always send `shutdown_request` + `TeamDelete` |
222
+ | Broadcasting for routine updates | Each broadcast = N messages (one per teammate) | Use direct `message` to specific teammates |
223
+
224
+ ---
225
+
226
+ ## Best Practices
227
+
228
+ - **Give teammates enough context** — they don't inherit conversation history. The spawn `prompt` must be self-contained: include file paths, requirements, constraints, and project conventions.
229
+ - **Size tasks appropriately** — too small = coordination overhead exceeds benefit; too large = work too long without check-ins. Aim for self-contained units producing clear deliverables, roughly 5-6 tasks per teammate.
230
+ - **Wait for teammates to finish** — leads sometimes start implementing work that teammates are handling. If you notice this, redirect yourself to monitoring and coordination.
231
+ - **Start with research and review** — for first-time team use, prefer tasks with clear boundaries that don't require code changes: reviewing PRs, researching libraries, investigating bugs.
232
+ - **Monitor and steer** — check progress via `TaskList`, redirect failing approaches, synthesize findings. Unattended teams risk wasted effort.
233
+ - **Avoid file conflicts** — break work so each teammate owns different files. Agents with `isolation: worktree` (test-writer, refactorer, doc-writer, migrator) get automatic file isolation via git worktrees.
234
+
235
+ ---
236
+
237
+ ## Limitations
238
+
239
+ - **No session resumption** — `/resume` does not restore in-process teammates. Plan team work to complete in one session.
240
+ - **Task status can lag** — teammates sometimes fail to mark tasks complete. Use `TaskList` to verify and `SendMessage` to prompt updates.
241
+ - **One team per session** — clean up the current team (`TeamDelete`) before starting a new one.
242
+ - **No nested teams** — teammates cannot create teams (TeamCreate/TeamDelete are disallowed for team members).
243
+ - **Lead is fixed** — leadership cannot be promoted or transferred during a session.
244
+ - **Permissions set at spawn** — all teammates inherit the lead's permission mode at spawn time.
245
+ - **Split panes require tmux or iTerm2** — in-process mode uses the terminal; external split-pane workflows need tmux or iTerm2 with `it2` CLI.
246
+
247
+ ---
248
+
249
+ ## Tool Reference
250
+
251
+ | Tool | Purpose | Key Parameters |
252
+ |------|---------|---------------|
253
+ | `TeamCreate` | Create the team | `team_name`, `description` |
254
+ | `Task` | Spawn teammate into team | `team_name`, `subagent_type`, `name`, `prompt` |
255
+ | `TaskCreate` | Add task to shared list | `subject`, `description`, `activeForm` |
256
+ | `TaskUpdate` | Assign, depend, complete | `taskId`, `owner`, `status`, `addBlockedBy` |
257
+ | `TaskList` | View all tasks and status | (none) |
258
+ | `TaskGet` | Read full task details | `taskId` |
259
+ | `SendMessage` | Communicate with teammates | `type`, `recipient`, `content`, `summary` |
260
+ | `TeamDelete` | Clean up after completion | (none) |
261
+
262
+ ---
263
+
264
+ ## Ambiguity Policy
265
+
266
+ - If `$ARGUMENTS` is empty (no purpose provided), ask: "What should the team accomplish?"
267
+ - If the purpose maps to a single workstream with no parallelism, advise against a team and offer to do the work directly.
268
+ - If unsure which specialists to pick, present 2–3 composition options with trade-offs and let the user choose.
269
+ - If the purpose is vague ("make the app better"), ask for specifics before composing a team.
270
+ - If a teammate reports a blocker, attempt to resolve it yourself or reassign the task before escalating to the user.
271
+ - In immediate mode, default to the most natural team composition. If genuinely ambiguous, fall back to guidance mode and ask.
@@ -1,13 +1,16 @@
1
1
  ---
2
2
  name: testing
3
3
  description: >-
4
- This skill should be used when the user asks to "write tests for a FastAPI endpoint",
5
- "test a Svelte component", "set up pytest fixtures for FastAPI",
6
- "configure Vitest for SvelteKit", "mock dependencies in FastAPI tests",
7
- "test SSE streaming endpoints", "write component tests with Testing Library",
8
- "set up database fixtures for API tests", or discusses pytest, httpx AsyncClient,
9
- Vitest, @testing-library/svelte, dependency overrides, or test fixtures.
10
- version: 0.1.0
4
+ Provides testing patterns for FastAPI endpoints and Svelte 5 components
5
+ using pytest and Vitest. USE WHEN the user asks to "write tests for a
6
+ FastAPI endpoint", "test a Svelte component", "set up pytest fixtures",
7
+ "configure Vitest for SvelteKit", "mock dependencies in tests", "test SSE
8
+ streaming endpoints", or works with pytest, httpx AsyncClient, Vitest,
9
+ @testing-library/svelte, MSW, pytest-anyio. DO NOT USE for general testing
10
+ theory unrelated to FastAPI or Svelte.
11
+ version: 0.2.0
12
+ allowed-tools: Bash, Read, Write, Edit, Glob, Grep
13
+ argument-hint: "[file or module]"
11
14
  ---
12
15
 
13
16
  # Testing (FastAPI + Svelte)
@@ -0,0 +1,7 @@
1
+ {
2
+ "name": "spec-workflow",
3
+ "description": "Specification lifecycle management: creation, refinement, building, reviewing, updating, and auditing",
4
+ "author": {
5
+ "name": "AnExiledDev"
6
+ }
7
+ }
@@ -0,0 +1,192 @@
1
+ # spec-workflow
2
+
3
+ Claude Code plugin that manages the full specification lifecycle: creating, refining, building, reviewing, updating, and auditing feature specs. Includes an advisory hook that reminds about spec updates when code changes but specs don't.
4
+
5
+ ## What It Does
6
+
7
+ Two capabilities:
8
+
9
+ 1. **Spec lifecycle skills** — 8 skills that cover the complete journey from bootstrapping a `.specs/` directory to closing out an as-built spec after implementation.
10
+
11
+ 2. **Spec reminder hook** — A `Stop` hook that fires when source code was modified but no `.specs/` files were updated, advising Claude to run `/spec-update`.
12
+
13
+ ### Skill Catalog
14
+
15
+ | Skill | Slash Command | Purpose |
16
+ |-------|---------------|---------|
17
+ | spec-init | `/spec-init` | Bootstrap `.specs/` directory with BACKLOG.md, MILESTONES.md, ROADMAP.md |
18
+ | spec-new | `/spec-new` | Create a new feature spec from EARS template |
19
+ | spec-refine | `/spec-refine` | Validate assumptions with user, upgrade requirements to `[user-approved]` |
20
+ | spec-build | `/spec-build` | Orchestrate full implementation: plan, build, review, close |
21
+ | spec-check | `/spec-check` | Audit all specs for health issues |
22
+ | spec-review | `/spec-review` | Verify implementation against a spec |
23
+ | spec-update | `/spec-update` | As-built closure: update spec to match implementation |
24
+ | specification-writing | `/skill specification-writing` | Domain knowledge for writing high-quality specs |
25
+
26
+ ### Spec Lifecycle
27
+
28
+ ```
29
+ /spec-init Bootstrap .specs/ directory
30
+ |
31
+ /spec-new Create feature spec (draft, [assumed] requirements)
32
+ |
33
+ /spec-refine Validate with user -> [user-approved] requirements
34
+ |
35
+ /spec-build 5-phase implementation orchestration:
36
+ | Phase 1: Discovery
37
+ | Phase 2: Planning
38
+ | Phase 3: Building ([ ] -> [~])
39
+ | Phase 4: Review ([~] -> [x])
40
+ | Phase 5: Closure (as-built update)
41
+ |
42
+ /spec-review Standalone verification (post-change audits)
43
+ |
44
+ /spec-update Manual as-built closure
45
+ |
46
+ /spec-check Health audit across all specs
47
+ ```
48
+
49
+ ### Acceptance Criteria Markers
50
+
51
+ | Marker | Meaning |
52
+ |--------|---------|
53
+ | `[ ]` | Not started |
54
+ | `[~]` | Implemented, not yet verified |
55
+ | `[x]` | Verified — tests pass, behavior confirmed |
56
+
57
+ ### Approval and Requirement Tags
58
+
59
+ - `**Approval:** draft` — Spec is in draft, not ready for implementation
60
+ - `**Approval:** user-approved` — Spec reviewed and approved by user
61
+ - `[assumed]` — Requirement inferred by Claude, needs validation
62
+ - `[user-approved]` — Requirement explicitly approved by user
63
+
64
+ ## How It Works
65
+
66
+ ### Hook Lifecycle
67
+
68
+ ```
69
+ Claude stops responding (Stop event)
70
+ |
71
+ +-> Stop fires
72
+ |
73
+ +-> spec-reminder.py
74
+ |
75
+ +-> .specs/ directory exists?
76
+ | |
77
+ | +-> No -> Silent exit (no output)
78
+ | +-> Yes -> Continue
79
+ |
80
+ +-> Source code modified this session?
81
+ | |
82
+ | +-> No -> Silent exit
83
+ | +-> Yes -> Continue
84
+ |
85
+ +-> .specs/ files also modified?
86
+ |
87
+ +-> Yes -> Silent exit (already updated)
88
+ +-> No -> Inject advisory: "Run /spec-update"
89
+ ```
90
+
91
+ ### Monitored Source Directories
92
+
93
+ The spec reminder watches for changes in these directories:
94
+
95
+ `src/`, `lib/`, `app/`, `pkg/`, `internal/`, `cmd/`, `tests/`, `api/`, `frontend/`, `backend/`, `packages/`, `services/`, `components/`, `pages/`, `routes/`
96
+
97
+ ### Exit Code Behavior
98
+
99
+ | Exit Code | Meaning |
100
+ |-----------|---------|
101
+ | 0 | Advisory injected (or silent — no action needed) |
102
+
103
+ The hook never blocks operations.
104
+
105
+ ### Error Handling
106
+
107
+ | Scenario | Behavior |
108
+ |----------|----------|
109
+ | No `.specs/` directory | Silent exit |
110
+ | Not a git repository | Silent exit |
111
+ | JSON parse failure | Silent exit |
112
+
113
+ ### Timeouts
114
+
115
+ | Hook | Timeout |
116
+ |------|---------|
117
+ | Spec reminder (Stop) | 8s |
118
+
119
+ ## Installation
120
+
121
+ ### CodeForge DevContainer
122
+
123
+ Pre-installed and activated automatically — no setup needed.
124
+
125
+ ### From GitHub
126
+
127
+ Use this plugin in any Claude Code setup:
128
+
129
+ 1. Clone the [CodeForge](https://github.com/AnExiledDev/CodeForge) repository:
130
+
131
+ ```bash
132
+ git clone https://github.com/AnExiledDev/CodeForge.git
133
+ ```
134
+
135
+ 2. Enable the plugin in your `.claude/settings.json`:
136
+
137
+ ```json
138
+ {
139
+ "enabledPlugins": {
140
+ "spec-workflow@<clone-path>/.devcontainer/plugins/devs-marketplace": true
141
+ }
142
+ }
143
+ ```
144
+
145
+ Replace `<clone-path>` with the absolute path to your CodeForge clone.
146
+
147
+ ## Plugin Structure
148
+
149
+ ```
150
+ spec-workflow/
151
+ +-- .claude-plugin/
152
+ | +-- plugin.json # Plugin metadata
153
+ +-- hooks/
154
+ | +-- hooks.json # Stop hook registration
155
+ +-- scripts/
156
+ | +-- spec-reminder.py # Spec update advisory (Stop)
157
+ +-- skills/
158
+ | +-- spec-init/ # Bootstrap .specs/ directory
159
+ | | +-- SKILL.md
160
+ | | +-- references/
161
+ | | +-- backlog-template.md
162
+ | | +-- milestones-template.md
163
+ | | +-- roadmap-template.md
164
+ | +-- spec-new/ # Create new feature spec
165
+ | | +-- SKILL.md
166
+ | | +-- references/
167
+ | | +-- template.md
168
+ | +-- spec-refine/ # Validate assumptions with user
169
+ | | +-- SKILL.md
170
+ | +-- spec-build/ # Full implementation orchestration
171
+ | | +-- SKILL.md
172
+ | | +-- references/
173
+ | | +-- review-checklist.md
174
+ | +-- spec-check/ # Spec health audit
175
+ | | +-- SKILL.md
176
+ | +-- spec-review/ # Implementation verification
177
+ | | +-- SKILL.md
178
+ | +-- spec-update/ # As-built closure
179
+ | | +-- SKILL.md
180
+ | +-- specification-writing/ # Domain knowledge skill
181
+ | +-- SKILL.md
182
+ | +-- references/
183
+ | +-- criteria-patterns.md
184
+ | +-- ears-templates.md
185
+ +-- README.md # This file
186
+ ```
187
+
188
+ ## Requirements
189
+
190
+ - Python 3.11+
191
+ - Git (for detecting file changes)
192
+ - Claude Code with plugin hook support (skills)
@@ -0,0 +1,16 @@
1
+ {
2
+ "description": "Spec reminder advisory when code is modified but specs are not updated",
3
+ "hooks": {
4
+ "Stop": [
5
+ {
6
+ "hooks": [
7
+ {
8
+ "type": "command",
9
+ "command": "python3 ${CLAUDE_PLUGIN_ROOT}/scripts/spec-reminder.py",
10
+ "timeout": 8
11
+ }
12
+ ]
13
+ }
14
+ ]
15
+ }
16
+ }
@@ -9,7 +9,8 @@ Injects an advisory reminder as additionalContext pointing the user to
9
9
  Only fires when a .specs/ directory exists (project uses the spec system).
10
10
 
11
11
  Reads hook input from stdin (JSON). Returns JSON on stdout.
12
- Always exits 0 (advisory, never blocking).
12
+ Blocks with decision/reason so Claude addresses the spec gap
13
+ before finishing. The stop_hook_active guard prevents infinite loops.
13
14
  """
14
15
 
15
16
  import json
@@ -115,7 +116,7 @@ def main():
115
116
  "or /spec-refine if the spec is still in draft status."
116
117
  )
117
118
 
118
- json.dump({"additionalContext": message}, sys.stdout)
119
+ json.dump({"decision": "block", "reason": message}, sys.stdout)
119
120
  sys.exit(0)
120
121
 
121
122
 
@@ -1,12 +1,15 @@
1
1
  ---
2
2
  name: spec-build
3
3
  description: >-
4
- This skill should be used when the user asks to "implement the spec",
5
- "build from spec", "start building the feature", "spec-build",
6
- "implement this feature from the spec", "build what the spec describes",
7
- or needs to orchestrate full implementation of an approved specification
8
- through a phased workflow of planning, building, reviewing, and closing.
9
- version: 0.1.0
4
+ Orchestrates full implementation of an approved specification through
5
+ 5 phases: discovery, planning, building, review, and closure. USE WHEN
6
+ the user asks to "implement the spec", "build from spec", "start building
7
+ the feature", "implement this feature", "build what the spec describes",
8
+ "run spec-build", or works with phased implementation workflows.
9
+ DO NOT USE for creating, refining, or updating specs — use spec-new,
10
+ spec-refine, or spec-update instead.
11
+ version: 0.2.0
12
+ argument-hint: "[spec-path]"
10
13
  ---
11
14
 
12
15
  # Spec-Driven Implementation
@@ -1,11 +1,16 @@
1
1
  ---
2
2
  name: spec-check
3
3
  description: >-
4
- This skill should be used when the user asks to "check spec status",
5
- "audit specs", "which specs are stale", "spec health", "find missing
6
- specs", "review spec quality", or needs a comprehensive audit of all
7
- specifications in the project.
8
- version: 0.1.0
4
+ Audits all specifications in a project for health issues including stale
5
+ status, missing sections, unapproved drafts, and assumed requirements.
6
+ USE WHEN the user asks to "check spec health", "audit specs", "which
7
+ specs are stale", "find missing specs", "review spec quality",
8
+ "run spec-check", "are my specs up to date", or works with .specs/
9
+ directory maintenance and specification metadata.
10
+ DO NOT USE for single-spec code review or implementation verification
11
+ — use spec-review for deep code-level audits against one spec.
12
+ version: 0.2.0
13
+ argument-hint: "[domain or path]"
9
14
  context: fork
10
15
  agent: explorer
11
16
  ---
@@ -1,10 +1,14 @@
1
1
  ---
2
2
  name: spec-init
3
3
  description: >-
4
- This skill should be used when the user asks to "initialize specs",
5
- "set up specs", "bootstrap specs", "start using specs", "create spec
6
- directory", "init specs for this project", or needs to set up the
7
- .specs/ directory structure for a project that doesn't have one yet.
4
+ Bootstraps the .specs/ directory structure for a project, creating
5
+ MILESTONES.md and BACKLOG.md from starter templates so spec-new has
6
+ a home. USE WHEN the user asks to "initialize specs", "set up specs",
7
+ "bootstrap specs", "start using specs", "create spec directory",
8
+ "init specs for this project", "set up .specs", or works with first-
9
+ time specification setup and project onboarding.
10
+ DO NOT USE if .specs/ already exists — use spec-check to audit health
11
+ or spec-new to add individual specs.
8
12
  version: 0.2.0
9
13
  ---
10
14
 
@@ -0,0 +1,33 @@
1
+ # Roadmap
2
+
3
+ > Features live in the priority-graded backlog until pulled into a version.
4
+ > Versions are scoped and spec'd when ready to build — not pre-assigned.
5
+ > See `BACKLOG.md` for the feature backlog.
6
+
7
+ ## How Versioning Works
8
+
9
+ 1. **Backlog** — All desired features live in `BACKLOG.md`, graded by priority.
10
+ 2. **Version scoping** — When ready to start a new version, pull features from the backlog.
11
+ 3. **Spec first** — Each feature in a version gets a spec before implementation begins.
12
+ 4. **Ship** — Version is done when all its specs are implemented and verified.
13
+
14
+ Only the **next version** is defined in detail. Everything else is backlog.
15
+
16
+ ## Released
17
+
18
+ _None yet._
19
+
20
+ ## Current
21
+
22
+ ### v0.1.0 — [Name] 🔧
23
+
24
+ - [ ] [Feature pulled from backlog]
25
+ - [ ] [Feature pulled from backlog]
26
+
27
+ ## Next
28
+
29
+ > Scoped from `BACKLOG.md` when current version is complete.
30
+
31
+ ## Out of Scope
32
+
33
+ - [Items explicitly not planned]
@@ -1,11 +1,15 @@
1
1
  ---
2
2
  name: spec-new
3
3
  description: >-
4
- This skill should be used when the user asks to "create a spec",
5
- "new feature spec", "write a spec for", "spec this feature",
6
- "start a new spec", "plan a feature", or needs to create a new
7
- specification file from the standard template.
4
+ Creates a new feature specification from the standard EARS template
5
+ with domain inference, acceptance criteria, and requirement tagging.
6
+ USE WHEN the user asks to "create a spec", "new feature spec", "write
7
+ a spec for", "spec this feature", "start a new spec", "plan a feature",
8
+ "add a spec", or works with .specs/ directory and feature planning.
9
+ DO NOT USE for updating existing specs after implementation — use
10
+ spec-update instead. Not for refining draft specs — use spec-refine.
8
11
  version: 0.2.0
12
+ argument-hint: "[feature-name] [domain]"
9
13
  ---
10
14
 
11
15
  # Create New Feature Specification