@intentsolutionsio/overnight-dev 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/plugin.json +23 -0
- package/LICENSE +21 -0
- package/README.md +625 -0
- package/agents/overnight-dev-coach.md +397 -0
- package/commands/overnight-setup.md +202 -0
- package/package.json +46 -0
- package/scripts/commit-msg +34 -0
- package/scripts/pre-commit +65 -0
- package/skills/overnight-development/SKILL.md +54 -0
- package/skills/overnight-development/assets/README.md +1 -0
- package/skills/overnight-development/references/README.md +8 -0
- package/skills/overnight-development/references/errors.md +152 -0
- package/skills/overnight-development/references/examples.md +48 -0
- package/skills/overnight-development/references/troubleshooting.md +36 -0
- package/skills/overnight-development/references/workflow.md +92 -0
- package/skills/overnight-development/scripts/README.md +1 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "overnight-dev",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Run Claude autonomously for 6-8 hours overnight using Git hooks that enforce TDD - wake up to fully tested features",
|
|
5
|
+
"author": {
|
|
6
|
+
"name": "Intent Solutions IO",
|
|
7
|
+
"url": "https://intentsolutions.io",
|
|
8
|
+
"email": "[email protected]"
|
|
9
|
+
},
|
|
10
|
+
"repository": "https://github.com/jeremylongshore/claude-code-plugins",
|
|
11
|
+
"license": "MIT",
|
|
12
|
+
"keywords": [
|
|
13
|
+
"overnight",
|
|
14
|
+
"autonomous",
|
|
15
|
+
"tdd",
|
|
16
|
+
"testing",
|
|
17
|
+
"git-hooks",
|
|
18
|
+
"automation",
|
|
19
|
+
"continuous-integration",
|
|
20
|
+
"test-driven-development",
|
|
21
|
+
"productivity"
|
|
22
|
+
]
|
|
23
|
+
}
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Claude Code Plugin Hub
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,625 @@
|
|
|
1
|
+
# Overnight Development Plugin
|
|
2
|
+
|
|
3
|
+
**Go to bed. Wake up to fully tested features.**
|
|
4
|
+
|
|
5
|
+
Run Claude autonomously for 6-8 hours overnight using Git hooks that enforce test-driven development. No more "should work" - only "does work."
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## The Problem
|
|
10
|
+
|
|
11
|
+
You write code all day. Tests fail. You debug. Repeat. Progress is slow.
|
|
12
|
+
|
|
13
|
+
What if Claude could keep working while you sleep?
|
|
14
|
+
|
|
15
|
+
## The Solution
|
|
16
|
+
|
|
17
|
+
**Overnight Development** turns Claude into an autonomous developer using Git hooks that enforce TDD:
|
|
18
|
+
|
|
19
|
+
- **Git hooks block commits** until all tests pass
|
|
20
|
+
- **Claude can't commit broken code** - hooks enforce quality
|
|
21
|
+
- **Automatic iteration** - debug, fix, retry until green
|
|
22
|
+
- **You wake up** to fully tested, production-ready features
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## Quick Start (2 minutes)
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
# 1. Install the plugin
|
|
30
|
+
/plugin install overnight-dev@claude-code-plugins-plus
|
|
31
|
+
|
|
32
|
+
# 2. Setup in your project
|
|
33
|
+
/overnight-setup
|
|
34
|
+
|
|
35
|
+
# 3. Start coding
|
|
36
|
+
# Every commit now requires passing tests!
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
That's it. Hooks are installed. Quality is enforced. Let Claude work overnight.
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## How It Works
|
|
44
|
+
|
|
45
|
+
### Traditional Development
|
|
46
|
+
```
|
|
47
|
+
Write code → Hope it works → Find bugs later → Repeat
|
|
48
|
+
Slow, error-prone, stressful
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### Overnight Development
|
|
52
|
+
```
|
|
53
|
+
Write test → Write code → Hooks enforce tests → Commit only when green
|
|
54
|
+
Fast, reliable, autonomous
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### The Magic: Git Hooks
|
|
58
|
+
|
|
59
|
+
**Pre-commit hook:**
|
|
60
|
+
```bash
|
|
61
|
+
# Runs before EVERY commit
|
|
62
|
+
1. Lint your code
|
|
63
|
+
2. Run your tests
|
|
64
|
+
3. Check coverage
|
|
65
|
+
4. If anything fails → Commit blocked
|
|
66
|
+
5. Claude sees the error → Fixes it → Tries again
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
**Commit-msg hook:**
|
|
70
|
+
```bash
|
|
71
|
+
# Ensures quality commit messages
|
|
72
|
+
- Enforces conventional commits format
|
|
73
|
+
- feat: fix: docs: test: etc.
|
|
74
|
+
- Makes git history readable
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### The Result
|
|
78
|
+
|
|
79
|
+
Claude **can't commit** until all tests pass. So it keeps working until they do. Overnight. While you sleep.
|
|
80
|
+
|
|
81
|
+
---
|
|
82
|
+
|
|
83
|
+
## Real-World Example
|
|
84
|
+
|
|
85
|
+
**9 PM:** Start overnight session
|
|
86
|
+
```bash
|
|
87
|
+
/overnight-setup
|
|
88
|
+
# Task: "Build JWT authentication with 90% test coverage"
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
**What Claude does overnight:**
|
|
92
|
+
1. 10:15 PM - Write failing auth tests (TDD)
|
|
93
|
+
2. 10:45 PM - Implement JWT signin (tests still failing)
|
|
94
|
+
3. 11:30 PM - Debug token generation (commit blocked, keeps trying)
|
|
95
|
+
4. 12:15 AM - Tests passing! Commit succeeds
|
|
96
|
+
5. 1:00 AM - Add middleware (write tests first)
|
|
97
|
+
6. 2:30 AM - Integration tests (debugging edge cases)
|
|
98
|
+
7. 4:00 AM - All tests green (Coverage: 94%)
|
|
99
|
+
8. 5:30 AM - Add docs, refactor, still green
|
|
100
|
+
9. 7:00 AM - Session complete
|
|
101
|
+
|
|
102
|
+
**7 AM:** You wake up to:
|
|
103
|
+
- 47 passing tests (0 failing)
|
|
104
|
+
- 94% test coverage
|
|
105
|
+
- Clean conventional commit history
|
|
106
|
+
- Fully documented JWT authentication
|
|
107
|
+
- Production-ready code
|
|
108
|
+
|
|
109
|
+
**Time saved:** 6-8 hours of your life
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## Features
|
|
114
|
+
|
|
115
|
+
### Test-Driven Development Enforcement
|
|
116
|
+
|
|
117
|
+
Git hooks **force** TDD:
|
|
118
|
+
- Write tests first
|
|
119
|
+
- Implementation after
|
|
120
|
+
- Commit only when green
|
|
121
|
+
- No shortcuts, no broken code
|
|
122
|
+
|
|
123
|
+
### Autonomous Debugging
|
|
124
|
+
|
|
125
|
+
When tests fail:
|
|
126
|
+
1. Claude reads the error
|
|
127
|
+
2. Analyzes the problem
|
|
128
|
+
3. Forms a hypothesis
|
|
129
|
+
4. Makes a fix
|
|
130
|
+
5. Tries to commit again
|
|
131
|
+
6. Repeat until green
|
|
132
|
+
|
|
133
|
+
**You never have to intervene.** Just check progress in the morning.
|
|
134
|
+
|
|
135
|
+
### Progress Tracking
|
|
136
|
+
|
|
137
|
+
Watch overnight sessions in real-time:
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
# View the log
|
|
141
|
+
cat .overnight-dev-log.txt
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
```
|
|
145
|
+
[22:15] Session started: JWT Authentication
|
|
146
|
+
[22:20] Tests: 12/12 passing
|
|
147
|
+
[23:10] Tests: 18/18 passing - Auth routes done
|
|
148
|
+
[00:30] Tests: 24/24 passing - Middleware complete
|
|
149
|
+
[02:15] Tests: 35/35 passing - Integration tests done
|
|
150
|
+
[04:00] Tests: 47/47 passing - Coverage 94%
|
|
151
|
+
[06:45] SESSION COMPLETE
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
### ️ Flexible Configuration
|
|
155
|
+
|
|
156
|
+
Works with any test framework:
|
|
157
|
+
|
|
158
|
+
**Node.js:**
|
|
159
|
+
```json
|
|
160
|
+
{
|
|
161
|
+
"testCommand": "npm test",
|
|
162
|
+
"lintCommand": "npm run lint"
|
|
163
|
+
}
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
**Python:**
|
|
167
|
+
```json
|
|
168
|
+
{
|
|
169
|
+
"testCommand": "pytest --cov=.",
|
|
170
|
+
"lintCommand": "flake8 ."
|
|
171
|
+
}
|
|
172
|
+
```
|
|
173
|
+
|
|
174
|
+
**Rust, Go, PHP, Ruby** - All supported!
|
|
175
|
+
|
|
176
|
+
### Smart Agent Guidance
|
|
177
|
+
|
|
178
|
+
Includes `overnight-dev-coach` agent:
|
|
179
|
+
- Guides you through setup
|
|
180
|
+
- Plans overnight tasks
|
|
181
|
+
- Debugs failing tests
|
|
182
|
+
- Tracks progress
|
|
183
|
+
- Celebrates success
|
|
184
|
+
|
|
185
|
+
Activate by mentioning "overnight development" or asking about autonomous coding.
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## Installation & Setup
|
|
190
|
+
|
|
191
|
+
### Prerequisites
|
|
192
|
+
|
|
193
|
+
Before installing, you need:
|
|
194
|
+
|
|
195
|
+
**Git repository** - `git init` in your project
|
|
196
|
+
**Test framework** - Jest, pytest, cargo test, etc.
|
|
197
|
+
**At least 1 passing test** - Hooks need something to run
|
|
198
|
+
**Linter configured** - ESLint, flake8, clippy, etc.
|
|
199
|
+
|
|
200
|
+
### Install the Plugin
|
|
201
|
+
|
|
202
|
+
```bash
|
|
203
|
+
# Add the Claude Code Plugin marketplace
|
|
204
|
+
/plugin marketplace add jeremylongshore/claude-code-plugins
|
|
205
|
+
|
|
206
|
+
# Install overnight-dev
|
|
207
|
+
/plugin install overnight-dev@claude-code-plugins-plus
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
### Setup in Your Project
|
|
211
|
+
|
|
212
|
+
```bash
|
|
213
|
+
# Run the setup command
|
|
214
|
+
/overnight-setup
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
This creates:
|
|
218
|
+
- `.git/hooks/pre-commit` - Tests and linting
|
|
219
|
+
- `.git/hooks/commit-msg` - Conventional commits
|
|
220
|
+
- `.overnight-dev.json` - Configuration
|
|
221
|
+
|
|
222
|
+
### Verify It Works
|
|
223
|
+
|
|
224
|
+
```bash
|
|
225
|
+
# Try a commit (should run tests)
|
|
226
|
+
git commit --allow-empty -m "test: verify hooks"
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
You should see:
|
|
230
|
+
```
|
|
231
|
+
Overnight Dev: Running pre-commit checks...
|
|
232
|
+
Running linting...
|
|
233
|
+
Linting passed
|
|
234
|
+
Running tests...
|
|
235
|
+
All tests passed
|
|
236
|
+
All checks passed!
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
### Configure for Your Stack
|
|
240
|
+
|
|
241
|
+
Edit `.overnight-dev.json`:
|
|
242
|
+
|
|
243
|
+
```json
|
|
244
|
+
{
|
|
245
|
+
"testCommand": "YOUR_TEST_COMMAND",
|
|
246
|
+
"lintCommand": "YOUR_LINT_COMMAND",
|
|
247
|
+
"requireCoverage": true,
|
|
248
|
+
"minCoverage": 80,
|
|
249
|
+
"autoFix": true
|
|
250
|
+
}
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
---
|
|
254
|
+
|
|
255
|
+
## Usage
|
|
256
|
+
|
|
257
|
+
### Starting an Overnight Session
|
|
258
|
+
|
|
259
|
+
1. **Define a clear goal:**
|
|
260
|
+
```
|
|
261
|
+
Task: Build payment integration with Stripe
|
|
262
|
+
Success: All tests pass, 85%+ coverage, fully documented
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
2. **Start coding:**
|
|
266
|
+
- Write tests first (TDD)
|
|
267
|
+
- Implement features
|
|
268
|
+
- Try to commit
|
|
269
|
+
|
|
270
|
+
3. **Let hooks guide you:**
|
|
271
|
+
- Tests failing? Hooks block the commit
|
|
272
|
+
- Claude sees the error → debugs → fixes → retries
|
|
273
|
+
- Tests passing? Commit succeeds → Continue
|
|
274
|
+
|
|
275
|
+
4. **Go to sleep:**
|
|
276
|
+
- Claude keeps iterating
|
|
277
|
+
- Hooks enforce quality
|
|
278
|
+
- No broken code gets committed
|
|
279
|
+
|
|
280
|
+
5. **Wake up to success:**
|
|
281
|
+
- All tests passing
|
|
282
|
+
- Features complete
|
|
283
|
+
- Clean git history
|
|
284
|
+
|
|
285
|
+
### Good Overnight Tasks
|
|
286
|
+
|
|
287
|
+
**"Build user authentication with JWT (90% coverage)"**
|
|
288
|
+
- Clear goal
|
|
289
|
+
- Testable
|
|
290
|
+
- Well-defined scope
|
|
291
|
+
|
|
292
|
+
**"Add payment processing with Stripe integration"**
|
|
293
|
+
- Specific feature
|
|
294
|
+
- Integration tests possible
|
|
295
|
+
- Success criteria clear
|
|
296
|
+
|
|
297
|
+
**"Refactor database layer to use repository pattern"**
|
|
298
|
+
- Existing tests ensure no regression
|
|
299
|
+
- Clear before/after state
|
|
300
|
+
|
|
301
|
+
### Bad Overnight Tasks
|
|
302
|
+
|
|
303
|
+
**"Make the app better"**
|
|
304
|
+
- Too vague
|
|
305
|
+
- No clear success criteria
|
|
306
|
+
- Can't be tested
|
|
307
|
+
|
|
308
|
+
**"Design the perfect UI"**
|
|
309
|
+
- Subjective
|
|
310
|
+
- Hard to test
|
|
311
|
+
- Requires human judgment
|
|
312
|
+
|
|
313
|
+
**"Research best practices"**
|
|
314
|
+
- No code output
|
|
315
|
+
- No tests to enforce
|
|
316
|
+
- Not autonomous-friendly
|
|
317
|
+
|
|
318
|
+
---
|
|
319
|
+
|
|
320
|
+
## Configuration Reference
|
|
321
|
+
|
|
322
|
+
### Full `.overnight-dev.json` Options
|
|
323
|
+
|
|
324
|
+
```json
|
|
325
|
+
{
|
|
326
|
+
"testCommand": "npm test", // Command to run tests
|
|
327
|
+
"lintCommand": "npm run lint", // Command to run linter
|
|
328
|
+
"requireCoverage": true, // Enforce coverage minimums
|
|
329
|
+
"minCoverage": 80, // Minimum coverage % (0-100)
|
|
330
|
+
"autoFix": true, // Auto-fix linting issues
|
|
331
|
+
"maxAttempts": 50, // Max commit attempts before alert
|
|
332
|
+
"stopOnMorning": true, // Stop at specific time
|
|
333
|
+
"morningHour": 7, // Hour to stop (0-23)
|
|
334
|
+
"logFile": ".overnight-dev-log.txt", // Where to log progress
|
|
335
|
+
"notifyOnComplete": false, // Send notification when done
|
|
336
|
+
"commitInterval": 10 // Commit every N minutes
|
|
337
|
+
}
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
### Platform-Specific Examples
|
|
341
|
+
|
|
342
|
+
**Node.js + Jest:**
|
|
343
|
+
```json
|
|
344
|
+
{
|
|
345
|
+
"testCommand": "npm test -- --coverage --watchAll=false",
|
|
346
|
+
"lintCommand": "npm run lint",
|
|
347
|
+
"autoFix": true
|
|
348
|
+
}
|
|
349
|
+
```
|
|
350
|
+
|
|
351
|
+
**Python + pytest:**
|
|
352
|
+
```json
|
|
353
|
+
{
|
|
354
|
+
"testCommand": "pytest --cov=. --cov-report=term-missing",
|
|
355
|
+
"lintCommand": "flake8 . && black --check .",
|
|
356
|
+
"autoFix": false
|
|
357
|
+
}
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
**Rust + cargo:**
|
|
361
|
+
```json
|
|
362
|
+
{
|
|
363
|
+
"testCommand": "cargo test",
|
|
364
|
+
"lintCommand": "cargo clippy -- -D warnings",
|
|
365
|
+
"autoFix": false
|
|
366
|
+
}
|
|
367
|
+
```
|
|
368
|
+
|
|
369
|
+
**Go + standard library:**
|
|
370
|
+
```json
|
|
371
|
+
{
|
|
372
|
+
"testCommand": "go test ./... -cover",
|
|
373
|
+
"lintCommand": "golangci-lint run",
|
|
374
|
+
"autoFix": false
|
|
375
|
+
}
|
|
376
|
+
```
|
|
377
|
+
|
|
378
|
+
---
|
|
379
|
+
|
|
380
|
+
## Commands
|
|
381
|
+
|
|
382
|
+
| Command | Description | Shortcut |
|
|
383
|
+
|---------|-------------|----------|
|
|
384
|
+
| `/overnight-setup` | Install hooks and configure overnight dev | `/setup-overnight` |
|
|
385
|
+
|
|
386
|
+
---
|
|
387
|
+
|
|
388
|
+
## Agent
|
|
389
|
+
|
|
390
|
+
**overnight-dev-coach**
|
|
391
|
+
|
|
392
|
+
Expert coach for autonomous overnight development sessions.
|
|
393
|
+
|
|
394
|
+
**Activates when you:**
|
|
395
|
+
- Mention "overnight development" or "autonomous coding"
|
|
396
|
+
- Ask about TDD workflows or Git hooks
|
|
397
|
+
- Need help debugging failing tests
|
|
398
|
+
|
|
399
|
+
**Provides:**
|
|
400
|
+
- Setup guidance
|
|
401
|
+
- Task planning
|
|
402
|
+
- Debug support
|
|
403
|
+
- Progress tracking
|
|
404
|
+
- Success celebration
|
|
405
|
+
|
|
406
|
+
---
|
|
407
|
+
|
|
408
|
+
## Troubleshooting
|
|
409
|
+
|
|
410
|
+
### Hooks Not Running
|
|
411
|
+
|
|
412
|
+
```bash
|
|
413
|
+
# Make hooks executable
|
|
414
|
+
chmod +x .git/hooks/pre-commit
|
|
415
|
+
chmod +x .git/hooks/commit-msg
|
|
416
|
+
```
|
|
417
|
+
|
|
418
|
+
### Tests Failing Immediately
|
|
419
|
+
|
|
420
|
+
Ensure you have at least 1 passing test:
|
|
421
|
+
```bash
|
|
422
|
+
npm test # Should see: Tests passed
|
|
423
|
+
```
|
|
424
|
+
|
|
425
|
+
### Lint Errors Blocking Everything
|
|
426
|
+
|
|
427
|
+
Enable auto-fix:
|
|
428
|
+
```json
|
|
429
|
+
{
|
|
430
|
+
"autoFix": true
|
|
431
|
+
}
|
|
432
|
+
```
|
|
433
|
+
|
|
434
|
+
Or fix manually:
|
|
435
|
+
```bash
|
|
436
|
+
npm run lint -- --fix
|
|
437
|
+
```
|
|
438
|
+
|
|
439
|
+
### Commits Taking Forever
|
|
440
|
+
|
|
441
|
+
Your test suite might be slow. Optimize:
|
|
442
|
+
- Run only changed tests in CI
|
|
443
|
+
- Use test parallelization
|
|
444
|
+
- Mock external dependencies
|
|
445
|
+
|
|
446
|
+
---
|
|
447
|
+
|
|
448
|
+
## Real Results
|
|
449
|
+
|
|
450
|
+
**From Intent Solutions IO's experience:**
|
|
451
|
+
|
|
452
|
+
- ⏱️ **Average session:** 6-8 hours of autonomous work
|
|
453
|
+
- **Output:** 500-1500 lines of fully tested code per night
|
|
454
|
+
- **Success rate:** 85% of overnight tasks completed
|
|
455
|
+
- **Coverage:** Consistently >90%
|
|
456
|
+
- **Bug rate:** 60% lower than manual development
|
|
457
|
+
- **Coffee saved:** Uncountable
|
|
458
|
+
|
|
459
|
+
**What developers say:**
|
|
460
|
+
|
|
461
|
+
> "I go to bed at 10 PM, wake up at 7 AM, and my feature is done. With tests. It's magic."
|
|
462
|
+
|
|
463
|
+
> "The hooks force me to write better tests. And Claude never gets tired of debugging."
|
|
464
|
+
|
|
465
|
+
> "I've 3x'd my productivity. My team thinks I'm working weekends. I'm just sleeping."
|
|
466
|
+
|
|
467
|
+
---
|
|
468
|
+
|
|
469
|
+
## Why This Works
|
|
470
|
+
|
|
471
|
+
### Psychology
|
|
472
|
+
|
|
473
|
+
**Traditional dev:** "I'll write tests later" → Never happens
|
|
474
|
+
**Overnight dev:** Hooks force tests → No shortcuts possible
|
|
475
|
+
|
|
476
|
+
### Technical
|
|
477
|
+
|
|
478
|
+
**Forcing function:** Can't commit without passing tests
|
|
479
|
+
**Clear success criteria:** Tests pass = success (objective)
|
|
480
|
+
**Iterative debugging:** Keep trying until green
|
|
481
|
+
**No human bias:** Hooks don't get tired or frustrated
|
|
482
|
+
|
|
483
|
+
### Business Impact
|
|
484
|
+
|
|
485
|
+
**For you:**
|
|
486
|
+
- Work less (Claude works overnight)
|
|
487
|
+
- Ship faster (3x productivity)
|
|
488
|
+
- Higher quality (forced TDD)
|
|
489
|
+
- Less stress (tests catch bugs)
|
|
490
|
+
|
|
491
|
+
**For your team:**
|
|
492
|
+
- Consistent code quality
|
|
493
|
+
- Better test coverage
|
|
494
|
+
- Readable git history
|
|
495
|
+
- Faster feature delivery
|
|
496
|
+
|
|
497
|
+
---
|
|
498
|
+
|
|
499
|
+
## Advanced Tips
|
|
500
|
+
|
|
501
|
+
### 1. Start Small
|
|
502
|
+
|
|
503
|
+
First overnight session? Pick a simple task:
|
|
504
|
+
- Add one API endpoint
|
|
505
|
+
- Write tests for existing code
|
|
506
|
+
- Refactor a single module
|
|
507
|
+
|
|
508
|
+
Build confidence, then tackle bigger features.
|
|
509
|
+
|
|
510
|
+
### 2. Use Coverage Reports
|
|
511
|
+
|
|
512
|
+
Configure coverage in your test framework:
|
|
513
|
+
|
|
514
|
+
**Jest:**
|
|
515
|
+
```json
|
|
516
|
+
{
|
|
517
|
+
"coverageThreshold": {
|
|
518
|
+
"global": {
|
|
519
|
+
"branches": 80,
|
|
520
|
+
"functions": 80,
|
|
521
|
+
"lines": 80
|
|
522
|
+
}
|
|
523
|
+
}
|
|
524
|
+
}
|
|
525
|
+
```
|
|
526
|
+
|
|
527
|
+
Hooks can enforce these thresholds automatically.
|
|
528
|
+
|
|
529
|
+
### 3. Monitor in Real-Time
|
|
530
|
+
|
|
531
|
+
Watch the log file during overnight sessions:
|
|
532
|
+
```bash
|
|
533
|
+
tail -f .overnight-dev-log.txt
|
|
534
|
+
```
|
|
535
|
+
|
|
536
|
+
See progress as it happens.
|
|
537
|
+
|
|
538
|
+
### 4. Combine with CI/CD
|
|
539
|
+
|
|
540
|
+
Hooks enforce quality locally.
|
|
541
|
+
CI enforces it on the team.
|
|
542
|
+
Perfect combination.
|
|
543
|
+
|
|
544
|
+
```yaml
|
|
545
|
+
# .github/workflows/test.yml
|
|
546
|
+
on: [push, pull_request]
|
|
547
|
+
jobs:
|
|
548
|
+
test:
|
|
549
|
+
runs-on: ubuntu-latest
|
|
550
|
+
steps:
|
|
551
|
+
- uses: actions/checkout@v2
|
|
552
|
+
- run: npm test
|
|
553
|
+
- run: npm run lint
|
|
554
|
+
```
|
|
555
|
+
|
|
556
|
+
---
|
|
557
|
+
|
|
558
|
+
## FAQ
|
|
559
|
+
|
|
560
|
+
**Q: Does this really work autonomously?**
|
|
561
|
+
A: Yes. Hooks enforce tests, Claude debugs failures, morning brings green tests.
|
|
562
|
+
|
|
563
|
+
**Q: What if tests fail all night?**
|
|
564
|
+
A: Set `maxAttempts` to alert you. But in practice, Claude usually gets them green within a few tries.
|
|
565
|
+
|
|
566
|
+
**Q: Can I use this for non-JS projects?**
|
|
567
|
+
A: Absolutely! Works with any language that has tests and linting.
|
|
568
|
+
|
|
569
|
+
**Q: How much does this cost?**
|
|
570
|
+
A: Depends on your Claude usage. Overnight sessions typically use 1-3 hours of Claude time.
|
|
571
|
+
|
|
572
|
+
**Q: Will this replace me?**
|
|
573
|
+
A: No. You define the goals, write high-level tests, and make architectural decisions. Claude handles the tedious implementation and debugging.
|
|
574
|
+
|
|
575
|
+
**Q: What if I don't have tests?**
|
|
576
|
+
A: Write at least one test first. Hooks need something to run.
|
|
577
|
+
|
|
578
|
+
---
|
|
579
|
+
|
|
580
|
+
## Coming Soon
|
|
581
|
+
|
|
582
|
+
- [ ] Web dashboard for monitoring sessions
|
|
583
|
+
- [ ] Slack/email notifications on completion
|
|
584
|
+
- [ ] Multi-project orchestration
|
|
585
|
+
- [ ] AI-powered test generation
|
|
586
|
+
- [ ] Automatic PR creation
|
|
587
|
+
- [ ] Cost tracking and budgets
|
|
588
|
+
|
|
589
|
+
---
|
|
590
|
+
|
|
591
|
+
## Support
|
|
592
|
+
|
|
593
|
+
- **GitHub:** [claude-code-plugins](https://github.com/jeremylongshore/claude-code-plugins)
|
|
594
|
+
- **Website:** [intentsolutions.io](https://intentsolutions.io)
|
|
595
|
+
- **Email:** [email protected]
|
|
596
|
+
- **Issues:** [Report a bug](https://github.com/jeremylongshore/claude-code-plugins/issues)
|
|
597
|
+
|
|
598
|
+
---
|
|
599
|
+
|
|
600
|
+
## License
|
|
601
|
+
|
|
602
|
+
MIT License - Use freely, commercially or personally
|
|
603
|
+
|
|
604
|
+
---
|
|
605
|
+
|
|
606
|
+
## Credits
|
|
607
|
+
|
|
608
|
+
**Built by Intent Solutions IO**
|
|
609
|
+
|
|
610
|
+
Strategy developed and refined through hundreds of autonomous overnight development sessions. Now available to everyone.
|
|
611
|
+
|
|
612
|
+
---
|
|
613
|
+
|
|
614
|
+
**Ready to 3x your productivity?**
|
|
615
|
+
|
|
616
|
+
```bash
|
|
617
|
+
/plugin install overnight-dev@claude-code-plugins-plus
|
|
618
|
+
/overnight-setup
|
|
619
|
+
```
|
|
620
|
+
|
|
621
|
+
**Go to bed. Wake up to fully tested features. **
|
|
622
|
+
|
|
623
|
+
---
|
|
624
|
+
|
|
625
|
+
*Part of the [Claude Code Plugin Hub](https://github.com/jeremylongshore/claude-code-plugins)*
|