SuperAPI AI 工具集

railway-projects

部署与运维

查看项目

更新于 10-15 12:34

技能介绍

用途

railway-projects 是一个 Railway 项目管理技能,用于列出、切换和配置 Railway 项目。它适合需要查看或调整 Railway 项目设置的用户,覆盖跨工作区查看项目、切换当前目录关联项目、重命名项目、控制 PR 部署、设置项目公开或私有等操作。

主要能力

  • 列出项目:运行 railway list --json。由于输出可能非常大,建议在子代理中运行并只返回关键字段。可保留的字段包括项目 id、name,工作区 id、name,以及可选的 services name。
  • 列出工作区:运行 railway whoami --json,返回用户信息,包括用户所属的所有工作区。
  • 切换项目:使用 railway link -p <project-id-or-name> 将其他项目关联到当前目录;也可交互式运行 railway link。切换后可使用 railway-status 技能查看项目详情。
  • 更新项目:通过 GraphQL API 修改项目设置。

使用方式

获取项目 ID:运行 railway status --json,从响应中提取 project.id。

更新项目使用如下 mutation:

${CLAUDE_PLUGIN_ROOT}/skills/lib/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"}}'

ProjectUpdateInput 可用字段包括:

字段 类型 说明
name String 项目名称
description String 项目描述
isPublic Boolean 将项目设为公开或私有
prDeploys Boolean 启用或禁用 PR 部署
botPrEnvironments Boolean 启用 Dependabot/Renovate PR 环境

示例:

重命名项目:

${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh '<mutation>' '{"id": "uuid", "input": {"name": "new-name"}}'

启用 PR 部署:

${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh '<mutation>' '{"id": "uuid", "input": {"prDeploys": true}}'

将项目设为公开:

${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh '<mutation>' '{"id": "uuid", "input": {"isPublic": true}}'

同时修改多个字段:

${CLAUDE_PLUGIN_ROOT}/skills/lib/railway-api.sh '<mutation>' '{"id": "uuid", "input": {"name": "new-name", "prDeploys": true}}'

适用场景

  • 用户要求“显示我的所有项目”或“我有哪些项目”
  • 用户询问跨工作区的项目
  • 用户询问“我有哪些工作区”
  • 用户想切换到其他项目
  • 用户要求重命名项目
  • 用户想启用/禁用 PR 部署
  • 用户想把项目设为公开或私有
  • 用户询问项目设置

组合使用

  • 查看项目详情:使用 railway-status 技能
  • 创建新项目:使用 railway-new 技能
  • 管理环境:使用 railway-environment 技能

限制与错误处理

  • 未认证:提示 Not authenticated. Run railway login first. 需先登录。
  • 无项目:提示 No projects found. Create one with railway init. 需先创建项目。
  • 权限不足:提示 You don't have permission to modify this project. Check your Railway role.
  • 项目不存在:提示 Project "foo" not found. Run railway list to see available projects.

其他具体收费、价格、平台支持等信息暂未提供。