Cara Aman Berbagi Kredensial Vault dengan AI Coding Agents: Akses Bitwarden Agent

Ashley Innocent

Ashley Innocent

15 May 2026

Cara Aman Berbagi Kredensial Vault dengan AI Coding Agents: Akses Bitwarden Agent

Apidog untuk Perusahaan

Penerapan On-Premises

SSO & RBAC

Sesuai SOC 2

Jelajahi Apidog Enterprise

Jika Anda menggunakan Claude Code, Codex, atau Cursor dengan apa pun yang bersentuhan dengan API nyata, Anda memiliki masalah: agen membutuhkan kredensial dan pengelola kata sandi Anda ingin menyimpannya terkunci. Solusi sementara yang biasa itu buruk. Menempelkan kunci API ke dalam obrolan dan kunci itu akan selamanya berada di jendela konteks model. Meletakkan rahasia ke dalam file .env dan alat bash agen akan dengan senang hati cat mereka dan mengirimkannya ke suatu tempat. Sebagian besar tim hanya menurunkan standar mereka.

Proyek sumber terbuka baru Bitwarden, Agent Access, adalah upaya serius pertama untuk memperbaiki masalah ini. Ini adalah protokol berbagi kredensial, CLI (aac), dan SDK Rust + Python yang membangun terowongan terenkripsi antara pengelola kata sandi Anda dan proses jarak jauh: agen, CI runner, skrip. Agen mendapatkan rahasia yang dibutuhkannya, yang lingkupnya terbatas pada satu domain atau item brankas, tanpa pernah melihat brankas Anda.

Panduan ini membahas apa yang disertakan dalam Agent Access, cara menginstalnya, cara menggunakan aac connect dan aac run, bagaimana integrasinya dengan alur kerja Claude Code, Codex, dan Cursor, serta posisinya di samping pola kebersihan kredensial yang dibahas dalam Cara Mengamankan Kredensial API Agen AI.

Apa Itu Agent Access (satu paragraf)

Agent Access adalah protokol terbuka ditambah implementasi referensi yang dibangun oleh Bitwarden tetapi dirancang untuk dapat diadaptasi oleh pengelola kata sandi mana pun. CLI (aac) membuat terowongan terenkripsi ujung-ke-ujung menggunakan protokol Noise. Sebuah "penyedia" mendengarkan permintaan koneksi; sebuah "konsumen" (agen Anda, skrip Anda, pekerjaan CI Anda) terhubung ke penyedia dan meminta kredensial berdasarkan domain atau ID item brankas. Penyedia memutuskan apa yang akan dikirim kembali. Konsumen tidak pernah melihat seluruh brankas. Penyedia tidak pernah melihat apa yang dilakukan konsumen dengan kredensial tersebut. Jejak audit tersedia di kedua sisi.

Saat ini dalam pratinjau awal. README proyek memperingatkan bahwa “API dan protokol dapat berubah” dan “kami tidak merekomendasikan memasukkan kredensial sensitif secara langsung ke dalam LLM atau agen AI.” Pola yang direkomendasikan Bitwarden adalah fokus dari separuh panduan ini: injeksi lingkungan melalui aac run, yang memasukkan rahasia ke dalam proses tanpa mengeksposnya ke jendela konteks agen.

Mengapa ini penting di tahun 2026

Agen pengkodean AI telah melampaui sandbox. Claude Code, Codex, Cursor, dan yang lainnya kini membaca repositori Anda, menjalankan pengujian Anda, mengakses API Anda, menerapkan kode Anda. Setiap langkah tersebut membutuhkan kredensial. Insiden kunci API Postman yang terekspos menunjukkan betapa buruknya skalabilitas kebersihan kredensial ketika manusia saja ceroboh; manusia ditambah agen bahkan lebih buruk.

Jawaban yang tepat bukanlah “lebih percaya pada agen”; melainkan “berikan agen lebih sedikit.” Agent Access melakukan ini di tingkat protokol: kredensial yang dilingkupkan, dienkripsi saat transit, diambil saat runtime, hilang saat proses keluar. Bandingkan dengan praktik saat ini (Alat Manajemen Kunci API mencakup sisa lanskap) dan Agent Access adalah hal pertama yang dibangun secara khusus untuk kasus agenik.

Instalasi

Pilih platform Anda.

macOS (Apple Silicon)

curl -L https://github.com/bitwarden/agent-access/releases/latest/download/aac-macos-aarch64.tar.gz | tar xz
sudo mv aac /usr/local/bin/

macOS (Intel)

curl -L https://github.com/bitwarden/agent-access/releases/latest/download/aac-macos-x86_64.tar.gz | tar xz
sudo mv aac /usr/local/bin/

Linux (x86_64)

curl -L https://github.com/bitwarden/agent-access/releases/latest/download/aac-linux-x86_64.tar.gz | tar xz
sudo mv aac /usr/local/bin/

Windows (x86_64)

Unduh aac-windows-x86_64.zip dari halaman rilis terbaru dan ekstrak ke direktori mana pun di PATH Anda.

Verifikasi instalasi dengan aac --help. Jika CLI Bitwarden (bw) juga ada di PATH Anda, aac akan menggunakannya sebagai penyedia kredensial default; jika tidak, teruskan --provider example untuk menggunakan penyedia demo bawaan saat Anda bereksperimen.

Mulai cepat: pasangkan dan ambil kredensial

Dua perintah. Jalankan aac listen pada mesin yang menyimpan brankas Anda, biasanya laptop Anda:

aac listen

Pendengar mencetak token pemasangan. Di sisi konsumen (mesin jarak jauh, CI runner, atau hanya shell lain di host yang sama saat Anda menguji), pasangkan dan ambil dalam satu panggilan:

aac connect --token <pairing-token> --domain github.com --output json

Anda akan mendapatkan sesuatu seperti:

{
  "credential": {
    "notes": null,
    "password": "alligator5",
    "totp": null,
    "uri": "https://github.com",
    "username": "example"
  },
  "domain": "github.com",
  "success": true
}

Bentuk JSON tersebut adalah kontrak stabil protokol. Skrip Anda dapat menguraikannya sesuai keinginan. Untuk mengambil berdasarkan ID item brankas alih-alih domain:

aac connect --id <vault-item-id> --output json

--id dan --domain saling eksklusif; pilih salah satu. Kode TOTP mengalir melalui payload yang sama ketika item brankas memiliki satu yang dikonfigurasi.

Fitur utama: aac run untuk injeksi lingkungan

aac connect baik-baik saja jika skrip Anda tahu cara menangani JSON. Pola yang lebih besar adalah aac run: ini mengambil kredensial dan menjalankan proses anak Anda dengan rahasia yang disuntikkan sebagai variabel lingkungan. Tidak pernah ke stdout, tidak pernah ke disk, tidak pernah terlihat oleh apa pun yang memicu aac.

Suntikkan bidang tertentu:

aac run --domain example.com --env DB_PASSWORD=password --env DB_USER=username -- psql

Suntikkan setiap bidang dengan awalan AAC_:

aac run --domain example.com --env-all -- deploy.sh

Gabungkan default dengan penimpaan:

aac run --domain example.com --env-all --env CUSTOM_PW=password -- deploy.sh

Bidang yang tersedia adalah username, password, totp, uri, notes, domain, dan credential_id.

Ini adalah pola yang direkomendasikan Bitwarden secara aktif untuk penggunaan agen AI: Anda mengarahkan Claude Code atau Codex ke skrip yang memanggil aac run, dan rahasia tersebut tidak pernah muncul dalam transkrip agen. Model melihat perintah aac run --domain api.stripe.com --env-all -- ./deploy.sh, bukan kata sandi. Jika agen kemudian bertanya “berapa nilai $STRIPE_API_KEY?” jawabannya adalah “Saya tidak bisa melihatnya” karena lingkupnya terbatas pada subproses deploy.sh.

Ini adalah prinsip isolasi yang sama yang dibahas dalam Cara Mengamankan Kredensial API Agen AI, yang diwujudkan dengan alat nyata.

SDK Python dan Rust

Jika pemanggilan CLI tidak cukup (misalnya Anda menyematkan Agent Access di aplikasi Anda sendiri), ada binding kelas satu.

Python

from agent_access import RemoteClient

client = RemoteClient("python-remote")
client.connect(token="ABC-DEF-GHI")
cred = client.request_credential("example.com")
print(cred.username, cred.password)
client.close()

Modul Python didukung PyO3, sehingga pekerjaan berat tetap dilakukan di Rust dan Anda mendapatkan implementasi protokol Noise yang sama di baliknya.

Rust

SDK Rust mengekspos antarmuka RemoteClient yang sama sebagai pustaka kelas satu. Implementasi referensi tersedia di bawah examples/rust-remote/ di repositori. Gunakan ini saat Anda menulis konsumen langsung dalam Rust. Umum digunakan di alat CLI, build runner, dan layanan apa pun yang menginginkan distribusi biner yang dikompilasi.

Untuk tim aplikasi yang sudah menggunakan alat API, pola SDK cocok dengan rapi di samping integrasi HashiCorp Vault atau Azure Key Vault. Agent Access bukanlah pengganti untuk solusi di tingkat perusahaan, tetapi lebih cocok untuk kasus penggunaan laptop pengembang dan CI-runner.

Integrasi dengan agen pengkodean AI

Claude Code

Integrasikan aac run ke dalam skrip yang dipanggil Claude Code. Contoh untuk tugas deploy:

# deploy.sh
#!/usr/bin/env bash
aac run --domain prod.example.com --env-all -- ./run-deploy.sh

Tambahkan skrip ini ke proyek Anda, arahkan alur kerja Claude Code Anda ke sana, dan agen akan memanggil ./deploy.sh tanpa kredensial dalam prompt. Integrasi Claude Code GitHub Actions memperluas pola yang sama ke CI: instal aac di runner, pasangkan dengan penyedia brankas Bitwarden yang berjalan di control plane, dan GitHub Actions Anda akan mewarisi kredensial yang dilingkupkan pada saat pekerjaan.

OpenAI Codex

Pola yang sama berfungsi untuk CLI Codex. Lapisan pemanggilan alat Codex menampilkan perintah ke model; skrip yang dipanggil model mengakses aac run dan rahasia tetap berada di luar konteks model. Postingan terbaru Codex dari ponsel Anda mencakup permukaan Codex yang lebih luas; ini adalah sudut kredensial yang berpasangan dengannya.

Cursor

Untuk perintah terminal Cursor dan alur kerja Composer, skrip yang dibungkus aac run yang sama berfungsi tanpa modifikasi. Keunggulan Cursor adalah pengeditan lokal, sehingga pendengar biasanya berjalan di mesin yang sama.

OpenClaw (skill ekosistem Anthropic)

Agent Access menyertakan skill OpenClaw resmi di luar kotak (file SKILL.md ada di repo). Untuk tim yang menggunakan skill bergaya OpenClaw, ini adalah integrasi yang paling rapi saat ini: skill mengetahui bentuk protokol, mengambil kredensial, dan menyerahkannya ke alat hilir mana pun yang diekspos oleh skill tersebut. Panduan kunci API OpenClaw mencakup cerita manajemen kredensial yang lebih luas untuk ekosistem tersebut.

Model keamanan dalam kata-kata sederhana

Tiga klaim yang patut diperiksa:

  1. Enkripsi ujung-ke-ujung melalui Noise. Lalu lintas antara konsumen dan penyedia dienkripsi dengan kerangka protokol Noise, keluarga jabat tangan yang sama yang digunakan WireGuard dan Signal. Lapisan transportasi bukanlah mata rantai terlemah.
  2. Kredensial yang dilingkupkan. Konsumen hanya mendapatkan apa yang diminta (satu domain atau satu ID item brankas). Ini tidak dapat menghitung isi brankas.
  3. Tidak ada rahasia di disk konsumen secara default. aac run menyalurkan rahasia melalui variabel lingkungan ke dalam proses anak; tidak ada yang ditulis ke file, tidak ada yang muncul di stdout, tidak ada yang masuk ke riwayat shell.

Apa yang tidak dilindungi oleh Agent Access:

Pola umum: agen memanggil API, Apidog mengujinya

Berikut adalah alur yang akan digunakan sebagian besar tim:

  1. Agen menulis kode. Claude Code, Codex, atau Cursor membuka PR yang menyentuh sebuah endpoint.
  2. CI menjalankan pengujian. Runner pengujian Anda memanggil aac run untuk mengambil kunci API, menjalankan rangkaian pengujian terhadap deployment staging.
  3. Apidog memverifikasi kontrak. Apidog menjalankan pengujian kontrak OpenAPI sebagai langkah CI terpisah, juga melalui aac run, juga tanpa agen melihat kunci tersebut.

Hasilnya: agen mengirimkan kode, kontrak tetap berlaku, rahasia tidak pernah meninggalkan brankas. Pedoman yang lebih luas tentang pengujian perubahan berbasis AI ada di Cara menguji agen AI yang memanggil API Anda.

Batasan dan peringatan

Pertanyaan umum

Apakah Agent Access gratis?

Ya. CLI, SDK, dan protokol adalah sumber terbuka di bawah organisasi GitHub Bitwarden. Anda tetap membayar Bitwarden jika menggunakannya sebagai brankas Anda.

Apakah ini berfungsi dengan pengelola kata sandi selain Bitwarden?

Protokol ini dirancang agar netral terhadap vendor. Implementasi referensi dilengkapi dengan dukungan Bitwarden dan contoh penyedia; vendor lain diharapkan akan merilis penyedia mereka sendiri seiring waktu.

Bisakah saya menggunakannya tanpa pengelola kata sandi sama sekali?

Untuk pengujian, ya; teruskan --provider example untuk menggunakan penyedia demo bawaan. Untuk produksi, Anda memerlukan penyedia nyata (Bitwarden saat ini, yang lain dalam peta jalan).

Apakah proses konsumen memerlukan akses jaringan?

Konsumen membutuhkan akses jaringan untuk mencapai pendengar penyedia. Pengaturan hanya-lokal berfungsi jika pendengar dan konsumen berada di host yang sama.

Bagaimana ini berbeda dari file .env?

File .env berada di disk, dapat secara tidak sengaja masuk ke repositori, dan dapat dibaca oleh apa pun yang dapat dijalankan agen. aac run menjaga rahasia hanya dalam memori proses, dilingkupkan ke subproses, dan hilang saat keluar.

Apakah ini menggantikan HashiCorp Vault atau AWS Secrets Manager?

Tidak. Brankas tingkat perusahaan masih merupakan alat yang tepat untuk rahasia layanan-ke-layanan dalam skala besar. Agent Access mengisi celah laptop pengembang dan CI-runner, di mana brankas perusahaan penuh itu berlebihan.

Akankah Anthropic, OpenAI, atau vendor agen lainnya mengintegrasikannya secara langsung?

Belum diumumkan. Model integrasi saat ini adalah “membungkus skrip Anda dalam aac run.” Dukungan langsung kelas satu dari vendor agen adalah langkah alami berikutnya tetapi belum tersedia.

Di mana saya melaporkan bug atau berkontribusi?

Repositori GitHub. Masalah, PR, dan diskusi protokol semuanya terjadi di sana.

Coba sekarang

Instal aac, jalankan aac listen di laptop Anda, jalankan aac connect --provider example --domain test.com --output json dari terminal lain. Konfirmasikan JSON kembali. Itu adalah lingkaran ujung-ke-ujung terkecil. Dari sana, ganti penyedia contoh dengan bw, bungkus skrip nyata dalam aac run, dan berhenti menempelkan kunci API ke agen AI Anda.

Pasangkan Agent Access dengan Apidog untuk sisi pengujian API dari alur kerja, dan Anda memiliki pemisahan yang jelas: brankas menyimpan rahasia, Apidog menguji kontrak, agen mengirimkan kode, dan tidak ada kredensial yang meninggalkan mesin Anda dalam teks biasa.

button

Mengembangkan API dengan Apidog

Apidog adalah alat pengembangan API yang membantu Anda mengembangkan API dengan lebih mudah dan efisien.