跳到正文
cccskills
免费在 GitHub 公开

higress-gateway-management

Manage consumers, credentials, AI providers, and model routing in Higress AI Gateway through its Console API. The skill explains session authentication, access permissions, and how to update existing settings while preserving required version information.

中文简介正在准备中。当前显示英语简介。

原文查看原文说明

Manage the Higress AI Gateway via its Console API (consumers, routes, AI providers, MCP servers). Use when creating consumers, configuring routes, or managing AI gateway settings.

查看安装方法

适用场景

  • Create consumers and replace their authentication keys
  • Route requests to providers by model name
  • Grant workers access to AI routes
  • Add providers and rotate their API keys

包含的文件(2)

  • SKILL.md6.9 KB
  • references/higress-api-doc.json181.1 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Higress AI Gateway Management

Overview

This skill allows you to manage the Higress AI Gateway via its Console API. The Console API runs at http://127.0.0.1:8001 and uses Session Cookie authentication (NOT Basic Auth).

Environment Variables

These environment variables are pre-configured in the Manager container. Access them directly in bash:

# Core configuration (set by agentteams-install.sh)
AGENTTEAMS_ADMIN_USER      # Admin username for Higress Console
AGENTTEAMS_ADMIN_PASSWORD  # Admin password for Higress Console
AGENTTEAMS_AI_GATEWAY_DOMAIN  # AI Gateway domain (e.g., aigw-local.agentteams.io)
HIGRESS_COOKIE_FILE    # Path to session cookie file

No need to set defaults - these are always available in the container environment.

Authentication

A session cookie file is stored at the path in ${HIGRESS_COOKIE_FILE} environment variable. Use it with curl -b "${HIGRESS_COOKIE_FILE}".

If the cookie expires, re-login:

curl -X POST http://127.0.0.1:8001/session/login \
  -H 'Content-Type: application/json' \
  -c "${HIGRESS_COOKIE_FILE}" \
  -d '{"name": "'"${AGENTTEAMS_ADMIN_USER}"'", "password": "'"${AGENTTEAMS_ADMIN_PASSWORD}"'"}'

Consumer Management

List Consumers

curl -s http://127.0.0.1:8001/v1/consumers -b "${HIGRESS_COOKIE_FILE}" | jq

Create Consumer

curl -X POST http://127.0.0.1:8001/v1/consumers \
  -b "${HIGRESS_COOKIE_FILE}" \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "worker-alice",
    "credentials": [{
      "type": "key-auth",
      "source": "BEARER",
      "values": ["<GENERATED_KEY>"]
    }]
  }'

Update Consumer (e.g., replace credential key)

# GET-modify-PUT pattern (consumers do NOT have a version field)
NEW_KEY=$(openssl rand -hex 32)
CONSUMER=$(curl -s http://127.0.0.1:8001/v1/consumers/worker-alice -b "${HIGRESS_COOKIE_FILE}")
UPDATED=$(echo $CONSUMER | jq --arg new "$NEW_KEY" '.credentials[0].values = [$new]')
curl -X PUT http://127.0.0.1:8001/v1/consumers/worker-alice \
  -b "${HIGRESS_COOKIE_FILE}" \
  -H 'Content-Type: application/json' \
  -d "$UPDATED"

Delete Consumer

curl -X DELETE http://127.0.0.1:8001/v1/consumers/worker-alice -b "${HIGRESS_COOKIE_FILE}"

AI Route Management

AI routes are internal routes managed via a separate API at /v1/ai/routes. They define LLM provider routing with model-level predicates, domain matching, and consumer auth. Do NOT use /v1/routes for AI routes.

List AI Routes

curl -s http://127.0.0.1:8001/v1/ai/routes -b "${HIGRESS_COOKIE_FILE}" | jq

Get AI Route by Name

curl -s http://127.0.0.1:8001/v1/ai/routes/default-ai-route -b "${HIGRESS_COOKIE_FILE}" | jq

Create AI Route

The system initializes with a default-ai-route that has no modelPredicates — all model requests go through it. When the human asks to add a new provider, create a separate AI route with modelPredicates to distinguish which models go where:

# Example: add a DeepSeek route alongside the existing default route
curl -X POST http://127.0.0.1:8001/v1/ai/routes \
  -b "${HIGRESS_COOKIE_FILE}" \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "deepseek-route",
    "domains": ["${AGENTTEAMS_AI_GATEWAY_DOMAIN}"],
    "pathPredicate": {"matchType": "PRE", "matchValue": "/", "caseSensitive": false},
    "upstreams": [{"provider": "deepseek", "weight": 100, "modelMapping": {}}],
    "modelPredicates": [{"matchType": "PRE", "matchValue": "deepseek"}],
    "authConfig": {
      "enabled": true,
      "allowedCredentialTypes": ["key-auth"],
      "allowedConsumers": ["manager"]
    }
  }'

When adding a new provider route with modelPredicates, also update the default-ai-route to add matching modelPredicates for its own models, so routes are unambiguous.

Key fields:

  • domains: which domain(s) this AI route serves (e.g. ${AGENTTEAMS_AI_GATEWAY_DOMAIN})
  • upstreams: LLM provider(s) with weight and optional model mapping
  • modelPredicates: match models by prefix/exact/regex (e.g. {"matchType":"PRE","matchValue":"deepseek"} routes all deepseek* models). Omit when only one route exists
  • authConfig: consumer-level access control

Update AI Route (e.g., grant Worker access)

# Step 1: GET current AI route
AI_ROUTE=$(curl -s http://127.0.0.1:8001/v1/ai/routes/default-ai-route -b "${HIGRESS_COOKIE_FILE}")

# Step 2: Add worker-alice to allowedConsumers
UPDATED=$(echo $AI_ROUTE | jq '.authConfig.allowedConsumers += ["worker-alice"]')

# Step 3: PUT full object (AI Route has "version" field, include it)
curl -X PUT http://127.0.0.1:8001/v1/ai/routes/default-ai-route \
  -b "${HIGRESS_COOKIE_FILE}" \
  -H 'Content-Type: application/json' \
  -d "$UPDATED"

Delete AI Route

curl -X DELETE http://127.0.0.1:8001/v1/ai/routes/<route-name> -b "${HIGRESS_COOKIE_FILE}"

LLM Provider Configuration

List AI Providers

curl -s http://127.0.0.1:8001/v1/ai/providers -b "${HIGRESS_COOKIE_FILE}" | jq

Create Provider

# Qwen (native type)
curl -X POST http://127.0.0.1:8001/v1/ai/providers \
  -b "${HIGRESS_COOKIE_FILE}" \
  -H 'Content-Type: application/json' \
  -d '{
    "type": "qwen", "name": "qwen",
    "tokens": ["<API_KEY>"], "protocol": "openai/v1",
    "tokenFailoverConfig": {"enabled": false},
    "rawConfigs": {"qwenEnableSearch": false, "qwenEnableCompatible": true, "qwenFileIds": []}
  }'

# OpenAI-compatible (generic)
curl -X POST http://127.0.0.1:8001/v1/ai/providers \
  -b "${HIGRESS_COOKIE_FILE}" \
  -H 'Content-Type: application/json' \
  -d '{
    "type": "openai", "name": "my-provider",
    "tokens": ["<API_KEY>"], "protocol": "openai/v1",
    "modelMapping": {},
    "rawConfigs": {"apiUrl": "https://api.example.com/v1"}
  }'

Update Provider (e.g., rotate API keys)

# GET-modify-PUT pattern (provider has "version" field)
PROVIDER=$(curl -s http://127.0.0.1:8001/v1/ai/providers/qwen -b "${HIGRESS_COOKIE_FILE}")
UPDATED=$(echo $PROVIDER | jq '.tokens = ["<NEW_KEY>"]')
curl -X PUT http://127.0.0.1:8001/v1/ai/providers/qwen \
  -b "${HIGRESS_COOKIE_FILE}" \
  -H 'Content-Type: application/json' \
  -d "$UPDATED"

MCP Server Management

For creating, updating, listing, and deleting MCP Servers, as well as managing consumer access to MCP tools, see the mcp-server-management skill.

Important Notes

  • Auth Plugin Activation: First configuration takes ~40s, subsequent changes ~10s
  • Version field: AI Routes and Providers have a version field. Always GET before PUT to get the latest version.
  • Consumer version: Consumers do NOT have a version field
  • MCP Server: See mcp-server-management skill for full details on creating and managing MCP servers

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Find worker agents in Nacos that match a task, recommend candidates, and import the administrator's chosen worker. It also supports importing a specified nacos package URI, with worker name confirmation and direct reporting of installation failures.

中文简介正在准备中。当前显示英语简介。

  • Find a suitable worker for an unassigned task
  • Compare Nacos worker candidates before importing
  • Import a worker from a specified nacos package URI
agentscope-ai/AgentTeams58522026年10月20日 更新

Prepare an existing OpenClaw setup for import as an AgentTeams managed Worker. Analyze tool dependencies, adapt role instructions and scheduled jobs, and build a ZIP package containing the configuration and custom image requirements.

中文简介正在准备中。当前显示英语简介。

  • Moving standalone OpenClaw into AgentTeams
  • Reviewing required tool dependencies
  • Adapting role instructions for a Worker
agentscope-ai/AgentTeams58522026年10月20日 更新

Manage communication channels by identifying senders, maintaining trusted contacts, and setting the administrator's primary notification destination. It also covers first contact on a new channel and contacting the administrator across channels, with rules for handling unknown senders.

中文简介正在准备中。当前显示英语简介。

  • Identify who sent a message in a room
  • Add or remove trusted contacts
  • Configure the administrator's primary notification channel
agentscope-ai/AgentTeams58522026年10月20日 更新

Prepare coding tasks for delegation to an authorized agent’s AI command-line tool. Set up and synchronize the workspace, write precise change requests, then review returned changes and run relevant checks before reporting completion.

中文简介正在准备中。当前显示英语简介。

  • Delegating code implementation or bug fixes to an AI CLI
  • Writing coding requests with clear acceptance criteria
  • Reviewing and testing changes returned by a CLI
agentscope-ai/AgentTeams58522026年10月20日 更新

Run AI coding command-line tools on behalf of worker agents using their prepared prompts and workspaces. Detect available tools, configure delegation, return results, and apply supported execution controls such as time budgets and permission settings.

中文简介正在准备中。当前显示英语简介。

  • Running coding tools for worker agents
  • Detecting and selecting available coding CLIs
  • Setting Qwen Code permissions and time budgets
agentscope-ai/AgentTeams58522026年10月20日 更新

Guide agent replies in Matrix chat rooms, including when to mention a coordinator, report completion, raise blockers, or answer questions. The rules limit repetitive acknowledgments and stop exchanges that add no new task, question, or decision.

中文简介正在准备中。当前显示英语简介。

  • Reporting task completion to a coordinator
  • Raising blockers or questions that need action
  • Reducing repetitive acknowledgments
agentscope-ai/AgentTeams58522026年10月20日 更新

查看 agentscope-ai 的全部技能

报告此技能的问题