☰
ZeroNews Skills 实战:用 CLI 让 AI Agent 自动发布本地服务到隧道
2026/9/28 6:55:36 网站建设 项目流程

1. 本地服务发布为什么总卡在最后一步

你本地跑着一个 FastAPI 或者 Spring Boot,接口调通了,前端联调也过了,接下来想让外部访问一下——比如给同事看个 demo、给第三方回调留个地址、或者临时接个 webhook。这时候问题就来了:要么手动去平台上点半天创建隧道,要么在终端里敲一堆 CLI 参数,还得记住 authtoken 放哪、端口映射怎么写、协议选 HTTPS 还是 TCP。

更麻烦的是,如果你在用 Cursor 或 Claude Code 这类 AI Coding 工具,你其实希望 AI 能直接帮你把这件事做完。但 AI 在没有约束的情况下,很容易自己编命令、参数写错、或者把配置改乱。ZeroNews 在 4.0 版本推出的 Skills,就是专门解决这个问题的——它把 ZeroNews 客户端的标准操作流程写成一份「给 AI 看的说明书」,AI 加载后按流程走,你只需要用自然语言说一句「把本地 8080 暴露出去」,剩下的它自己完成。

这篇内容聚焦 ZeroNews Skills 与 CLI 的组合,演示 AI Agent 自动完成本地服务发布到隧道的完整链路。适合正在用 AI Coding IDE 做开发、又经常需要把本地服务临时对外发布的开发者。我会给出可复制的 Skills 配置骨架、CLI 调用示例、隧道发布验证步骤,以及如何通过 TaoToken 统一 Key/API 通道接入 AI 工具,让整条链路一键触发。

2. TaoToken 前置:统一 Key 与 API 通道

在讲 ZeroNews Skills 之前,先说一个容易被忽略的前置问题:AI Agent 要能稳定调用工具,前提是模型通道本身要稳。如果你同时用 Cursor、Claude Code、还有自己的脚本调 API,每个地方配一套 Key、一套 base_url,管理起来很乱,出问题也不好排查。

我的做法是用 TaoToken 做统一入口。它提供兼容 OpenAI 风格的 API 通道,你可以在一个地方管理 Key,然后让不同的 AI 工具都指向同一个 base_url。这样 ZeroNews Skills 在 Agent 里触发时,模型调用走的是同一条通道,不会出现「这个工具能用那个工具报 401」的情况。

具体操作上,你到 TaoToken 控制台创建一个 API Key,然后在各个 AI 工具的配置里把 base_url 指向https://taotoken.net/api,模型名按你实际使用的填。比如在 Claude Code 里,你可以通过环境变量或者配置文件指定;在 Cursor 里则在设置里填自定义 API 地址。这样做的直接好处是:ZeroNews Skills 安装到~/.cursor/skills/或~/.claude/skills/后,Agent 在对话中自动匹配 Skill 并执行 CLI 时,模型侧不会因为通道问题中断。

如果你还没配好通道,可以先到官网 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= 看一下接入说明,再进控制台创建 Key。配好之后,后面所有 CLI 和 Skill 的演示才能顺畅跑通。

3. ZeroNews Skills 安装与 CLI 配置骨架

3.1 安装 Skills 到 AI 工具目录

ZeroNews 官方提供了一组 Client Skills,专门教 AI 怎么正确操作本机的 zeronews 客户端。安装方式是用 npx 全局装:

npx skills add git@github.com:sixtea/zeronews-client-skills.git -g -y

这里的-g表示装到用户目录(全局),Cursor 会放到~/.cursor/skills/,Claude Code 会放到~/.claude/skills/;-y跳过确认。装完之后检查一下:

npx skills ls -a cursor -a claude-code -g

如果列表里能看到zeronews-configure-client、zeronews-expose-service这些名字,说明装好了。这套 Skills 一共 8 个,各管一类任务,常用的几个是:

Skill 名称作用
zeronews-install-client在线安装 zeronews 客户端
zeronews-configure-client配置客户端、绑定 Token 认证
zeronews-expose-service添加隧道,把本地服务暴露到公网
zeronews-inspect-client只读检查隧道,排查用
zeronews-manage-client-service用系统服务方式跑客户端
zeronews-expose-webhook配置 webhook 特性的隧道
zeronews-share-files配置分享本地目录
zeronews-reset-client重置客户端

3.2 CLI 配置骨架

Skills 本质上是对 zeronews CLI 的封装,所以你需要先确保本机有 zeronews 客户端。如果你还没装,可以让 Agent 通过zeronews-install-client这个 Skill 自动装,也可以手动装。装好之后,核心配置是绑定 authtoken:

zeronews config set authtoken <你的_token>

这个 token 在 ZeroNews 平台的客户端认证页面获取。绑定之后,客户端就知道自己属于哪个账号,后续创建隧道才能生效。你可以用下面的命令确认配置是否写入:

zeronews config get authtoken

如果返回了你设置的 token(或者掩码形式),说明配置成功。这一步是整个链路的地基——token 没绑好,后面 Agent 创建隧道时会直接报认证失败。

4. 用 AI Agent 自动发布本地服务到隧道

4.1 自然语言触发 HTTPS 隧道

装好 Skills 之后,你不需要背 Skill 名字,也不用手动 @ 引用。直接在对话里用自然语言说需求,AI 会根据 Skill 描述自动匹配。假设你本地已经有一个 FastAPI 跑在 8080 端口,你想让 AI 帮你加一条 HTTPS 隧道并拿到公网地址,可以这么说:

帮我配置一条 zeronews 隧道,然后把本地 8080 端口的 HTTPS 服务暴露出去,把公网地址告诉我。

Agent 会先匹配到zeronews-expose-service这个 Skill,然后按里面写好的流程执行:检查客户端状态、确认 token 已绑定、调用zeronews add创建隧道、最后把分配到的公网地址返回给你。整个过程你不需要敲任何 CLI 命令。

4.2 再添加一条 TCP 隧道

HTTPS 演示完之后,如果你还想把本地的 Redis 暴露出去做调试,可以继续用自然语言:

帮我用 zeronews 添加 redis 的 tcp 映射,添加完后隧道地址发给我。

Agent 会识别出这是 TCP 协议、目标是本地 Redis 端口(默认 6379),然后创建对应的 TCP 隧道。这里体现的是 Skills 的价值:它把「协议类型、端口、隧道名称」这些参数约定写死在流程里,AI 不会自己乱猜端口或者把协议写错。

4.3 查看隧道状态

隧道建好之后,你想确认一下当前客户端上有哪些隧道在跑,可以直接问:

帮我看下客户端上的隧道状态。

Agent 会匹配zeronews-inspect-client,这是一个只读 Skill,它只会执行检查类命令,不会修改任何配置。这一点很重要——排查问题时你不用担心 AI 顺手把你的隧道删了或者改了。返回结果里会列出隧道名称、协议、本地端口、公网地址和当前状态。

5. 验证请求与成功结果

隧道创建完成后,怎么确认它真的通了?最直接的方式是用 curl 打一下公网地址。假设 Agent 返回的 HTTPS 地址是https://xxxx.zeronews.cc,你可以这样验证:

curl -i https://xxxx.zeronews.cc/health

如果本地 FastAPI 有/health接口,你应该能看到HTTP/2 200和对应的响应体。这一步能确认三件事:隧道确实建立了、本地服务在正常响应、公网地址可以访问。

对于 TCP 隧道,验证方式取决于服务类型。以 Redis 为例,你可以用 redis-cli 连公网地址:

redis-cli -h <公网地址> -p <公网端口> ping

返回PONG就说明 TCP 隧道通了。实测下来,HTTPS 隧道从触发到拿到可用地址,通常在一分钟内完成;TCP 隧道也差不多。如果你在 Agent 里看到它执行了zeronews add并返回了地址,但 curl 不通,先别急着重建,按下一节的排查顺序走一遍。

6. 本篇常见错排查

6.1 Agent 说找不到 Skill

如果你在对话里说了需求,但 AI 没有触发 ZeroNews Skill,先检查安装列表:

npx skills ls -a cursor -a claude-code -g

确认zeronews-expose-service等 Skill 在列表里。如果不在,重新执行安装命令。另外注意,Skill 是按工具目录区分的,你装在 Cursor 下的 Skill,Claude Code 不一定能读到,需要分别确认。

6.2 认证失败或 token 无效

Agent 执行创建隧道时报认证错误,大概率是 authtoken 没绑或者绑错了。检查:

zeronews config get authtoken

如果没有返回值,重新执行zeronews config set authtoken <你的_token>。注意 token 要从 ZeroNews 平台的客户端认证页面复制,不要手动改字符。

6.3 隧道创建成功但访问不通

这种情况先确认本地服务本身是否在监听:

curl -i http://127.0.0.1:8080/health

本地都不通,隧道自然也不通。如果本地通、公网不通,检查隧道配置里的本地端口是否写对,以及协议是否匹配(HTTPS 隧道对应的是本地 HTTP 服务,不是 HTTPS 服务,除非你本地确实起了 TLS)。

6.4 模型通道报错导致 Agent 中断

如果 Agent 在执行 Skill 过程中突然报模型调用错误,比如 401 或超时,检查你的 API 通道配置。用 TaoToken 统一入口的话,确认 base_url 指向https://taotoken.net/api,Key 没有过期。通道稳定是 Skill 能跑完的前提,这一步别省。

7. 把整条链路固定下来

ZeroNews Skills 本质上是给 AI Agent 看的 ZeroNews 客户端操作规范。它把 authtoken、add、service、inspect 这些 CLI 操作包成稳定流程,让 Agent 按流程走,避免出现 AI 猜命令、改错配置的情况。你只需要用自然语言描述需求,隧道创建与运维就能自动完成。

如果你经常用 AI Coding IDE 辅助开发,建议把 TaoToken 的 Key 和 API 通道先配好,再装 ZeroNews Skills,这样模型侧和工具侧都是稳的。需要长期跑编码和 Agent 任务的,可以看 Coding Plan;只是临时验证模型或调试通道的,用模型对话就够;接入和排障相关的细节,直接翻接入文档和 API Keys 页面。整条链路跑通一次之后,后面每次发布本地服务,就是一句话的事。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询