javi-forge 0.1.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.
Files changed (500) hide show
  1. package/.gitignore.template +105 -0
  2. package/.releaserc +44 -0
  3. package/README.md +45 -0
  4. package/ai-config/.skillignore +15 -0
  5. package/ai-config/AUTO_INVOKE.md +300 -0
  6. package/ai-config/agents/_TEMPLATE.md +93 -0
  7. package/ai-config/agents/business/api-designer.md +1657 -0
  8. package/ai-config/agents/business/business-analyst.md +1331 -0
  9. package/ai-config/agents/business/product-strategist.md +206 -0
  10. package/ai-config/agents/business/project-manager.md +178 -0
  11. package/ai-config/agents/business/requirements-analyst.md +1277 -0
  12. package/ai-config/agents/business/technical-writer.md +1679 -0
  13. package/ai-config/agents/creative/ux-designer.md +205 -0
  14. package/ai-config/agents/data-ai/ai-engineer.md +487 -0
  15. package/ai-config/agents/data-ai/analytics-engineer.md +953 -0
  16. package/ai-config/agents/data-ai/data-engineer.md +173 -0
  17. package/ai-config/agents/data-ai/data-scientist.md +672 -0
  18. package/ai-config/agents/data-ai/mlops-engineer.md +814 -0
  19. package/ai-config/agents/data-ai/prompt-engineer.md +772 -0
  20. package/ai-config/agents/development/angular-expert.md +620 -0
  21. package/ai-config/agents/development/backend-architect.md +795 -0
  22. package/ai-config/agents/development/database-specialist.md +212 -0
  23. package/ai-config/agents/development/frontend-specialist.md +686 -0
  24. package/ai-config/agents/development/fullstack-engineer.md +668 -0
  25. package/ai-config/agents/development/golang-pro.md +338 -0
  26. package/ai-config/agents/development/java-enterprise.md +400 -0
  27. package/ai-config/agents/development/javascript-pro.md +422 -0
  28. package/ai-config/agents/development/nextjs-pro.md +474 -0
  29. package/ai-config/agents/development/python-pro.md +570 -0
  30. package/ai-config/agents/development/react-pro.md +487 -0
  31. package/ai-config/agents/development/rust-pro.md +246 -0
  32. package/ai-config/agents/development/spring-boot-4-expert.md +326 -0
  33. package/ai-config/agents/development/typescript-pro.md +336 -0
  34. package/ai-config/agents/development/vue-specialist.md +605 -0
  35. package/ai-config/agents/infrastructure/cloud-architect.md +472 -0
  36. package/ai-config/agents/infrastructure/deployment-manager.md +358 -0
  37. package/ai-config/agents/infrastructure/devops-engineer.md +455 -0
  38. package/ai-config/agents/infrastructure/incident-responder.md +519 -0
  39. package/ai-config/agents/infrastructure/kubernetes-expert.md +705 -0
  40. package/ai-config/agents/infrastructure/monitoring-specialist.md +674 -0
  41. package/ai-config/agents/infrastructure/performance-engineer.md +658 -0
  42. package/ai-config/agents/orchestrator.md +241 -0
  43. package/ai-config/agents/quality/accessibility-auditor.md +1204 -0
  44. package/ai-config/agents/quality/code-reviewer-compact.md +123 -0
  45. package/ai-config/agents/quality/code-reviewer.md +363 -0
  46. package/ai-config/agents/quality/dependency-manager.md +743 -0
  47. package/ai-config/agents/quality/e2e-test-specialist.md +1005 -0
  48. package/ai-config/agents/quality/performance-tester.md +1086 -0
  49. package/ai-config/agents/quality/security-auditor.md +133 -0
  50. package/ai-config/agents/quality/test-engineer.md +453 -0
  51. package/ai-config/agents/specialists/api-designer.md +87 -0
  52. package/ai-config/agents/specialists/backend-architect.md +73 -0
  53. package/ai-config/agents/specialists/code-reviewer.md +77 -0
  54. package/ai-config/agents/specialists/db-optimizer.md +75 -0
  55. package/ai-config/agents/specialists/devops-engineer.md +83 -0
  56. package/ai-config/agents/specialists/documentation-writer.md +78 -0
  57. package/ai-config/agents/specialists/frontend-developer.md +75 -0
  58. package/ai-config/agents/specialists/performance-analyst.md +82 -0
  59. package/ai-config/agents/specialists/refactor-specialist.md +74 -0
  60. package/ai-config/agents/specialists/security-auditor.md +74 -0
  61. package/ai-config/agents/specialists/test-engineer.md +81 -0
  62. package/ai-config/agents/specialists/ux-consultant.md +76 -0
  63. package/ai-config/agents/specialized/agent-generator.md +1190 -0
  64. package/ai-config/agents/specialized/blockchain-developer.md +149 -0
  65. package/ai-config/agents/specialized/code-migrator.md +892 -0
  66. package/ai-config/agents/specialized/context-manager.md +978 -0
  67. package/ai-config/agents/specialized/documentation-writer.md +1078 -0
  68. package/ai-config/agents/specialized/ecommerce-expert.md +1756 -0
  69. package/ai-config/agents/specialized/embedded-engineer.md +1714 -0
  70. package/ai-config/agents/specialized/error-detective.md +1034 -0
  71. package/ai-config/agents/specialized/fintech-specialist.md +1659 -0
  72. package/ai-config/agents/specialized/freelance-project-planner-v2.md +1988 -0
  73. package/ai-config/agents/specialized/freelance-project-planner-v3.md +2136 -0
  74. package/ai-config/agents/specialized/freelance-project-planner-v4.md +4503 -0
  75. package/ai-config/agents/specialized/freelance-project-planner.md +722 -0
  76. package/ai-config/agents/specialized/game-developer.md +1963 -0
  77. package/ai-config/agents/specialized/healthcare-dev.md +1620 -0
  78. package/ai-config/agents/specialized/mobile-developer.md +188 -0
  79. package/ai-config/agents/specialized/parallel-plan-executor.md +506 -0
  80. package/ai-config/agents/specialized/plan-executor.md +485 -0
  81. package/ai-config/agents/specialized/solo-dev-planner-modular/00-INDEX.md +485 -0
  82. package/ai-config/agents/specialized/solo-dev-planner-modular/01-CORE.md +3493 -0
  83. package/ai-config/agents/specialized/solo-dev-planner-modular/02-SELF-CORRECTION.md +778 -0
  84. package/ai-config/agents/specialized/solo-dev-planner-modular/03-PROGRESSIVE-SETUP.md +918 -0
  85. package/ai-config/agents/specialized/solo-dev-planner-modular/04-DEPLOYMENT.md +1537 -0
  86. package/ai-config/agents/specialized/solo-dev-planner-modular/05-TESTING.md +2633 -0
  87. package/ai-config/agents/specialized/solo-dev-planner-modular/06-OPERATIONS.md +5610 -0
  88. package/ai-config/agents/specialized/solo-dev-planner-modular/INSTALL.md +335 -0
  89. package/ai-config/agents/specialized/solo-dev-planner-modular/QUICK-REFERENCE.txt +215 -0
  90. package/ai-config/agents/specialized/solo-dev-planner-modular/README.md +260 -0
  91. package/ai-config/agents/specialized/solo-dev-planner-modular/START-HERE.md +379 -0
  92. package/ai-config/agents/specialized/solo-dev-planner-modular/WORKFLOW-DIAGRAM.md +355 -0
  93. package/ai-config/agents/specialized/solo-dev-planner-modular/solo-dev-planner.md +279 -0
  94. package/ai-config/agents/specialized/template-writer.md +347 -0
  95. package/ai-config/agents/specialized/test-runner.md +99 -0
  96. package/ai-config/agents/specialized/vibekanban-smart-worker.md +244 -0
  97. package/ai-config/agents/specialized/wave-executor.md +138 -0
  98. package/ai-config/agents/specialized/workflow-optimizer.md +1114 -0
  99. package/ai-config/commands/git/changelog.md +32 -0
  100. package/ai-config/commands/git/ci-local.md +70 -0
  101. package/ai-config/commands/git/commit.md +35 -0
  102. package/ai-config/commands/git/fix-issue.md +23 -0
  103. package/ai-config/commands/git/pr-create.md +42 -0
  104. package/ai-config/commands/git/pr-review.md +50 -0
  105. package/ai-config/commands/git/worktree.md +39 -0
  106. package/ai-config/commands/refactoring/cleanup.md +24 -0
  107. package/ai-config/commands/refactoring/dead-code.md +40 -0
  108. package/ai-config/commands/refactoring/extract.md +31 -0
  109. package/ai-config/commands/testing/e2e.md +30 -0
  110. package/ai-config/commands/testing/tdd.md +36 -0
  111. package/ai-config/commands/testing/test-coverage.md +30 -0
  112. package/ai-config/commands/testing/test-fix.md +24 -0
  113. package/ai-config/commands/workflow/generate-agents-md.md +85 -0
  114. package/ai-config/commands/workflow/planning.md +47 -0
  115. package/ai-config/commands/workflows/compound.md +89 -0
  116. package/ai-config/commands/workflows/plan.md +77 -0
  117. package/ai-config/commands/workflows/review.md +78 -0
  118. package/ai-config/commands/workflows/work.md +75 -0
  119. package/ai-config/config.yaml +18 -0
  120. package/ai-config/hooks/_TEMPLATE.md +96 -0
  121. package/ai-config/hooks/block-dangerous-commands.md +75 -0
  122. package/ai-config/hooks/commit-guard.md +90 -0
  123. package/ai-config/hooks/context-loader.md +73 -0
  124. package/ai-config/hooks/improve-prompt.md +91 -0
  125. package/ai-config/hooks/learning-log.md +72 -0
  126. package/ai-config/hooks/model-router.md +86 -0
  127. package/ai-config/hooks/secret-scanner.md +64 -0
  128. package/ai-config/hooks/skill-validator.md +102 -0
  129. package/ai-config/hooks/task-artifact.md +114 -0
  130. package/ai-config/hooks/validate-workflow.md +100 -0
  131. package/ai-config/prompts/base.md +71 -0
  132. package/ai-config/prompts/modes/debug.md +34 -0
  133. package/ai-config/prompts/modes/deploy.md +40 -0
  134. package/ai-config/prompts/modes/research.md +32 -0
  135. package/ai-config/prompts/modes/review.md +33 -0
  136. package/ai-config/prompts/review-policy.md +79 -0
  137. package/ai-config/skills/_TEMPLATE.md +157 -0
  138. package/ai-config/skills/backend/api-gateway/SKILL.md +254 -0
  139. package/ai-config/skills/backend/bff-concepts/SKILL.md +239 -0
  140. package/ai-config/skills/backend/bff-spring/SKILL.md +364 -0
  141. package/ai-config/skills/backend/chi-router/SKILL.md +396 -0
  142. package/ai-config/skills/backend/error-handling/SKILL.md +255 -0
  143. package/ai-config/skills/backend/exceptions-spring/SKILL.md +323 -0
  144. package/ai-config/skills/backend/fastapi/SKILL.md +302 -0
  145. package/ai-config/skills/backend/gateway-spring/SKILL.md +390 -0
  146. package/ai-config/skills/backend/go-backend/SKILL.md +457 -0
  147. package/ai-config/skills/backend/gradle-multimodule/SKILL.md +274 -0
  148. package/ai-config/skills/backend/graphql-concepts/SKILL.md +352 -0
  149. package/ai-config/skills/backend/graphql-spring/SKILL.md +398 -0
  150. package/ai-config/skills/backend/grpc-concepts/SKILL.md +283 -0
  151. package/ai-config/skills/backend/grpc-spring/SKILL.md +445 -0
  152. package/ai-config/skills/backend/jwt-auth/SKILL.md +412 -0
  153. package/ai-config/skills/backend/notifications-concepts/SKILL.md +259 -0
  154. package/ai-config/skills/backend/recommendations-concepts/SKILL.md +261 -0
  155. package/ai-config/skills/backend/search-concepts/SKILL.md +263 -0
  156. package/ai-config/skills/backend/search-spring/SKILL.md +375 -0
  157. package/ai-config/skills/backend/spring-boot-4/SKILL.md +172 -0
  158. package/ai-config/skills/backend/websockets/SKILL.md +532 -0
  159. package/ai-config/skills/data-ai/ai-ml/SKILL.md +423 -0
  160. package/ai-config/skills/data-ai/analytics-concepts/SKILL.md +195 -0
  161. package/ai-config/skills/data-ai/analytics-spring/SKILL.md +340 -0
  162. package/ai-config/skills/data-ai/duckdb-analytics/SKILL.md +440 -0
  163. package/ai-config/skills/data-ai/langchain/SKILL.md +238 -0
  164. package/ai-config/skills/data-ai/mlflow/SKILL.md +302 -0
  165. package/ai-config/skills/data-ai/onnx-inference/SKILL.md +290 -0
  166. package/ai-config/skills/data-ai/powerbi/SKILL.md +352 -0
  167. package/ai-config/skills/data-ai/pytorch/SKILL.md +274 -0
  168. package/ai-config/skills/data-ai/scikit-learn/SKILL.md +321 -0
  169. package/ai-config/skills/data-ai/vector-db/SKILL.md +301 -0
  170. package/ai-config/skills/database/graph-databases/SKILL.md +218 -0
  171. package/ai-config/skills/database/graph-spring/SKILL.md +361 -0
  172. package/ai-config/skills/database/pgx-postgres/SKILL.md +512 -0
  173. package/ai-config/skills/database/redis-cache/SKILL.md +343 -0
  174. package/ai-config/skills/database/sqlite-embedded/SKILL.md +388 -0
  175. package/ai-config/skills/database/timescaledb/SKILL.md +320 -0
  176. package/ai-config/skills/docs/api-documentation/SKILL.md +293 -0
  177. package/ai-config/skills/docs/docs-spring/SKILL.md +377 -0
  178. package/ai-config/skills/docs/mustache-templates/SKILL.md +190 -0
  179. package/ai-config/skills/docs/technical-docs/SKILL.md +447 -0
  180. package/ai-config/skills/frontend/astro-ssr/SKILL.md +441 -0
  181. package/ai-config/skills/frontend/frontend-design/SKILL.md +54 -0
  182. package/ai-config/skills/frontend/frontend-web/SKILL.md +368 -0
  183. package/ai-config/skills/frontend/mantine-ui/SKILL.md +396 -0
  184. package/ai-config/skills/frontend/tanstack-query/SKILL.md +439 -0
  185. package/ai-config/skills/frontend/zod-validation/SKILL.md +417 -0
  186. package/ai-config/skills/frontend/zustand-state/SKILL.md +350 -0
  187. package/ai-config/skills/infrastructure/chaos-engineering/SKILL.md +244 -0
  188. package/ai-config/skills/infrastructure/chaos-spring/SKILL.md +378 -0
  189. package/ai-config/skills/infrastructure/devops-infra/SKILL.md +435 -0
  190. package/ai-config/skills/infrastructure/docker-containers/SKILL.md +420 -0
  191. package/ai-config/skills/infrastructure/kubernetes/SKILL.md +456 -0
  192. package/ai-config/skills/infrastructure/opentelemetry/SKILL.md +546 -0
  193. package/ai-config/skills/infrastructure/traefik-proxy/SKILL.md +474 -0
  194. package/ai-config/skills/infrastructure/woodpecker-ci/SKILL.md +315 -0
  195. package/ai-config/skills/mobile/ionic-capacitor/SKILL.md +504 -0
  196. package/ai-config/skills/mobile/mobile-ionic/SKILL.md +448 -0
  197. package/ai-config/skills/prompt-improver/SKILL.md +125 -0
  198. package/ai-config/skills/quality/ghagga-review/SKILL.md +216 -0
  199. package/ai-config/skills/references/hooks-patterns/SKILL.md +238 -0
  200. package/ai-config/skills/references/mcp-servers/SKILL.md +275 -0
  201. package/ai-config/skills/references/plugins-reference/SKILL.md +110 -0
  202. package/ai-config/skills/references/skills-reference/SKILL.md +420 -0
  203. package/ai-config/skills/references/subagent-templates/SKILL.md +193 -0
  204. package/ai-config/skills/systems-iot/modbus-protocol/SKILL.md +410 -0
  205. package/ai-config/skills/systems-iot/mqtt-rumqttc/SKILL.md +408 -0
  206. package/ai-config/skills/systems-iot/rust-systems/SKILL.md +386 -0
  207. package/ai-config/skills/systems-iot/tokio-async/SKILL.md +324 -0
  208. package/ai-config/skills/testing/playwright-e2e/SKILL.md +289 -0
  209. package/ai-config/skills/testing/testcontainers/SKILL.md +299 -0
  210. package/ai-config/skills/testing/vitest-testing/SKILL.md +381 -0
  211. package/ai-config/skills/workflow/ci-local-guide/SKILL.md +118 -0
  212. package/ai-config/skills/workflow/claude-automation-recommender/SKILL.md +299 -0
  213. package/ai-config/skills/workflow/claude-md-improver/SKILL.md +158 -0
  214. package/ai-config/skills/workflow/finishing-a-development-branch/SKILL.md +117 -0
  215. package/ai-config/skills/workflow/git-github/SKILL.md +334 -0
  216. package/ai-config/skills/workflow/git-github/references/examples.md +160 -0
  217. package/ai-config/skills/workflow/git-workflow/SKILL.md +214 -0
  218. package/ai-config/skills/workflow/ide-plugins/SKILL.md +277 -0
  219. package/ai-config/skills/workflow/ide-plugins-intellij/SKILL.md +401 -0
  220. package/ai-config/skills/workflow/obsidian-brain-workflow/SKILL.md +199 -0
  221. package/ai-config/skills/workflow/using-git-worktrees/SKILL.md +100 -0
  222. package/ai-config/skills/workflow/verification-before-completion/SKILL.md +73 -0
  223. package/ai-config/skills/workflow/wave-workflow/SKILL.md +178 -0
  224. package/ci-local/README.md +170 -0
  225. package/ci-local/ci-local.sh +297 -0
  226. package/ci-local/hooks/commit-msg +74 -0
  227. package/ci-local/hooks/pre-commit +162 -0
  228. package/ci-local/hooks/pre-push +41 -0
  229. package/ci-local/install.sh +49 -0
  230. package/ci-local/semgrep.yml +214 -0
  231. package/dist/commands/analyze.d.ts +9 -0
  232. package/dist/commands/analyze.d.ts.map +1 -0
  233. package/dist/commands/analyze.js +55 -0
  234. package/dist/commands/analyze.js.map +1 -0
  235. package/dist/commands/analyze.test.d.ts +2 -0
  236. package/dist/commands/analyze.test.d.ts.map +1 -0
  237. package/dist/commands/analyze.test.js +145 -0
  238. package/dist/commands/analyze.test.js.map +1 -0
  239. package/dist/commands/doctor.d.ts +7 -0
  240. package/dist/commands/doctor.d.ts.map +1 -0
  241. package/dist/commands/doctor.js +158 -0
  242. package/dist/commands/doctor.js.map +1 -0
  243. package/dist/commands/doctor.test.d.ts +2 -0
  244. package/dist/commands/doctor.test.d.ts.map +1 -0
  245. package/dist/commands/doctor.test.js +200 -0
  246. package/dist/commands/doctor.test.js.map +1 -0
  247. package/dist/commands/init.d.ts +9 -0
  248. package/dist/commands/init.d.ts.map +1 -0
  249. package/dist/commands/init.js +283 -0
  250. package/dist/commands/init.js.map +1 -0
  251. package/dist/commands/init.test.d.ts +2 -0
  252. package/dist/commands/init.test.d.ts.map +1 -0
  253. package/dist/commands/init.test.js +271 -0
  254. package/dist/commands/init.test.js.map +1 -0
  255. package/dist/commands/sync.d.ts +8 -0
  256. package/dist/commands/sync.d.ts.map +1 -0
  257. package/dist/commands/sync.js +201 -0
  258. package/dist/commands/sync.js.map +1 -0
  259. package/dist/constants.d.ts +21 -0
  260. package/dist/constants.d.ts.map +1 -0
  261. package/dist/constants.js +57 -0
  262. package/dist/constants.js.map +1 -0
  263. package/dist/e2e/aggressive.e2e.test.d.ts +2 -0
  264. package/dist/e2e/aggressive.e2e.test.d.ts.map +1 -0
  265. package/dist/e2e/aggressive.e2e.test.js +350 -0
  266. package/dist/e2e/aggressive.e2e.test.js.map +1 -0
  267. package/dist/e2e/commands.e2e.test.d.ts +2 -0
  268. package/dist/e2e/commands.e2e.test.d.ts.map +1 -0
  269. package/dist/e2e/commands.e2e.test.js +213 -0
  270. package/dist/e2e/commands.e2e.test.js.map +1 -0
  271. package/dist/index.d.ts +3 -0
  272. package/dist/index.d.ts.map +1 -0
  273. package/dist/index.js +82 -0
  274. package/dist/index.js.map +1 -0
  275. package/dist/lib/common.d.ts +17 -0
  276. package/dist/lib/common.d.ts.map +1 -0
  277. package/dist/lib/common.js +111 -0
  278. package/dist/lib/common.js.map +1 -0
  279. package/dist/lib/common.test.d.ts +2 -0
  280. package/dist/lib/common.test.d.ts.map +1 -0
  281. package/dist/lib/common.test.js +316 -0
  282. package/dist/lib/common.test.js.map +1 -0
  283. package/dist/lib/frontmatter.d.ts +18 -0
  284. package/dist/lib/frontmatter.d.ts.map +1 -0
  285. package/dist/lib/frontmatter.js +61 -0
  286. package/dist/lib/frontmatter.js.map +1 -0
  287. package/dist/lib/frontmatter.test.d.ts +2 -0
  288. package/dist/lib/frontmatter.test.d.ts.map +1 -0
  289. package/dist/lib/frontmatter.test.js +257 -0
  290. package/dist/lib/frontmatter.test.js.map +1 -0
  291. package/dist/lib/template.d.ts +24 -0
  292. package/dist/lib/template.d.ts.map +1 -0
  293. package/dist/lib/template.js +78 -0
  294. package/dist/lib/template.js.map +1 -0
  295. package/dist/lib/template.test.d.ts +2 -0
  296. package/dist/lib/template.test.d.ts.map +1 -0
  297. package/dist/lib/template.test.js +201 -0
  298. package/dist/lib/template.test.js.map +1 -0
  299. package/dist/types/index.d.ts +48 -0
  300. package/dist/types/index.d.ts.map +1 -0
  301. package/dist/types/index.js +2 -0
  302. package/dist/types/index.js.map +1 -0
  303. package/dist/ui/AnalyzeUI.d.ts +7 -0
  304. package/dist/ui/AnalyzeUI.d.ts.map +1 -0
  305. package/dist/ui/AnalyzeUI.js +100 -0
  306. package/dist/ui/AnalyzeUI.js.map +1 -0
  307. package/dist/ui/App.d.ts +13 -0
  308. package/dist/ui/App.d.ts.map +1 -0
  309. package/dist/ui/App.js +100 -0
  310. package/dist/ui/App.js.map +1 -0
  311. package/dist/ui/CIContext.d.ts +9 -0
  312. package/dist/ui/CIContext.d.ts.map +1 -0
  313. package/dist/ui/CIContext.js +9 -0
  314. package/dist/ui/CIContext.js.map +1 -0
  315. package/dist/ui/CISelector.d.ts +8 -0
  316. package/dist/ui/CISelector.d.ts.map +1 -0
  317. package/dist/ui/CISelector.js +45 -0
  318. package/dist/ui/CISelector.js.map +1 -0
  319. package/dist/ui/Doctor.d.ts +3 -0
  320. package/dist/ui/Doctor.d.ts.map +1 -0
  321. package/dist/ui/Doctor.js +89 -0
  322. package/dist/ui/Doctor.js.map +1 -0
  323. package/dist/ui/Header.d.ts +8 -0
  324. package/dist/ui/Header.d.ts.map +1 -0
  325. package/dist/ui/Header.js +30 -0
  326. package/dist/ui/Header.js.map +1 -0
  327. package/dist/ui/MemorySelector.d.ts +8 -0
  328. package/dist/ui/MemorySelector.d.ts.map +1 -0
  329. package/dist/ui/MemorySelector.js +46 -0
  330. package/dist/ui/MemorySelector.js.map +1 -0
  331. package/dist/ui/NameInput.d.ts +8 -0
  332. package/dist/ui/NameInput.d.ts.map +1 -0
  333. package/dist/ui/NameInput.js +69 -0
  334. package/dist/ui/NameInput.js.map +1 -0
  335. package/dist/ui/OptionSelector.d.ts +12 -0
  336. package/dist/ui/OptionSelector.d.ts.map +1 -0
  337. package/dist/ui/OptionSelector.js +69 -0
  338. package/dist/ui/OptionSelector.js.map +1 -0
  339. package/dist/ui/Progress.d.ts +11 -0
  340. package/dist/ui/Progress.d.ts.map +1 -0
  341. package/dist/ui/Progress.js +58 -0
  342. package/dist/ui/Progress.js.map +1 -0
  343. package/dist/ui/StackSelector.d.ts +9 -0
  344. package/dist/ui/StackSelector.d.ts.map +1 -0
  345. package/dist/ui/StackSelector.js +65 -0
  346. package/dist/ui/StackSelector.js.map +1 -0
  347. package/dist/ui/Summary.d.ts +12 -0
  348. package/dist/ui/Summary.d.ts.map +1 -0
  349. package/dist/ui/Summary.js +114 -0
  350. package/dist/ui/Summary.js.map +1 -0
  351. package/dist/ui/SyncUI.d.ts +10 -0
  352. package/dist/ui/SyncUI.d.ts.map +1 -0
  353. package/dist/ui/SyncUI.js +64 -0
  354. package/dist/ui/SyncUI.js.map +1 -0
  355. package/dist/ui/Welcome.d.ts +7 -0
  356. package/dist/ui/Welcome.d.ts.map +1 -0
  357. package/dist/ui/Welcome.js +45 -0
  358. package/dist/ui/Welcome.js.map +1 -0
  359. package/dist/ui/theme.d.ts +10 -0
  360. package/dist/ui/theme.d.ts.map +1 -0
  361. package/dist/ui/theme.js +9 -0
  362. package/dist/ui/theme.js.map +1 -0
  363. package/modules/engram/.gitignore-snippet.txt +6 -0
  364. package/modules/engram/.mcp-config-snippet.json +11 -0
  365. package/modules/engram/README.md +146 -0
  366. package/modules/engram/install-engram.sh +216 -0
  367. package/modules/ghagga/.env.example +43 -0
  368. package/modules/ghagga/README.md +153 -0
  369. package/modules/ghagga/docker-compose.yml +80 -0
  370. package/modules/ghagga/setup-ghagga.sh +139 -0
  371. package/modules/memory-simple/.project/NOTES.md +22 -0
  372. package/modules/memory-simple/README.md +23 -0
  373. package/modules/obsidian-brain/.obsidian/app.json +23 -0
  374. package/modules/obsidian-brain/.obsidian/appearance.json +5 -0
  375. package/modules/obsidian-brain/.obsidian/bookmarks.json +34 -0
  376. package/modules/obsidian-brain/.obsidian/community-plugins.json +1 -0
  377. package/modules/obsidian-brain/.obsidian/core-plugins-migration.json +21 -0
  378. package/modules/obsidian-brain/.obsidian/core-plugins.json +18 -0
  379. package/modules/obsidian-brain/.obsidian/daily-notes.json +5 -0
  380. package/modules/obsidian-brain/.obsidian/graph.json +37 -0
  381. package/modules/obsidian-brain/.obsidian/hotkeys.json +14 -0
  382. package/modules/obsidian-brain/.obsidian/plugins/dataview/data.json +25 -0
  383. package/modules/obsidian-brain/.obsidian/plugins/obsidian-kanban/data.json +29 -0
  384. package/modules/obsidian-brain/.obsidian/plugins/templater-obsidian/data.json +18 -0
  385. package/modules/obsidian-brain/.obsidian/snippets/project-memory.css +71 -0
  386. package/modules/obsidian-brain/.obsidian-gitignore-snippet.txt +8 -0
  387. package/modules/obsidian-brain/.project/Attachments/.gitkeep +0 -0
  388. package/modules/obsidian-brain/.project/Memory/BLOCKERS.md +78 -0
  389. package/modules/obsidian-brain/.project/Memory/CONTEXT.md +102 -0
  390. package/modules/obsidian-brain/.project/Memory/DASHBOARD.md +73 -0
  391. package/modules/obsidian-brain/.project/Memory/DECISIONS.md +87 -0
  392. package/modules/obsidian-brain/.project/Memory/KANBAN.md +15 -0
  393. package/modules/obsidian-brain/.project/Memory/README.md +61 -0
  394. package/modules/obsidian-brain/.project/Memory/WAVES.md +78 -0
  395. package/modules/obsidian-brain/.project/Sessions/TEMPLATE.md +99 -0
  396. package/modules/obsidian-brain/.project/Templates/ADR.md +33 -0
  397. package/modules/obsidian-brain/.project/Templates/Blocker.md +21 -0
  398. package/modules/obsidian-brain/.project/Templates/Session.md +88 -0
  399. package/modules/obsidian-brain/README.md +268 -0
  400. package/modules/obsidian-brain/new-wave.sh +182 -0
  401. package/package.json +51 -0
  402. package/schemas/agent.schema.json +34 -0
  403. package/schemas/ai-config.schema.json +28 -0
  404. package/schemas/skill.schema.json +44 -0
  405. package/src/commands/analyze.test.ts +145 -0
  406. package/src/commands/analyze.ts +69 -0
  407. package/src/commands/doctor.test.ts +208 -0
  408. package/src/commands/doctor.ts +163 -0
  409. package/src/commands/init.test.ts +298 -0
  410. package/src/commands/init.ts +285 -0
  411. package/src/constants.ts +69 -0
  412. package/src/e2e/aggressive.e2e.test.ts +557 -0
  413. package/src/e2e/commands.e2e.test.ts +298 -0
  414. package/src/index.tsx +106 -0
  415. package/src/lib/common.test.ts +318 -0
  416. package/src/lib/common.ts +127 -0
  417. package/src/lib/frontmatter.test.ts +291 -0
  418. package/src/lib/frontmatter.ts +77 -0
  419. package/src/lib/template.test.ts +226 -0
  420. package/src/lib/template.ts +99 -0
  421. package/src/types/index.ts +53 -0
  422. package/src/ui/AnalyzeUI.tsx +133 -0
  423. package/src/ui/App.tsx +175 -0
  424. package/src/ui/CIContext.tsx +25 -0
  425. package/src/ui/CISelector.tsx +72 -0
  426. package/src/ui/Doctor.tsx +122 -0
  427. package/src/ui/Header.tsx +48 -0
  428. package/src/ui/MemorySelector.tsx +73 -0
  429. package/src/ui/NameInput.tsx +82 -0
  430. package/src/ui/OptionSelector.tsx +100 -0
  431. package/src/ui/Progress.tsx +88 -0
  432. package/src/ui/StackSelector.tsx +101 -0
  433. package/src/ui/Summary.tsx +134 -0
  434. package/src/ui/Welcome.tsx +54 -0
  435. package/src/ui/theme.ts +10 -0
  436. package/stryker.config.json +19 -0
  437. package/tasks/_TEMPLATE/files-edited.md +3 -0
  438. package/tasks/_TEMPLATE/plan.md +3 -0
  439. package/tasks/_TEMPLATE/research.md +3 -0
  440. package/tasks/_TEMPLATE/verification.md +5 -0
  441. package/templates/common/dependabot/cargo.yml +11 -0
  442. package/templates/common/dependabot/github-actions.yml +16 -0
  443. package/templates/common/dependabot/gomod.yml +15 -0
  444. package/templates/common/dependabot/gradle.yml +15 -0
  445. package/templates/common/dependabot/header.yml +3 -0
  446. package/templates/common/dependabot/maven.yml +15 -0
  447. package/templates/common/dependabot/npm.yml +20 -0
  448. package/templates/common/dependabot/pip.yml +11 -0
  449. package/templates/dependabot.yml +162 -0
  450. package/templates/github/ci-go.yml +41 -0
  451. package/templates/github/ci-java.yml +45 -0
  452. package/templates/github/ci-monorepo.yml +150 -0
  453. package/templates/github/ci-node.yml +42 -0
  454. package/templates/github/ci-python.yml +42 -0
  455. package/templates/github/ci-rust.yml +42 -0
  456. package/templates/github/dependabot-automerge.yml +40 -0
  457. package/templates/gitlab/gitlab-ci-go.yml +88 -0
  458. package/templates/gitlab/gitlab-ci-java.yml +79 -0
  459. package/templates/gitlab/gitlab-ci-monorepo.yml +126 -0
  460. package/templates/gitlab/gitlab-ci-node.yml +63 -0
  461. package/templates/gitlab/gitlab-ci-python.yml +147 -0
  462. package/templates/gitlab/gitlab-ci-rust.yml +67 -0
  463. package/templates/global/claude-settings.json +98 -0
  464. package/templates/global/codex-config.toml +8 -0
  465. package/templates/global/copilot-instructions/base-rules.instructions.md +13 -0
  466. package/templates/global/copilot-instructions/sdd-orchestrator.instructions.md +37 -0
  467. package/templates/global/gemini-commands/cleanup.toml +20 -0
  468. package/templates/global/gemini-commands/commit.toml +15 -0
  469. package/templates/global/gemini-commands/dead-code.toml +22 -0
  470. package/templates/global/gemini-commands/plan.toml +30 -0
  471. package/templates/global/gemini-commands/review.toml +17 -0
  472. package/templates/global/gemini-commands/sdd-apply.toml +22 -0
  473. package/templates/global/gemini-commands/sdd-ff.toml +14 -0
  474. package/templates/global/gemini-commands/sdd-new.toml +21 -0
  475. package/templates/global/gemini-commands/sdd-verify.toml +21 -0
  476. package/templates/global/gemini-commands/tdd.toml +26 -0
  477. package/templates/global/gemini-settings.json +8 -0
  478. package/templates/global/opencode-config.json +44 -0
  479. package/templates/global/sdd-instructions.md +47 -0
  480. package/templates/global/sdd-orchestrator-claude.md +46 -0
  481. package/templates/global/sdd-orchestrator-copilot.md +34 -0
  482. package/templates/renovate.json +69 -0
  483. package/templates/woodpecker/monorepo/backend.yml +34 -0
  484. package/templates/woodpecker/monorepo/frontend.yml +34 -0
  485. package/templates/woodpecker/monorepo/summary.yml +25 -0
  486. package/templates/woodpecker/woodpecker-go.yml +51 -0
  487. package/templates/woodpecker/woodpecker-java.yml +67 -0
  488. package/templates/woodpecker/woodpecker-node.yml +47 -0
  489. package/templates/woodpecker/woodpecker-python.yml +108 -0
  490. package/templates/woodpecker/woodpecker-rust.yml +57 -0
  491. package/tsconfig.json +19 -0
  492. package/vitest.config.ts +16 -0
  493. package/workflows/reusable-build-go.yml +111 -0
  494. package/workflows/reusable-build-java.yml +120 -0
  495. package/workflows/reusable-build-node.yml +145 -0
  496. package/workflows/reusable-build-python.yml +159 -0
  497. package/workflows/reusable-build-rust.yml +135 -0
  498. package/workflows/reusable-docker.yml +120 -0
  499. package/workflows/reusable-ghagga-review.yml +165 -0
  500. package/workflows/reusable-release.yml +91 -0
@@ -0,0 +1,37 @@
1
+ ---
2
+ applyTo: "**"
3
+ ---
4
+
5
+ # Spec-Driven Development (SDD) Orchestrator
6
+
7
+ You are the ORCHESTRATOR for Spec-Driven Development. You coordinate the SDD workflow by launching specialized sub-agents. Your job is to STAY LIGHTWEIGHT — delegate all heavy work to sub-agents and only track state and user decisions.
8
+
9
+ ## Operating Mode
10
+ - **Delegate-only**: You NEVER execute phase work inline.
11
+ - If work requires analysis, design, planning, implementation, verification, or migration, ALWAYS launch a sub-agent.
12
+
13
+ ## SDD Commands
14
+ | Command | Action | Skill |
15
+ |---------|--------|-------|
16
+ | `/sdd:init` | Bootstrap openspec/ | sdd-init |
17
+ | `/sdd:explore <topic>` | Think through idea | sdd-explore |
18
+ | `/sdd:new <name>` | Start new change | sdd-explore → sdd-propose |
19
+ | `/sdd:continue [name]` | Next artifact in chain | sdd-spec / sdd-design / sdd-tasks |
20
+ | `/sdd:ff [name]` | Fast-forward planning | propose → spec → design → tasks |
21
+ | `/sdd:apply [name]` | Implement tasks | sdd-apply |
22
+ | `/sdd:verify [name]` | Validate implementation | sdd-verify |
23
+ | `/sdd:archive [name]` | Sync specs + archive | sdd-archive |
24
+
25
+ ## Dependency Graph
26
+ ```
27
+ proposal → specs ──→ tasks → apply → verify → archive
28
+
29
+ design
30
+ ```
31
+
32
+ ## Orchestrator Rules
33
+ 1. NEVER read source code directly — sub-agents do that
34
+ 2. NEVER write implementation code — sdd-apply does that
35
+ 3. ONLY: track state, present summaries, ask for approval, launch sub-agents
36
+ 4. Between sub-agent calls, ALWAYS show what was done and ask to proceed
37
+ 5. Keep context MINIMAL — pass file paths, not file contents
@@ -0,0 +1,20 @@
1
+ description = "Clean up code: fix lint issues, improve readability, remove smells"
2
+ prompt = """
3
+ Clean up code in: {{args}}
4
+
5
+ Focus areas:
6
+ 1. Fix lint/formatting issues
7
+ 2. Simplify overly complex expressions
8
+ 3. Improve variable/function naming for clarity
9
+ 4. Remove code smells (long methods, deep nesting, magic numbers)
10
+ 5. Extract constants for magic values
11
+ 6. Simplify conditional logic (guard clauses, early returns)
12
+ 7. Remove unnecessary comments (code should be self-documenting)
13
+
14
+ Rules:
15
+ - Do NOT change behavior — cleanup only
16
+ - Do NOT add new features or refactor architecture
17
+ - Run tests after cleanup to verify nothing broke
18
+ - Keep changes focused — one type of cleanup per commit
19
+ - Commit with: refactor: clean up <scope>
20
+ """
@@ -0,0 +1,15 @@
1
+ description = "Create a conventional commit from staged changes"
2
+ prompt = """
3
+ Create a git commit from the currently staged changes.
4
+
5
+ Process:
6
+ 1. Run `git diff --cached` to see staged changes
7
+ 2. Analyze the nature of the changes (feature, fix, refactor, docs, test, chore)
8
+ 3. Draft a Conventional Commit message: type(scope): description
9
+ 4. Keep subject line under 72 characters, imperative mood
10
+ 5. Add body if changes are complex (blank line after subject)
11
+ 6. NEVER add Co-Authored-By or AI attribution
12
+ 7. Show the commit message for approval before committing
13
+
14
+ If no changes are staged, show `git status` and suggest what to stage.
15
+ """
@@ -0,0 +1,22 @@
1
+ description = "Identify and remove dead code"
2
+ prompt = """
3
+ Identify and safely remove dead code in: {{args}}
4
+
5
+ Types of dead code:
6
+ - Functions/methods never called
7
+ - Variables declared but never read
8
+ - Unreachable code branches
9
+ - Unused imports
10
+ - Feature flags always true/false
11
+ - Code after return/throw
12
+
13
+ Safe process:
14
+ 1. Identify candidate code to remove
15
+ 2. Search ALL usages in the codebase (exhaustive grep)
16
+ 3. Verify it's not used via reflection, dynamic imports, or external config
17
+ 4. Remove the code
18
+ 5. Run the full test suite
19
+ 6. If tests pass: commit 'refactor: remove dead code in X'
20
+
21
+ Caution: Some 'dead code' is intentional (lifecycle hooks, dynamically registered handlers). Verify before removing.
22
+ """
@@ -0,0 +1,30 @@
1
+ description = "Create an implementation plan for a feature or change"
2
+ prompt = """
3
+ Create an implementation plan for: {{args}}
4
+
5
+ Process:
6
+ 1. Understand the requirement — ask clarifying questions if ambiguous
7
+ 2. Explore the codebase to understand current architecture and patterns
8
+ 3. Identify affected files and components
9
+ 4. Design the approach with trade-offs considered
10
+ 5. Break down into ordered implementation steps
11
+ 6. Identify risks and edge cases
12
+
13
+ Output format:
14
+ ## Goal
15
+ (1-2 sentences)
16
+
17
+ ## Affected Files
18
+ (list with brief description of changes)
19
+
20
+ ## Implementation Steps
21
+ (numbered, ordered by dependency)
22
+
23
+ ## Risks & Edge Cases
24
+ (what could go wrong)
25
+
26
+ ## Testing Strategy
27
+ (how to verify the change works)
28
+
29
+ Do NOT start implementing — just plan. Ask for approval before proceeding.
30
+ """
@@ -0,0 +1,17 @@
1
+ description = "Review code changes for quality, security, and best practices"
2
+ prompt = """
3
+ Review code changes in: {{args}}
4
+
5
+ If no path specified, review unstaged changes (`git diff`).
6
+
7
+ Review checklist:
8
+ 1. **Security**: OWASP top 10, injection, XSS, secrets in code
9
+ 2. **Logic**: Edge cases, off-by-one, null handling, race conditions
10
+ 3. **Performance**: N+1 queries, unnecessary allocations, missing indexes
11
+ 4. **Readability**: Naming, complexity, dead code, unclear intent
12
+ 5. **Testing**: Missing test coverage for new/changed behavior
13
+ 6. **Architecture**: SOLID violations, tight coupling, wrong abstraction level
14
+
15
+ Format: List issues by severity (critical > warning > suggestion).
16
+ For each issue: file:line, description, suggested fix.
17
+ """
@@ -0,0 +1,22 @@
1
+ description = "Implement SDD tasks following specs and design"
2
+ prompt = """
3
+ Implement SDD tasks for: {{args}}
4
+
5
+ Process:
6
+ 1. Read the task list from the current SDD change
7
+ 2. For each task (in order):
8
+ a. Read the relevant spec and design sections
9
+ b. Implement the code changes
10
+ c. Run tests to verify
11
+ d. Commit with conventional commit message
12
+ 3. Mark each task as completed after successful implementation
13
+
14
+ Rules:
15
+ - Follow the spec and design exactly — do not deviate
16
+ - One task = one commit (atomic changes)
17
+ - Run tests after EACH task
18
+ - If a task is blocked, report the blocker and skip to the next
19
+ - If you discover something not covered by the spec, stop and ask
20
+
21
+ Show progress after each task is completed.
22
+ """
@@ -0,0 +1,14 @@
1
+ description = "Fast-forward SDD: create all planning artifacts (proposal, spec, design, tasks)"
2
+ prompt = """
3
+ Fast-forward SDD planning for: {{args}}
4
+
5
+ Execute ALL planning phases in sequence:
6
+
7
+ 1. PROPOSE — Create proposal.md (intent, scope, approach, risks)
8
+ 2. SPEC — Write specifications (requirements, scenarios, acceptance criteria)
9
+ 3. DESIGN — Technical design (architecture decisions, patterns, implementation approach)
10
+ 4. TASKS — Break down into numbered task checklist with phases and dependencies
11
+
12
+ Show a complete summary of ALL artifacts after they are done.
13
+ Ask user to review before proceeding to implementation.
14
+ """
@@ -0,0 +1,21 @@
1
+ description = "Start a new SDD change: explore the idea and create a proposal"
2
+ prompt = """
3
+ Start a new SDD change for: {{args}}
4
+
5
+ Execute the EXPLORE + PROPOSE phases:
6
+
7
+ 1. EXPLORE — Investigate the idea
8
+ - Understand the current codebase state relevant to this change
9
+ - Identify affected components and dependencies
10
+ - List risks, unknowns, and questions
11
+ - Scope: what's in, what's out
12
+
13
+ 2. PROPOSE — Create proposal
14
+ - Intent: what and why
15
+ - Scope: files/components affected
16
+ - Approach: how to implement (with alternatives considered)
17
+ - Risks: what could go wrong
18
+ - Acceptance criteria: how to verify success
19
+
20
+ Show the proposal summary and ask for approval before proceeding to specs.
21
+ """
@@ -0,0 +1,21 @@
1
+ description = "Validate SDD implementation against specs and acceptance criteria"
2
+ prompt = """
3
+ Verify SDD implementation for: {{args}}
4
+
5
+ Validation checklist:
6
+ 1. **Acceptance Criteria** — Check each criterion from the spec
7
+ 2. **Test Coverage** — Verify tests exist for all specified behaviors
8
+ 3. **Design Compliance** — Implementation follows the design document
9
+ 4. **Edge Cases** — Scenarios from the spec are handled
10
+ 5. **No Scope Creep** — Nothing was added beyond the spec
11
+ 6. **No Regressions** — Existing tests still pass
12
+
13
+ Process:
14
+ 1. Read the spec and design documents
15
+ 2. Compare implementation against each requirement
16
+ 3. Run the full test suite
17
+ 4. Report: PASS/FAIL for each criterion
18
+ 5. List any deviations or gaps found
19
+
20
+ Output a verification report with clear pass/fail status.
21
+ """
@@ -0,0 +1,26 @@
1
+ description = "Implement a feature using Test-Driven Development"
2
+ prompt = """
3
+ Implement using TDD: {{args}}
4
+
5
+ Follow the Red-Green-Refactor cycle strictly:
6
+
7
+ 1. **RED** — Write a failing test first
8
+ - Test the expected behavior, not implementation details
9
+ - Run the test to confirm it FAILS (important!)
10
+
11
+ 2. **GREEN** — Write the MINIMUM code to make the test pass
12
+ - No extra features, no premature optimization
13
+ - Run the test to confirm it PASSES
14
+
15
+ 3. **REFACTOR** — Clean up while tests stay green
16
+ - Remove duplication, improve naming, simplify
17
+ - Run tests after each refactoring step
18
+
19
+ Repeat the cycle for each behavior/requirement.
20
+
21
+ Rules:
22
+ - Never write production code without a failing test first
23
+ - Each cycle should be small (1 behavior = 1 test = 1 cycle)
24
+ - Show the test BEFORE the implementation
25
+ - Run tests after EVERY step
26
+ """
@@ -0,0 +1,8 @@
1
+ {
2
+ "context": {
3
+ "fileName": ["GEMINI.md", "AGENTS.md"]
4
+ },
5
+ "output": {
6
+ "codeStyle": "fenced"
7
+ }
8
+ }
@@ -0,0 +1,44 @@
1
+ {
2
+ "$schema": "https://opencode.ai/config.json",
3
+ "theme": "gentleman",
4
+ "autoupdate": true,
5
+ "permission": {
6
+ "bash": {
7
+ "*": "allow",
8
+ "git commit *": "ask",
9
+ "git push *": "ask",
10
+ "git push": "ask",
11
+ "git push --force *": "ask",
12
+ "git rebase *": "ask",
13
+ "git reset --hard *": "ask"
14
+ },
15
+ "read": {
16
+ "*": "allow",
17
+ "*.env": "deny",
18
+ "*.env.*": "deny",
19
+ "**/.env": "deny",
20
+ "**/.env.*": "deny",
21
+ "**/secrets/**": "deny",
22
+ "**/credentials.json": "deny"
23
+ }
24
+ },
25
+ "mcp": {
26
+ "context7": {
27
+ "type": "remote",
28
+ "url": "https://mcp.context7.com/mcp",
29
+ "enabled": true
30
+ }
31
+ },
32
+ "agent": {
33
+ "sdd-orchestrator": {
34
+ "mode": "all",
35
+ "description": "Spec-Driven Development delegate-only orchestrator",
36
+ "prompt": "You are the ORCHESTRATOR for Spec-Driven Development. You coordinate the SDD workflow by launching specialized sub-agents. Your job is to STAY LIGHTWEIGHT — delegate all heavy work to sub-agents and only track state and user decisions.\n\n## Operating Mode\n- Delegate-only: You NEVER execute phase work inline.\n- If work requires analysis, design, planning, implementation, verification, or migration, ALWAYS launch a sub-agent.\n\n## SDD Commands\n| Command | Action |\n|---------|--------|\n| /sdd:init | Bootstrap openspec/ |\n| /sdd:explore <topic> | Think through idea |\n| /sdd:new <name> | Start new change |\n| /sdd:continue [name] | Next artifact |\n| /sdd:ff [name] | Fast-forward planning |\n| /sdd:apply [name] | Implement tasks |\n| /sdd:verify [name] | Validate implementation |\n| /sdd:archive [name] | Sync + archive |\n\n## Rules\n1. NEVER read source code directly — sub-agents do that\n2. NEVER write implementation code — sdd-apply does that\n3. ONLY: track state, present summaries, ask for approval, launch sub-agents\n4. Between sub-agent calls, ALWAYS show what was done and ask to proceed",
37
+ "tools": {
38
+ "read": true,
39
+ "write": true,
40
+ "edit": true
41
+ }
42
+ }
43
+ }
44
+ }
@@ -0,0 +1,47 @@
1
+
2
+ ## Spec-Driven Development (SDD)
3
+
4
+ You support Spec-Driven Development as a methodology for planning and implementing non-trivial changes.
5
+
6
+ ### SDD Commands
7
+ | Command | Action |
8
+ |---------|--------|
9
+ | `/sdd:init` | Bootstrap openspec/ in current project |
10
+ | `/sdd:explore <topic>` | Think through an idea (no files) |
11
+ | `/sdd:new <name>` | Start a new change (proposal) |
12
+ | `/sdd:continue [name]` | Create next artifact in chain |
13
+ | `/sdd:ff [name]` | Fast-forward all planning (proposal → spec → design → tasks) |
14
+ | `/sdd:apply [name]` | Implement tasks following specs |
15
+ | `/sdd:verify [name]` | Validate implementation against specs |
16
+ | `/sdd:archive [name]` | Sync specs + archive completed change |
17
+
18
+ ### Dependency Graph
19
+ ```
20
+ proposal → specs ──→ tasks → apply → verify → archive
21
+
22
+ design
23
+ ```
24
+
25
+ ### When to Suggest SDD
26
+ If the user describes something substantial (new feature, refactor, multi-file change), suggest:
27
+ "This sounds like a good candidate for SDD. Want me to start with /sdd:new {suggested-name}?"
28
+
29
+ Do NOT force SDD on small tasks (single file edits, quick fixes, questions).
30
+
31
+ ### SDD Phase Details
32
+
33
+ **Explore**: Investigate the idea. Gather context, identify risks, scope the work. No files written.
34
+
35
+ **Propose**: Create `proposal.md` with intent, scope, approach, risks, and acceptance criteria.
36
+
37
+ **Spec**: Write `spec.md` with requirements, scenarios, acceptance criteria, and edge cases.
38
+
39
+ **Design**: Create `design.md` with architecture decisions, patterns, and implementation approach.
40
+
41
+ **Tasks**: Break down into numbered task checklist with phases, dependencies, and estimated effort.
42
+
43
+ **Apply**: Implement tasks following the spec and design. One task at a time, commit after each.
44
+
45
+ **Verify**: Validate implementation against specs. Run tests, check acceptance criteria.
46
+
47
+ **Archive**: Sync delta specs to main documentation and archive the completed change.
@@ -0,0 +1,46 @@
1
+
2
+ ## Spec-Driven Development (SDD) Orchestrator
3
+
4
+ You are the ORCHESTRATOR for Spec-Driven Development. You coordinate the SDD workflow by launching specialized sub-agents via the Task tool. Your job is to STAY LIGHTWEIGHT — delegate all heavy work to sub-agents and only track state and user decisions.
5
+
6
+ ### Operating Mode
7
+ - **Delegate-only**: You NEVER execute phase work inline.
8
+ - If work requires analysis, design, planning, implementation, verification, or migration, ALWAYS launch a sub-agent.
9
+ - The lead agent only coordinates, tracks DAG state, and synthesizes results.
10
+
11
+ ### Artifact Store Policy
12
+ - `artifact_store.mode`: `engram | openspec | none` (default: `auto`)
13
+ - `auto` resolution: If user explicitly requested file artifacts → `openspec`; else if Engram available → `engram`; else → `none`
14
+ - In `none`, do not write any project files. Return results inline only.
15
+
16
+ ### SDD Commands
17
+ | Command | Action | Skill |
18
+ |---------|--------|-------|
19
+ | `/sdd:init` | Bootstrap openspec/ in current project | sdd-init |
20
+ | `/sdd:explore <topic>` | Think through an idea (no files) | sdd-explore |
21
+ | `/sdd:new <name>` | Start a new change (proposal) | sdd-explore → sdd-propose |
22
+ | `/sdd:continue [name]` | Create next artifact in chain | sdd-spec / sdd-design / sdd-tasks |
23
+ | `/sdd:ff [name]` | Fast-forward all planning | propose → spec → design → tasks |
24
+ | `/sdd:apply [name]` | Implement tasks | sdd-apply |
25
+ | `/sdd:verify [name]` | Validate implementation | sdd-verify |
26
+ | `/sdd:archive [name]` | Sync specs + archive | sdd-archive |
27
+
28
+ ### Orchestrator Rules
29
+ 1. You NEVER read source code directly — sub-agents do that
30
+ 2. You NEVER write implementation code — sdd-apply does that
31
+ 3. You NEVER write specs/proposals/design — sub-agents do that
32
+ 4. You ONLY: track state, present summaries to user, ask for approval, launch sub-agents
33
+ 5. Between sub-agent calls, ALWAYS show the user what was done and ask to proceed
34
+ 6. Keep your context MINIMAL — pass file paths to sub-agents, not file contents
35
+
36
+ ### Dependency Graph
37
+ ```
38
+ proposal → specs ──→ tasks → apply → verify → archive
39
+
40
+ design
41
+ ```
42
+
43
+ ### When to Suggest SDD
44
+ If the user describes something substantial (new feature, refactor, multi-file change), suggest SDD:
45
+ "This sounds like a good candidate for SDD. Want me to start with /sdd:new {suggested-name}?"
46
+ Do NOT force SDD on small tasks (single file edits, quick fixes, questions).
@@ -0,0 +1,34 @@
1
+ # SDD Orchestrator Agent
2
+
3
+ You are the Spec-Driven Development (SDD) orchestrator. You coordinate the SDD workflow by delegating all heavy work to specialized sub-agents and only tracking state and user decisions.
4
+
5
+ ## Operating Mode
6
+ - **Delegate-only**: You NEVER execute phase work inline.
7
+ - If work requires analysis, design, planning, implementation, verification, or migration, ALWAYS launch a sub-agent.
8
+
9
+ ## SDD Commands
10
+ | Command | Action |
11
+ |---------|--------|
12
+ | `/sdd:init` | Bootstrap openspec/ in current project |
13
+ | `/sdd:explore <topic>` | Think through an idea (no files) |
14
+ | `/sdd:new <name>` | Start a new change (proposal) |
15
+ | `/sdd:continue [name]` | Create next artifact in chain |
16
+ | `/sdd:ff [name]` | Fast-forward all planning |
17
+ | `/sdd:apply [name]` | Implement tasks |
18
+ | `/sdd:verify [name]` | Validate implementation |
19
+ | `/sdd:archive [name]` | Sync specs + archive |
20
+
21
+ ## Dependency Graph
22
+ ```
23
+ proposal → specs ──→ tasks → apply → verify → archive
24
+
25
+ design
26
+ ```
27
+
28
+ ## Rules
29
+ 1. NEVER read source code directly — sub-agents do that
30
+ 2. NEVER write implementation code — sdd-apply does that
31
+ 3. NEVER write specs/proposals/design — sub-agents do that
32
+ 4. ONLY: track state, present summaries to user, ask for approval, launch sub-agents
33
+ 5. Between sub-agent calls, ALWAYS show the user what was done and ask to proceed
34
+ 6. Keep your context MINIMAL — pass file paths to sub-agents, not file contents
@@ -0,0 +1,69 @@
1
+ {
2
+ "$schema": "https://docs.renovatebot.com/renovate-schema.json",
3
+ "description": "Renovate config para actualización automática de dependencias",
4
+ "extends": [
5
+ "config:recommended",
6
+ ":semanticCommits",
7
+ ":preserveSemverRanges"
8
+ ],
9
+ "labels": ["dependencies"],
10
+ "schedule": ["before 9am on monday"],
11
+ "timezone": "America/Argentina/Buenos_Aires",
12
+ "prConcurrentLimit": 3,
13
+ "prHourlyLimit": 2,
14
+ "automerge": false,
15
+ "automergeType": "pr",
16
+ "packageRules": [
17
+ {
18
+ "description": "Automerge patch updates",
19
+ "matchUpdateTypes": ["patch"],
20
+ "automerge": true
21
+ },
22
+ {
23
+ "description": "Group all non-major updates together",
24
+ "matchUpdateTypes": ["minor", "patch"],
25
+ "groupName": "all non-major dependencies",
26
+ "groupSlug": "all-minor-patch"
27
+ },
28
+ {
29
+ "description": "Java dependencies",
30
+ "matchManagers": ["gradle", "maven"],
31
+ "groupName": "Java dependencies"
32
+ },
33
+ {
34
+ "description": "Node.js dependencies",
35
+ "matchManagers": ["npm"],
36
+ "groupName": "Node.js dependencies"
37
+ },
38
+ {
39
+ "description": "Python dependencies",
40
+ "matchManagers": ["pip_requirements", "poetry"],
41
+ "groupName": "Python dependencies"
42
+ },
43
+ {
44
+ "description": "Go dependencies",
45
+ "matchManagers": ["gomod"],
46
+ "groupName": "Go dependencies"
47
+ },
48
+ {
49
+ "description": "Rust dependencies",
50
+ "matchManagers": ["cargo"],
51
+ "groupName": "Rust dependencies"
52
+ },
53
+ {
54
+ "description": "Docker images",
55
+ "matchManagers": ["dockerfile"],
56
+ "groupName": "Docker images"
57
+ },
58
+ {
59
+ "description": "GitHub Actions",
60
+ "matchManagers": ["github-actions"],
61
+ "groupName": "GitHub Actions",
62
+ "automerge": true
63
+ }
64
+ ],
65
+ "vulnerabilityAlerts": {
66
+ "labels": ["security"],
67
+ "automerge": true
68
+ }
69
+ }
@@ -0,0 +1,34 @@
1
+ # ===========================================
2
+ # Woodpecker CI - Monorepo: Backend
3
+ # ===========================================
4
+ # Copy to: .woodpecker/backend.yml
5
+ #
6
+ # Woodpecker natively supports multiple pipeline files in .woodpecker/.
7
+ # Each .yml becomes an independent workflow.
8
+ #
9
+ # Only runs when files in packages/backend/ change.
10
+ # ===========================================
11
+
12
+ when:
13
+ - event: push
14
+ branch: main
15
+ - event: pull_request
16
+ - event: tag
17
+ - event: manual
18
+ - path: "packages/backend/**"
19
+
20
+ steps:
21
+ - name: lint
22
+ image: eclipse-temurin:21-jdk
23
+ commands:
24
+ - cd packages/backend
25
+ - chmod +x gradlew
26
+ - ./gradlew spotlessCheck --no-daemon
27
+ failure: ignore
28
+
29
+ - name: build
30
+ image: eclipse-temurin:21-jdk
31
+ commands:
32
+ - cd packages/backend
33
+ - chmod +x gradlew
34
+ - ./gradlew classes --no-daemon
@@ -0,0 +1,34 @@
1
+ # ===========================================
2
+ # Woodpecker CI - Monorepo: Frontend
3
+ # ===========================================
4
+ # Copy to: .woodpecker/frontend.yml
5
+ #
6
+ # Woodpecker natively supports multiple pipeline files in .woodpecker/.
7
+ # Each .yml becomes an independent workflow.
8
+ #
9
+ # Only runs when files in packages/frontend/ change.
10
+ # ===========================================
11
+
12
+ when:
13
+ - event: push
14
+ branch: main
15
+ - event: pull_request
16
+ - event: tag
17
+ - event: manual
18
+ - path: "packages/frontend/**"
19
+
20
+ steps:
21
+ - name: lint
22
+ image: node:20-alpine
23
+ commands:
24
+ - cd packages/frontend
25
+ - npm ci
26
+ - npm run lint
27
+ failure: ignore
28
+
29
+ - name: build
30
+ image: node:20-alpine
31
+ commands:
32
+ - cd packages/frontend
33
+ - npm ci
34
+ - npm run build
@@ -0,0 +1,25 @@
1
+ # ===========================================
2
+ # Woodpecker CI - Monorepo: Summary
3
+ # ===========================================
4
+ # Copy to: .woodpecker/summary.yml
5
+ #
6
+ # Final check that runs after all service pipelines complete.
7
+ # Uses depends_on to wait for frontend and backend.
8
+ # ===========================================
9
+
10
+ depends_on:
11
+ - frontend
12
+ - backend
13
+
14
+ when:
15
+ - event: push
16
+ branch: main
17
+ - event: pull_request
18
+ - event: tag
19
+ - event: manual
20
+
21
+ steps:
22
+ - name: summary
23
+ image: alpine:latest
24
+ commands:
25
+ - echo "All services built successfully"
@@ -0,0 +1,51 @@
1
+ # ===========================================
2
+ # Woodpecker CI for Go Projects
3
+ # ===========================================
4
+ # Copy to: .woodpecker.yml
5
+ #
6
+ # MINIMAL CI - runs on push, pull requests, tags, and manual triggers.
7
+ # Run full validation locally: ./.ci-local/ci-local.sh full
8
+ #
9
+ # Caching: Woodpecker does not have declarative cache.
10
+ # Mount volumes for GOPATH/pkg/mod/ on the server to speed up builds.
11
+ # ===========================================
12
+
13
+ when:
14
+ - event: push
15
+ branch: main
16
+ - event: pull_request
17
+ - event: tag
18
+ - event: manual
19
+
20
+ steps:
21
+ - name: build
22
+ image: golang:1.23-bookworm # Change: 1.22, 1.23
23
+ environment:
24
+ GOPROXY: "https://proxy.golang.org,direct"
25
+ GOFLAGS: "-mod=readonly"
26
+ commands:
27
+ - go mod download
28
+ - go mod verify
29
+ - go build -v ./...
30
+ - go vet ./...
31
+
32
+ - name: lint
33
+ image: golangci/golangci-lint:v1.62
34
+ commands:
35
+ - golangci-lint run --timeout 5m
36
+ failure: ignore
37
+
38
+ # ===========================================
39
+ # DOCKER - Only on version tags
40
+ # ===========================================
41
+ # Uncomment to enable Docker builds on tags.
42
+ # Requires woodpeckerci/plugin-docker-buildx.
43
+ #
44
+ # - name: docker
45
+ # image: woodpeckerci/plugin-docker-buildx
46
+ # settings:
47
+ # repo: registry.example.com/my-app
48
+ # tag: ${CI_COMMIT_TAG}
49
+ # dockerfile: Dockerfile
50
+ # when:
51
+ # - event: tag