Kelola kunci API
Panduan ini menunjukkan kepada Anda di mana setiap kredensial yang digunakan Control Center disimpan dan cara mengubahnya.
Tidak ada yang disimpan di mesin yang Anda pakai untuk mengetik. Setiap kredensial berada di server; kredensial mana yang menjawab suatu permintaan bergantung pada apakah ada manusia di baliknya.
| Kredensial | Disimpan | Siapa yang memakainya |
|---|---|---|
| Kredensial host kode / tiket Anda | Berkas rahasia 0600 milik server, dikunci berdasarkan id pengguna Anda | Apa pun yang Anda minta: permukaan PR, eksekusi agen Anda, image Anda |
| Identitas aplikasi server | Berkas yang sama, ditambah server_settings untuk bagian yang bukan rahasia |
Pekerjaan yang tidak diminta manusia: webhook, polling PR, sinkronisasi tiket |
| Kunci penyedia model dan token OAuth | Penyimpanan kredensial milik server sendiri | Adapter bawaan, untuk setiap ruang kerja pada instalasi |
| Token bot Slack | <dataDir>/<workspaceId>/chat_credentials/ di server |
Jembatan chat untuk ruang kerja tersebut |
| Kredensial CLI eksternal | Apa pun yang digunakan CLI tersebut | Claude Code, di host server |
Dua kredensial GitHub, dan keduanya menjawab pertanyaan yang berbeda
Bagian berjudul “Dua kredensial GitHub, dan keduanya menjawab pertanyaan yang berbeda”- Milik Anda, dari proses masuk (device flow) atau penempelan token. Inilah yang dipakai setiap permintaan yang dibuat atas nama Anda, sehingga komentar yang dikirim untuk Anda membawa nama Anda. Anggota lain tidak dapat membacanya, dan setiap anggota menghubungkan kredensialnya sendiri
- Milik server, dari GitHub App yang didaftarkan operator. Ini menjawab semuanya tanpa pemanggil — sehingga akses host kode tidak hilang ketika satu orang keluar atau merotasi token
Milik Anda diatur di kartu Hosting kode pada Pengaturan → Ruang kerja → Profil & identitas; milik server di Aplikasi penyedia pada Pengaturan → Server → Single sign-on. Lihat Siapkan integrasi GitHub dan Buat GitHub App.
Tetapkan kunci penyedia model
Bagian berjudul “Tetapkan kunci penyedia model”Adapter bawaan mengautentikasi penyedia sendiri dan kredensial tersebut berada di server.
- Buka Pengaturan → Server → Penyedia model
- Gulir ke Penyedia & model
- Hubungkan penyedianya — OAuth browser untuk OpenAI, Codex, Cursor, dan Kimi Code; kunci API untuk Anthropic dan sisanya
Lihat Kelola adapter dan model untuk daftar lengkapnya dan untuk menambahkan endpoint kustom.
Kredensial ini global per host: satu kunci melayani setiap ruang kerja pada instalasi. Token OAuth disegarkan sebelum kedaluwarsa.
CLI adapter eksternal menyimpan kredensialnya sendiri, di konfigurasinya sendiri,
di host server — Control Center tidak mengelolanya. Autentikasi Claude Code
sesuai yang dijelaskan dokumentasinya sendiri, di mesin tempat cc_server
berjalan.
Dialog Variabel lingkungan per adapter tampak seperti tempat menaruh kunci untuk salah satunya, tetapi bukan: dialog itu menulis ke perangkat Anda, sementara server membaca salinannya sendiri dan tidak ada yang menjembatani keduanya. Lihat Kelola adapter dan model.
Hubungkan vendor tiket
Bagian berjudul “Hubungkan vendor tiket”Kartu Tiket pada Pengaturan → Ruang kerja → Umum memuat kedua bagian dari satu keputusan: di mana tiket Anda berada, dan kredensial untuknya. Memilih Lokal menyembunyikan baris kredensial — tiket lokal berada di basis data server ini sendiri dan tidak ada yang perlu diautentikasi.
Kunci Anda disimpan di server dan dikaitkan dengan id pengguna Anda, seperti kunci host kode. Server menyimpan kunci Linear-nya sendiri secara terpisah (Aplikasi penyedia), yang menjadi sandaran sinkronisasi tiket saat tidak ada manusia yang meminta. Tidak ada kunci ticketing yang disuntikkan ke sandbox agen; agen menulis tiket melalui alat Control Center, yang menanyakan aturan Tulis ke pelacak eksternal. Lihat Siapkan integrasi Linear.
Rotasi atau cabut
Bagian berjudul “Rotasi atau cabut”- Kredensial GitHub Anda: tekan Putuskan, lalu masuk lagi atau tempel token barunya. Cabut token lama di GitHub
- Aplikasi server: buat kunci privat atau client secret baru di halaman GitHub aplikasi tersebut, tempel di Aplikasi penyedia dan tekan Tes
- Penyedia model: pada barisnya, keluar (OAuth) atau hapus kuncinya, lalu hubungkan lagi
- Slack: tempel ulang token di dialog koneksi. Lihat Siapkan integrasi Slack
Pemecahan masalah
Bagian berjudul “Pemecahan masalah”Daftar PR kosong tetapi token saya berfungsi di curl
Bagian berjudul “Daftar PR kosong tetapi token saya berfungsi di curl”Periksa subjudul baris Hosting kode. Jika subjudul itu menyebut sumber lain (“lewat aplikasi server ini”, “dari environment”), kredensial yang Anda uji bukan yang menjawab — milik Anda tidak tersimpan.
Token diterima tetapi permintaan berikutnya gagal
Bagian berjudul “Token diterima tetapi permintaan berikutnya gagal”Token diuji sebagaimana disimpannya, sehingga barisnya menyebut akun di baliknya — tetapi hanya akunnya, bukan scope-nya. Token dengan scope terlalu sedikit berhasil terhubung lalu gagal pada permintaan individual. Periksa scope dan masa berlakunya:
curl -H "Authorization: token YOUR_TOKEN" https://api.github.com/user