Setup Environment Di Windows dan Linux
Panduan lengkap cara menyimpan API key OpenAI, Claude (Anthropic), Gemini, dan Grok sebagai environment variable di Windows dan WSL - aman, rapi, dan siap dipakai di semua project.
Kenapa Harus Pakai Environment Variable?
Banyak developer, terutama yang baru mulai pakai AI API, punya kebiasaan nulis API key langsung di dalam kode:
client = OpenAI(api_key="sk-abc123...")
Kelihatannya simpel, tapi ini berbahaya. Kalau kamu push ke GitHub, API key-mu bisa terbaca siapa saja - dan platform AI seperti OpenAI atau Anthropic bisa langsung suspend akun kamu karena policy keamanan.
Solusinya? Simpan API key sebagai environment variable di sistem operasimu. Kode cukup manggil nama variabelnya, bukan nilai aslinya.
Apa Itu Environment Variable?
Environment variable adalah variabel yang disimpan di level sistem operasi, bukan di dalam file kode. Program yang jalan di komputer kamu bisa membacanya, tapi nilainya tidak ikut ter-commit ke Git atau kelihatan di source code.
Contoh penggunaannya di Python:
import os
api_key = os.environ.get("OPENAI_API_KEY")
Bersih, aman, dan bisa langsung dipindah ke server lain tanpa ubah kode.
Bagian 1: Setup API Key di Windows (GUI)
Ini cara paling mudah buat yang pakai Windows tanpa WSL.
Langkah 1 - Buka Environment Variables
- Tekan Windows + S, lalu ketik
Environment Variables - Pilih opsi "Edit the system environment variables"
- Di jendela System Properties yang muncul, klik tombol "Environment Variables..." di bagian bawah
Langkah 2 - Tambahkan API Key Satu per Satu
Di bagian User variables (atas), klik New, lalu isi:
| Variable Name | Variable Value |
|---|---|
OPENAI_API_KEY |
API key dari platform.openai.com |
ANTHROPIC_API_KEY |
API key dari console.anthropic.com |
GEMINI_API_KEY |
API key dari aistudio.google.com |
GROK_API_KEY |
API key dari console.x.ai |
Klik OK setiap kali selesai menambahkan satu variabel.
Tips: Gunakan User variables, bukan System variables, agar API key hanya berlaku untuk akun pengguna kamu - lebih aman kalau komputer dipakai bersama.
Langkah 3 - Restart Terminal
Setelah semua variabel ditambahkan, tutup dan buka ulang CMD, PowerShell, atau terminal apapun yang sedang kamu pakai. Environment variable baru tidak akan terbaca tanpa restart.
Verifikasi di PowerShell
echo $env:OPENAI_API_KEY
Kalau muncul nilai API key-mu, berarti sudah berhasil. โ
Bagian 2: Setup API Key di WSL (Windows Subsystem for Linux)
Kalau kamu pakai WSL (Ubuntu atau distro Linux lainnya di Windows), environment variable Windows tidak otomatis terbaca di dalam WSL. Kamu perlu set ulang secara terpisah.
Cara Cepat - Export Sementara (Per Sesi)
Jalankan perintah ini di terminal WSL:
export OPENAI_API_KEY="sk-..."
export ANTHROPIC_API_KEY="sk-ant-..."
export GEMINI_API_KEY="..."
export GROK_API_KEY="..."
Cara ini hanya berlaku selama sesi terminal yang sedang aktif. Kalau terminal ditutup, variabel hilang.
Cara Permanen - Tambahkan ke .bashrc atau .zshrc
Biar tidak perlu export ulang setiap kali buka terminal, tambahkan ke file konfigurasi shell kamu:
nano ~/.bashrc
Tambahkan baris ini di bagian paling bawah file:
export OPENAI_API_KEY="sk-..."
export ANTHROPIC_API_KEY="sk-ant-..."
export GEMINI_API_KEY="..."
export GROK_API_KEY="..."
Simpan dengan Ctrl+O, lalu tekan Enter, dan keluar dengan Ctrl+X.
Aktifkan perubahan tanpa restart terminal:
source ~/.bashrc
Verifikasi di WSL
echo $OPENAI_API_KEY
Kalau nilai API key-mu muncul, setup sudah berhasil. โ
Cara Membaca API Key di Kode
Python
import os
openai_key = os.environ.get("OPENAI_API_KEY")
claude_key = os.environ.get("ANTHROPIC_API_KEY")
gemini_key = os.environ.get("GEMINI_API_KEY")
grok_key = os.environ.get("GROK_API_KEY")
Node.js
const openaiKey = process.env.OPENAI_API_KEY;
const claudeKey = process.env.ANTHROPIC_API_KEY;
Kesalahan Umum yang Harus Dihindari
1. Tidak restart terminal setelah set di Windows Environment variable baru tidak langsung terbaca. Selalu restart CMD/PowerShell/Terminal setelah menambahkan variabel baru.
2. Menyimpan API key di .env tanpa .gitignore
Kalau kamu pakai file .env, pastikan file itu masuk ke .gitignore agar tidak ter-push ke repository:
# .gitignore
.env
3. Memakai System variables padahal cukup User variables System variables berlaku untuk semua user di komputer dan membutuhkan akses admin. Untuk kebutuhan development personal, User variables sudah cukup dan lebih aman.
4. API key WSL dan Windows tidak sinkron
WSL punya environment-nya sendiri. Kalau kamu update API key di Windows, jangan lupa update juga di ~/.bashrc WSL.
Ringkasan
| Platform | Cara Setup | Permanen? |
|---|---|---|
| Windows (GUI) | Environment Variables โ User variables โ New | โ Ya |
| WSL (sementara) | export VAR="value" di terminal |
โ Hanya sesi ini |
| WSL (permanen) | Tambahkan export ke ~/.bashrc |
โ Ya |
Dengan menyimpan API key sebagai environment variable, kode kamu jadi lebih bersih, aman dari kebocoran, dan mudah dipindahkan ke environment lain - baik itu server, container Docker, maupun CI/CD pipeline.
Punya pertanyaan atau menemukan langkah yang tidak sesuai? Tinggalkan komentar di bawah!