ワンクリックで
ai-gateway-management
// Manage AI Gateway providers, routes, and model assignments for Manager and Workers. Provides a web UI and API for dynamic configuration.
// Manage AI Gateway providers, routes, and model assignments for Manager and Workers. Provides a web UI and API for dynamic configuration.
| name | ai-gateway-management |
| description | Manage AI Gateway providers, routes, and model assignments for Manager and Workers. Provides a web UI and API for dynamic configuration. |
This skill provides a web-based management interface for the AI Gateway, allowing human admins to:
The management interface is accessible via multiple ways:
http://manager-local.hiclaw.io:8080
http://<your-server-ip>:8080/agm/
This allows access from LAN or internet without configuring a domain.
Both access methods require Basic Auth:
admin (or HICLAW_ADMIN_USER env var)HICLAW_ADMIN_PASSWORD env var)Three themes available:
Workers display animated pixel-art avatars with status indicators:
All endpoints are prefixed with /ni_status/ and require authentication.
| Method | Path | Description |
|---|---|---|
| GET | /ni_status/metrics | Get system metrics (CPU, memory, connections) |
| POST | /ni_status/reload | Reload configuration for Manager or Worker |
| GET | /ni_status/health | Health check endpoint |
| Method | Path | Description |
|---|---|---|
| GET | /ni_status/assignment/manager | Get Manager's current model |
| PUT | /ni_status/assignment/manager | Set Manager's model |
| GET | /ni_status/assignment/workers | List all Worker model assignments |
| GET | /ni_status/assignment/workers/{name} | Get Worker's model |
| PUT | /ni_status/assignment/workers/{name} | Set Worker's model |
| POST | /ni_status/set-model | Set model (alternative endpoint) |
| POST | /ni_status/test-provider | Test provider connectivity |
| Method | Path | Description |
|---|---|---|
| GET | /ni_status/providers | List all AI providers |
| POST | /ni_status/create-provider | Create a new provider |
| GET | /ni_status/route | Get current AI routes |
monitor-server.shStarts the monitor API server on port 18080.
# Start monitor server
bash /opt/hiclaw/agent/skills/ai-gateway-management/scripts/monitor-server.sh start
# Stop monitor server
bash /opt/hiclaw/agent/skills/ai-gateway-management/scripts/monitor-server.sh stop
# Check status
bash /opt/hiclaw/agent/skills/ai-gateway-management/scripts/monitor-server.sh status
list-providers.shList all configured AI providers.
bash /opt/hiclaw/agent/skills/ai-gateway-management/scripts/list-providers.sh
create-provider.shCreate a new AI provider.
bash /opt/hiclaw/agent/skills/ai-gateway-management/scripts/create-provider.sh \
--type qwen \
--name qwen \
--token "sk-xxx"
set-model.shSet model for Manager or a Worker. Tests connectivity before applying.
# Set Manager model
bash /opt/hiclaw/agent/skills/ai-gateway-management/scripts/set-model.sh \
--target manager \
--provider qwen \
--model qwen3.5-plus
# Set Worker model
bash /opt/hiclaw/agent/skills/ai-gateway-management/scripts/set-model.sh \
--target worker:alice \
--provider deepseek \
--model deepseek-chat
# With custom parameters
bash /opt/hiclaw/agent/skills/ai-gateway-management/scripts/set-model.sh \
--target manager \
--provider openai \
--model gpt-4 \
--context-window 128000 \
--max-tokens 8192 \
--reasoning true
get-assignment.shGet current model assignment.
bash /opt/hiclaw/agent/skills/ai-gateway-management/scripts/get-assignment.sh manager
bash /opt/hiclaw/agent/skills/ai-gateway-management/scripts/get-assignment.sh worker:alice
When this skill is installed, it automatically:
127.0.0.1:18080/ni_status pointing to the monitor serviceModel assignments are stored in MinIO for persistence:
/agents/manager/model.json/agents/{worker-name}/model.jsonFormat:
{
"provider": "qwen",
"model": "qwen3.5-plus",
"contextWindow": 200000,
"maxTokens": 64000,
"reasoning": true,
"updatedAt": "2024-01-15T10:30:00Z"
}
┌─────────────────────────────────────────────────────────────┐
│ Higress AI Gateway │
│ ┌─────────────────────────────────────────────────────────┐│
│ │ Route: /ni_status/* → monitor service (this skill) ││
│ │ Route: /v1/* → AI Providers (LLM proxy) ││
│ │ Route: / → default-ai-route (configurable) ││
│ └─────────────────────────────────────────────────────────┘│
└─────────────────────────────────────────────────────────────┘
│
┌───────────────┼───────────────┐
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ Manager │ │ Worker 1 │ │ Worker N │
│ (model A)│ │ (model B)│ │ (model C)│
└──────────┘ └──────────┘ └──────────┘
POST /v1/chat/completions to ensure it's reachabledefault-ai-route to use the new provideropenclaw.json using the standard hiclaw-gateway provider format/agents/{worker-name}/model.jsonopenclaw.json in MinIOBefore switching models, ensure:
If model switching fails:
/tmp/monitor-server.logThis skill uses the default-ai-route for all model requests. Do not create separate routes for each provider unless you need advanced routing (e.g., model-based routing with predicates).
Model assignments are backed up automatically before changes:
/agents/{name}/model.json.backup.YYYYMMDD_HHMMSSSymptom: set-model.sh fails with "Model not reachable" error
Solution:
curl -H "Authorization: Bearer <key>" http://ai-gateway.hiclaw.io:8080/v1/modelsSymptom: Model set but Manager doesn't use it
Solution:
ps aux | grep openclawcurl -X POST http://127.0.0.1:18799/api/reloadjq '.agents.defaults.model.primary' /root/manager-workspace/openclaw.jsonSymptom: Worker model set but Worker uses old model
Solution:
mc stat <bucket>/agents/<worker>/openclaw.json