welcomehola!Haii πŸ–οΈAI engineeringdigital solutions
Profile
Rezkydesyafa
Back to Writings
3 views

Tutorial Claude Code CLI + Custom Provider di Windows

1. Install Claude Code CLI

Buka PowerShell atau Command Prompt.

Opsi WinGet

winget install Anthropic.ClaudeCode

Tutup dan buka kembali terminal, lalu cek:

claude --version

Masuk ke folder project:

cd "D:\folder-project-kamu"
claude

Alternatif npm

Jika menggunakan Node.js:

npm install -g @anthropic-ai/claude-code

Kemudian:

claude --version

Pastikan Node.js yang digunakan memenuhi versi minimum yang disyaratkan oleh versi Claude Code yang terpasang.


2. Menghubungkan Custom Provider

Custom provider harus menyediakan API yang kompatibel dengan Anthropic Messages API.

Contoh base URL:

https://router.unitrade.web.id

Jika endpoint Messages API provider adalah:

https://router.unitrade.web.id/v1/messages

maka ANTHROPIC_BASE_URL umumnya diarahkan ke:

https://router.unitrade.web.id

agar Claude Code dapat membentuk endpoint /v1/messages sendiri.


3. Menguji Custom Provider dari PowerShell

Untuk provider yang menggunakan Bearer Token:

$env:ANTHROPIC_BASE_URL = "https://router.unitrade.web.id"
$env:ANTHROPIC_AUTH_TOKEN = "API_KEY_KAMU"

claude

ANTHROPIC_AUTH_TOKEN digunakan sebagai:

Authorization: Bearer API_KEY_KAMU

Jika provider membutuhkan header x-api-key, gunakan:

$env:ANTHROPIC_BASE_URL = "https://router.unitrade.web.id"
$env:ANTHROPIC_API_KEY = "API_KEY_KAMU"

claude

Perbedaannya:

ANTHROPIC_AUTH_TOKEN β†’ Authorization: Bearer
ANTHROPIC_API_KEY    β†’ x-api-key

4. Menyimpan Konfigurasi Secara Permanen

Buat folder konfigurasi Claude Code:

New-Item -ItemType Directory -Force "$env:USERPROFILE\.claude"

Buka file settings:

notepad "$env:USERPROFILE\.claude\settings.json"

Lokasinya:

C:\Users\NAMA_USER\.claude\settings.json

Contoh konfigurasi:

{
  "env": {
    "ANTHROPIC_BASE_URL": "https://router.unitrade.web.id",
    "ANTHROPIC_AUTH_TOKEN": "API_KEY_KAMU"
  }
}

Setelah menyimpan file, buka terminal baru lalu:

claude

Konfigurasi global ini berlaku untuk Claude Code di berbagai project pada user Windows tersebut.

Jangan commit settings.json yang berisi API key ke GitHub.


5. Menggunakan Model Custom hermes-gpt

Jika provider menggunakan model:

hermes-gpt

kamu dapat menetapkan model secara eksplisit:

{
  "env": {
    "ANTHROPIC_BASE_URL": "https://router.unitrade.web.id",
    "ANTHROPIC_AUTH_TOKEN": "API_KEY_KAMU",
    "ANTHROPIC_MODEL": "hermes-gpt"
  }
}

Atau dari terminal:

claude --model "hermes-gpt"

ANTHROPIC_BASE_URL menentukan gateway/API tujuan, sedangkan nama model menentukan model yang diminta ke gateway.


6. Model Discovery / Auto-Detect

Claude Code memiliki mekanisme gateway model discovery pada versi yang mendukungnya.

Tambahkan:

{
  "env": {
    "ANTHROPIC_BASE_URL": "https://router.unitrade.web.id",
    "ANTHROPIC_AUTH_TOKEN": "API_KEY_KAMU",
    "CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY": "1"
  }
}

Provider harus menyediakan endpoint model discovery yang kompatibel, biasanya:

GET /v1/models

Contoh:

https://router.unitrade.web.id/v1/models

Jika endpoint tersebut tersedia dan format responsnya sesuai dengan yang diharapkan Claude Code, model dapat ditampilkan pada pemilih model.

Perlu diperhatikan bahwa model discovery tidak berarti semua model dari gateway otomatis dapat dipakai. Model dan format API tetap harus kompatibel dengan Claude Code.


7. Custom Model Option

Untuk membuat opsi model custom secara eksplisit, konfigurasi dapat menggunakan:

{
  "env": {
    "ANTHROPIC_BASE_URL": "https://router.unitrade.web.id",
    "ANTHROPIC_AUTH_TOKEN": "API_KEY_KAMU",
    "ANTHROPIC_CUSTOM_MODEL_OPTION": "hermes-gpt",
    "ANTHROPIC_CUSTOM_MODEL_OPTION_NAME": "Hermes GPT"
  }
}

Kemudian buka:

/model

dan pilih opsi model yang tersedia.

Jika versi Claude Code yang digunakan tidak mengenali variabel custom model tersebut, gunakan ANTHROPIC_MODEL atau claude --model hermes-gpt sebagai cara yang lebih langsung.


8. Mengecek Konfigurasi

Jalankan:

claude

Kemudian:

/status

Untuk melihat pilihan model:

/model

Untuk debugging:

claude --debug

Jika ingin memeriksa file settings:

Get-Content "$env:USERPROFILE\.claude\settings.json"

9. Jika claude Tidak Dikenali

Jika muncul:

claude : The term 'claude' is not recognized...

cek instalasi WinGet:

winget list Anthropic.ClaudeCode

Cek executable:

where.exe claude

Jika belum terinstall:

winget install Anthropic.ClaudeCode

Alternatif:

npm install -g @anthropic-ai/claude-code

Jika menggunakan npm tetapi claude masih tidak dikenali, cek:

npm config get prefix

Pastikan direktori npm global berada di PATH Windows.


10. Kembali ke Claude/Provider Default

Untuk menghapus environment variable dari terminal aktif:

Remove-Item Env:ANTHROPIC_BASE_URL -ErrorAction SilentlyContinue
Remove-Item Env:ANTHROPIC_AUTH_TOKEN -ErrorAction SilentlyContinue
Remove-Item Env:ANTHROPIC_API_KEY -ErrorAction SilentlyContinue
Remove-Item Env:ANTHROPIC_MODEL -ErrorAction SilentlyContinue

Jika konfigurasi custom disimpan di:

%USERPROFILE%\.claude\settings.json

hapus atau ubah bagian env yang mengarah ke custom provider.


11. Contoh Konfigurasi untuk Router UniTrade

Dengan provider:

Base URL:
https://router.unitrade.web.id

Model:
hermes-gpt

dan API key yang dimasukkan sendiri, konfigurasi sederhananya:

{
  "env": {
    "ANTHROPIC_BASE_URL": "https://router.unitrade.web.id",
    "ANTHROPIC_AUTH_TOKEN": "API_KEY_KAMU",
    "ANTHROPIC_MODEL": "hermes-gpt"
  }
}

Kemudian:

claude

atau:

claude --model hermes-gpt

Jika ingin mencoba model discovery:

{
  "env": {
    "ANTHROPIC_BASE_URL": "https://router.unitrade.web.id",
    "ANTHROPIC_AUTH_TOKEN": "API_KEY_KAMU",
    "CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY": "1"
  }
}

Pastikan router benar-benar menyediakan endpoint dan format API yang kompatibel sebelum mengandalkan auto-detection.


12. Checklist Troubleshooting

  • claude --version berhasil.
  • ANTHROPIC_BASE_URL mengarah ke base URL gateway, bukan /v1/messages.
  • API key valid.
  • Provider mendukung Anthropic Messages API.
  • Endpoint /v1/messages tersedia.
  • Jika menggunakan model discovery, endpoint /v1/models tersedia.
  • Nama model hermes-gpt benar-benar dikenali oleh gateway.
  • Tidak ada konfigurasi environment variable lama yang menimpa settings.json.
  • API key tidak dimasukkan ke repository Git.

Comments

No comments yet. Be the first to share your thoughts.