Claw AI 对话助手 (claw-ai-dialogue)
Overview
把 g3yun 平台的 Claw AI 对话页 (src/views/claw/dialogue.vue) 封装成一个可被 Agent 调用的 Skill。
核心是一个 Python 客户端 src/claw_client.py(纯标准库、零依赖),它对接后端 nfwt-tce-xl 的
/geo/interval/* 接口族:
| 能力 | 接口 | 说明 |
|---|---|---|
| 登录 | POST /geo/interval/loginSkill |
用户名+密码 → 后端代理 v3.xunlingai.com/?act=login(JSON 请求体)→ 返回 yztToken(=tokens.yzt) + oidToken(=tokens.oid) |
| 额度 | GET /geo/interval/llm/dailyUsed |
今日免费额度(已用/上限)与累计用量;见下方"额度与算力" |
| 流式对话 | POST /geo/interval/chat/stream |
SSE,返回 thinking / progress / result / error 事件 |
| 反馈 | POST /geo/interval/chat/feedback |
赞(1)/踩(2)+原因 |
| 历史 | GET /geo/interval/chatHistory |
当前用户对话记录 |
| 引导 | GET /geo/interval/guide |
能力卡片列表 |
默认后端:https://admin.g3pu.com/prod-api(生产)。可用环境变量 CLAW_BASE_URL 或 --base-url 覆盖。
When To Use
- 用户说"用 Claw AI 对话 / 讯灵 AI / g3yun 智能对话"时。
- 用户要用自然语言管理发布间隔、官网信息等(例如"查看发布间隔""删除抖音的发布间隔")。
- 用户要求"先登录,把用户名密码发给 WorkBuddy 再操作"——即本 Skill 的标准入口流程。
- 需要对某条 AI 回答点赞/点踩、查看历史对话、获取能力引导。
安全与凭据 (重要)
- 密码只在登录时由用户提供,通过 stdin 或参数传入,绝不写入磁盘、日志或 SKILL.md。
- 登录成功后仅缓存后端返回的
yztToken(鉴权令牌)与oidToken(签名令牌)到~/.cache/skillhub-claw/token.json(权限 0600)。两者都是会话凭证、非密码。oidToken在调用对话/反馈接口时作为data.sign传入,用于服务端签名校验。 - 本 Skill 只与
BASE_URL单一域名通信,无任何其它外发请求。 - 切换账号或清理时,直接删除
~/.cache/skillhub-claw/token.json即可。
使用流程
本 Skill 的脚本位于 src/claw_client.py,用 Python 3.8+ 运行(WorkBuddy 沙箱可用托管 Python
C:\Users\Administrator\.workbuddy\binaries\python\versions\3.13.12\python.exe,无需 pip 安装任何包)。
> 下面的 <SCRIPT> 指 src/claw_client.py 的完整路径(即本 Skill 目录下 src/claw_client.py)。
1) 登录(第一步,必须)
向用户索取 用户名 和 密码,然后登录。推荐用管道传入,避免密码出现在命令行参数里:
printf '%s\n%s\n' "<用户名>" "<密码>" | python <SCRIPT> login
登录成功会缓存 yztToken 与 oidToken,并自动回显一次账户额度。后续命令都复用这两个令牌(yzt 用于鉴权,oid 作为 data.sign 签名),无需再次输入密码。
若 token 失效(接口返回"请联系管理员,开通Calw"),重新执行上面的 login 即可。
1.1) 账户额度(今日免费额度 / 算力值)
python <SCRIPT> quota
输出示例:
账户额度:
今日免费额度: 5/5(剩余 0)
算力值剩余: 1718257
- 今日免费额度:来自 claw 后端
GET /geo/interval/llm/dailyUsed,字段userDailyUsed/userDailyLimit(每日 5 次,不累加;用完则消耗算力值)。 - 算力值剩余:来自客服系统
GET https://kefu.shupin.tv/coin(前端ClawHeader.vue→getlivekfcoin()),鉴权用Authorization: Bearer <oidToken>(即登录返回的tokens.oid),返回{"coin": 1718257}。可用环境变量CLAW_KEFU_URL覆盖域名。 - 登录成功后也会自动打印一次同样的额度。
2) 流式对话
python <SCRIPT> chat --message "查看我当前的发布间隔"
# 或管道传入
echo "删除抖音的发布间隔" | python <SCRIPT> chat
脚本会实时打印 [思考] / [进度] / [结果] 事件,最终结果含 intent、message、recordId。
3) 反馈(赞/踩)
python <SCRIPT> feedback --record-id <上一步的 recordId> --type 1 # 赞
python <SCRIPT> feedback --record-id <recordId> --type 2 --reason "回答不准确" # 踩, 需原因
4) 历史记录
python <SCRIPT> history
5) 引导卡片
python <SCRIPT> guide
输出规范
- 对话结果直接原样呈现
message(通常含 Markdown 表格/列表),并附intent与recordId。 recordId是后续反馈、二次操作的关键标识,务必保留并回显给用户。- 若返回
intent=confirm_delete等需要确认的操作,把"确认删除/取消"意图再次以chat发送即可(后端按data.confirmData流转)。
限制说明
- 仅支持
admin.g3pu.com/prod-api生产后端(或经CLAW_BASE_URL指定的同源后端)。 yztToken为会话凭证,过期后需重新login。- 本 Skill 不处理图形验证(滑块/短信验证码);登录接口依赖后端
loginSkill(代理 g3yun 系统?act=login,JSON 请求体)返回yztToken(=tokens.yzt) +oidToken(=tokens.oid)。 - 今日免费额度可查(
quota命令,来自 claw 后端);算力值剩余来自客服系统kefu.shupin.tv/coin,由 skill 客户端直连取数(用oidToken鉴权),无需后端新增接口。
发布到 SkillHub (https://skillhub.cn)
本 Skill 已按 SkillHub 规范编写,可直接发布:
- 在 skillhub.cn 用手机号注册并完成实名认证(人脸核身)。
- 个人中心 → API keys 创建 Token,得到
skh_xxx(仅显示一次)。 - 安装 CLI(需 Mac/Linux/WSL,Windows 用户请走 WSL):
bash curl -fsSL https://skillhub.cn/install/install.sh | bash -s -- --cli-only export PATH="$HOME/.local/bin:$PATH" - 登录:
bash skillhub login --key <skh_xxx> --host https://api.skillhub.cn - 本地预检(不会真正发布,只校验格式):
bash skillhub publish <本Skill文件夹路径> --dry-run - 正式发布:
bash skillhub publish <本Skill文件夹路径> --changelog "首次发布"
> ⚠️ slug: xunling-ai 必须全网唯一。若发布报 409 slug 已被占用,
> 请把 SKILL.md 里的 slug 改成你自己的唯一标识(建议加 handle 前缀)后再发。
> ⚠️ 本 Skill 调用外部生产后端并涉及用户凭据,发布时请如实填写分类与描述,便于平台安全审核通过。