paper-analyzer
将学术论文转化为深度HTML长文。6轮强制工作流、代码仓库搜索、公式渲染、Mermaid图表。 3种写作风格,输出可直接分享的精美HTML页面。
How do I install this agent skill?
npx skills add https://github.com/zsyggg/paper-craft-skills --skill paper-analyzerIs this agent skill safe to install?
- Gen Agent Trust Hubpass
This skill is a technical tool for converting academic PDFs into technical articles using the MinerU Cloud API. It is well-structured and performs its stated tasks. A low-risk surface for indirect prompt injection exists as it processes external document content.
- Socketpass
No alerts
- Snykfail
Risk: HIGH · No issues
- Runlayerwarn
11/15 files flagged
- ZeroLeakspass
1 finding · Score: 86/100
What does this agent skill do?
Paper Analyzer — 学术论文深度解析
⚠️ 这是生产级指令。你的唯一任务:产出一篇让读者觉得"比我读论文还清楚"的深度HTML长文。
快速使用
/paper-analyzer https://arxiv.org/abs/2605.07363
/paper-analyzer /path/to/paper.pdf
/paper-analyzer 粘贴文本
强制工作流(每一步必须执行,不可跳过)
Round 1:获取论文全文 ⛔
| 输入 | 执行 |
|---|---|
| arxiv URL | 同时读 arxiv.org/abs/(摘要)和 arxiv.org/html/(全文HTML) |
| PDF路径 | 用PDF读取工具读全文。分多次直到全部获取 |
| 文本 | 全部使用 |
自检:有没有完整内容?没有 → 换方式继续。
Round 2:搜索开源代码 ⛔
- 从论文中提取代码仓库链接(通常在页脚或 Introduction 末)
- 没有则用论文标题+作者名搜索 GitHub
- 克隆:
git clone --depth 1 <url> /tmp/paper_code - 阅读 README → 核心源码文件 → 配置文件
根据代码状态分支处理:
| 状态 | 处理 | 文章体现 |
|---|---|---|
| ✅ 已发布 | 读核心文件,找 ≥2 处论文方法↔源码对应 | 贴代码段(≤30行),标注 文件路径:行号 |
| ⏳ 待发布 | 检查 README/Release 标记 | 标注状态+仓库链接 |
| ❌ 无代码 | 搜索替代实现/相关项目 | 注明"本文未提供公开代码" |
Round 3:深度分析 ⛔ 内部完成,不展示过程
- 核心创新:论文做了什么别人没做的?(1-3个,每个一句话提炼)
- 方法细节:输入→处理→输出→为什么更好(每个创新画清楚这条线)
- 关键实验:哪个结果最有说服力?为什么?
- 论文弱点:作者自述 + 你的判断
- 代码对应:每个 component 对应哪个文件/函数
Round 4:询问用户 ⛔
必须问风格选择,用户未回则默认 academic。
Round 5:写作输出HTML ⛔
按选定风格的要求写,输出完整HTML。模板见下文。
Round 6:自我审查 ⛔
逐项检查,不通过则修改直到通过。
三风格详细要求
storytelling(故事型)— 像一篇公众号爆文
硬标准:
- 字数 ≥ 3000
- 段落 ≥ 15
- 引用论文原文 ≥ 3 处
- 生动类比/比喻 ≥ 2 个
- 结尾金句 1 句
结构要求(按顺序,缺一不可):
1. 钩子开头(2-3段)
— 反常识问题 / 引人共鸣的场景 / 让人"等等再说一遍?"的事实
— 不要直接讲技术。先让读者好奇。
2. "为什么会这样"(3-4段)
— 解释现有方法的逻辑和它的瓶颈
— 用简单例子说明
— 让读者感到"确实需要一种新方法"
3. 核心洞察(1-2段)
— 论文最关键的那一句话发现
— 用一句话说清楚 + 一个类比强化
4. 方法详解(5-8段,全文最重点)
— 分步骤展开:怎么做 → 为什么这样设计 → 和旧方法的关键区别
— 每个步骤配一个类比
— 引用论文原文(公式/算法描述)≥ 3 处
— 用对比表呈现新旧方法差异
5. 实验效果(3-4段)
— 最重要的实验结果 + 数据解读
— 不只是报数字,要解释"这意味着什么"
— 用表格呈现关键对比数据
6. 深层意义(2-3段)
— 这个工作对行业意味着什么
— 不止一个角度:技术意义、产业意义、方法学意义
7. 局限(1-2段)
— 作者自述的局限 + 你的判断
8. 收束(1段)
— 回到开头的场景/问题,形成闭环
— 读者带着"我懂了"的感觉离开
9. 金句
— 一句话,让人能记住并转述
写法要求:
- 多用"你"和读者对话("你有没有想过""你猜怎么着")
- 段落短,一段不超过 4 句话
- 技术词出现时要立刻给"人话解释"
- 数据要翻译成可感知的东西("15 斤荔枝"而不只是"15 斤")
academic(学术型)— 比论文更清晰的深度解析
硬标准:
- 字数 ≥ 4000(⚠️ 学术型必须长于故事型)
- 段落 ≥ 20
- 论文公式引用 ≥ 5 处(用 KaTeX 渲染)
- 论文图片/图表引用 ≥ 3 处(标注 Figure number)
- 实验数据表格 ≥ 2 张
- 代码段 ≥ 2 段(如有代码)
- 指出局限 ≥ 2 处
结构要求:
1. 论文元信息
标题 · 作者 · 链接 · 代码状态
2. 一句话总结(100字内)
3. 研究背景与动机(4-5段)
— 这个领域在解决什么问题
— 现有方法及其局限(按时间线或方法论分类)
— 本文的出发点
4. 预备知识(2-3段,如需要)
— 理解本文需要的核心概念
— 本文用到的基础方法简介
5. 方法详解(8-10段,全文最重点)
— 对每个创新点独立成节
— 每个创新点包含:①问题 ②怎么做(配公式)③为什么有效 ④与已有方法的差异
— 公式用 $$...$$ KaTeX 渲染
— 引论文原文 Figure/Table 编号
— 有代码则穿插源码分析
6. 实验分析(4-6段)
— 实验设置概述
— 主要结果(配表格 + 深入解读)
— 不同维度的对比分析
— 消融实验说明了什么
— 不是报数据,是解读数据背后的含义
7. 讨论(2-3段)
— 方法的适用边界
— 未解决的问题
— 对未来工作的启示
8. 局限分析(2-3段)
— 作者自述 ≥ 1 处
— 你的独立判断 ≥ 1 处
9. 结论(1-2段)
— 凝练贡献
— 展望
写法要求:
- 保持学术严谨但不死板——比论文好读
- 每个公式后要跟一句"人话"解释:这个公式在说什么
- 引用论文的 Fig/Table/Section 编号
- 表格数据要有解读,不只贴数据
- 数学符号首次出现要解释含义
concise(精炼型)— 最快掌握核心
⚠️ 精炼 ≠ 敷衍。精炼是信息密度极高、但该有的全有。
硬标准:
- 字数 ≥ 1200(不能低于这个数)
- 必须有:核心摘要盒 + 表格 + 可视化图表 + 金句
- ⚠️ 必须包含至少 1 个 Mermaid 图表(架构图或对比图)
结构要求:
1. 头图(Mermaid图表)—— 全文最核心架构/对比的一张图
类型可以是:flowchart(流程图)、graph(对比图)、或 timeline
2. 核心摘要盒
— 5 行以内
— 覆盖:做什么 / 怎么做 / 效果 / 适用场景
3. 关键创新(3-5 个,编号列出)
— 每个 2-4 句
— 一句话说创新点 → 一句话说怎么做的 → 一句话说为什么重要
4. 核心数据表
— 最多 5 行数据
— 突出和 baseline 的对比
5. 金句收尾
Mermaid 图表示例(⚠️ 节点文本避免中文特殊字符,用英文或简单ASCII。用 <br/> 换行):
flowchart TB
subgraph DSA["DSA: 64 heads scan all L tokens"]
Q1[Query] --> H1[Head 1..64]
H1 --> TK1[Score: O(64L)]
end
subgraph MISA["MISA: route to h=8 heads"]
Q2[Query] --> RTR[Router: O(64M)]
RTR -->|top-8| H2[8 active heads]
H2 --> TK2[Score: O(8L)]
end
DSA -->|8x fewer heads| MISA
HTML 输出模板
生成HTML时使用此模板,确保含 KaTeX 公式渲染 + Mermaid 图表支持:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>论文标题 — 深度解读</title>
<style>
:root{--text:#1a1a1a;--bg:#fafaf8;--accent:#2563eb;--muted:#6b7280;--border:#e5e7eb;--code-bg:#f3f4f6}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,"PingFang SC","Noto Serif SC",serif;color:var(--text);background:var(--bg);line-height:1.85;padding:2.5rem 1.5rem;max-width:720px;margin:0 auto;font-size:17px}
h1{font-size:2rem;margin:0 0 .3rem;line-height:1.3}
h2{font-size:1.35rem;margin:2.8rem 0 .8rem;color:var(--accent);padding-bottom:.4rem;border-bottom:1px solid var(--border)}
h3{font-size:1.1rem;margin:1.5rem 0 .5rem;color:#333}
.meta{color:var(--muted);font-size:.9rem;margin-bottom:2.5rem;line-height:1.8}
.meta a{color:var(--accent);text-decoration:none}
blockquote{border-left:3px solid var(--accent);padding:.6rem 1.2rem;margin:1.5rem 0;background:#f0f4ff;border-radius:0 8px 8px 0}
pre{background:var(--code-bg);padding:1rem 1.2rem;border-radius:8px;overflow-x:auto;font-size:.85rem;line-height:1.5;margin:1.5rem 0;border:1px solid var(--border)}
code{font-family:"SF Mono","Fira Code",monospace;font-size:.9em}
p{margin:1rem 0}
strong{color:#111}
table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.93rem}
td,th{border:1px solid var(--border);padding:.6rem .9rem;text-align:left}
th{background:#f9fafb;font-weight:600}
.summary-box{background:linear-gradient(135deg,#f0f4ff,#faf5ff);padding:1.5rem;border-radius:12px;margin:1.5rem 0}
.summary-box h3{margin:0 0 .5rem;color:var(--accent)}
.golden{font-size:1.25rem;font-weight:600;color:var(--accent);text-align:center;padding:2rem 1rem;border-top:2px solid var(--accent);border-bottom:2px solid var(--accent);margin:2.5rem 0;line-height:1.5}
@media(max-width:600px){body{font-size:16px;padding:1.2rem 1rem}h1{font-size:1.5rem}}
</style>
<!-- KaTeX -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.9/dist/katex.min.css">
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.9/dist/katex.min.js"></script>
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.9/dist/contrib/auto-render.min.js"
onload="renderMathInElement(document.body,{delimiters:[{left:'$$',right:'$$',display:true},{left:'$',right:'$',display:false}]})"></script>
<!-- Mermaid -->
<script src="https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.min.js"></script>
<script>mermaid.initialize({startOnLoad:true,theme:'default',securityLevel:'loose'});</script>
</head>
<body>
<!-- 内容 -->
</body>
</html>
公式用 $$...$$ 或 $...$,KaTeX 自动渲染。
- ✅ 正确:
$H^I$、$H^{I}$、$\mathbf{q}_{t,j}^I$ - ❌ 错误:
$H^\I$(\I未定义)、$H^I$写在<pre>标签内
Mermaid 图用 <pre class="mermaid">...</pre> 包裹。节点文本避免中文标点和特殊字符。
自我审查清单(Round 6)
生成后逐条检查,不通过则修改:
通用
- 字数达标?(story≥3000 / academic≥4000 / concise≥1200)
- 引用论文原文 ≥ 3 处?
- 每个核心创新独立深度展开?
- 至少 1 个实验结果做深入解读?
- 代码状态已提及?
- 有代码则源码 ≥ 2 段 + 文件路径?
- 指出局限 ≥ 2 处(至少 1 处是作者自述的)?
- HTML 格式完整,可在浏览器打开?
- 无 AI 套话("深入探讨""至关重要""值得注意的是")?
storytelling 专属
- 有钩子开头?
- 有 ≥ 2 个类比/比喻?
- 用"你"和读者对话?
- 有收束段落形成闭环?
- 有金句?
academic 专属
- 字数 ≥ storytelling?
- 公式 ≥ 5 处(KaTeX 渲染)?
- 论文图/表引用 ≥ 3 处(Fig/Table 编号)?
- 实验数据表 ≥ 2 张?
- 方法部分 ≥ 8 段?
concise 专属
- 有 Mermaid 图表?
- 有核心摘要盒?
- 有对比数据表?
- 有金句?
- 字数 ≥ 1200?
参考文件
styles/storytelling.md— 故事型补充规范styles/academic.md— 学术型补充规范styles/concise.md— 精炼型补充规范styles/with-formulas.md— 公式详解styles/with-code.md— 代码分析规范scripts/generate_html.py— HTML生成辅助脚本
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/zsyggg/paper-craft-skills/paper-analyzer">View paper-analyzer on skillZs</a>