projects
List, switch, and configure Railway projects with CLI commands and GraphQL mutations.
- List all projects and workspaces, or switch between projects using
railway linkand project IDs - Rename projects, enable/disable PR deploys, toggle public/private visibility, and configure bot PR environments via GraphQL mutations
- Extract project IDs from
railway status --jsonto use in update operations - Composable with
status,new, andenvironmentskills for viewing details, creating projects, and managing environments
Project Management
List, switch, and configure Railway projects.
When to Use
- User asks "show me all my projects" or "what projects do I have"
- User asks about projects across workspaces
- User asks "what workspaces do I have"
- User wants to switch to a different project
- User asks to rename a project
- User wants to enable/disable PR deploys
- User wants to make a project public or private
- User asks about project settings
List Projects
The railway list --json output can be very large. Run in a subagent and return only essential fields:
- Project:
id,name - Workspace:
id,name - Services:
name(optional, if user needs service context)
railway list --json
Extract and return a simplified summary, not the full JSON.
List Workspaces
railway whoami --json
Returns user info including all workspaces the user belongs to.
Switch Project
Link a different project to the current directory:
railway link -p <project-id-or-name>
Or interactively:
railway link
After switching, use status skill to see project details.
Update Project
Modify project settings via GraphQL API.
Get Project ID
railway status --json
Extract project.id from the response.
Update Mutation
bash <<'SCRIPT'
scripts/railway-api.sh \
'mutation updateProject($id: String!, $input: ProjectUpdateInput!) {
projectUpdate(id: $id, input: $input) { name prDeploys isPublic botPrEnvironments }
}' \
'{"id": "PROJECT_ID", "input": {"name": "new-name"}}'
SCRIPT
ProjectUpdateInput Fields
| Field | Type | Description |
|---|---|---|
name |
String | Project name |
description |
String | Project description |
isPublic |
Boolean | Make project public/private |
prDeploys |
Boolean | Enable/disable PR deploys |
botPrEnvironments |
Boolean | Enable Dependabot/Renovate PR environments |
Examples
Rename project:
scripts/railway-api.sh '<mutation>' '{"id": "uuid", "input": {"name": "new-name"}}'
Enable PR deploys:
scripts/railway-api.sh '<mutation>' '{"id": "uuid", "input": {"prDeploys": true}}'
Make project public:
scripts/railway-api.sh '<mutation>' '{"id": "uuid", "input": {"isPublic": true}}'
Multiple fields:
scripts/railway-api.sh '<mutation>' '{"id": "uuid", "input": {"name": "new-name", "prDeploys": true}}'
Composability
- View project details: Use
statusskill - Create new project: Use
newskill - Manage environments: Use
environmentskill
Error Handling
Not Authenticated
Not authenticated. Run `railway login` first.
No Projects
No projects found. Create one with `railway init`.
Permission Denied
You don't have permission to modify this project. Check your Railway role.
Project Not Found
Project "foo" not found. Run `railway list` to see available projects.
More from railwayapp/railway-skills
use-railway
>
3.5Kservice
This skill should be used when the user asks about service status, wants to rename a service, change service icons, link services, or create services with Docker images. For creating services with local code, prefer the `new` skill. For GitHub repo sources, use `new` skill to create empty service then `environment` skill to configure source.
1.6Kcentral-station
This skill should be used when the user asks about Central Station threads, community discussions, support questions, feature requests, or wants to search Railway's community knowledge base. Use for queries like "search central station", "find threads about", "what are people asking about", "recent support threads", or "central station topics".
1.5Kstatus
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.
1.5Krailway-docs
This skill should be used when the user asks about Railway features, how Railway works, or shares a docs.railway.com URL. Fetches up-to-date Railway docs to answer accurately.
1.1Kdeployment
This skill should be used when the user wants to manage Railway deployments, view logs, or debug issues. Covers deployment lifecycle (remove, stop, redeploy, restart), deployment visibility (list, status, history), and troubleshooting (logs, errors, failures, crashes, why deploy failed). NOT for deleting services - use environment skill with isDeleted for that.
1.0K