md2viewlisted
Install: claude install-skill hanzhangzzz/agent-skills-zh
# md2view
把 Markdown 重新编码成可独立阅读、可回原文核证的视觉阅读器。产物是单文件 `reader.html`:左栏权威原文,右栏信息重组,点击任意元素双向定位。
## 第一性原理
这个产品的价值链分工是:
| 环节 | 谁做 | 为什么 |
| --- | --- | --- |
| 理解文章、判断什么值得表达 | 模型 | 只有模型能读 |
| 设计表达形式(图/表/卡/散文)与视觉节奏 | 模型 | 设计判断不可形式化;模板渲染只会产出"两框一箭头"的机械图 |
| 写右栏 HTML | 模型 | 自由创作才能好看;但必须带着锚点写 |
| 左栏原文渲染、双栏联动、壳 | 确定性脚本 | 忠实与一致不由模型负责 |
| 溯源验证(覆盖/锚点/数字) | 确定性脚本 | 可核证性是机器问题 |
| 表达质量 | **模型亲眼截图自审** | 看不见自己作品的设计师不可能及格 |
历史的失败模式(v3)是把第 2、3 环交给确定性模板、把第 6 环删掉——门禁全过,表达全废。v4 的纪律只有一句话:**形式自由,锚点强制,自审闭环**。
## 执行流程
下文 `$SK` 是本 skill 的实际安装目录。为任务建立独立工作目录。
### 1. 解析来源(确定性)
```bash
python3 $SK/scripts/parse_blocks.py input.md blocks.json
```
`blocks.json` 是来源账本:每块有稳定 id(`b000`…);表格数据行与 checkbox 项有原子 id(`b030:r001`、`b038:i001`)。heading 与 `---` 分隔线不要求投影,其余每个 block 都必须被右栏引用。
### 2. 通读全文,先判断再动手(模型)
读完原文后先回答(写在工作笔记里,不用落盘成 JSON):
- 谁读?读完 5 秒后应形成什么判断?
- 全文真正的命题有几条?哪些是主关系,哪些是证据?
- **每块内容配什么载体**:图(关系是真的)、表(选项×维度)、卡(并列要点)、步骤条(阶段推进)、标注条(风险/约束/决策)、还是纯散文(不值得视觉化的内容允许是散文——但散文也要带锚点)?
- 视图序列怎么排(全局 → 机制 → 证据/取舍 → 决策 → 行动 → 验证)?一个视图只回答一个问题;若只是原文章节换皮,合并或删除。
**构图合同(信息图形态,不是文档形态):**
- 右栏是 6–10 个独立视觉场景(默认折叠的附录不计入),每个在 1440 下约一屏,最多 1.5 屏。
- 每个场景有一个主视觉焦点:一张图、一条链,或一张"本身就是主角"的决策表。图/链占场景高度 ≥50% 是常态。
- **明细默认进抽屉**:大行数表格、字段清单、验收细目、长规则列表,放进 `<details class="mv-drawer">`;附录级内容放 `<details class="mv-appendix">`。抽屉内容照常带锚点,点击溯源时壳会自动展开。
- `<details>`/`<summary>` 是结构容器,**不带** `data-sources`;抽屉标题是导航标签,不是来源断言。
- 不为过审把内容全塞进抽屉:验证器会列出"只在抽屉里被引用"的 block,核心命题必须留在主视觉。
不得从"这里能放几张卡片"倒推语义;不得按 block 顺序做"逐段取证"。
### 3. 自由创作 right-pane.html(