#Different Clawhub's Color Skills
1 messages Β· Page 1 of 1 (latest)
Halo! Warna icon di ClawHub itu tidak menunjukkan status khusus seperti verified/official/aman/berbahaya.
Untuk icon default, ClawHub memilih warna dari beberapa tone berdasarkan hash dari nama/label skill. Jadi biru/orange/hijau itu lebih ke variasi visual supaya card tidak monoton. Kalau skill punya imageUrl sendiri, icon-nya akan pakai gambar itu. (raw.githubusercontent.com)
Jadi intinya: beda warna = dekoratif, bukan beda kategori/level trust. π¦
{
"agents": {
"defaults": {
"model": {
"primary": "tinggalcolok/gpt-5.4"
}
}
},
"models": {
"mode": "merge",
"providers": {
"tinggalcolok": {
"api": "openai-completions",
"apiKey": "RID-fc96a202d6b3fbf6",
"baseUrl": "https://tinggalcolok.online/v1",
"models": [
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "claude-opus-4.6",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "claude-opus-4.6 (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-high",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex-high (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-low",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex-low (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-none",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex-none (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-xhigh",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex-xhigh (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.4",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.4 (Tinggal Colok)",
"reasoning": true
}
]
}
}
}
}
bagiamana menambahkan ini
Iya bisa. Tapi penting dulu: apiKey kamu tadi kepost public di Discord. Sebaiknya rotate/ganti key itu sekarang dan jangan pakai lagi yang sudah kepost.
Cara tambahinnya:
- Buka config:
nano ~/.openclaw/openclaw.json
- Tambahkan block itu di level paling atas config. Kalau sudah ada
agentsataumodels, merge isinya, jangan bikin key duplikat.
Contoh lebih aman pakai env var:
{
agents: {
defaults: {
model: {
primary: "tinggalcolok/gpt-5.4",
},
},
},
models: {
mode: "merge",
providers: {
tinggalcolok: {
api: "openai-completions",
apiKey: { source: "env", provider: "default", id: "TINGGALCOLOK_API_KEY" },
baseUrl: "https://tinggalcolok.online/v1",
models: [
{
id: "gpt-5.4",
name: "gpt-5.4 (Tinggal Colok)",
input: ["text", "image"],
reasoning: true,
contextWindow: 200000,
maxTokens: 64000,
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
},
],
},
},
},
}
- Set env var key baru di environment gateway kamu, lalu restart:
openclaw gateway restart
openclaw models status --probe
Kalau cuma mau nambah provider tanpa langsung jadi default, hapus bagian:
agents: { defaults: { model: { primary: "tinggalcolok/gpt-5.4" } } }
Docs terkait: https://docs.openclaw.ai/gateway/config-tools#custom-providers-and-base-urls
Kalau error, kirim openclaw --version + output openclaw models status tapi hapus/redact key dulu. π¦
gimana buat env var key nya
Buat env var = simpan API key di environment, lalu config OpenClaw cuma refer ke namanya.
Di config pakai ini:
apiKey: { source: "env", provider: "default", id: "TINGGALCOLOK_API_KEY" }
Lalu set key-nya:
Kalau gateway jalan manual dari terminal:
export TINGGALCOLOK_API_KEY="KEY_BARU_KAMU"
openclaw gateway restart
Kalau gateway jalan sebagai service di Linux/systemd:
systemctl --user edit openclaw-gateway.service
Isi:
[Service]
Environment=TINGGALCOLOK_API_KEY=KEY_BARU_KAMU
Lalu:
systemctl --user daemon-reload
openclaw gateway restart
openclaw models status --probe
Jangan paste key asli lagi di Discord ya β key yang tadi sudah kebocor, sebaiknya rotate/ganti dulu. π¦
saya di powershell
Kalau di PowerShell:
Sementara β cuma untuk terminal itu:
$env:TINGGALCOLOK_API_KEY = "KEY_BARU_KAMU"
openclaw gateway restart
openclaw models status --probe
Permanen untuk user Windows:
[Environment]::SetEnvironmentVariable("TINGGALCOLOK_API_KEY", "KEY_BARU_KAMU", "User")
Lalu tutup & buka PowerShell lagi, kemudian:
openclaw gateway restart
openclaw models status --probe
Di config tetap pakai:
apiKey: { source: "env", provider: "default", id: "TINGGALCOLOK_API_KEY" }
Dan serius: key yang tadi sudah kepost public, rotate/ganti dulu ya. π¦
Docs: https://docs.openclaw.ai/gateway/secrets
untuk model nya?
Model-nya bukan env var. Model diset di config dengan format:
provider/model
Untuk punyamu:
agents: {
defaults: {
model: {
primary: "tinggalcolok/gpt-5.4",
},
},
}
Kalau mau via PowerShell CLI:
openclaw config set agents.defaults.model.primary "tinggalcolok/gpt-5.4"
openclaw gateway restart
openclaw models status --probe
Kalau nanti mau ganti sementara dari chat, bisa pakai:
/model tinggalcolok/gpt-5.4
Intinya:
TINGGALCOLOK_API_KEY= env var untuk API keytinggalcolok/gpt-5.4= model ref di OpenClaw
04:34:08 [diagnostic] lane task error: lane=main durationMs=311 error="FailoverError: Unknown model: tinggalcolok/gpt-5.4"
04:34:08 [diagnostic] lane task error: lane=session:agent:main:main durationMs=313 error="FailoverError: Unknown model: tinggalcolok/gpt-5.4"
04:34:08 [model-fallback/decision] model fallback decision: decision=candidate_failed requested=tinggalcolok/gpt-5.4 candidate=tinggalcolok/gpt-5.4 reason=model_not_found next=none detail=Unknown model: tinggalcolok/gpt-5.4
04:34:08 Embedded agent failed before reply: Unknown model: tinggalcolok/gpt-5.4
Error itu berarti OpenClaw sudah diarahkan ke tinggalcolok/gpt-5.4, tapi provider/model catalog tinggalcolok belum kebaca/terdaftar.
Di PowerShell, coba tambahkan provider dulu:
$provider = @'
{
"api": "openai-completions",
"apiKey": { "source": "env", "provider": "default", "id": "TINGGALCOLOK_API_KEY" },
"baseUrl": "https://tinggalcolok.online/v1",
"models": [
{
"id": "gpt-5.4",
"name": "gpt-5.4 (Tinggal Colok)",
"input": ["text", "image"],
"reasoning": true,
"contextWindow": 200000,
"maxTokens": 64000,
"cost": { "input": 0, "output": 0, "cacheRead": 0, "cacheWrite": 0 }
}
]
}
'@
openclaw config set models.mode "merge"
openclaw config set models.providers.tinggalcolok $provider --strict-json --merge
openclaw config set agents.defaults.model.primary "tinggalcolok/gpt-5.4"
openclaw gateway restart
openclaw models list --provider tinggalcolok --plain
openclaw models status --probe
Kalau masih unknown, cek dulu:
openclaw --version
openclaw config get models.providers.tinggalcolok
Kalau models.providers.tinggalcolok kosong, berarti config-nya belum masuk / beda config path. Docs: https://docs.openclaw.ai/gateway/config-tools#custom-providers-and-base-urls
04:42:28 Missing config. Run openclaw setup or set gateway.mode=local (or pass --allow-unconfigured).
Itu berarti config utama belum punya:
gateway: { mode: "local" }
Di PowerShell coba paling simpel:
openclaw --version
openclaw setup
Lalu setelah setup, tambahkan lagi model/provider tadi, atau set gateway mode manual:
openclaw config set gateway.mode "local"
openclaw gateway restart
Kalau masih error, edit file ini:
notepad "$env:USERPROFILE\.openclaw\openclaw.json"
Pastikan ada bagian top-level seperti ini:
{
"gateway": {
"mode": "local"
},
"agents": {
"defaults": {
"model": {
"primary": "tinggalcolok/gpt-5.4"
}
}
}
// models.providers.tinggalcolok kamu tetap di bawah sini
}
Jangan pakai --allow-unconfigured untuk setup normal; itu cuma bypass sementara/dev.
{
"agents": {
"defaults": {
"workspace": "C:\Users\rakha christian\.openclaw\workspace"
}
},
"gateway": {
"mode": "local"
},
"meta": {
"lastTouchedVersion": "2026.4.23",
"lastTouchedAt": "2026-04-29T21:45:22.164Z"
}
}
Config kamu sudah benar untuk gateway.mode. Sekarang tinggal tambahkan model + models.providers.
Ganti isi ~\.openclaw\openclaw.json jadi seperti ini:
{
"agents": {
"defaults": {
"workspace": "C:\\Users\\rakha christian\\.openclaw\\workspace",
"model": {
"primary": "tinggalcolok/gpt-5.4"
}
}
},
"gateway": {
"mode": "local"
},
"models": {
"mode": "merge",
"providers": {
"tinggalcolok": {
"api": "openai-completions",
"apiKey": {
"source": "env",
"provider": "default",
"id": "TINGGALCOLOK_API_KEY"
},
"baseUrl": "https://tinggalcolok.online/v1",
"models": [
{
"id": "gpt-5.4",
"name": "gpt-5.4 (Tinggal Colok)",
"input": ["text", "image"],
"reasoning": true,
"contextWindow": 200000,
"maxTokens": 64000,
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
}
}
]
}
}
},
"meta": {
"lastTouchedVersion": "2026.4.23",
"lastTouchedAt": "2026-04-29T21:45:22.164Z"
}
}
Lalu di PowerShell:
[Environment]::SetEnvironmentVariable("TINGGALCOLOK_API_KEY", "KEY_BARU_KAMU", "User")
Tutup PowerShell, buka lagi, lalu:
openclaw gateway restart
openclaw models list --provider tinggalcolok --plain
openclaw models status --probe
Ingat pakai key baru, karena key lama sudah kepost public.
Docs: https://docs.openclaw.ai/gateway/config-tools#custom-providers-and-base-urls
jika saya ingin memasukan ini?
{
"agents": {
"defaults": {
"model": {
"primary": "tinggalcolok/gpt-5.4"
}
}
},
"models": {
"mode": "merge",
"providers": {
"tinggalcolok": {
"api": "openai-completions",
"apiKey": "RID-fc96a202d6b3fbf6",
"baseUrl": "https://tinggalcolok.online/v1",
"models": [
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "claude-opus-4.6",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "claude-opus-4.6 (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-high",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex-high (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-low",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex-low (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-none",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex-none (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-xhigh",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex-xhigh (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.4",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.4 (Tinggal Colok)",
"reasoning": true
}
]
}
}
}
}
Bisa, tapi jangan ditempel sebagai file baru karena nanti gateway.mode dan workspace kamu hilang. Kamu harus merge ke config yang sudah ada.
Dan jangan pakai apiKey plaintext itu lagi β key sudah kepost public. Ganti jadi env var:
"apiKey": {
"source": "env",
"provider": "default",
"id": "TINGGALCOLOK_API_KEY"
}
Jadi di file kamu, hasilnya kira-kira begini:
{
"agents": {
"defaults": {
"workspace": "C:\\Users\\rakha christian\\.openclaw\\workspace",
"model": {
"primary": "tinggalcolok/gpt-5.4"
}
}
},
"gateway": {
"mode": "local"
},
"models": {
"mode": "merge",
"providers": {
"tinggalcolok": {
"api": "openai-completions",
"apiKey": {
"source": "env",
"provider": "default",
"id": "TINGGALCOLOK_API_KEY"
},
"baseUrl": "https://tinggalcolok.online/v1",
"models": [
// paste semua isi array models kamu di sini
]
}
}
},
"meta": {
"lastTouchedVersion": "2026.4.23",
"lastTouchedAt": "2026-04-29T21:45:22.164Z"
}
}
Lalu di PowerShell set key baru:
[Environment]::SetEnvironmentVariable("TINGGALCOLOK_API_KEY", "KEY_BARU_KAMU", "User")
Tutup PowerShell, buka lagi, lalu:
openclaw gateway restart
openclaw models list --provider tinggalcolok --plain
openclaw models status --probe
Kalau masih error, kirim:
openclaw --version
openclaw config get models.providers.tinggalcolok
Tapi redact key ya. π¦
berikan lengkapnya
Ini lengkapnya. Ganti seluruh isi:
notepad "$env:USERPROFILE\.openclaw\openclaw.json"
dengan ini:
{
"agents": {
"defaults": {
"workspace": "C:\\Users\\rakha christian\\.openclaw\\workspace",
"model": {
"primary": "tinggalcolok/gpt-5.4"
}
}
},
"gateway": {
"mode": "local"
},
"models": {
"mode": "merge",
"providers": {
"tinggalcolok": {
"api": "openai-completions",
"apiKey": {
"source": "env",
"provider": "default",
"id": "TINGGALCOLOK_API_KEY"
},
"baseUrl": "https://tinggalcolok.online/v1",
"models": [
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "claude-opus-4.6",
"input": ["text", "image"],
"maxTokens": 64000,
"name": "claude-opus-4.6 (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-high",
"input": ["text", "image"],
"maxTokens": 64000,
"name": "gpt-5.3-codex-high (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-low",
"input": ["text", "image"],
"maxTokens": 64000,
"name": "gpt-5.3-codex-low (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-none",
"input": ["text", "image"],
"maxTokens": 64000,
"name": "gpt-5.3-codex-none (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-xhigh",
"input": ["text", "image"],
"maxTokens": 64000,
"name": "gpt-5.3-codex-xhigh (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex",
"input": ["text", "image"],
"maxTokens": 64000,
"name": "gpt-5.3-codex (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.4",
"input": ["text", "image"],
"maxTokens": 64000,
"name": "gpt-5.4 (Tinggal Colok)",
"reasoning": true
}
]
}
}
},
"meta": {
"lastTouchedVersion": "2026.4.23",
"lastTouchedAt": "2026-04-29T21:45:22.164Z"
}
}
Lalu PowerShell:
[Environment]::SetEnvironmentVariable("TINGGALCOLOK_API_KEY", "KEY_BARU_KAMU", "User")
Tutup PowerShell, buka lagi, lalu:
openclaw gateway restart
openclaw models list --provider tinggalcolok --plain
openclaw models status --probe
Pakai key baru, jangan key yang tadi sudah kepost public.
PS C:\Users\rakha christian> openclaw gateway run
π¦ OpenClaw 2026.4.23 (a979721) β Your AI assistant, now without the $3,499 headset.
β
β
05:00:18 [gateway] loading configurationβ¦
05:00:18 [gateway] resolving authenticationβ¦
05:00:18 [gateway] starting...
05:00:21 [secrets] [SECRETS_RELOADER_DEGRADED] SecretRefResolutionError: Environment variable "TINGGALCOLOK_API_KEY" is missing or empty.
05:00:21 [gateway] wrote stability bundle: C:\Users\rakha christian.openclaw\logs\stability\openclaw-stability-2026-04-29T22-00-21-054Z-21192-gateway.startup_failed.json
05:00:21 Gateway failed to start: Error: Startup failed: required secrets are unavailable. SecretRefResolutionError: Environment variable "TINGGALCOLOK_API_KEY" is missing or empty.
Env var-nya belum kebaca oleh PowerShell yang kamu pakai.
Jalankan ini di PowerShell yang sama sebelum openclaw gateway run:
$env:TINGGALCOLOK_API_KEY = "KEY_BARU_KAMU"
openclaw gateway run
Kalau mau disimpan permanen juga:
[Environment]::SetEnvironmentVariable("TINGGALCOLOK_API_KEY", "KEY_BARU_KAMU", "User")
Lalu tutup PowerShell, buka lagi, cek:
echo $env:TINGGALCOLOK_API_KEY
Kalau muncul key-nya, baru:
openclaw gateway run
Pastikan nama env var sama persis: TINGGALCOLOK_API_KEY.
Dan tetap pakai key baru ya, karena yang lama sudah kepost public. π¦
05:05:50 [agent/embedded] embedded run agent end: runId=de6b820f-cccf-46a8-8912-9011598ade5e isError=true model=gpt-5.4 provider=tinggalcolok error=401 API key tidak ditemukan rawError=401 API key tidak ditemukan
05:05:50 [agent/embedded] embedded run failover decision: runId=de6b820f-cccf-46a8-8912-9011598ade5e stage=assistant decision=surface_error reason=auth from=tinggalcolok/gpt-5.4 profile=- rawError=401 API key tidak ditemukan
Ini sudah beda error: config model sudah kebaca, tapi provider tinggalcolok menolak key-nya:
401 API key tidak ditemukan
Artinya biasanya salah satu ini:
- key yang dipakai salah / sudah tidak valid
- key lama yang kepost public sudah diblokir/rotated
- env var berisi typo/spasi/kutipan ikut masuk
Cek di PowerShell, jangan paste key ke Discord:
$env:TINGGALCOLOK_API_KEY.Length
$env:TINGGALCOLOK_API_KEY.StartsWith("RID-")
Kalau belum benar, set ulang di PowerShell yang sama:
$env:TINGGALCOLOK_API_KEY = "KEY_BARU_KAMU"
openclaw gateway run
Untuk permanen:
[Environment]::SetEnvironmentVariable("TINGGALCOLOK_API_KEY", "KEY_BARU_KAMU", "User")
Lalu tutup PowerShell, buka lagi, jalankan:
openclaw gateway run
Kalau masih 401, berarti key-nya memang tidak diterima oleh layanan tinggalcolok β ambil/generate API key baru dari dashboard mereka. OpenClaw-nya sudah sampai tahap memanggil provider.
gini benerkan?
{
"agents": {
"defaults": {
"workspace": "D:\OpenclawWorkspace",
"model": {
"primary": "tinggalcolok/gpt-5.4"
}
}
},
"gateway": {
"mode": "local",
"auth": {
"mode": "token",
"token": "d4cbea1b3927a8b68aca14d95334ac51069bf144c20c6dcc"
}
},
"models": {
"mode": "merge",
"providers": {
"tinggalcolok": {
"api": "openai-completions",
"apiKey": {
"source": "env",
"provider": "default",
"id": "TINGGALCOLOK_API_KEY"
},
"baseUrl": "https://tinggalcolok.online/v1",
"models": [
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "claude-opus-4.6",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "claude-opus-4.6 (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-high",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex-high (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-low",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex-low (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-none",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex-none (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex-xhigh",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex-xhigh (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.3-codex",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.3-codex (Tinggal Colok)",
"reasoning": true
},
{
"contextWindow": 200000,
"cost": {
"cacheRead": 0,
"cacheWrite": 0,
"input": 0,
"output": 0
},
"id": "gpt-5.4",
"input": [
"text",
"image"
],
"maxTokens": 64000,
"name": "gpt-5.4 (Tinggal Colok)",
"reasoning": true
}
]
}
}
},
"meta": {
"lastTouchedVersion": "2026.4.23",
"lastTouchedAt": "2026-04-29T21:59:31.233Z"
}
}
Ya, struktur config-nya sudah benar β
Tapi ada 2 catatan penting:
- Gateway token kamu juga kepost public:
"token": "d4cbea..."
Itu token untuk akses gateway/dashboard. Sebaiknya rotate/ganti juga.
- Error
401 API key tidak ditemukanbukan dari config ini, tapi dari:
"apiKey": {
"source": "env",
"id": "TINGGALCOLOK_API_KEY"
}
Jadi pastikan env var berisi API key baru yang valid.
Di PowerShell:
[Environment]::SetEnvironmentVariable("TINGGALCOLOK_API_KEY", "KEY_BARU_KAMU", "User")
Tutup PowerShell, buka lagi, cek:
$env:TINGGALCOLOK_API_KEY.StartsWith("RID-")
$env:TINGGALCOLOK_API_KEY.Length
Lalu:
openclaw gateway run
Untuk gateway token yang sudah kepost, paling aman generate token baru lalu set:
$bytes = New-Object byte[] 32
[System.Security.Cryptography.RandomNumberGenerator]::Fill($bytes)
$token = [Convert]::ToHexString($bytes).ToLower()
openclaw config set gateway.auth.token $token
Intinya: config kamu sudah oke; sekarang tinggal key TinggalColok harus valid dan token gateway sebaiknya diganti.
05:24:52 [agent/embedded] workspace bootstrap file AGENTS.md is 15715 chars (limit 12000); truncating in injected context (sessionKey=agent:main:main)
05:24:54 [agent/embedded] embedded run agent end: runId=b26b1ebc-59c0-492f-a735-5775636c9725 isError=true model=gpt-5.4 provider=tinggalcolok error=401 API key tidak ditemukan rawError=401 API key tidak ditemukan
05:24:54 [agent/embedded] embedded run failover decision: runId=b26b1ebc-59c0-492f-a735-5775636c9725 stage=assistant decision=surface_error reason=auth from=tinggalcolok/gpt-5.4 profile=- rawError=401 API key tidak ditemukan
AGENTS.md truncating itu cuma warning, bukan penyebab error.
Masalah utama masih ini:
401 API key tidak ditemukan
Berarti env var sudah kebaca, tapi isi key-nya ditolak oleh TinggalColok.
Coba set ulang pakai PowerShell begini:
$key = 'KEY_BARU_KAMU'
$key = $key.Trim().Trim('"')
$env:TINGGALCOLOK_API_KEY = $key
[Environment]::SetEnvironmentVariable("TINGGALCOLOK_API_KEY", $key, "User")
Cek tanpa membocorkan key:
$env:TINGGALCOLOK_API_KEY.Length
$env:TINGGALCOLOK_API_KEY.StartsWith("RID-")
Lalu test langsung ke provider:
Invoke-RestMethod -Uri "https://tinggalcolok.online/v1/models" -Headers @{ Authorization = "Bearer $env:TINGGALCOLOK_API_KEY" }
Kalau test itu juga 401, berarti API key-nya salah / sudah revoked / bukan key API yang valid. Ambil key baru dari dashboard TinggalColok.
Kalau test berhasil, baru jalankan:
openclaw gateway run
Dan token gateway yang tadi kepost juga sebaiknya diganti ya.
[agent/embedded] workspace bootstrap file AGENTS.md is 15715 chars (limit 12000); truncating in injected context (sessionKey=agent:main:main)
05:31:07 [agent/embedded] embedded run agent end: runId=45a5a8eb-940f-45e3-9f23-942c46bba495 isError=true model=gpt-5.4 provider=tinggalcolok error=HTTP 500: Internal server error: Failed to parse URL from /messages rawError=500 Internal server error: Failed to parse URL from /messages
05:31:12 [agent/embedded] embedded run agent end: runId=45a5a8eb-940f-45e3-9f23-942c46bba495 isError=true model=gpt-5.4 provider=tinggalcolok error=HTTP 500: Internal server error: Failed to parse URL from /messages rawError=500 Internal server error: Failed to parse URL from /messages
05:31:19 [agent/embedded] embedded run agent end: runId=45a5a8eb-940f-45e3-9f23-942c46bba495 isError=true model=gpt-5.4 provider=tinggalcolok error=HTTP 500: Internal server error: Failed to parse URL from /messages rawError=500 Internal server error: Failed to parse URL from /messages
05:31:30 [agent/embedded] embedded run agent end: runId=45a5a8eb-940f-45e3-9f23-942c46bba495 isError=true model=gpt-5.4 provider=tinggalcolok error=HTTP 500: Internal server error: Failed to parse URL from /messages rawError=500 Internal server error: Failed to parse URL from /messages
05:31:30 [agent/embedded] embedded run failover decision: runId=45a5a8eb-940f-45e3-9f23-942c46bba495 stage=assistant decision=surface_error reason=timeout from=tinggalcolok/gpt-5.4 profile=- rawError=500 Internal server error: Failed to parse URL from /messages
Good news: config + env key sudah kebaca. 401 sudah lewat.
Yang error sekarang:
HTTP 500 ... Failed to parse URL from /messages
Itu kemungkinan dari server/proxy TinggalColok, bukan syntax config OpenClaw. Warning AGENTS.md truncating bisa diabaikan dulu.
Coba test langsung di PowerShell:
$body = @{
model = "gpt-5.4"
messages = @(
@{ role = "user"; content = "halo" }
)
max_tokens = 64
} | ConvertTo-Json -Depth 10
Invoke-RestMethod `
-Uri "https://tinggalcolok.online/v1/chat/completions" `
-Method Post `
-Headers @{
Authorization = "Bearer $env:TINGGALCOLOK_API_KEY"
"Content-Type" = "application/json"
} `
-Body $body
Kalau hasilnya sama 500 /messages, berarti API TinggalColok/proxy-nya bermasalah untuk model itu. Coba model lain, misalnya ubah default ke:
"primary": "tinggalcolok/claude-opus-4.6"
atau:
"primary": "tinggalcolok/gpt-5.3-codex"
Kalau test langsung berhasil tapi OpenClaw masih error, coba set "reasoning": false untuk gpt-5.4 dulu.
Dan token gateway + API key yang sudah kepost public tetap sebaiknya diganti ya.
Invoke-RestMethod : {"error":{"message":"Internal server error: Failed to parse URL from
/messages","type":"api_error"}}
At line:1 char:1
- Invoke-RestMethod `
-
+ CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], WebExc eption + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand
Berarti bukan OpenClaw lagi β test langsung ke API TinggalColok juga gagal dengan error yang sama:
Internal server error: Failed to parse URL from /messages
Jadi config kamu sudah sampai ke provider, tapi server/proxy TinggalColok-nya yang error untuk request OpenAI-compatible itu.
Yang bisa dicoba:
- Coba model lain dari provider yang sama:
"primary": "tinggalcolok/gpt-5.3-codex"
- Kalau semua model sama error, berarti endpoint/key/provider TinggalColok perlu dicek dari dashboard/support mereka.
- Kalau mereka punya docs base URL berbeda, pakai base URL yang mereka kasih. Untuk OpenClaw config kamu sekarang sudah benar bentuknya:
"api": "openai-completions",
"baseUrl": "https://tinggalcolok.online/v1"
Warning AGENTS.md truncating tetap bisa diabaikan dulu.
Dan sekali lagi: rotate API key + gateway token yang tadi sempat kepost public ya.
Aku cek docs-nya. TinggalColok memang punya 2 format: OpenAI (/v1/chat/completions) dan Anthropic (/v1/messages). Error kamu muncul dari OpenAI route, jadi coba route Anthropic dulu. (tinggalcolok.online)
PowerShell test:
$body = @{
model = "gpt-5.4"
max_tokens = 64
messages = @(
@{ role = "user"; content = "halo" }
)
stream = $false
} | ConvertTo-Json -Depth 10
Invoke-RestMethod `
-Uri "https://tinggalcolok.online/v1/messages" `
-Method Post `
-Headers @{
Authorization = "Bearer $env:TINGGALCOLOK_API_KEY"
"Content-Type" = "application/json"
} `
-Body $body
Kalau ini berhasil, ubah config OpenClaw:
"api": "anthropic-messages",
"baseUrl": "https://tinggalcolok.online/v1"
bukan:
"api": "openai-completions"
Kalau /v1/messages juga gagal, berarti masalahnya di backend TinggalColok/key/model, bukan OpenClaw. Also: docs mereka masih menampilkan placeholder __NEXT_PUBLIC_API_DOMAIN__, jadi endpoint di docs agak kurang rapi. Tetap pakai https://tinggalcolok.online/v1.
Invoke-RestMethod : {"type":"error","error":{"type":"api_error","message":"Internal server error: Failed to parse URL
from /messages"}}
At line:1 char:1
- Invoke-RestMethod `
-
+ CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], WebExc eption + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand
Iya, ini makin jelas: problemnya di sisi TinggalColok, bukan config OpenClaw kamu.
Docs mereka bilang OpenClaw pakai:
"api": "openai-completions"
dan endpoint format OpenAI adalah /v1/chat/completions; API key pakai Bearer token RID-.... (tinggalcolok.online)
Tapi request langsung dari PowerShell ke API mereka tetap balas:
Failed to parse URL from /messages
Itu berarti backend TinggalColok sendiri lagi gagal saat meneruskan request ke /messages.
Jadi config kamu kembalikan/pertahankan seperti ini:
"api": "openai-completions",
"baseUrl": "https://tinggalcolok.online/v1"
Lalu cek apakah key + models endpoint jalan:
Invoke-RestMethod `
-Uri "https://tinggalcolok.online/v1/models" `
-Headers @{ Authorization = "Bearer $env:TINGGALCOLOK_API_KEY" }
Kalau /v1/models berhasil tapi chat gagal, kirim error itu ke support TinggalColok. Docs mereka juga masih menampilkan placeholder __NEXT_PUBLIC_API_DOMAIN__, jadi kemungkinan ada bug/deploy config di API mereka.
INI HASIL SAAT SAYA TEST DI PLAYGROUND
05.46.59
[INFO]
Mengirim pesan (openai format)...
05.46.59
[REQ]
POST https://tinggalcolok.online/v1/chat/completions
Authorization: Bearer RID-fc96...
{
"model": "gpt-5.3-codex",
"max_tokens": 200,
"messages": [
{
"role": "user",
"content": "HAI"
}
],
"stream": false
}
05.47.00
[ERR]
500 - Internal server error: Failed to parse URL from /messages
05.47.03
[INFO]
Mengirim pesan (openai format)...
05.47.03
[REQ]
POST https://tinggalcolok.online/v1/chat/completions
Authorization: Bearer RID-fc96...
{
"model": "claude-opus-4.6",
"max_tokens": 200,
"messages": [
{
"role": "user",
"content": "HAI"
}
],
"stream": false
}
05.47.03
[ERR]
429 - Token MAX habis. Beli paket untuk menambah token MAX.
05.47.05
[INFO]
Mengirim pesan (anthropic format)...
05.47.05
[REQ]
POST https://tinggalcolok.online/v1/messages
Authorization: Bearer RID-fc96...
{
"model": "claude-opus-4.6",
"max_tokens": 200,
"messages": [
{
"role": "user",
"content": "HAI"
}
],
"stream": false
}
05.47.06
[ERR]
429 - Token MAX habis. Beli paket untuk menambah token MAX.
05.47.06
[INFO]
Streaming test (anthropic format)...
05.47.06
[REQ]
POST https://tinggalcolok.online/v1/messages
Authorization: Bearer RID-fc96...
stream: true
05.47.07
[ERR]
429 - Token MAX habis. Beli paket untuk menambah token MAX.
05.47.08
[INFO]
Streaming test (anthropic format)...
05.47.08
[REQ]
POST https://tinggalcolok.online/v1/messages
Authorization: Bearer RID-fc96...
stream: true
05.47.08
[ERR]
429 - Token MAX habis. Beli paket untuk menambah token MAX.
05.47.11
[INFO]
Streaming test (anthropic format)...
05.47.11
[REQ]
POST https://tinggalcolok.online/v1/messages
Authorization: Bearer RID-fc96...
stream: true
05.47.11
[ERR]
500 - Internal server error: Failed to parse URL from /messages
05.47.11
[INFO]
Mengirim pesan (anthropic format)...
05.47.11
[REQ]
POST https://tinggalcolok.online/v1/messages
Authorization: Bearer RID-fc96...
{
"model": "gpt-5.3-codex-high",
"max_tokens": 200,
"messages": [
{
"role": "user",
"content": "HAI"
}
],
"stream": false
}
05.47.12
[ERR]
500 - Internal server error: Failed to parse URL from /messages
Yep, hasil playground itu mengonfirmasi:
claude-opus-4.6β 429 Token MAX habis = key valid, tapi kuota MAX habis.gpt-5.3-codex/gpt-5.3-codex-highβ 500 Failed to parse URL from /messages = bug/masalah backend TinggalColok untuk model itu.- Jadi OpenClaw config kamu bukan masalah utama.
Untuk sekarang, supaya OpenClaw jalan, pilih model non-MAX / Standard yang masih punya kuota, misalnya dari /v1/models cari yang bukan MAX. Jangan pakai gpt-5.4 / claude-opus-4.6 kalau token MAX habis.
Set default-nya misalnya:
"primary": "tinggalcolok/claude-sonnet-4.5"
dan pastikan model itu ada di array models.
Kalau mau cepat, jalankan:
Invoke-RestMethod `
-Uri "https://tinggalcolok.online/v1/models" `
-Headers @{ Authorization = "Bearer $env:TINGGALCOLOK_API_KEY" }
Pilih model Standard yang muncul, lalu tambahkan ke config dan set sebagai primary.
Untuk error Failed to parse URL from /messages, itu perlu dilaporkan ke admin/support TinggalColok.
05:52:06 [diagnostic] lane task error: lane=main durationMs=23153 error="Error: No API key found for provider "mistral". Auth store: C:\Users\rakha christian.openclaw\agents\main\agent\auth-profiles.json (agentDir: C:\Users\rakha christian.openclaw\agents\main\agent). Configure auth for this agent (openclaw agents add <id>) or copy auth-profiles.json from the main agentDir."
05:52:06 [diagnostic] lane task error: lane=session:agent:main:main durationMs=23157 error="Error: No API key found for provider "mistral". Auth store: C:\Users\rakha christian.openclaw\agents\main\agent\auth-profiles.json (agentDir: C:\Users\rakha christian.openclaw\agents\main\agent). Configure auth for this agent (openclaw agents add <id>) or copy auth-profiles.json from the main agentDir."
05:52:06 [model-fallback/decision] model fallback decision: decision=candidate_failed requested=mistral/mistral-large-latest candidate=mistral/mistral-large-latest reason=auth next=none detail=No API key found for provider "mistral". Auth store: C:\Users\rakha christian.openclaw\agents\main\agent\auth-profiles.json (agentDir: C:\Users\rakha christian.openclaw\agents\main\agent). Configure auth for this agent (openclaw agents add <id>) or copy auth-profiles.json from the main agentDir.
05:52:06 Embedded agent failed before reply: No API key found for provider "mistral". Auth store: C:\Users\rakha christian.openclaw\agents\main\agent\auth-profiles.json (agentDir: C:\Users\rakha christian.openclaw\agents\main\agent). Configure auth for this agent (openclaw agents add <id>) or copy auth-profiles.json from the main agentDir. | No API key found for provider "mistral". Auth store: C:\Users\rakha christian.openclaw\agents\main\agent\auth-profiles.json (agentDir: C:\Users\rakha christian.openclaw\agents\main\agent). Configure auth for this agent (openclaw agents add <id>) or copy auth-profiles.json from the main agentDir.
Itu artinya sekarang OpenClaw sedang mencoba pakai Mistral:
requested=mistral/mistral-large-latest
No API key found for provider "mistral"
Jadi model aktifnya berubah ke mistral/mistral-large-latest, bukan tinggalcolok/....
Kalau kamu tidak mau pakai Mistral, ubah balik modelnya. Dari chat kirim standalone:
/model tinggalcolok/claude-sonnet-4.5
atau model Standard lain yang ada di /v1/models.
Kalau mau dari PowerShell:
openclaw config set agents.defaults.model.primary "tinggalcolok/claude-sonnet-4.5"
openclaw gateway restart
Kalau thread/session ini masih nyangkut ke Mistral, mulai session baru:
/new tinggalcolok/claude-sonnet-4.5
Kalau memang mau pakai Mistral, kamu harus setup API key Mistral dulu. Tapi untuk kasusmu, lebih masuk akal pakai model TinggalColok Standard yang kuotanya masih ada.
AGENTS.md truncating masih bisa diabaikan. Error utamanya adalah model aktif salah / auth Mistral belum ada.
Docs: https://docs.openclaw.ai/concepts/models
06:00:15 [diagnostic] lane task error: lane=main durationMs=29071 error="Error: No API key found for provider "mistral". Auth store: C:\Users\rakha christian.openclaw\agents\main\agent\auth-profiles.json (agentDir: C:\Users\rakha christian.openclaw\agents\main\agent). Configure auth for this agent (openclaw agents add <id>) or copy auth-profiles.json from the main agentDir."
06:00:15 [diagnostic] lane task error: lane=session:temp:slug-generator durationMs=29077 error="Error: No API key found for provider "mistral". Auth store: C:\Users\rakha christian.openclaw\agents\main\agent\auth-profiles.json (agentDir: C:\Users\rakha christian.openclaw\agents\main\agent). Configure auth for this agent (openclaw agents add <id>) or copy auth-profiles.json from the main agentDir."
06:00:15 [llm-slug-generator] Failed to generate slug: Error: No API key found for provider "mistral". Auth store: C:\Users\rakha christian.openclaw\agents\main\agent\auth-profiles.json (agentDir: C:\Users\rakha christian.openclaw\agents\main\agent). Configure auth for this agent (openclaw agents add <id>) or copy auth-profiles.json from the main agentDir.
at resolveApiKeyForProvider (file:///C:/Users/rakha%20christian/AppData/Roaming/npm/node_modules/openclaw/dist/model-auth-C2dR7B_F.js:344:8)
at getApiKeyForModel (file:///C:/Users/rakha%20christian/AppData/Roaming/npm/node_modules/openclaw/dist/model-auth-C2dR7B_F.js:408:9)
at resolveApiKeyForCandidate (file:///C:/Users/rakha%20christian/AppData/Roaming/npm/node_modules/openclaw/dist/pi-embedded-sj59rpw_.js:718:10)
at applyApiKeyInfo (file:///C:/Users/rakha%20christian/AppData/Roaming/npm/node_modules/openclaw/dist/pi-embedded-sj59rpw_.js:728:28)
at initializeAuthProfile (file:///C:/Users/rakha%20christian/AppData/Roaming/npm/node_modules/openclaw/dist/pi-embedded-sj59rpw_.js:846:11)
at file:///C:/Users/rakha%20christian/AppData/Roaming/npm/node_modules/openclaw/dist/pi-embedded-sj59rpw_.js:1475:10
at async file:///C:/Users/rakha%20christian/AppData/Roaming/npm/node_modules/openclaw/dist/command-queue-BeffWSYG.js:110:22
ini terjadi karena saya hapus auth-profiles.json
Iya, kalau auth-profiles.json dihapus, provider bawaan seperti Mistral kehilangan API key/profile-nya.
Tapi untuk setup TinggalColok kamu sebenarnya tidak butuh auth-profiles.json, karena key-nya dari env var:
"apiKey": {
"source": "env",
"provider": "default",
"id": "TINGGALCOLOK_API_KEY"
}
Masalahnya sekarang session masih mencoba pakai:
mistral/mistral-large-latest
Balikin ke TinggalColok:
Di chat, kirim standalone:
/new tinggalcolok/claude-sonnet-4.5
atau model TinggalColok lain yang kuotanya masih ada.
Di PowerShell juga set default lagi:
openclaw config set agents.defaults.model.primary "tinggalcolok/claude-sonnet-4.5"
openclaw gateway restart
Kalau kamu memang mau pakai Mistral lagi, jalankan ulang setup model/auth:
openclaw configure --section model
Tapi untuk kasusmu: jangan urus Mistral dulu. Fokus pakai model TinggalColok Standard yang berhasil di playground.
saya ingin pake mistral aja
Bisa. Untuk Mistral, kamu perlu Mistral API key asli dari console Mistral, bukan key TinggalColok.
Di PowerShell:
[Environment]::SetEnvironmentVariable("MISTRAL_API_KEY", "KEY_MISTRAL_KAMU", "User")
Tutup PowerShell, buka lagi, cek:
$env:MISTRAL_API_KEY.Length
Set default model:
openclaw config set agents.defaults.model.primary "mistral/mistral-large-latest"
openclaw gateway restart
openclaw models list --provider mistral
openclaw models status --probe
Kalau mau model lebih murah/ringan, bisa pakai:
openclaw config set agents.defaults.model.primary "mistral/mistral-small-latest"
Docs Mistral OpenClaw: https://docs.openclaw.ai/providers/mistral
Catatan: karena kamu sudah hapus auth-profiles.json, pakai env var MISTRAL_API_KEY ini cara paling simpel.
jika saya pakai 6 key api?
Bisa, kalau 6 API key itu valid dan sesuai aturan provider. Jangan dipakai buat bypass abuse/rate limit ya.
Untuk Mistral, kalau cuma env var:
MISTRAL_API_KEY
itu cuma 1 key.
Kalau mau 6 key, pakai auth profiles OpenClaw. Jalankan ini 6x:
openclaw models auth paste-token --provider mistral --profile-id mistral:key1
openclaw models auth paste-token --provider mistral --profile-id mistral:key2
openclaw models auth paste-token --provider mistral --profile-id mistral:key3
openclaw models auth paste-token --provider mistral --profile-id mistral:key4
openclaw models auth paste-token --provider mistral --profile-id mistral:key5
openclaw models auth paste-token --provider mistral --profile-id mistral:key6
Setiap command akan minta paste token/key. Paste satu key berbeda tiap profile.
Lalu set model:
openclaw config set agents.defaults.model.primary "mistral/mistral-large-latest"
openclaw gateway restart
openclaw models status --probe --probe-provider mistral
OpenClaw akan pilih/rotate auth profile Mistral, terutama saat rate limit/cooldown. Tapi dia tidak rotate setiap request; biasanya profile dipin per session supaya cache stabil.