Research init
Scaffold a new research project with full reproducibility infrastructure in R and/or Python. Creates directory structure, pipeline stubs (targets/Snakemake), environment lockfiles (renv/uv), documentation templates (codebook, decision log, pre-registration, Cornell README), Quarto manuscript template, and proper .gitignore. Can wrap existing data in gold-standard structure. Use when the user says "new project," "scaffold," "start a study," "set up a project," "I have data and need to organize it," or when /research-intake recommends scaffolding.From its SKILL.md
npx -y skills add brycewang-stanford/Auto-Empirical-Research-Skills --skill research-initAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
SKILL.md
3.3 KB, 643 tokens by cl100k_base, as published. Nobody here has run it
/research-init — Project Scaffolding
You create the structure that makes everything else possible. A well-scaffolded project is halfway to reproducibility before a single line of analysis is written.
How to scaffold a project
Step 1 — Gather requirements
Ask the researcher (or infer from context):
- Project name — will become the directory name
- Language — R, Python, or both? (Default: both)
- Existing data? — If yes, where? What format? This changes the workflow.
- Research question — one sentence, for the README and pre-registration skeleton
- Target journal — if known, for formatting defaults
If the researcher provides a project name and says "scaffold it," don't over-ask. Use sensible defaults and get them started.
Step 2 — Create directory structure
Create the full structure documented in references/criteria.md. Use the templates in references/templates/ for each file.
Step 3 — Initialize environments
For R:
- Create
_targets.Rfrom template - Initialize
renv(if R is available on the system) - Create
R/00_setup.Rfrom template
For Python:
- Create
Snakefilefrom template - Create
pyproject.tomlwith research stack dependencies - Create
python/00_setup.pyfrom template
Step 4 — Handle existing data
If the researcher has existing data:
- Copy (not move) files to
data/raw/ - Set
data/raw/as conceptually read-only (the raw-data-guard hook enforces this) - Note the original file locations in the README provenance section
- Suggest running
/data-validatenext
Step 5 — Initialize git
If not already in a git repo:
- Create
.gitignorefrom template git init- Create initial commit with structure (but NOT data files — those go in .gitignore or are tracked separately)
Step 6 — Print summary and next steps
Show the researcher what was created and suggest next steps per _shared/next-steps.md.
Principles
Read references/principles.md for the foundational principles behind every scaffolding decision.
Voice
Efficient and organized. You're setting up a workspace, not giving a lecture. Create the structure, explain what each piece is for briefly, and get the researcher moving. Show the directory tree at the end so they can see what was built.
Argument handling
research-init my-study→ creates./my-study/research-init my-study --lang r→ R onlyresearch-init my-study --existing-data ~/data/survey.csv→ copies data todata/raw/research-init(no args) → asks for project name
What ships with it: 13 files
28.6 KB alongside SKILL.md, 1 of them executable
references/
- criteria.md4.2 KB
- principles.md2.3 KB
- templates/citation.cff441 B
- templates/decision.md651 B
- templates/gitignore1.8 KB
- templates/manuscript.qmd1.2 KB
- templates/pipeline-status.md1.0 KB
- templates/pre-registration.md2.0 KB
- templates/readme.md1.9 KB
- templates/setup.pyruns3.0 KB
- templates/setup.R3.2 KB
- templates/snakefile3.4 KB
- templates/targets.R3.3 KB
Gives 1 of the 12 instructions most project setup skills give in 643 tokens
Counted across 1,553 of the 3,091 authors here whose files we hold, read 2026-09-06
- Write the configuration filein 36 of 1553
- Create the directory structurehere, and in 35 of 1553, across 33 files
- Verify the setupin 31 of 1553, across 28 files
- Run the setup scriptin 30 of 1553, across 29 files
- Pre-determine the required sample sizein 29 of 1553, across 12 files
- Check if the configuration already existsin 29 of 1553
- Document every testin 26 of 1553, across 10 files
- Start with a hypothesisin 26 of 1553, across 11 files
- Ask one question at a timein 22 of 1553
- Test a single variable per testin 21 of 1553, across 9 files
- Read product marketing context before asking questionsin 19 of 1553, across 8 files
- Do not peek and stop earlyin 18 of 1553, across 7 files
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.