New Project Scaffold
Create a new research project folder with Scott's standard structure. This skill is invoked at the start of every project.
What Gets Created
[project-name]/
├── CLAUDE.md # Permanent research rules (copied from template)
├── README.md # Project-specific overview (auto-generated)
├── code/
│ ├── R/
│ ├── python/
│ └── stata/
├── data/
│ ├── raw/ # Original source data (never modify)
│ └── clean/ # Cleaned/merged datasets
├── output/
│ ├── tables/
│ └── figures/
├── documents/ # Outside PDFs, papers (use /split-pdf on these)
├── decks/ # Beamer presentations (rhetoric of decks)
├── notes/ # Scratch notes, random ideas, misc
└── progress_logs/ # Session continuity across Claude conversations
Execution
Get the project name from the argument. If none provided, ask.
- Convert spaces to hyphens, lowercase
Determine location — default is current working directory. Confirm if unclear.
Create all directories:
mkdir -p [project-name]/{code/{R,stata,python},data/{raw,clean},output/{figures,tables},documents,decks,notes,progress_logs}
Copy CLAUDE.md from ~/mixtapetools/claude/CLAUDE.md:
- Replace
[Your Name] with Scott
- Update project name in the overview section
Generate README.md with:
- Project title
- Visual directory tree in a fenced code block (monospace)
- Explanation of each folder's purpose
- Note that CLAUDE.md is copied from a permanent template and edited per-project
- Note that README.md is for project-specific documentation
- Note that progress_logs/ maintains continuity across Claude sessions
- Placeholder sections: Overview, Collaborators, Status, Key Files
The README must include this tree block:
```
[project-name]/
├── CLAUDE.md # Research rules & estimation philosophy (permanent)
├── README.md # This file — project-specific notes
├── code/
│ ├── R/ # R scripts
│ ├── python/ # Python scripts
│ └── stata/ # Stata do-files
├── data/
│ ├── raw/ # Original source data (never modify these)
│ └── clean/ # Cleaned and merged datasets
├── output/
│ ├── tables/ # Generated tables (LaTeX, CSV)
│ └── figures/ # Generated figures (PDF, PNG)
├── documents/ # Outside papers and PDFs (split with /split-pdf)
├── decks/ # Beamer presentations (rhetoric of decks philosophy)
├── notes/ # Scratch notes, ideas, miscellaneous
└── progress_logs/ # Session logs for continuity across Claude conversations
```
Create initial progress log at progress_logs/YYYY-MM-DD_setup.md:
- Record the creation date
- List next steps as a checklist
Report success — show structure with ls, remind user to update CLAUDE.md.
1---2name: newproject3description: Scaffold a new research project with standard directory structure, CLAUDE.md template, and documented README. Use this at the start of every new project to ensure consistent organization.4---56# New Project Scaffold78Create a new research project folder with Scott's standard structure. This skill is invoked at the start of every project.910## What Gets Created1112```13[project-name]/14├── CLAUDE.md # Permanent research rules (copied from template)15├── README.md # Project-specific overview (auto-generated)16├── code/17│ ├── R/18│ ├── python/19│ └── stata/20├── data/21│ ├── raw/ # Original source data (never modify)22│ └── clean/ # Cleaned/merged datasets23├── output/24│ ├── tables/25│ └── figures/26├── documents/ # Outside PDFs, papers (use /split-pdf on these)27├── decks/ # Beamer presentations (rhetoric of decks)28├── notes/ # Scratch notes, random ideas, misc29└── progress_logs/ # Session continuity across Claude conversations30```3132## Execution33341. **Get the project name** from the argument. If none provided, ask.35 - Convert spaces to hyphens, lowercase36372. **Determine location** — default is current working directory. Confirm if unclear.38393. **Create all directories:**40 ```bash41 mkdir -p [project-name]/{code/{R,stata,python},data/{raw,clean},output/{figures,tables},documents,decks,notes,progress_logs}42 ```43444. **Copy CLAUDE.md** from `~/mixtapetools/claude/CLAUDE.md`:45 - Replace `[Your Name]` with `Scott`46 - Update project name in the overview section47485. **Generate README.md** with:49 - Project title50 - Visual directory tree in a fenced code block (monospace)51 - Explanation of each folder's purpose52 - Note that CLAUDE.md is copied from a permanent template and edited per-project53 - Note that README.md is for project-specific documentation54 - Note that progress_logs/ maintains continuity across Claude sessions55 - Placeholder sections: Overview, Collaborators, Status, Key Files5657 The README must include this tree block:5859 ````markdown60 ```61 [project-name]/62 ├── CLAUDE.md # Research rules & estimation philosophy (permanent)63 ├── README.md # This file — project-specific notes64 ├── code/65 │ ├── R/ # R scripts66 │ ├── python/ # Python scripts67 │ └── stata/ # Stata do-files68 ├── data/69 │ ├── raw/ # Original source data (never modify these)70 │ └── clean/ # Cleaned and merged datasets71 ├── output/72 │ ├── tables/ # Generated tables (LaTeX, CSV)73 │ └── figures/ # Generated figures (PDF, PNG)74 ├── documents/ # Outside papers and PDFs (split with /split-pdf)75 ├── decks/ # Beamer presentations (rhetoric of decks philosophy)76 ├── notes/ # Scratch notes, ideas, miscellaneous77 └── progress_logs/ # Session logs for continuity across Claude conversations78 ```79 ````80816. **Create initial progress log** at `progress_logs/YYYY-MM-DD_setup.md`:82 - Record the creation date83 - List next steps as a checklist84857. **Report success** — show structure with `ls`, remind user to update CLAUDE.md.