One-time project setup. Installs quality gates (Husky, lint-staged, commitlint), creates GitHub issue/PR templates and labels, and scaffolds CLAUDE.md from the team template. Use when starting a new project or repo.
Run this once when starting a new project from the claude-docs template. It installs quality gates, creates GitHub templates and labels, and scaffolds CLAUDE.md so every Claude Code session starts with full context.
Collect (or infer from existing files):
Open CLAUDE.md and replace every [CUSTOMIZE] section with project specifics:
cat package.json)npm install --save-dev husky lint-staged @commitlint/cli @commitlint/config-conventional
npx husky init
Create .husky/pre-commit:
#!/usr/bin/env sh
npx lint-staged
Create .husky/commit-msg:
#!/usr/bin/env sh
npx --no -- commitlint --edit $1
Add to package.json:
{
"lint-staged": {
"*.{ts,tsx}": ["eslint --fix", "prettier --write"],
"*.{js,json,md}": ["prettier --write"]
},
"commitlint": {
"extends": ["@commitlint/config-conventional"]
}
}
Create .github/PULL_REQUEST_TEMPLATE.md:
## What does this PR do?
Closes #[ISSUE_NUMBER]
## Changes
-
## Quality gates
- [ ] `/verify` passes (lint + typecheck + tests)
- [ ] `/security-review` run — or N/A (reason: _______________)
- [ ] `/performance-review` run — or N/A (reason: _______________)
- [ ] `/human-test` completed
- [ ] All acceptance criteria met
## Notes
Create .github/ISSUE_TEMPLATE/feature.md:
---