mcpField
D
doppler-workflows

doppler-workflows

github.com/terrylicaセキュリティ1128 回インストール今日更新
リポジトリ

doppler-workflows について

doppler-workflowsは、Doppler CLIで複数サービスの認証情報を注入・管理するスキルです。Pythonパッケージの公開、AWSキーのローテーション、複数アカウント運用、認証エラーの調査を扱います。

主な機能

  1. 01Doppler CLIによる認証情報の注入
  2. 02PythonパッケージのPyPI公開
  3. 03AWSアクセスキーのローテーション
  4. 04複数サービスの認証情報管理
  5. 05認証エラーのトラブルシューティング

活用シーン

  1. 01認証情報を注入してPyPI公開コマンドを実行
  2. 02AWSキーをローテーションしてDopplerを更新
  3. 03403や無効なAWSトークンを調査
  4. 04プロジェクトディレクトリをDoppler設定に紐付け

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/terrylica/cc-skills --skill doppler-workflows

インストール後、Claude Code で/doppler-workflowsを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

AWS_SPECIFICATION.yaml
AWS_WORKFLOW.md
PYPI_REFERENCE.yaml
references/
aws-credentials.md
evolution-log.md
multi-service-patterns.md
pypi-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'

ベストプラクティス

  1. 認証情報の注入には必ず --command フラグを使用します
  2. セキュリティを強化するため、プロジェクトスコープのトークン(PyPI)を使用します
  3. 認証情報を定期的にローテーションします(推奨間隔は90日です)
  4. Doppler のノートで記録します:doppler secrets notes set <SECRET> "<note>"
  5. シークレットの保存には標準入力を使用します:echo -n 'secret' | doppler secrets set
  6. 使用前に注入をテストします:echo ${#VAR} で長さを確認します
  7. 複数トークンの命名には、わかりやすい SERVICE_TOKEN_{ABBREV} を使用します

リファレンスドキュメント

詳細については、以下を参照してください。

同梱仕様:

  • 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

実行後の振り返り

このスキルの実行後、終了する前に確認してください。

  1. コマンドは成功しましたか? — 成功しなかった場合は、失敗の原因となった指示またはエラーテーブルを修正してください。
  2. パラメーターや出力に変更はありましたか? — 基盤となるツールのインターフェイスに変更があった場合は、使用例とパラメーターテーブルを更新して一致させてください。
  3. 回避策が必要でしたか? — 即興で対応した場合(異なるフラグや追加手順など)は、次回同じ回避策が不要になるように、この SKILL.md を更新してください。

問題が実際に発生し、再現可能な場合にのみ更新してください。推測に基づいて更新しないでください。

コメント