mcpField
R
railway-templates

railway-templates

github.com/davila7云与 DevOps33.0k279 次安装1 天前更新
代码仓库

关于 railway-templates

railway-templates 是用于搜索和部署 Railway 模板市场服务的 skill,面向管理 Railway 项目的用户。它涵盖模板查询、获取配置及部署到项目的流程。

主要功能

  1. 01按条件搜索模板
  2. 02按代码获取模板配置
  3. 03将模板部署到 Railway 项目
  4. 04使用常见服务的模板代码

适用场景

  1. 01查找数据库或服务模板
  2. 02部署前查看模板信息
  3. 03部署预配置服务

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/davila7/claude-code-templates --skill railway-templates

安装后在 Claude Code 中输入/railway-templates确认已加载。

详细介绍

Railway 模板

在 Railway 的模板市场中搜索并部署服务。

适用场景

  • 用户要求“添加 Postgres”“添加 Redis”或“添加数据库”
  • 用户要求“添加 Ghost”“添加 Strapi”“添加 n8n”或其他服务
  • 用户想查找特定用途的模板(例如“CMS”“存储”“监控”)
  • 用户询问“有哪些可用模板?”
  • 用户想部署预配置的服务

常见模板代码

类别模板代码
数据库PostgreSQLpostgres
Redisredis
MySQLmysql
MongoDBmongodb
CMSGhostghost
Strapistrapi
存储Miniominio
自动化n8nn8n
监控Uptime Kumauptime-kuma

其他模板请使用下方的搜索查询。

前置条件

获取项目上下文:

railway status --json

提取:

  • id - 项目 ID
  • environments.edges[0].node.id - 环境 ID

获取工作区 ID:

bash <<'SCRIPT'
${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh \
  'query getWorkspace($projectId: String!) {
    project(id: $projectId) { workspaceId }
  }' \
  '{"projectId": "PROJECT_ID"}'
SCRIPT

搜索模板

使用可选筛选条件列出可用模板:

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
参数
参数类型说明
firstInt结果数量(最多约 100 个)
verifiedBoolean仅显示已验证的模板
recommendedBoolean仅显示推荐的模板
速率限制

每分钟 10 次请求。请勿频繁搜索。

获取模板详情

通过代码获取指定模板:

bash <<'SCRIPT'
${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh \
  'query template($code: String!) {
    template(code: $code) {
      id
      name
      description
      serializedConfig
    }
  }' \
  '{"code": "postgres"}'
SCRIPT

返回:

  • id - 模板 ID(部署时需要)
  • serializedConfig - 服务配置(部署时需要)

部署模板

步骤 1:获取模板
bash <<'SCRIPT'
${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh \
  'query template($code: String!) {
    template(code: $code) {
      id
      serializedConfig
    }
  }' \
  '{"code": "postgres"}'
SCRIPT
步骤 2:部署到项目
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

重要: serializedConfig 是模板查询返回的确切 JSON 对象,而不是字符串。

组合使用

  • 连接服务:使用 railway-environment 技能添加变量引用
  • 查看已部署的服务:使用 railway-service 技能
  • 查看日志:使用 railway-deployment 技能
  • 添加域名:使用 railway-domain 技能

评论

支持 Markdown