run-railway
Skill13 starsChanged 13 days agoMITView on GitHub
Use if running railway CLI — deploys, logs, env vars, link, ssh, db shells, scaling.
We split this skill into the rules it gives an agent
13 rules. About 0 are common, 4 are distinctive, and 9 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
9
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 36
Version-drift gate: If the user says "latest" / "current" / "today", or the question references a family the local snapshot doesn't have …
- Very specific: line 41
Run
railway --version: when version drift could plausibly matter and the user has a shell. - Very specific: line 83
Run from this skill's content directory after a railway upgrade:
- Very specific: line 104
Do not treat railway deploy and railway up as synonyms.
- Very specific: line 105
Do not treat railway delete and railway unlink as synonyms.
- Very specific: line 106
Do not treat railway redeploy and railway restart as synonyms.
- Very specific: line 107
Do not treat railway connect and railway ssh as synonyms.
- Distinctive: line 108
Do not present upstream-only commands as locally available without saying so explicitly.
- Distinctive: line 109
Do not default to dashboard instructions when the user asked about the CLI.
- Distinctive: line 110
Do not let upstream runbooks override the local extracted CLI when the question is about the installed binary's exact surface.
- Very specific: line 111
Do not trust the linked directory over an explicit dashboard URL or explicit --project / --environment / --service flags.
- Distinctive: line 112
Do not mutate Railway resources unless the user explicitly asked for an operational action.
- Very specific: line 113
Do not author Makefile deploy targets here — that is init-makefiles.
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
run-railway
Drive the installed railway CLI from evidence, not memory. This skill is the routing layer: it picks the right reference, the right command, and the right scope (local binary vs upstream docs) for every Railway question an agent runs into during ongoing platform operations.
Use this skill when
- the user types or pastes a literal
railway <subcommand>and wants the right flags, aliases, or nested forms - the job is choosing between near-twin commands —
upvsdeploy,redeployvsrestart,deletevsunlink,connectvsssh,runvsshellvsdev - the user is reading logs, checking deploy status, scaling a service, editing variables, attaching a domain, or opening a DB shell against a Railway service
- the user pastes a Railway dashboard URL or asks "which project/service/environment am I linked to?"
- the docs show a Railway command the local binary does not have, or the user says "latest", "current", "today" — version-drift reconciliation
- the question is about Railway functions, volumes, or shell completion output for the installed CLI
- the user wants first-party Railway database analysis (Postgres, MySQL, Redis, Mongo) rooted in CLI access
Do NOT use this skill when
- the job is authoring a
make prod/make deploytarget or a Makefile control plane that wraps Railway commands — useinit-makefilesto generate the scenario-appropriate scaffold; this skill answers what the wrapped commands do, but does not write the Makefile - the work is purely Railway dashboard, GraphQL API, or REST API with no CLI decision to make
- a generic shell, Git, or container-build skill answers the question with no Railway-specific context
- the task is infrastructure architecture planning with no installed
railwaybinary in play
Non-negotiable rules
- Local snapshot is truth for the installed binary. The extracted help under
references/cli/describes what is actually invokable on this machine. - Upstream docs are context, not proof. Newer Railway pages may show commands or families the installed CLI cannot run. Mark scope explicitly.
- Never guess flags, aliases, possible values, or nested subcommands from memory. Route to
references/cli/railway-cli-command-reference.md. - Read-safe by default. This skill is reference-first. Do not run mutating commands (
up,redeploy,restart,down,delete,unlink,variable set,domain add,scale) unless the user explicitly asked for the operational action. - Do not conflate near-twins.
deploy≠up,redeploy≠restart,delete≠unlink,connect≠ssh,run≠shell≠dev. Always disambiguate when the user's wording is ambiguous. - Trust explicit identifiers over the linked directory. A pasted dashboard URL or explicit
--project / --environment / --servicealways wins overcwdlink state. - Version-drift gate. If the user says "latest" / "current" / "today", or the question references a family the local snapshot doesn't have (e.g.
skills,agent,bucket,starship), readreferences/research/version-drift.mdfirst.
Workflow
- Establish scope. Local installed CLI, upstream Railway sources, or both? State it on the first line of every answer.
- Run
railway --versionwhen version drift could plausibly matter and the user has a shell. - Pick the smallest reference set using the splits below. Avoid loading the full command reference unless flags or aliases are needed.
- Answer in the output contract (scope → command → flags → near-neighbor distinction → version-drift note if material).
Decision splits — load-bearing routing
| Need | Read |
up vs deploy, redeploy vs restart, rollback, down | references/cli/deployments-and-releases.md |
link vs init, delete vs unlink, add, open, auth/context, docs, completion, upgrade | references/cli/context-projects-and-linking.md |
run vs shell vs dev, dev configure, dev clean, local var injection | references/cli/local-development-and-shells.md |
status, logs, connect vs ssh, service-level routing | references/cli/observability-and-access.md |
environment, variable, domain, scale, service scale | references/cli/configuration-networking-and-scaling.md |
| Functions or volumes (attach/detach/delete distinctions) | references/cli/functions-and-volumes.md |
| "What Railway command should I use for this job?" (intent-first) | references/cli/common-workflows.md |
| Audit: every local top-level command family is covered | references/cli/command-family-coverage.md |
| Exact flags, aliases, nested subcommands, possible values | references/cli/railway-cli-command-reference.md |
| Raw help wording, examples, or formatting proof | references/cli/railway-cli-live-help-snapshot.md |
| Dashboard URL parsing, resource model, safe preflight | references/upstream/resource-model-and-preflight.md |
| First-party setup runbook (workspace, project, service, template) | references/upstream/operations/setup.md |
First-party deploy runbook (up, redeploy/restart, build config, Railpack, Dockerfile, monorepo) | references/upstream/operations/deploy.md |
| First-party configure runbook (env, variables, domains, networking, config patches) | references/upstream/operations/configure.md |
| First-party operate runbook (status, logs, metrics, health, recovery) | references/upstream/operations/operate.md |
| Official docs endpoints, community search, GraphQL gaps, template discovery | references/upstream/docs-and-api/request.md |
| Railway DB analysis — pick the engine | references/database/analyze-db.md |
| Railway PostgreSQL analysis | references/database/analyze-db-postgres.md |
| Railway MySQL analysis | references/database/analyze-db-mysql.md |
| Railway Redis analysis | references/database/analyze-db-redis.md |
| Railway MongoDB analysis | references/database/analyze-db-mongo.md |
| "Latest"/"current"/"today" or docs show a command the local CLI lacks | references/research/version-drift.md |
Quick triage cues
- "What flags does
railway Xsupport?" →references/cli/railway-cli-command-reference.md - "Show me the exact help text for
railway X" →references/cli/railway-cli-live-help-snapshot.md - "Which Railway command fits this job?" →
references/cli/common-workflows.md - "I pasted a dashboard URL" →
references/upstream/resource-model-and-preflight.md - "The docs show a command I do not have" →
references/research/version-drift.md - "I want Railway's own runbook, not just CLI syntax" → matching file under
references/upstream/operations/
Refresh the local snapshot
Run from this skill's content directory after a railway upgrade:
node scripts/extract-railway-cli-help.mjs
railway --versionThis regenerates references/cli/railway-cli-command-reference.md, references/cli/railway-cli-live-help-snapshot.md, and references/cli/railway-cli-command-tree.json so this skill keeps tracking the installed binary.
Output contract
Return Railway answers in this order unless the user asks for a different shape:
- Scope line —
local installed CLI,upstream Railway sources, orboth. - Best command or routed next step — copy-pasteable when the answer is a command.
- Important flags, aliases, nested subcommands, possible values — only what's relevant.
- Near-neighbor distinction — when the next confusion is one keystroke away.
- Version-drift note — only if it materially changes the answer.
Guardrails
- Do not treat
railway deployandrailway upas synonyms.upships local code;deployprovisions a template. - Do not treat
railway deleteandrailway unlinkas synonyms.deletedestroys the resource;unlinkonly detaches the local link. - Do not treat
railway redeployandrailway restartas synonyms.redeployrebuilds;restartbounces the running container. - Do not treat
railway connectandrailway sshas synonyms.connectopens a DB shell;sshopens a service shell. - Do not present upstream-only commands as locally available without saying so explicitly.
- Do not default to dashboard instructions when the user asked about the CLI.
- Do not let upstream runbooks override the local extracted CLI when the question is about the installed binary's exact surface.
- Do not trust the linked directory over an explicit dashboard URL or explicit
--project / --environment / --serviceflags. - Do not mutate Railway resources unless the user explicitly asked for an operational action.
- Do not author Makefile deploy targets here — that is
init-makefiles. This skill explains the commands;init-makefileswraps them.
In this repository31 other files it gives its agents.
- AGENTS.mdAGENTS.md
- audit-agentic-cliSkill
- audit-agentic-mcpSkill
- audit-completionSkill
- audit-skill-by-derailmentSkill
- audit-ui-uxSkill
- build-chrome-extensionSkill
- build-cloudflare-access-ssoSkill
- build-cloudflare-email-sendingSkill
- build-kernel-ts-sdkSkill
- build-licenseseat-swiftSkill
- build-mcp-use-serverSkill
- build-raycast-script-commandSkill
- build-skillSkill
- ci-cd-optimizeSkill
- convert-to-natural-writingSkill
- convert-url-to-nextjsSkill
- init-agent-configSkill
- init-makefilesSkill
- mobilerun-controlSkill
- optimize-nextjs-fluiditySkill
- publish-npm-packageSkill
- run-astro-auditSkill
- run-repo-cleanupSkill
- run-ts-cleanupSkill
- test-by-maestroSkill
- test-by-mcpc-cliSkill
- update-agent-configSkill
- use-chatgpt-by-applescriptSkill
- use-cloudflare-tunnelSkill
- use-linear-cliSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

