名称: railway-projects 描述: 列出、切换和配置Railway项目。当用户想要列出所有项目、切换项目、重命名项目、启用/禁用PR部署、使项目公开/私有或修改项目设置时使用。 版本: 1.0.0 作者: Railway 许可证: MIT 标签: [Railway, 项目, 工作空间, 管理, 设置, 基础设施] 依赖项: [railway-cli] 允许工具: Bash(railway:*)
Railway 项目管理
列出、切换和配置Railway项目。
何时使用
- 用户询问“显示我所有的项目”或“我有什么项目”
- 用户询问跨工作空间的项目
- 用户询问“我有什么工作空间”
- 用户想要切换到不同的项目
- 用户要求重命名项目
- 用户想要启用/禁用PR部署
- 用户想要使项目公开或私有
- 用户询问项目设置
列出项目
railway list --json 输出可能非常庞大。在子代理中运行并仅返回基本字段:
- 项目:
id、name - 工作空间:
id、name - 服务:
name(可选,如果用户需要服务上下文)
railway list --json
提取并返回简化摘要,而非完整JSON。
列出工作空间
railway whoami --json
返回用户信息,包括用户所属的所有工作空间。
切换项目
将不同项目链接到当前目录:
railway link -p <项目-id-或-名称>
或交互式:
railway link
切换后,使用railway-status技能查看项目详情。
更新项目
通过GraphQL API修改项目设置。
获取项目ID
railway status --json
从响应中提取 project.id。
更新突变
bash <<'SCRIPT'
${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"}}'
SCRIPT
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}}'
可组合性
- 查看项目详情:使用railway-status技能
- 创建新项目:使用railway-new技能
- 管理环境:使用railway-environment技能
错误处理
未认证
未认证。请先运行 `railway login`。
无项目
未找到项目。使用 `railway init` 创建一个。
权限被拒绝
您没有权限修改此项目。检查您的Railway角色。
项目未找到
项目“foo”未找到。运行 `railway list` 查看可用项目。