Agent skill

paper2wechat

把学术论文 PDF 转成微信公众号深度解读推文(长文 + 配图 + 封面)。你主导设计的协调式:机械活(MinerU 解析 PDF、生成封面、md2wechat 发布草稿箱)交给 scripts/ 下的小工具,论文理解、文章结构、长文撰写由你亲自完成并在关键点与用户确认。当用户说“论文转公众号”、“paper2wechat”、“把论文写成公众号文章”、“论文转微信推文”、“PDF 转公众号”时触发。

QuZhan51496github.com/QuZhan51496GitHub ↗
claude-codecan modify filesships scriptsApache-2.0
Install
npx skills add QuZhan51496/paper2anything --skill paper2wechat --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 6
SKILL.md size: 10 KB
Bundled scripts: yes
Allowed tools: BashReadWriteGlobGrepAskUserQuestionSendUserFile
Path: paper2wechat/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 333
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# paper2wechat — 论文转公众号深度解读(你主导的协调式) 把一篇论文 PDF 写成**学术深度解读型**公众号长文。**你是主笔**:这份文件是配方, 不是全自动脚本——没有 `main.py`。机械步骤(解析 / 封面 / 排版)调用 `scripts/` 下的小工具; **论文理解、文章结构、长文撰写由你亲自完成**,并在关键点用 `AskUserQuestion` 与用户确认。 目标读者:有 AI/ML 背景的研究者、工程师、学生——读得懂方法细节、关心贡献与局限。 ```text PDF → 解析 (parse_pdf.py:MinerU → parsed/ + figures/,含表格) → 你读懂论文 (读 parsed/ + 看 figures/) → understanding/paper_understanding.json [确认切入角度] → 你写深度解读长文 (结构自由、配图、忠实准确) → wechat_article.md + .json [确认] → 封面 (cover.py:默认 API 生图 gpt-image-2 横版 900×383;无 key/key 不可用回退本地合成复用原图) → 发布草稿箱 (publish.py:md2wechat 直推公众号草稿箱;无凭据/失败→本地样式化 HTML) → 公众号推文 ``` ## 运行方式 1. **一步步来**:机械步骤用 `Bash` 调脚本,创作步骤你自己用 `Read` / `Write` 做。 2. **每个 Bash 块开头就地算 `WORKDIR`**(各 Bash 调用是独立 shell、不共享变量): ```bash WORKDIR="$(dirname "$pdf_path")/.paper2anything/wechat/$(basename "${pdf_path%.*}")" ``` `$pdf_path` 是用户给的论文 PDF(每块重设一次)。脚本在 `${SKILL_DIR}/scripts`——`SKILL_DIR` 是**本 skill 的目录**(见本 skill 顶部注入的 "Base directory for this skill: …");各 Bash 块独立 shell, 用到它的块开头按需 `export SKILL_DIR=<那个目录>` 一次(和 `WORKDIR` 一样每块现设)。 3. **两个决策点用 `AskUserQuestion` 暂停**:① 读懂论文后确认“切入角度/深度/篇幅”;② 长文成稿后确认。 4. **深度解读 = 读懂后用自己的话讲清楚**:可以加直觉解释、类比、背景、应用与局限,让有背景的读者快速吃透这篇论文——但**忠实于论文、不夸大、不编造数据**。 --- ## Step

What's inside
Steps it walks through
  1. 运行方式
  2. Step 0:环境与凭据
  3. Step 1:解析 PDF(脚本)
  4. Step 2:读懂论文 → 写 understanding(你来做)[确认]
  5. Step 3:写深度解读长文(你来做)[确认]
  6. Step 4:生成封面(脚本,可选)
  7. Step 5:发布到公众号草稿箱(脚本 + 你确认,可选)
  8. Step 6:把成品归集到 PDF 旁
  9. 产物位置
  10. 排错
Ships with 5 files
  • scripts/_env.py
  • scripts/cover.py
  • scripts/parse_pdf.py
  • scripts/publish.py
  • scripts/utils.py
Commands it runs
set -a; source <paper2anything 包根>/.env; set +a
conda run -n paper2anything --no-capture-output python -c "import requests, rich, dotenv" 2>&1
md2wechat --help >/dev/null 2>&1 && echo "md2wechat 就绪" || echo "md2wechat 未就绪(可后置;缺它 Step 5 会降级为本地样式化 HTML 供手动粘贴)"
conda run -n paper2anything --no-capture-output \
python "${SKILL_DIR}/scripts/parse_pdf.py" "$pdf_path" --workdir "$WORKDIR"
python "${SKILL_DIR}/scripts/cover.py" --workdir "$WORKDIR" \
export SKILL_DIR=<本 skill 目录>
conda run -n paper2anything --no-capture-output python "${SKILL_DIR}/scripts/publish.py" --check-creds
conda run -n paper2anything --no-capture-output python "${SKILL_DIR}/scripts/publish.py" --workdir "$WORKDIR"
conda run -n paper2anything --no-capture-output python "${SKILL_DIR}/scripts/publish.py" --workdir "$WORKDIR" --local-only
More from paper2anything
All skills →
About this skill
What does the paper2wechat skill do?

把学术论文 PDF 转成微信公众号深度解读推文(长文 + 配图 + 封面)。你主导设计的协调式:机械活(MinerU 解析 PDF、生成封面、md2wechat 发布草稿箱)交给 scripts/ 下的小工具,论文理解、文章结构、长文撰写由你亲自完成并在关键点与用户确认。当用户说“论文转公众号”、“paper2wechat”、“把论文写成公众号文章”、“论文转微信推文”、“PDF 转公众号”时触发。

How do I install it?

Run `npx skills add QuZhan51496/paper2anything --skill paper2wechat --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From QuZhan51496/paper2anything, a repository with 333 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going