doppler-workflows について
doppler-workflowsは、Doppler CLIで複数サービスの認証情報を注入・管理するスキルです。Pythonパッケージの公開、AWSキーのローテーション、複数アカウント運用、認証エラーの調査を扱います。
主な機能
- 01Doppler CLIによる認証情報の注入
- 02PythonパッケージのPyPI公開
- 03AWSアクセスキーのローテーション
- 04複数サービスの認証情報管理
- 05認証エラーのトラブルシューティング
活用シーン
- 01認証情報を注入してPyPI公開コマンドを実行
- 02AWSキーをローテーションしてDopplerを更新
- 03403や無効なAWSトークンを調査
- 04プロジェクトディレクトリをDoppler設定に紐付け
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ terrylica/ cc-skills --skill doppler-workflowsインストール後、Claude Code で/doppler-workflowsを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
AWS_SPECIFICATION.yamlAWS_WORKFLOW.mdPYPI_REFERENCE.yamlreferences/aws-credentials.mdevolution-log.mdmulti-service-patterns.mdpypi-publishing.md詳細
Doppler 認証情報のワークフロー
自己進化型スキル:このスキルは使用するたびに改善されます。手順に誤りがある、パラメーターが変わった、または回避策が必要だった場合は、先送りせず、すぐにこのファイルを修正してください。更新するのは、実際に再現可能な問題がある場合に限ります。
このスキルを使用するタイミング
以下の場合にこのスキルを使用してください。
- Python パッケージを PyPI に公開するとき
- AWS アクセスキーをローテーションするとき
- 複数のサービスにわたる認証情報を管理するとき
- 認証の失敗(403、InvalidClientTokenId)をトラブルシューティングするとき
- Doppler による認証情報の注入パターンを設定するとき
- 複数トークン/複数アカウントの戦略を実施するとき
クイックリファレンス
基本パターン:Doppler CLI
標準的な使い方:
doppler run --project <project> --config <config> --command='<command>'
--command フラグを使用する理由:
- Doppler の公式パターンです(シェルを自動検出します)
- Doppler が変数を注入した後に展開されるようにします
- このフラグがない場合:Doppler の実行前にシェルが
$VARを展開するため、空の文字列になります
クイックスタートの例
PyPI への公開
doppler run --project private-config --config dev \
--command='uv publish --token "$PYPI_TOKEN"'
AWS の操作
doppler run --project aws-credentials --config dev \
--command='aws s3 ls --region $AWS_DEFAULT_REGION'
ベストプラクティス
- 認証情報の注入には必ず --command フラグを使用します
- セキュリティを強化するため、プロジェクトスコープのトークン(PyPI)を使用します
- 認証情報を定期的にローテーションします(推奨間隔は90日です)
- Doppler のノートで記録します:
doppler secrets notes set <SECRET> "<note>" - シークレットの保存には標準入力を使用します:
echo -n 'secret' | doppler secrets set - 使用前に注入をテストします:
echo ${#VAR}で長さを確認します - 複数トークンの命名には、わかりやすい
SERVICE_TOKEN_{ABBREV}を使用します
リファレンスドキュメント
詳細については、以下を参照してください。
- PyPI への公開 - トークンの設定、公開、トラブルシューティング
- AWS 認証情報 - ローテーションのワークフロー、設定、トラブルシューティング
- 複数サービスのパターン - 複数の PyPI パッケージ、複数の AWS アカウント
- AWS ワークフロー - AWS 認証情報管理の完全ガイド
同梱仕様:
PYPI_REFERENCE.yaml- PyPI の完全な仕様AWS_SPECIFICATION.yaml- AWS 認証情報のアーキテクチャ
ローカル開発:ディレクトリ単位の Doppler 設定
ローカル開発では、プロジェクトのディレクトリを Doppler のプロジェクト/設定に一度だけ紐付け、その後は各コマンドを doppler run で実行します。
cd ~/project && doppler setup --project private-config --config prd --no-interactive
doppler run -- COMMAND # secrets such as PYPI_TOKEN exist for this command only
1つのシェル内の複数のコマンドで必要な値は、明示的にエクスポートしてください:export PYPI_TOKEN="$(doppler secrets get PYPI_TOKEN --plain)"。
GitHub トークンをこの方法で注入しないでください(ADR 2026-06-21)。 GitHub の複数アカウント認証は、リポジトリの
originに設定されたホストエイリアス([email protected]<account>:…)によって制御されます。トークンはリポジトリごとに~/.claude/tools/bin/gh-token-for-repoで最新のものが解決されます。環境に設定されたGH_TOKENは分離された gh プロファイルより優先され、ローテーション後に 401 エラーが発生します。.secrets/gh-token-*ファイルは削除されます。
PyPI 公開ポリシー
PyPI への公開については、ローカルのみのワークスペースポリシーを定めた pypi-doppler スキルを参照してください。
PyPI の公開を GitHub Actions や CI/CD パイプラインに設定しないでください。
トラブルシューティング
| 問題 | 原因 | 解決策 |
|---|---|---|
| PyPI への公開時に 403 | トークンの期限切れ、またはスコープの誤り | プロジェクトスコープのトークンを再生成し、Doppler で更新します |
| InvalidClientTokenId (AWS) | アクセスキーがローテーションまたは削除された | AWS キーローテーションのワークフローを実行し、Doppler で更新します |
| 変数が空に展開される | --command を使わずに $VAR を使用している | 常に --command='...$VAR...' の形式を使用します |
| Doppler CLI が見つからない | インストールされていない | brew install dopplerhq/cli/doppler |
| 誤った設定が選択される | プロジェクト/設定が曖昧 | --project と --config の両方を明示的に指定します |
| 誤ったプロジェクトが選ばれる | ディレクトリがバインドされていない、または誤ってバインドされている | doppler configure で確認し、doppler setup を再実行します |
| シークレットの取得が遅い | 呼び出しごとに doppler secrets get を実行している | export VAR="$(doppler secrets get VAR --plain)" を使用して、シェルごとに一度だけ取得します |
| トークンの長さが一致しない | 余分な空白を含めてコピーしている | トークンの空白を削除します:echo -n 'secret' | doppler secrets set |
実行後の振り返り
このスキルの実行後、終了する前に確認してください。
- コマンドは成功しましたか? — 成功しなかった場合は、失敗の原因となった指示またはエラーテーブルを修正してください。
- パラメーターや出力に変更はありましたか? — 基盤となるツールのインターフェイスに変更があった場合は、使用例とパラメーターテーブルを更新して一致させてください。
- 回避策が必要でしたか? — 即興で対応した場合(異なるフラグや追加手順など)は、次回同じ回避策が不要になるように、この SKILL.md を更新してください。
問題が実際に発生し、再現可能な場合にのみ更新してください。推測に基づいて更新しないでください。