dag-development
About
This skill helps developers create causal diagrams (DAGs) from research concepts and render them as publication-ready figures using Mermaid, R, or Python. It's used for translating research questions into visual models and clarifying causal assumptions for analysis. The skill handles both the conceptual design and technical export to formats like SVG/PNG/PDF.
Quick Install
Claude Code
Recommended/plugin add https://github.com/majiayu000/claude-skill-registrygit clone https://github.com/majiayu000/claude-skill-registry.git ~/.claude/skills/dag-developmentCopy and paste this command in Claude Code to install this skill
Documentation
DAG Development
You help users develop causal diagrams (DAGs) from their research questions, theory, or core paper, and then render them as clean, publication-ready figures using Mermaid, R (ggdag), or Python (networkx). This skill spans conceptual translation and technical rendering.
When to Use This Skill
Use this skill when users want to:
- Translate a research question or paper into a DAG
- Clarify mechanisms, confounders, and selection/measurement structures
- Turn a DAG into a figure for papers or slides
- Choose a rendering stack (Mermaid vs R vs Python)
- Export SVG/PNG/PDF consistently
Core Principles
- Explicit assumptions: DAGs encode causal claims; make assumptions visible.
- Rigorous Identification: Use the 6-step algorithm and d-separation to validate the DAG structure before rendering.
- Reproducible by default: Provide text-based inputs and scripted outputs.
- Exportable assets: Produce SVG/PNG (and PDF where possible).
- Tool choice: Offer three rendering paths with tradeoffs.
- Minimal styling: Keep figures simple and journal‑friendly.
Workflow Phases
Phase 0: Theory → DAG Translation
Goal: Help users turn their current thinking or a core paper into a DAG Blueprint.
- Clarify the causal question and unit of analysis
- Translate narratives/mechanisms into nodes and edges
- Record assumptions and uncertain edges
Guide: phases/phase0-theory.md
Concepts: confounding.md, potential_outcomes.md
Pause: Confirm the DAG blueprint before auditing.
Phase 1: Critique & Identification
Goal: Validate the DAG blueprint using formal rules (Shrier & Platt, Greenland).
- Run the 6-step algorithm (Check descendants, non-ancestors).
- Check for Collider-Stratification Bias.
- Identify the Sufficient Adjustment Set.
- Detect threats from unobserved variables.
Guide: phases/phase1-identification.md
Concepts: six_step_algorithm.md, d_separation.md, colliders.md, selection_bias.md
Pause: Confirm the "Validated DAG" (nodes + edges + adjustment strategy) before formatting.
Phase 2: Inputs & Format
Goal: Turn the Validated DAG into render‑ready inputs.
- Finalize node list, edge list, and node types (Exposure, Outcome, Latent, Selection).
- Choose output formats (SVG/PNG/PDF) and layout.
Guide: phases/phase2-inputs.md
Pause: Confirm the DAG inputs and output target before rendering.
Phase 3: Mermaid Rendering
Goal: Render a DAG quickly from Markdown using Mermaid CLI.
Guide: phases/phase3-mermaid.md
Pause: Confirm Mermaid output or move to R/Python.
Phase 4: R Rendering (ggdag)
Goal: Render a DAG using R with ggdag for publication‑quality plots.
Guide: phases/phase4-r.md
Pause: Confirm R output or move to Python.
Phase 5: Python Rendering (networkx)
Goal: Render a DAG using Python with uv inline dependencies.
Guide: phases/phase5-python.md
Output Expectations
Provide:
- A DAG Blueprint (Phase 0)
- An Identification Memo (Phase 1)
- A DAG source file (Mermaid
.mmd, R.R, or Python.py) - Rendered figure(s) in SVG/PNG (and PDF when available)
Invoking Phase Agents
Use the Task tool for each phase:
Task: Phase 3 Mermaid
subagent_type: general-purpose
model: sonnet
prompt: Read phases/phase3-mermaid.md and render the user’s DAG
GitHub Repository
Related Skills
sglang
MetaSGLang is a high-performance LLM serving framework that specializes in fast, structured generation for JSON, regex, and agentic workflows using its RadixAttention prefix caching. It delivers significantly faster inference, especially for tasks with repeated prefixes, making it ideal for complex, structured outputs and multi-turn conversations. Choose SGLang over alternatives like vLLM when you need constrained decoding or are building applications with extensive prefix sharing.
evaluating-llms-harness
TestingThis Claude Skill runs the lm-evaluation-harness to benchmark LLMs across 60+ standardized academic tasks like MMLU and GSM8K. It's designed for developers to compare model quality, track training progress, or report academic results. The tool supports various backends including HuggingFace and vLLM models.
langchain
MetaLangChain is a framework for building LLM applications using agents, chains, and RAG pipelines. It supports multiple LLM providers, offers 500+ integrations, and includes features like tool calling and memory management. Use it for rapid prototyping and deploying production systems like chatbots, autonomous agents, and question-answering services.
llamaguard
OtherLlamaGuard is Meta's 7-8B parameter model for moderating LLM inputs and outputs across six safety categories like violence and hate speech. It offers 94-95% accuracy and can be deployed using vLLM, Hugging Face, or Amazon SageMaker. Use this skill to easily integrate content filtering and safety guardrails into your AI applications.
