@nusagate-gateway/helper
v0.3.1
Published
Arahkan coding agent dan IDE ke NusaGate — Claude Code, Codex, OpenCode, Cline, OpenClaw, Hermes.
Maintainers
Readme
@nusagate-gateway/helper
Arahkan coding agent dan IDE ke NusaGate dengan satu perintah.
Kamu cukup memasukkan API key NusaGate. Helper memvalidasinya ke
GET https://api.nusagate.rafiakem.tech/v1/models, lalu menulis file config yang benar
untuk tiap agent.
Jalan di Windows, macOS, dan Linux (Node.js ≥ 18).
Install
# sekali jalan
npx @nusagate-gateway/helper# atau global
npm install -g @nusagate-gateway/helperTersedia juga sebagai ng-helper.
Mulai cepat
nusagate-helperWizard interaktif (default):
- API key — input tersembunyi, divalidasi ke
GET /v1/models(diulang bila gagal) - Agent / IDE — checklist multi-pilih (spasi untuk memilih, enter untuk lanjut)
- Model — picker ketik-untuk-cari, lengkap dengan harga per 1M token
- Konfirmasi — ringkasan, lalu config ditulis
Non-interaktif:
nusagate-helper apply --key nsk_xxx --model gpt-5.6-terra --agents claude,opencode --yesPerintah
| Perintah | Keterangan |
|---|---|
| nusagate-helper / setup | Wizard interaktif (default) |
| apply | Terapkan tanpa prompt (--key + --model) |
| status | Agent mana yang terpasang / sudah dikonfigurasi |
| reset | Hapus setelan NusaGate saja |
| validate --key … | Panggil /v1/models dan tampilkan daftar model |
| list | Agent yang didukung |
Opsi
| Opsi | Arti |
|---|---|
| --key, -k | API key NusaGate (env NUSAGATE_API_KEY juga dibaca) |
| --base-url | Default https://api.nusagate.rafiakem.tech/v1 |
| --model, -m | Model utama |
| --subagent-model | Model subagent / small-fast |
| --models | Model tambahan (OpenCode, OpenClaw) |
| --agents | installed (default), all, atau claude,codex,… |
| --dry-run | Tidak menulis file |
| --yes, -y | Lewati konfirmasi |
| --json | Output JSON |
Agent yang didukung
| Id | Tool | Config yang ditulis |
|---|---|---|
| claude | Claude Code | ~/.claude/settings.json → env.ANTHROPIC_BASE_URL + ANTHROPIC_AUTH_TOKEN |
| codex | OpenAI Codex CLI | ~/.codex/config.toml provider nusagate (wire_api = "chat") + auth.json |
| opencode | OpenCode | ~/.config/opencode/opencode.json provider nusagate; key dibaca dari {env:NUSAGATE_API_KEY} |
| cline | Cline | ~/.cline/data/globalState.json + secrets.json (OpenAI-compatible) |
| openclaw | OpenClaw | ~/.openclaw/openclaw.json models.providers.nusagate |
| hermes | Hermes Agent | ~/.hermes/config.yaml model.provider: custom + .env OPENAI_API_KEY |
| omp | OMP / Oh My Pi (omp.sh) | ~/.omp/agent/models.yml provider nusagate + config.yml modelRoles |
| pi | Pi Agent (pi.dev) | ~/.pi/agent/extensions/nusagate.ts + settings.json defaultModel |
Setelan yang sudah ada di-merge, bukan ditimpa. Salinan .nusagate-backup ditulis
di sebelah tiap file yang diubah.
Dua catatan khusus endpoint NusaGate:
- Claude Code memakai
/v1/messages(Anthropic-compatible), dan menambahkan sendiri/v1/messageskeANTHROPIC_BASE_URL— jadi yang ditulis adalah root tanpa/v1. - Codex memakai
wire_api = "chat", bukan"responses": NusaGate hanya menyediakan/v1/chat/completions. - OMP dan Pi butuh metadata model (panjang konteks, biaya per 1M token). Helper
mengisinya dari
GET /v1/models; harga rupiah dikonversi ke USD pada kurs Rp16.300/USD — sama seperti yang dipakai katalog NusaGate — hanya untuk tampilan di agent, karena tagihan sebenarnya dihitung di sisi gateway. - Pi mendaftarkan provider lewat extension, bukan file config statis, jadi helper menulis satu file TypeScript yang dimuat Pi saat start.
API programatik
import {
validateApiKey,
applyToAgents,
statusAll,
DEFAULT_BASE_URL,
} from "@nusagate-gateway/helper";
const result = await validateApiKey({ apiKey: process.env.NUSAGATE_API_KEY! });
if (!result.ok) throw new Error(result.error);
await applyToAgents("installed", {
apiKey: process.env.NUSAGATE_API_KEY!,
model: result.models[0]!.id,
baseUrl: DEFAULT_BASE_URL,
});
console.log(await statusAll());applyToAgents menerima "installed", "all", atau daftar id agent. Semua opsi
menerima homeDir untuk mengarahkan penulisan ke direktori lain (dipakai di tes).
Endpoint
API publik NusaGate:
- OpenAI-compatible:
https://api.nusagate.rafiakem.tech/v1/chat/completions,/v1/models - Anthropic-compatible:
https://api.nusagate.rafiakem.tech/v1/messages
Buat API key di nusagate.rafiakem.tech → Dashboard → API Keys.
Lisensi
MIT
