Railway
by @leicao-me
Deploy and manage applications on Railway.app. Use for deploying projects, managing services, viewing logs, setting environment variables, and managing databases. Railway is a modern cloud platform for deploying apps with zero configuration.
clawhub install railway-skillπ About This Skill
name: railway description: Deploy and manage applications on Railway.app. Use for deploying projects, managing services, viewing logs, setting environment variables, and managing databases. Railway is a modern cloud platform for deploying apps with zero configuration. metadata: { "openclaw": { "emoji": "π", "requires": { "bins": ["railway"] }, "install": [ { "id": "brew", "kind": "brew", "formula": "railway", "bins": ["railway"], "label": "Install Railway CLI (brew)", }, { "id": "npm", "kind": "npm", "package": "@railway/cli", "bins": ["railway"], "label": "Install Railway CLI (npm)", }, ], }, }
Railway
Deploy and manage applications on Railway.app - a modern cloud platform with zero-config deployments.
Authentication
# Login (opens browser)
railway loginLogin with token (CI/CD)
railway login --token Check login status
railway whoamiLogout
railway logout
Project Management
Link & Initialize
# Link current directory to existing project
railway linkLink to specific project
railway link --project Create new project
railway initUnlink project
railway unlink
View Projects
# List all projects
railway listOpen project in browser
railway openShow project status
railway status
Deployment
Deploy
# Deploy current directory
railway upDeploy without watching logs
railway up --detachDeploy specific service
railway up --service Deploy to specific environment
railway up --environment productionRedeploy latest version
railway redeployRedeploy specific service
railway redeploy --service
Deploy from Template
# Deploy a template
railway deploy --template With variables
railway deploy --template postgres --variable POSTGRES_USER=myuser
Services
# List services in project
railway serviceCreate new service
railway service createDelete service
railway service delete
Environment Variables
# List all variables
railway variablesSet variable
railway variables set KEY=valueSet multiple variables
railway variables set KEY1=value1 KEY2=value2Delete variable
railway variables delete KEYView specific variable
railway variables get KEY
Logs
# View logs (live)
railway logsView logs for specific service
railway logs --service View recent logs (not live)
railway logs --no-followView logs with timestamps
railway logs --timestamps
Run Commands
# Run command with Railway env vars
railway run Examples
railway run npm start
railway run python manage.py migrate
railway run prisma db pushSSH into running service
railway sshSSH into specific service
railway ssh --service
Domains
# List domains
railway domainAdd custom domain
railway domain add Remove domain
railway domain delete
Databases
Railway supports one-click database provisioning:
# Add PostgreSQL
railway add --plugin postgresqlAdd MySQL
railway add --plugin mysqlAdd Redis
railway add --plugin redisAdd MongoDB
railway add --plugin mongodb
Database connection strings are automatically added to environment variables.
Environments
# List environments
railway environmentSwitch environment
railway environment Create environment
railway environment create Delete environment
railway environment delete
Volumes
# List volumes
railway volumeCreate volume
railway volume create --mount /dataDelete volume
railway volume delete
Common Workflows
Deploy a New Project
# 1. Initialize in your project directory
cd my-app
railway init2. Add a database if needed
railway add --plugin postgresql3. Set environment variables
railway variables set NODE_ENV=production4. Deploy
railway up
Connect to Production Database
# Run local command with production env vars
railway run psql $DATABASE_URLOr use SSH
railway ssh
Then inside container:
psql $DATABASE_URL
View Deployment Status
# Check status
railway statusView logs
railway logsOpen dashboard
railway open
Rollback Deployment
# View deployments in dashboard
railway openRedeploy previous version (via dashboard)
Or redeploy current code
railway redeploy
CI/CD Integration
For GitHub Actions or other CI:
# .github/workflows/deploy.yml
name: Deploy to Railway
on:
push:
branches: [main]jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Railway CLI
run: npm i -g @railway/cli
- name: Deploy
run: railway up --detach
env:
RAILWAY_TOKEN: ${{ secrets.RAILWAY_TOKEN }}