> ## Documentation Index
> Fetch the complete documentation index at: https://apidoc.cometapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Konfigurasi

> Konfigurasikan CometAPI CLI: lokasi file config, pengaturan yang tersedia, pengelolaan kredensial, environment variables, dan praktik keamanan.

CometAPI CLI membaca pengaturan dari file config TOML, environment variables, dan flag command-line. Saat pengaturan yang sama tersedia dari beberapa sumber, urutan prioritasnya adalah:

**Flag CLI > file config > environment variables > default**

## File config

Lokasi: `~/.config/cometapi/config.toml`

Jalankan setup wizard untuk membuat file config secara interaktif:

```bash theme={null}
cometapi init
```

Atau kelola pengaturan individual dengan subcommand `config`:

```bash theme={null}
# View current configuration
cometapi config show

# Set a value
cometapi config set api_key "$COMETAPI_KEY"

# Remove a value
cometapi config unset api_key

# Show the config file path
cometapi config path
```

## Pengaturan yang tersedia

| Config key      | Environment variable     | Deskripsi                                                              |
| --------------- | ------------------------ | ---------------------------------------------------------------------- |
| `api_key`       | `COMETAPI_KEY`           | API key (wajib untuk semua perintah)                                   |
| `access_token`  | `COMETAPI_ACCESS_TOKEN`  | Access token untuk perintah level akun                                 |
| `base_url`      | `COMETAPI_BASE_URL`      | URL dasar API (default: `https://api.cometapi.com/v1`)                 |
| `default_model` | `COMETAPI_DEFAULT_MODEL` | model default untuk `chat` dan `run` (fallback: `gpt-5.4`)             |
| `output_format` | —                        | Format output default: `table`, `json`, `yaml`, `csv`, atau `markdown` |

## Kredensial

CLI menggunakan dua jenis kredensial:

### API key

Wajib untuk semua perintah. API key mengautentikasi request ke endpoint model CometAPI.

Buat API key di [CometAPI Console → API Keys](https://www.cometapi.com/console/token).

Atur dengan salah satu cara berikut:

<CodeGroup>
  ```bash Environment variable theme={null}
  read -rsp "CometAPI API key: " COMETAPI_KEY
  printf '\n'
  export COMETAPI_KEY
  ```

  ```bash Config file theme={null}
  cometapi config set api_key "$COMETAPI_KEY"
  ```

  ```bash Setup wizard theme={null}
  cometapi init
  ```
</CodeGroup>

### Access token

Opsional. Access token diperlukan untuk perintah level akun: `account`, `stats`, `tokens`, `logs`, dan `tasks`.

Buat access token di [CometAPI Console → Personal Settings](https://www.cometapi.com/console/personal).

Atur dengan salah satu cara berikut:

<CodeGroup>
  ```bash Environment variable theme={null}
  export COMETAPI_ACCESS_TOKEN="your-access-token"
  ```

  ```bash Config file theme={null}
  cometapi config set access_token your-access-token
  ```

  ```bash Setup wizard theme={null}
  cometapi init
  ```
</CodeGroup>

## Keamanan

CLI menerapkan praktik keamanan berikut:

* API key dan access token tidak pernah dicatat ke log atau ditampilkan secara penuh. Hanya 4 karakter terakhir yang ditampilkan dalam output diagnostik.
* File config dibuat dengan permission yang ketat (`0600`) — hanya dapat dibaca oleh pemilik file.
* Kredensial tidak boleh pernah di-commit ke version control. Tambahkan path file config ke `.gitignore` Anda jika diperlukan.

<Warning>
  Anda bertanggung jawab atas semua penggunaan dan biaya yang timbul dari API key Anda. Jaga keamanan key Anda dan lakukan rotasi jika Anda mencurigai adanya akses yang tidak sah.
</Warning>

## Pemecahan masalah

| Error                         | Solusi                                                                                                          |
| ----------------------------- | --------------------------------------------------------------------------------------------------------------- |
| `API key not configured`      | Jalankan `cometapi init` atau atur environment variable `COMETAPI_KEY`                                          |
| `Connection failed`           | Jalankan `cometapi doctor` untuk mendiagnosis konektivitas                                                      |
| `Access token not configured` | Hanya diperlukan untuk `account`/`stats`/`tokens`/`logs`/`tasks`. Jalankan `cometapi init` untuk menambahkannya |
