weread-skills
tencent/wechatreading
WeChat Reading assistant—search books, manage shelves, view notes and highlights, browse reviews, and discover personalized recommendations.
What is weread-skills?
WeChat Reading (微信读书) skill provides access to Tencent's reading platform through an Agent API Gateway. Use it to search for books, manage your reading shelf, view personal notes and highlights, browse book reviews, track reading statistics, and get personalized book recommendations.
- Search books in the WeChat Reading store by keyword and retrieve book details
- Manage and view your reading shelf, including books, audiobooks, and collections
- View and export personal notes, highlights, bookmarks, and annotations for any book
- Browse popular highlights within chapters and community thoughts on specific passages
- Access reading statistics including daily/monthly reading duration, books completed, and reading preferences
- View public book reviews and recommendations for any title
How to install weread-skills
npx skills add https://github.com/tencent/wechatreading --skill weread-skills- WeChat Reading account with API access
- WEREAD_API_KEY environment variable set (format: wrk-xxxxxxxx)
How to use weread-skills
- 1.Set your API key: export WEREAD_API_KEY=<your-api-key>
- 2.Search for a book using the search capability with a keyword (e.g., 'help me search for Three Body')
- 3.Once you have a bookId from search results, you can query book details, chapters, and reading progress
- 4.Access your reading shelf to view all your books, audiobooks, and collections
- 5.Query your reading statistics by month or year to see duration and completion counts
- 6.View your personal notes and highlights for any book on your shelf
- 7.Browse popular highlights and community thoughts for specific chapters or passages
- 8.Request personalized book recommendations or discover similar titles
Use cases
- Search for a specific book title and view its chapter structure and reading progress
- Export all your highlights and notes from a completed book for reference or study
- Check how long you've spent reading this month or how many books you've finished this year
- Browse what other readers highlighted in a particular chapter to discover key passages
- Get book recommendations tailored to your reading preferences and history
- Avid readers tracking their reading habits and progress
- Students and researchers organizing notes and highlights from books
- Book enthusiasts discovering new titles and reading community insights
- Anyone using WeChat Reading who wants agent-assisted book management
weread-skills FAQ
Export your API key as an environment variable: export WEREAD_API_KEY=wrk-xxxxxxxx. The key is bound to your WeChat Reading user identity and will be automatically injected into requests.
Use the search capability with a keyword (e.g., 'search for Three Body'). The skill will return matching books with titles, authors, ratings, and bookIds that you can use for further operations.
Yes. Query your notes and highlights for any book using the notes capability. You can view individual notes, highlights, bookmarks, and export them for reference.
Reading duration is measured in seconds and displayed as hours and minutes. Statistics include daily/monthly reading time, number of books completed, and reading preference analysis.
If the API returns an upgrade_info field, you must immediately pause the current operation, follow the upgrade instructions in the message, complete the upgrade, and then retry the user's request.
Full instructions (SKILL.md)
Source of truth, from tencent/wechatreading.
name: weread-skills description: 微信读书助手 — 搜索书籍、管理书架、查看笔记划线、浏览书评、阅读统计、发现推荐好书 version: 1.0.4
WeRead — 微信读书助手
通过 Agent API Gateway 调用微信读书接口,提供搜索、书架、笔记、书评等能力。
支持的能力
| 能力 | 说明 | 用户示例 | 详细说明 |
|---|---|---|---|
| 搜索书籍 | 在书城搜索 | "帮我搜一下三体" | search.md |
| 书籍信息 | 查看书籍详情、章节目录、阅读进度 | "这本书有多少章" "我读到哪了" | book.md |
| 书架管理 | 查看书架 | "看看我的书架" | shelf.md |
| 阅读统计 | 阅读时长、天数、偏好分析、阅读统计摘要 | "我这个月读了多久" "今年读了几本书" | readdata.md |
| 笔记划线 | 查看个人笔记数量与内容,包括划线、想法/点评、书签数量 | "看看我在三体里的笔记" "导出我的划线" "在这本书有多少笔记" | notes.md |
| 章节热门划线 | 查看书籍/章节热门划线、划线热度及划线下想法 | "看看这章有什么热门划线" "这段话下面有什么想法" | notes.md |
| 书籍点评 | 查看书籍的公开点评 | "三体这本书有什么点评?" "看看推荐的点评" | review.md |
| 推荐好书 | 个性化推荐/相似推荐 | "给我推荐几本书" | discover.md |
根据用户意图参考对应说明文件了解接口参数、回包结构和工作流。
接口调用规范
统一入口
POST https://i.weread.qq.com/api/agent/gateway
鉴权
- Header:
Authorization: Bearer $WEREAD_API_KEY WEREAD_API_KEY从环境变量获取,格式wrk-xxxxxxxx- 若未设置,提示用户:
export WEREAD_API_KEY=<你的apikey> - API Key 绑定用户身份(vid),需要用户身份的接口会自动注入,无需手动传 vid
请求格式
- Method:POST
- Content-Type:application/json
- Body:JSON,
api_name指定接口,其余为接口参数,每次请求必须带skill_version
curl -X POST "https://i.weread.qq.com/api/agent/gateway" \
-H "Authorization: Bearer $WEREAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{"api_name": "/store/search", "keyword": "三体", "count": 10, "skill_version": "1.0.4"}'
请求 few-shot
正确:业务参数平铺在 body 顶层。
{"api_name":"/user/notebooks","count":100,"skill_version":"1.0.4"}
正确:下一页继续平铺 lastSort。
{"api_name":"/user/notebooks","count":100,"lastSort":1516907353,"skill_version":"1.0.4"}
错误:不要把业务参数包在 params 内。
{"api_name":"/user/notebooks","params":{"count":100,"lastSort":1516907353},"skill_version":"1.0.4"}
上面的错误写法会导致 count、lastSort 未被转发,后端按默认值返回第一页,看起来像分页失效。
响应格式
- JSON,回包经过字段裁剪,只返回核心字段
errcode非 0 时表示错误,给出中文提示- 发送
{"api_name": "/_list"}可查看所有可用接口及参数定义
通用规则
- 版本上报:每次请求 body 必须包含
"skill_version": "1.0.4"(取本文件顶部 version 字段的值),用于服务端检查版本更新。如果回包中出现upgrade_info字段,必须立即暂停当前操作,按照upgrade_info.message中的指引完成升级,升级完成后再重新执行用户请求,不得忽略该字段 - 参数平铺:业务参数必须和
api_name、skill_version放在同一层;不要包在params、data、body等对象里。只有接口文档明确声明的数组/对象字段(如/book/readreviews的reviews)才允许作为业务字段传入。 - 能力文档预检:调用任何接口前,必须先根据「支持的能力」表阅读对应说明文件(如阅读统计先读
readdata.md,书架先读shelf.md),确认接口参数、字段含义、单位、计数口径和工作流;禁止仅凭字段名或经验猜测含义。 - 字段解释优先级:解释接口回包时,以对应说明文件中的字段说明为准;如果回包字段名和直觉含义冲突,必须服从说明文件,不得直接翻译字段名。
- bookId 解析:用户输入书名时,先调
/store/search获取 bookId,再执行后续操作 - 书架数量:使用
/shelf/sync回答“书架有多少本书/多少条目”时,必须按books.length + albums.length + (mp 非空 ? 1 : 0)计算;albums[]是专辑/有声书,也属于书架里的书,详细规则见shelf.md - 结果展示:列表用编号展示方便选择;搜索结果重点展示书名、作者、评分;展示接口回包信息时,字段禁止直接翻译,应该参考文件中的说明内容提供
- 上下文衔接:对话中记住已查询的 bookId,后续操作无需用户重复提供
- 深度链接:优先使用接口回包中的
deepLink字段作为跳转链接,展示为[打开阅读]({deepLink});若回包没有deepLink,不要自行拼接weread://链接 - 数据展示规范:
- 时间戳:所有 Unix 时间戳字段(如
updateTime、createTime、finishTime、readUpdateTime等),展示时须转为 YYYY-MM-DD 格式(如1748563200展示为"2025-05-30"),不得直接展示原始数字 - 阅读时长:单位为秒,展示时转为"X小时Y分钟"格式
深度链接
在展示书籍、章节、划线、想法等内容时,如果回包中有 deepLink 字段,直接使用该字段值作为跳转链接。
- 跳转链接展示为 Markdown 超链接格式:
[打开阅读]({deepLink})。 - 各接口回包中可能包含
deepLink字段,如有则直接使用。 - 若回包中没有
deepLink字段,不要尝试手动拼接weread://链接。
Related skills
More from tencent/wechatreading and the wider catalog.

tmeet-skill
Command-line interface for Tencent Meeting: manage meetings, recordings, transcripts, and minutes via CLI.

ai-model-nodejs
Node.js backend AI with text generation, image generation, and agent orchestration via CloudBase SDK.

ai-model-nodejs
Use this skill for Node.js backend AI via @cloudbase/node-sdk (>=3.16.0) — cloud functions, CloudRun, Express, Koa, NestJS, serverless APIs, scheduled jobs, LLM proxies. Only SDK supporting image generation (ai.createImageModel + generateImage). Text models via ai.createModel with groups cloudbase, hunyuan-exp, or custom-*. Model IDs (deepseek-v4-flash, deepseek-v3.2, hunyuan-2.0-instruct-20251111, glm-5, kimi-k2.6) go in the model field of generateText/streamText. MUST run two-step preflight before code — see body. Keywords: backend, 云函数, 云托管, serverless, LLM proxy, agent orchestration, generateText, streamText, generateImage, createModel, hunyuan-image, Token Credits, TokenHub, Hunyuan, DeepSeek, GLM, Kimi, MiniMax. NOT for browser/Web (use ai-model-web) or Mini Program (use ai-model-wechat).

ai-model-web
Use this skill when a browser/Web app (React, Vue, Angular, Next, Nuxt, static sites, SPAs, dashboards, AI chat UI) needs AI models via @cloudbase/js-sdk. Default routing for page/页面/Web/前端/frontend/网页/H5 AI — call directly from browser, do NOT propose a Node.js proxy. Covers generateText and streamText. Models via ai.createModel with groups cloudbase, hunyuan-exp, or custom-*. Model IDs (deepseek-v4-flash, deepseek-v3.2, hunyuan-2.0-instruct-20251111, glm-5, kimi-k2.6) go in the model field. MUST run two-step preflight before code — see body. Keywords: 页面, Web, 前端, React, Vue, Next, Nuxt, SPA, AI chat UI, generateText, streamText, createModel, hunyuan-exp, Token Credits, TokenHub, Hunyuan, DeepSeek, GLM, Kimi, MiniMax. NOT for Node.js backend (use ai-model-nodejs), Mini Program (use ai-model-wechat), or image generation (Node SDK only).

ai-model-wechat
Use this skill for WeChat Mini Program AI via wx.cloud.extend.AI (小程序, 企业微信小程序, wx.cloud apps). Features generateText and streamText with callbacks (onText, onEvent, onFinish). Models via wx.cloud.extend.AI.createModel with groups hunyuan-exp (小程序成长计划), cloudbase (main managed), or custom-*. Model IDs (deepseek-v4-flash, deepseek-v3.2, hunyuan-2.0-instruct-20251111, glm-5, kimi-k2.6) go in the data wrapper model field. API differs from JS/Node SDK — streamText needs data wrapper, generateText returns raw response. MUST run two-step preflight before code — see body. Keywords: Mini Program AI, wx.cloud.extend.AI, 小程序成长计划, ai_miniprogram_inspire_plan, Token Credits 资源包, generateText, streamText, createModel, hunyuan-exp, TokenHub, Hunyuan, DeepSeek, GLM, Kimi, MiniMax. NOT for browser/Web (use ai-model-web), Node.js backend (use ai-model-nodejs), or image generation (use ai-model-nodejs).

auth-nodejs-cloudbase
CloudBase Node SDK auth guide for server-side identity, user lookup, and custom login tickets. This skill should be used when Node.js code must read caller identity, inspect end users, or bridge an existing user system into CloudBase; not when configuring providers or building client login UI.