# Referensi konfigurasi

Cari field di facade.json, nilai default-nya, dan cara Facade menerapkannya.

## Field tingkat atas

Buka berkasnya lewat [Pengaturan agen](https://facadecode.com/id/docs/settings/). Berkas ini menerima komentar JSON dan koma di akhir. Objek kosong berarti memakai semua default.

| Field | Nilai | Default |
| --- | --- | --- |
| `yolo` | Boolean yang mengendalikan persetujuan CLI dan akses agen. | `true` |
| `names` | Daftar nama agen yang disarankan, tanpa entri kosong. | Daftar nama bawaan |
| `clis` | Objek berisi penggantian setelan CLI bawaan dan entri bernama tambahan. | `{}`; CLI bawaan tetap tersedia |
| `$schema` | String untuk metadata skema editor. | Tidak diisi |

## Field entri CLI

| Field | Nilai | Default |
| --- | --- | --- |
| `type` | `claude`, `codex`, `agy`, `muse`, `opencode`, `pi`, atau `custom`. | Implisit untuk ID bawaan yang tepat; wajib untuk entri tambahan. |
| `command` | Satu nama atau path executable. | Perintah tipe tersebut di PATH; wajib untuk custom. |
| `args` | Array string argumen literal. | `[]` |
| `env` | Nama variabel yang dipetakan ke string atau null. | `{}` |
| `model` | ID model yang tidak kosong. | Ditentukan CLI. Tidak diterima untuk OpenCode atau custom. |
| `effort` | Effort yang tidak kosong dan didukung CLI serta modelnya. | Ditentukan CLI. Tidak diterima untuk OpenCode atau custom. |
| `enabled` | Boolean yang mengendalikan peluncuran dan pemulihan berikutnya. | `true` |
| `icon` | ID CLI bawaan atau ikon robot yang didukung. | Ikon tipe tersebut; `facade-pearl` untuk custom. |

Gunakan ID huruf kecil yang tepat untuk mengonfigurasi entri bawaan, misalnya `codex`. Nama entri baru harus berbeda dari semua ID dan nama tampilan bawaan, bahkan saat huruf besar/kecil diabaikan. Misalnya, gunakan `Codex · work`, bukan `Codex`. Entri tambahan tidak mewarisi pengaturan dari tipe bawaannya.

`enabled: false` menyembunyikan entri yang valid dan menolak peluncuran atau pemulihan berikutnya. Agen yang sedang berjalan tidak ikut dihentikan.

## Nilai lingkungan

```json
{
  "clis": {
    "codex": {
      "env": {
        "WORK_API_KEY": "${env:WORK_API_KEY}",
        "OLD_TOKEN": null
      }
    }
  }
}
```

- String menetapkan variabel. `null` menghapusnya. Variabel yang tidak disebutkan akan diwarisi.
- `${env:NAME}` membaca lingkungan host editor. Ia tidak membaca kunci lain di objek yang sama.
- Referensi yang tidak ada membuat entri tersebut tidak tersedia. Referensi diperluas sekali di nilai `env`, bukan di `args`.
- Nilai literal tetap tersimpan di facade.json. Referensi lingkungan membuat nilai itu tidak tersimpan di berkas, tetapi CLI tetap menerima nilai hasil perluasannya.

Menyetel variabel di terminal terintegrasi yang sudah terbuka tidak memperbarui lingkungan host editor. Sediakan variabel itu sebelum memulai editor.

## Prioritas dan opsi peluncuran

Facade lebih dulu memakai model dan effort yang ditentukan untuk agen baru, lalu default entrinya. Jika keduanya tidak memberi nilai, CLI yang menentukan. OpenCode menyimpan kedua pilihan itu di konfigurasinya sendiri.

Untuk tipe bawaan, gunakan field khusus untuk model dan effort. Facade juga menetapkan izin, ID percakapan, folder kerja, dan alatnya sendiri. Facade menolak argumen yang bertentangan dengan pilihan ini atau yang menghalangi sesi interaktif untuk dimulai.

Facade mencari facade.json di home Facade, yaitu pengaturan **Facade: Home** di VS Code Settings bila diisi, lalu `FACADE_HOME`, lalu `~/.facade`. Buka Open Settings dari proyeknya untuk menemukan berkas yang aktif.

## Kesalahan berkas dan kesalahan entri

Kesalahan tingkat berkas, seperti JSON tidak valid, kunci duplikat, atau field tingkat atas yang tidak dikenal, menghalangi peluncuran dan pemulihan baru. Kesalahan di dalam satu entri CLI hanya membuat entri itu tidak tersedia. Agen yang sedang berjalan tetap berjalan.

Ikuti path pengaturan yang disebut dalam kesalahan dan perbaiki nilainya. Facade tidak diam-diam memakai pengaturan lama sebagai gantinya. Lihat [Pemecahan masalah](https://facadecode.com/id/docs/troubleshooting/) untuk kesalahan peluncuran dan penyedia yang umum.
