A tiny, public, zero-friction onboarding helper for Claude Code.
Install it once on any machine, and from then on, whenever you start a Claude Code session
in a project that has no CLAUDE.md, Claude offers to pull this starter template and
scaffold the project for you (detect the stack, draft a CLAUDE.md, optionally add a
project doctor).
curl -fsSL https://raw.githubusercontent.com/kthistlewood/claude-starter/main/install.sh | bashNo auth needed (this repo is public). It:
- clones this repo to
~/.claude/starter, - symlinks
commands/setup.md(the/setupcommand) andhooks/onboard-check.shinto~/.claude, - merges a
SessionStarthook into~/.claude/settings.json(backing it up first).
Re-run any time to update (it git pulls). Requires git and python3 (both are standard
on a Claude Code dev machine).
/setup— run it in any project to onboard it: detect the stack, check for missing tools, scaffold aCLAUDE.mdfromtemplate/, optionally add ascripts/doctor.sh, and suggest conventions. Confirms before writing anything.- An un-onboarded-project nudge — a
SessionStarthook that, the first time you open a project with noCLAUDE.md, offers/setup. Silent on onboarded projects and after the first nudge per project. Never blocks a session.
install.sh— the one-line installer above.commands/setup.md— the/setuponboarding command.hooks/onboard-check.sh— the global SessionStart nudge.template/CLAUDE.md— the starterCLAUDE.mdthat/setupfills in.template/doctor.sh— a starter project preflight script.
rm -f ~/.claude/commands/setup.md ~/.claude/hooks/onboard-check.sh
rm -rf ~/.claude/starter ~/.claude/onboard-seen
# then remove the onboard-check.sh entry from ~/.claude/settings.json (a .bak is alongside it)