1Password CLI を知っていますか?——コードからシークレットを切り離す、開発者のためのツール
1Password には、エンジニアの日常を変える CLI(コマンドラインインターフェイス)が用意されています。APIキーや接続情報をコードに書かなくて済む。そのしくみを、カジュアルに紹介します。
1Password CLI とは
1Password CLI は、1Password Business に含まれるコマンドラインツールです。ターミナルから 1Password の保管庫にアクセスし、シークレット(APIキー・パスワード・トークン・証明書など)をスクリプトやCI/CDパイプラインから安全に参照できます。
追加費用なし。1Password Business のライセンスがあればそのまま使えます。
一言で言うと
「.env ファイルに書いていたシークレットを、コードから完全に切り離して管理できるツール」です。
よくある課題: .env への直書き問題
多くのチームで、こんな状況が起きていないでしょうか。
- APIキーを .env ファイルに書いて、うっかり Git にコミット
- Slack や Notion にクレデンシャルを貼り付けて共有
- 新メンバーの環境構築のたびに、誰かがシークレットを手渡し
- 退職者が持っていたAPIキーが、どこに使われていたか把握できない
- AIコーディングツール(Claude Code・Cursor 等)を使い始めたら、APIキーの扱いがさらに複雑に
これらはいずれも「シークレットがコードや会話の中に混在している」ことが根本原因です。1Password CLI はその問題を構造的に解決します。
CLIで何ができるか
シークレットをコードから切り離す
環境変数として使いたいシークレットを、1Password の保管庫から直接注入できます。

実際のシークレットはコードに一切残りません。保管庫の参照パスだけが書かれるため、そのまま Git にコミットしても安全です。
チームで統一管理・退職者対応も即完了
シークレットが 1Password の保管庫に集約されるため、新メンバーへの共有は保管庫のアクセス権を付与するだけ。退職時はアクセス権を剥奪するだけで、すべてのシークレットへのアクセスが即時無効化されます。
管理タスクの自動化
ユーザーの追加・削除、保管庫の作成、アクセス権の変更なども CLI からスクリプト化できます。Webhook やCI/CDパイプラインと組み合わせれば、入退社時のプロビジョニングを自動化することも可能です。
サービスアカウントでエージェント・CI対応
特定のユーザーに紐づかないサービスアカウントを作成し、GitHub Actions・CircleCI・Terraform などのCI/CDパイプラインでシークレットを安全に参照できます。
生体認証でCLIにサインイン
1Password CLI のユニークな機能のひとつが、Touch ID・Apple Watch・Linux の生体認証でCLIにサインインできる「Shell Plugin」です。
- ターミナルを開くたびにパスワードを打つ必要がない
- 指紋スキャンひとつで認証が完了
- AWS CLI・GitHub CLI・Twilio CLIなど、50以上のCLIツールに対応するプラグインがオープンソースで提供されている
対応している Shell Plugin の例
AWS CLI・GitHub CLI・Google Cloud CLI・Twilio CLI・ngrok・GitLab CLI・Stripe CLI など。詳細は 公式ドキュメント で確認できます。
まずはここから始める
1Password CLI は、1Password Business のライセンスがあればすぐに使い始められます。
- CLIをインストール macOS(Homebrew)・Windows・Linux に対応。公式ドキュメントの手順で数分で完了します。
- サインインして保管庫を確認 op signin でサインイン。 op vault list で保管庫一覧が確認できます。
- op run で既存の .env を置き換える既存の .env を 1Password の参照パスに書き換えて op run で実行するだけで、コードへの影響ゼロで移行できます。
- Shell Plugin で生体認証を設定(任意)よく使うCLIツールに Touch ID でサインインできるよう設定すると、日常のターミナル作業が快適になります。