@wentorai/research-plugins 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -22
- package/curated/analysis/README.md +82 -56
- package/curated/domains/README.md +225 -69
- package/curated/literature/README.md +115 -46
- package/curated/research/README.md +106 -58
- package/curated/tools/README.md +107 -87
- package/curated/writing/README.md +92 -45
- package/mcp-configs/academic-db/alphafold-mcp.json +20 -0
- package/mcp-configs/academic-db/brightspace-mcp.json +21 -0
- package/mcp-configs/academic-db/climatiq-mcp.json +20 -0
- package/mcp-configs/academic-db/gibs-mcp.json +20 -0
- package/mcp-configs/academic-db/gis-mcp-server.json +22 -0
- package/mcp-configs/academic-db/google-earth-engine-mcp.json +21 -0
- package/mcp-configs/academic-db/m4-clinical-mcp.json +21 -0
- package/mcp-configs/academic-db/medical-mcp.json +21 -0
- package/mcp-configs/academic-db/nexonco-mcp.json +20 -0
- package/mcp-configs/academic-db/omop-mcp.json +20 -0
- package/mcp-configs/academic-db/onekgpd-mcp.json +20 -0
- package/mcp-configs/academic-db/openedu-mcp.json +20 -0
- package/mcp-configs/academic-db/opengenes-mcp.json +20 -0
- package/mcp-configs/academic-db/openstax-mcp.json +21 -0
- package/mcp-configs/academic-db/openstreetmap-mcp.json +21 -0
- package/mcp-configs/academic-db/opentargets-mcp.json +21 -0
- package/mcp-configs/academic-db/pdb-mcp.json +21 -0
- package/mcp-configs/academic-db/smithsonian-mcp.json +20 -0
- package/mcp-configs/ai-platform/magi-researchers.json +21 -0
- package/mcp-configs/ai-platform/mcp-academic-researcher.json +22 -0
- package/mcp-configs/ai-platform/open-paper-machine.json +21 -0
- package/mcp-configs/ai-platform/paper-intelligence.json +21 -0
- package/mcp-configs/ai-platform/paper-reader.json +21 -0
- package/mcp-configs/ai-platform/paperdebugger.json +21 -0
- package/mcp-configs/browser/exa-mcp.json +20 -0
- package/mcp-configs/browser/mcp-searxng.json +21 -0
- package/mcp-configs/browser/mcp-webresearch.json +20 -0
- package/mcp-configs/cloud-docs/confluence-mcp.json +37 -0
- package/mcp-configs/cloud-docs/google-drive-mcp.json +35 -0
- package/mcp-configs/cloud-docs/notion-mcp.json +29 -0
- package/mcp-configs/communication/discord-mcp.json +29 -0
- package/mcp-configs/communication/discourse-mcp.json +21 -0
- package/mcp-configs/communication/slack-mcp.json +29 -0
- package/mcp-configs/communication/telegram-mcp.json +28 -0
- package/mcp-configs/data-platform/automl-stat-mcp.json +21 -0
- package/mcp-configs/data-platform/jefferson-stats-mcp.json +22 -0
- package/mcp-configs/data-platform/mcp-excel-server.json +21 -0
- package/mcp-configs/data-platform/mcp-stata.json +21 -0
- package/mcp-configs/data-platform/mcpstack-jupyter.json +21 -0
- package/mcp-configs/data-platform/ml-mcp.json +21 -0
- package/mcp-configs/data-platform/nasdaq-data-link-mcp.json +20 -0
- package/mcp-configs/data-platform/numpy-mcp.json +21 -0
- package/mcp-configs/database/neo4j-mcp.json +37 -0
- package/mcp-configs/database/postgres-mcp.json +28 -0
- package/mcp-configs/database/sqlite-mcp.json +29 -0
- package/mcp-configs/dev-platform/geogebra-mcp.json +21 -0
- package/mcp-configs/dev-platform/github-mcp.json +31 -0
- package/mcp-configs/dev-platform/gitlab-mcp.json +34 -0
- package/mcp-configs/dev-platform/latex-mcp-server.json +21 -0
- package/mcp-configs/dev-platform/manim-mcp.json +20 -0
- package/mcp-configs/dev-platform/mcp-echarts.json +20 -0
- package/mcp-configs/dev-platform/panel-viz-mcp.json +20 -0
- package/mcp-configs/dev-platform/paperbanana.json +20 -0
- package/mcp-configs/dev-platform/texflow-mcp.json +20 -0
- package/mcp-configs/dev-platform/texmcp.json +20 -0
- package/mcp-configs/dev-platform/typst-mcp.json +21 -0
- package/mcp-configs/dev-platform/vizro-mcp.json +20 -0
- package/mcp-configs/email/email-mcp.json +40 -0
- package/mcp-configs/email/gmail-mcp.json +37 -0
- package/mcp-configs/note-knowledge/local-faiss-mcp.json +21 -0
- package/mcp-configs/note-knowledge/mcp-memory-service.json +21 -0
- package/mcp-configs/note-knowledge/mcp-obsidian.json +23 -0
- package/mcp-configs/note-knowledge/mcp-ragdocs.json +20 -0
- package/mcp-configs/note-knowledge/mcp-summarizer.json +21 -0
- package/mcp-configs/note-knowledge/mediawiki-mcp.json +21 -0
- package/mcp-configs/note-knowledge/openzim-mcp.json +20 -0
- package/mcp-configs/note-knowledge/zettelkasten-mcp.json +21 -0
- package/mcp-configs/reference-mgr/academic-paper-mcp-http.json +20 -0
- package/mcp-configs/reference-mgr/academix.json +20 -0
- package/mcp-configs/reference-mgr/arxiv-research-mcp.json +21 -0
- package/mcp-configs/reference-mgr/google-scholar-abstract-mcp.json +19 -0
- package/mcp-configs/reference-mgr/google-scholar-mcp.json +20 -0
- package/mcp-configs/reference-mgr/mcp-paperswithcode.json +21 -0
- package/mcp-configs/reference-mgr/mcp-scholarly.json +20 -0
- package/mcp-configs/reference-mgr/mcp-simple-arxiv.json +20 -0
- package/mcp-configs/reference-mgr/mcp-simple-pubmed.json +20 -0
- package/mcp-configs/reference-mgr/mcp-zotero.json +21 -0
- package/mcp-configs/reference-mgr/mendeley-mcp.json +20 -0
- package/mcp-configs/reference-mgr/ncbi-mcp-server.json +22 -0
- package/mcp-configs/reference-mgr/onecite.json +21 -0
- package/mcp-configs/reference-mgr/paper-search-mcp.json +21 -0
- package/mcp-configs/reference-mgr/pubmed-search-mcp.json +21 -0
- package/mcp-configs/reference-mgr/scholar-mcp.json +21 -0
- package/mcp-configs/reference-mgr/scholar-multi-mcp.json +21 -0
- package/mcp-configs/reference-mgr/seerai.json +21 -0
- package/mcp-configs/reference-mgr/semantic-scholar-fastmcp.json +21 -0
- package/mcp-configs/reference-mgr/sourcelibrary.json +20 -0
- package/mcp-configs/registry.json +178 -149
- package/mcp-configs/repository/dataverse-mcp.json +33 -0
- package/mcp-configs/repository/huggingface-mcp.json +29 -0
- package/openclaw.plugin.json +2 -2
- package/package.json +2 -2
- package/skills/analysis/dataviz/algorithm-visualizer-guide/SKILL.md +259 -0
- package/skills/analysis/dataviz/bokeh-visualization-guide/SKILL.md +270 -0
- package/skills/analysis/dataviz/chart-image-generator/SKILL.md +229 -0
- package/skills/analysis/dataviz/citation-map-guide/SKILL.md +184 -0
- package/skills/analysis/dataviz/d3-visualization-guide/SKILL.md +281 -0
- package/skills/analysis/dataviz/data-visualization-principles/SKILL.md +171 -0
- package/skills/analysis/dataviz/echarts-visualization-guide/SKILL.md +250 -0
- package/skills/analysis/dataviz/metabase-analytics-guide/SKILL.md +242 -0
- package/skills/analysis/dataviz/plotly-interactive-guide/SKILL.md +266 -0
- package/skills/analysis/dataviz/redash-analytics-guide/SKILL.md +284 -0
- package/skills/analysis/econometrics/econml-causal-guide/SKILL.md +163 -0
- package/skills/analysis/econometrics/empirical-paper-analysis/SKILL.md +192 -0
- package/skills/analysis/econometrics/mostly-harmless-guide/SKILL.md +139 -0
- package/skills/analysis/econometrics/panel-data-analyst/SKILL.md +259 -0
- package/skills/analysis/econometrics/panel-data-regression-workflow/SKILL.md +267 -0
- package/skills/analysis/econometrics/python-causality-guide/SKILL.md +134 -0
- package/skills/analysis/econometrics/stata-accounting-guide/SKILL.md +269 -0
- package/skills/analysis/econometrics/stata-analyst-guide/SKILL.md +245 -0
- package/skills/analysis/econometrics/stata-reference-guide/SKILL.md +293 -0
- package/skills/analysis/statistics/data-anomaly-detection/SKILL.md +157 -0
- package/skills/analysis/statistics/general-statistics-guide/SKILL.md +226 -0
- package/skills/analysis/statistics/infiagent-benchmark-guide/SKILL.md +106 -0
- package/skills/analysis/statistics/ml-experiment-tracker/SKILL.md +212 -0
- package/skills/analysis/statistics/pywayne-statistics-guide/SKILL.md +192 -0
- package/skills/analysis/statistics/quantitative-methods-guide/SKILL.md +193 -0
- package/skills/analysis/statistics/senior-data-scientist-guide/SKILL.md +223 -0
- package/skills/analysis/wrangling/claude-data-analysis-guide/SKILL.md +100 -0
- package/skills/analysis/wrangling/csv-data-analyzer/SKILL.md +170 -0
- package/skills/analysis/wrangling/data-cleaning-pipeline/SKILL.md +266 -0
- package/skills/analysis/wrangling/data-cog-guide/SKILL.md +178 -0
- package/skills/analysis/wrangling/open-data-scientist-guide/SKILL.md +197 -0
- package/skills/analysis/wrangling/stata-data-cleaning/SKILL.md +276 -0
- package/skills/analysis/wrangling/streamline-analyst-guide/SKILL.md +119 -0
- package/skills/analysis/wrangling/survey-data-processing/SKILL.md +298 -0
- package/skills/domains/ai-ml/ai-agent-papers-guide/SKILL.md +146 -0
- package/skills/domains/ai-ml/ai-model-benchmarking/SKILL.md +209 -0
- package/skills/domains/ai-ml/annotated-dl-papers-guide/SKILL.md +159 -0
- package/skills/domains/ai-ml/anomaly-detection-papers-guide/SKILL.md +167 -0
- package/skills/domains/ai-ml/autonomous-agents-papers-guide/SKILL.md +178 -0
- package/skills/domains/ai-ml/dl-transformer-finetune/SKILL.md +239 -0
- package/skills/domains/ai-ml/domain-adaptation-papers-guide/SKILL.md +173 -0
- package/skills/domains/ai-ml/generative-ai-guide/SKILL.md +146 -0
- package/skills/domains/ai-ml/graph-learning-papers-guide/SKILL.md +125 -0
- package/skills/domains/ai-ml/huggingface-inference-guide/SKILL.md +196 -0
- package/skills/domains/ai-ml/keras-deep-learning/SKILL.md +210 -0
- package/skills/domains/ai-ml/kolmogorov-arnold-networks-guide/SKILL.md +185 -0
- package/skills/domains/ai-ml/llm-from-scratch-guide/SKILL.md +124 -0
- package/skills/domains/ai-ml/ml-pipeline-guide/SKILL.md +295 -0
- package/skills/domains/ai-ml/nlp-toolkit-guide/SKILL.md +247 -0
- package/skills/domains/ai-ml/npcpy-research-guide/SKILL.md +137 -0
- package/skills/domains/ai-ml/pytorch-guide/SKILL.md +281 -0
- package/skills/domains/ai-ml/pytorch-lightning-guide/SKILL.md +244 -0
- package/skills/domains/ai-ml/responsible-ai-guide/SKILL.md +126 -0
- package/skills/domains/ai-ml/tensorflow-guide/SKILL.md +241 -0
- package/skills/domains/ai-ml/vmas-simulator-guide/SKILL.md +129 -0
- package/skills/domains/biomedical/bioagents-guide/SKILL.md +308 -0
- package/skills/domains/biomedical/clawbio-guide/SKILL.md +167 -0
- package/skills/domains/biomedical/clinical-dialogue-agents-guide/SKILL.md +145 -0
- package/skills/domains/biomedical/ena-sequence-api/SKILL.md +175 -0
- package/skills/domains/biomedical/genomas-guide/SKILL.md +126 -0
- package/skills/domains/biomedical/genotex-benchmark-guide/SKILL.md +125 -0
- package/skills/domains/biomedical/med-researcher-guide/SKILL.md +161 -0
- package/skills/domains/biomedical/med-researcher-r1-guide/SKILL.md +146 -0
- package/skills/domains/biomedical/medgeclaw-guide/SKILL.md +345 -0
- package/skills/domains/biomedical/medical-imaging-guide/SKILL.md +305 -0
- package/skills/domains/biomedical/ncbi-blast-api/SKILL.md +195 -0
- package/skills/domains/biomedical/ncbi-datasets-api/SKILL.md +220 -0
- package/skills/domains/biomedical/quickgo-api/SKILL.md +181 -0
- package/skills/domains/business/architecture-design-guide/SKILL.md +279 -0
- package/skills/domains/business/innovation-management-guide/SKILL.md +257 -0
- package/skills/domains/business/operations-research-guide/SKILL.md +258 -0
- package/skills/domains/business/xpert-bi-guide/SKILL.md +84 -0
- package/skills/domains/chemistry/cactus-cheminformatics-guide/SKILL.md +89 -0
- package/skills/domains/chemistry/chemeagle-guide/SKILL.md +147 -0
- package/skills/domains/chemistry/chemgraph-agent-guide/SKILL.md +120 -0
- package/skills/domains/chemistry/molecular-dynamics-guide/SKILL.md +237 -0
- package/skills/domains/chemistry/pubchem-api-guide/SKILL.md +180 -0
- package/skills/domains/chemistry/spectroscopy-analysis-guide/SKILL.md +290 -0
- package/skills/domains/cs/ai-security-papers-guide/SKILL.md +103 -0
- package/skills/domains/cs/code-llm-papers-guide/SKILL.md +131 -0
- package/skills/domains/cs/distributed-systems-guide/SKILL.md +268 -0
- package/skills/domains/cs/formal-verification-guide/SKILL.md +298 -0
- package/skills/domains/cs/gaussian-splatting-papers-guide/SKILL.md +158 -0
- package/skills/domains/cs/llm-aiops-guide/SKILL.md +70 -0
- package/skills/domains/cs/software-heritage-api/SKILL.md +200 -0
- package/skills/domains/ecology/species-distribution-guide/SKILL.md +343 -0
- package/skills/domains/economics/imf-data-api-guide/SKILL.md +174 -0
- package/skills/domains/economics/nber-working-papers-api/SKILL.md +177 -0
- package/skills/domains/economics/post-labor-economics/SKILL.md +254 -0
- package/skills/domains/economics/pricing-psychology-guide/SKILL.md +273 -0
- package/skills/domains/economics/repec-economics-api/SKILL.md +188 -0
- package/skills/domains/economics/world-bank-data-guide/SKILL.md +179 -0
- package/skills/domains/education/academic-study-methods/SKILL.md +228 -0
- package/skills/domains/education/assessment-design-guide/SKILL.md +213 -0
- package/skills/domains/education/educational-research-methods/SKILL.md +179 -0
- package/skills/domains/education/edumcp-guide/SKILL.md +74 -0
- package/skills/domains/education/mooc-analytics-guide/SKILL.md +206 -0
- package/skills/domains/education/open-syllabus-api/SKILL.md +171 -0
- package/skills/domains/finance/akshare-finance-data/SKILL.md +207 -0
- package/skills/domains/finance/finsight-research-guide/SKILL.md +113 -0
- package/skills/domains/finance/options-analytics-agent-guide/SKILL.md +117 -0
- package/skills/domains/finance/portfolio-optimization-guide/SKILL.md +279 -0
- package/skills/domains/finance/risk-modeling-guide/SKILL.md +260 -0
- package/skills/domains/finance/stata-accounting-research/SKILL.md +372 -0
- package/skills/domains/geoscience/climate-modeling-guide/SKILL.md +215 -0
- package/skills/domains/geoscience/pangaea-data-api/SKILL.md +197 -0
- package/skills/domains/geoscience/satellite-remote-sensing/SKILL.md +193 -0
- package/skills/domains/geoscience/seismology-data-guide/SKILL.md +208 -0
- package/skills/domains/humanities/digital-humanities-methods/SKILL.md +232 -0
- package/skills/domains/humanities/ethical-philosophy-guide/SKILL.md +244 -0
- package/skills/domains/humanities/history-research-guide/SKILL.md +260 -0
- package/skills/domains/humanities/political-history-guide/SKILL.md +241 -0
- package/skills/domains/law/caselaw-access-api/SKILL.md +149 -0
- package/skills/domains/law/legal-agent-skills-guide/SKILL.md +132 -0
- package/skills/domains/law/legal-nlp-guide/SKILL.md +236 -0
- package/skills/domains/law/legal-research-methods/SKILL.md +190 -0
- package/skills/domains/law/opencontracts-guide/SKILL.md +168 -0
- package/skills/domains/law/patent-analysis-guide/SKILL.md +257 -0
- package/skills/domains/law/regulatory-compliance-guide/SKILL.md +267 -0
- package/skills/domains/math/lean-theorem-proving-guide/SKILL.md +140 -0
- package/skills/domains/math/symbolic-computation-guide/SKILL.md +263 -0
- package/skills/domains/math/topology-data-analysis/SKILL.md +305 -0
- package/skills/domains/pharma/clinical-trial-design-guide/SKILL.md +271 -0
- package/skills/domains/pharma/drug-target-interaction/SKILL.md +242 -0
- package/skills/domains/pharma/madd-drug-discovery-guide/SKILL.md +153 -0
- package/skills/domains/pharma/pharmacovigilance-guide/SKILL.md +216 -0
- package/skills/domains/physics/astrophysics-data-guide/SKILL.md +305 -0
- package/skills/domains/physics/particle-physics-guide/SKILL.md +287 -0
- package/skills/domains/social-science/ipums-microdata-api/SKILL.md +211 -0
- package/skills/domains/social-science/network-analysis-guide/SKILL.md +310 -0
- package/skills/domains/social-science/psychology-research-guide/SKILL.md +270 -0
- package/skills/domains/social-science/sociology-research-guide/SKILL.md +238 -0
- package/skills/domains/social-science/sociology-research-methods/SKILL.md +181 -0
- package/skills/literature/discovery/arxiv-paper-monitoring/SKILL.md +233 -0
- package/skills/literature/discovery/paper-recommendation-guide/SKILL.md +120 -0
- package/skills/literature/discovery/papers-we-love-guide/SKILL.md +169 -0
- package/skills/literature/discovery/semantic-paper-radar/SKILL.md +144 -0
- package/skills/literature/discovery/zotero-arxiv-daily-guide/SKILL.md +94 -0
- package/skills/literature/fulltext/bioc-pmc-api/SKILL.md +146 -0
- package/skills/literature/fulltext/core-api-guide/SKILL.md +144 -0
- package/skills/literature/fulltext/dataverse-api/SKILL.md +215 -0
- package/skills/literature/fulltext/hal-archive-api/SKILL.md +218 -0
- package/skills/literature/fulltext/institutional-repository-guide/SKILL.md +212 -0
- package/skills/literature/fulltext/open-access-mining-guide/SKILL.md +341 -0
- package/skills/literature/fulltext/osf-api/SKILL.md +212 -0
- package/skills/literature/fulltext/pmc-ftp-bulk-download/SKILL.md +182 -0
- package/skills/literature/fulltext/zotero-ai-butler-guide/SKILL.md +166 -0
- package/skills/literature/fulltext/zotero-scihub-guide/SKILL.md +168 -0
- package/skills/literature/metadata/academic-paper-summarizer/SKILL.md +101 -0
- package/skills/literature/metadata/bibliometrix-guide/SKILL.md +164 -0
- package/skills/literature/metadata/crossref-event-data-api/SKILL.md +183 -0
- package/skills/literature/metadata/doi-content-negotiation/SKILL.md +202 -0
- package/skills/literature/metadata/orkg-api/SKILL.md +153 -0
- package/skills/literature/metadata/plumx-metrics-api/SKILL.md +188 -0
- package/skills/literature/metadata/ror-organization-api/SKILL.md +208 -0
- package/skills/literature/metadata/sophosia-reference-guide/SKILL.md +110 -0
- package/skills/literature/metadata/viaf-authority-api/SKILL.md +209 -0
- package/skills/literature/metadata/wikidata-api-guide/SKILL.md +156 -0
- package/skills/literature/metadata/zoplicate-dedup-guide/SKILL.md +147 -0
- package/skills/literature/metadata/zotero-actions-tags-guide/SKILL.md +212 -0
- package/skills/literature/metadata/zotmoov-guide/SKILL.md +120 -0
- package/skills/literature/metadata/zutilo-guide/SKILL.md +140 -0
- package/skills/literature/search/arxiv-batch-reporting/SKILL.md +133 -0
- package/skills/literature/search/arxiv-cli-tools/SKILL.md +172 -0
- package/skills/literature/search/arxiv-osiris/SKILL.md +199 -0
- package/skills/literature/search/arxiv-paper-processor/SKILL.md +141 -0
- package/skills/literature/search/baidu-scholar-guide/SKILL.md +110 -0
- package/skills/literature/search/base-academic-search/SKILL.md +196 -0
- package/skills/literature/search/chatpaper-guide/SKILL.md +122 -0
- package/skills/literature/search/citeseerx-api/SKILL.md +183 -0
- package/skills/literature/search/deep-literature-search/SKILL.md +149 -0
- package/skills/literature/search/deepgit-search-guide/SKILL.md +147 -0
- package/skills/literature/search/eric-education-api/SKILL.md +199 -0
- package/skills/literature/search/findpapers-guide/SKILL.md +177 -0
- package/skills/literature/search/ieee-xplore-api/SKILL.md +177 -0
- package/skills/literature/search/lens-scholarly-api/SKILL.md +211 -0
- package/skills/literature/search/multi-database-literature-search/SKILL.md +198 -0
- package/skills/literature/search/open-library-api/SKILL.md +196 -0
- package/skills/literature/search/open-semantic-search-guide/SKILL.md +190 -0
- package/skills/literature/search/openaire-api/SKILL.md +141 -0
- package/skills/literature/search/paper-search-mcp-guide/SKILL.md +107 -0
- package/skills/literature/search/papers-chat-guide/SKILL.md +194 -0
- package/skills/literature/search/pasa-paper-search-guide/SKILL.md +138 -0
- package/skills/literature/search/plos-open-access-api/SKILL.md +203 -0
- package/skills/literature/search/scielo-api/SKILL.md +182 -0
- package/skills/literature/search/share-research-api/SKILL.md +129 -0
- package/skills/literature/search/worldcat-search-api/SKILL.md +224 -0
- package/skills/research/automation/ai-scientist-v2-guide/SKILL.md +284 -0
- package/skills/research/automation/aim-experiment-guide/SKILL.md +234 -0
- package/skills/research/automation/claude-academic-workflow-guide/SKILL.md +202 -0
- package/skills/research/automation/coexist-ai-guide/SKILL.md +149 -0
- package/skills/research/automation/datagen-research-guide/SKILL.md +131 -0
- package/skills/research/automation/foam-agent-guide/SKILL.md +203 -0
- package/skills/research/automation/kedro-pipeline-guide/SKILL.md +216 -0
- package/skills/research/automation/mle-agent-guide/SKILL.md +139 -0
- package/skills/research/automation/paper-to-agent-guide/SKILL.md +116 -0
- package/skills/research/automation/rd-agent-guide/SKILL.md +246 -0
- package/skills/research/automation/research-paper-orchestrator/SKILL.md +254 -0
- package/skills/research/deep-research/academic-deep-research/SKILL.md +190 -0
- package/skills/research/deep-research/auto-deep-research-guide/SKILL.md +141 -0
- package/skills/research/deep-research/cognitive-kernel-guide/SKILL.md +200 -0
- package/skills/research/deep-research/corvus-research-guide/SKILL.md +132 -0
- package/skills/research/deep-research/deep-research-pro/SKILL.md +213 -0
- package/skills/research/deep-research/deep-research-work/SKILL.md +204 -0
- package/skills/research/deep-research/deep-searcher-guide/SKILL.md +253 -0
- package/skills/research/deep-research/gpt-researcher-guide/SKILL.md +191 -0
- package/skills/research/deep-research/in-depth-research-guide/SKILL.md +205 -0
- package/skills/research/deep-research/khoj-research-guide/SKILL.md +200 -0
- package/skills/research/deep-research/kosmos-scientist-guide/SKILL.md +185 -0
- package/skills/research/deep-research/llm-scientific-discovery-guide/SKILL.md +178 -0
- package/skills/research/deep-research/local-deep-research-guide/SKILL.md +253 -0
- package/skills/research/deep-research/open-researcher-guide/SKILL.md +138 -0
- package/skills/research/deep-research/tongyi-deep-research-guide/SKILL.md +217 -0
- package/skills/research/funding/eu-horizon-guide/SKILL.md +244 -0
- package/skills/research/funding/grant-budget-guide/SKILL.md +284 -0
- package/skills/research/funding/nih-reporter-api-guide/SKILL.md +166 -0
- package/skills/research/funding/nsf-award-api-guide/SKILL.md +133 -0
- package/skills/research/methodology/academic-mentor-guide/SKILL.md +169 -0
- package/skills/research/methodology/claude-scientific-guide/SKILL.md +122 -0
- package/skills/research/methodology/deep-innovator-guide/SKILL.md +242 -0
- package/skills/research/methodology/osf-api-guide/SKILL.md +165 -0
- package/skills/research/methodology/parsifal-slr-guide/SKILL.md +154 -0
- package/skills/research/methodology/research-paper-kb/SKILL.md +263 -0
- package/skills/research/methodology/research-pipeline-units-guide/SKILL.md +169 -0
- package/skills/research/methodology/research-town-guide/SKILL.md +263 -0
- package/skills/research/methodology/slr-automation-guide/SKILL.md +235 -0
- package/skills/research/paper-review/automated-review-guide/SKILL.md +281 -0
- package/skills/research/paper-review/latte-review-guide/SKILL.md +175 -0
- package/skills/research/paper-review/paper-compare-guide/SKILL.md +238 -0
- package/skills/research/paper-review/paper-critique-framework/SKILL.md +181 -0
- package/skills/research/paper-review/paper-digest-guide/SKILL.md +240 -0
- package/skills/research/paper-review/paper-research-assistant/SKILL.md +231 -0
- package/skills/research/paper-review/research-quality-filter/SKILL.md +261 -0
- package/skills/research/paper-review/review-response-guide/SKILL.md +275 -0
- package/skills/tools/code-exec/contextplus-mcp-guide/SKILL.md +110 -0
- package/skills/tools/code-exec/google-colab-guide/SKILL.md +276 -0
- package/skills/tools/code-exec/kaggle-api-guide/SKILL.md +216 -0
- package/skills/tools/code-exec/overleaf-cli-guide/SKILL.md +279 -0
- package/skills/tools/diagram/clawphd-guide/SKILL.md +149 -0
- package/skills/tools/diagram/code-flow-visualizer/SKILL.md +197 -0
- package/skills/tools/diagram/excalidraw-diagram-guide/SKILL.md +170 -0
- package/skills/tools/diagram/json-data-visualizer/SKILL.md +270 -0
- package/skills/tools/diagram/kroki-diagram-api/SKILL.md +198 -0
- package/skills/tools/diagram/mermaid-architect-guide/SKILL.md +219 -0
- package/skills/tools/diagram/scientific-graphical-abstract/SKILL.md +201 -0
- package/skills/tools/diagram/tldraw-whiteboard-guide/SKILL.md +397 -0
- package/skills/tools/document/docsgpt-guide/SKILL.md +130 -0
- package/skills/tools/document/large-document-reader/SKILL.md +202 -0
- package/skills/tools/document/md2pdf-xelatex/SKILL.md +212 -0
- package/skills/tools/document/openpaper-guide/SKILL.md +232 -0
- package/skills/tools/document/paper-parse-guide/SKILL.md +243 -0
- package/skills/tools/document/weknora-guide/SKILL.md +216 -0
- package/skills/tools/document/zotero-addon-market-guide/SKILL.md +108 -0
- package/skills/tools/document/zotero-night-theme-guide/SKILL.md +142 -0
- package/skills/tools/document/zotero-style-guide/SKILL.md +217 -0
- package/skills/tools/knowledge-graph/citation-network-builder/SKILL.md +244 -0
- package/skills/tools/knowledge-graph/concept-map-generator/SKILL.md +284 -0
- package/skills/tools/knowledge-graph/graphiti-guide/SKILL.md +219 -0
- package/skills/tools/knowledge-graph/mimir-memory-guide/SKILL.md +135 -0
- package/skills/tools/knowledge-graph/notero-zotero-notion-guide/SKILL.md +187 -0
- package/skills/tools/knowledge-graph/open-webui-tools-guide/SKILL.md +156 -0
- package/skills/tools/knowledge-graph/openspg-guide/SKILL.md +210 -0
- package/skills/tools/knowledge-graph/paperpile-notion-guide/SKILL.md +84 -0
- package/skills/tools/knowledge-graph/zotero-markdb-connect-guide/SKILL.md +162 -0
- package/skills/tools/ocr-translate/latex-translation-guide/SKILL.md +176 -0
- package/skills/tools/ocr-translate/math-equation-renderer/SKILL.md +198 -0
- package/skills/tools/ocr-translate/pdf-math-translate-guide/SKILL.md +141 -0
- package/skills/tools/ocr-translate/zotero-pdf-translate-guide/SKILL.md +95 -0
- package/skills/tools/ocr-translate/zotero-pdf2zh-guide/SKILL.md +143 -0
- package/skills/tools/scraping/dataset-finder-guide/SKILL.md +253 -0
- package/skills/tools/scraping/easy-spider-guide/SKILL.md +250 -0
- package/skills/tools/scraping/google-scholar-scraper/SKILL.md +255 -0
- package/skills/tools/scraping/repository-harvesting-guide/SKILL.md +310 -0
- package/skills/writing/citation/academic-citation-manager/SKILL.md +314 -0
- package/skills/writing/citation/academic-citation-manager-guide/SKILL.md +182 -0
- package/skills/writing/citation/citation-assistant-skill/SKILL.md +192 -0
- package/skills/writing/citation/jabref-reference-guide/SKILL.md +127 -0
- package/skills/writing/citation/jasminum-zotero-guide/SKILL.md +103 -0
- package/skills/writing/citation/mendeley-api/SKILL.md +231 -0
- package/skills/writing/citation/obsidian-citation-guide/SKILL.md +164 -0
- package/skills/writing/citation/obsidian-zotero-guide/SKILL.md +137 -0
- package/skills/writing/citation/onecite-reference-guide/SKILL.md +168 -0
- package/skills/writing/citation/papersgpt-zotero-guide/SKILL.md +132 -0
- package/skills/writing/citation/papis-cli-guide/SKILL.md +213 -0
- package/skills/writing/citation/zotero-better-bibtex-guide/SKILL.md +107 -0
- package/skills/writing/citation/zotero-better-notes-guide/SKILL.md +121 -0
- package/skills/writing/citation/zotero-gpt-guide/SKILL.md +111 -0
- package/skills/writing/citation/zotero-mcp-guide/SKILL.md +164 -0
- package/skills/writing/citation/zotero-mdnotes-guide/SKILL.md +162 -0
- package/skills/writing/citation/zotero-reference-guide/SKILL.md +139 -0
- package/skills/writing/citation/zotero-scholar-guide/SKILL.md +294 -0
- package/skills/writing/citation/zotfile-attachment-guide/SKILL.md +140 -0
- package/skills/writing/composition/ml-paper-writing/SKILL.md +163 -0
- package/skills/writing/composition/opendraft-thesis-guide/SKILL.md +200 -0
- package/skills/writing/composition/paper-debugger-guide/SKILL.md +143 -0
- package/skills/writing/composition/paperforge-guide/SKILL.md +205 -0
- package/skills/writing/composition/research-paper-writer/SKILL.md +226 -0
- package/skills/writing/composition/scientific-writing-resources/SKILL.md +151 -0
- package/skills/writing/composition/scientific-writing-wrapper/SKILL.md +153 -0
- package/skills/writing/latex/academic-writing-latex/SKILL.md +285 -0
- package/skills/writing/latex/latex-drawing-collection/SKILL.md +154 -0
- package/skills/writing/latex/latex-templates-collection/SKILL.md +159 -0
- package/skills/writing/latex/md-to-pdf-academic/SKILL.md +230 -0
- package/skills/writing/latex/tex-render-guide/SKILL.md +243 -0
- package/skills/writing/polish/academic-tone-guide/SKILL.md +209 -0
- package/skills/writing/polish/chinese-text-humanizer/SKILL.md +140 -0
- package/skills/writing/polish/conciseness-editing-guide/SKILL.md +225 -0
- package/skills/writing/polish/paper-polish-guide/SKILL.md +160 -0
- package/skills/writing/templates/arxiv-preprint-template/SKILL.md +184 -0
- package/skills/writing/templates/elegant-paper-template/SKILL.md +141 -0
- package/skills/writing/templates/graphical-abstract-guide/SKILL.md +183 -0
- package/skills/writing/templates/novathesis-guide/SKILL.md +152 -0
- package/skills/writing/templates/scientific-article-pdf/SKILL.md +261 -0
- package/skills/writing/templates/sjtuthesis-guide/SKILL.md +197 -0
- package/skills/writing/templates/thuthesis-guide/SKILL.md +181 -0
- package/skills/literature/fulltext/repository-harvesting-guide/SKILL.md +0 -207
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: econml-causal-guide
|
|
3
|
+
description: "Apply EconML for causal inference combining machine learning and econometrics"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "🔬"
|
|
7
|
+
category: "analysis"
|
|
8
|
+
subcategory: "econometrics"
|
|
9
|
+
keywords: ["causal-inference", "machine-learning", "treatment-effects", "econometrics", "microsoft", "double-ml"]
|
|
10
|
+
source: "https://github.com/py-why/EconML"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# EconML Causal Inference Guide
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
EconML is a Python package developed by Microsoft Research as part of the ALICE (Automated Learning and Intelligence for Causation and Economics) project. It provides a comprehensive suite of methods for estimating heterogeneous treatment effects from observational data, bridging the gap between modern machine learning and classical econometric techniques for causal inference.
|
|
18
|
+
|
|
19
|
+
Traditional econometric approaches to causal inference often rely on strong parametric assumptions and struggle with high-dimensional data. Pure machine learning methods excel at prediction but do not inherently distinguish correlation from causation. EconML combines the strengths of both paradigms, offering methods that leverage the flexibility of ML for nuisance parameter estimation while maintaining the rigorous causal identification guarantees of econometric theory.
|
|
20
|
+
|
|
21
|
+
The library implements cutting-edge methods from the academic literature including Double Machine Learning (DML), Causal Forests, Doubly Robust Learners, Orthogonal Random Forests, and Instrumental Variable methods with ML first stages. These tools are essential for researchers across economics, public health, education policy, and any field where understanding causal mechanisms from non-experimental data is critical.
|
|
22
|
+
|
|
23
|
+
## Installation and Setup
|
|
24
|
+
|
|
25
|
+
Install EconML via pip:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
pip install econml
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
For the full feature set including optional dependencies:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
pip install econml[all]
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
EconML builds on top of scikit-learn and integrates with the broader Python data science ecosystem. Core dependencies include numpy, scipy, pandas, scikit-learn, and statsmodels. Optional dependencies for specific estimators include LightGBM and PyTorch.
|
|
38
|
+
|
|
39
|
+
Verify installation:
|
|
40
|
+
|
|
41
|
+
```python
|
|
42
|
+
import econml
|
|
43
|
+
print(econml.__version__)
|
|
44
|
+
|
|
45
|
+
from econml.dml import LinearDML
|
|
46
|
+
from econml.orf import DMLOrthoForest
|
|
47
|
+
print("EconML loaded successfully")
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
## Core Estimators and Methods
|
|
51
|
+
|
|
52
|
+
**Double Machine Learning (DML)**: The workhorse method for estimating average and heterogeneous treatment effects while controlling for high-dimensional confounders. DML uses cross-fitting and orthogonalization to eliminate regularization bias:
|
|
53
|
+
|
|
54
|
+
```python
|
|
55
|
+
from econml.dml import LinearDML, CausalForestDML
|
|
56
|
+
from sklearn.ensemble import GradientBoostingRegressor
|
|
57
|
+
|
|
58
|
+
# Linear DML for parametric treatment effect estimation
|
|
59
|
+
est = LinearDML(
|
|
60
|
+
model_y=GradientBoostingRegressor(),
|
|
61
|
+
model_t=GradientBoostingRegressor(),
|
|
62
|
+
cv=5,
|
|
63
|
+
random_state=42
|
|
64
|
+
)
|
|
65
|
+
est.fit(Y, T, X=X, W=W)
|
|
66
|
+
|
|
67
|
+
# Get treatment effect estimates with confidence intervals
|
|
68
|
+
effect = est.effect(X_test)
|
|
69
|
+
ci = est.effect_interval(X_test, alpha=0.05)
|
|
70
|
+
print(f"ATE: {est.ate():.4f}")
|
|
71
|
+
print(f"ATE 95% CI: {est.ate_interval(alpha=0.05)}")
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Here `Y` is the outcome, `T` is the treatment, `X` contains effect modifiers (features for heterogeneity), and `W` contains additional confounders.
|
|
75
|
+
|
|
76
|
+
**Causal Forest DML**: Combines DML orthogonalization with Causal Forest estimation for flexible, nonparametric heterogeneous treatment effects:
|
|
77
|
+
|
|
78
|
+
```python
|
|
79
|
+
from econml.dml import CausalForestDML
|
|
80
|
+
|
|
81
|
+
cf_est = CausalForestDML(
|
|
82
|
+
model_y=GradientBoostingRegressor(),
|
|
83
|
+
model_t=GradientBoostingRegressor(),
|
|
84
|
+
n_estimators=200,
|
|
85
|
+
min_samples_leaf=10,
|
|
86
|
+
cv=5,
|
|
87
|
+
random_state=42
|
|
88
|
+
)
|
|
89
|
+
cf_est.fit(Y, T, X=X, W=W)
|
|
90
|
+
|
|
91
|
+
# Heterogeneous treatment effects
|
|
92
|
+
hte = cf_est.effect(X_test)
|
|
93
|
+
# Feature importance for treatment effect heterogeneity
|
|
94
|
+
importances = cf_est.feature_importances_
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
**Doubly Robust Learner**: Provides consistent treatment effect estimates when either the outcome model or the propensity score model is correctly specified:
|
|
98
|
+
|
|
99
|
+
```python
|
|
100
|
+
from econml.dr import DRLearner
|
|
101
|
+
from sklearn.ensemble import RandomForestClassifier, RandomForestRegressor
|
|
102
|
+
|
|
103
|
+
dr_est = DRLearner(
|
|
104
|
+
model_propensity=RandomForestClassifier(),
|
|
105
|
+
model_regression=RandomForestRegressor(),
|
|
106
|
+
model_final=RandomForestRegressor(),
|
|
107
|
+
cv=5
|
|
108
|
+
)
|
|
109
|
+
dr_est.fit(Y, T, X=X, W=W)
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
**Instrumental Variable Methods**: For settings where unobserved confounding is present but valid instruments are available:
|
|
113
|
+
|
|
114
|
+
```python
|
|
115
|
+
from econml.iv.dml import DMLIV
|
|
116
|
+
|
|
117
|
+
iv_est = DMLIV(
|
|
118
|
+
model_y_xw=GradientBoostingRegressor(),
|
|
119
|
+
model_t_xw=GradientBoostingRegressor(),
|
|
120
|
+
model_t_xwz=GradientBoostingRegressor(),
|
|
121
|
+
cv=5
|
|
122
|
+
)
|
|
123
|
+
iv_est.fit(Y, T, Z=Z, X=X, W=W)
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## Research Workflow Integration
|
|
127
|
+
|
|
128
|
+
**Experiment Analysis**: When randomized experiments suffer from non-compliance or attrition, use IV methods in EconML to recover local average treatment effects. The ML-based first stages handle complex relationships between instruments and treatment uptake.
|
|
129
|
+
|
|
130
|
+
**Policy Evaluation**: Estimate heterogeneous treatment effects to identify which subpopulations benefit most from an intervention. The CATE (Conditional Average Treatment Effect) estimates can directly inform targeted policy design:
|
|
131
|
+
|
|
132
|
+
```python
|
|
133
|
+
# Identify subgroups with largest treatment effects
|
|
134
|
+
import pandas as pd
|
|
135
|
+
|
|
136
|
+
effects_df = pd.DataFrame({
|
|
137
|
+
"effect": cf_est.effect(X_test).flatten(),
|
|
138
|
+
"ci_lower": cf_est.effect_interval(X_test, alpha=0.05)[0].flatten(),
|
|
139
|
+
"ci_upper": cf_est.effect_interval(X_test, alpha=0.05)[1].flatten()
|
|
140
|
+
}, index=X_test.index)
|
|
141
|
+
|
|
142
|
+
# Top beneficiaries
|
|
143
|
+
top_group = effects_df.nlargest(100, "effect")
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
**Sensitivity Analysis**: Combine EconML estimates with sensitivity analysis frameworks to assess robustness to potential unobserved confounders. Report how much unmeasured confounding would be required to explain away your findings.
|
|
147
|
+
|
|
148
|
+
**Publication-Ready Results**: EconML provides confidence intervals and hypothesis tests based on asymptotic theory, producing results suitable for peer-reviewed publications. Use the summary methods to generate formatted regression-style output.
|
|
149
|
+
|
|
150
|
+
## Best Practices for Academic Research
|
|
151
|
+
|
|
152
|
+
1. **Always validate assumptions**: DML requires conditional ignorability (selection on observables). Document your identification strategy clearly.
|
|
153
|
+
2. **Cross-fitting is essential**: Never skip the cross-fitting step, as it prevents overfitting bias in the nuisance estimates.
|
|
154
|
+
3. **Report multiple estimators**: Present results from DML, DR Learner, and Causal Forest side by side to assess robustness.
|
|
155
|
+
4. **Check overlap**: Verify sufficient overlap in covariate distributions between treated and control groups before estimation.
|
|
156
|
+
5. **Use honest estimation**: EconML Causal Forests use sample splitting for honesty by default, ensuring valid inference.
|
|
157
|
+
|
|
158
|
+
## References
|
|
159
|
+
|
|
160
|
+
- EconML repository: https://github.com/py-why/EconML
|
|
161
|
+
- EconML documentation: https://econml.azurewebsites.net/
|
|
162
|
+
- Chernozhukov et al. (2018), Double/Debiased Machine Learning for Treatment and Structural Parameters
|
|
163
|
+
- Athey and Imbens (2019), Machine Learning Methods That Economists Should Know About
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: empirical-paper-analysis
|
|
3
|
+
description: "Systematic framework for analyzing empirical law and economics papers"
|
|
4
|
+
metadata:
|
|
5
|
+
openclaw:
|
|
6
|
+
emoji: "⚖️"
|
|
7
|
+
category: "analysis"
|
|
8
|
+
subcategory: "econometrics"
|
|
9
|
+
keywords: ["empirical analysis", "law and economics", "identification strategy", "causal inference", "robustness checks", "research methodology"]
|
|
10
|
+
source: "https://clawhub.ai/zhouziyue233/empirical-paper-analysis-skill"
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Empirical Paper Analysis Framework
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
|
|
17
|
+
This framework provides a systematic approach to reading, evaluating, and critiquing empirical research papers in law and economics and related social science fields. It covers identification strategy assessment, data evaluation, robustness check analysis, and constructive critique formulation. Use this when reviewing papers for seminars, referee reports, or your own literature reviews.
|
|
18
|
+
|
|
19
|
+
## The 6-Step Analysis Framework
|
|
20
|
+
|
|
21
|
+
### Step 1: Identify the Research Question
|
|
22
|
+
|
|
23
|
+
Extract the core question and decompose it:
|
|
24
|
+
|
|
25
|
+
```
|
|
26
|
+
Template:
|
|
27
|
+
- Research Question: [What causal/descriptive claim does the paper make?]
|
|
28
|
+
- Unit of analysis: [individual / firm / state / country-year]
|
|
29
|
+
- Outcome variable (Y): [What is being explained?]
|
|
30
|
+
- Key explanatory variable (X): [What is the treatment or variable of interest?]
|
|
31
|
+
- Claimed relationship: [X → Y via what mechanism?]
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
**Red flags**:
|
|
35
|
+
- Vague or shifting research question across sections
|
|
36
|
+
- Mismatch between stated question and actual regression specification
|
|
37
|
+
- Question that is purely correlational framed as causal
|
|
38
|
+
|
|
39
|
+
### Step 2: Evaluate the Identification Strategy
|
|
40
|
+
|
|
41
|
+
The identification strategy is how the paper argues for causal interpretation. Map it to a known framework:
|
|
42
|
+
|
|
43
|
+
| Strategy | Key Assumption | What to Check |
|
|
44
|
+
|----------|---------------|---------------|
|
|
45
|
+
| **OLS** | No omitted variable bias (E[u\|X]=0) | Control variable completeness, R² sensitivity |
|
|
46
|
+
| **IV / 2SLS** | Exclusion restriction (instrument affects Y only through X) | First stage F-stat (>10), instrument validity argument |
|
|
47
|
+
| **Difference-in-Differences** | Parallel trends (absent treatment, treated and control would trend similarly) | Pre-treatment parallel trends test, event study plot |
|
|
48
|
+
| **Regression Discontinuity** | No manipulation at cutoff, continuity of potential outcomes | McCrary density test, covariate balance at cutoff |
|
|
49
|
+
| **Matching / PSM** | Selection on observables (no unobservable confounders) | Balance tables, common support, sensitivity to caliper |
|
|
50
|
+
| **Synthetic Control** | Pre-treatment fit quality, no spillovers | RMSPE ratio, placebo tests on donor pool |
|
|
51
|
+
|
|
52
|
+
**Questions to ask**:
|
|
53
|
+
- Is the identification assumption stated explicitly?
|
|
54
|
+
- Is there a **falsification test** (placebo treatment, placebo outcome)?
|
|
55
|
+
- Could there be **reverse causality**?
|
|
56
|
+
- Are there **spillover effects** that violate SUTVA?
|
|
57
|
+
|
|
58
|
+
### Step 3: Assess the Data
|
|
59
|
+
|
|
60
|
+
```
|
|
61
|
+
Data Evaluation Checklist:
|
|
62
|
+
□ Source: Is the data publicly available or proprietary?
|
|
63
|
+
□ Sample period: Does it match the question? Any structural breaks?
|
|
64
|
+
□ Sample size: Sufficient for the method? Power analysis?
|
|
65
|
+
□ Attrition: Is there selective dropout? Attrition tables?
|
|
66
|
+
□ Measurement: Are key variables measured directly or proxied?
|
|
67
|
+
□ External validity: Is the sample representative of the population of interest?
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
**Common data issues in law and economics**:
|
|
71
|
+
- Court case data: selection into litigation (Priest-Klein hypothesis)
|
|
72
|
+
- Regulatory data: endogenous timing of policy changes
|
|
73
|
+
- Survey data: response bias, recall bias
|
|
74
|
+
- Administrative data: measurement captures legal definitions, not economic concepts
|
|
75
|
+
|
|
76
|
+
### Step 4: Evaluate the Empirical Specification
|
|
77
|
+
|
|
78
|
+
Examine the main regression equation:
|
|
79
|
+
|
|
80
|
+
```
|
|
81
|
+
Y_it = α + β·X_it + γ·Controls_it + θ_i + λ_t + ε_it
|
|
82
|
+
|
|
83
|
+
Where:
|
|
84
|
+
Y_it = outcome for unit i at time t
|
|
85
|
+
X_it = treatment / variable of interest
|
|
86
|
+
Controls_it = control variables
|
|
87
|
+
θ_i = unit fixed effects
|
|
88
|
+
λ_t = time fixed effects
|
|
89
|
+
ε_it = error term
|
|
90
|
+
β = coefficient of interest
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
**Check**:
|
|
94
|
+
- Is `β` the causal parameter of interest, or just an association?
|
|
95
|
+
- Are fixed effects appropriate? (Individual FE removes time-invariant confounders)
|
|
96
|
+
- What is the **clustering level** for standard errors? (Should match treatment assignment level)
|
|
97
|
+
- Are control variables themselves **bad controls** (post-treatment variables that are affected by X)?
|
|
98
|
+
|
|
99
|
+
### Step 5: Scrutinize Robustness Checks
|
|
100
|
+
|
|
101
|
+
A well-executed paper should include several:
|
|
102
|
+
|
|
103
|
+
| Robustness Check | Purpose | What to Look For |
|
|
104
|
+
|-----------------|---------|-----------------|
|
|
105
|
+
| **Alternative specifications** | Drop/add controls | Does β sign/magnitude change? |
|
|
106
|
+
| **Alternative samples** | Trim outliers, restrict subgroups | Is result driven by a small subset? |
|
|
107
|
+
| **Placebo tests** | Fake treatment date, fake outcome | Should find null results |
|
|
108
|
+
| **Alternative clustering** | State vs. county vs. firm | Does significance survive? |
|
|
109
|
+
| **Bounding exercises** | Oster (2019) bounds, Altonji ratio | How large would selection on unobservables need to be? |
|
|
110
|
+
| **Leave-one-out** | Drop each unit/period | Is result driven by a single observation? |
|
|
111
|
+
| **Event study** | Dynamic treatment effects plot | Are pre-treatment coefficients zero? |
|
|
112
|
+
|
|
113
|
+
**Warning signs**:
|
|
114
|
+
- Only showing robustness checks that "work" (selective reporting)
|
|
115
|
+
- No sensitivity analysis on key assumptions
|
|
116
|
+
- Robustness table hidden in appendix with different significance levels
|
|
117
|
+
|
|
118
|
+
### Step 6: Formulate Constructive Critique
|
|
119
|
+
|
|
120
|
+
Structure your critique as:
|
|
121
|
+
|
|
122
|
+
```markdown
|
|
123
|
+
## Summary
|
|
124
|
+
[2-3 sentences on what the paper does and finds]
|
|
125
|
+
|
|
126
|
+
## Strengths
|
|
127
|
+
- [Identification strategy strength]
|
|
128
|
+
- [Data quality strength]
|
|
129
|
+
- [Policy relevance]
|
|
130
|
+
|
|
131
|
+
## Main Concerns
|
|
132
|
+
|
|
133
|
+
### Concern 1: [Identification]
|
|
134
|
+
- Issue: [What specific assumption is violated or untested?]
|
|
135
|
+
- Evidence: [What in the paper supports your concern?]
|
|
136
|
+
- Suggestion: [What analysis would address this?]
|
|
137
|
+
|
|
138
|
+
### Concern 2: [Data/Measurement]
|
|
139
|
+
- Issue: ...
|
|
140
|
+
- Evidence: ...
|
|
141
|
+
- Suggestion: ...
|
|
142
|
+
|
|
143
|
+
### Concern 3: [Specification]
|
|
144
|
+
- Issue: ...
|
|
145
|
+
- Evidence: ...
|
|
146
|
+
- Suggestion: ...
|
|
147
|
+
|
|
148
|
+
## Minor Comments
|
|
149
|
+
- [Table formatting, typos, unclear notation]
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
## Quick Reference: Common Mistakes
|
|
153
|
+
|
|
154
|
+
| Mistake | Why It's Wrong | Fix |
|
|
155
|
+
|---------|---------------|-----|
|
|
156
|
+
| Clustering at wrong level | Understated SEs, inflated t-stats | Cluster at treatment assignment level |
|
|
157
|
+
| Bad controls | Including post-treatment variables biases β | Only control for pre-treatment variables |
|
|
158
|
+
| Cherry-picked specification | Overfitting to significance | Pre-register or show full specification curve |
|
|
159
|
+
| Ignoring multiple testing | Family-wise error rate inflation | Bonferroni or Benjamini-Hochberg correction |
|
|
160
|
+
| Log of zero | Undefined, ad hoc fixes (log(Y+1)) introduce bias | IHS transform or Poisson pseudo-MLE |
|
|
161
|
+
| Winner's curse | Published effect sizes are biased upward | Check if effect is plausible given prior literature |
|
|
162
|
+
|
|
163
|
+
## Example: Analyzing a DiD Paper
|
|
164
|
+
|
|
165
|
+
```
|
|
166
|
+
Paper claim: "Adopting e-filing reduces case processing time by 15%"
|
|
167
|
+
|
|
168
|
+
Step 1: RQ = Does e-filing (X) cause faster case processing (Y)?
|
|
169
|
+
Step 2: DiD with staggered adoption across courts
|
|
170
|
+
- Check: parallel trends plot for early vs. late adopters
|
|
171
|
+
- Check: recent DiD literature (de Chaisemartin & D'Haultfoeuille 2020)
|
|
172
|
+
warns that TWFE with staggered treatment can be biased
|
|
173
|
+
Step 3: Data from court administrative records (2005-2020)
|
|
174
|
+
- Check: is adoption timing truly exogenous? (Courts with backlogs
|
|
175
|
+
might adopt earlier → selection bias)
|
|
176
|
+
Step 4: log(processing_days)_it = β·efiling_it + court_FE + year_FE + ε_it
|
|
177
|
+
- Concern: no controls for court budgets, judge turnover
|
|
178
|
+
Step 5: Robustness: event study plot, drop large courts, alternative
|
|
179
|
+
measure of processing time → β stable around -0.15
|
|
180
|
+
Step 6: Credible but could be strengthened with:
|
|
181
|
+
- Callaway & Sant'Anna (2021) estimator for staggered DiD
|
|
182
|
+
- Instrument for adoption timing
|
|
183
|
+
- Heterogeneity by court size and case type
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
## References
|
|
187
|
+
|
|
188
|
+
- Angrist, J. D., & Pischke, J. S. (2009). *Mostly Harmless Econometrics*. Princeton University Press.
|
|
189
|
+
- Oster, E. (2019). "Unobservable Selection and Coefficient Stability." *Journal of Business & Economic Statistics*.
|
|
190
|
+
- de Chaisemartin, C., & D'Haultfoeuille, X. (2020). "Two-Way Fixed Effects Estimators with Heterogeneous Treatment Effects." *AER*.
|
|
191
|
+
- Callaway, B., & Sant'Anna, P. H. (2021). "Difference-in-Differences with Multiple Time Periods." *Journal of Econometrics*.
|
|
192
|
+
- [Empirical Legal Studies Resources](https://www.law.northwestern.edu/research-faculty/clbe/events/empiricallegalstudies/)
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: mostly-harmless-guide
|
|
3
|
+
description: "Replication code and guide for Mostly Harmless Econometrics methods"
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
author: wentor-community
|
|
6
|
+
source: https://github.com/vikjam/mostly-harmless-replication
|
|
7
|
+
metadata:
|
|
8
|
+
openclaw:
|
|
9
|
+
category: "analysis"
|
|
10
|
+
subcategory: "econometrics"
|
|
11
|
+
keywords:
|
|
12
|
+
- econometrics
|
|
13
|
+
- causal-inference
|
|
14
|
+
- replication
|
|
15
|
+
- regression
|
|
16
|
+
- instrumental-variables
|
|
17
|
+
- difference-in-differences
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# Mostly Harmless Econometrics Guide
|
|
21
|
+
|
|
22
|
+
A skill providing replication code, explanations, and practical guidance for the econometric methods presented in Angrist and Pischke's "Mostly Harmless Econometrics" (MHE). Based on the mostly-harmless-replication repository (642 stars), this skill helps researchers understand and correctly apply core causal inference techniques.
|
|
23
|
+
|
|
24
|
+
## Overview
|
|
25
|
+
|
|
26
|
+
"Mostly Harmless Econometrics" is one of the most influential applied econometrics textbooks, providing accessible explanations of the methods that dominate modern empirical research in economics and increasingly in other social sciences. This skill translates the book's core methods into practical guidance that the agent can use to help researchers design studies, select appropriate estimators, and interpret results correctly.
|
|
27
|
+
|
|
28
|
+
The skill covers regression, instrumental variables, difference-in-differences, regression discontinuity, and related methods, with emphasis on the practical decisions researchers face when applying these techniques to real data.
|
|
29
|
+
|
|
30
|
+
## Regression Fundamentals
|
|
31
|
+
|
|
32
|
+
**Ordinary Least Squares (OLS)**
|
|
33
|
+
- OLS provides the best linear approximation to the conditional expectation function
|
|
34
|
+
- The regression anatomy theorem: each coefficient can be obtained from a bivariate regression of the outcome on the residualized regressor
|
|
35
|
+
- Omitted variable bias formula: bias equals the effect of the omitted variable times its correlation with the included regressor
|
|
36
|
+
- Control variables should be selected based on the conditional independence assumption, not on statistical significance
|
|
37
|
+
- Robust standard errors (Huber-White) should be the default; cluster when observations are not independent
|
|
38
|
+
|
|
39
|
+
**Regression Interpretation**
|
|
40
|
+
- The causal interpretation of regression requires the conditional independence assumption (CIA)
|
|
41
|
+
- CIA states that treatment is as good as randomly assigned after conditioning on controls
|
|
42
|
+
- Saturated models (fully interacted categorical variables) are always correctly specified
|
|
43
|
+
- Linear regression with continuous variables approximates the true conditional expectation
|
|
44
|
+
- Report both statistical and economic significance; a large t-statistic does not mean a large effect
|
|
45
|
+
|
|
46
|
+
**Practical Decisions**
|
|
47
|
+
- Include controls that are correlated with both the treatment and outcome
|
|
48
|
+
- Do not include controls that are consequences of treatment (bad controls)
|
|
49
|
+
- Use the most parsimonious specification that satisfies the CIA
|
|
50
|
+
- Test sensitivity to alternative control sets to assess robustness
|
|
51
|
+
- Report multiple specifications to demonstrate that results are not driven by a particular set of controls
|
|
52
|
+
|
|
53
|
+
## Instrumental Variables
|
|
54
|
+
|
|
55
|
+
**Core Concepts**
|
|
56
|
+
- IV addresses endogeneity when the treatment is correlated with unobserved factors affecting the outcome
|
|
57
|
+
- A valid instrument must be relevant (correlated with treatment) and excludable (affects outcome only through treatment)
|
|
58
|
+
- Two-stage least squares (2SLS) is the standard IV estimator
|
|
59
|
+
- The Wald estimator (reduced form divided by first stage) gives the IV estimate in the simplest case
|
|
60
|
+
- IV estimates the Local Average Treatment Effect (LATE) for compliers
|
|
61
|
+
|
|
62
|
+
**Implementation Guide**
|
|
63
|
+
- Always report the first-stage F-statistic; values below 10 indicate weak instruments
|
|
64
|
+
- Use the Anderson-Rubin test for inference robust to weak instruments
|
|
65
|
+
- Over-identification tests (Sargan-Hansen) can detect violations of the exclusion restriction with multiple instruments, but cannot validate a just-identified model
|
|
66
|
+
- Report the first stage, reduced form, and IV estimates together
|
|
67
|
+
- Compare OLS and IV estimates; if IV is much larger, consider LATE interpretation or measurement error
|
|
68
|
+
|
|
69
|
+
**Common Applications**
|
|
70
|
+
- Returns to education using quarter of birth as an instrument
|
|
71
|
+
- Effect of institutions on growth using settler mortality as an instrument
|
|
72
|
+
- Peer effects using random assignment to groups
|
|
73
|
+
- Supply and demand estimation using shift variables
|
|
74
|
+
- Policy evaluation using eligibility rules as instruments
|
|
75
|
+
|
|
76
|
+
## Difference-in-Differences
|
|
77
|
+
|
|
78
|
+
**Design Principles**
|
|
79
|
+
- DID compares changes in outcomes over time between treated and control groups
|
|
80
|
+
- The parallel trends assumption: absent treatment, both groups would have followed the same trend
|
|
81
|
+
- DID removes time-invariant unobserved confounders
|
|
82
|
+
- The standard estimator is a two-way fixed effects regression (unit and time fixed effects plus treatment indicator)
|
|
83
|
+
- Staggered adoption designs require careful attention to treatment timing heterogeneity
|
|
84
|
+
|
|
85
|
+
**Implementation**
|
|
86
|
+
- Always plot pre-treatment trends to assess the parallel trends assumption visually
|
|
87
|
+
- Include leads of the treatment indicator to test for pre-trends formally
|
|
88
|
+
- Cluster standard errors at the group level (state, firm, school)
|
|
89
|
+
- With few clusters (fewer than 50), use wild cluster bootstrap for inference
|
|
90
|
+
- Consider synthetic control methods when the control group is not a natural comparator
|
|
91
|
+
|
|
92
|
+
**Recent Developments**
|
|
93
|
+
- Callaway and Sant'Anna (2021): heterogeneity-robust DID with staggered treatment
|
|
94
|
+
- Sun and Abraham (2021): interaction-weighted estimator for event studies
|
|
95
|
+
- de Chaisemartin and D'Haultfoeuille (2020): decomposition of two-way FE estimator
|
|
96
|
+
- Goodman-Bacon (2021): DID with variation in treatment timing decomposition
|
|
97
|
+
- These methods address bias in standard two-way FE when treatment effects are heterogeneous
|
|
98
|
+
|
|
99
|
+
## Regression Discontinuity
|
|
100
|
+
|
|
101
|
+
**Sharp RD Design**
|
|
102
|
+
- Treatment is a deterministic function of a running variable at a known cutoff
|
|
103
|
+
- Causal effect is identified at the cutoff by comparing outcomes just above and just below
|
|
104
|
+
- Local linear regression is preferred over global polynomial fitting
|
|
105
|
+
- Bandwidth selection should use data-driven methods (Imbens-Kalyanaraman, Calonico-Cattaneo-Titiunik)
|
|
106
|
+
- Always show the RD plot: binned means of the outcome against the running variable
|
|
107
|
+
|
|
108
|
+
**Fuzzy RD Design**
|
|
109
|
+
- Treatment probability jumps at the cutoff but is not deterministic
|
|
110
|
+
- Fuzzy RD is analogous to IV where the instrument is being above the cutoff
|
|
111
|
+
- Estimates a LATE for units whose treatment status is changed by crossing the cutoff
|
|
112
|
+
- Report both the first stage (jump in treatment probability) and the reduced form (jump in outcome)
|
|
113
|
+
- Validity requires that other covariates do not jump at the cutoff (density test, covariate balance)
|
|
114
|
+
|
|
115
|
+
**Practical Guidance**
|
|
116
|
+
- Test for manipulation of the running variable using the McCrary density test
|
|
117
|
+
- Show robustness to alternative bandwidth choices
|
|
118
|
+
- Include covariates to improve precision but the estimate should not change substantially
|
|
119
|
+
- Avoid high-order polynomial specifications that can be misleading
|
|
120
|
+
- Report the effective sample size used in the local estimation
|
|
121
|
+
|
|
122
|
+
## Integration with Research-Claw
|
|
123
|
+
|
|
124
|
+
This skill enhances the Research-Claw econometric analysis workflow:
|
|
125
|
+
|
|
126
|
+
- Guide researchers in selecting the appropriate causal inference method for their question
|
|
127
|
+
- Help implement estimators correctly with proper standard errors and diagnostics
|
|
128
|
+
- Provide code templates for common econometric analyses in R, Stata, and Python
|
|
129
|
+
- Connect with data wrangling skills for cleaning and preparing analysis datasets
|
|
130
|
+
- Support writing skills with correctly formatted regression tables and result descriptions
|
|
131
|
+
|
|
132
|
+
## Best Practices
|
|
133
|
+
|
|
134
|
+
- Start by clearly stating the causal question and the source of identification
|
|
135
|
+
- Draw a directed acyclic graph (DAG) to clarify assumptions about causal relationships
|
|
136
|
+
- Report all relevant diagnostics (first-stage F, pre-trends, balance tests)
|
|
137
|
+
- Show robustness across specifications rather than selecting a single preferred model
|
|
138
|
+
- Distinguish between statistical significance, economic significance, and policy relevance
|
|
139
|
+
- Be transparent about the limitations of your identification strategy
|