mcpField
B
browser-login

browser-login

github.com/ruvnetエージェントワークフロー80.0k729 回インストール今日更新
リポジトリ

browser-login について

browser-login はサイト認証を行い、後続のブラウザスキルで再利用できるセッション認証情報を保管するエージェントスキルです。Cookie 値をサニタイズして AgentDB にハンドルを保存します。browser_cookie_use MCP ツールは計画段階で、未実装です。

主な機能

  1. 01サイト認証の再利用
  2. 02MFA セッションの取得
  3. 03Cookie のサニタイズと保管ハンドル
  4. 04AgentDB へのセッション保存

活用シーン

  1. 01繰り返し訪問するサイトのセッション保存
  2. 02期限切れの保管済み Cookie の更新
  3. 03MFA 保護されたセッションの取得

MCP 対応

後続スキルが保管済み Cookie をマウントするための browser_cookie_use MCP ツールに言及していますが、まだ実装されていません。

インストール

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

$npx skills add https://github.com/ruvnet/ruflo --skill browser-login

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

詳細

ブラウザーログイン

対象サイトで一度認証し、取得したセッション認証情報を保管します。これにより、後続のスキル(browser-extract、browser-form-fill、browser-test)では認証フローを再実行せずに再利用できます。Browserbase の cookie-sync/SKILL.md のパターンを参考にしていますが、取得したコンテキストはホスト型バックエンドではなく AgentDB に保存します。

使用するタイミング

  • エージェントが繰り返しアクセスするホストで、再利用可能な認証を確立するとき。
  • 有効期限が切れた保管済み Cookie セットを更新するとき。
  • 対話的な操作が必要な MFA 保護セッションを取得するとき。

手順

  1. browser-record を使って、記録対象のセッションを開きます。
  2. 認証フローを進めます — browser_fill / browser_type で認証情報を入力します。認証情報はユーザーまたは環境から取得します。.env から読み取ったり、trajectory の引数に貼り付けたりしないでください。
  3. MFA を処理します(--mfa の場合):ユーザーの入力を待つか、ユーザーの TOTP ヘルパーを呼び出します。取得するのは、その後のリダイレクトのみとし、コード自体は取得しません。
  4. browser_eval を使って Cookie を取得します。
    document.cookie  // returns the cookie string for the active document
    
    または、公開されている場合は Playwright コンテキスト API を使用します。
  5. AIDefence でサニタイズします。
    # Each cookie value passes aidefence_scan to flag raw secrets / high-entropy tokens.
    
    生の値と思われるトークンは AgentDB に保存する前にボールトでラップし(不透明なハンドルに変換し)、生の値が名前空間に入らないようにします。
  6. browser-cookies に保存します。
    npx -y @claude-flow/cli@latest memory store --namespace browser-cookies \
      --key "<host>" \
      --value "{vault_handle:<opaque>, expiry:<iso>, aidefence_verdict:safe}"
    
  7. ボールトハンドルを返します。後続のスキルは、予定されている browser_cookie_use MCP ツールを通じてこれをマウントできます。

注意事項

  • 生の Cookie 値、トークン、パスワードは決してログに記録しないでください。認証 POST の軌跡ステップには、フォームフィールド名と、値を示す <redacted> プレースホルダーのみを記録します。
  • browser_cookie_use MCP ツールは予約済み(ADR-0001 §7)ですが、まだ実装されていません。それまでは、後続のスキルは scripts/ にあるヘルパー bash 関数(TBD)を使って、保管済み Cookie をマウントします。
  • サイトによっては Cookie を UA フィンガープリントに紐付けています。保管した Cookie を再利用できない場合は、browser-login を再実行してください。自分でフィンガープリントを一致させようとしないでください。
  • このスキルは認証情報の保存手段ではありません。ボールトハンドル方式は AgentDB の情報漏えいから保護しますが、エージェントの環境が侵害された場合には保護できません。

コメント