railway-projects について
railway-projectsは、Railwayユーザー向けのプロジェクト管理スキルです。プロジェクトやワークスペースの一覧表示、切り替え、設定変更をRailway CLIとGraphQL APIで行います。
主な機能
- 01プロジェクトと所属ワークスペースの一覧表示
- 02ワークスペース一覧の確認
- 03アクティブなプロジェクトの切り替え
- 04プロジェクト名と説明の変更
- 05PRデプロイと公開設定の管理
活用シーン
- 01アカウント内のプロジェクトとワークスペースを確認
- 02現在のディレクトリを別のプロジェクトにリンク
- 03プロジェクト名や説明を変更
- 04PRデプロイを有効化、または公開設定を変更
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ davila7/ claude-code-templates --skill railway-projectsインストール後、Claude Code で/railway-projectsを入力して読み込まれたか確認します。
詳細
Railway プロジェクト管理
Railway プロジェクトの一覧表示、切り替え、設定を行います。
使用するタイミング
- ユーザーが「すべてのプロジェクトを見せて」や「どんなプロジェクトがあるか」と尋ねたとき
- ユーザーがワークスペースをまたいだプロジェクトについて尋ねたとき
- ユーザーが「どんなワークスペースがあるか」と尋ねたとき
- ユーザーが別のプロジェクトに切り替えたいとき
- ユーザーがプロジェクト名を変更したいとき
- ユーザーが PR デプロイを有効化/無効化したいとき
- ユーザーがプロジェクトを公開または非公開にしたいとき
- ユーザーがプロジェクト設定について尋ねたとき
プロジェクトの一覧表示
railway list --json の出力は非常に大きくなる場合があります。サブエージェントで実行し、必要な主要フィールドのみを返してください:
- プロジェクト:
id、name - ワークスペース:
id、name - サービス:
name(ユーザーがサービスのコンテキストを必要とする場合のみ、任意)
railway list --json
完全な JSON ではなく、簡略化された要約を抽出して返してください。
ワークスペースの一覧表示
railway whoami --json
ユーザーが所属するすべてのワークスペースを含むユーザー情報を返します。
プロジェクトの切り替え
現在のディレクトリに別のプロジェクトをリンクします:
railway link -p <project-id-or-name>
または対話形式で行います:
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 スキルを使用
エラー処理
未認証
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.
コメント
Markdown 対応