@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.
- package/README.md +123 -0
- package/VERSION +1 -0
- package/agents/ai-consultant.md +999 -0
- package/agents/architect.md +174 -0
- package/agents/code-reviewer.md +115 -0
- package/agents/competitive-analyst.md +688 -0
- package/agents/content-strategist.md +607 -0
- package/agents/design-studio-create.md +304 -0
- package/agents/design-studio-critique.md +258 -0
- package/agents/design-studio-think.md +79 -0
- package/agents/domain-hunter.md +519 -0
- package/agents/explore-light.md +52 -0
- package/agents/frontend.md +261 -0
- package/agents/gtm-expert.md +811 -0
- package/agents/meeting-prep.md +318 -0
- package/agents/ops.md +149 -0
- package/agents/product-manager.md +563 -0
- package/agents/python-backend.md +286 -0
- package/agents/qa-baseline-updater.md +45 -0
- package/agents/qa-challenger.md +97 -0
- package/agents/qa-domain.md +145 -0
- package/agents/qa-e2e.md +184 -0
- package/agents/qa-test-promoter.md +97 -0
- package/agents/qa.md +226 -0
- package/agents/setup.md +134 -0
- package/agents/sre.md +165 -0
- package/agents/stakeholder-reporter.md +94 -0
- package/agents/user-researcher.md +602 -0
- package/bin/cli.js +322 -0
- package/bundles/canvas.json +16 -0
- package/bundles/compass.json +16 -0
- package/bundles/counsel.json +31 -0
- package/bundles/cruise.json +11 -0
- package/bundles/forge.json +26 -0
- package/bundles/prime.json +10 -0
- package/bundles/prism.json +23 -0
- package/bundles/scalpel.json +17 -0
- package/bundles/sentinel.json +19 -0
- package/bundles/shield.json +14 -0
- package/bundles/spark.json +19 -0
- package/compiler.sh +305 -0
- package/dist/plugins/canvas/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/canvas/agents/design-studio-create.md +304 -0
- package/dist/plugins/canvas/agents/design-studio-critique.md +258 -0
- package/dist/plugins/canvas/agents/design-studio-think.md +79 -0
- package/dist/plugins/canvas/agents/frontend.md +261 -0
- package/dist/plugins/canvas/skills/planning/SKILL.md +436 -0
- package/dist/plugins/compass/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/compass/agents/content-strategist.md +607 -0
- package/dist/plugins/compass/agents/gtm-expert.md +811 -0
- package/dist/plugins/compass/agents/product-manager.md +563 -0
- package/dist/plugins/compass/agents/user-researcher.md +602 -0
- package/dist/plugins/compass/skills/planning/SKILL.md +436 -0
- package/dist/plugins/counsel/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/counsel/agents/ai-consultant.md +999 -0
- package/dist/plugins/counsel/agents/competitive-analyst.md +688 -0
- package/dist/plugins/counsel/agents/meeting-prep.md +318 -0
- package/dist/plugins/counsel/agents/stakeholder-reporter.md +94 -0
- package/dist/plugins/counsel/hooks/check-deliverable.sh +65 -0
- package/dist/plugins/counsel/hooks/ensure-client-dir.sh +59 -0
- package/dist/plugins/counsel/hooks/hooks.json +28 -0
- package/dist/plugins/counsel/skills/client-discovery/SKILL.md +266 -0
- package/dist/plugins/counsel/skills/consulting/SKILL.md +282 -0
- package/dist/plugins/counsel/skills/deliverable-builder/SKILL.md +928 -0
- package/dist/plugins/counsel/skills/engagement-tracker/SKILL.md +380 -0
- package/dist/plugins/counsel/skills/market-research/SKILL.md +300 -0
- package/dist/plugins/counsel/skills/opportunity-map/SKILL.md +307 -0
- package/dist/plugins/counsel/skills/pitch-generator/SKILL.md +378 -0
- package/dist/plugins/counsel/skills/roi-calculator/SKILL.md +469 -0
- package/dist/plugins/counsel/skills/share/SKILL.md +211 -0
- package/dist/plugins/counsel/skills/solution-architect/SKILL.md +566 -0
- package/dist/plugins/counsel/skills/templates/SKILL.md +194 -0
- package/dist/plugins/counsel/skills/welcome/SKILL.md +136 -0
- package/dist/plugins/counsel/skills/wizard/SKILL.md +411 -0
- package/dist/plugins/cruise/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/cruise/skills/autopilot/SKILL.md +425 -0
- package/dist/plugins/forge/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/forge/agents/architect.md +174 -0
- package/dist/plugins/forge/agents/code-reviewer.md +115 -0
- package/dist/plugins/forge/agents/frontend.md +261 -0
- package/dist/plugins/forge/agents/product-manager.md +563 -0
- package/dist/plugins/forge/agents/python-backend.md +286 -0
- package/dist/plugins/forge/agents/qa.md +226 -0
- package/dist/plugins/forge/hooks/hooks.json +28 -0
- package/dist/plugins/forge/hooks/post-test-summary.sh +115 -0
- package/dist/plugins/forge/hooks/triage-router.sh +740 -0
- package/dist/plugins/forge/skills/implement/SKILL.md +532 -0
- package/dist/plugins/forge/skills/planning/SKILL.md +436 -0
- package/dist/plugins/forge/skills/pr/SKILL.md +275 -0
- package/dist/plugins/forge/skills/precheck/SKILL.md +159 -0
- package/dist/plugins/forge/skills/qa/SKILL.md +127 -0
- package/dist/plugins/forge/skills/review-pr/SKILL.md +367 -0
- package/dist/plugins/prime/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/prime/agents/ai-consultant.md +999 -0
- package/dist/plugins/prime/agents/architect.md +174 -0
- package/dist/plugins/prime/agents/code-reviewer.md +115 -0
- package/dist/plugins/prime/agents/competitive-analyst.md +688 -0
- package/dist/plugins/prime/agents/content-strategist.md +607 -0
- package/dist/plugins/prime/agents/design-studio-create.md +304 -0
- package/dist/plugins/prime/agents/design-studio-critique.md +258 -0
- package/dist/plugins/prime/agents/design-studio-think.md +79 -0
- package/dist/plugins/prime/agents/explore-light.md +52 -0
- package/dist/plugins/prime/agents/frontend.md +261 -0
- package/dist/plugins/prime/agents/gtm-expert.md +811 -0
- package/dist/plugins/prime/agents/meeting-prep.md +318 -0
- package/dist/plugins/prime/agents/ops.md +149 -0
- package/dist/plugins/prime/agents/product-manager.md +563 -0
- package/dist/plugins/prime/agents/python-backend.md +286 -0
- package/dist/plugins/prime/agents/qa-baseline-updater.md +45 -0
- package/dist/plugins/prime/agents/qa-challenger.md +97 -0
- package/dist/plugins/prime/agents/qa-domain.md +145 -0
- package/dist/plugins/prime/agents/qa-e2e.md +184 -0
- package/dist/plugins/prime/agents/qa-test-promoter.md +97 -0
- package/dist/plugins/prime/agents/qa.md +226 -0
- package/dist/plugins/prime/agents/setup.md +134 -0
- package/dist/plugins/prime/agents/sre.md +165 -0
- package/dist/plugins/prime/agents/stakeholder-reporter.md +94 -0
- package/dist/plugins/prime/agents/user-researcher.md +602 -0
- package/dist/plugins/prime/hooks/check-deliverable.sh +65 -0
- package/dist/plugins/prime/hooks/ensure-client-dir.sh +59 -0
- package/dist/plugins/prime/hooks/hooks.json +184 -0
- package/dist/plugins/prime/hooks/post-deploy-health.sh +83 -0
- package/dist/plugins/prime/hooks/post-diff-test-compare.sh +125 -0
- package/dist/plugins/prime/hooks/post-edit-lint.sh +92 -0
- package/dist/plugins/prime/hooks/post-git-state.sh +54 -0
- package/dist/plugins/prime/hooks/post-merge-cleanup.sh +101 -0
- package/dist/plugins/prime/hooks/post-test-summary.sh +115 -0
- package/dist/plugins/prime/hooks/pre-bash-guard.sh +142 -0
- package/dist/plugins/prime/hooks/pre-edit-guard.sh +121 -0
- package/dist/plugins/prime/hooks/pre-task-context.sh +113 -0
- package/dist/plugins/prime/hooks/session-bootstrap.sh +379 -0
- package/dist/plugins/prime/hooks/session-end.sh +107 -0
- package/dist/plugins/prime/hooks/session-summary.sh +97 -0
- package/dist/plugins/prime/hooks/sync-agents.sh +269 -0
- package/dist/plugins/prime/hooks/triage-router.sh +740 -0
- package/dist/plugins/prime/skills/arth/SKILL.md +165 -0
- package/dist/plugins/prime/skills/autopilot/SKILL.md +425 -0
- package/dist/plugins/prime/skills/calibrate/SKILL.md +1807 -0
- package/dist/plugins/prime/skills/ci-fix/SKILL.md +293 -0
- package/dist/plugins/prime/skills/client-discovery/SKILL.md +266 -0
- package/dist/plugins/prime/skills/consulting/SKILL.md +282 -0
- package/dist/plugins/prime/skills/custom-domain/SKILL.md +261 -0
- package/dist/plugins/prime/skills/deliverable-builder/SKILL.md +928 -0
- package/dist/plugins/prime/skills/discord-ops/SKILL.md +125 -0
- package/dist/plugins/prime/skills/engagement-tracker/SKILL.md +380 -0
- package/dist/plugins/prime/skills/explore.md +43 -0
- package/dist/plugins/prime/skills/fix/SKILL.md +1058 -0
- package/dist/plugins/prime/skills/implement/SKILL.md +532 -0
- package/dist/plugins/prime/skills/incident/SKILL.md +910 -0
- package/dist/plugins/prime/skills/issue/SKILL.md +134 -0
- package/dist/plugins/prime/skills/market-research/SKILL.md +300 -0
- package/dist/plugins/prime/skills/onboard/SKILL.md +344 -0
- package/dist/plugins/prime/skills/opportunity-map/SKILL.md +307 -0
- package/dist/plugins/prime/skills/pitch-generator/SKILL.md +378 -0
- package/dist/plugins/prime/skills/planning/SKILL.md +436 -0
- package/dist/plugins/prime/skills/pr/SKILL.md +275 -0
- package/dist/plugins/prime/skills/precheck/SKILL.md +159 -0
- package/dist/plugins/prime/skills/qa/SKILL.md +127 -0
- package/dist/plugins/prime/skills/qa-incident/SKILL.md +54 -0
- package/dist/plugins/prime/skills/qa-learn/SKILL.md +47 -0
- package/dist/plugins/prime/skills/restart/SKILL.md +70 -0
- package/dist/plugins/prime/skills/review-pr/SKILL.md +367 -0
- package/dist/plugins/prime/skills/roi-calculator/SKILL.md +469 -0
- package/dist/plugins/prime/skills/scan/SKILL.md +232 -0
- package/dist/plugins/prime/skills/setup/SKILL.md +691 -0
- package/dist/plugins/prime/skills/share/SKILL.md +211 -0
- package/dist/plugins/prime/skills/solution-architect/SKILL.md +566 -0
- package/dist/plugins/prime/skills/sre/SKILL.md +362 -0
- package/dist/plugins/prime/skills/sync/SKILL.md +188 -0
- package/dist/plugins/prime/skills/templates/SKILL.md +194 -0
- package/dist/plugins/prime/skills/welcome/SKILL.md +136 -0
- package/dist/plugins/prime/skills/wizard/SKILL.md +411 -0
- package/dist/plugins/prism/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/prism/agents/qa-baseline-updater.md +45 -0
- package/dist/plugins/prism/agents/qa-challenger.md +97 -0
- package/dist/plugins/prism/agents/qa-domain.md +145 -0
- package/dist/plugins/prism/agents/qa-e2e.md +184 -0
- package/dist/plugins/prism/agents/qa-test-promoter.md +97 -0
- package/dist/plugins/prism/agents/qa.md +226 -0
- package/dist/plugins/prism/hooks/hooks.json +26 -0
- package/dist/plugins/prism/hooks/post-diff-test-compare.sh +125 -0
- package/dist/plugins/prism/hooks/post-test-summary.sh +115 -0
- package/dist/plugins/prism/skills/qa/SKILL.md +127 -0
- package/dist/plugins/prism/skills/qa-incident/SKILL.md +54 -0
- package/dist/plugins/prism/skills/qa-learn/SKILL.md +47 -0
- package/dist/plugins/scalpel/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/scalpel/agents/code-reviewer.md +115 -0
- package/dist/plugins/scalpel/hooks/hooks.json +26 -0
- package/dist/plugins/scalpel/hooks/pre-edit-guard.sh +121 -0
- package/dist/plugins/scalpel/skills/ci-fix/SKILL.md +293 -0
- package/dist/plugins/scalpel/skills/fix/SKILL.md +1058 -0
- package/dist/plugins/scalpel/skills/issue/SKILL.md +134 -0
- package/dist/plugins/sentinel/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/sentinel/agents/ops.md +149 -0
- package/dist/plugins/sentinel/agents/sre.md +165 -0
- package/dist/plugins/sentinel/hooks/hooks.json +26 -0
- package/dist/plugins/sentinel/hooks/post-deploy-health.sh +83 -0
- package/dist/plugins/sentinel/hooks/post-git-state.sh +54 -0
- package/dist/plugins/sentinel/skills/incident/SKILL.md +910 -0
- package/dist/plugins/sentinel/skills/restart/SKILL.md +70 -0
- package/dist/plugins/sentinel/skills/sre/SKILL.md +362 -0
- package/dist/plugins/shield/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/shield/hooks/hooks.json +60 -0
- package/dist/plugins/shield/hooks/pre-bash-guard.sh +142 -0
- package/dist/plugins/shield/hooks/pre-edit-guard.sh +121 -0
- package/dist/plugins/shield/hooks/session-bootstrap.sh +379 -0
- package/dist/plugins/shield/hooks/triage-router.sh +740 -0
- package/dist/plugins/spark/.claude-plugin/plugin.json +6 -0
- package/dist/plugins/spark/agents/explore-light.md +52 -0
- package/dist/plugins/spark/agents/setup.md +134 -0
- package/dist/plugins/spark/hooks/hooks.json +16 -0
- package/dist/plugins/spark/hooks/session-bootstrap.sh +379 -0
- package/dist/plugins/spark/skills/calibrate/SKILL.md +1807 -0
- package/dist/plugins/spark/skills/onboard/SKILL.md +344 -0
- package/dist/plugins/spark/skills/scan/SKILL.md +232 -0
- package/dist/plugins/spark/skills/setup/SKILL.md +691 -0
- package/hook-defs.json +104 -0
- package/hooks/check-deliverable.sh +65 -0
- package/hooks/ensure-client-dir.sh +59 -0
- package/hooks/hooks.json +16 -0
- package/hooks/post-deploy-health.sh +83 -0
- package/hooks/post-diff-test-compare.sh +125 -0
- package/hooks/post-edit-lint.sh +92 -0
- package/hooks/post-git-state.sh +54 -0
- package/hooks/post-merge-cleanup.sh +101 -0
- package/hooks/post-test-summary.sh +115 -0
- package/hooks/pre-bash-guard.sh +142 -0
- package/hooks/pre-edit-guard.sh +121 -0
- package/hooks/pre-task-context.sh +113 -0
- package/hooks/session-bootstrap.sh +379 -0
- package/hooks/session-end.sh +107 -0
- package/hooks/session-start.sh +46 -0
- package/hooks/session-summary.sh +97 -0
- package/hooks/sync-agents.sh +269 -0
- package/hooks/triage-router.sh +740 -0
- package/install.sh +3185 -0
- package/package.json +40 -0
- package/portable.manifest +112 -0
- package/skills/arth/SKILL.md +165 -0
- package/skills/autopilot/SKILL.md +425 -0
- package/skills/calibrate/SKILL.md +1807 -0
- package/skills/ci-fix/SKILL.md +293 -0
- package/skills/client-discovery/SKILL.md +266 -0
- package/skills/consulting/SKILL.md +282 -0
- package/skills/continue/SKILL.md +174 -0
- package/skills/custom-domain/SKILL.md +261 -0
- package/skills/deliverable-builder/SKILL.md +928 -0
- package/skills/discord-ops/SKILL.md +125 -0
- package/skills/engagement-tracker/SKILL.md +380 -0
- package/skills/explore.md +43 -0
- package/skills/fix/SKILL.md +1058 -0
- package/skills/implement/SKILL.md +532 -0
- package/skills/incident/SKILL.md +910 -0
- package/skills/issue/SKILL.md +134 -0
- package/skills/market-research/SKILL.md +300 -0
- package/skills/onboard/SKILL.md +344 -0
- package/skills/opportunity-map/SKILL.md +307 -0
- package/skills/pitch-generator/SKILL.md +378 -0
- package/skills/planning/SKILL.md +436 -0
- package/skills/pr/SKILL.md +275 -0
- package/skills/precheck/SKILL.md +159 -0
- package/skills/qa/SKILL.md +127 -0
- package/skills/qa-incident/SKILL.md +54 -0
- package/skills/qa-learn/SKILL.md +47 -0
- package/skills/railway/central-station/SKILL.md +226 -0
- package/skills/railway/central-station/references/environment-config.md +183 -0
- package/skills/railway/central-station/references/monorepo.md +216 -0
- package/skills/railway/central-station/references/railpack.md +257 -0
- package/skills/railway/central-station/references/variables.md +170 -0
- package/skills/railway/database/SKILL.md +284 -0
- package/skills/railway/database/references/environment-config.md +183 -0
- package/skills/railway/database/references/monorepo.md +216 -0
- package/skills/railway/database/references/railpack.md +257 -0
- package/skills/railway/database/references/variables.md +170 -0
- package/skills/railway/database/scripts/railway-api.sh +41 -0
- package/skills/railway/deploy/SKILL.md +128 -0
- package/skills/railway/deploy/references/environment-config.md +183 -0
- package/skills/railway/deploy/references/monorepo.md +216 -0
- package/skills/railway/deploy/references/railpack.md +257 -0
- package/skills/railway/deploy/references/variables.md +170 -0
- package/skills/railway/deployment/SKILL.md +222 -0
- package/skills/railway/deployment/references/environment-config.md +183 -0
- package/skills/railway/deployment/references/monorepo.md +216 -0
- package/skills/railway/deployment/references/railpack.md +257 -0
- package/skills/railway/deployment/references/variables.md +170 -0
- package/skills/railway/domain/SKILL.md +137 -0
- package/skills/railway/domain/references/environment-config.md +183 -0
- package/skills/railway/domain/references/monorepo.md +216 -0
- package/skills/railway/domain/references/railpack.md +257 -0
- package/skills/railway/domain/references/variables.md +170 -0
- package/skills/railway/environment/SKILL.md +266 -0
- package/skills/railway/environment/references/environment-config.md +183 -0
- package/skills/railway/environment/references/monorepo.md +216 -0
- package/skills/railway/environment/references/railpack.md +257 -0
- package/skills/railway/environment/references/variables.md +170 -0
- package/skills/railway/metrics/SKILL.md +211 -0
- package/skills/railway/metrics/references/environment-config.md +183 -0
- package/skills/railway/metrics/references/monorepo.md +216 -0
- package/skills/railway/metrics/references/railpack.md +257 -0
- package/skills/railway/metrics/references/variables.md +170 -0
- package/skills/railway/metrics/scripts/railway-api.sh +41 -0
- package/skills/railway/new/SKILL.md +489 -0
- package/skills/railway/new/references/environment-config.md +183 -0
- package/skills/railway/new/references/monorepo.md +216 -0
- package/skills/railway/new/references/railpack.md +257 -0
- package/skills/railway/new/references/variables.md +170 -0
- package/skills/railway/projects/SKILL.md +142 -0
- package/skills/railway/projects/references/environment-config.md +183 -0
- package/skills/railway/projects/references/monorepo.md +216 -0
- package/skills/railway/projects/references/railpack.md +257 -0
- package/skills/railway/projects/references/variables.md +170 -0
- package/skills/railway/projects/scripts/railway-api.sh +41 -0
- package/skills/railway/railway-docs/SKILL.md +47 -0
- package/skills/railway/railway-docs/references/environment-config.md +183 -0
- package/skills/railway/railway-docs/references/monorepo.md +216 -0
- package/skills/railway/railway-docs/references/railpack.md +257 -0
- package/skills/railway/railway-docs/references/variables.md +170 -0
- package/skills/railway/service/SKILL.md +249 -0
- package/skills/railway/service/references/environment-config.md +183 -0
- package/skills/railway/service/references/monorepo.md +216 -0
- package/skills/railway/service/references/railpack.md +257 -0
- package/skills/railway/service/references/variables.md +170 -0
- package/skills/railway/service/scripts/railway-api.sh +41 -0
- package/skills/railway/status/SKILL.md +91 -0
- package/skills/railway/status/references/environment-config.md +183 -0
- package/skills/railway/status/references/monorepo.md +216 -0
- package/skills/railway/status/references/railpack.md +257 -0
- package/skills/railway/status/references/variables.md +170 -0
- package/skills/railway/templates/SKILL.md +275 -0
- package/skills/railway/templates/references/environment-config.md +183 -0
- package/skills/railway/templates/references/monorepo.md +216 -0
- package/skills/railway/templates/references/railpack.md +257 -0
- package/skills/railway/templates/references/variables.md +170 -0
- package/skills/railway/templates/scripts/railway-api.sh +41 -0
- package/skills/restart/SKILL.md +70 -0
- package/skills/review-pr/SKILL.md +367 -0
- package/skills/roi-calculator/SKILL.md +469 -0
- package/skills/scan/SKILL.md +232 -0
- package/skills/setup/SKILL.md +691 -0
- package/skills/share/SKILL.md +211 -0
- package/skills/solution-architect/SKILL.md +566 -0
- package/skills/sre/SKILL.md +362 -0
- package/skills/superpowers/brainstorming/SKILL.md +96 -0
- package/skills/superpowers/dispatching-parallel-agents/SKILL.md +180 -0
- package/skills/superpowers/executing-plans/SKILL.md +84 -0
- package/skills/superpowers/finishing-a-development-branch/SKILL.md +200 -0
- package/skills/superpowers/receiving-code-review/SKILL.md +213 -0
- package/skills/superpowers/requesting-code-review/SKILL.md +105 -0
- package/skills/superpowers/requesting-code-review/code-reviewer.md +146 -0
- package/skills/superpowers/subagent-driven-development/SKILL.md +242 -0
- package/skills/superpowers/subagent-driven-development/code-quality-reviewer-prompt.md +20 -0
- package/skills/superpowers/subagent-driven-development/implementer-prompt.md +78 -0
- package/skills/superpowers/subagent-driven-development/spec-reviewer-prompt.md +61 -0
- package/skills/superpowers/systematic-debugging/CREATION-LOG.md +119 -0
- package/skills/superpowers/systematic-debugging/SKILL.md +296 -0
- package/skills/superpowers/systematic-debugging/condition-based-waiting-example.ts +158 -0
- package/skills/superpowers/systematic-debugging/condition-based-waiting.md +115 -0
- package/skills/superpowers/systematic-debugging/defense-in-depth.md +122 -0
- package/skills/superpowers/systematic-debugging/find-polluter.sh +63 -0
- package/skills/superpowers/systematic-debugging/root-cause-tracing.md +169 -0
- package/skills/superpowers/systematic-debugging/test-academic.md +14 -0
- package/skills/superpowers/systematic-debugging/test-pressure-1.md +58 -0
- package/skills/superpowers/systematic-debugging/test-pressure-2.md +68 -0
- package/skills/superpowers/systematic-debugging/test-pressure-3.md +69 -0
- package/skills/superpowers/test-driven-development/SKILL.md +371 -0
- package/skills/superpowers/test-driven-development/testing-anti-patterns.md +299 -0
- package/skills/superpowers/using-git-worktrees/SKILL.md +218 -0
- package/skills/superpowers/using-superpowers/SKILL.md +95 -0
- package/skills/superpowers/verification-before-completion/SKILL.md +139 -0
- package/skills/superpowers/writing-plans/SKILL.md +116 -0
- package/skills/superpowers/writing-skills/SKILL.md +655 -0
- package/skills/superpowers/writing-skills/anthropic-best-practices.md +1150 -0
- package/skills/superpowers/writing-skills/examples/CLAUDE_MD_TESTING.md +189 -0
- package/skills/superpowers/writing-skills/graphviz-conventions.dot +172 -0
- package/skills/superpowers/writing-skills/persuasion-principles.md +187 -0
- package/skills/superpowers/writing-skills/render-graphs.js +168 -0
- package/skills/superpowers/writing-skills/testing-skills-with-subagents.md +384 -0
- package/skills/sync/SKILL.md +188 -0
- package/skills/templates/SKILL.md +194 -0
- package/skills/welcome/SKILL.md +136 -0
- package/skills/wizard/SKILL.md +411 -0
- package/templates/CLAUDE.md.managed-block +123 -0
- package/templates/CLAUDE.md.template +111 -0
- package/templates/consulting/engagement-tracker-template.md +181 -0
- package/templates/consulting/executive-summary-template.md +83 -0
- package/templates/consulting/maturity-assessment-template.md +182 -0
- package/templates/consulting/proposal-template.md +209 -0
- package/templates/consulting/roi-model-template.md +139 -0
- package/templates/consulting/solution-architecture-template.md +313 -0
- package/templates/settings.json +130 -0
|
@@ -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` |
|
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
# Variables Reference
|
|
2
|
+
|
|
3
|
+
Variables in Railway support references to other services, shared variables, and Railway-provided values.
|
|
4
|
+
|
|
5
|
+
## Template Syntax
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
${{NAMESPACE.VAR}}
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
| Namespace | Description |
|
|
12
|
+
|-----------|-------------|
|
|
13
|
+
| `shared` | Shared variables (project-wide) |
|
|
14
|
+
| `<serviceName>` | Variables from another service (case-sensitive) |
|
|
15
|
+
|
|
16
|
+
## Examples
|
|
17
|
+
|
|
18
|
+
**Reference shared variable:**
|
|
19
|
+
```json
|
|
20
|
+
{ "value": "${{shared.DOMAIN}}" }
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
**Reference another service's variable:**
|
|
24
|
+
```json
|
|
25
|
+
{ "value": "${{api.API_KEY}}" }
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
**Combine with text:**
|
|
29
|
+
```json
|
|
30
|
+
{ "value": "https://${{shared.DOMAIN}}/api" }
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Railway-Provided Variables
|
|
34
|
+
|
|
35
|
+
Railway injects these into every service automatically.
|
|
36
|
+
|
|
37
|
+
### Networking
|
|
38
|
+
| Variable | Description | Example | Availability |
|
|
39
|
+
|----------|-------------|---------|--------------|
|
|
40
|
+
| `RAILWAY_PUBLIC_DOMAIN` | Public domain | `myapp.up.railway.app` | Only if service has a domain |
|
|
41
|
+
| `RAILWAY_PRIVATE_DOMAIN` | Private DNS (internal only) | `myapp.railway.internal` | Always |
|
|
42
|
+
| `RAILWAY_TCP_PROXY_DOMAIN` | TCP proxy domain | `roundhouse.proxy.rlwy.net` | Only if TCP proxy enabled |
|
|
43
|
+
| `RAILWAY_TCP_PROXY_PORT` | TCP proxy port | `11105` | Only if TCP proxy enabled |
|
|
44
|
+
|
|
45
|
+
**Note:** `RAILWAY_PUBLIC_DOMAIN` is only available if the service has a domain configured.
|
|
46
|
+
Check the service's environment config to verify a domain exists before referencing it.
|
|
47
|
+
|
|
48
|
+
### Context
|
|
49
|
+
| Variable | Description |
|
|
50
|
+
|----------|-------------|
|
|
51
|
+
| `RAILWAY_PROJECT_ID` | Project ID |
|
|
52
|
+
| `RAILWAY_PROJECT_NAME` | Project name |
|
|
53
|
+
| `RAILWAY_ENVIRONMENT_ID` | Environment ID |
|
|
54
|
+
| `RAILWAY_ENVIRONMENT_NAME` | Environment name |
|
|
55
|
+
| `RAILWAY_SERVICE_ID` | Service ID |
|
|
56
|
+
| `RAILWAY_SERVICE_NAME` | Service name |
|
|
57
|
+
| `RAILWAY_DEPLOYMENT_ID` | Deployment ID |
|
|
58
|
+
| `RAILWAY_REPLICA_ID` | Replica ID |
|
|
59
|
+
| `RAILWAY_REPLICA_REGION` | Region (e.g., `us-west2`) |
|
|
60
|
+
|
|
61
|
+
### Volume (if attached)
|
|
62
|
+
| Variable | Description |
|
|
63
|
+
|----------|-------------|
|
|
64
|
+
| `RAILWAY_VOLUME_NAME` | Volume name |
|
|
65
|
+
| `RAILWAY_VOLUME_MOUNT_PATH` | Mount path |
|
|
66
|
+
|
|
67
|
+
### Git (if deployed from GitHub)
|
|
68
|
+
| Variable | Description |
|
|
69
|
+
|----------|-------------|
|
|
70
|
+
| `RAILWAY_GIT_COMMIT_SHA` | Commit SHA |
|
|
71
|
+
| `RAILWAY_GIT_BRANCH` | Branch name |
|
|
72
|
+
| `RAILWAY_GIT_REPO_NAME` | Repository name |
|
|
73
|
+
| `RAILWAY_GIT_REPO_OWNER` | Repository owner |
|
|
74
|
+
| `RAILWAY_GIT_AUTHOR` | Commit author |
|
|
75
|
+
| `RAILWAY_GIT_COMMIT_MESSAGE` | Commit message |
|
|
76
|
+
|
|
77
|
+
## Wiring Services Together
|
|
78
|
+
|
|
79
|
+
### Frontend → Backend (public network)
|
|
80
|
+
Use when: Browser makes requests to API (browser can't access private network)
|
|
81
|
+
|
|
82
|
+
```json
|
|
83
|
+
{
|
|
84
|
+
"services": {
|
|
85
|
+
"<frontendId>": {
|
|
86
|
+
"variables": {
|
|
87
|
+
"API_URL": { "value": "https://${{backend.RAILWAY_PUBLIC_DOMAIN}}" }
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Service → Database (private network)
|
|
95
|
+
Use when: Backend connects to database (faster, no egress cost, more secure)
|
|
96
|
+
|
|
97
|
+
Railway databases auto-generate connection URL variables. Use the private versions:
|
|
98
|
+
|
|
99
|
+
| Database | Variable Reference |
|
|
100
|
+
|----------|-------------------|
|
|
101
|
+
| Postgres | `${{Postgres.DATABASE_URL}}` |
|
|
102
|
+
| MySQL | `${{MySQL.DATABASE_URL}}` |
|
|
103
|
+
| Redis | `${{Redis.REDIS_URL}}` |
|
|
104
|
+
| Mongo | `${{Mongo.MONGO_URL}}` |
|
|
105
|
+
|
|
106
|
+
**Postgres/MySQL example:**
|
|
107
|
+
```json
|
|
108
|
+
{
|
|
109
|
+
"services": {
|
|
110
|
+
"<apiId>": {
|
|
111
|
+
"variables": {
|
|
112
|
+
"DATABASE_URL": { "value": "${{Postgres.DATABASE_URL}}" }
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
**Redis example:**
|
|
120
|
+
```json
|
|
121
|
+
{
|
|
122
|
+
"services": {
|
|
123
|
+
"<apiId>": {
|
|
124
|
+
"variables": {
|
|
125
|
+
"REDIS_URL": { "value": "${{Redis.REDIS_URL}}" }
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
**Mongo example:**
|
|
133
|
+
```json
|
|
134
|
+
{
|
|
135
|
+
"services": {
|
|
136
|
+
"<apiId>": {
|
|
137
|
+
"variables": {
|
|
138
|
+
"MONGO_URL": { "value": "${{Mongo.MONGO_URL}}" }
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
**Note:** Service names are case-sensitive. Match the exact name from your project (e.g., "Postgres", "Redis").
|
|
146
|
+
|
|
147
|
+
### Service → Service (private network)
|
|
148
|
+
Use when: Microservices communicate internally
|
|
149
|
+
|
|
150
|
+
```json
|
|
151
|
+
{
|
|
152
|
+
"services": {
|
|
153
|
+
"<workerServiceId>": {
|
|
154
|
+
"variables": {
|
|
155
|
+
"API_INTERNAL_URL": { "value": "http://${{api.RAILWAY_PRIVATE_DOMAIN}}:${{api.PORT}}" }
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
## When to Use Public vs Private
|
|
163
|
+
|
|
164
|
+
| Use Case | Domain | Reason |
|
|
165
|
+
|----------|--------|--------|
|
|
166
|
+
| Browser → API | Public | Browser can't access private network |
|
|
167
|
+
| Service → Service | Private | Faster, no egress, more secure |
|
|
168
|
+
| Service → Database | Private | Databases should never be public |
|
|
169
|
+
| External webhook → Service | Public | External services need public access |
|
|
170
|
+
| Cron job → API | Private | Internal communication |
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# Railway GraphQL API helper
|
|
3
|
+
# Usage: railway-api.sh '<graphql-query>' ['<variables-json>']
|
|
4
|
+
|
|
5
|
+
set -e
|
|
6
|
+
|
|
7
|
+
if ! command -v jq &>/dev/null; then
|
|
8
|
+
echo '{"error": "jq not installed. Install with: brew install jq"}'
|
|
9
|
+
exit 1
|
|
10
|
+
fi
|
|
11
|
+
|
|
12
|
+
CONFIG_FILE="$HOME/.railway/config.json"
|
|
13
|
+
|
|
14
|
+
if [[ ! -f "$CONFIG_FILE" ]]; then
|
|
15
|
+
echo '{"error": "Railway config not found. Run: railway login"}'
|
|
16
|
+
exit 1
|
|
17
|
+
fi
|
|
18
|
+
|
|
19
|
+
TOKEN=$(jq -r '.user.token' "$CONFIG_FILE")
|
|
20
|
+
|
|
21
|
+
if [[ -z "$TOKEN" || "$TOKEN" == "null" ]]; then
|
|
22
|
+
echo '{"error": "No Railway token found. Run: railway login"}'
|
|
23
|
+
exit 1
|
|
24
|
+
fi
|
|
25
|
+
|
|
26
|
+
if [[ -z "$1" ]]; then
|
|
27
|
+
echo '{"error": "No query provided"}'
|
|
28
|
+
exit 1
|
|
29
|
+
fi
|
|
30
|
+
|
|
31
|
+
# Build payload with query and optional variables
|
|
32
|
+
if [[ -n "$2" ]]; then
|
|
33
|
+
PAYLOAD=$(jq -n --arg q "$1" --argjson v "$2" '{query: $q, variables: $v}')
|
|
34
|
+
else
|
|
35
|
+
PAYLOAD=$(jq -n --arg q "$1" '{query: $q}')
|
|
36
|
+
fi
|
|
37
|
+
|
|
38
|
+
curl -s https://backboard.railway.com/graphql/v2 \
|
|
39
|
+
-H "Authorization: Bearer $TOKEN" \
|
|
40
|
+
-H "Content-Type: application/json" \
|
|
41
|
+
-d "$PAYLOAD"
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: status
|
|
3
|
+
description: This skill should be used when the user asks "railway status", "is it running", "what's deployed", "deployment status", or about uptime. NOT for variables ("what variables", "env vars", "add variable") or configuration queries - use environment skill for those.
|
|
4
|
+
allowed-tools: Bash(railway:*), Bash(which:*), Bash(command:*)
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Railway Status
|
|
8
|
+
|
|
9
|
+
Check the current Railway project status for this directory.
|
|
10
|
+
|
|
11
|
+
## When to Use
|
|
12
|
+
|
|
13
|
+
- User asks about Railway status, project, services, or deployments
|
|
14
|
+
- User mentions deploying or pushing to Railway
|
|
15
|
+
- Before any Railway operation (deploy, update service, add variables)
|
|
16
|
+
- User asks about environments or domains
|
|
17
|
+
|
|
18
|
+
## When NOT to Use
|
|
19
|
+
|
|
20
|
+
Use the `environment` skill instead when user wants:
|
|
21
|
+
- Detailed service configuration (builder type, dockerfile path, build command, root directory)
|
|
22
|
+
- Deploy config (start command, restart policy, healthchecks, predeploy command)
|
|
23
|
+
- Service source (repo, branch, image)
|
|
24
|
+
- Compare service configs
|
|
25
|
+
- Query or change environment variables
|
|
26
|
+
|
|
27
|
+
## Check Status
|
|
28
|
+
|
|
29
|
+
Run:
|
|
30
|
+
```bash
|
|
31
|
+
railway status --json
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
First verify CLI is installed:
|
|
35
|
+
```bash
|
|
36
|
+
command -v railway
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Handling Errors
|
|
40
|
+
|
|
41
|
+
### CLI Not Installed
|
|
42
|
+
If `command -v railway` fails:
|
|
43
|
+
|
|
44
|
+
> Railway CLI is not installed. Install with:
|
|
45
|
+
> ```
|
|
46
|
+
> npm install -g @railway/cli
|
|
47
|
+
> ```
|
|
48
|
+
> or
|
|
49
|
+
> ```
|
|
50
|
+
> brew install railway
|
|
51
|
+
> ```
|
|
52
|
+
> Then authenticate: `railway login`
|
|
53
|
+
|
|
54
|
+
### Not Authenticated
|
|
55
|
+
If `railway whoami` fails:
|
|
56
|
+
|
|
57
|
+
> Not logged in to Railway. Run:
|
|
58
|
+
> ```
|
|
59
|
+
> railway login
|
|
60
|
+
> ```
|
|
61
|
+
|
|
62
|
+
### No Project Linked
|
|
63
|
+
If status returns "No linked project":
|
|
64
|
+
|
|
65
|
+
> No Railway project linked to this directory.
|
|
66
|
+
>
|
|
67
|
+
> To link an existing project: `railway link`
|
|
68
|
+
> To create a new project: `railway init`
|
|
69
|
+
|
|
70
|
+
## Presenting Status
|
|
71
|
+
|
|
72
|
+
Parse the JSON and present:
|
|
73
|
+
- **Project**: name and workspace
|
|
74
|
+
- **Environment**: current environment (production, staging, etc.)
|
|
75
|
+
- **Services**: list with deployment status
|
|
76
|
+
- **Active Deployments**: any in-progress deployments (from `activeDeployments` field)
|
|
77
|
+
- **Domains**: any configured domains
|
|
78
|
+
|
|
79
|
+
Example output format:
|
|
80
|
+
```
|
|
81
|
+
Project: my-app (workspace: my-team)
|
|
82
|
+
Environment: production
|
|
83
|
+
|
|
84
|
+
Services:
|
|
85
|
+
- web: deployed (https://my-app.up.railway.app)
|
|
86
|
+
- api: deploying (build in progress)
|
|
87
|
+
- postgres: running
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
The `activeDeployments` array on each service shows currently running deployments
|
|
91
|
+
with their status (building, deploying, etc.).
|