@arthai/agents 1.0.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 (390) hide show
  1. package/README.md +123 -0
  2. package/VERSION +1 -0
  3. package/agents/ai-consultant.md +999 -0
  4. package/agents/architect.md +174 -0
  5. package/agents/code-reviewer.md +115 -0
  6. package/agents/competitive-analyst.md +688 -0
  7. package/agents/content-strategist.md +607 -0
  8. package/agents/design-studio-create.md +304 -0
  9. package/agents/design-studio-critique.md +258 -0
  10. package/agents/design-studio-think.md +79 -0
  11. package/agents/domain-hunter.md +519 -0
  12. package/agents/explore-light.md +52 -0
  13. package/agents/frontend.md +261 -0
  14. package/agents/gtm-expert.md +811 -0
  15. package/agents/meeting-prep.md +318 -0
  16. package/agents/ops.md +149 -0
  17. package/agents/product-manager.md +563 -0
  18. package/agents/python-backend.md +286 -0
  19. package/agents/qa-baseline-updater.md +45 -0
  20. package/agents/qa-challenger.md +97 -0
  21. package/agents/qa-domain.md +145 -0
  22. package/agents/qa-e2e.md +184 -0
  23. package/agents/qa-test-promoter.md +97 -0
  24. package/agents/qa.md +226 -0
  25. package/agents/setup.md +134 -0
  26. package/agents/sre.md +165 -0
  27. package/agents/stakeholder-reporter.md +94 -0
  28. package/agents/user-researcher.md +602 -0
  29. package/bin/cli.js +322 -0
  30. package/bundles/canvas.json +16 -0
  31. package/bundles/compass.json +16 -0
  32. package/bundles/counsel.json +31 -0
  33. package/bundles/cruise.json +11 -0
  34. package/bundles/forge.json +26 -0
  35. package/bundles/prime.json +10 -0
  36. package/bundles/prism.json +23 -0
  37. package/bundles/scalpel.json +17 -0
  38. package/bundles/sentinel.json +19 -0
  39. package/bundles/shield.json +14 -0
  40. package/bundles/spark.json +19 -0
  41. package/compiler.sh +305 -0
  42. package/dist/plugins/canvas/.claude-plugin/plugin.json +6 -0
  43. package/dist/plugins/canvas/agents/design-studio-create.md +304 -0
  44. package/dist/plugins/canvas/agents/design-studio-critique.md +258 -0
  45. package/dist/plugins/canvas/agents/design-studio-think.md +79 -0
  46. package/dist/plugins/canvas/agents/frontend.md +261 -0
  47. package/dist/plugins/canvas/skills/planning/SKILL.md +436 -0
  48. package/dist/plugins/compass/.claude-plugin/plugin.json +6 -0
  49. package/dist/plugins/compass/agents/content-strategist.md +607 -0
  50. package/dist/plugins/compass/agents/gtm-expert.md +811 -0
  51. package/dist/plugins/compass/agents/product-manager.md +563 -0
  52. package/dist/plugins/compass/agents/user-researcher.md +602 -0
  53. package/dist/plugins/compass/skills/planning/SKILL.md +436 -0
  54. package/dist/plugins/counsel/.claude-plugin/plugin.json +6 -0
  55. package/dist/plugins/counsel/agents/ai-consultant.md +999 -0
  56. package/dist/plugins/counsel/agents/competitive-analyst.md +688 -0
  57. package/dist/plugins/counsel/agents/meeting-prep.md +318 -0
  58. package/dist/plugins/counsel/agents/stakeholder-reporter.md +94 -0
  59. package/dist/plugins/counsel/hooks/check-deliverable.sh +65 -0
  60. package/dist/plugins/counsel/hooks/ensure-client-dir.sh +59 -0
  61. package/dist/plugins/counsel/hooks/hooks.json +28 -0
  62. package/dist/plugins/counsel/skills/client-discovery/SKILL.md +266 -0
  63. package/dist/plugins/counsel/skills/consulting/SKILL.md +282 -0
  64. package/dist/plugins/counsel/skills/deliverable-builder/SKILL.md +928 -0
  65. package/dist/plugins/counsel/skills/engagement-tracker/SKILL.md +380 -0
  66. package/dist/plugins/counsel/skills/market-research/SKILL.md +300 -0
  67. package/dist/plugins/counsel/skills/opportunity-map/SKILL.md +307 -0
  68. package/dist/plugins/counsel/skills/pitch-generator/SKILL.md +378 -0
  69. package/dist/plugins/counsel/skills/roi-calculator/SKILL.md +469 -0
  70. package/dist/plugins/counsel/skills/share/SKILL.md +211 -0
  71. package/dist/plugins/counsel/skills/solution-architect/SKILL.md +566 -0
  72. package/dist/plugins/counsel/skills/templates/SKILL.md +194 -0
  73. package/dist/plugins/counsel/skills/welcome/SKILL.md +136 -0
  74. package/dist/plugins/counsel/skills/wizard/SKILL.md +411 -0
  75. package/dist/plugins/cruise/.claude-plugin/plugin.json +6 -0
  76. package/dist/plugins/cruise/skills/autopilot/SKILL.md +425 -0
  77. package/dist/plugins/forge/.claude-plugin/plugin.json +6 -0
  78. package/dist/plugins/forge/agents/architect.md +174 -0
  79. package/dist/plugins/forge/agents/code-reviewer.md +115 -0
  80. package/dist/plugins/forge/agents/frontend.md +261 -0
  81. package/dist/plugins/forge/agents/product-manager.md +563 -0
  82. package/dist/plugins/forge/agents/python-backend.md +286 -0
  83. package/dist/plugins/forge/agents/qa.md +226 -0
  84. package/dist/plugins/forge/hooks/hooks.json +28 -0
  85. package/dist/plugins/forge/hooks/post-test-summary.sh +115 -0
  86. package/dist/plugins/forge/hooks/triage-router.sh +740 -0
  87. package/dist/plugins/forge/skills/implement/SKILL.md +532 -0
  88. package/dist/plugins/forge/skills/planning/SKILL.md +436 -0
  89. package/dist/plugins/forge/skills/pr/SKILL.md +275 -0
  90. package/dist/plugins/forge/skills/precheck/SKILL.md +159 -0
  91. package/dist/plugins/forge/skills/qa/SKILL.md +127 -0
  92. package/dist/plugins/forge/skills/review-pr/SKILL.md +367 -0
  93. package/dist/plugins/prime/.claude-plugin/plugin.json +6 -0
  94. package/dist/plugins/prime/agents/ai-consultant.md +999 -0
  95. package/dist/plugins/prime/agents/architect.md +174 -0
  96. package/dist/plugins/prime/agents/code-reviewer.md +115 -0
  97. package/dist/plugins/prime/agents/competitive-analyst.md +688 -0
  98. package/dist/plugins/prime/agents/content-strategist.md +607 -0
  99. package/dist/plugins/prime/agents/design-studio-create.md +304 -0
  100. package/dist/plugins/prime/agents/design-studio-critique.md +258 -0
  101. package/dist/plugins/prime/agents/design-studio-think.md +79 -0
  102. package/dist/plugins/prime/agents/explore-light.md +52 -0
  103. package/dist/plugins/prime/agents/frontend.md +261 -0
  104. package/dist/plugins/prime/agents/gtm-expert.md +811 -0
  105. package/dist/plugins/prime/agents/meeting-prep.md +318 -0
  106. package/dist/plugins/prime/agents/ops.md +149 -0
  107. package/dist/plugins/prime/agents/product-manager.md +563 -0
  108. package/dist/plugins/prime/agents/python-backend.md +286 -0
  109. package/dist/plugins/prime/agents/qa-baseline-updater.md +45 -0
  110. package/dist/plugins/prime/agents/qa-challenger.md +97 -0
  111. package/dist/plugins/prime/agents/qa-domain.md +145 -0
  112. package/dist/plugins/prime/agents/qa-e2e.md +184 -0
  113. package/dist/plugins/prime/agents/qa-test-promoter.md +97 -0
  114. package/dist/plugins/prime/agents/qa.md +226 -0
  115. package/dist/plugins/prime/agents/setup.md +134 -0
  116. package/dist/plugins/prime/agents/sre.md +165 -0
  117. package/dist/plugins/prime/agents/stakeholder-reporter.md +94 -0
  118. package/dist/plugins/prime/agents/user-researcher.md +602 -0
  119. package/dist/plugins/prime/hooks/check-deliverable.sh +65 -0
  120. package/dist/plugins/prime/hooks/ensure-client-dir.sh +59 -0
  121. package/dist/plugins/prime/hooks/hooks.json +184 -0
  122. package/dist/plugins/prime/hooks/post-deploy-health.sh +83 -0
  123. package/dist/plugins/prime/hooks/post-diff-test-compare.sh +125 -0
  124. package/dist/plugins/prime/hooks/post-edit-lint.sh +92 -0
  125. package/dist/plugins/prime/hooks/post-git-state.sh +54 -0
  126. package/dist/plugins/prime/hooks/post-merge-cleanup.sh +101 -0
  127. package/dist/plugins/prime/hooks/post-test-summary.sh +115 -0
  128. package/dist/plugins/prime/hooks/pre-bash-guard.sh +142 -0
  129. package/dist/plugins/prime/hooks/pre-edit-guard.sh +121 -0
  130. package/dist/plugins/prime/hooks/pre-task-context.sh +113 -0
  131. package/dist/plugins/prime/hooks/session-bootstrap.sh +379 -0
  132. package/dist/plugins/prime/hooks/session-end.sh +107 -0
  133. package/dist/plugins/prime/hooks/session-summary.sh +97 -0
  134. package/dist/plugins/prime/hooks/sync-agents.sh +269 -0
  135. package/dist/plugins/prime/hooks/triage-router.sh +740 -0
  136. package/dist/plugins/prime/skills/arth/SKILL.md +165 -0
  137. package/dist/plugins/prime/skills/autopilot/SKILL.md +425 -0
  138. package/dist/plugins/prime/skills/calibrate/SKILL.md +1807 -0
  139. package/dist/plugins/prime/skills/ci-fix/SKILL.md +293 -0
  140. package/dist/plugins/prime/skills/client-discovery/SKILL.md +266 -0
  141. package/dist/plugins/prime/skills/consulting/SKILL.md +282 -0
  142. package/dist/plugins/prime/skills/custom-domain/SKILL.md +261 -0
  143. package/dist/plugins/prime/skills/deliverable-builder/SKILL.md +928 -0
  144. package/dist/plugins/prime/skills/discord-ops/SKILL.md +125 -0
  145. package/dist/plugins/prime/skills/engagement-tracker/SKILL.md +380 -0
  146. package/dist/plugins/prime/skills/explore.md +43 -0
  147. package/dist/plugins/prime/skills/fix/SKILL.md +1058 -0
  148. package/dist/plugins/prime/skills/implement/SKILL.md +532 -0
  149. package/dist/plugins/prime/skills/incident/SKILL.md +910 -0
  150. package/dist/plugins/prime/skills/issue/SKILL.md +134 -0
  151. package/dist/plugins/prime/skills/market-research/SKILL.md +300 -0
  152. package/dist/plugins/prime/skills/onboard/SKILL.md +344 -0
  153. package/dist/plugins/prime/skills/opportunity-map/SKILL.md +307 -0
  154. package/dist/plugins/prime/skills/pitch-generator/SKILL.md +378 -0
  155. package/dist/plugins/prime/skills/planning/SKILL.md +436 -0
  156. package/dist/plugins/prime/skills/pr/SKILL.md +275 -0
  157. package/dist/plugins/prime/skills/precheck/SKILL.md +159 -0
  158. package/dist/plugins/prime/skills/qa/SKILL.md +127 -0
  159. package/dist/plugins/prime/skills/qa-incident/SKILL.md +54 -0
  160. package/dist/plugins/prime/skills/qa-learn/SKILL.md +47 -0
  161. package/dist/plugins/prime/skills/restart/SKILL.md +70 -0
  162. package/dist/plugins/prime/skills/review-pr/SKILL.md +367 -0
  163. package/dist/plugins/prime/skills/roi-calculator/SKILL.md +469 -0
  164. package/dist/plugins/prime/skills/scan/SKILL.md +232 -0
  165. package/dist/plugins/prime/skills/setup/SKILL.md +691 -0
  166. package/dist/plugins/prime/skills/share/SKILL.md +211 -0
  167. package/dist/plugins/prime/skills/solution-architect/SKILL.md +566 -0
  168. package/dist/plugins/prime/skills/sre/SKILL.md +362 -0
  169. package/dist/plugins/prime/skills/sync/SKILL.md +188 -0
  170. package/dist/plugins/prime/skills/templates/SKILL.md +194 -0
  171. package/dist/plugins/prime/skills/welcome/SKILL.md +136 -0
  172. package/dist/plugins/prime/skills/wizard/SKILL.md +411 -0
  173. package/dist/plugins/prism/.claude-plugin/plugin.json +6 -0
  174. package/dist/plugins/prism/agents/qa-baseline-updater.md +45 -0
  175. package/dist/plugins/prism/agents/qa-challenger.md +97 -0
  176. package/dist/plugins/prism/agents/qa-domain.md +145 -0
  177. package/dist/plugins/prism/agents/qa-e2e.md +184 -0
  178. package/dist/plugins/prism/agents/qa-test-promoter.md +97 -0
  179. package/dist/plugins/prism/agents/qa.md +226 -0
  180. package/dist/plugins/prism/hooks/hooks.json +26 -0
  181. package/dist/plugins/prism/hooks/post-diff-test-compare.sh +125 -0
  182. package/dist/plugins/prism/hooks/post-test-summary.sh +115 -0
  183. package/dist/plugins/prism/skills/qa/SKILL.md +127 -0
  184. package/dist/plugins/prism/skills/qa-incident/SKILL.md +54 -0
  185. package/dist/plugins/prism/skills/qa-learn/SKILL.md +47 -0
  186. package/dist/plugins/scalpel/.claude-plugin/plugin.json +6 -0
  187. package/dist/plugins/scalpel/agents/code-reviewer.md +115 -0
  188. package/dist/plugins/scalpel/hooks/hooks.json +26 -0
  189. package/dist/plugins/scalpel/hooks/pre-edit-guard.sh +121 -0
  190. package/dist/plugins/scalpel/skills/ci-fix/SKILL.md +293 -0
  191. package/dist/plugins/scalpel/skills/fix/SKILL.md +1058 -0
  192. package/dist/plugins/scalpel/skills/issue/SKILL.md +134 -0
  193. package/dist/plugins/sentinel/.claude-plugin/plugin.json +6 -0
  194. package/dist/plugins/sentinel/agents/ops.md +149 -0
  195. package/dist/plugins/sentinel/agents/sre.md +165 -0
  196. package/dist/plugins/sentinel/hooks/hooks.json +26 -0
  197. package/dist/plugins/sentinel/hooks/post-deploy-health.sh +83 -0
  198. package/dist/plugins/sentinel/hooks/post-git-state.sh +54 -0
  199. package/dist/plugins/sentinel/skills/incident/SKILL.md +910 -0
  200. package/dist/plugins/sentinel/skills/restart/SKILL.md +70 -0
  201. package/dist/plugins/sentinel/skills/sre/SKILL.md +362 -0
  202. package/dist/plugins/shield/.claude-plugin/plugin.json +6 -0
  203. package/dist/plugins/shield/hooks/hooks.json +60 -0
  204. package/dist/plugins/shield/hooks/pre-bash-guard.sh +142 -0
  205. package/dist/plugins/shield/hooks/pre-edit-guard.sh +121 -0
  206. package/dist/plugins/shield/hooks/session-bootstrap.sh +379 -0
  207. package/dist/plugins/shield/hooks/triage-router.sh +740 -0
  208. package/dist/plugins/spark/.claude-plugin/plugin.json +6 -0
  209. package/dist/plugins/spark/agents/explore-light.md +52 -0
  210. package/dist/plugins/spark/agents/setup.md +134 -0
  211. package/dist/plugins/spark/hooks/hooks.json +16 -0
  212. package/dist/plugins/spark/hooks/session-bootstrap.sh +379 -0
  213. package/dist/plugins/spark/skills/calibrate/SKILL.md +1807 -0
  214. package/dist/plugins/spark/skills/onboard/SKILL.md +344 -0
  215. package/dist/plugins/spark/skills/scan/SKILL.md +232 -0
  216. package/dist/plugins/spark/skills/setup/SKILL.md +691 -0
  217. package/hook-defs.json +104 -0
  218. package/hooks/check-deliverable.sh +65 -0
  219. package/hooks/ensure-client-dir.sh +59 -0
  220. package/hooks/hooks.json +16 -0
  221. package/hooks/post-deploy-health.sh +83 -0
  222. package/hooks/post-diff-test-compare.sh +125 -0
  223. package/hooks/post-edit-lint.sh +92 -0
  224. package/hooks/post-git-state.sh +54 -0
  225. package/hooks/post-merge-cleanup.sh +101 -0
  226. package/hooks/post-test-summary.sh +115 -0
  227. package/hooks/pre-bash-guard.sh +142 -0
  228. package/hooks/pre-edit-guard.sh +121 -0
  229. package/hooks/pre-task-context.sh +113 -0
  230. package/hooks/session-bootstrap.sh +379 -0
  231. package/hooks/session-end.sh +107 -0
  232. package/hooks/session-start.sh +46 -0
  233. package/hooks/session-summary.sh +97 -0
  234. package/hooks/sync-agents.sh +269 -0
  235. package/hooks/triage-router.sh +740 -0
  236. package/install.sh +3185 -0
  237. package/package.json +40 -0
  238. package/portable.manifest +112 -0
  239. package/skills/arth/SKILL.md +165 -0
  240. package/skills/autopilot/SKILL.md +425 -0
  241. package/skills/calibrate/SKILL.md +1807 -0
  242. package/skills/ci-fix/SKILL.md +293 -0
  243. package/skills/client-discovery/SKILL.md +266 -0
  244. package/skills/consulting/SKILL.md +282 -0
  245. package/skills/continue/SKILL.md +174 -0
  246. package/skills/custom-domain/SKILL.md +261 -0
  247. package/skills/deliverable-builder/SKILL.md +928 -0
  248. package/skills/discord-ops/SKILL.md +125 -0
  249. package/skills/engagement-tracker/SKILL.md +380 -0
  250. package/skills/explore.md +43 -0
  251. package/skills/fix/SKILL.md +1058 -0
  252. package/skills/implement/SKILL.md +532 -0
  253. package/skills/incident/SKILL.md +910 -0
  254. package/skills/issue/SKILL.md +134 -0
  255. package/skills/market-research/SKILL.md +300 -0
  256. package/skills/onboard/SKILL.md +344 -0
  257. package/skills/opportunity-map/SKILL.md +307 -0
  258. package/skills/pitch-generator/SKILL.md +378 -0
  259. package/skills/planning/SKILL.md +436 -0
  260. package/skills/pr/SKILL.md +275 -0
  261. package/skills/precheck/SKILL.md +159 -0
  262. package/skills/qa/SKILL.md +127 -0
  263. package/skills/qa-incident/SKILL.md +54 -0
  264. package/skills/qa-learn/SKILL.md +47 -0
  265. package/skills/railway/central-station/SKILL.md +226 -0
  266. package/skills/railway/central-station/references/environment-config.md +183 -0
  267. package/skills/railway/central-station/references/monorepo.md +216 -0
  268. package/skills/railway/central-station/references/railpack.md +257 -0
  269. package/skills/railway/central-station/references/variables.md +170 -0
  270. package/skills/railway/database/SKILL.md +284 -0
  271. package/skills/railway/database/references/environment-config.md +183 -0
  272. package/skills/railway/database/references/monorepo.md +216 -0
  273. package/skills/railway/database/references/railpack.md +257 -0
  274. package/skills/railway/database/references/variables.md +170 -0
  275. package/skills/railway/database/scripts/railway-api.sh +41 -0
  276. package/skills/railway/deploy/SKILL.md +128 -0
  277. package/skills/railway/deploy/references/environment-config.md +183 -0
  278. package/skills/railway/deploy/references/monorepo.md +216 -0
  279. package/skills/railway/deploy/references/railpack.md +257 -0
  280. package/skills/railway/deploy/references/variables.md +170 -0
  281. package/skills/railway/deployment/SKILL.md +222 -0
  282. package/skills/railway/deployment/references/environment-config.md +183 -0
  283. package/skills/railway/deployment/references/monorepo.md +216 -0
  284. package/skills/railway/deployment/references/railpack.md +257 -0
  285. package/skills/railway/deployment/references/variables.md +170 -0
  286. package/skills/railway/domain/SKILL.md +137 -0
  287. package/skills/railway/domain/references/environment-config.md +183 -0
  288. package/skills/railway/domain/references/monorepo.md +216 -0
  289. package/skills/railway/domain/references/railpack.md +257 -0
  290. package/skills/railway/domain/references/variables.md +170 -0
  291. package/skills/railway/environment/SKILL.md +266 -0
  292. package/skills/railway/environment/references/environment-config.md +183 -0
  293. package/skills/railway/environment/references/monorepo.md +216 -0
  294. package/skills/railway/environment/references/railpack.md +257 -0
  295. package/skills/railway/environment/references/variables.md +170 -0
  296. package/skills/railway/metrics/SKILL.md +211 -0
  297. package/skills/railway/metrics/references/environment-config.md +183 -0
  298. package/skills/railway/metrics/references/monorepo.md +216 -0
  299. package/skills/railway/metrics/references/railpack.md +257 -0
  300. package/skills/railway/metrics/references/variables.md +170 -0
  301. package/skills/railway/metrics/scripts/railway-api.sh +41 -0
  302. package/skills/railway/new/SKILL.md +489 -0
  303. package/skills/railway/new/references/environment-config.md +183 -0
  304. package/skills/railway/new/references/monorepo.md +216 -0
  305. package/skills/railway/new/references/railpack.md +257 -0
  306. package/skills/railway/new/references/variables.md +170 -0
  307. package/skills/railway/projects/SKILL.md +142 -0
  308. package/skills/railway/projects/references/environment-config.md +183 -0
  309. package/skills/railway/projects/references/monorepo.md +216 -0
  310. package/skills/railway/projects/references/railpack.md +257 -0
  311. package/skills/railway/projects/references/variables.md +170 -0
  312. package/skills/railway/projects/scripts/railway-api.sh +41 -0
  313. package/skills/railway/railway-docs/SKILL.md +47 -0
  314. package/skills/railway/railway-docs/references/environment-config.md +183 -0
  315. package/skills/railway/railway-docs/references/monorepo.md +216 -0
  316. package/skills/railway/railway-docs/references/railpack.md +257 -0
  317. package/skills/railway/railway-docs/references/variables.md +170 -0
  318. package/skills/railway/service/SKILL.md +249 -0
  319. package/skills/railway/service/references/environment-config.md +183 -0
  320. package/skills/railway/service/references/monorepo.md +216 -0
  321. package/skills/railway/service/references/railpack.md +257 -0
  322. package/skills/railway/service/references/variables.md +170 -0
  323. package/skills/railway/service/scripts/railway-api.sh +41 -0
  324. package/skills/railway/status/SKILL.md +91 -0
  325. package/skills/railway/status/references/environment-config.md +183 -0
  326. package/skills/railway/status/references/monorepo.md +216 -0
  327. package/skills/railway/status/references/railpack.md +257 -0
  328. package/skills/railway/status/references/variables.md +170 -0
  329. package/skills/railway/templates/SKILL.md +275 -0
  330. package/skills/railway/templates/references/environment-config.md +183 -0
  331. package/skills/railway/templates/references/monorepo.md +216 -0
  332. package/skills/railway/templates/references/railpack.md +257 -0
  333. package/skills/railway/templates/references/variables.md +170 -0
  334. package/skills/railway/templates/scripts/railway-api.sh +41 -0
  335. package/skills/restart/SKILL.md +70 -0
  336. package/skills/review-pr/SKILL.md +367 -0
  337. package/skills/roi-calculator/SKILL.md +469 -0
  338. package/skills/scan/SKILL.md +232 -0
  339. package/skills/setup/SKILL.md +691 -0
  340. package/skills/share/SKILL.md +211 -0
  341. package/skills/solution-architect/SKILL.md +566 -0
  342. package/skills/sre/SKILL.md +362 -0
  343. package/skills/superpowers/brainstorming/SKILL.md +96 -0
  344. package/skills/superpowers/dispatching-parallel-agents/SKILL.md +180 -0
  345. package/skills/superpowers/executing-plans/SKILL.md +84 -0
  346. package/skills/superpowers/finishing-a-development-branch/SKILL.md +200 -0
  347. package/skills/superpowers/receiving-code-review/SKILL.md +213 -0
  348. package/skills/superpowers/requesting-code-review/SKILL.md +105 -0
  349. package/skills/superpowers/requesting-code-review/code-reviewer.md +146 -0
  350. package/skills/superpowers/subagent-driven-development/SKILL.md +242 -0
  351. package/skills/superpowers/subagent-driven-development/code-quality-reviewer-prompt.md +20 -0
  352. package/skills/superpowers/subagent-driven-development/implementer-prompt.md +78 -0
  353. package/skills/superpowers/subagent-driven-development/spec-reviewer-prompt.md +61 -0
  354. package/skills/superpowers/systematic-debugging/CREATION-LOG.md +119 -0
  355. package/skills/superpowers/systematic-debugging/SKILL.md +296 -0
  356. package/skills/superpowers/systematic-debugging/condition-based-waiting-example.ts +158 -0
  357. package/skills/superpowers/systematic-debugging/condition-based-waiting.md +115 -0
  358. package/skills/superpowers/systematic-debugging/defense-in-depth.md +122 -0
  359. package/skills/superpowers/systematic-debugging/find-polluter.sh +63 -0
  360. package/skills/superpowers/systematic-debugging/root-cause-tracing.md +169 -0
  361. package/skills/superpowers/systematic-debugging/test-academic.md +14 -0
  362. package/skills/superpowers/systematic-debugging/test-pressure-1.md +58 -0
  363. package/skills/superpowers/systematic-debugging/test-pressure-2.md +68 -0
  364. package/skills/superpowers/systematic-debugging/test-pressure-3.md +69 -0
  365. package/skills/superpowers/test-driven-development/SKILL.md +371 -0
  366. package/skills/superpowers/test-driven-development/testing-anti-patterns.md +299 -0
  367. package/skills/superpowers/using-git-worktrees/SKILL.md +218 -0
  368. package/skills/superpowers/using-superpowers/SKILL.md +95 -0
  369. package/skills/superpowers/verification-before-completion/SKILL.md +139 -0
  370. package/skills/superpowers/writing-plans/SKILL.md +116 -0
  371. package/skills/superpowers/writing-skills/SKILL.md +655 -0
  372. package/skills/superpowers/writing-skills/anthropic-best-practices.md +1150 -0
  373. package/skills/superpowers/writing-skills/examples/CLAUDE_MD_TESTING.md +189 -0
  374. package/skills/superpowers/writing-skills/graphviz-conventions.dot +172 -0
  375. package/skills/superpowers/writing-skills/persuasion-principles.md +187 -0
  376. package/skills/superpowers/writing-skills/render-graphs.js +168 -0
  377. package/skills/superpowers/writing-skills/testing-skills-with-subagents.md +384 -0
  378. package/skills/sync/SKILL.md +188 -0
  379. package/skills/templates/SKILL.md +194 -0
  380. package/skills/welcome/SKILL.md +136 -0
  381. package/skills/wizard/SKILL.md +411 -0
  382. package/templates/CLAUDE.md.managed-block +123 -0
  383. package/templates/CLAUDE.md.template +111 -0
  384. package/templates/consulting/engagement-tracker-template.md +181 -0
  385. package/templates/consulting/executive-summary-template.md +83 -0
  386. package/templates/consulting/maturity-assessment-template.md +182 -0
  387. package/templates/consulting/proposal-template.md +209 -0
  388. package/templates/consulting/roi-model-template.md +139 -0
  389. package/templates/consulting/solution-architecture-template.md +313 -0
  390. package/templates/settings.json +130 -0
@@ -0,0 +1,183 @@
1
+ # Environment Config Reference
2
+
3
+ The `EnvironmentConfig` object is used to configure services, volumes, and shared variables in Railway.
4
+
5
+ ## Structure
6
+
7
+ ```json
8
+ {
9
+ "services": {
10
+ "<serviceId>": {
11
+ "source": { ... },
12
+ "build": { ... },
13
+ "deploy": { ... },
14
+ "variables": { ... },
15
+ "networking": { ... }
16
+ }
17
+ },
18
+ "sharedVariables": { ... },
19
+ "volumes": { ... },
20
+ "buckets": { ... }
21
+ }
22
+ ```
23
+
24
+ Only include fields being changed. The patch is merged with existing config.
25
+
26
+ Apply changes via CLI: `echo '<json>' | railway environment edit --json`
27
+
28
+ ## Service Config
29
+
30
+ ### Source
31
+ | Field | Type | Description |
32
+ |-------|------|-------------|
33
+ | `image` | string | Docker image (e.g., `nginx:latest`) |
34
+ | `repo` | string | Git repository URL |
35
+ | `branch` | string | Git branch to deploy |
36
+ | `commitSha` | string | Specific commit SHA |
37
+ | `rootDirectory` | string | Root directory (monorepos) |
38
+ | `checkSuites` | boolean | Wait for GitHub check suites |
39
+ | `autoUpdates.type` | disabled \| patch \| minor | Auto-update policy for Docker images |
40
+
41
+ ### Build
42
+ | Field | Type | Description |
43
+ |-------|------|-------------|
44
+ | `builder` | NIXPACKS \| DOCKERFILE \| RAILPACK | Build system |
45
+ | `buildCommand` | string | Command for Nixpacks builds |
46
+ | `dockerfilePath` | string | Path to Dockerfile |
47
+ | `watchPatterns` | string[] | Patterns to trigger deploys |
48
+ | `nixpacksConfigPath` | string | Path to nixpacks config |
49
+
50
+ ### Deploy
51
+ | Field | Type | Description |
52
+ |-------|------|-------------|
53
+ | `startCommand` | string | Container start command |
54
+ | `multiRegionConfig` | object | Region → replica config. See [Multi-Region Config](#multi-region-config). |
55
+ | `healthcheckPath` | string | Health check endpoint |
56
+ | `healthcheckTimeout` | number | Seconds to wait for health |
57
+ | `restartPolicyType` | ON_FAILURE \| ALWAYS \| NEVER | Restart behavior |
58
+ | `restartPolicyMaxRetries` | number | Max restart attempts |
59
+ | `cronSchedule` | string | Cron schedule for cron jobs |
60
+ | `sleepApplication` | boolean | Sleep when inactive |
61
+
62
+ ### Variables
63
+ | Field | Type | Description |
64
+ |-------|------|-------------|
65
+ | `value` | string | Variable value |
66
+ | `isOptional` | boolean | Allow empty value |
67
+
68
+ Set to `null` to delete a variable.
69
+
70
+ For variable references, see [variables.md](variables.md).
71
+
72
+ ### Lifecycle
73
+ | Field | Type | Description |
74
+ |-------|------|-------------|
75
+ | `isDeleted` | boolean | Mark for deletion (requires ADMIN) |
76
+ | `isCreated` | boolean | Mark as newly created |
77
+
78
+ ## Multi-Region Config
79
+
80
+ Controls replica count per region. Structure: region name → `{ numReplicas }` or `null` to remove.
81
+
82
+ ```json
83
+ {
84
+ "multiRegionConfig": {
85
+ "us-west2": { "numReplicas": 3 },
86
+ "europe-west4-drams3a": { "numReplicas": 2 }
87
+ }
88
+ }
89
+ ```
90
+
91
+ ### Available Regions
92
+
93
+ | Name | Location | Aliases |
94
+ |------|----------|---------|
95
+ | `us-west2` | US West (California) | "us west", "california" |
96
+ | `us-east4-eqdc4a` | US East (Virginia) | "us east", "virginia" |
97
+ | `europe-west4-drams3a` | EU West (Amsterdam) | "europe", "eu", "amsterdam" |
98
+ | `asia-southeast1-eqsg3a` | Southeast Asia (Singapore) | "asia", "singapore" |
99
+
100
+ ### Interpreting User Requests
101
+
102
+ - "add 3 replicas to europe" → `{ "europe-west4-drams3a": { "numReplicas": 3 } }`
103
+ - "add a replica to all regions" → set `numReplicas: 1` for all 4 regions
104
+ - "remove from asia" → `{ "asia-southeast1-eqsg3a": null }`
105
+ - "increase replicas to 5" (no region specified) → query current config first, update existing region(s)
106
+
107
+ **Important:** When user doesn't specify a region, query the current `multiRegionConfig` and modify the existing region(s). Don't assume a default region.
108
+
109
+ ## Common Operations
110
+
111
+ ### Set Build Command
112
+ ```json
113
+ { "services": { "<serviceId>": { "build": { "buildCommand": "npm run build" } } } }
114
+ ```
115
+
116
+ ### Set Start Command
117
+ ```json
118
+ { "services": { "<serviceId>": { "deploy": { "startCommand": "node server.js" } } } }
119
+ ```
120
+
121
+ ### Set Replicas
122
+ ```json
123
+ { "services": { "<serviceId>": { "deploy": { "multiRegionConfig": { "us-west2": { "numReplicas": 3 } } } } } }
124
+ ```
125
+
126
+ ### Add Variables
127
+ ```json
128
+ { "services": { "<serviceId>": { "variables": { "API_KEY": { "value": "xxx" } } } } }
129
+ ```
130
+
131
+ ### Delete Variable
132
+ ```json
133
+ { "services": { "<serviceId>": { "variables": { "OLD_VAR": null } } } }
134
+ ```
135
+ Via CLI: `echo '{"services":{"<serviceId>":{"variables":{"OLD_VAR":null}}}}' | railway environment edit --json`
136
+
137
+ ### Add Shared Variable
138
+ ```json
139
+ { "sharedVariables": { "DATABASE_URL": { "value": "postgres://..." } } }
140
+ ```
141
+
142
+ ### Change Docker Image
143
+ ```json
144
+ { "services": { "<serviceId>": { "source": { "image": "nginx:latest" } } } }
145
+ ```
146
+
147
+ ### Connect GitHub Repo
148
+ ```json
149
+ { "services": { "<serviceId>": { "source": { "repo": "owner/repo", "branch": "main" } } } }
150
+ ```
151
+
152
+ ### Change Git Branch
153
+ ```json
154
+ { "services": { "<serviceId>": { "source": { "branch": "develop" } } } }
155
+ ```
156
+
157
+ ### Set Health Check
158
+ ```json
159
+ { "services": { "<serviceId>": { "deploy": { "healthcheckPath": "/health", "healthcheckTimeout": 30 } } } }
160
+ ```
161
+
162
+ ### Change Builder
163
+ ```json
164
+ { "services": { "<serviceId>": { "build": { "builder": "DOCKERFILE", "dockerfilePath": "./Dockerfile" } } } }
165
+ ```
166
+
167
+ ### Delete Service
168
+ ```json
169
+ { "services": { "<serviceId>": { "isDeleted": true } } }
170
+ ```
171
+ Via CLI: `echo '{"services":{"<serviceId>":{"isDeleted":true}}}' | railway environment edit --json`
172
+
173
+ ### Delete Volume
174
+ ```json
175
+ { "volumes": { "<volumeId>": { "isDeleted": true } } }
176
+ ```
177
+
178
+ ### New Service Instance
179
+ ```json
180
+ { "services": { "<serviceId>": { "isCreated": true, "source": { "image": "nginx" } } } }
181
+ ```
182
+
183
+ **Note:** `isCreated: true` is required for new service instances.
@@ -0,0 +1,216 @@
1
+ # Monorepo Reference
2
+
3
+ Railway supports two types of monorepo deployments with different configuration approaches.
4
+
5
+ ## Key Decision: Root Directory vs Custom Commands
6
+
7
+ | Approach | When to Use | What Happens |
8
+ |----------|-------------|--------------|
9
+ | **Root Directory** | Isolated apps (no shared code) | Only that directory's code is available |
10
+ | **Custom Commands** | Shared monorepos (TypeScript, workspaces) | Full repo available, filter at build/start |
11
+
12
+ **Critical:** Setting root directory means code outside that directory is NOT available during build. For monorepos with shared packages, use custom commands instead.
13
+
14
+ ## Isolated Monorepo
15
+
16
+ Apps are completely independent - no shared code between directories.
17
+
18
+ ```
19
+ ├── frontend/ # React app (standalone)
20
+ │ ├── package.json
21
+ │ └── src/
22
+ └── backend/ # Python API (standalone)
23
+ ├── requirements.txt
24
+ └── main.py
25
+ ```
26
+
27
+ ### Configuration
28
+
29
+ Set **Root Directory** for each service:
30
+ - Frontend service: `/frontend`
31
+ - Backend service: `/backend`
32
+
33
+ Each service only sees its own directory's code.
34
+
35
+ ### When to Use
36
+
37
+ - Frontend and backend in different languages
38
+ - No shared packages or dependencies
39
+ - Each app has its own package.json/requirements.txt
40
+ - Apps don't import from sibling directories
41
+
42
+ ## Shared Monorepo
43
+
44
+ Apps share code from common packages or the root.
45
+
46
+ ```
47
+ ├── package.json # Root workspace config
48
+ ├── packages/
49
+ │ ├── frontend/
50
+ │ │ ├── package.json
51
+ │ │ └── src/
52
+ │ ├── backend/
53
+ │ │ ├── package.json
54
+ │ │ └── src/
55
+ │ └── shared/ # Shared utilities
56
+ │ ├── package.json
57
+ │ └── src/
58
+ └── tsconfig.json # Shared TS config
59
+ ```
60
+
61
+ ### Configuration
62
+
63
+ Do NOT set root directory. Instead, use custom build and start commands:
64
+
65
+ **pnpm:**
66
+ ```
67
+ Build: pnpm --filter backend build
68
+ Start: pnpm --filter backend start
69
+ ```
70
+
71
+ **npm workspaces:**
72
+ ```
73
+ Build: npm run build --workspace=packages/backend
74
+ Start: npm run start --workspace=packages/backend
75
+ ```
76
+
77
+ **yarn workspaces:**
78
+ ```
79
+ Build: yarn workspace backend build
80
+ Start: yarn workspace backend start
81
+ ```
82
+
83
+ **bun:**
84
+ ```
85
+ Build: bun run --filter backend build
86
+ Start: bun run --filter backend start
87
+ ```
88
+
89
+ **Turborepo:**
90
+ ```
91
+ Build: turbo run build --filter=backend
92
+ Start: turbo run start --filter=backend
93
+ ```
94
+
95
+ ### When to Use
96
+
97
+ - TypeScript/JavaScript monorepo with workspaces
98
+ - Packages import from sibling packages (`@myapp/shared`)
99
+ - Shared tsconfig.json, eslint config at root
100
+ - Using pnpm, yarn workspaces, npm workspaces, or bun
101
+ - Using Turborepo, Nx, or similar build tools
102
+
103
+ ## Watch Paths
104
+
105
+ Prevent changes in one package from triggering rebuilds of other services.
106
+
107
+ Set watch paths for each service to only rebuild when relevant files change:
108
+
109
+ | Service | Watch Paths |
110
+ |---------|-------------|
111
+ | frontend | `/packages/frontend/**`, `/packages/shared/**` |
112
+ | backend | `/packages/backend/**`, `/packages/shared/**` |
113
+
114
+ Include shared packages in watch paths if the service depends on them.
115
+
116
+ ### Pattern Format
117
+
118
+ Uses gitignore-style patterns:
119
+ ```
120
+ /packages/backend/** # All files in backend
121
+ /packages/shared/** # All files in shared (if depends on it)
122
+ !**/*.md # Ignore markdown changes
123
+ ```
124
+
125
+ ## Configuration Examples
126
+
127
+ ### Isolated: React + Python API
128
+
129
+ Two separate apps, no shared code.
130
+
131
+ **Frontend service:**
132
+ - Root Directory: `/frontend`
133
+ - No custom commands needed (Railpack auto-detects)
134
+
135
+ **Backend service:**
136
+ - Root Directory: `/backend`
137
+ - No custom commands needed
138
+
139
+ ### Shared: TypeScript Monorepo with pnpm
140
+
141
+ Frontend and backend share a `@myapp/shared` package.
142
+
143
+ **Frontend service:**
144
+ - Root Directory: (leave empty)
145
+ - Build Command: `pnpm --filter frontend build`
146
+ - Start Command: `pnpm --filter frontend start`
147
+ - Watch Paths: `/packages/frontend/**`, `/packages/shared/**`
148
+
149
+ **Backend service:**
150
+ - Root Directory: (leave empty)
151
+ - Build Command: `pnpm --filter backend build`
152
+ - Start Command: `pnpm --filter backend start`
153
+ - Watch Paths: `/packages/backend/**`, `/packages/shared/**`
154
+
155
+ ### Shared: Turborepo
156
+
157
+ **Frontend service:**
158
+ - Root Directory: (leave empty)
159
+ - Build Command: `turbo run build --filter=frontend`
160
+ - Start Command: `turbo run start --filter=frontend`
161
+ - Watch Paths: `/apps/frontend/**`, `/packages/**`
162
+
163
+ **Backend service:**
164
+ - Root Directory: (leave empty)
165
+ - Build Command: `turbo run build --filter=backend`
166
+ - Start Command: `turbo run start --filter=backend`
167
+ - Watch Paths: `/apps/backend/**`, `/packages/**`
168
+
169
+ ## Common Mistakes
170
+
171
+ ### Using Root Directory for Shared Monorepos
172
+
173
+ **Wrong:**
174
+ ```
175
+ Root Directory: /packages/backend
176
+ ```
177
+ This breaks builds because `@myapp/shared` isn't available.
178
+
179
+ **Right:**
180
+ ```
181
+ Root Directory: (empty)
182
+ Build Command: pnpm --filter backend build
183
+ Start Command: pnpm --filter backend start
184
+ ```
185
+
186
+ ### Forgetting Watch Paths
187
+
188
+ Without watch paths, changing `frontend/` triggers a rebuild of `backend/`.
189
+
190
+ Always set watch paths for monorepos to avoid unnecessary builds.
191
+
192
+ ### Missing Shared Packages in Watch Paths
193
+
194
+ If `backend` imports from `shared`, include both in watch paths:
195
+ ```
196
+ /packages/backend/**
197
+ /packages/shared/**
198
+ ```
199
+
200
+ Otherwise changes to `shared` won't trigger backend rebuilds.
201
+
202
+ ## Detecting Monorepo Type
203
+
204
+ Check for these indicators:
205
+
206
+ **Isolated monorepo:**
207
+ - Separate package.json in each directory
208
+ - No workspace config in root package.json
209
+ - No imports between directories
210
+
211
+ **Shared monorepo:**
212
+ - Root package.json with `workspaces` field
213
+ - `pnpm-workspace.yaml` exists
214
+ - Packages import from each other (`@myapp/shared`)
215
+ - Shared tsconfig.json at root
216
+ - turbo.json or nx.json at root
@@ -0,0 +1,257 @@
1
+ # Railpack Reference
2
+
3
+ Railpack is Railway's default builder. Zero-config for most projects.
4
+
5
+ Full docs: https://railpack.com/llms.txt
6
+
7
+ ## Detection
8
+
9
+ Railpack analyzes source code to detect language, framework, and build requirements automatically.
10
+
11
+ Supported: Node, Python, Go, PHP, Java, Ruby, Rust, Elixir, Gleam, Deno, C/C++, static files.
12
+
13
+ ## Static Sites
14
+
15
+ ### Detection Patterns
16
+
17
+ Railpack serves static files via Caddy when it detects:
18
+ 1. `Staticfile` in root (can specify `root: dist`)
19
+ 2. `index.html` in root
20
+ 3. `public/` directory
21
+ 4. `RAILPACK_STATIC_FILE_ROOT` env var set
22
+
23
+ ### Root Directory Priority
24
+
25
+ 1. `RAILPACK_STATIC_FILE_ROOT` env var
26
+ 2. `root` in `Staticfile`
27
+ 3. `public/` directory
28
+ 4. Current directory (if index.html exists)
29
+
30
+ ### Common Patterns
31
+
32
+ Railpack auto-detects common static build outputs. Only set `RAILPACK_STATIC_FILE_ROOT` for non-standard output directories.
33
+
34
+ | Framework | Build Output | Config Needed |
35
+ |-----------|--------------|---------------|
36
+ | Plain HTML | root | None (auto-detected) |
37
+ | Vite | dist | None (auto-detected) |
38
+ | Astro (static) | dist | None (auto-detected) |
39
+ | Create React App | build | None (auto-detected) |
40
+ | Angular | dist/<project> | `RAILPACK_STATIC_FILE_ROOT=dist/<project>` (non-standard path) |
41
+ | Custom output | varies | Set if output dir is non-standard |
42
+
43
+ ### Custom Caddyfile
44
+
45
+ Put a `Caddyfile` in project root to override default serving behavior.
46
+
47
+ ## Node.js
48
+
49
+ ### Detection
50
+ - `package.json` in root
51
+
52
+ ### Version Priority
53
+ 1. `RAILPACK_NODE_VERSION` env var
54
+ 2. `engines.node` in package.json
55
+ 3. `.nvmrc` or `.node-version`
56
+ 4. Default: Node 22
57
+
58
+ ### Package Manager Detection
59
+ 1. `packageManager` field in package.json (enables Corepack)
60
+ 2. Lock file: `pnpm-lock.yaml`, `bun.lockb`, `yarn.lock`
61
+ 3. Default: npm
62
+
63
+ ### Build Command
64
+ Auto-detected from package.json `scripts.build`. Override via `buildCommand` in service settings.
65
+
66
+ ### Start Command
67
+ Auto-detected:
68
+ 1. `scripts.start` in package.json
69
+ 2. `main` field in package.json
70
+ 3. `index.js` or `index.ts` in root
71
+
72
+ Override via `startCommand` in service settings.
73
+
74
+ ### Framework Detection
75
+
76
+ | Framework | Detection | Notes |
77
+ |-----------|-----------|-------|
78
+ | Next.js | `next` in dependencies | Caches `.next/cache` |
79
+ | Vite | `vite` in devDependencies | Static or SSR mode |
80
+ | Astro | `astro` in dependencies | Caches `.astro` |
81
+ | Nuxt | `nuxt` in dependencies | Auto start command |
82
+ | Remix | `@remix-run/*` in deps | - |
83
+
84
+ ### Static Site Mode (SPA)
85
+
86
+ For frameworks like Vite, CRA, Astro (static), Angular:
87
+ - Railpack builds then serves via Caddy
88
+ - Set `RAILPACK_SPA_OUTPUT_DIR` if output isn't `dist`
89
+
90
+ ## Python
91
+
92
+ ### Detection
93
+ - `requirements.txt`, `pyproject.toml`, `Pipfile`, or `uv.lock`
94
+
95
+ ### Version Priority
96
+ 1. `RAILPACK_PYTHON_VERSION` env var
97
+ 2. `.python-version` file
98
+ 3. `requires-python` in pyproject.toml
99
+ 4. Default: Python 3.12
100
+
101
+ ### WSGI/ASGI Auto-Config
102
+
103
+ | Framework | Start Command |
104
+ |-----------|---------------|
105
+ | Django | `gunicorn <project>.wsgi` |
106
+ | FastAPI | `uvicorn main:app --host 0.0.0.0` |
107
+ | Flask | `gunicorn app:app` |
108
+
109
+ Override via `startCommand` in service settings.
110
+
111
+ ## Go
112
+
113
+ ### Detection
114
+ - `go.mod` in root
115
+
116
+ ### Build
117
+ Compiles to binary automatically. For `cmd/` structure, set binary name or use `RAILPACK_GO_BIN`.
118
+
119
+ ## Rust
120
+
121
+ ### Detection
122
+ - `Cargo.toml` in root
123
+
124
+ ### Build
125
+ Release build by default. Binary auto-detected from Cargo.toml.
126
+
127
+ ## Configuration
128
+
129
+ ### Preferred: Service Settings
130
+
131
+ Use `environment` skill to set:
132
+ - `buildCommand` - Custom build command
133
+ - `startCommand` - Custom start command
134
+
135
+ These are stored in Railway and don't pollute your codebase.
136
+
137
+ ### Environment Variables
138
+
139
+ | Variable | Purpose |
140
+ |----------|---------|
141
+ | `RAILPACK_STATIC_FILE_ROOT` | Static file serving directory |
142
+ | `RAILPACK_SPA_OUTPUT_DIR` | SPA build output (defaults to `dist`) |
143
+ | `RAILPACK_NODE_VERSION` | Node.js version |
144
+ | `RAILPACK_PYTHON_VERSION` | Python version |
145
+ | `RAILPACK_GO_BIN` | Go binary name |
146
+ | `RAILPACK_PACKAGES` | Additional Mise packages (`pkg@version`) |
147
+ | `RAILPACK_BUILD_APT_PACKAGES` | System packages for build |
148
+ | `RAILPACK_DEPLOY_APT_PACKAGES` | System packages for runtime |
149
+
150
+ ### railpack.json
151
+
152
+ Advanced config for custom build steps:
153
+
154
+ ```json
155
+ {
156
+ "$schema": "https://schema.railpack.com",
157
+ "packages": {
158
+ "ffmpeg": "latest"
159
+ },
160
+ "deploy": {
161
+ "aptPackages": ["libmagic1"]
162
+ }
163
+ }
164
+ ```
165
+
166
+ ### railway.toml
167
+
168
+ Alternative config format:
169
+
170
+ ```toml
171
+ [build]
172
+ builder = "RAILPACK"
173
+ buildCommand = "npm run build"
174
+
175
+ [deploy]
176
+ startCommand = "npm start"
177
+ ```
178
+
179
+ ## Minimal Project Scaffolding
180
+
181
+ When no code exists, suggest these patterns:
182
+
183
+ ### Static HTML
184
+ ```html
185
+ <!DOCTYPE html>
186
+ <html lang="en">
187
+ <head>
188
+ <meta charset="UTF-8">
189
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
190
+ <title>My Site</title>
191
+ </head>
192
+ <body>
193
+ <h1>Hello Railway</h1>
194
+ </body>
195
+ </html>
196
+ ```
197
+
198
+ ### Vite React
199
+ ```bash
200
+ npm create vite@latest . -- --template react
201
+ ```
202
+
203
+ ### Astro
204
+ ```bash
205
+ npm create astro@latest
206
+ ```
207
+
208
+ ### Python FastAPI
209
+ ```python
210
+ # main.py
211
+ from fastapi import FastAPI
212
+ app = FastAPI()
213
+
214
+ @app.get("/")
215
+ def root():
216
+ return {"message": "Hello Railway"}
217
+ ```
218
+
219
+ ```txt
220
+ # requirements.txt
221
+ fastapi
222
+ uvicorn
223
+ ```
224
+
225
+ ### Go HTTP Server
226
+ ```go
227
+ // main.go
228
+ package main
229
+
230
+ import (
231
+ "fmt"
232
+ "net/http"
233
+ "os"
234
+ )
235
+
236
+ func main() {
237
+ port := os.Getenv("PORT")
238
+ if port == "" {
239
+ port = "8080"
240
+ }
241
+ http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
242
+ fmt.Fprintf(w, "Hello Railway")
243
+ })
244
+ http.ListenAndServe(":"+port, nil)
245
+ }
246
+ ```
247
+
248
+ ## Troubleshooting
249
+
250
+ | Issue | Solution |
251
+ |-------|----------|
252
+ | Static site 404s | Check output dir - set `RAILPACK_STATIC_FILE_ROOT` if non-standard |
253
+ | Wrong build command | Use `environment` skill to set `buildCommand` |
254
+ | Wrong start command | Use `environment` skill to set `startCommand` |
255
+ | Missing system package | Add to `RAILPACK_BUILD_APT_PACKAGES` or `RAILPACK_DEPLOY_APT_PACKAGES` |
256
+ | Wrong Node version | Set `RAILPACK_NODE_VERSION` or add `.nvmrc` |
257
+ | Wrong Python version | Set `RAILPACK_PYTHON_VERSION` or add `.python-version` |