[ PROMPT_NODE_26142 ]
railway-new
[ SKILL_DOCUMENTATION ]
# 新项目 / 服务 / 数据库
创建 Railway 项目、服务和数据库并进行正确配置。
## 何时使用
- 用户说“部署到 Railway”(如果已链接则添加服务,未链接则初始化)
- 用户说“创建一个 Railway 项目”、“初始化”、“新项目”(显式创建新项目)
- 用户说“链接到 Railway”、“连接到 Railway”
- 用户说“创建一个服务”、“添加后端”、“新 API 服务”
- 用户说“创建一个 Vite 应用”、“创建一个 React 网站”、“制作一个 Python API”
- 用户说“从 github.com/user/repo 部署”、“从该仓库创建服务”
- 用户说“添加 Postgres”、“添加数据库”、“添加 Redis”、“添加 MySQL”、“添加 Mongo”
- 用户说“连接到 Postgres”、“连接数据库”、“将我的 API 连接到 Redis”
- 用户说“添加 Postgres 并连接到服务器”
- 同时设置代码 + Railway 服务
## 前置条件
检查 CLI 是否安装:
bash
command -v railway
如果未安装:
> 安装 Railway CLI:
>
>
> npm install -g @railway/cli
>
>
> 或
>
>
> brew install railway
>
检查是否已认证:
bash
railway whoami --json
如果未认证:
> 运行 `railway login` 进行认证。
## 决策流程
railway status --json (在当前目录)
│
┌────┴────┐
已链接 未链接
│ │
│ 检查父目录: cd .. && railway status --json
│ │
│ ┌────┴────┐
│ 父目录 未链接
│ 已链接 任何地方
│ │ │
│ 添加服务 railway list
│ 设置根目录 │
│ 部署 ┌───┴───┐
│ │ 匹配? 不匹配
│ │ │ │
│ │ 链接 初始化新项目
└───────┴────────┴────────┘
│
用户想要服务?
│
┌─────┴─────┐
是 否
│ │
脚手架代码 完成
│
railway add --service
│
按需配置
│
准备部署
## 检查当前状态
bash
railway status --json
- **如果已链接**:向现有项目添加服务(见下文)
- **如果未链接**:检查父目录是否已链接(见下文)
### 当已链接时
**默认行为**:“部署到 Railway” = 向已链接的项目添加服务。
除非用户明确说以下内容,否则不要创建新项目:
- “新项目”、“创建一个项目”、“初始化一个项目”
- “独立项目”、“不同项目”
像“flappy-bird”或“my-api”这样的应用名称是服务名称,而不是项目名称。
用户: “创建一个名为 foo 的 Vite 应用并部署到 Railway”
项目: 已链接