TL;DR: 网络搜索 →
web_search,网页读取 →web_reader,仓库搜索 →zread,视觉理解 →vision,额度查询 →balance。全部通过 Coding Plan 免费额度调用。
bash
SKILL=~/.openclaw/workspace/skills/zhipu-tools-coding-plan
# 网络搜索(首选)
python3 $SKILL/scripts/zhipu_tool.py web_search "关键词" --count 5
# 网页读取
python3 $SKILL/scripts/zhipu_tool.py web_reader "https://example.com"
# 仓库文档搜索
python3 $SKILL/scripts/zhipu_tool.py zread search "owner/repo" "关键词"
# 视觉理解(图片/视频)
python3 $SKILL/scripts/zhipu_tool.py vision /path/to/image.png --prompt "描述内容"
# 额度/余额查询
python3 $SKILL/scripts/zhipu_tool.py balance
注意:
--recency/ --domain 通过注入 query 实现,效果取决于搜索引擎快捷入口: scripts/zhipu.sh <command> [args] — 统一 shell 入口,支持 search/ reader/ zread/ vision,自动加载 .env。
当用户发出模糊请求时,按以下规则映射到具体工具:
用户说的应该用的示例"搜一下/查一下/找一下"web_search``web_search "Rust 2026 新特性" --count 5"看看这个链接/帮我读一下"web_reader``web_reader "https://example.com/article""xxx仓库怎么用/xxx项目文档"zread search``zread search "tauri-apps/tauri" "window creation""看看xxx仓库结构"zread structure``zread structure "openai/openai""读一下xxx仓库的README"zread read``zread read "openai/openai" "README.md""分析这张图片/看看截图"vision (自动识别 image)vision /path/to/img.png --prompt "描述内容""看看这个视频"vision (自动识别 video)vision /path/to/vid.mp4 --prompt "关键动作""查一下智谱余额/额度/配额还剩多少"balance``balance
各工具的典型输出格式(agent 拿到后可直接处理/摘要):
web_search 输出:
text
### 结果 1
**标题**: xxx
**链接**: https://...
**摘要**: xxx
balance 输出:
text
套餐等级: max
MCP 月度配额: 141/4000 (已用 3%), 剩余 3859
- search-prime: 102
- web-reader: 38
- zread: 1
Token 用量:
- 5小时窗口: 55%
- 每周窗口: 50%
这部分告诉 agent 在哪些节点需要做决策或用户确认,避免自主失控。
text
需要搜索/获取信息?
├─ 互联网搜索 → web_search(首选)
├─ 读取指定网页 → web_reader
├─ GitHub 仓库文档 → zread
├─ 本地文档(PDF/Word等) → file_parser
├─ 图片/视频分析 → vision
└─ 查询套餐额度/余额 → balance
场景检查点建议行为视觉理解✅ 当前免费Coding Plan 免费额度,无需确认文件解析⚠️ 走账户余额同上,提醒用户可能消耗账户余额搜索无结果换关键词重试最多重试 2 次换词,仍无结果则提示用户并建议用内置 web_searchMCP 连接失败⚠️ 不自动切换不自动 fallback 到 Legacy,直接报错并建议用内置工具内容安全拦截不自动重试告知用户搜索词可能触发安全策略,建议修改关键词大文件上传超限时提示视频超过 8MB 时告知用户限制,建议压缩或用 URL 方式额度查询失败不自动重试API Key 无效/网络问题时直接报错,提示用户检查 ZHIPU_API_KEY
⚠️ 安全原则:本工具默认使用 MCP 免费模式, 不会自动切换到可能产生费用的 Legacy API。Legacy 模式需用户显式设置
ZHIPU_USE_MCP=false启用。
功能MCP 工具端点说明网络搜索web_search_prime``/web_search_prime/mcp实时互联网搜索,支持过滤网页读取webReader``/web_reader/mcp抓取网页标题、正文、元数据仓库文档搜索search_doc``/zread/mcp搜索 GitHub 仓库文档仓库目录结构get_repo_structure``/zread/mcp查看 GitHub 仓库目录树仓库文件读取read_file``/zread/mcp读取 GitHub 仓库指定文件视觉理解—Coding Plan 免费GLM-4.6V 图像/视频分析(当前免费)文件解析—Legacy API解析 PDF/Word/Excel/PPT 等额度查询—open.bigmodel.cn/api/monitor/usage/quota/limit查询套餐等级、MCP月度配额、Token限速窗口用量
前五项通过 Coding Plan MCP 端点免费调用,视觉理解、视频分析和文件解析通过旧版 API 调用;额度查询走 bigmodel.cn 的用量监控接口(GET 请求,不消耗 Coding Plan 调用次数)。
视觉理解(vision)通过逆向分析智谱官方
@z_ai/mcp-servernpm 包实现。从包源码中提取了底层 API 调用方式(open.bigmodel.cn/api/paas/v4/chat/completions+glm-4.6v模型)。**当前走 Coding Plan 免费额度,不产生费用。**后续智谱可能调整计费策略,届时需要重新评估。额度查询(balance)接口来源于 cc-switch 项目公开的用量查询脚本示例(GitHub farion1231/cc-switch#1588),非官方文档记录接口,字段含义按社区经验解读,若智谱调整返回格式需相应更新。
在 openclaw.json 中配置 API Key:
json
{
"skills": {
"entries": {
"zhipu-tools": {
"apiKey": "YOUR_ZHIPU_API_KEY"
}
}
}
}
或设置环境变量: ZHIPU_API_KEY
模式端点额度启用方式MCP (默认)api.z.ai/api/mcp/...Z.AI Coding Plan 免费默认启用Legacyopen.bigmodel.cn/api/paas/v4/...⚠️ 账户余额需显式 ZHIPU_USE_MCP=false
⚠️ MCP 失败时不会自动切换到 Legacy。Legacy API 走账户余额,自动切换可能让用户产生意外费用。 如需使用 Legacy 模式,必须 显式设置 环境变量
ZHIPU_USE_MCP=false。
bash
python3 scripts/zhipu_tool.py balance
python3 scripts/zhipu_tool.py balance --raw # 输出原始 JSON
查询内容:
接口为 GET 请求( open.bigmodel.cn/api/monitor/usage/quota/limit),使用与其他 Legacy 调用相同的 ZHIPU_API_KEY,但认证头是裸 key( Authorization: <API_KEY>),不带 Bearer 前缀。不消耗 Coding Plan 的月度调用次数。
bash
# 分析图片(自动识别为图片类型)
python3 scripts/zhipu_tool.py vision /path/to/image.png
python3 scripts/zhipu_tool.py vision /path/to/image.png --prompt "描述这个UI界面"
python3 scripts/zhipu_tool.py vision "https://example.com/screenshot.png" --prompt "识别截图中的错误信息"
# 分析视频(自动识别为视频类型)
python3 scripts/zhipu_tool.py vision /path/to/video.mp4
python3 scripts/zhipu_tool.py vision /path/to/video.mp4 --prompt "描述视频中的关键动作"
python3 scripts/zhipu_tool.py vision "https://example.com/demo.mp4" --prompt "这个视频演示了什么"
# 手动指定媒体类型(当自动识别不准时)
python3 scripts/zhipu_tool.py vision weird-file --type video
python3 scripts/zhipu_tool.py vision weird-file --type image
支持的图片格式: jpg, jpeg, png, gif, webp, bmp, svg, tiff, ico 等常见图片格式 支持的视频格式: mp4, mov, m4v, avi, mkv, webm, flv, wmv(本地视频 ≤ 8MB)
支持本地文件路径和 HTTP/HTTPS URL。本地文件自动 base64 编码,远程 URL 直接传递。
默认自动识别媒体类型(通过文件扩展名和 MIME type),也可通过 --type 手动指定。
bash
cd ~/.openclaw/workspace/skills/zhipu-tools
# Shell(MCP 模式,推荐)
./scripts/web_search.sh "搜索关键词" [count]
# Python(支持更多参数,注意部分参数仅在 Legacy 模式生效)
python3 scripts/zhipu_tool.py web_search "搜索关键词" \
--count 10 --recency week --domain example.com
⚠️
--recency和--domain参数在 MCP 模式下会通过注入搜索词的方式实现(如site:example.com、最近一周),效果取决于搜索引擎理解,不保证精确过滤。
bash
# Shell
./scripts/web_reader.sh "https://www.example.com"
# Python
python3 scripts/zhipu_tool.py web_reader "https://www.example.com"
bash
# Shell - 搜索仓库文档
./scripts/zread.sh search "openai/openai" "how to use"
# Shell - 查看目录结构
./scripts/zread.sh structure "openai/openai"
./scripts/zread.sh structure "openai/openai" "src/"
# Shell - 读取文件
./scripts/zread.sh read "openai/openai" "README.md"
# Python
python3 scripts/zhipu_tool.py zread search "openai/openai" "how to use"
python3 scripts/zhipu_tool.py zread structure "openai/openai" --path src/
python3 scripts/zhipu_tool.py zread read "openai/openai" "README.md"
bash
./scripts/file_parser.sh /path/to/document.pdf PDF
python3 scripts/zhipu_tool.py file_parser /path/to/document.docx --file-type DOCX
参数类型必填说明search_querystring是搜索内容,建议不超过 70 字符search_recency_filterstring否oneDay, oneWeek, oneMonth, oneYear, noLimitcontent_sizestring否medium (默认), highlocationstring否cn, ussearch_domain_filterstring否限制搜索域名
参数类型必填说明urlstring是目标网页 URL
返回:标题、正文内容、元数据、链接列表。
参数类型必填说明repostring是GitHub 仓库,如 "openai/openai"querystring是搜索关键词
参数类型必填说明repostring是GitHub 仓库pathstring否子目录路径
参数类型必填说明repostring是GitHub 仓库pathstring是文件路径,如 "README.md"
所有远程 MCP 端点通过 streamableHttp 协议交互:
mcp-session-idHeaders: Authorization: Bearer $API_KEY, Content-Type: application/json, Accept: text/event-stream, application/json
套餐搜索/网页读取/仓库搜索 次数/月价格Lite100 次免费Pro1,000 次免费Max4,000 次免费
额度次月自动重置。用 balance 命令可实时查看当月已用/剩余次数。
当需要网络搜索、网页读取等能力时,优先使用智谱 API(本技能的 MCP 工具),而非内置的 web_search / web_fetch 工具。
原因:智谱 Coding Plan MCP 端点免费且额度充足(Pro 1000次/月),可节省内置搜索 API 的配额消耗。
优先级顺序:
web_search_prime、 webReader)— 首选,免费web_search / web_fetch — MCP 不可用时使用错误现象自动处理需要用户干预时MCP 连接失败SSL/网络错误不自动 fallback直接报错,建议用内置 web_search/web_fetchMCP 内容安全拦截返回空结果 + 错误提示不自动重试告知用户搜索词触发安全策略,请修改搜索词Legacy 429 限流"余额不足"不自动重试(重试只会浪费请求)告知用户:MCP 模式正常,429 是 Legacy 预期行为Legacy 超时视觉理解 120s/其他 30s不自动重试告知用户:检查网络或文件大小文件不存在FileNotFoundError—直接报错,提示检查路径视频超 8MBValueError—告知用户限制,建议压缩或用 URL搜索无结果返回空列表—告知用户并建议换关键词,可用内置工具额度查询失败HTTP 401/网络错误不自动重试告知用户检查 ZHIPU_API_KEY 是否有效
requests 库( pip install requests)ZHIPU_API_KEY 或 .env 文件)scripts/ 目录下工具脚本存在且可执行api.z.ai(搜索/网页/仓库)open.bigmodel.cn(视觉/文件解析/额度查询)— ⚠️ 部分网络环境可能不可用