sdd-forge 0.1.0-alpha.4 → 0.1.0-alpha.549

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 (427) hide show
  1. package/README.md +128 -36
  2. package/package.json +13 -4
  3. package/src/AGENTS.md +485 -0
  4. package/src/docs/commands/agents.js +152 -294
  5. package/src/docs/commands/changelog.js +30 -40
  6. package/src/docs/commands/data.js +90 -113
  7. package/src/docs/commands/enrich.js +521 -0
  8. package/src/docs/commands/forge.js +268 -612
  9. package/src/docs/commands/init.js +147 -467
  10. package/src/docs/commands/readme.js +130 -140
  11. package/src/docs/commands/review.js +246 -43
  12. package/src/docs/commands/scan.js +414 -110
  13. package/src/docs/commands/text.js +483 -445
  14. package/src/docs/commands/translate.js +228 -0
  15. package/src/docs/data/agents.js +139 -0
  16. package/src/docs/data/docs.js +287 -0
  17. package/src/docs/data/lang.js +109 -0
  18. package/src/docs/data/project.js +56 -0
  19. package/src/docs/data/text.js +32 -0
  20. package/src/docs/lib/analysis-entry.js +78 -0
  21. package/src/docs/lib/analysis-filter.js +60 -0
  22. package/src/docs/lib/chapter-resolver.js +141 -0
  23. package/src/docs/lib/command-context.js +180 -0
  24. package/src/docs/lib/concurrency.js +47 -0
  25. package/src/docs/lib/data-source-loader.js +45 -0
  26. package/src/docs/lib/data-source.js +91 -0
  27. package/src/docs/lib/directive-parser.js +418 -87
  28. package/src/docs/lib/forge-prompts.js +182 -0
  29. package/src/docs/lib/lang/js.js +163 -0
  30. package/src/docs/lib/lang/php.js +173 -0
  31. package/src/docs/lib/lang/py.js +34 -0
  32. package/src/docs/lib/lang/yaml.js +19 -0
  33. package/src/docs/lib/lang-factory.js +37 -0
  34. package/src/docs/lib/minify.js +49 -0
  35. package/src/docs/lib/resolver-factory.js +98 -43
  36. package/src/docs/lib/review-parser.js +84 -0
  37. package/src/docs/lib/scan-source.js +75 -0
  38. package/src/docs/lib/scanner.js +111 -331
  39. package/src/docs/lib/template-merger.js +516 -169
  40. package/src/docs/lib/test-env-detection.js +58 -0
  41. package/src/docs/lib/text-prompts.js +295 -0
  42. package/src/docs/lib/toml-parser.js +135 -0
  43. package/src/docs.js +192 -65
  44. package/src/flow/commands/merge.js +208 -0
  45. package/src/flow/commands/report.js +207 -0
  46. package/src/flow/commands/review.js +642 -0
  47. package/src/flow/get/check.js +97 -0
  48. package/src/flow/get/context.js +486 -0
  49. package/src/flow/get/guardrail.js +76 -0
  50. package/src/flow/get/issue.js +38 -0
  51. package/src/flow/get/prompt.js +360 -0
  52. package/src/flow/get/qa-count.js +21 -0
  53. package/src/flow/get/resolve-context.js +133 -0
  54. package/src/flow/get/status.js +42 -0
  55. package/src/flow/registry.js +193 -0
  56. package/src/flow/run/finalize.js +292 -0
  57. package/src/flow/run/gate.js +252 -0
  58. package/src/flow/run/impl-confirm.js +121 -0
  59. package/src/flow/run/lint.js +79 -0
  60. package/src/flow/run/prepare-spec.js +339 -0
  61. package/src/flow/run/report.js +91 -0
  62. package/src/flow/run/retro.js +269 -0
  63. package/src/flow/run/review.js +130 -0
  64. package/src/flow/run/sync.js +114 -0
  65. package/src/flow/set/auto.js +29 -0
  66. package/src/flow/set/issue.js +33 -0
  67. package/src/flow/set/metric.js +48 -0
  68. package/src/flow/set/note.js +27 -0
  69. package/src/flow/set/redo.js +113 -0
  70. package/src/flow/set/req.js +34 -0
  71. package/src/flow/set/request.js +27 -0
  72. package/src/flow/set/step.js +28 -0
  73. package/src/flow/set/summary.js +40 -0
  74. package/src/flow/set/test-summary.js +57 -0
  75. package/src/flow.js +119 -196
  76. package/src/help.js +50 -41
  77. package/src/lib/agent.js +342 -23
  78. package/src/lib/agents-md.js +25 -0
  79. package/src/lib/cli.js +31 -0
  80. package/src/lib/config.js +52 -48
  81. package/src/lib/entrypoint.js +24 -0
  82. package/src/lib/exit-codes.js +8 -0
  83. package/src/lib/flow-envelope.js +61 -0
  84. package/src/lib/flow-state.js +589 -17
  85. package/src/lib/git-state.js +52 -0
  86. package/src/lib/guardrail.js +190 -0
  87. package/src/lib/i18n.js +189 -51
  88. package/src/lib/include.js +113 -0
  89. package/src/lib/json-parse.js +286 -0
  90. package/src/lib/lint.js +124 -0
  91. package/src/lib/multi-select.js +265 -0
  92. package/src/lib/presets.js +153 -0
  93. package/src/lib/process.js +1 -0
  94. package/src/lib/progress.js +217 -0
  95. package/src/lib/skills.js +102 -0
  96. package/src/lib/types.js +200 -93
  97. package/src/locale/en/messages.json +117 -0
  98. package/src/locale/en/prompts.json +68 -0
  99. package/src/locale/en/ui.json +304 -0
  100. package/src/locale/ja/messages.json +117 -0
  101. package/src/locale/ja/prompts.json +68 -0
  102. package/src/locale/ja/ui.json +304 -0
  103. package/src/presets/api/preset.json +31 -0
  104. package/src/presets/api/templates/en/api_overview.md +22 -0
  105. package/src/presets/api/templates/en/authentication.md +22 -0
  106. package/src/presets/api/templates/ja/api_overview.md +22 -0
  107. package/src/presets/api/templates/ja/authentication.md +22 -0
  108. package/src/presets/architecture/preset.json +6 -0
  109. package/src/presets/base/data/package.js +60 -0
  110. package/src/presets/base/data/structure.js +109 -0
  111. package/src/presets/base/preset.json +22 -0
  112. package/src/presets/base/templates/en/AGENTS.sdd.md +28 -0
  113. package/src/presets/base/templates/en/development.md +42 -0
  114. package/src/presets/base/templates/en/guardrail.json +82 -0
  115. package/src/presets/base/templates/en/layout.md +10 -0
  116. package/src/presets/base/templates/en/overview.md +47 -0
  117. package/src/presets/base/templates/en/project_structure.md +35 -0
  118. package/src/presets/base/templates/en/stack_and_ops.md +44 -0
  119. package/src/presets/base/templates/ja/AGENTS.sdd.md +28 -0
  120. package/src/presets/base/templates/ja/development.md +42 -0
  121. package/src/presets/base/templates/ja/guardrail.json +82 -0
  122. package/src/presets/base/templates/ja/layout.md +10 -0
  123. package/src/presets/base/templates/ja/overview.md +47 -0
  124. package/src/presets/base/templates/ja/project_structure.md +35 -0
  125. package/src/presets/base/templates/ja/stack_and_ops.md +44 -0
  126. package/src/presets/cakephp2/data/commands.js +129 -0
  127. package/src/presets/cakephp2/data/config.js +829 -0
  128. package/src/presets/cakephp2/data/controllers.js +176 -0
  129. package/src/presets/cakephp2/data/docker.js +17 -0
  130. package/src/presets/cakephp2/data/email.js +177 -0
  131. package/src/presets/cakephp2/data/libs.js +152 -0
  132. package/src/presets/cakephp2/data/models.js +539 -0
  133. package/src/presets/cakephp2/data/tables.js +122 -0
  134. package/src/presets/cakephp2/data/tests.js +83 -0
  135. package/src/presets/cakephp2/data/views.js +325 -0
  136. package/src/presets/cakephp2/preset.json +14 -0
  137. package/src/presets/cakephp2/templates/en/auth_and_session.md +42 -0
  138. package/src/presets/cakephp2/templates/en/business_logic.md +16 -0
  139. package/src/presets/cakephp2/templates/en/commands.md +16 -0
  140. package/src/presets/cakephp2/templates/en/controller_routes.md +19 -0
  141. package/src/presets/cakephp2/templates/en/database_architecture.md +11 -0
  142. package/src/presets/cakephp2/templates/en/db_tables.md +16 -0
  143. package/src/presets/cakephp2/templates/en/development.md +46 -0
  144. package/src/presets/cakephp2/templates/en/guardrail.json +46 -0
  145. package/src/presets/cakephp2/templates/en/project_structure.md +31 -0
  146. package/src/presets/cakephp2/templates/en/stack_and_ops.md +43 -0
  147. package/src/presets/cakephp2/templates/ja/auth_and_session.md +42 -0
  148. package/src/presets/cakephp2/templates/ja/business_logic.md +16 -0
  149. package/src/presets/cakephp2/templates/ja/commands.md +16 -0
  150. package/src/presets/cakephp2/templates/ja/controller_routes.md +19 -0
  151. package/src/presets/cakephp2/templates/ja/database_architecture.md +11 -0
  152. package/src/presets/cakephp2/templates/ja/db_tables.md +16 -0
  153. package/src/presets/cakephp2/templates/ja/development.md +46 -0
  154. package/src/presets/cakephp2/templates/ja/guardrail.json +46 -0
  155. package/src/presets/cakephp2/templates/ja/project_structure.md +31 -0
  156. package/src/presets/cakephp2/templates/ja/stack_and_ops.md +43 -0
  157. package/src/presets/ci/data/pipelines.js +361 -0
  158. package/src/presets/ci/preset.json +35 -0
  159. package/src/presets/ci/templates/en/ci_cd.md +27 -0
  160. package/src/presets/ci/templates/ja/ci_cd.md +27 -0
  161. package/src/presets/cli/data/commands.js +52 -0
  162. package/src/presets/cli/data/modules.js +64 -0
  163. package/src/presets/cli/preset.json +31 -0
  164. package/src/presets/cli/templates/en/README.md +35 -0
  165. package/src/presets/cli/templates/en/commands.md +35 -0
  166. package/src/presets/cli/templates/en/config.md +41 -0
  167. package/src/presets/cli/templates/en/guardrail.json +37 -0
  168. package/src/presets/cli/templates/ja/README.md +35 -0
  169. package/src/presets/cli/templates/ja/commands.md +35 -0
  170. package/src/presets/cli/templates/ja/config.md +41 -0
  171. package/src/presets/cli/templates/ja/guardrail.json +37 -0
  172. package/src/presets/database/data/schema.js +38 -0
  173. package/src/presets/database/preset.json +11 -0
  174. package/src/presets/database/templates/en/database.md +16 -0
  175. package/src/presets/database/templates/ja/database.md +16 -0
  176. package/src/presets/drizzle/data/schema.js +231 -0
  177. package/src/presets/drizzle/preset.json +27 -0
  178. package/src/presets/drizzle/templates/en/database.md +11 -0
  179. package/src/presets/drizzle/templates/en/schema.md +20 -0
  180. package/src/presets/drizzle/templates/ja/database.md +11 -0
  181. package/src/presets/drizzle/templates/ja/schema.md +20 -0
  182. package/src/presets/edge/data/runtime.js +106 -0
  183. package/src/presets/edge/preset.json +11 -0
  184. package/src/presets/edge/templates/en/edge_runtime.md +20 -0
  185. package/src/presets/edge/templates/ja/edge_runtime.md +20 -0
  186. package/src/presets/graphql/data/schema.js +198 -0
  187. package/src/presets/graphql/preset.json +46 -0
  188. package/src/presets/graphql/templates/en/api_overview.md +8 -0
  189. package/src/presets/graphql/templates/en/authentication.md +15 -0
  190. package/src/presets/graphql/templates/en/schema.md +27 -0
  191. package/src/presets/graphql/templates/ja/api_overview.md +8 -0
  192. package/src/presets/graphql/templates/ja/authentication.md +15 -0
  193. package/src/presets/graphql/templates/ja/schema.md +27 -0
  194. package/src/presets/hono/data/middleware.js +137 -0
  195. package/src/presets/hono/preset.json +53 -0
  196. package/src/presets/hono/templates/en/middleware.md +13 -0
  197. package/src/presets/hono/templates/ja/middleware.md +13 -0
  198. package/src/presets/js-webapp/preset.json +24 -0
  199. package/src/presets/laravel/data/commands.js +21 -0
  200. package/src/presets/laravel/data/config.js +335 -0
  201. package/src/presets/laravel/data/controllers.js +193 -0
  202. package/src/presets/laravel/data/models.js +291 -0
  203. package/src/presets/laravel/data/routes.js +269 -0
  204. package/src/presets/laravel/data/tables.js +305 -0
  205. package/src/presets/laravel/preset.json +17 -0
  206. package/src/presets/laravel/templates/en/auth_and_session.md +29 -0
  207. package/src/presets/laravel/templates/en/controller_routes.md +34 -0
  208. package/src/presets/laravel/templates/en/db_tables.md +16 -0
  209. package/src/presets/laravel/templates/en/guardrail.json +46 -0
  210. package/src/presets/laravel/templates/en/project_structure.md +13 -0
  211. package/src/presets/laravel/templates/en/stack_and_ops.md +34 -0
  212. package/src/presets/laravel/templates/ja/auth_and_session.md +29 -0
  213. package/src/presets/laravel/templates/ja/controller_routes.md +34 -0
  214. package/src/presets/laravel/templates/ja/db_tables.md +16 -0
  215. package/src/presets/laravel/templates/ja/guardrail.json +46 -0
  216. package/src/presets/laravel/templates/ja/project_structure.md +13 -0
  217. package/src/presets/laravel/templates/ja/stack_and_ops.md +34 -0
  218. package/src/presets/lib/composer-utils.js +61 -0
  219. package/src/presets/library/preset.json +31 -0
  220. package/src/presets/library/templates/en/README.md +16 -0
  221. package/src/presets/library/templates/en/guardrail.json +26 -0
  222. package/src/presets/library/templates/en/public_api.md +34 -0
  223. package/src/presets/library/templates/en/usage.md +41 -0
  224. package/src/presets/library/templates/ja/README.md +16 -0
  225. package/src/presets/library/templates/ja/guardrail.json +26 -0
  226. package/src/presets/library/templates/ja/public_api.md +34 -0
  227. package/src/presets/library/templates/ja/usage.md +41 -0
  228. package/src/presets/monorepo/data/monorepo.js +79 -0
  229. package/src/presets/monorepo/preset.json +6 -0
  230. package/src/presets/nextjs/data/components.js +139 -0
  231. package/src/presets/nextjs/data/routes.js +325 -0
  232. package/src/presets/nextjs/preset.json +59 -0
  233. package/src/presets/nextjs/templates/en/components.md +27 -0
  234. package/src/presets/nextjs/templates/en/middleware.md +13 -0
  235. package/src/presets/nextjs/templates/en/pages_routing.md +27 -0
  236. package/src/presets/nextjs/templates/en/route_handlers.md +13 -0
  237. package/src/presets/nextjs/templates/ja/components.md +27 -0
  238. package/src/presets/nextjs/templates/ja/middleware.md +13 -0
  239. package/src/presets/nextjs/templates/ja/pages_routing.md +27 -0
  240. package/src/presets/nextjs/templates/ja/route_handlers.md +13 -0
  241. package/src/presets/node-cli/preset.json +44 -0
  242. package/src/presets/node-cli/templates/en/README.md +31 -0
  243. package/src/presets/node-cli/templates/en/cli_commands.md +31 -0
  244. package/src/presets/node-cli/templates/en/configuration.md +31 -0
  245. package/src/presets/node-cli/templates/en/development_testing.md +49 -0
  246. package/src/presets/node-cli/templates/en/guardrail.json +24 -0
  247. package/src/presets/node-cli/templates/en/internal_design.md +36 -0
  248. package/src/presets/node-cli/templates/en/overview.md +31 -0
  249. package/src/presets/node-cli/templates/ja/README.md +31 -0
  250. package/src/presets/node-cli/templates/ja/cli_commands.md +31 -0
  251. package/src/presets/node-cli/templates/ja/configuration.md +31 -0
  252. package/src/presets/node-cli/templates/ja/development_testing.md +49 -0
  253. package/src/presets/node-cli/templates/ja/guardrail.json +24 -0
  254. package/src/presets/node-cli/templates/ja/internal_design.md +36 -0
  255. package/src/presets/node-cli/templates/ja/overview.md +31 -0
  256. package/src/presets/php-webapp/preset.json +10 -0
  257. package/src/presets/postgres/data/database.js +19 -0
  258. package/src/presets/postgres/preset.json +11 -0
  259. package/src/presets/postgres/templates/en/database.md +9 -0
  260. package/src/presets/postgres/templates/ja/database.md +9 -0
  261. package/src/presets/principle/preset.json +5 -0
  262. package/src/presets/r2/data/storage.js +78 -0
  263. package/src/presets/r2/preset.json +11 -0
  264. package/src/presets/r2/templates/en/storage.md +11 -0
  265. package/src/presets/r2/templates/ja/storage.md +11 -0
  266. package/src/presets/rest/preset.json +35 -0
  267. package/src/presets/rest/templates/en/api_overview.md +8 -0
  268. package/src/presets/rest/templates/en/authentication.md +15 -0
  269. package/src/presets/rest/templates/en/endpoints.md +20 -0
  270. package/src/presets/rest/templates/ja/api_overview.md +8 -0
  271. package/src/presets/rest/templates/ja/authentication.md +15 -0
  272. package/src/presets/rest/templates/ja/endpoints.md +20 -0
  273. package/src/presets/storage/data/buckets.js +23 -0
  274. package/src/presets/storage/preset.json +11 -0
  275. package/src/presets/storage/templates/en/storage.md +20 -0
  276. package/src/presets/storage/templates/ja/storage.md +20 -0
  277. package/src/presets/symfony/data/commands.js +41 -0
  278. package/src/presets/symfony/data/config.js +272 -0
  279. package/src/presets/symfony/data/controllers.js +240 -0
  280. package/src/presets/symfony/data/entities.js +228 -0
  281. package/src/presets/symfony/data/routes.js +332 -0
  282. package/src/{docs/presets/webapp/symfony/analyze-migrations.js → presets/symfony/data/tables.js} +129 -45
  283. package/src/presets/symfony/preset.json +16 -0
  284. package/src/presets/symfony/templates/en/auth_and_session.md +29 -0
  285. package/src/presets/symfony/templates/en/business_logic.md +10 -0
  286. package/src/presets/symfony/templates/en/controller_routes.md +32 -0
  287. package/src/presets/symfony/templates/en/db_tables.md +21 -0
  288. package/src/presets/symfony/templates/en/guardrail.json +47 -0
  289. package/src/presets/symfony/templates/en/project_structure.md +13 -0
  290. package/src/presets/symfony/templates/en/stack_and_ops.md +34 -0
  291. package/src/presets/symfony/templates/ja/auth_and_session.md +29 -0
  292. package/src/presets/symfony/templates/ja/business_logic.md +10 -0
  293. package/src/presets/symfony/templates/ja/controller_routes.md +32 -0
  294. package/src/presets/symfony/templates/ja/db_tables.md +21 -0
  295. package/src/presets/symfony/templates/ja/guardrail.json +47 -0
  296. package/src/presets/symfony/templates/ja/project_structure.md +13 -0
  297. package/src/presets/symfony/templates/ja/stack_and_ops.md +34 -0
  298. package/src/presets/web-design/NOTICE +10 -0
  299. package/src/presets/web-design/preset.json +5 -0
  300. package/src/presets/web-design/templates/en/guardrail.json +75 -0
  301. package/src/presets/web-design/templates/ja/guardrail.json +75 -0
  302. package/src/presets/webapp/data/commands.js +47 -0
  303. package/src/presets/webapp/data/controllers.js +64 -0
  304. package/src/presets/webapp/data/models.js +77 -0
  305. package/src/presets/webapp/data/routes.js +63 -0
  306. package/src/presets/webapp/data/tables.js +51 -0
  307. package/src/presets/webapp/data/webapp-data-source.js +11 -0
  308. package/src/presets/webapp/preset.json +47 -0
  309. package/src/presets/webapp/templates/en/README.md +20 -0
  310. package/src/presets/webapp/templates/en/auth_and_session.md +47 -0
  311. package/src/presets/webapp/templates/en/business_logic.md +45 -0
  312. package/src/presets/webapp/templates/en/commands.md +42 -0
  313. package/src/presets/webapp/templates/en/controller_routes.md +49 -0
  314. package/src/presets/webapp/templates/en/database_architecture.md +41 -0
  315. package/src/presets/webapp/templates/en/db_tables.md +29 -0
  316. package/src/presets/webapp/templates/en/guardrail.json +58 -0
  317. package/src/presets/webapp/templates/ja/README.md +20 -0
  318. package/src/presets/webapp/templates/ja/auth_and_session.md +47 -0
  319. package/src/presets/webapp/templates/ja/business_logic.md +45 -0
  320. package/src/presets/webapp/templates/ja/commands.md +42 -0
  321. package/src/presets/webapp/templates/ja/controller_routes.md +49 -0
  322. package/src/presets/webapp/templates/ja/database_architecture.md +41 -0
  323. package/src/presets/webapp/templates/ja/db_tables.md +29 -0
  324. package/src/presets/webapp/templates/ja/guardrail.json +58 -0
  325. package/src/presets/workers/data/bindings.js +297 -0
  326. package/src/presets/workers/preset.json +29 -0
  327. package/src/presets/workers/templates/en/bindings.md +20 -0
  328. package/src/presets/workers/templates/en/edge_runtime.md +11 -0
  329. package/src/presets/workers/templates/ja/bindings.md +20 -0
  330. package/src/presets/workers/templates/ja/edge_runtime.md +11 -0
  331. package/src/presets-cmd.js +83 -0
  332. package/src/sdd-forge.js +31 -78
  333. package/src/setup.js +592 -0
  334. package/src/templates/config.example.json +44 -25
  335. package/src/templates/partials/choice-format.md +13 -0
  336. package/src/templates/partials/context-recording.md +3 -0
  337. package/src/templates/partials/core-principle.md +13 -0
  338. package/src/templates/partials/flow-tracking.md +1 -0
  339. package/src/templates/partials/redo-recording.md +41 -0
  340. package/src/templates/partials/worktree-mode.md +4 -0
  341. package/src/templates/skills/sdd-forge.flow-auto-off/SKILL.md +17 -0
  342. package/src/templates/skills/sdd-forge.flow-auto-on/SKILL.md +31 -0
  343. package/src/templates/skills/sdd-forge.flow-finalize/SKILL.md +104 -0
  344. package/src/templates/skills/sdd-forge.flow-impl/SKILL.md +189 -0
  345. package/src/templates/skills/sdd-forge.flow-plan/SKILL.md +236 -0
  346. package/src/templates/skills/sdd-forge.flow-resume/SKILL.md +34 -0
  347. package/src/templates/skills/sdd-forge.flow-status/SKILL.md +98 -0
  348. package/src/templates/skills/sdd-forge.flow-sync/SKILL.md +35 -0
  349. package/src/upgrade.js +111 -0
  350. package/src/README.md +0 -169
  351. package/src/docs/commands/default-project.js +0 -45
  352. package/src/docs/commands/setup.js +0 -664
  353. package/src/docs/lib/renderers.js +0 -150
  354. package/src/docs/lib/resolver-base.js +0 -229
  355. package/src/docs/presets/registry.js +0 -75
  356. package/src/docs/presets/webapp/cakephp2/analyze-controllers.js +0 -85
  357. package/src/docs/presets/webapp/cakephp2/analyze-extras.js +0 -944
  358. package/src/docs/presets/webapp/cakephp2/analyze-models.js +0 -130
  359. package/src/docs/presets/webapp/cakephp2/analyze-routes.js +0 -50
  360. package/src/docs/presets/webapp/cakephp2/analyze-shells.js +0 -75
  361. package/src/docs/presets/webapp/cakephp2/resolver.js +0 -328
  362. package/src/docs/presets/webapp/cakephp2/scanner.js +0 -74
  363. package/src/docs/presets/webapp/laravel/analyze-config.js +0 -124
  364. package/src/docs/presets/webapp/laravel/analyze-controllers.js +0 -86
  365. package/src/docs/presets/webapp/laravel/analyze-migrations.js +0 -147
  366. package/src/docs/presets/webapp/laravel/analyze-models.js +0 -173
  367. package/src/docs/presets/webapp/laravel/analyze-routes.js +0 -121
  368. package/src/docs/presets/webapp/laravel/resolver.js +0 -234
  369. package/src/docs/presets/webapp/laravel/scanner.js +0 -104
  370. package/src/docs/presets/webapp/symfony/analyze-config.js +0 -136
  371. package/src/docs/presets/webapp/symfony/analyze-controllers.js +0 -105
  372. package/src/docs/presets/webapp/symfony/analyze-entities.js +0 -152
  373. package/src/docs/presets/webapp/symfony/analyze-routes.js +0 -207
  374. package/src/docs/presets/webapp/symfony/resolver.js +0 -223
  375. package/src/docs/presets/webapp/symfony/scanner.js +0 -104
  376. package/src/lib/projects.js +0 -127
  377. package/src/spec.js +0 -31
  378. package/src/specs/commands/gate.js +0 -108
  379. package/src/specs/commands/init.js +0 -271
  380. package/src/templates/locale/en/ui.json +0 -103
  381. package/src/templates/locale/ja/base/01_overview.md +0 -33
  382. package/src/templates/locale/ja/base/02_stack_and_ops.md +0 -33
  383. package/src/templates/locale/ja/base/03_project_structure.md +0 -27
  384. package/src/templates/locale/ja/base/04_development.md +0 -40
  385. package/src/templates/locale/ja/base/AGENTS.sdd.md +0 -84
  386. package/src/templates/locale/ja/cli/05_commands.md +0 -33
  387. package/src/templates/locale/ja/cli/06_config.md +0 -33
  388. package/src/templates/locale/ja/cli/README.md +0 -31
  389. package/src/templates/locale/ja/cli/node-cli/01_overview.md +0 -23
  390. package/src/templates/locale/ja/cli/node-cli/02_cli_commands.md +0 -23
  391. package/src/templates/locale/ja/cli/node-cli/03_configuration.md +0 -23
  392. package/src/templates/locale/ja/cli/node-cli/04_internal_design.md +0 -30
  393. package/src/templates/locale/ja/cli/node-cli/05_development.md +0 -49
  394. package/src/templates/locale/ja/cli/node-cli/README.md +0 -41
  395. package/src/templates/locale/ja/library/05_public_api.md +0 -27
  396. package/src/templates/locale/ja/library/06_usage.md +0 -33
  397. package/src/templates/locale/ja/library/README.md +0 -18
  398. package/src/templates/locale/ja/messages.json +0 -9
  399. package/src/templates/locale/ja/prompts.json +0 -4
  400. package/src/templates/locale/ja/sections.json +0 -6
  401. package/src/templates/locale/ja/ui.json +0 -103
  402. package/src/templates/locale/ja/webapp/05_auth_and_session.md +0 -37
  403. package/src/templates/locale/ja/webapp/06_database_architecture.md +0 -33
  404. package/src/templates/locale/ja/webapp/07_db_tables.md +0 -27
  405. package/src/templates/locale/ja/webapp/08_controller_routes.md +0 -41
  406. package/src/templates/locale/ja/webapp/09_business_logic.md +0 -37
  407. package/src/templates/locale/ja/webapp/10_batch_and_shell.md +0 -35
  408. package/src/templates/locale/ja/webapp/README.md +0 -34
  409. package/src/templates/locale/ja/webapp/cakephp2/02_stack_and_ops.md +0 -41
  410. package/src/templates/locale/ja/webapp/cakephp2/03_project_structure.md +0 -46
  411. package/src/templates/locale/ja/webapp/cakephp2/04_development.md +0 -58
  412. package/src/templates/locale/ja/webapp/cakephp2/05_auth_and_session.md +0 -22
  413. package/src/templates/locale/ja/webapp/cakephp2/07_db_tables.md +0 -19
  414. package/src/templates/locale/ja/webapp/cakephp2/08_controller_routes.md +0 -11
  415. package/src/templates/locale/ja/webapp/chapters.json +0 -4
  416. package/src/templates/locale/ja/webapp/laravel/02_stack_and_ops.md +0 -35
  417. package/src/templates/locale/ja/webapp/laravel/03_project_structure.md +0 -11
  418. package/src/templates/locale/ja/webapp/laravel/05_auth_and_session.md +0 -25
  419. package/src/templates/locale/ja/webapp/laravel/07_db_tables.md +0 -19
  420. package/src/templates/locale/ja/webapp/laravel/08_controller_routes.md +0 -37
  421. package/src/templates/locale/ja/webapp/symfony/02_stack_and_ops.md +0 -35
  422. package/src/templates/locale/ja/webapp/symfony/03_project_structure.md +0 -11
  423. package/src/templates/locale/ja/webapp/symfony/05_auth_and_session.md +0 -25
  424. package/src/templates/locale/ja/webapp/symfony/07_db_tables.md +0 -25
  425. package/src/templates/locale/ja/webapp/symfony/08_controller_routes.md +0 -35
  426. package/src/templates/skills/sdd-flow-close/SKILL.md +0 -53
  427. package/src/templates/skills/sdd-flow-start/SKILL.md +0 -58
package/README.md CHANGED
@@ -1,50 +1,142 @@
1
- # sdd-forge
1
+ # <!-- {{data("cli.project.name")}} -->sdd-forge<!-- {{/data}} -->
2
2
 
3
- Spec-Driven Development tooling for automated documentation generation
3
+ <!-- {{data("cli.docs.langSwitcher", {labels: "absolute"})}} -->
4
+ **English** | [日本語](https://github.com/SpreadWorks/sdd-forge/blob/main/docs/ja/README.md)
5
+ <!-- {{/data}} -->
4
6
 
5
- ## 技術スタック
7
+ [![npm version](https://img.shields.io/npm/v/sdd-forge.svg)](https://www.npmjs.com/package/sdd-forge)
8
+ [![license](https://img.shields.io/npm/l/sdd-forge.svg)](https://opensource.org/licenses/MIT)
9
+ [![downloads](https://img.shields.io/npm/dm/sdd-forge.svg)](https://www.npmjs.com/package/sdd-forge)
6
10
 
7
- | カテゴリ | 技術 |
8
- |----------|------|
9
- | 言語 | Node.js (ES Modules) |
10
- | 配布 | npm |
11
- | テスト | — |
11
+ > **Alpha:** APIs, command structure, and configuration formats may change without notice.
12
12
 
13
- ## クイックスタート
13
+ ## Spec-Driven Development — Design, implement, and document in a single flow
14
14
 
15
- ```bash
16
- npm install -g sdd-forge
17
- sdd-forge help
15
+ A spec-first development flow manager designed to work with AI coding agents.
16
+
17
+ ## The SDD Flow
18
+
19
+ Every feature goes through three phases, from spec to merge.
20
+
21
+ ```
22
+ plan ──────── Specification
23
+ │ ├─ draft Refine requirements through dialogue
24
+ │ ├─ spec Create spec (feature branch + spec.md)
25
+ │ ├─ gate Spec validation + guardrail check
26
+ │ └─ test Write test code
27
+
28
+ implement ─── Coding
29
+ │ ├─ implement Write code after gate PASS
30
+ │ └─ review AI code review
31
+
32
+ finalize ──── Wrap-up
33
+ │ ├─ commit Commit + retro + report
34
+ │ ├─ merge Squash merge or PR
35
+ │ ├─ sync Auto-update documentation
36
+ │ └─ cleanup Remove branch / worktree
18
37
  ```
19
38
 
20
- ## ドキュメント
39
+ ### AI stays in its lane
21
40
 
22
- | | 概要 |
23
- |----|------|
24
- | [01. ツール概要とアーキテクチャ](docs/01_overview.md) | 本章では、sdd-forge がどのような課題を解決するツールであるか、その全体的なアーキテクチャ、および利用を開始するまでの典型的なフローを説明します。ソースコードの自動解析によるドキュメント生成と、Spec-Driven Development ワークフローの両面からツールの役割を理解できます。 |
25
- | [02. CLI コマンドリファレンス](docs/02_cli_commands.md) | `sdd-forge` は `sdd-forge <コマンド>` 形式のサブコマンド体系を採用しており、ドキュメント生成・品質チェック・SDD ワークフロー支援など 16 種類のコマンドを提供しています。すべてのコマンドで共通して利用できるグローバルオプションとして `--help` および `--project` が用意されています。 |
26
- | [02. 技術スタックと運用](docs/02_stack_and_ops.md) | 本章では、sdd-forge が動作するために必要な技術スタックと、日常的な運用・デプロイ手順を説明します。Node.js 18 以上を実行環境とする純粋な ES モジュール CLI ツールであり、外部フレームワークや npm 依存パッケージを持たない軽量な構成です。 |
27
- | [03. 設定とカスタマイズ](docs/03_configuration.md) | sdd-forge は `.sdd-forge/config.json` を中心とした複数の設定ファイルを読み込み、ドキュメント生成の言語・スタイル・AI プロバイダー・プロジェクト登録などを制御します。テンプレートや AI エージェントのコマンドをカスタマイズすることで、さまざまなプロジェクト環境に合わせた柔軟な運用が可能です。 |
28
- | [03. プロジェクト構成](docs/03_project_structure.md) | 本章では sdd-forge のソースコード構成を解説します。`src/` 配下は `docs`・`specs`・`lib`・`templates` の 4 つの主要ディレクトリに整理されており、それぞれドキュメント生成・仕様管理・共通処理・テンプレートの役割を担っています。 |
29
- | [04. 開発ガイド](docs/04_development.md) | 本章では、sdd-forge の開発環境セットアップからローカル開発の手順、テスト実行までを説明します。外部依存パッケージがないため `npm install` と `npm link` のみで開発環境を構築でき、テストは Node.js 標準の `node:test` モジュールと `node --test` コマンドで実行します。 |
30
- | [04. 内部設計](docs/04_internal_design.md) | 本章では sdd-forge の内部構造を解説します。エントリポイント `sdd-forge.js` からサブシステムディスパッチャ(`docs.js` / `spec.js` / `flow.js`)、さらに `commands/` 配下の個別コマンドへと三層構造で委譲が行われ、`src/lib/` の共有ユーティリティが各層から横断的に利用されます。 |
31
- | [05. CLI コマンドリファレンス](docs/05_commands.md) | `sdd-forge` が提供する 16 のサブコマンドをリファレンス形式でまとめた章です。すべてのコマンドに共通する `--project` および `--help` グローバルオプションを備え、ドキュメント生成系・SDD ワークフロー系・プロジェクト管理系の 3 つの用途に大別されるサブコマンド体系を構成しています。 |
32
- | [05. 開発・テスト・配布](docs/05_development.md) | 本章では、`npm link` を用いたビルドレスなローカル開発環境の構築手順から、ブランチ運用・コミット規約・リリースフローまで、sdd-forge の開発に参加するために必要な情報をまとめています。外部依存ライブラリを持たない素の ES Modules 構成により、セットアップは最小限の手順で完了します。 |
33
- | [06. 設定とカスタマイズ](docs/06_config.md) | sdd-forge は `.sdd-forge/config.json` を中心に動作し、プロジェクトタイプ・出力言語・ドキュメントスタイル・AI エージェントなどを一元管理します。`sdd-forge setup` で初期生成された設定ファイルを直接編集することで、ドキュメント生成の挙動やワークフローのマージ戦略などをカスタマイズできます。 |
41
+ Source code analysis, spec gate checks, and flow orchestration are all handled by deterministic commands. AI is not in charge of the flow — it assists with spec drafting, code review, and prose generation within well-defined boundaries.
34
42
 
35
- ## 開発ワークフロー(SDD)
43
+ - **Spec gate** — Programmatic validation of unresolved items and missing approvals. No PASS, no implementation
44
+ - **Guardrails** — Project-specific design principles checked against each spec
45
+ - **Compaction resilience** — Flow state and requirements are persisted, so you can resume after context compression
36
46
 
37
- 本プロジェクトは Spec-Driven Development(SDD)を採用しています。
47
+ ## Automatic Doc Sync
38
48
 
49
+ Source code is statically analyzed to extract file structure, classes, methods, configuration, and dependencies. The extracted data is injected into templates to produce structured documentation (`docs/`) and `README.md`.
50
+
51
+ Documentation is automatically refreshed during the merge phase, so docs and code never drift apart. With always-current docs, both humans and AI agents can understand the system without reading every source file.
52
+
53
+ ## Quick Start
54
+
55
+ ### Install
56
+
57
+ <pre>
58
+ npm install -g <!-- {{data("cli.project.name")}} -->sdd-forge<!-- {{/data}} -->
59
+ </pre>
60
+
61
+ ### Setup
62
+
63
+ <pre>
64
+ <!-- {{data("cli.project.name")}} -->sdd-forge<!-- {{/data}} --> setup
65
+ </pre>
66
+
67
+ An interactive wizard configures your project type (preset) and AI agent.
68
+
69
+ ### Generate docs for an existing project
70
+
71
+ If you already have source code, generate documentation to get a complete picture of the system. Especially useful for onboarding onto legacy codebases.
72
+
73
+ <pre>
74
+ <!-- {{data("cli.project.name")}} -->sdd-forge<!-- {{/data}} --> docs build
75
+ </pre>
76
+
77
+ ### Develop with the SDD flow
78
+
79
+ **[Claude Code](https://docs.anthropic.com/en/docs/claude-code)** — run each phase via skills:
80
+
81
+ | Skill | Phase |
82
+ |---|---|
83
+ | `/sdd-forge.flow-plan` | plan (specification) |
84
+ | `/sdd-forge.flow-impl` | implement (coding + review) |
85
+ | `/sdd-forge.flow-finalize` | finalize (commit, merge, docs sync, cleanup) |
86
+
87
+ **[Codex CLI](https://github.com/openai/codex)** — invoke via `$` prefix:
88
+
89
+ | Command | Phase |
90
+ |---|---|
91
+ | `$sdd-forge flow prepare --title "..." --base main` | plan (create spec + branch) |
92
+ | `$sdd-forge flow run review` | implement (AI code review) |
93
+ | `$sdd-forge flow run finalize --mode all` | finalize (wrap-up) |
94
+
95
+ ## Commands
96
+
97
+ | Command | Description |
98
+ |---|---|
99
+ | `setup` | Register project and generate config |
100
+ | `docs build` | Run the full documentation pipeline |
101
+ | `docs readme` | Generate `README.md` from `docs/` |
102
+ | `docs review` | Check documentation quality |
103
+ | `flow prepare` | Create spec and branch |
104
+ | `flow get status` | Show flow progress |
105
+ | `presets` | List available presets |
106
+ | `help` | Show all commands |
107
+
108
+ See `sdd-forge help` or the [command reference](docs/cli_commands.md) for the full list.
109
+
110
+ ## Configuration
111
+
112
+ `setup` generates `.sdd-forge/config.json`:
113
+
114
+ ```jsonc
115
+ {
116
+ "type": "node-cli", // project type (preset name)
117
+ "lang": "en", // operating language
118
+ "agent": {
119
+ "default": "claude", // AI agent
120
+ "providers": { ... } // agent settings
121
+ }
122
+ }
39
123
  ```
40
- 1. sdd-forge spec --title "..." — 仕様ファイル作成
41
- 2. sdd-forge gate --spec ... — 仕様ゲート(未解決事項がなければ PASS)
42
- 3. 実装
43
- 4. sdd-forge forge --prompt "..." — ドキュメント自動更新
44
- 5. sdd-forge review — ドキュメントレビュー
45
- ```
46
124
 
47
- 詳細は [CLAUDE.md](CLAUDE.md) の「SDDフロー」セクションを参照してください。
125
+ See the [configuration reference](docs/configuration.md) for details.
126
+
127
+ ## Documentation
128
+
129
+ <!-- {{data("cli.docs.chapters", {header: "", labels: "Chapter|Summary", ignoreError: true})}} -->
130
+ | Chapter | Summary |
131
+ | --- | --- |
132
+ | [Tool Overview and Architecture](https://github.com/SpreadWorks/sdd-forge/blob/main/docs/overview.md) | This chapter introduces sdd-forge — a CLI tool for automated documentation generation and Spec-Driven Development (SD… |
133
+ | [Technology Stack and Operations](https://github.com/SpreadWorks/sdd-forge/blob/main/docs/stack_and_ops.md) | sdd-forge is implemented in JavaScript using Node.js (>=18.0.0) with the ES Modules system, and is distributed as a z… |
134
+ | [Project Structure](https://github.com/SpreadWorks/sdd-forge/blob/main/docs/project_structure.md) | This chapter describes the source layout of sdd-forge across three major directory groups: src/docs (documentation ge… |
135
+ | [CLI Command Reference](https://github.com/SpreadWorks/sdd-forge/blob/main/docs/cli_commands.md) | The CLI provides over 30 commands organized in a three-level dispatch hierarchy: the top-level sdd-forge entry point … |
136
+ | [Configuration and Customization](https://github.com/SpreadWorks/sdd-forge/blob/main/docs/configuration.md) | sdd-forge reads a single JSON configuration file placed inside your project's .sdd-forge/ directory and exposes a bro… |
137
+ | [Internal Design](https://github.com/SpreadWorks/sdd-forge/blob/main/docs/internal_design.md) | This chapter describes the internal architecture of sdd-forge, a layered CLI tool in which top-level dispatchers rout… |
138
+ <!-- {{/data}} -->
139
+
140
+ ## License
48
141
 
49
- <!-- MANUAL:START -->
50
- <!-- MANUAL:END -->
142
+ MIT
package/package.json CHANGED
@@ -1,13 +1,18 @@
1
1
  {
2
2
  "name": "sdd-forge",
3
- "version": "0.1.0-alpha.4",
3
+ "version": "0.1.0-alpha.549",
4
4
  "description": "Spec-Driven Development tooling for automated documentation generation",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "https://github.com/SpreadWorks/sdd-forge.git"
8
+ },
5
9
  "type": "module",
6
10
  "bin": {
7
11
  "sdd-forge": "./src/sdd-forge.js"
8
12
  },
9
13
  "files": [
10
- "src/"
14
+ "src/",
15
+ "!src/presets/*/tests/"
11
16
  ],
12
17
  "engines": {
13
18
  "node": ">=18.0.0"
@@ -20,7 +25,11 @@
20
25
  "technical-docs"
21
26
  ],
22
27
  "scripts": {
23
- "test": "find tests -name '*.test.js' | xargs node --test"
28
+ "test": "node tests/run.js",
29
+ "test:unit": "node tests/run.js --scope unit",
30
+ "test:e2e": "node tests/run.js --scope e2e",
31
+ "test:acceptance": "node tests/acceptance/run.js"
24
32
  },
25
- "license": "MIT"
33
+ "license": "MIT",
34
+ "packageManager": "pnpm@10.33.0+sha512.10568bb4a6afb58c9eb3630da90cc9516417abebd3fabbe6739f0ae795728da1491e9db5a544c76ad8eb7570f5c4bb3d6c637b2cb41bfdcdb47fa823c8649319"
26
35
  }