zsxq-skill: Organize Knowledge Planet subscriptions into a local Markdown knowledge base

前言

在 DSH 里让 Agent 回答「上周星球里关于某话题说了什么」,难点往往不在模型,而在内容是否已经在本机、是否有稳定目录与索引。手动复制帖子、附件散落在下载目录、全文检索靠翻聊天记录,很难和 Agent 的工作流对齐。

下面介绍社区插件 zsxq-skill(npm 包名 dsh-skill-zsxq):用 Agent Skill 把你自己已订阅的知识星球帖子同步到本地,按频道与日期落成 Markdown,再配合模型做分类、摘要、金句,并用脚本重建索引、支持检索。它不替你加入星球,也不下载无权限的内容。

这是什么

zsxq-skill 由维护者 zhangcaiqian 发布,在 SkillHub 目录 中归类为「记忆」。仓库同时是 DSH 可安装的 skill bundle,也是一份给模型看的 SKILL.md 加 Python 参考脚本。

组合方式可以概括为:

部分 作用
SKILL.md 操作手册:何时用、步骤顺序、富化标准与安全规则
scripts/*.py 同步、附件抽取、建索引、检索(Python ≥ 3.10)
reference/ API 与知识库目录、frontmatter 规范
lib/index.js DSH provider,将 skill 注册进运行时

同步结果落在你的数据目录:channels/<频道>/<年>/<月>/<日>/*.md,附件进 assets/,检索读 index/index.json。

核心功能

资料中已明确的能力包括:

  1. 同步:拉取星球帖子,下载附件,对 docx/pdf 抽取正文写入 md。
  2. 富化(由模型执行):按 SKILL.md 补 topic_category、关键词、摘要(≤50 字)、金句与 .quotes.md。
  3. 索引:生成 INDEX.md、index.json 及分片索引;检索只读索引,不扫全文。
  4. 在 DSH 中用自然语言驱动:例如「同步今天知识星球的内容」「重建索引」「搜一下降息」等,模型按手册调脚本或流程。

脚本模式还提供 channels.py 列出可访问星球并生成 config.json 的 channels 片段,无需手抄 group_id。

同作者的 dsh-plugin-zsxq 可把确定性能力做成 DSH 原生工具(纯 JS、不需 Python)。只装本仓库时走脚本模式;两个都装时 skill 可检测工具并切到插件模式,细节以插件仓库 README 为准。

安装与启用

先做插件安装,再重启 DSH。README 写明:配置改动可热更新,但 skill 模块需重启后新会话才可见,会话里 skill 名为 zsxq-knowledge。

方式 A:装进 DSH(推荐)

# npm(推荐)
dsh plugin --profile web add dsh-skill-zsxq

# 或从 GitHub 源码安装
dsh plugin --profile web add github:zhangcaiqian/zsxq-skill

# 本地开发
dsh plugin --profile web add link:/path/to/zsxq-skill

package.json 标明当前版本 0.1.0,许可证 MIT,DSH 引擎要求为 >=0.2.0-rc.2 等与 @deepseek-ai/dsh-skill 对应的区间。

DSH Desktop 用户可在 设置 → 插件 安装;若用 CLI,需把 DSH_HOME 指向桌面 harness 目录,避免装进别的 profile(完整示例见仓库 README)。

脚本模式前置条件(与是否装 DSH 无关):

python3 -m pip install -r requirements.txt

依赖包括 requests、python-docx、PyMuPDF、beautifulsoup4、pyyaml。另需 Python ≥ 3.10 与自管的数据目录(含 config.json、channels/ 等)。

配置 Cookie 与频道

  1. 浏览器登录 wx.zsxq.com,开发者工具 Network 中过滤 api.zsxq.com,复制请求头里的整段 Cookie。
  2. 在数据目录从 config.example.json 复制为 config.json,填写 zsxq_cookie。
  3. 用脚本生成频道表并合并进 config.json:
cd ~/my-knowledge-base
cp /path/to/zsxq-skill/config.example.json config.json
# 编辑 zsxq_cookie

python3 scripts/channels.py          # 列出可访问星球 + 配置片段
python3 scripts/channels.py --json   # 仅 JSON

config.json 中 zsxq_cookie 与 channels 为必填;tag_to_category 可选。Cookie 等同账号凭据,勿提交 Git;失效时常见 HTTP 401,需重新获取(资料称实测约一个月)。

推荐用环境变量固定数据目录:

export ZSXQ_BASE_DIR=~/my-knowledge-base

典型用法

在 DSH 中(自然语言)

你说 会发生什么
「自检一下知识星球环境」 检查 Cookie、依赖、索引状态
「同步今天知识星球的内容」 同步今日精华帖,下载附件并抽取正文
「把新同步的文章做富化」 补分类/摘要/金句
「重建索引」 更新 INDEX.md / index.json
「搜一下降息」 检索并返回路径与摘要

脚本模式

export ZSXQ_BASE_DIR=~/my-knowledge-base
cd /path/to/zsxq-skill

python3 scripts/sync.py --channel all --today
python3 scripts/sync.py --channel <频道key> --date 2026-11-06
python3 scripts/sync.py --channel <频道key> --month 2026-11

python3 scripts/build_index.py

python3 scripts/search.py "降息"
python3 scripts/search.py --tag 宏观策略 --limit 20 --json

完整工作流:① 同步 → ② 模型富化 → ③ 重建索引 → ④ 检索。同步后若不重建索引,新文章无法被 search.py 命中。

适用场景与注意

适合谁:已订阅知识星球、希望把帖子与附件沉淀为本地可检索 Markdown 库,并在 DSH Agent 里用同一套目录与索引的人。

边界(仓库 README 明确写出):

  • 不内置 ASR、生图;语音等按手册交给对应模型能力。
  • 星主问答/晚课等非精华帖默认 scope=digests 可能拉不到,需 scope=all。
  • count > 30 会触发接口错误 code=14001;限流 code=1059 脚本会重试。
  • --refresh 会物理删除该月 md(含已富化字段),执行前需备份。

安全与权限:插件与脚本以当前 DSH 进程及本机用户权限运行,会使用你配置的 Cookie 访问星球 API。安装前请阅读仓库源码与 MIT 许可证;社区目录 SkillHub 为独立站点,与 DeepSeek / 幻方无官方从属关系。

结尾

经过上面的步骤,zsxq-skill 把「星球里看过的东西」变成带目录、索引和 frontmatter 的本地知识库,Agent 按 SKILL.md 完成同步后的富化与查询,而不必每次从零翻网页。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye