بنقرة واحدة
railway
Manage Railway projects, services, deployments, variables, domains and volumes via GraphQL API
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Manage Railway projects, services, deployments, variables, domains and volumes via GraphQL API
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Manage Cloudflare zones, DNS records, Workers, Pages and cache via API
Manage Cloudinary media assets, transformations and upload via REST API
Monitor infrastructure, query metrics, manage monitors and events via Datadog API
Manage DigitalOcean droplets, domains, databases, apps and volumes via API v2
Manage Firebase projects, Firestore, Auth users and Hosting via REST API
Manage Intercom conversations, contacts, articles and help center via REST API
| name | railway |
| description | Manage Railway projects, services, deployments, variables, domains and volumes via GraphQL API |
| user-invocable | true |
| argument-hint | ["project name or service"] |
Connect to Railway to manage projects, services, deployments, environment variables, domains, volumes and more. Pure Ruby, zero gems — stdlib only.
scripts/
├── auth.rb # Bearer token auth + railway_query helper (required by all scripts)
├── check_setup.rb # Check if token exists (outputs OK or SETUP_NEEDED)
├── save_token.rb # Save and validate an API token
├── projects.rb # List all projects
├── project.rb # Get project details with services and environments
├── create_project.rb # Create a project
├── delete_project.rb # Delete a project
├── services.rb # List services in a project (via project query)
├── service.rb # Get service details and config for an environment
├── create_service.rb # Create a service (GitHub repo, Docker image, or empty)
├── delete_service.rb # Delete a service
├── deployments.rb # List deployments for a service
├── deployment.rb # Get deployment details
├── deploy.rb # Trigger a deployment
├── redeploy.rb # Redeploy a deployment
├── rollback.rb # Rollback a deployment
├── stop_deployment.rb # Stop a deployment
├── logs.rb # Get build or runtime logs for a deployment
├── environments.rb # List environments in a project
├── create_environment.rb # Create an environment
├── delete_environment.rb # Delete an environment
├── variables.rb # List variables for a service/environment
├── set_variable.rb # Set or update a variable
├── delete_variable.rb # Delete a variable
├── domains.rb # List domains for a service
├── create_domain.rb # Create a Railway service domain
├── create_custom_domain.rb # Add a custom domain
├── delete_domain.rb # Delete a domain
├── volumes.rb # List volumes in a project
├── create_volume.rb # Create a volume
├── delete_volume.rb # Delete a volume
└── regions.rb # List available deployment regions
ruby ~/.claude/skills/railway/scripts/check_setup.rb
If the output is OK, proceed to the Flow section.
If the output is SETUP_NEEDED, guide the user step by step. Present ONE step at a time, wait for the user to confirm before moving to the next.
Step 1 — Ask the user to create an API token:
You need a Railway API token.
- Go to https://railway.com/account/tokens
- Click Create Token
- Give it a name (e.g. "hitank") and choose the scope
- Copy the token
Paste the token here.
Step 2 — When the user pastes the token, save it:
ruby ~/.claude/skills/railway/scripts/save_token.rb 'PASTED_TOKEN'
If the script outputs an error, the token is invalid. Ask the user to double-check and try again.
If setup is not complete, DO NOT proceed to the Flow. Complete all steps first.
The argument $ARGUMENTS may contain a project name or service reference.
ruby ~/.claude/skills/railway/scripts/projects.rb
Present the projects. If $ARGUMENTS matches a project name, use it. Otherwise ask which project to work with.
ruby ~/.claude/skills/railway/scripts/project.rb PROJECT_ID
Present the project with its services and environments. Ask what the user wants to do.
List services (included in project details):
ruby ~/.claude/skills/railway/scripts/services.rb PROJECT_ID
Get service details:
ruby ~/.claude/skills/railway/scripts/service.rb SERVICE_ID ENVIRONMENT_ID
Create a service (requires user confirmation):
ruby ~/.claude/skills/railway/scripts/create_service.rb PROJECT_ID "Service Name"
ruby ~/.claude/skills/railway/scripts/create_service.rb PROJECT_ID "Service Name" --repo "user/repo" --branch "main"
ruby ~/.claude/skills/railway/scripts/create_service.rb PROJECT_ID "Service Name" --image "redis:latest"
Delete a service (requires user confirmation):
Show the service first, then ask: "Do you want to delete this service and all its deployments?" Only execute after a "yes".
ruby ~/.claude/skills/railway/scripts/delete_service.rb SERVICE_ID
List deployments:
ruby ~/.claude/skills/railway/scripts/deployments.rb PROJECT_ID SERVICE_ID ENVIRONMENT_ID
ruby ~/.claude/skills/railway/scripts/deployments.rb PROJECT_ID SERVICE_ID ENVIRONMENT_ID --limit 10
Get deployment details:
ruby ~/.claude/skills/railway/scripts/deployment.rb DEPLOYMENT_ID
Trigger a deployment (requires user confirmation):
ruby ~/.claude/skills/railway/scripts/deploy.rb SERVICE_ID ENVIRONMENT_ID
Redeploy (requires user confirmation):
ruby ~/.claude/skills/railway/scripts/redeploy.rb DEPLOYMENT_ID
Rollback (requires user confirmation):
ruby ~/.claude/skills/railway/scripts/rollback.rb DEPLOYMENT_ID
Stop a deployment (requires user confirmation):
ruby ~/.claude/skills/railway/scripts/stop_deployment.rb DEPLOYMENT_ID
Get logs:
ruby ~/.claude/skills/railway/scripts/logs.rb DEPLOYMENT_ID
ruby ~/.claude/skills/railway/scripts/logs.rb DEPLOYMENT_ID --type build --limit 200
ruby ~/.claude/skills/railway/scripts/logs.rb DEPLOYMENT_ID --type runtime --limit 100
List environments:
ruby ~/.claude/skills/railway/scripts/environments.rb PROJECT_ID
Create an environment (requires user confirmation):
ruby ~/.claude/skills/railway/scripts/create_environment.rb PROJECT_ID "staging"
ruby ~/.claude/skills/railway/scripts/create_environment.rb PROJECT_ID "preview" --ephemeral
Delete an environment (requires user confirmation):
ruby ~/.claude/skills/railway/scripts/delete_environment.rb ENVIRONMENT_ID
List variables:
ruby ~/.claude/skills/railway/scripts/variables.rb PROJECT_ID ENVIRONMENT_ID SERVICE_ID
Set a variable (requires user confirmation):
ruby ~/.claude/skills/railway/scripts/set_variable.rb PROJECT_ID ENVIRONMENT_ID SERVICE_ID "KEY" "VALUE"
Delete a variable (requires user confirmation):
ruby ~/.claude/skills/railway/scripts/delete_variable.rb PROJECT_ID ENVIRONMENT_ID SERVICE_ID "KEY"
List domains:
ruby ~/.claude/skills/railway/scripts/domains.rb PROJECT_ID ENVIRONMENT_ID SERVICE_ID
Create a Railway domain (requires user confirmation):
ruby ~/.claude/skills/railway/scripts/create_domain.rb SERVICE_ID ENVIRONMENT_ID
ruby ~/.claude/skills/railway/scripts/create_domain.rb SERVICE_ID ENVIRONMENT_ID --port 8080
Add a custom domain (requires user confirmation):
ruby ~/.claude/skills/railway/scripts/create_custom_domain.rb SERVICE_ID ENVIRONMENT_ID "app.example.com"
Delete a domain (requires user confirmation):
ruby ~/.claude/skills/railway/scripts/delete_domain.rb DOMAIN_ID --type service
ruby ~/.claude/skills/railway/scripts/delete_domain.rb DOMAIN_ID --type custom
List volumes:
ruby ~/.claude/skills/railway/scripts/volumes.rb PROJECT_ID
Create a volume (requires user confirmation):
ruby ~/.claude/skills/railway/scripts/create_volume.rb PROJECT_ID SERVICE_ID ENVIRONMENT_ID --path "/data"
Delete a volume (requires user confirmation):
ruby ~/.claude/skills/railway/scripts/delete_volume.rb VOLUME_ID
List available regions:
ruby ~/.claude/skills/railway/scripts/regions.rb
Authorization: Bearer TOKEN)~/.config/railway/token (outside the repo, never commit)https://backboard.railway.com/graphql/v2