stripe-projects について
stripe-projectsは、Stripe CLI Projectsプラグインで外部サービスをプロビジョニングし、プロジェクトの認証情報を管理するスキルです。カタログ検索、初期化チェック、CLIによる状態管理を開発者向けに案内します。
主な機能
- 01サービスカタログの検索と閲覧
- 02プロジェクト状態の確認と初期化前チェック
- 03サービス追加後にstripe-projects-cliへ引き継ぎ
- 04プロジェクト変数と環境への紐付け管理
- 05CLIでサービス、変数、状態を確認
活用シーン
- 01プロジェクト用データベースやホスティングの準備
- 02カタログから利用可能なサービスを検索
- 03アプリURLや機能フラグなどの変数設定
- 04プロビジョニング済みサービスや変数名の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ fcakyon/ claude-codex-settings --skill stripe-projectsインストール後、Claude Code で/stripe-projectsを入力して読み込まれたか確認します。
詳細
Stripe Projects — サービスのプロビジョニング
Stripe Projects CLI プラグインを使用して、サードパーティーサービス(データベース、認証、ホスティング、分析、キャッシュ、AI、可観測性)をプロビジョニングし、API キーやトークンを取得します。
ワークフロー
ステップ 1:Stripe CLI と Projects プラグインを確認する
Stripe CLI が利用可能か確認します。
which stripe && stripe --version
インストールされていない場合、またはバージョンが 1.40.0 未満の場合:
- macOS(Homebrew):
brew install stripe/stripe-cli/stripe(またはbrew upgrade stripe/stripe-cli/stripe) - その他のプラットフォーム: 最新の手順を https://docs.stripe.com/stripe-cli/install で確認するようユーザーに案内します。
次に、Projects プラグインがインストールされていることを確認します。
stripe plugin install projects
ステップ 2:カタログを検索する
リクエストされたプロバイダー/サービスが存在することを確認します。
stripe projects search <query> --json
result_count が 0 の場合は、サービスが見つからなかったことをユーザーに伝えて終了します。
ユーザーのリクエストが曖昧な場合(たとえば「データベースが必要です」)、カタログを参照して選択肢を提案します。
stripe projects catalog --json
ステップ 3:プロジェクトを初期化する
プロジェクトがすでに初期化されているか確認します。
stripe projects status --json
初期化されていない場合は、まずプリフライトチェックを実行し、すべての阻害要因を一度に確認します。
stripe projects init --preflight --json
すべてのプリフライトチェックに合格した場合、または唯一の失敗が TOS_ACCEPTANCE_REQUIRED の場合は、次に進みます。
stripe projects init --accept-tos --yes
いずれかのチェックが BROWSER_AUTH_REQUIRED、PROJECTS_SESSION_UNUSABLE、または ACCOUNT_NOT_ELIGIBLE で失敗した場合は、ここで停止します。そのチェックのメッセージと対処方法をそのままユーザーに伝え、ユーザー自身で解決してもらいます。これらの問題を解消するには、ブラウザーへのサインインまたは Dashboard へのアクセスが必要ですが、こちらでは実行できません。stripe projects init を自分で実行したり、プリフライトを再実行したりしないでください。ブラウザーへのサインインや Dashboard での操作を完了できるのはユーザーだけなので、どちらを実行しても阻害要因は解消されません。
stripe login で解決すると決めつけず、失敗したチェックに表示される対処方法に従ってください。Stripe CLI のセッションがすでに存在する場合、stripe login はすでにログイン済みであることを報告して、何も変更せずに終了コード 0 で終了します。ログインコマンドの終了コードが 0 でも、阻害要因が解消されたことにはなりません。
重要: stripe projects init は、.claude/skills/stripe-projects-cli に stripe-projects-cli スキルをローカルインストールします。このスキルには、初期化後に使用するコマンドのリファレンスがすべて含まれています。
ステップ 4:stripe-projects-cli に引き継ぐ
スキルがインストールされていることを確認します。
test -f .claude/skills/stripe-projects-cli/SKILL.md && echo "OK" || echo "MISSING"
MISSING の場合は、stripe projects init --accept-tos --yes を1 回だけ再実行します。スキルは Projects プラグインに同梱されており、初期化時にインストールされます。その 1 回の再試行後もファイルが見つからない場合、または初期化が 0 以外の終了コードで終了した場合は、初期化のエラーメッセージをユーザーに伝えて終了します。初期化を繰り返し実行しないでください。
OK の場合は、ローカルにインストールされた stripe-projects-cli スキル(Skill ツールで名前 stripe-projects-cli を指定して呼び出します)を使用して、サービスの追加、認証情報の管理、プロジェクトの設定を行い、ワークフローを続行します。
ステップ 5:要約して提案する
サービスの追加に成功したら、次の形式で出力します。
| 項目 | 値 |
|---|---|
| プロバイダー | <provider name> |
| サービス | <service type> |
| ティア | <tier> |
| 環境変数 | <変数名のみ — 値は記載しない> |
次に、カタログから異なるカテゴリの補完的なサービスを 3~5 個提案します(たとえば、ユーザーがデータベースを追加した場合は、認証、ホスティング、可観測性などを提案します)。stripe projects catalog --json の出力に実際に含まれているサービスのみを参照し、コマンドやプロバイダー名を決して捏造しないでください。
信頼できる情報源としての CLI
CLI は .projects/ 配下のすべての状態を管理し、.env ファイルを生成します。これらのファイルを手動で編集しないでください。プロジェクトの状態を確認する必要がある場合は、該当する CLI コマンドを使用します。
| タスク | コマンド |
|---|---|
| プロビジョニング済みサービスを表示 | stripe projects status --json |
| 環境変数名を一覧表示 | stripe projects env --json |
| プロジェクトの健全性を確認 | stripe projects status --json |
| 利用可能なサービスを参照 | stripe projects catalog --json |
ユーザーから明示的に依頼された場合に限り、.projects/ または .env を直接確認します。CLI が信頼できる情報源であるため、手動での変更は上書きされる可能性があります。
プロジェクト変数
アプリの URL、機能フラグ、セルフマネージドの API キーなど、プロビジョニングされたプロバイダーリソースに由来しない環境変数をユーザーが保存したい場合は、プロジェクト変数を使用します。
アクティブな環境のプロジェクト変数を作成または更新します。
stripe projects variables set <name> --env-key <ENV_KEY> --value <value>
variables set が成功すると、アクティブな環境の出力ファイルがすぐに同期されます。ユーザーが値を指定しない場合は、CLI が安全に入力を求められるよう、対話モードでのみ --value を付けずにコマンドを実行します。応答にシークレット値を表示しないでください。
既存のプロジェクト変数をアクティブな環境にバインドします。
stripe projects env add <name> --variable --env-key <ENV_KEY>
保存された変数を削除せずに、アクティブな環境から変数のバインドを解除します。
stripe projects env remove <name> --variable
プロジェクト変数を一覧表示して削除します。
stripe projects variables list --json
stripe projects variables delete <name> --yes
エラー処理
| エラーコード | 原因 | 解決方法 |
|---|---|---|
BROWSER_AUTH_REQUIRED | Stripe セッションがなく、ブラウザーでのサインインが必要です | ユーザー自身が、ブラウザーでのサインインを完了できるターミナルで stripe projects init を実行するよう伝えてください。これはあなたには解決できません。また、あなたが再実行しても解消されません |
PROJECTS_SESSION_UNUSABLE | Stripe CLI セッションは存在しますが、Projects がそこからライブモードの認証情報を読み取れません | メッセージと解決方法をそのまま報告して停止してください。再試行してはいけません。また、stripe login も実行してはいけません。すでにログイン済みであると報告され、終了コード 0 で終了します |
ACCOUNT_NOT_ELIGIBLE | アカウントで Projects のオンボーディングが完了していません | ユーザーに stripe projects switch-account を実行してアカウントを選択するか、このアカウントのセットアップを続行するよう伝えてください。CLI が表示した解決方法を報告して停止してください |
TOS_ACCEPTANCE_REQUIRED | 開発者またはプロバイダーの規約に同意していません | --accept-tos を付けて再実行します |
PROVIDER_NOT_LINKED | プロバイダーで OAuth の連携が必要です | stripe projects link <provider> を実行します。ブラウザーが開く場合があります |
PLAN_REQUIRED | デプロイ可能な項目に、事前にプロビジョニングされたプランが必要です | エラーに記載されたプランをプロビジョニングしてから、再試行します |
UNKNOWN_ERROR | 想定外の失敗です | エラーメッセージ全体をユーザーに表示し、診断のために --debug を付けて実行するよう提案します |
| カタログにサービスがありません | クエリの結果が 0 件でした | ユーザーに知らせ、代替候補を確認するために stripe projects catalog --json を提案します |
| CLI が見つかりません | Stripe CLI がインストールされていません | Homebrew(macOS)を使ってインストールするか、https://docs.stripe.com/stripe-cli/install に従ってください |