@glxmart/boss-cli 1.0.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (317) hide show
  1. package/README.md +0 -1
  2. package/assets/claude-md/docs/conductor.md +139 -0
  3. package/assets/claude-md/docs/initialization.md +2 -2
  4. package/assets/claude-md/docs/workers.md +33 -54
  5. package/assets/claude-md/docs/workflow.md +23 -59
  6. package/assets/claude-md/template.md +198 -756
  7. package/assets/git-hooks/commit-msg.sh +4 -8
  8. package/assets/git-hooks/pre-commit.sh +0 -4
  9. package/assets/git-hooks/pre-push.sh +21 -0
  10. package/assets/github-workflows/CODEOWNERS +21 -2
  11. package/assets/github-workflows/boss-ci.yml +163 -23
  12. package/assets/github-workflows/boss-gates.yml +100 -13
  13. package/assets/template-docs/nextjs-app-turbo.md +412 -61
  14. package/assets/template-loader/gitignore +14 -0
  15. package/assets/worker-configs/architect/.claude/skills/conductor-orchestration.md +635 -0
  16. package/assets/worker-configs/architect/.claude/skills/spec-kit-workflow.md +827 -0
  17. package/assets/worker-configs/architect/CLAUDE.md +99 -38
  18. package/assets/worker-configs/clarifier/.claude/skills/conductor-orchestration.md +635 -0
  19. package/assets/worker-configs/clarifier/.claude/skills/spec-kit-workflow.md +827 -0
  20. package/assets/worker-configs/clarifier/CLAUDE.md +81 -40
  21. package/assets/worker-configs/code-reviewer/.claude/skills/nextjs-turbo-stack.md +1017 -0
  22. package/assets/worker-configs/code-reviewer/.claude/skills/spec-kit-workflow.md +827 -0
  23. package/assets/worker-configs/code-reviewer/.claude/skills/test-first-methodology.md +745 -0
  24. package/assets/worker-configs/code-reviewer/CLAUDE.md +85 -79
  25. package/assets/worker-configs/consolidator/.claude/skills/conductor-orchestration.md +635 -0
  26. package/assets/worker-configs/consolidator/.claude/skills/spec-kit-workflow.md +827 -0
  27. package/assets/worker-configs/consolidator/CLAUDE.md +94 -88
  28. package/assets/worker-configs/developer-backend/.claude/skills/nextjs-turbo-stack.md +1017 -0
  29. package/assets/worker-configs/developer-backend/.claude/skills/spec-kit-workflow.md +827 -0
  30. package/assets/worker-configs/developer-backend/.claude/skills/test-first-methodology.md +745 -0
  31. package/assets/worker-configs/developer-backend/CLAUDE.md +156 -56
  32. package/assets/worker-configs/developer-frontend/.claude/skills/nextjs-turbo-stack.md +1017 -0
  33. package/assets/worker-configs/developer-frontend/.claude/skills/spec-kit-workflow.md +827 -0
  34. package/assets/worker-configs/developer-frontend/.claude/skills/test-first-methodology.md +745 -0
  35. package/assets/worker-configs/developer-frontend/CLAUDE.md +152 -54
  36. package/assets/worker-configs/developer-fullstack/.claude/skills/nextjs-turbo-stack.md +1017 -0
  37. package/assets/worker-configs/developer-fullstack/.claude/skills/spec-kit-workflow.md +827 -0
  38. package/assets/worker-configs/developer-fullstack/.claude/skills/test-first-methodology.md +745 -0
  39. package/assets/worker-configs/developer-fullstack/CLAUDE.md +155 -57
  40. package/assets/worker-configs/devops-engineer/.claude/skills/infrastructure-as-code.md +794 -0
  41. package/assets/worker-configs/devops-engineer/.claude/skills/spec-kit-workflow.md +827 -0
  42. package/assets/worker-configs/devops-engineer/CLAUDE.md +92 -85
  43. package/assets/worker-configs/planner/.claude/skills/conductor-orchestration.md +635 -0
  44. package/assets/worker-configs/planner/.claude/skills/spec-kit-workflow.md +827 -0
  45. package/assets/worker-configs/planner/CLAUDE.md +143 -46
  46. package/assets/worker-configs/product-owner/CLAUDE.md +72 -82
  47. package/assets/worker-configs/reviewer/.claude/skills/conductor-orchestration.md +635 -0
  48. package/assets/worker-configs/reviewer/.claude/skills/spec-kit-workflow.md +827 -0
  49. package/assets/worker-configs/reviewer/CLAUDE.md +108 -50
  50. package/assets/worker-configs/security-engineer/.claude/skills/spec-kit-workflow.md +827 -0
  51. package/assets/worker-configs/security-engineer/CLAUDE.md +83 -83
  52. package/assets/worker-configs/spec-writer/.claude/skills/conductor-orchestration.md +635 -0
  53. package/assets/worker-configs/spec-writer/.claude/skills/spec-kit-workflow.md +827 -0
  54. package/assets/worker-configs/spec-writer/CLAUDE.md +107 -48
  55. package/assets/worker-configs/technical-writer/.claude/skills/nextjs-turbo-stack.md +1017 -0
  56. package/assets/worker-configs/technical-writer/.claude/skills/spec-kit-workflow.md +827 -0
  57. package/assets/worker-configs/technical-writer/CLAUDE.md +91 -81
  58. package/assets/worker-configs/tester/.claude/skills/nextjs-turbo-stack.md +1017 -0
  59. package/assets/worker-configs/tester/.claude/skills/spec-kit-workflow.md +827 -0
  60. package/assets/worker-configs/tester/.claude/skills/test-first-methodology.md +745 -0
  61. package/assets/worker-configs/tester/CLAUDE.md +141 -52
  62. package/dist/assets/claude-md/docs/conductor.md +139 -0
  63. package/dist/assets/claude-md/docs/initialization.md +2 -2
  64. package/dist/assets/claude-md/docs/workers.md +33 -54
  65. package/dist/assets/claude-md/docs/workflow.md +23 -59
  66. package/dist/assets/claude-md/template.md +198 -756
  67. package/dist/assets/git-hooks/commit-msg.sh +4 -8
  68. package/dist/assets/git-hooks/pre-commit.sh +0 -4
  69. package/dist/assets/git-hooks/pre-push.sh +21 -0
  70. package/dist/assets/github-workflows/CODEOWNERS +21 -2
  71. package/dist/assets/github-workflows/boss-ci.yml +163 -23
  72. package/dist/assets/github-workflows/boss-gates.yml +100 -13
  73. package/dist/assets/template-docs/nextjs-app-turbo.md +412 -61
  74. package/dist/assets/template-loader/gitignore +14 -0
  75. package/dist/assets/worker-configs/architect/.claude/skills/conductor-orchestration.md +635 -0
  76. package/dist/assets/worker-configs/architect/.claude/skills/spec-kit-workflow.md +827 -0
  77. package/dist/assets/worker-configs/architect/CLAUDE.md +99 -38
  78. package/dist/assets/worker-configs/clarifier/.claude/skills/conductor-orchestration.md +635 -0
  79. package/dist/assets/worker-configs/clarifier/.claude/skills/spec-kit-workflow.md +827 -0
  80. package/dist/assets/worker-configs/clarifier/CLAUDE.md +81 -40
  81. package/dist/assets/worker-configs/code-reviewer/.claude/skills/nextjs-turbo-stack.md +1017 -0
  82. package/dist/assets/worker-configs/code-reviewer/.claude/skills/spec-kit-workflow.md +827 -0
  83. package/dist/assets/worker-configs/code-reviewer/.claude/skills/test-first-methodology.md +745 -0
  84. package/dist/assets/worker-configs/code-reviewer/CLAUDE.md +85 -79
  85. package/dist/assets/worker-configs/consolidator/.claude/skills/conductor-orchestration.md +635 -0
  86. package/dist/assets/worker-configs/consolidator/.claude/skills/spec-kit-workflow.md +827 -0
  87. package/dist/assets/worker-configs/consolidator/CLAUDE.md +94 -88
  88. package/dist/assets/worker-configs/developer-backend/.claude/skills/nextjs-turbo-stack.md +1017 -0
  89. package/dist/assets/worker-configs/developer-backend/.claude/skills/spec-kit-workflow.md +827 -0
  90. package/dist/assets/worker-configs/developer-backend/.claude/skills/test-first-methodology.md +745 -0
  91. package/dist/assets/worker-configs/developer-backend/CLAUDE.md +156 -56
  92. package/dist/assets/worker-configs/developer-frontend/.claude/skills/nextjs-turbo-stack.md +1017 -0
  93. package/dist/assets/worker-configs/developer-frontend/.claude/skills/spec-kit-workflow.md +827 -0
  94. package/dist/assets/worker-configs/developer-frontend/.claude/skills/test-first-methodology.md +745 -0
  95. package/dist/assets/worker-configs/developer-frontend/CLAUDE.md +152 -54
  96. package/dist/assets/worker-configs/developer-fullstack/.claude/skills/nextjs-turbo-stack.md +1017 -0
  97. package/dist/assets/worker-configs/developer-fullstack/.claude/skills/spec-kit-workflow.md +827 -0
  98. package/dist/assets/worker-configs/developer-fullstack/.claude/skills/test-first-methodology.md +745 -0
  99. package/dist/assets/worker-configs/developer-fullstack/CLAUDE.md +155 -57
  100. package/dist/assets/worker-configs/devops-engineer/.claude/skills/infrastructure-as-code.md +794 -0
  101. package/dist/assets/worker-configs/devops-engineer/.claude/skills/spec-kit-workflow.md +827 -0
  102. package/dist/assets/worker-configs/devops-engineer/CLAUDE.md +92 -85
  103. package/dist/assets/worker-configs/planner/.claude/skills/conductor-orchestration.md +635 -0
  104. package/dist/assets/worker-configs/planner/.claude/skills/spec-kit-workflow.md +827 -0
  105. package/dist/assets/worker-configs/planner/CLAUDE.md +143 -46
  106. package/dist/assets/worker-configs/product-owner/CLAUDE.md +72 -82
  107. package/dist/assets/worker-configs/reviewer/.claude/skills/conductor-orchestration.md +635 -0
  108. package/dist/assets/worker-configs/reviewer/.claude/skills/spec-kit-workflow.md +827 -0
  109. package/dist/assets/worker-configs/reviewer/CLAUDE.md +108 -50
  110. package/dist/assets/worker-configs/security-engineer/.claude/skills/spec-kit-workflow.md +827 -0
  111. package/dist/assets/worker-configs/security-engineer/CLAUDE.md +83 -83
  112. package/dist/assets/worker-configs/spec-writer/.claude/skills/conductor-orchestration.md +635 -0
  113. package/dist/assets/worker-configs/spec-writer/.claude/skills/spec-kit-workflow.md +827 -0
  114. package/dist/assets/worker-configs/spec-writer/CLAUDE.md +107 -48
  115. package/dist/assets/worker-configs/technical-writer/.claude/skills/nextjs-turbo-stack.md +1017 -0
  116. package/dist/assets/worker-configs/technical-writer/.claude/skills/spec-kit-workflow.md +827 -0
  117. package/dist/assets/worker-configs/technical-writer/CLAUDE.md +91 -81
  118. package/dist/assets/worker-configs/tester/.claude/skills/nextjs-turbo-stack.md +1017 -0
  119. package/dist/assets/worker-configs/tester/.claude/skills/spec-kit-workflow.md +827 -0
  120. package/dist/assets/worker-configs/tester/.claude/skills/test-first-methodology.md +745 -0
  121. package/dist/assets/worker-configs/tester/CLAUDE.md +141 -52
  122. package/dist/commands/__tests__/bootstrap.test.js +51 -51
  123. package/dist/commands/__tests__/bootstrap.test.js.map +1 -1
  124. package/dist/commands/bootstrap.d.ts.map +1 -1
  125. package/dist/commands/bootstrap.js +23 -20
  126. package/dist/commands/bootstrap.js.map +1 -1
  127. package/dist/commands/doctor.js +33 -9
  128. package/dist/commands/doctor.js.map +1 -1
  129. package/dist/commands/templates.d.ts +1 -1
  130. package/dist/commands/templates.d.ts.map +1 -1
  131. package/dist/commands/templates.js +1 -1
  132. package/dist/commands/templates.js.map +1 -1
  133. package/dist/constants.d.ts +2 -2
  134. package/dist/constants.d.ts.map +1 -1
  135. package/dist/constants.js +1 -1
  136. package/dist/constants.js.map +1 -1
  137. package/dist/generators/__tests__/boss-config.test.js +4 -4
  138. package/dist/generators/__tests__/boss-config.test.js.map +1 -1
  139. package/dist/generators/__tests__/claude-folder.test.js +8 -8
  140. package/dist/generators/__tests__/claude-folder.test.js.map +1 -1
  141. package/dist/generators/__tests__/claude-md.test.js +25 -16
  142. package/dist/generators/__tests__/claude-md.test.js.map +1 -1
  143. package/dist/generators/__tests__/container-use-config.test.js +2 -2
  144. package/dist/generators/__tests__/container-use-config.test.js.map +1 -1
  145. package/dist/generators/__tests__/git-hooks.test.js.map +1 -1
  146. package/dist/generators/__tests__/github-workflows.test.js +10 -6
  147. package/dist/generators/__tests__/github-workflows.test.js.map +1 -1
  148. package/dist/generators/__tests__/mcp-config.test.js +6 -6
  149. package/dist/generators/__tests__/project-structure.test.js +2 -2
  150. package/dist/generators/__tests__/quality-gates.test.js +11 -3
  151. package/dist/generators/__tests__/quality-gates.test.js.map +1 -1
  152. package/dist/generators/__tests__/specify-structure.test.js +1 -1
  153. package/dist/generators/__tests__/specify-structure.test.js.map +1 -1
  154. package/dist/generators/__tests__/template-docs.test.js +1 -1
  155. package/dist/generators/__tests__/template-docs.test.js.map +1 -1
  156. package/dist/generators/__tests__/template-loader.test.js +209 -59
  157. package/dist/generators/__tests__/template-loader.test.js.map +1 -1
  158. package/dist/generators/__tests__/worker-configs.test.js +7 -7
  159. package/dist/generators/boss-config.d.ts.map +1 -1
  160. package/dist/generators/boss-config.js +46 -51
  161. package/dist/generators/boss-config.js.map +1 -1
  162. package/dist/generators/claude-folder.d.ts +1 -1
  163. package/dist/generators/claude-folder.d.ts.map +1 -1
  164. package/dist/generators/claude-folder.js +5 -5
  165. package/dist/generators/claude-folder.js.map +1 -1
  166. package/dist/generators/claude-md.d.ts.map +1 -1
  167. package/dist/generators/claude-md.js +83 -42
  168. package/dist/generators/claude-md.js.map +1 -1
  169. package/dist/generators/container-use-config.d.ts.map +1 -1
  170. package/dist/generators/container-use-config.js +5 -7
  171. package/dist/generators/container-use-config.js.map +1 -1
  172. package/dist/generators/docker-compose.d.ts.map +1 -1
  173. package/dist/generators/docker-compose.js.map +1 -1
  174. package/dist/generators/git-hooks.d.ts.map +1 -1
  175. package/dist/generators/git-hooks.js +2 -2
  176. package/dist/generators/git-hooks.js.map +1 -1
  177. package/dist/generators/github-workflows.js +3 -3
  178. package/dist/generators/github-workflows.js.map +1 -1
  179. package/dist/generators/mcp-config.d.ts.map +1 -1
  180. package/dist/generators/mcp-config.js +18 -16
  181. package/dist/generators/mcp-config.js.map +1 -1
  182. package/dist/generators/project-structure.d.ts +1 -1
  183. package/dist/generators/project-structure.d.ts.map +1 -1
  184. package/dist/generators/project-structure.js +2 -2
  185. package/dist/generators/project-structure.js.map +1 -1
  186. package/dist/generators/quality-gates.d.ts.map +1 -1
  187. package/dist/generators/quality-gates.js +13 -5
  188. package/dist/generators/quality-gates.js.map +1 -1
  189. package/dist/generators/specify-structure.d.ts.map +1 -1
  190. package/dist/generators/specify-structure.js +1 -2
  191. package/dist/generators/specify-structure.js.map +1 -1
  192. package/dist/generators/template-docs.js +2 -2
  193. package/dist/generators/template-docs.js.map +1 -1
  194. package/dist/generators/template-loader.d.ts.map +1 -1
  195. package/dist/generators/template-loader.js +259 -143
  196. package/dist/generators/template-loader.js.map +1 -1
  197. package/dist/generators/worker-configs.d.ts.map +1 -1
  198. package/dist/generators/worker-configs.js +7 -5
  199. package/dist/generators/worker-configs.js.map +1 -1
  200. package/dist/index.js +2 -2
  201. package/dist/index.js.map +1 -1
  202. package/dist/presets/__tests__/quality-presets.test.js +9 -5
  203. package/dist/presets/__tests__/quality-presets.test.js.map +1 -1
  204. package/dist/presets/quality-presets.d.ts.map +1 -1
  205. package/dist/presets/quality-presets.js +11 -11
  206. package/dist/presets/quality-presets.js.map +1 -1
  207. package/dist/types/index.d.ts +1 -0
  208. package/dist/types/index.d.ts.map +1 -1
  209. package/dist/types/index.js +2 -1
  210. package/dist/types/index.js.map +1 -1
  211. package/dist/types/internal.d.ts +69 -0
  212. package/dist/types/internal.d.ts.map +1 -0
  213. package/dist/types/internal.js +4 -0
  214. package/dist/types/internal.js.map +1 -0
  215. package/dist/utils/__tests__/file-system.test.js +1 -1
  216. package/dist/utils/__tests__/file-system.test.js.map +1 -1
  217. package/dist/utils/__tests__/git.test.js.map +1 -1
  218. package/dist/utils/__tests__/template-loader.test.js.map +1 -1
  219. package/dist/utils/__tests__/validators.test.js +1 -1
  220. package/dist/utils/__tests__/validators.test.js.map +1 -1
  221. package/dist/utils/file-system.d.ts.map +1 -1
  222. package/dist/utils/file-system.js +1 -4
  223. package/dist/utils/file-system.js.map +1 -1
  224. package/dist/utils/git.d.ts.map +1 -1
  225. package/dist/utils/git.js +17 -11
  226. package/dist/utils/git.js.map +1 -1
  227. package/dist/utils/prompts.d.ts.map +1 -1
  228. package/dist/utils/prompts.js +51 -39
  229. package/dist/utils/prompts.js.map +1 -1
  230. package/dist/utils/template-loader.d.ts +2 -1
  231. package/dist/utils/template-loader.d.ts.map +1 -1
  232. package/dist/utils/template-loader.js +11 -5
  233. package/dist/utils/template-loader.js.map +1 -1
  234. package/dist/utils/validators.d.ts.map +1 -1
  235. package/dist/utils/validators.js +16 -4
  236. package/dist/utils/validators.js.map +1 -1
  237. package/package.json +2 -2
  238. package/templates/nextjs-turbo-monorepo/base/README.md +167 -0
  239. package/templates/nextjs-turbo-monorepo/base/_gitignore +71 -0
  240. package/templates/nextjs-turbo-monorepo/base/_npmrc +12 -0
  241. package/templates/nextjs-turbo-monorepo/base/apps/admin/app/layout.tsx +19 -0
  242. package/templates/nextjs-turbo-monorepo/base/apps/admin/app/page.tsx +34 -0
  243. package/templates/nextjs-turbo-monorepo/base/apps/admin/next.config.ts +20 -0
  244. package/templates/nextjs-turbo-monorepo/base/apps/admin/package.json +42 -0
  245. package/templates/nextjs-turbo-monorepo/base/apps/admin/tsconfig.json +16 -0
  246. package/templates/nextjs-turbo-monorepo/base/apps/web/app/globals.css +59 -0
  247. package/templates/nextjs-turbo-monorepo/base/apps/web/app/layout.tsx +20 -0
  248. package/templates/nextjs-turbo-monorepo/base/apps/web/app/page.tsx +17 -0
  249. package/templates/nextjs-turbo-monorepo/base/apps/web/components.json +18 -0
  250. package/templates/nextjs-turbo-monorepo/base/apps/web/env.ts +45 -0
  251. package/templates/nextjs-turbo-monorepo/base/apps/web/next.config.ts +38 -0
  252. package/templates/nextjs-turbo-monorepo/base/apps/web/package.json +45 -0
  253. package/templates/nextjs-turbo-monorepo/base/apps/web/tsconfig.json +19 -0
  254. package/templates/nextjs-turbo-monorepo/base/apps/web/vitest.config.ts +28 -0
  255. package/templates/nextjs-turbo-monorepo/base/docker/Dockerfile.admin +76 -0
  256. package/templates/nextjs-turbo-monorepo/base/docker/Dockerfile.web +76 -0
  257. package/templates/nextjs-turbo-monorepo/base/docker/_dockerignore +48 -0
  258. package/templates/nextjs-turbo-monorepo/base/docker/docker-compose.yml +39 -0
  259. package/templates/nextjs-turbo-monorepo/base/package.json +62 -0
  260. package/templates/nextjs-turbo-monorepo/base/packages/auth/package.json +26 -0
  261. package/templates/nextjs-turbo-monorepo/base/packages/auth/src/config.ts +88 -0
  262. package/templates/nextjs-turbo-monorepo/base/packages/auth/src/index.ts +11 -0
  263. package/templates/nextjs-turbo-monorepo/base/packages/auth/src/types.ts +28 -0
  264. package/templates/nextjs-turbo-monorepo/base/packages/auth/tsconfig.json +9 -0
  265. package/templates/nextjs-turbo-monorepo/base/packages/config/eslint/library.js +35 -0
  266. package/templates/nextjs-turbo-monorepo/base/packages/config/eslint/nextjs.js +51 -0
  267. package/templates/nextjs-turbo-monorepo/base/packages/config/eslint/react-library.js +45 -0
  268. package/templates/nextjs-turbo-monorepo/base/packages/config/package.json +19 -0
  269. package/templates/nextjs-turbo-monorepo/base/packages/config/tailwind/base.ts +50 -0
  270. package/templates/nextjs-turbo-monorepo/base/packages/config/typescript/base.json +23 -0
  271. package/templates/nextjs-turbo-monorepo/base/packages/config/typescript/nextjs.json +17 -0
  272. package/templates/nextjs-turbo-monorepo/base/packages/config/typescript/react-library.json +11 -0
  273. package/templates/nextjs-turbo-monorepo/base/packages/database/package.json +32 -0
  274. package/templates/nextjs-turbo-monorepo/base/packages/database/prisma/schema.prisma +84 -0
  275. package/templates/nextjs-turbo-monorepo/base/packages/database/src/client.ts +16 -0
  276. package/templates/nextjs-turbo-monorepo/base/packages/database/src/index.ts +2 -0
  277. package/templates/nextjs-turbo-monorepo/base/packages/database/tsconfig.json +9 -0
  278. package/templates/nextjs-turbo-monorepo/base/packages/trpc/package.json +32 -0
  279. package/templates/nextjs-turbo-monorepo/base/packages/trpc/src/context.ts +17 -0
  280. package/templates/nextjs-turbo-monorepo/base/packages/trpc/src/index.ts +3 -0
  281. package/templates/nextjs-turbo-monorepo/base/packages/trpc/src/init.ts +34 -0
  282. package/templates/nextjs-turbo-monorepo/base/packages/trpc/src/routers/_app.ts +8 -0
  283. package/templates/nextjs-turbo-monorepo/base/packages/trpc/src/routers/user.ts +36 -0
  284. package/templates/nextjs-turbo-monorepo/base/packages/trpc/tsconfig.json +9 -0
  285. package/templates/nextjs-turbo-monorepo/base/packages/ui/.storybook/main.ts +19 -0
  286. package/templates/nextjs-turbo-monorepo/base/packages/ui/.storybook/preview.ts +15 -0
  287. package/templates/nextjs-turbo-monorepo/base/packages/ui/components.json +17 -0
  288. package/templates/nextjs-turbo-monorepo/base/packages/ui/package.json +62 -0
  289. package/templates/nextjs-turbo-monorepo/base/packages/ui/postcss.config.js +6 -0
  290. package/templates/nextjs-turbo-monorepo/base/packages/ui/src/components/index.ts +2 -0
  291. package/templates/nextjs-turbo-monorepo/base/packages/ui/src/components/ui/button.tsx +57 -0
  292. package/templates/nextjs-turbo-monorepo/base/packages/ui/src/components/ui/card.tsx +76 -0
  293. package/templates/nextjs-turbo-monorepo/base/packages/ui/src/hooks/index.ts +2 -0
  294. package/templates/nextjs-turbo-monorepo/base/packages/ui/src/lib/utils.ts +6 -0
  295. package/templates/nextjs-turbo-monorepo/base/packages/ui/src/styles/globals.css +59 -0
  296. package/templates/nextjs-turbo-monorepo/base/packages/ui/tailwind.config.ts +15 -0
  297. package/templates/nextjs-turbo-monorepo/base/packages/ui/tsconfig.json +12 -0
  298. package/templates/nextjs-turbo-monorepo/base/packages/ui/vitest.config.ts +28 -0
  299. package/templates/nextjs-turbo-monorepo/base/packages/utils/package.json +24 -0
  300. package/templates/nextjs-turbo-monorepo/base/packages/utils/src/date.ts +117 -0
  301. package/templates/nextjs-turbo-monorepo/base/packages/utils/src/index.ts +2 -0
  302. package/templates/nextjs-turbo-monorepo/base/packages/utils/src/string.ts +59 -0
  303. package/templates/nextjs-turbo-monorepo/base/packages/utils/tsconfig.json +9 -0
  304. package/templates/nextjs-turbo-monorepo/base/packages/utils/vitest.config.ts +13 -0
  305. package/templates/nextjs-turbo-monorepo/base/pnpm-workspace.yaml +3 -0
  306. package/templates/nextjs-turbo-monorepo/base/tsconfig.json +19 -0
  307. package/templates/nextjs-turbo-monorepo/base/turbo.json +47 -0
  308. package/templates/nextjs-turbo-monorepo/extras/boss-cli/assets/claude-md/template.md +0 -0
  309. package/templates/nextjs-turbo-monorepo/extras/boss-cli/assets/github-workflows/CODEOWNERS +0 -0
  310. package/templates/nextjs-turbo-monorepo/extras/boss-cli/assets/github-workflows/boss-ci.yml +139 -0
  311. package/templates/nextjs-turbo-monorepo/extras/boss-cli/assets/github-workflows/boss-gates.yml +116 -0
  312. package/templates/nextjs-turbo-monorepo/extras/config/kamal/_env +18 -0
  313. package/templates/nextjs-turbo-monorepo/extras/config/kamal/deploy.yml +92 -0
  314. package/templates/nextjs-turbo-monorepo/extras/scripts/deploy.sh +38 -0
  315. package/templates/nextjs-turbo-monorepo/extras/scripts/setup-db.sh +29 -0
  316. package/assets/claude-md/docs/container-use.md +0 -140
  317. package/dist/assets/claude-md/docs/container-use.md +0 -140
package/README.md CHANGED
@@ -131,4 +131,3 @@ boss bootstrap --template blank --quality startup --name test-project --non-inte
131
131
  # Or use tsx directly (no build needed)
132
132
  pnpm exec tsx src/index.ts bootstrap --template blank --quality startup --name test-project --non-interactive
133
133
  ```
134
-
@@ -0,0 +1,139 @@
1
+ # Conductor MCP Operations
2
+
3
+ **CRITICAL:** BOSS uses Conductor MCP to orchestrate workers. Conductor handles all container management, worker configuration, and execution.
4
+
5
+ ## Overview
6
+
7
+ Conductor MCP is a middleware layer that simplifies worker orchestration. Instead of manually managing container environments, BOSS makes simple Conductor calls:
8
+
9
+ ```typescript
10
+ // Spawn a worker (Conductor handles everything)
11
+ await conductor.spawn_worker({
12
+ workerType: 'architect',
13
+ taskPrompt: 'Create constitution with TDD, BDD, and quality standards',
14
+ targetBranch: 'feature/boss-initial-setup'
15
+ });
16
+ ```
17
+
18
+ ## Core Conductor Tools
19
+
20
+ BOSS has access to 8 Conductor tools:
21
+
22
+ 1. **`spawn_worker`** - Spawn a single worker with full environment setup
23
+ 2. **`spawn_workers_parallel`** - Spawn multiple workers in parallel (optimized for Phase 5)
24
+ 3. **`get_worker_status`** - Check worker status and manifest
25
+ 4. **`list_active_workers`** - List all active workers
26
+ 5. **`execute_task`** - Execute additional tasks in existing worker environment
27
+ 6. **`merge_worker`** - Merge worker branch into target branch
28
+ 7. **`terminate_worker`** - Terminate a worker and clean up
29
+ 8. **`ask_worker`** - Query worker about their work
30
+
31
+ ## Worker Spawning
32
+
33
+ **CRITICAL:** BOSS must ALWAYS spawn workers using Conductor. BOSS must NEVER write deliverables directly.
34
+
35
+ **Correct Workflow:**
36
+ ```
37
+ 1. BOSS calls conductor.spawn_worker()
38
+ 2. Conductor creates container environment
39
+ 3. Conductor configures worker's .claude/CLAUDE.md
40
+ 4. Conductor executes worker task
41
+ 5. WORKER writes all deliverables
42
+ 6. BOSS reviews and merges
43
+ ```
44
+
45
+ **WRONG - BOSS Doing Work Directly:**
46
+ ```
47
+ 1. BOSS creates environment
48
+ 2. BOSS uses environment_file_write to write deliverables ❌ NOT OK
49
+ ```
50
+
51
+ ## What Conductor Handles
52
+
53
+ ✅ **Conductor DOES:**
54
+ - Load worker configurations from `.boss/workers/[worker-type]/`
55
+ - Create container environments
56
+ - Configure `.claude/CLAUDE.md` with worker-specific instructions
57
+ - Copy worker-specific `.claude/` files to container
58
+ - Execute tasks in isolated environments
59
+ - Track worker state and manifests
60
+ - Manage git branches (`container-use/env-*`)
61
+
62
+ ✅ **BOSS DOES:**
63
+ - Call Conductor tools to spawn workers
64
+ - Provide task prompts for workers
65
+ - Monitor worker status
66
+ - Decide when to merge or terminate workers
67
+ - Handle phase orchestration logic
68
+ - Manage quality gates and retries
69
+
70
+ ❌ **BOSS DOES NOT:**
71
+ - Load worker configurations (Conductor does this)
72
+ - Create container environments (Conductor does this)
73
+ - Configure `.claude/CLAUDE.md` (Conductor does this)
74
+ - Execute claude-code commands (Conductor does this)
75
+ - Track worker state (Conductor does this)
76
+
77
+ ## Worker Status and Manifests
78
+
79
+ Workers communicate their status via manifests (`.boss/worker-manifest-{workerId}.json`):
80
+
81
+ ```typescript
82
+ // Check worker status
83
+ const status = await conductor.get_worker_status({
84
+ workerId: 'env-abc123'
85
+ });
86
+
87
+ if (status.manifest?.workComplete) {
88
+ await conductor.merge_worker({ workerId: 'env-abc123' });
89
+ }
90
+ ```
91
+
92
+ ## Parallel Worker Execution
93
+
94
+ For Phase 5 optimization, spawn multiple workers in parallel:
95
+
96
+ ```typescript
97
+ const results = await conductor.spawn_workers_parallel({
98
+ workers: [
99
+ { workerType: 'architect', taskPrompt: '...' },
100
+ { workerType: 'clarifier', taskPrompt: '...' },
101
+ { workerType: 'spec-writer', taskPrompt: '...' },
102
+ { workerType: 'planner', taskPrompt: '...' }
103
+ ],
104
+ maxConcurrency: 4
105
+ });
106
+ ```
107
+
108
+ ## Resuming Worker Environments
109
+
110
+ To continue work in an existing environment (94% faster):
111
+
112
+ ```typescript
113
+ const followUp = await conductor.spawn_worker({
114
+ workerType: 'developer-backend',
115
+ taskPrompt: 'Add password reset to complete authentication',
116
+ resumeEnvironmentId: previousWorker.workerId,
117
+ targetBranch: 'feature/boss-auth'
118
+ });
119
+ ```
120
+
121
+ ## Key Rules
122
+
123
+ - **[DO]** ALWAYS use Conductor tools to spawn workers
124
+ - **[DO]** ALWAYS let workers write deliverables
125
+ - **[DO]** ALWAYS review worker manifests before merging
126
+ - **[DON'T]** NEVER write deliverables directly as BOSS
127
+ - **[DON'T]** NEVER use container-use MCP directly (use Conductor instead)
128
+ - **[DON'T]** NEVER bypass worker execution
129
+
130
+ ## Available Workers
131
+
132
+ Conductor supports 15 worker types:
133
+ - `architect`, `clarifier`, `spec-writer`, `planner`, `reviewer`
134
+ - `developer-frontend`, `developer-backend`, `developer-fullstack`
135
+ - `tester`, `code-reviewer`, `security-engineer`, `devops-engineer`
136
+ - `technical-writer`, `product-owner`, `consolidator`
137
+
138
+ See `docs/workers.md` for detailed worker descriptions.
139
+
@@ -19,7 +19,7 @@
19
19
  - Only verify `node_modules` directory exists (if missing, that's unexpected - `start-boss.sh` should have installed them)
20
20
  - This prevents pre-push/pre-commit hook failures due to missing dependencies (e.g., `tsc` not found)
21
21
  - If feature branch doesn't exist, create it from main
22
- - Switch to this branch using Container-Use MCP (create environment on this branch)
22
+ - Switch to this branch using git commands
23
23
  - Update `project-config.json` with `currentBranch: "feature/boss-initial-setup"`
24
24
 
25
25
  3. **Run Initial Setup Checklist**
@@ -98,7 +98,7 @@
98
98
  - **Base branch:** `"main"`
99
99
  - **Head branch:** `"feature/boss-initial-setup"`
100
100
  - **DO NOT ask user** - create PR automatically
101
- - [ ] **DO NOT create Container-Use environments for initialization** - BOSS handles this via git commands
101
+ - [ ] **DO NOT create worker environments for initialization** - BOSS handles this via git commands
102
102
  - [ ] **NEVER push feature branch before main branch** - main must be pushed first
103
103
  - [ ] **After initial setup, NEVER push directly to main** - always use PRs
104
104
 
@@ -106,65 +106,44 @@ These workers can be spawned at any phase as needed:
106
106
 
107
107
  **Worker Execution (MANDATORY - BOSS Must Spawn Workers):**
108
108
 
109
- **CRITICAL:** BOSS must ALWAYS spawn workers using `mcp_container-use_execute_in_environment`. BOSS must NEVER write deliverables directly.
110
-
111
- 1. **Create environment** using `mcp_container-use_create_environment`
112
- - Load worker config from `.boss/workers/[worker-name]/container-config.json`
113
-
114
- 2. **Load worker configuration:**
115
- - Read `.boss/workers/[worker-name]/prompt.md` to understand worker's role and instructions
116
- - Read `.boss/workers/[worker-name]/CLAUDE.md` for execution guidelines
117
- - Check for worker-specific `.claude` folder: `.boss/workers/[worker-name]/.claude/`
118
-
119
- 3. **Configure container environment (MANDATORY - ONLY EXCEPTION):**
120
- - **This is the ONLY time BOSS uses `environment_file_write`** - to configure the container for the worker
121
- - **Overwrite `.claude/CLAUDE.md` in container:**
122
- - Read `.boss/workers/[worker-name]/CLAUDE.md` from host
123
- - Use `mcp_container-use_environment_file_write` to write to `/workdir/.claude/CLAUDE.md` in container
124
- - **CRITICAL PATH:** Host `.boss/workers/architect/CLAUDE.md` Container `/workdir/.claude/CLAUDE.md`
125
- - Container needs worker's instructions, not BOSS's orchestration instructions
126
- - **Copy worker-specific `.claude` files to container:**
127
- - If `.boss/workers/[worker-name]/.claude/` exists, copy all files maintaining directory structure
128
- - **CRITICAL PATH TRANSFORMATION:**
129
- - Remove `.boss/workers/[worker-name]/` prefix
130
- - Keep `.claude/` structure
131
- - Example: `.boss/workers/architect/.claude/commands/file.md` → `/workdir/.claude/commands/file.md`
132
- - Copy all subdirectories:
133
- - `.claude/commands/` `/workdir/.claude/commands/`
134
- - `.claude/skills/` → `/workdir/.claude/skills/`
135
- - `.claude/agents/` `/workdir/.claude/agents/`
136
- - `.claude/settings*.json` → `/workdir/.claude/settings*.json`
137
- - Use `mcp_container-use_environment_file_write` for each file
138
- - **Why:** Container's Claude Code reads from `/workdir/.claude/` by convention - we must copy files there
139
- - **Why NOT environment variables:** Claude Code reads from `.claude/` folder by convention, cannot be changed with env vars
140
-
141
- 4. **Assemble task prompt:**
142
- - Combine worker prompt with specific task instructions
143
- - Include context (constitution, specs, requirements)
144
- - Include quality gates and deliverables
145
-
146
- 5. **Execute worker using `mcp_container-use_execute_in_environment`** (MANDATORY)
147
- - Worker runs in isolated container with its own branch
148
- - Container has worker-specific `.claude/CLAUDE.md` and `.claude/` config files
149
- - **WORKER writes all deliverables** (constitution.md, spec.md, plan.md, code, tests, etc.)
150
- - **BOSS does NOT write deliverables** - BOSS only orchestrates
151
-
152
- 6. **Review work** using `container-use log <env_id>` and `container-use checkout <env_id>`
153
-
154
- 7. **Merge worker branch** using `mcp_container-use_merge_environment` or git commands
155
-
156
- 8. **Update `project-config.json`** with worker summary
109
+ **CRITICAL:** BOSS must ALWAYS spawn workers using Conductor MCP. BOSS must NEVER write deliverables directly.
110
+
111
+ 1. **Spawn worker using Conductor:**
112
+ ```typescript
113
+ await conductor.spawn_worker({
114
+ workerType: 'architect',
115
+ taskPrompt: 'Create constitution with TDD, BDD, and quality standards',
116
+ targetBranch: 'feature/boss-initial-setup'
117
+ });
118
+ ```
119
+
120
+ 2. **Conductor handles everything:**
121
+ - Loads worker config from `.boss/workers/[worker-name]/`
122
+ - Creates container environment
123
+ - Configures `.claude/CLAUDE.md` with worker-specific instructions
124
+ - Copies worker-specific `.claude/` files to container
125
+ - Executes worker task in isolated environment
126
+ - Tracks worker state and manifest
127
+
128
+ 3. **Review work:**
129
+ - Check worker status: `conductor.get_worker_status({ workerId })`
130
+ - Review worker manifest for deliverables
131
+
132
+ 4. **Merge worker branch:**
133
+ - Use `conductor.merge_worker({ workerId })` to merge worker's branch
134
+
135
+ 5. **Update `project-config.json`** with worker summary
157
136
 
158
137
  **BOSS MUST NEVER:**
159
138
  - NOT OK Write deliverables directly (constitution.md, spec.md, plan.md, code, tests, etc.)
160
- - NOT OK Use `environment_file_write` to create deliverables - workers write deliverables
161
- - NOT OK Use `environment_run_cmd` to execute code that creates deliverables - workers do this
139
+ - NOT OK Use container-use MCP directly - use Conductor instead
162
140
  - NOT OK Read worker prompts and then do the work yourself - spawn the worker instead
163
141
 
164
- **BOSS CAN ONLY use `environment_file_write` for:**
165
- - OK **Configuring container environment** - Overwrite `.claude/CLAUDE.md` with worker's CLAUDE.md
166
- - OK **Copying worker config files** - Copy `.boss/workers/[worker-name]/.claude/` files to `.claude/` in container
167
- - OK This is the ONLY exception - configuring the container, not doing the work
142
+ **BOSS ONLY:**
143
+ - OK Call Conductor tools to spawn workers
144
+ - OK Provide task prompts for workers
145
+ - OK Monitor worker status
146
+ - OK Decide when to merge or terminate workers
168
147
 
169
148
  **Communication Guidelines:**
170
149
  - **CRITICAL:** Use plain text only when communicating with workers - NO emojis
@@ -7,59 +7,23 @@
7
7
  - Check `initialization.stage` - if not "ready", complete initial setup first
8
8
  - Check `currentBranch` - all work happens on `feature/boss-initial-setup` initially
9
9
 
10
- 2. **Create Worker Environment**
11
- - Use Container-Use MCP `mcp_container-use_create_environment`
12
- - Environment automatically creates branch: `container-use/<env-id>`
13
- - Branch is created locally and will be pushed to remote later
14
- - Update `project-config.json` with new worker in `workflow.activeWorkers`
15
- - **DO NOT check environment status repeatedly** - only check when needed
16
-
17
- 3. **Configure Container Environment (MANDATORY - BEFORE Spawning Worker)**
18
- - **CRITICAL:** This is the ONLY exception where BOSS uses `environment_file_write`
19
- - **Purpose:** Configure container with worker-specific context, not BOSS's orchestration context
20
- - **Load worker configuration:**
21
- - Read `.boss/workers/[worker-name]/prompt.md` to understand worker's role
22
- - Read `.boss/workers/[worker-name]/CLAUDE.md` for execution guidelines
23
- - Check for worker-specific `.claude` folder: `.boss/workers/[worker-name]/.claude/`
24
- - **Overwrite `.claude/CLAUDE.md` in container:**
25
- - Read `.boss/workers/[worker-name]/CLAUDE.md` from host
26
- - Use `mcp_container-use_environment_file_write` to write to `/workdir/.claude/CLAUDE.md` in container
27
- - **CRITICAL PATH:** Host `.boss/workers/architect/CLAUDE.md` → Container `/workdir/.claude/CLAUDE.md`
28
- - Container needs worker's instructions, not BOSS's orchestration instructions
29
- - **Copy worker-specific `.claude` files to container:**
30
- - If `.boss/workers/[worker-name]/.claude/` exists, copy all files maintaining directory structure
31
- - **CRITICAL PATH TRANSFORMATION:**
32
- - Host: `.boss/workers/architect/.claude/commands/file.md`
33
- - Container: `/workdir/.claude/commands/file.md`
34
- - Remove `.boss/workers/architect/` prefix, keep `.claude/` structure
35
- - Copy all subdirectories:
36
- - `.claude/commands/` → `/workdir/.claude/commands/`
37
- - `.claude/skills/` → `/workdir/.claude/skills/`
38
- - `.claude/agents/` → `/workdir/.claude/agents/`
39
- - `.claude/settings*.json` → `/workdir/.claude/settings*.json`
40
- - Use `mcp_container-use_environment_file_write` for each file
41
- - **Why:** Container's Claude Code reads from `/workdir/.claude/` by convention - we must copy files there
42
- - **Why NOT environment variables:** Claude Code reads from `.claude/` folder by convention, cannot be changed
43
-
44
- 4. **Spawn Worker (MANDATORY - BOSS Never Does Work Directly)**
45
- - **CRITICAL:** Use `mcp_container-use_execute_in_environment` to run worker
10
+ 2. **Spawn Worker (MANDATORY - BOSS Never Does Work Directly)**
11
+ - **CRITICAL:** Use Conductor MCP `spawn_worker` to spawn workers
46
12
  - **BOSS MUST NEVER write deliverables directly** (constitution.md, spec.md, plan.md, code, tests, etc.)
47
- - **BOSS MUST NEVER use `environment_file_write` to create deliverables** - workers write all deliverables
48
- - **BOSS MUST NEVER use `environment_run_cmd` to execute code that creates deliverables** - workers do this
49
- - Worker runs in isolated container with its own branch
13
+ - Conductor handles all container creation, configuration, and execution
14
+ - Worker runs in isolated container with its own branch (`container-use/env-*`)
50
15
  - Container has worker-specific `.claude/CLAUDE.md` and `.claude/` config files
51
16
  - Worker does ALL the actual work (writes files, runs commands, creates code)
52
- - Container-Use manages all git operations automatically
53
- - **DO NOT** use git CLI directly
54
- - **DO NOT poll worker status** - Container-Use will notify when work completes
55
- - **Only check status once** after worker execution completes, not repeatedly
17
+ - Conductor manages all git operations automatically
18
+ - **DO NOT** use git CLI directly for worker operations
19
+ - **DO NOT poll worker status** - check status when needed
56
20
 
57
21
  **Correct Workflow:**
58
22
  ```
59
- 1. BOSS creates environment
60
- 2. BOSS loads worker prompt from .boss/workers/[worker-name]/prompt.md
61
- 3. BOSS configures container: overwrites .claude/CLAUDE.md and copies .claude/ files
62
- 4. BOSS calls mcp_container-use_execute_in_environment with task prompt
23
+ 1. BOSS calls conductor.spawn_worker()
24
+ 2. Conductor creates container environment
25
+ 3. Conductor configures worker's .claude/CLAUDE.md
26
+ 4. Conductor executes worker task
63
27
  5. WORKER (in container) writes all deliverables
64
28
  6. BOSS reviews and merges
65
29
  ```
@@ -67,17 +31,17 @@
67
31
  **WRONG - BOSS Doing Work Directly:**
68
32
  ```
69
33
  1. BOSS creates environment
70
- 2. BOSS reads worker prompt
71
- 3. BOSS uses environment_file_write to write deliverables NOT OK WRONG!
34
+ 2. BOSS uses environment_file_write to write deliverables ❌ NOT OK
72
35
  ```
73
36
 
74
- 5. **Review Work (Optional - for user visibility)**
75
- - Inform user how to review: `container-use log <env_id>`, `container-use diff <env_id>`, `container-use checkout <env_id>`
37
+ 3. **Review Work (Optional - for user visibility)**
38
+ - Check worker status using `conductor.get_worker_status()`
39
+ - Review worker manifest for deliverables
76
40
  - **DO NOT wait for approval** - proceed automatically
77
41
 
78
- 6. **Merge Worker Changes (AUTOMATIC)**
79
- - **AUTOMATICALLY** use `mcp_container-use_merge_environment` to merge worker's branch
80
- - Container-Use merges worker's branch into target branch (usually `feature/boss-initial-setup`)
42
+ 4. **Merge Worker Changes (AUTOMATIC)**
43
+ - **AUTOMATICALLY** use `conductor.merge_worker()` to merge worker's branch
44
+ - Conductor merges worker's branch into target branch (usually `feature/boss-initial-setup`)
81
45
  - **DO NOT check worker status repeatedly** - only check once after merge completes
82
46
  - Update `project-config.json`:
83
47
  - Remove from `workflow.activeWorkers`
@@ -105,12 +69,12 @@
105
69
  - **ALWAYS USE PRs:** All changes to main must go through pull requests
106
70
  - **NEVER push to main directly** - always push to feature branch and create PR
107
71
  - **BOSS uses git commands** for orchestration: creating branches, pushing code, merging branches
108
- - Container-Use creates branches locally with naming: `container-use/<env-id>`
72
+ - Conductor creates branches locally with naming: `container-use/<env-id>`
109
73
  - All worker branches merge into `feature/boss-initial-setup` (or current feature branch)
110
- - Workers use Container-Use MCP for their git operations (automatic)
74
+ - Workers use Conductor MCP for their operations (automatic)
111
75
  - Always update `project-config.json` to track state changes
112
76
  - Each worker environment = isolated branch = isolated work
113
- - **MINIMIZE STATUS CHECKS:** Only check worker/environment status when necessary, not repeatedly
77
+ - **MINIMIZE STATUS CHECKS:** Only check worker status when necessary, not repeatedly
114
78
 
115
79
  ## Automatic Workflow Completion
116
80
 
@@ -118,10 +82,10 @@
118
82
 
119
83
  After worker completes their work:
120
84
 
121
- 1. **Merge automatically** - Use `mcp_container-use_merge_environment` to merge worker branch into feature branch, or use git commands: `git merge <worker-branch>`
85
+ 1. **Merge automatically** - Use `conductor.merge_worker()` to merge worker branch into feature branch
122
86
  2. **Push feature branch automatically** - Use git commands: `git push origin <feature-branch-name>` or `git push -u origin <feature-branch-name>`
123
87
  - **NEVER push to main** - husky pre-push hooks block this (enforced for everyone)
124
- 3. **Create PR automatically (MANDATORY)** - Use `mcp__github__create_pull_request` to create PR from feature branch to main
88
+ 3. **Create PR automatically (MANDATORY)** - Use GitHub MCP to create PR from feature branch to main
125
89
  4. **Update project-config.json** - Mark workflow as complete, add PR link, then commit and push: `git add .boss/project-config.json && git commit -m "chore: update project-config.json" && git push`
126
90
 
127
91
  **DO NOT:**