Railway Templates
SkillSearchThe railway claude skill is a search and deployment skill for Railway's template marketplace. It lets an agent find ready-made service templates and deploy them, so a user can add tools such as Ghost, Strapi, n8n, Minio, or Uptime Kuma without building the setup by hand. For databases like Postgres, Redis, MySQL, or MongoDB, the railway-database skill is the better fit.
Use Railway Templates in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add Railway Templates and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the Railway Templates skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; ahel provides instructions and does not run this skill.
No other account needed.
Have an AI agent that can load skills and reach Railway.
What your AI can do with it
- Search Railway's template marketplace for a use case
- Deploy a chosen template as a service
- Find templates for tools like Ghost, Strapi, and n8n
- Locate templates for Minio and Uptime Kuma
- Point database needs to the railway-database skill
Getting started
- Have an AI agent that can load skills and reach Railway.
- Add the railway-templates skill to that agent's available skills.
- Give the agent a request, such as finding a template for a specific tool or use case.
- Review the templates the agent finds and confirm which one to deploy.
What this skill tells your AI
The instructions your AI receives, as published by davila7/claude-code-templates in cli-tool/components/skills/railway/templates/SKILL.md and read by ahel’s review.
Search and deploy services from Railway's template marketplace.
When to Use
- User asks to "add Postgres", "add Redis", "add a database"
- User asks to "add Ghost", "add Strapi", "add n8n", or any other service
- User wants to find templates for a use case (e.g., "CMS", "storage", "monitoring")
- User asks "what templates are available?"
- User wants to deploy a pre-configured service
Common Template Codes
| Category | Template | Code |
|---|---|---|
| Databases | PostgreSQL | postgres |
| Redis | redis | |
| MySQL | mysql | |
| MongoDB | mongodb | |
| CMS | Ghost | ghost |
| Strapi | strapi | |
| Storage | Minio | minio |
| Automation | n8n | n8n |
| Monitoring | Uptime Kuma | uptime-kuma |
For other templates, use the search query below.
Prerequisites
Get project context:
railway status --json
Extract:
id- project IDenvironments.edges[0].node.id- environment ID
Get workspace ID:
bash <<'SCRIPT'
${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh \
'query getWorkspace($projectId: String!) {
project(id: $projectId) { workspaceId }
}' \
'{"projectId": "PROJECT_ID"}'
SCRIPT
Search Templates
List available templates with optional filters:
bash <<'SCRIPT'
${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh \
'query templates($first: Int, $verified: Boolean) {
templates(first: $first, verified: $verified) {
edges {
node {
name
code
description
category
}
}
}
}' \
'{"first": 20, "verified": true}'
SCRIPT
Arguments
| Argument | Type | Description |
|---|---|---|
first | Int | Number of results (max ~100) |
verified | Boolean | Only verified templates |
recommended | Boolean | Only recommended templates |
Rate Limit
10 requests per minute. Don't spam searches.
Get Template Details
Fetch a specific template by code:
bash <<'SCRIPT'
${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh \
'query template($code: String!) {
template(code: $code) {
id
name
description
serializedConfig
}
}' \
'{"code": "postgres"}'
SCRIPT
Returns:
id- template ID (needed for deployment)serializedConfig- service configuration (needed for deployment)
Deploy Template
Step 1: Fetch Template
bash <<'SCRIPT'
${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh \
'query template($code: String!) {
template(code: $code) {
id
serializedConfig
}
}' \
'{"code": "postgres"}'
SCRIPT
Step 2: Deploy to Project
bash <<'SCRIPT'
${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh \
'mutation deployTemplate($input: TemplateDeployV2Input!) {
templateDeployV2(input: $input) {
projectId
workflowId
}
}' \
'{
"input": {
"templateId": "TEMPLATE_ID_FROM_STEP_1",
"serializedConfig": SERIALIZED_CONFIG_FROM_STEP_1,
"projectId": "PROJECT_ID",
"environmentId": "ENVIRONMENT_ID",
"workspaceId": "WORKSPACE_ID"
}
}'
SCRIPT
Important: serializedConfig is the exact JSON object from the template query, not a string.
Composability
- Connect services: Use railway-environment skill to add variable references
- View deployed service: Use railway-service skill
- Check logs: Use railway-deployment skill
- Add domains: Use railway-domain skill
Signals
- GitHub stars
- 32k
- Forks
- 4k
- Last commit
- Oct 2026
Questions
- What kinds of services can it deploy from templates?
- Templates for tools such as Ghost, Strapi, n8n, Minio, and Uptime Kuma, plus other services in Railway's template marketplace.
- Does it handle databases like Postgres or Redis?
- No. For databases such as Postgres, Redis, MySQL, or MongoDB, use the railway-database skill instead.
- Can it search templates for a specific use case?
- Yes. It searches Railway's template marketplace so the agent can find templates that match the use case described.
- Does it deploy the template after finding it?
- Yes. It can deploy a service from a template once the template has been chosen.
Advanced
- Item type
- skill
- Key
railway-templates- Source
- github.com/davila7/claude-code-templates
github.com/davila7/claude-code-templates