1. 本地总结器为什么要统一走一个 endpointwx-cli 抓取微信本地聊天记录、Claude Skill 负责结构化总结这条链路本身跑得通但真正落到日常使用问题往往不在抓取而在“总结这一步到底调谁”。我最初的做法是每个 Skill 里各写一份鉴权信息结果就是换一次 Key 要改五六个文件配额分散在好几个账号里哪个 Skill 超了额度都查不出来。先说清楚这套东西是什么、能做什么、适合谁。wx-cli 是一个把本地微信数据库解密并导出成文本的开源命令行工具Claude Skill 是 Claude Code 里可复用的指令封装两者组合起来就是一个完全跑在本机的群聊总结器。适合的人很明确每天要处理多个群消息、又不想把聊天记录传到第三方网页版的人。不适合的人也很明确只想点一下按钮就出结果、不愿意碰命令行的这套方案会让你觉得麻烦。核心检索词先摆出来本地总结器、Claude Skill、wx-cli、Claude Code、endpoint 配置。这几个词贯穿全文后面每一步都围绕它们展开。问题的本质是鉴权与配额的分散。Claude Code 默认走官方通道但如果你同时用多个 Skill、多个项目、甚至多台机器每个地方都维护一份 Key管理成本会指数级上升。更麻烦的是一旦某个 Skill 的调用量突然涨上去你根本不知道是哪个 Skill 在消耗配额。我试过的解法是把所有请求收敛到一个统一的 API 通道也就是把 endpoint 改到 TaoToken。这样做的直接好处有三个第一Key 只有一份改一处全局生效第二配额集中在一个面板里看哪个 Skill 用得多一目了然第三Base URL 统一之后Skill 文件里不再出现任何敏感信息分享配置片段时也不用先脱敏。这里要区分两个概念。Claude Code 的本地执行模式和“调用远端模型”不是一回事。本地执行模式指的是 Claude Code 读取本地文件、在本地跑 Skill 逻辑但生成摘要这一步仍然需要模型推理而模型推理要么走官方通道要么走你配置的兼容 endpoint。把 endpoint 改到 TaoToken改的就是这最后一步的出口前面的抓取、导出、文件读取全部还在本机完成。所以这一章要解决的问题可以归纳成一句话让 wx-cli 负责“拿到数据”让 Claude Skill 负责“组织逻辑”让 TaoToken 负责“统一出口”。三者职责清晰后面配置才不会乱。还有一个容易被忽略的点endpoint 统一之后你的 Skill 文件可以做到完全可移植。换电脑、换项目目录只要环境变量里的 Base URL 和 Key 对得上Skill 不需要任何修改。这对经常在多台机器之间切换的人来说省下的时间非常可观。2. TaoToken 前置Key、Base URL 与模型 ID 三件套在动配置文件之前先把三件套准备好Base URL、API Key、Model ID。这三样缺一不可而且顺序不能乱——先有 Key才能验证 Base URL 通不通最后才是把 Model ID 填进配置。Base URL 用https://taotoken.net/api注意这里不加任何查询参数保持干净。API Key 在控制台的 API Keys 页面创建创建之后只显示一次复制下来存到安全的地方。Model ID 取决于你要用哪个模型Claude 系列和兼容模型都可以具体以文档里的模型列表为准。这里给一个我自己的习惯Key 不写进任何会被 git 追踪的文件统一放环境变量。macOS 和 Linux 用~/.zshrc或~/.bashrcWindows 用系统环境变量或者 PowerShell 的 profile。这样做的原因是Skill 文件、settings 文件都可能被同步或分享Key 一旦写死在里面泄露风险很高。环境变量这样设export TAOTOKEN_API_KEYsk-你的key export TAOTOKEN_BASE_URLhttps://taotoken.net/api设完之后source ~/.zshrc让它生效然后echo $TAOTOKEN_API_KEY确认能打印出来。这一步看起来简单但后面所有配置都依赖它值得多花三十秒确认。接下来是 Claude Code 的配置文件。Claude Code 读取的 settings 文件位置在~/.claude/settings.json如果目录不存在就先建。这个文件里可以配置环境变量、模型、以及各种行为开关。我们要改的核心是让它把请求发到 TaoToken 的 endpoint而不是默认地址。配置之前先想清楚一件事你是要全局改还是只给某个项目改。全局改就是改~/.claude/settings.json所有项目生效项目级改就是在项目根目录建.claude/settings.json只对这个项目生效。我建议先做全局验证通了再考虑项目级覆盖。模型 ID 这块要特别注意大小写和连字符。不同模型的 ID 格式不一样填错会直接报模型不存在的错误。文档里有完整的模型列表复制粘贴比手打靠谱。如果你不确定用哪个先用文档里标注的默认推荐模型跑通之后再换。三件套准备好之后先别急着改 Skill。先用最简单的方式验证 endpoint 通不通也就是下一章的配置片段。验证通过再动 Skill出问题的时候排查范围小很多。3. 可复制配置settings.json 与 Skill 文件片段这一章给的是可以直接复制的片段路径和原文保持一致。先给 Claude Code 的 settings 配置再给 Skill 文件最后说明两者怎么配合。~/.claude/settings.json的内容{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_API_KEY: sk-你的key, ANTHROPIC_MODEL: 你的模型ID } }如果你更习惯用环境变量而不是写进 settings也可以只保留ANTHROPIC_BASE_URL和ANTHROPIC_MODELKey 从系统环境变量读。两种方式都行写进 settings 的好处是 Claude Code 启动时一定能读到不依赖 shell 的加载顺序。注意ANTHROPIC_BASE_URL后面不要加/v1之类的后缀保持https://taotoken.net/api原样。有些兼容层会自动补路径你手动加了反而会拼成双份。接下来是 Skill 文件。路径~/.claude/skills/wechat-summarizer/SKILL.md内容如下--- name: wechat-summarizer description: 读取本地导出的微信群聊记录并生成结构化摘要 --- # WeChat Group Summarizer 当用户输入 /wechat-summary 或要求总结群聊时激活。 ## 执行步骤 1. 读取参数指定的本地文件路径默认 ~/group-chat.md 2. 分析聊天记录识别核心决策、待办事项、未解决问题、重要信息 3. 输出结构化摘要控制在 300 字以内 ## 输出格式 群聊摘要[群名称] [日期] 核心决策 - [决策内容] — 由 [谁] 确认 待办事项 - [任务内容] — 负责人[谁]截止[时间] 未解决问题 - [问题描述] — 需要 [谁] 跟进 重要信息 - [关键信息条目] ## 约束 - 所有输入来自本地文件 - 摘要语言与群聊语言一致 - 超出 300 字时优先保留决策和待办这个 Skill 文件里没有任何网络配置因为网络出口由 settings.json 统一控制。这就是 endpoint 统一的好处Skill 只管逻辑不管鉴权。如果你用的是 Codex 而不是 Claude Code配置位置换成~/.codex/auth.json结构类似把 Base URL 和 Key 填进去即可。Cline 的话是在 MCP 配置里填 Base URL、Key、Model ID 三件套。不管哪个工具三件套的逻辑是一样的。配置改完之后Claude Code 需要重启才能读到新的 settings。Skill 文件不需要重启保存即生效。这个区别要记住否则你会以为是 Skill 没生效其实是 settings 没加载。4. 端到端验证从导出到摘要返回配置写完接下来跑一次完整的端到端验证。这一步的目的是确认三件事wx-cli 能导出、Claude Code 能读到文件、请求能通过 TaoToken 正常返回摘要。先确认微信在运行然后导出wx export 项目周例会群 --format markdown -o ~/group-chat.md导出成功后cat ~/group-chat.md看一眼应该能看到类似这样的内容[2026-05-15 09:23] 张工今天的发布计划确认了吗 [2026-05-15 09:25] 李姐确认了下午 3 点灰度晚上 8 点全量 [2026-05-15 09:26] 王哥测试环境没问题回归测试今早已跑完 [2026-05-15 09:30] 张工好3 点前大家准备好回滚脚本然后进 Claude Codeclaude在交互界面里输入/wechat-summary ~/group-chat.md如果一切正常几秒到几十秒内会返回结构化摘要格式和 Skill 里定义的一致。返回结果里应该能看到核心决策、待办事项、未解决问题、重要信息四个部分。验证成功的标志不只是“有输出”还要确认输出确实来自你配置的 endpoint。一个简单的判断方法如果 Key 填错了会直接报 401如果 Base URL 填错了会报连接失败或 404。只有两者都对才会正常返回内容。如果摘要内容明显不对比如把待办识别成了决策那是 Skill 提示词的问题不是 endpoint 的问题。这两类问题要分开排查否则容易在错误的方向上浪费时间。跑通之后建议把这次验证的命令记下来以后换机器或者换 Key照着跑一遍就能确认环境是否正常。这比每次重新翻文档快得多。5. 常见报错排查401、local proxy failed 与模型不存在这一章对照真实报错来排查。下面这几个是我和身边人实际遇到过的按出现频率排序。401 Unauthorized。最常见的原因是 Key 没读到或者 Key 失效。先echo $ANTHROPIC_API_KEY确认环境变量有值再确认 settings.json 里的 Key 没有多余空格。如果 Key 是从控制台复制的注意别把前后的引号也复制进去。还有一种情况是 Key 创建后没保存只显示一次丢了就只能重新建一个。local proxy failed / connection refused。这个报错通常出现在 Base URL 写错或者网络不通的时候。先确认ANTHROPIC_BASE_URL是https://taotoken.net/api没有多余后缀。然后用curl -I https://taotoken.net/api看能不能通。如果 curl 都不通那就是网络层面的问题和配置无关。reading choices / 返回结构解析失败。这个报错说明请求发出去了但返回的 JSON 结构不符合预期。常见原因是 Model ID 填错或者 Base URL 指向了一个不兼容的路径。检查 Model ID 是否和文档里完全一致注意大小写和连字符。OAuth 相关报错。如果你之前登录过官方账号Claude Code 可能缓存了 OAuth 凭证导致它优先走官方通道而不是你配置的 endpoint。解决办法是清理缓存目录通常在~/.claude/下具体文件名以文档为准。清理之后重新启动 Claude Code。Skill 没有被识别。检查路径是否是~/.claude/skills/wechat-summarizer/SKILL.md注意目录名和文件名的大小写。在 Claude Code 里输入/可以看到已加载的 Skill 列表如果列表里没有就是路径或文件名的问题。wx-cli 报无法连接微信进程。确认微信在运行且已登录微信版本不低于 4.x。wx-cli 依赖扫描运行中的微信进程内存来获取解密密钥微信没开就扫不到。排查的时候有个通用原则先确认请求有没有发出去再确认发到了哪里最后确认返回了什么。401 是没发出去或没通过鉴权connection refused 是发出去但没到reading choices 是到了但解析失败。按这个顺序定位比盲目改配置高效得多。6. 把 endpoint 统一之后日常怎么用配置跑通只是开始真正省时间的是把它变成日常流程。我自己的做法是写一个导出脚本每天早上自动把几个常用群导出到固定目录然后打开 Claude Code 一条指令出摘要。导出脚本大概长这样#!/bin/bash GROUPS(项目周例会群 运营对接群 技术交流群) DATE$(date %Y-%m-%d) OUTPUT_DIR~/wechat-summaries/$DATE mkdir -p $OUTPUT_DIR for GROUP in ${GROUPS[]}; do wx export $GROUP --format markdown -o $OUTPUT_DIR/$GROUP.md echo 已导出$GROUP.md done加到 crontab 里工作日早上 8:55 自动跑55 8 * * 1-5 /bin/bash ~/scripts/wechat-daily-summary.sh这样你 9 点打开电脑各群的原始记录已经在本地等着了。进 Claude Code 输入/wechat-summary加上文件路径几分钟就能把一天的群信息归总完。endpoint 统一之后还有一个隐性好处你可以随时切换模型而不用改 Skill。比如某天想用推理更强的模型处理复杂群聊只改 settings.json 里的 Model ID 就行Skill 文件一个字都不用动。这种解耦在长期使用中会越来越值钱。最后说一个实用技巧把常用的导出命令和 Skill 调用命令写成一个 alias比如alias wsumclaude -p /wechat-summary ~/group-chat.md这样连进交互界面都省了直接在终端出结果。适合已经跑顺、不需要中途调整的场景。如果你还没开始配建议先去控制台把 Key 建好然后照着第 3 章的 settings 片段改一遍再用第 4 章的命令验证一次。跑通之后再考虑自动化和多群批量顺序别反。
阅读完成 · 觉得有帮助?