Setup overnight development with Git hooks for autonomous TDD sessions
Configures Git hooks and settings for autonomous overnight TDD development sessions.
/plugin marketplace add jeremylongshore/claude-code-plugins-plus/plugin install overnight-dev@claude-code-plugins-plusInstall Git hooks and configure overnight autonomous development in your project.
This command sets up your repository for overnight autonomous development sessions:
First, verify you have:
git status works)The plugin will copy Git hooks to .git/hooks/:
Create .overnight-dev.json in your project root:
{
"testCommand": "npm test",
"lintCommand": "npm run lint",
"requireCoverage": true,
"minCoverage": 80,
"autoFix": true,
"maxAttempts": 50,
"stopOnMorning": true,
"morningHour": 7
}
Configuration Options:
testCommand - Command to run tests (e.g., "pytest", "cargo test")lintCommand - Command to run linterrequireCoverage - Enforce minimum test coverageminCoverage - Minimum coverage percentage (default: 80)autoFix - Automatically fix linting issuesmaxAttempts - Maximum commit attempts before alertingstopOnMorning - Stop work at a specific hourmorningHour - Hour to stop (0-23)Verify the hooks work:
# Should run tests and linting
git commit --allow-empty -m "test: verify overnight dev hooks"
If hooks work correctly, you'll see:
Overnight Dev: Running pre-commit checks...
Running linting...
Linting passed
Running tests...
All tests passed
All checks passed! Proceeding with commit...
{
"testCommand": "npm test -- --coverage",
"lintCommand": "npm run lint",
"autoFix": true
}
{
"testCommand": "pytest --cov=. --cov-report=term-missing",
"lintCommand": "flake8 . && black --check .",
"autoFix": false
}
{
"testCommand": "cargo test",
"lintCommand": "cargo clippy -- -D warnings",
"autoFix": false
}
{
"testCommand": "go test ./...",
"lintCommand": "golangci-lint run",
"autoFix": false
}
Once setup is complete:
Define your goal:
Task: Implement user authentication with JWT
Success: All tests pass, coverage > 85%
Start coding:
Claude works overnight:
# Make hooks executable
chmod +x .git/hooks/pre-commit
chmod +x .git/hooks/commit-msg
Make sure you have at least 1 passing test before starting:
npm test # or pytest, cargo test, etc.
Enable auto-fix in config:
{
"autoFix": true
}
Or fix manually:
npm run lint -- --fix
Track your overnight session:
Ready to start? Just begin coding and let the hooks guide you to fully tested features!