docs: add Z.AI GLM coding plan setup guide

- Add comprehensive documentation for Z.AI GLM models
- Include curl examples for testing Z.AI API
- Document available models and troubleshooting
- Update .env.example with Z.AI configuration

Z.AI provides GLM models (glm-4.5, glm-4.6, glm-4.7, glm-5) through
the OpenAI-compatible endpoint at api.z.ai/api/coding/paas/v4.

Existing tests verify:
- zai_base_url() returns correct URLs for global/CN variants
- create_provider('zai', key) successfully creates provider
- Regional alias predicates cover all variants
This commit is contained in:
adisusilayasa 2026-02-18 13:50:03 +08:00 committed by Chummy
parent 42bf05df47
commit 402d8f0a32
2 changed files with 148 additions and 0 deletions

135
docs/zai-glm-setup.md Normal file
View file

@ -0,0 +1,135 @@
# Z.AI GLM Coding Plan Setup
ZeroClaw supports Z.AI's GLM models through multiple endpoints. This guide covers the recommended configuration.
## Overview
Z.AI provides GLM models through two API styles:
| Endpoint | API Style | Provider String |
|----------|-----------|-----------------|
| `/api/coding/paas/v4` | OpenAI-compatible | `zai` |
| `/api/anthropic` | Anthropic-compatible | `anthropic-custom:https://api.z.ai/api/anthropic` |
## Setup
### Quick Start
```bash
zeroclaw onboard \
--provider "zai" \
--api-key "YOUR_ZAI_API_KEY"
```
### Manual Configuration
Edit `~/.zeroclaw/config.toml`:
```toml
api_key = "YOUR_ZAI_API_KEY"
default_provider = "zai"
default_model = "glm-4.7"
default_temperature = 0.7
```
## Available Models
| Model | Description |
|-------|-------------|
| `glm-4.5` | Stable release |
| `glm-4.5-air` | Lightweight version |
| `glm-4.6` | Improved reasoning |
| `glm-4.7` | Current recommended |
| `glm-5` | Latest |
## Verify Setup
### Test with curl
```bash
# Test OpenAI-compatible endpoint
curl -X POST "https://api.z.ai/api/coding/paas/v4/chat/completions" \
-H "Authorization: Bearer YOUR_ZAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "glm-4.7",
"messages": [{"role": "user", "content": "Hello"}]
}'
```
Expected response:
```json
{
"choices": [{
"message": {
"content": "Hello! How can I help you today?",
"role": "assistant"
}
}]
}
```
### Test with ZeroClaw CLI
```bash
# Test agent directly
echo "Hello" | zeroclaw agent
# Check status
zeroclaw status
```
## Environment Variables
Add to your `.env` file:
```bash
# Z.AI API Key
ZAI_API_KEY=your-id.secret
# Or use the provider-specific variable
# The key format is: id.secret (e.g., abc123.xyz789)
```
## Troubleshooting
### Rate Limiting
**Symptom:** `rate_limited` errors
**Solution:**
- Wait and retry
- Check your Z.AI plan limits
- Try `glm-4.7` instead of `glm-5` (more stable availability)
### Authentication Errors
**Symptom:** 401 or 403 errors
**Solution:**
- Verify your API key format is `id.secret`
- Check the key hasn't expired
- Ensure no extra whitespace in the key
### Model Not Found
**Symptom:** Model not available error
**Solution:**
- List available models:
```bash
curl -s "https://api.z.ai/api/coding/paas/v4/models" \
-H "Authorization: Bearer YOUR_ZAI_API_KEY" | jq '.data[].id'
```
## Getting an API Key
1. Go to [Z.AI](https://z.ai)
2. Sign up for a Coding Plan
3. Generate an API key from the dashboard
4. Key format: `id.secret` (e.g., `abc123.xyz789`)
## Related Documentation
- [ZeroClaw README](../README.md)
- [Contributing Guide](../CONTRIBUTING.md)