关于 dag-development
dag-development 是帮助研究者将研究问题、理论或论文转化为因果图(DAG)并生成图表的技能。它先检查因果结构和识别假设,再提供 Mermaid、R(ggdag)或 Python(networkx)绘制路径。
主要功能
- 01将研究问题转化为 DAG
- 02检查因果结构与识别假设
- 03识别充分调整集及潜在偏差
- 04支持 Mermaid、R 和 Python 绘图
- 05导出 SVG、PNG,条件允许时导出 PDF
适用场景
- 01梳理研究中的混杂因素与因果机制
- 02检查选择或测量结构
- 03为论文或演示制作 DAG 图
- 04以脚本生成可复现的图表
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ nealcaren/ social-data-analysis --skill dag-development安装后在 Claude Code 中输入/dag-development确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
concepts/colliders.mdconfounding.mdd_separation.mdpotential_outcomes.mdselection_bias.mdsix_step_algorithm.mdphases/phase0-theory.mdphase1-identification.mdphase2-inputs.mdphase3-mermaid.mdphase4-r.mdphase5-python.md详细介绍
DAG 开发
你可以帮助用户根据研究问题、理论或核心论文构建因果图(DAG),然后使用 Mermaid、R(ggdag)或 Python(networkx)将其渲染为清晰、可用于发表的图。本技能涵盖概念转换和技术渲染。
何时使用此技能
在用户希望进行以下操作时使用此技能:
- 将研究问题或论文转换为 DAG
- 明确机制、混杂因素以及选择/测量结构
- 将 DAG 转换为论文或幻灯片中的图
- 选择渲染技术栈(Mermaid、R 或 Python)
- 以统一方式导出 SVG/PNG/PDF
核心原则
- 明确假设:DAG 编码了因果主张;应让假设清晰可见。
- 严谨的识别:使用 6 步算法和 d-分离,在渲染前验证 DAG 结构。
- 默认可复现:提供基于文本的输入和脚本化输出。
- 可导出的素材:生成 SVG/PNG(尽可能也生成 PDF)。
- 工具选择:提供三种渲染方式,并说明各自的取舍。
- 简约样式:保持图表简洁,符合期刊风格。
工作流阶段
阶段 0:理论 → DAG 转换
目标:帮助用户将当前思路或核心论文转化为DAG 蓝图。
- 明确因果问题和分析单位
- 将叙述/机制转换为节点和边
- 记录假设和不确定的边
指南:phases/phase0-theory.md
概念:confounding.md、potential_outcomes.md
暂停:在审核前确认 DAG 蓝图。
阶段 1:评析与识别
目标:使用形式化规则(Shrier & Platt、Greenland)验证 DAG 蓝图。
- 执行6 步算法(检查后代、非祖先)。
- 检查碰撞点分层偏差。
- 确定充分调整集。
- 检测未观测变量带来的威胁。
指南:phases/phase1-identification.md
概念:six_step_algorithm.md、d_separation.md、colliders.md、selection_bias.md
暂停:在排版前确认“已验证的 DAG”(节点 + 边 + 调整策略)。
阶段 2:输入与格式
目标:将已验证的 DAG 转换为可供渲染的输入。
- 最终确定节点列表、边列表和节点类型(暴露、结果、潜变量、选择)。
- 选择输出格式(SVG/PNG/PDF)和布局。
指南:phases/phase2-inputs.md
暂停:在渲染前确认 DAG 输入和输出目标。
阶段 3:Mermaid 渲染
目标:使用 Mermaid CLI 从 Markdown 快速渲染 DAG。
指南:phases/phase3-mermaid.md
暂停:确认 Mermaid 输出,或改用 R/Python。
阶段 4:R 渲染(ggdag)
目标:使用 R 和 ggdag 渲染 DAG,生成适用于发表的高质量图表。
指南:phases/phase4-r.md
暂停:确认 R 输出,或改用 Python。
阶段 5:Python 渲染(networkx)
目标:使用带有 uv 内联依赖项的 Python 渲染 DAG。
指南:phases/phase5-python.md
输出要求
提供:
- 一份 DAG 蓝图(阶段 0)
- 一份识别备忘录(阶段 1)
- 一个 DAG 源文件(Mermaid
.mmd、R.R或 Python.py) - 渲染后的图表,格式为 SVG/PNG(可用时也提供 PDF)
调用阶段 Agent
每个阶段都使用 Task 工具:
Task: Phase 3 Mermaid
subagent_type: general-purpose
model: sonnet
prompt: Read phases/phase3-mermaid.md and render the user’s DAG