soia-team/soia-open-pkm-vault-skills · Archived

soia-pkm-library-weread-sync

同步微信读书已读书目与划线到 Obsidian 书库,并调用微信读书 API 补单本书详?

First seen Jul 22, 2026

Installation

$ npx skills add soia-team/soia-open-pkm-vault-skills --skill soia-pkm-library-weread-sync

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from soia-team/soia-open-pkm-vault-skills · top by installs.

npx skills add soia-team/soia-open-pkm-vault-skills

Browse all from soia-team/soia-open-pkm-vault-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 5
License LICENSE
Default branch main
Open issues 0
Status Archived

Skill metadata

Parsed from SKILL.md frontmatter.

Version2.0.3

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 7,634 B
  • docs SUMMARY.md 272 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 4 installs

SKILL.md

soia-pkm-library-weread-sync

PKM 书库的数据同步层:把微信读书书架、已读状态、划线和想法写入 Obsidian,并通过微信读书 API 补充单本书详情。书卡和阅读记录的本地补建、总览生成由相邻的 soia-pkm-library-book-catalog 负责。

客户可读说明

这个技能可以做什么

这个技能负责所有需要访问微信读书的动作:同步已读书目、同步划线/想法,以及为指定书卡补充简介、章节、相似书和阅读进度。它会读取用户提供的 vault 路径和私有配置,把结果幂等地落到书卡与阅读记录中。

客户想要 技能会做 客户能看到
同步微信读书书架 拉取已读书目,创建或更新书卡和阅读记录 处理数量、新增/更新/跳过/失败统计
同步划线 拉取划线和想法,覆盖机器维护段并保留用户笔记 每本书的处理进度和写入结果
补一下这本书的详情 调用微信读书 API,补充书籍信息、章节、相似书和阅读进度 API 阶段、写入类别和失败原因

客户如何使用

  1. 用自然语言说明要同步书架、同步划线,或提供要补详情的书名。
  2. 提供 --vault <path>,或在私有配置中设置 OBSIDIANVAULT;同步前确认 weread-skillsWEREADAPI_KEY 可用。
  3. 先用划线脚本的默认预览或单本模式确认范围,再运行 --all 全量同步。
  4. 执行后核对终端回执;如需刷新本地视图,再运行 soia-pkm-library-book-catalog 的生成脚本。

依赖与安装

安装本技能:

claude plugin marketplace add soia-team/soia-open-skills
claude plugin install soia-pkm-vault@soia

只要这一个技能时,可用 npx 路线。注意技能会落进共享真源 ~/.agents/skills;若同时装了插件,同一技能会出现两份索引且各自漂移,建议二选一:

npx skills add soia-team/soia-open-pkm-vault-skills -g -a '*' -s soia-pkm-library-weread-sync -y

强依赖:

npx skills add Tencent/WeChatReading -g -y

微信读书 API Key 需在官方页面登录后获取:<https://weread.qq.com/r/weread-skills>。私有配置路径:

~/.config/soia-skills/soia-pkm-library-weread-sync/config.yml
SOIA_PKM_LIBRARY_WEREAD_SYNC_CONFIG_FILE=<custom-config-path>
SOIA_PKM_LIBRARY_WEREAD_SYNC_ENV_FILE=<compat-config-path>

配置只放本机值,不提交密钥:

env:
  OBSIDIAN_VAULT: "<vault-path>"
  WEREAD_API_KEY: "<YOUR_WEREAD_API_KEY>"

为兼容旧调用方式,脚本仍接受 SOIAPKMLIBRARYCONFIGFILESOIAPKMLIBRARYENVFILE 作为配置路径环境变量;新配置优先使用上面的新名称。

WorkBuddy 的装载单位是角色化专家而不是插件,npx skills add -a '*' 覆盖不到它,需要单独安装,见 docs/install/workbuddy.md

日志与完成回执

终端日志会说明开始阶段、处理数量、写入类别、跳过/失败原因和下一步建议。不得输出 API key、cookie、token 或私有配置内容。缺少依赖或 key 时必须停止 API 调用,并给出安装命令或官方获取地址。

能做什么

脚本 功能 何时运行
syncwereadto_library.py 微信读书已读书目 → 图书馆书卡 + 阅读记录 想同步最新阅读状态时
syncwereadhighlights.py 微信读书划线/想法 → 已有阅读记录的机器段 想同步划线笔记时
enrichbookdetails.py <书名>... 通过微信读书 API 补简介、章节、进度、相似书 想补单本书详情时

如何运行

以下命令从本技能的 scripts/ 目录执行:

python3 sync_weread_to_library.py --vault <vault-path>
python3 sync_weread_highlights.py                # 预览 noteCount 前 30 本
python3 sync_weread_highlights.py --all          # 全量同步
python3 sync_weread_highlights.py <书名>          # 指定书名
python3 enrich_book_details.py <书名>
python3 enrich_book_details.py --all
python3 enrich_book_details.py --refresh-chapters

所有脚本共享以下参数化约定:

  • --vault <path>OBSIDIAN_VAULT:vault 根目录,命令行优先。
  • --base <relpath>:书库相对 vault 的路径;需要其他书库时显式覆盖。
  • --config <json>:覆盖分类、状态或字段映射(由具体脚本支持)。
  • 私有配置使用 SOIAPKMLIBRARYWEREADSYNCCONFIGFILE、兼容别名或默认配置路径加载;不会覆盖进程中已经存在的环境变量。

目录契约与上下游

书库目录由 --base 决定,核心结构为:

<base>/
├── 00_图书馆/书目/<分类目录>/<书名>.md
└── 阅读记录/<状态>/<书名>.md

书卡中的 category/subcategory 是分类权威源;阅读记录通过 book: "[[书名]]" 反查书卡。同步脚本产生的书卡和阅读记录是下游本地 catalog 脚本的输入;catalog skill 可选安装,不影响已有数据的本地整理和视图生成。

syncwereadhighlights.py 维护 ## 📌 划线 / ## 💭 想法 机器段;用户手写内容应放在其中的 ### 用户笔记 子区块,否则下一次同步可能被覆盖。

强依赖:weread-skills 与 API Key

三个脚本都需要微信读书官方 weread-skills。同步前必须满足:

  • weread-skills 已安装在 workspace 或用户的 agent skill 目录中。
  • WEREADAPIKEY 已写入私有 config.ymlenv.WEREADAPIKEY,或由进程环境提供。
  • OBSIDIAN_VAULT 已配置,或命令行传入 --vault
  • 本机可访问 https://i.weread.qq.com/api/agent/gateway
  • Python 3 可用;脚本只使用 Python 标准库与本技能自带的 library_env.py

缺依赖时执行:

npx skills add Tencent/WeChatReading -g -y

缺少 WEREADAPIKEY 时,打开 <https://weread.qq.com/r/weread-skills>; 登录微信读书获取,再写入私有配置;不要用旧 cookie 冒充 Bearer key,也不要把 key 写入 vault 或本仓库。

边界与异常

场景 处理
未安装 weread-skills API 类脚本直接退出并给出官方安装命令
未设置 WEREADAPIKEY 退出并给出官方获取地址及私有配置位置
未指定 vault 退出并提示传 --vault 或配置 OBSIDIAN_VAULT
找不到本地书卡/阅读记录 批量模式跳过并打印警告,不中断其他书
微信读书书名与文件名不同 划线同步优先按 bookId 匹配,标题匹配兜底

完成后回执

复杂同步任务先用小范围、单本或 fixture 做一次前向测试,核对新增、更新、跳过、失败和产出,再扩大到全量。完成后必须回报:同步范围、成功/跳过/失败数量、书卡与阅读记录的文件变化、遇到的问题和下一步(通常是运行 catalog 的总览生成脚本)。