Runtime: GLM (Zhipu) worker via Claude Code over z.ai — proven live
GLM Coding Plan has no CLI of its own and ToS-throttles raw SDK/API access
("1113 Insufficient Balance"); it is served only inside officially supported
tools, and Claude Code is the primary one. So GLM rides the existing
claude_cli provider with a z.ai env override (ANTHROPIC_BASE_URL=
api.z.ai/api/anthropic + ANTHROPIC_AUTH_TOKEN) — no new provider, no image
rebuild. Fresh HOME + CLAUDE_CODE_OAUTH_TOKEN="" so the container's cached
Claude subscription doesn't override the routing; key via $NAME indirection.
Deployed & verified on gw-04: worker_glm answers "I am GLM-4.7, built by
Zhipu AI" over /ws/chat. Three subscription models now co-reside on one
runtime — Claude (coordinator), Kimi (worker_kimi), GLM (worker_glm).
Co-Authored-By: Claude Opus 4.8 <[email protected]>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
2e889df35e
commit
ca91d18860
@@ -61,14 +61,20 @@ mcp_config = "/zeroclaw-data/clawmates-mcp.json"
|
|||||||
# model_provider = "kimi_cli.default"
|
# model_provider = "kimi_cli.default"
|
||||||
# risk_profile = "toolfree"
|
# risk_profile = "toolfree"
|
||||||
#
|
#
|
||||||
# GLM is a first-class ZeroClaw family (OpenAI-compat, separate key). Set model +
|
# GLM (Zhipu) — like Kimi, the GLM Coding Plan is subscription-billed and its
|
||||||
# key via env (TOML sub-tables parse empty); the orchestrator's role→alias map
|
# raw OpenAI/SDK endpoint is ToS-THROTTLED ("1113 Insufficient Balance"); it is
|
||||||
# (ZEROCLAW_AGENT_MAP) selects e.g. researcher=worker_kimi, analyst=worker_glm.
|
# only served inside OFFICIALLY SUPPORTED tools, and Claude Code is the #1 one.
|
||||||
# ZEROCLAW_providers__models__glm__default__model=glm-4.6
|
# So GLM rides our existing `claude_cli` provider via a z.ai env override — no
|
||||||
# ZEROCLAW_providers__models__glm__default__api_key=<GLM key>
|
# new provider, no image rebuild. Needs a fresh HOME + CLAUDE_CODE_OAUTH_TOKEN=""
|
||||||
# [providers.models.glm.default]
|
# so the container's cached Claude subscription doesn't override the routing
|
||||||
|
# (pre-create <HOME>/.claude.json = {"hasCompletedOnboarding":true}). The z.ai
|
||||||
|
# key is read from the daemon env via the `$NAME` indirection (keep it out of
|
||||||
|
# config). Models: glm-5.2 (Opus-class), glm-4.7 (Sonnet-class), glm-4.5-air.
|
||||||
|
# [providers.models.claude_cli.glm]
|
||||||
|
# model = "glm-4.7"
|
||||||
|
# env = { HOME = "/zeroclaw-data/glm-home", CLAUDE_CODE_OAUTH_TOKEN = "", ANTHROPIC_BASE_URL = "https://api.z.ai/api/anthropic", ANTHROPIC_AUTH_TOKEN = "$ZAI_API_KEY", API_TIMEOUT_MS = "3000000" }
|
||||||
# [agents.worker_glm]
|
# [agents.worker_glm]
|
||||||
# model_provider = "glm.default"
|
# model_provider = "claude_cli.glm"
|
||||||
# risk_profile = "toolfree"
|
# risk_profile = "toolfree"
|
||||||
|
|
||||||
# Tool-free profile — agents can only reason + call the MCP door (tools inject
|
# Tool-free profile — agents can only reason + call the MCP door (tools inject
|
||||||
|
|||||||
Reference in New Issue
Block a user