@boshu2/vibe-check 1.5.0 → 1.6.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/.agents/bundles/insight-mining-dashboard-research-2025-11-30.md +400 -0
- package/.agents/bundles/storage-enhancement-research-2025-11-30.md +292 -0
- package/.agents/bundles/timeline-feature-research-complete-2025-11-30.md +301 -0
- package/.agents/plans/insight-dashboard-plan-2025-11-30.md +1130 -0
- package/.agents/plans/json-storage-enhancement-plan.md +717 -0
- package/.agents/plans/storage-hardening-and-cache-plan.md +592 -0
- package/.agents/plans/test-coverage-gaps-plan.md +1117 -0
- package/.agents/plans/timeline-feature-plan.md +193 -0
- package/.agents/plans/vibe_timeline_research_findings.md +553 -0
- package/.claude/settings.local.json +1 -0
- package/.vibe-check/.gitignore +6 -0
- package/CHANGELOG.md +46 -0
- package/CLAUDE.md +24 -0
- package/CONTRIBUTING.md +227 -0
- package/README.md +200 -143
- package/claude-progress.json +191 -9
- package/claude-progress.txt +257 -0
- package/dashboard/app.js +75 -2
- package/dashboard/dashboard-data.json +653 -0
- package/dashboard/index.html +13 -0
- package/dashboard/styles.css +61 -0
- package/dist/analysis/cross-session-analysis.d.ts +68 -0
- package/dist/analysis/cross-session-analysis.d.ts.map +1 -0
- package/dist/analysis/cross-session-analysis.js +174 -0
- package/dist/analysis/cross-session-analysis.js.map +1 -0
- package/dist/analysis/index.d.ts +2 -0
- package/dist/analysis/index.d.ts.map +1 -0
- package/dist/analysis/index.js +12 -0
- package/dist/analysis/index.js.map +1 -0
- package/dist/cli.js +10 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/analyze.d.ts +2 -0
- package/dist/commands/analyze.d.ts.map +1 -1
- package/dist/commands/analyze.js +105 -2
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/cache.d.ts +6 -0
- package/dist/commands/cache.d.ts.map +1 -0
- package/dist/commands/cache.js +168 -0
- package/dist/commands/cache.js.map +1 -0
- package/dist/commands/dashboard.d.ts +8 -0
- package/dist/commands/dashboard.d.ts.map +1 -0
- package/dist/commands/dashboard.js +109 -0
- package/dist/commands/dashboard.js.map +1 -0
- package/dist/commands/index.d.ts +3 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +8 -1
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/timeline.d.ts +14 -0
- package/dist/commands/timeline.d.ts.map +1 -0
- package/dist/commands/timeline.js +462 -0
- package/dist/commands/timeline.js.map +1 -0
- package/dist/git.d.ts +24 -0
- package/dist/git.d.ts.map +1 -1
- package/dist/git.js +94 -0
- package/dist/git.js.map +1 -1
- package/dist/insights/generators.d.ts +44 -0
- package/dist/insights/generators.d.ts.map +1 -0
- package/dist/insights/generators.js +289 -0
- package/dist/insights/generators.js.map +1 -0
- package/dist/insights/index.d.ts +16 -0
- package/dist/insights/index.d.ts.map +1 -0
- package/dist/insights/index.js +171 -0
- package/dist/insights/index.js.map +1 -0
- package/dist/insights/types.d.ts +93 -0
- package/dist/insights/types.d.ts.map +1 -0
- package/dist/insights/types.js +6 -0
- package/dist/insights/types.js.map +1 -0
- package/dist/output/timeline-html.d.ts +6 -0
- package/dist/output/timeline-html.d.ts.map +1 -0
- package/dist/output/timeline-html.js +389 -0
- package/dist/output/timeline-html.js.map +1 -0
- package/dist/output/timeline-markdown.d.ts +6 -0
- package/dist/output/timeline-markdown.d.ts.map +1 -0
- package/dist/output/timeline-markdown.js +167 -0
- package/dist/output/timeline-markdown.js.map +1 -0
- package/dist/output/timeline.d.ts +9 -0
- package/dist/output/timeline.d.ts.map +1 -0
- package/dist/output/timeline.js +318 -0
- package/dist/output/timeline.js.map +1 -0
- package/dist/patterns/detour.d.ts +32 -0
- package/dist/patterns/detour.d.ts.map +1 -0
- package/dist/patterns/detour.js +137 -0
- package/dist/patterns/detour.js.map +1 -0
- package/dist/patterns/flow-state.d.ts +16 -0
- package/dist/patterns/flow-state.d.ts.map +1 -0
- package/dist/patterns/flow-state.js +40 -0
- package/dist/patterns/flow-state.js.map +1 -0
- package/dist/patterns/index.d.ts +8 -0
- package/dist/patterns/index.d.ts.map +1 -0
- package/dist/patterns/index.js +22 -0
- package/dist/patterns/index.js.map +1 -0
- package/dist/patterns/intervention-effectiveness.d.ts +42 -0
- package/dist/patterns/intervention-effectiveness.d.ts.map +1 -0
- package/dist/patterns/intervention-effectiveness.js +196 -0
- package/dist/patterns/intervention-effectiveness.js.map +1 -0
- package/dist/patterns/late-night.d.ts +30 -0
- package/dist/patterns/late-night.d.ts.map +1 -0
- package/dist/patterns/late-night.js +141 -0
- package/dist/patterns/late-night.js.map +1 -0
- package/dist/patterns/post-delete-sprint.d.ts +28 -0
- package/dist/patterns/post-delete-sprint.d.ts.map +1 -0
- package/dist/patterns/post-delete-sprint.js +85 -0
- package/dist/patterns/post-delete-sprint.js.map +1 -0
- package/dist/patterns/spiral-regression.d.ts +49 -0
- package/dist/patterns/spiral-regression.d.ts.map +1 -0
- package/dist/patterns/spiral-regression.js +219 -0
- package/dist/patterns/spiral-regression.js.map +1 -0
- package/dist/patterns/thrashing.d.ts +25 -0
- package/dist/patterns/thrashing.d.ts.map +1 -0
- package/dist/patterns/thrashing.js +111 -0
- package/dist/patterns/thrashing.js.map +1 -0
- package/dist/storage/atomic.d.ts +40 -0
- package/dist/storage/atomic.d.ts.map +1 -0
- package/dist/storage/atomic.js +155 -0
- package/dist/storage/atomic.js.map +1 -0
- package/dist/storage/commit-log.d.ts +35 -0
- package/dist/storage/commit-log.d.ts.map +1 -0
- package/dist/storage/commit-log.js +128 -0
- package/dist/storage/commit-log.js.map +1 -0
- package/dist/storage/index.d.ts +5 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +33 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/schema.d.ts +32 -0
- package/dist/storage/schema.d.ts.map +1 -0
- package/dist/storage/schema.js +37 -0
- package/dist/storage/schema.js.map +1 -0
- package/dist/storage/timeline-store.d.ts +117 -0
- package/dist/storage/timeline-store.d.ts.map +1 -0
- package/dist/storage/timeline-store.js +438 -0
- package/dist/storage/timeline-store.js.map +1 -0
- package/dist/types.d.ts +96 -0
- package/dist/types.d.ts.map +1 -1
- package/docs/ARCHITECTURE.md +458 -0
- package/docs/DATA-ARCHITECTURE.md +565 -0
- package/docs/GAMIFICATION.md +564 -0
- package/docs/JSON-STORAGE-PATTERNS.md +512 -0
- package/docs/METRICS-EXPLAINED.md +394 -0
- package/docs/UNIFIED-ECOSYSTEM.md +560 -0
- package/docs/VIBE-ECOSYSTEM.md +406 -0
- package/feature-list.json +48 -0
- package/package.json +2 -1
- package/vitest.config.ts +1 -5
- package/.vibe-check/calibration.json +0 -38
- package/.vibe-check/latest.json +0 -114
- package/.vibe-check/sessions.json +0 -44
- package/PLAN-ultimate-game.md +0 -1362
package/CONTRIBUTING.md
ADDED
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
# Contributing to vibe-check
|
|
2
|
+
|
|
3
|
+
Thanks for your interest in contributing to vibe-check! This document covers how to get started.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Quick Start
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
# Clone the repo
|
|
11
|
+
git clone https://github.com/boshu2/vibe-check.git
|
|
12
|
+
cd vibe-check
|
|
13
|
+
|
|
14
|
+
# Install dependencies
|
|
15
|
+
npm install
|
|
16
|
+
|
|
17
|
+
# Run in development mode
|
|
18
|
+
npm run dev -- --since "1 week ago"
|
|
19
|
+
|
|
20
|
+
# Run tests
|
|
21
|
+
npm test
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
## Development Setup
|
|
27
|
+
|
|
28
|
+
### Prerequisites
|
|
29
|
+
|
|
30
|
+
- **Node.js** >= 20.0.0
|
|
31
|
+
- **npm** >= 9.0.0
|
|
32
|
+
- **Git** (for testing against repos)
|
|
33
|
+
|
|
34
|
+
### Project Structure
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
vibe-check/
|
|
38
|
+
├── src/
|
|
39
|
+
│ ├── cli.ts # Entry point
|
|
40
|
+
│ ├── git.ts # Git operations
|
|
41
|
+
│ ├── types.ts # TypeScript interfaces
|
|
42
|
+
│ ├── commands/ # CLI commands
|
|
43
|
+
│ ├── metrics/ # Metric calculations
|
|
44
|
+
│ ├── score/ # VibeScore computation
|
|
45
|
+
│ ├── sessions/ # Session management
|
|
46
|
+
│ ├── gamification/ # XP, achievements, etc.
|
|
47
|
+
│ └── output/ # Formatters
|
|
48
|
+
├── tests/ # Test files
|
|
49
|
+
├── docs/ # Documentation
|
|
50
|
+
└── bin/ # CLI wrapper
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Scripts
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
npm run build # Compile TypeScript
|
|
57
|
+
npm run dev # Run with ts-node
|
|
58
|
+
npm test # Run tests
|
|
59
|
+
npm run test:coverage # Tests with coverage
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## How to Contribute
|
|
65
|
+
|
|
66
|
+
### Reporting Bugs
|
|
67
|
+
|
|
68
|
+
1. Check existing [issues](https://github.com/boshu2/vibe-check/issues)
|
|
69
|
+
2. Create a new issue with:
|
|
70
|
+
- Clear title
|
|
71
|
+
- Steps to reproduce
|
|
72
|
+
- Expected vs actual behavior
|
|
73
|
+
- Node version, OS
|
|
74
|
+
|
|
75
|
+
### Suggesting Features
|
|
76
|
+
|
|
77
|
+
1. Open an issue with `[Feature]` prefix
|
|
78
|
+
2. Describe the use case
|
|
79
|
+
3. Explain why it fits vibe-check's purpose
|
|
80
|
+
|
|
81
|
+
### Submitting Code
|
|
82
|
+
|
|
83
|
+
1. Fork the repo
|
|
84
|
+
2. Create a feature branch: `git checkout -b feat/my-feature`
|
|
85
|
+
3. Make changes
|
|
86
|
+
4. Add tests for new functionality
|
|
87
|
+
5. Ensure tests pass: `npm test`
|
|
88
|
+
6. Commit with conventional commits: `feat: add my feature`
|
|
89
|
+
7. Push and create PR
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## Code Guidelines
|
|
94
|
+
|
|
95
|
+
### TypeScript
|
|
96
|
+
|
|
97
|
+
- Use strict typing (no `any` unless necessary)
|
|
98
|
+
- Export interfaces from `types.ts`
|
|
99
|
+
- Use descriptive variable names
|
|
100
|
+
|
|
101
|
+
### Commit Messages
|
|
102
|
+
|
|
103
|
+
Follow [Conventional Commits](https://www.conventionalcommits.org/):
|
|
104
|
+
|
|
105
|
+
```
|
|
106
|
+
feat(scope): add new feature
|
|
107
|
+
fix(scope): fix bug
|
|
108
|
+
docs: update documentation
|
|
109
|
+
test: add tests
|
|
110
|
+
chore: maintenance task
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### Testing
|
|
114
|
+
|
|
115
|
+
- Add tests for new features
|
|
116
|
+
- Maintain test coverage
|
|
117
|
+
- Use descriptive test names
|
|
118
|
+
|
|
119
|
+
```typescript
|
|
120
|
+
describe('calculateTrustPassRate', () => {
|
|
121
|
+
it('should return 100% when no immediate fixes', () => {
|
|
122
|
+
// ...
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
---
|
|
128
|
+
|
|
129
|
+
## Adding New Features
|
|
130
|
+
|
|
131
|
+
### Adding a Metric
|
|
132
|
+
|
|
133
|
+
1. Create `src/metrics/new-metric.ts`
|
|
134
|
+
2. Export function returning `MetricResult`
|
|
135
|
+
3. Add to `src/metrics/index.ts`
|
|
136
|
+
4. Update `types.ts` with new interfaces
|
|
137
|
+
5. Update `output/terminal.ts` to display
|
|
138
|
+
6. Add tests
|
|
139
|
+
|
|
140
|
+
### Adding an Achievement
|
|
141
|
+
|
|
142
|
+
1. Edit `src/gamification/achievements.ts`
|
|
143
|
+
2. Add to `ACHIEVEMENTS` array
|
|
144
|
+
3. Define condition function
|
|
145
|
+
4. Add test case
|
|
146
|
+
|
|
147
|
+
### Adding a Command
|
|
148
|
+
|
|
149
|
+
1. Create `src/commands/new-command.ts`
|
|
150
|
+
2. Export from `src/commands/index.ts`
|
|
151
|
+
3. Register in `src/cli.ts`
|
|
152
|
+
4. Document in README.md
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
## Testing Locally
|
|
157
|
+
|
|
158
|
+
### Against a Real Repo
|
|
159
|
+
|
|
160
|
+
```bash
|
|
161
|
+
# Point to any git repo
|
|
162
|
+
npm run dev -- --repo /path/to/repo --since "1 week ago"
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
### With Verbose Output
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
npm run dev -- --verbose --since "1 week ago"
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
### Testing Gamification
|
|
172
|
+
|
|
173
|
+
```bash
|
|
174
|
+
npm run dev -- profile
|
|
175
|
+
npm run dev -- profile --achievements
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
---
|
|
179
|
+
|
|
180
|
+
## Pull Request Process
|
|
181
|
+
|
|
182
|
+
1. **Title**: Use conventional commit format
|
|
183
|
+
2. **Description**: Explain what and why
|
|
184
|
+
3. **Tests**: Include tests for changes
|
|
185
|
+
4. **Docs**: Update docs if needed
|
|
186
|
+
5. **Review**: Address feedback promptly
|
|
187
|
+
|
|
188
|
+
### PR Checklist
|
|
189
|
+
|
|
190
|
+
- [ ] Tests pass (`npm test`)
|
|
191
|
+
- [ ] Code compiles (`npm run build`)
|
|
192
|
+
- [ ] No lint errors
|
|
193
|
+
- [ ] Docs updated if needed
|
|
194
|
+
- [ ] Commit messages follow convention
|
|
195
|
+
|
|
196
|
+
---
|
|
197
|
+
|
|
198
|
+
## Release Process
|
|
199
|
+
|
|
200
|
+
Maintainers only:
|
|
201
|
+
|
|
202
|
+
```bash
|
|
203
|
+
# Bump version (creates git tag)
|
|
204
|
+
npm version patch|minor|major
|
|
205
|
+
|
|
206
|
+
# Publish to npm
|
|
207
|
+
npm publish --access=public
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
## Code of Conduct
|
|
213
|
+
|
|
214
|
+
- Be respectful and inclusive
|
|
215
|
+
- Focus on constructive feedback
|
|
216
|
+
- Help others learn
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
## Questions?
|
|
221
|
+
|
|
222
|
+
- Open an [issue](https://github.com/boshu2/vibe-check/issues)
|
|
223
|
+
- Check existing docs in `/docs`
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
**Thanks for contributing!**
|
package/README.md
CHANGED
|
@@ -1,233 +1,290 @@
|
|
|
1
1
|
# vibe-check
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
```
|
|
4
|
+
┌─────────────────────────────────────────────────────────────────┐
|
|
5
|
+
│ │
|
|
6
|
+
│ ██╗ ██╗██╗██████╗ ███████╗ ██████╗██╗ ██╗██╗ ██╗ │
|
|
7
|
+
│ ██║ ██║██║██╔══██╗██╔════╝ ██╔════╝██║ ██║██║ ██╔╝ │
|
|
8
|
+
│ ██║ ██║██║██████╔╝█████╗█████╗██║ ███████║█████╔╝ │
|
|
9
|
+
│ ╚██╗ ██╔╝██║██╔══██╗██╔══╝╚════╝██║ ██╔══██║██╔═██╗ │
|
|
10
|
+
│ ╚████╔╝ ██║██████╔╝███████╗ ╚██████╗██║ ██║██║ ██╗ │
|
|
11
|
+
│ ╚═══╝ ╚═╝╚═════╝ ╚══════╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝ │
|
|
12
|
+
│ │
|
|
13
|
+
│ Are you building... or spiraling? │
|
|
14
|
+
│ │
|
|
15
|
+
└─────────────────────────────────────────────────────────────────┘
|
|
16
|
+
```
|
|
4
17
|
|
|
5
|
-
|
|
18
|
+
[](https://www.npmjs.com/package/@boshu2/vibe-check)
|
|
19
|
+
[](https://github.com/boshu2/vibe-check/actions/workflows/ci.yml)
|
|
20
|
+
[](https://opensource.org/licenses/MIT)
|
|
6
21
|
|
|
7
|
-
|
|
22
|
+
**Git-powered metrics for AI-assisted coding.** Catch debug spirals before they catch you.
|
|
8
23
|
|
|
9
24
|
```bash
|
|
10
|
-
|
|
25
|
+
npx @boshu2/vibe-check --since "2 hours ago"
|
|
11
26
|
```
|
|
12
27
|
|
|
13
|
-
Or run directly:
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
npx @boshu2/vibe-check
|
|
17
28
|
```
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
29
|
+
╭──────────────────────────────────────────────────────────────╮
|
|
30
|
+
│ VIBE-CHECK Nov 30, 2025 │
|
|
31
|
+
├──────────────────────────────────────────────────────────────┤
|
|
32
|
+
│ │
|
|
33
|
+
│ Rating: ELITE ✨ │
|
|
34
|
+
│ │
|
|
35
|
+
│ Trust Pass Rate ████████████████████ 95% ELITE │
|
|
36
|
+
│ Rework Ratio ████░░░░░░░░░░░░░░░░ 18% ELITE │
|
|
37
|
+
│ Debug Spirals None detected ELITE │
|
|
38
|
+
│ │
|
|
39
|
+
│ You're in the zone. Ship it. │
|
|
40
|
+
│ │
|
|
41
|
+
╰──────────────────────────────────────────────────────────────╯
|
|
27
42
|
```
|
|
28
43
|
|
|
29
|
-
|
|
44
|
+
---
|
|
30
45
|
|
|
31
|
-
|
|
46
|
+
## Dashboard
|
|
32
47
|
|
|
33
48
|
```bash
|
|
34
|
-
vibe-check
|
|
49
|
+
vibe-check dashboard
|
|
35
50
|
```
|
|
36
51
|
|
|
52
|
+
Opens a visual dashboard with **real-time insights** about your coding patterns:
|
|
53
|
+
|
|
54
|
+
```
|
|
55
|
+
┌─────────────────────────────────────────────────────────────────────────┐
|
|
56
|
+
│ 🎯 VIBE-CHECK DASHBOARD ━ ▢ ✕ │
|
|
57
|
+
├─────────────────────────────────────────────────────────────────────────┤
|
|
58
|
+
│ │
|
|
59
|
+
│ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
|
|
60
|
+
│ │ 🎯 89% │ │ 📈 85% │ │ 🔥 12 │ │ 🏆 8/19 │ │
|
|
61
|
+
│ │ Vibe Score │ │ Average │ │ Day Streak │ │Achievements │ │
|
|
62
|
+
│ └─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘ │
|
|
63
|
+
│ │
|
|
64
|
+
│ ┌─ Vibe Score Trend ──────────────────────────────────────────────┐ │
|
|
65
|
+
│ │ ● │ │
|
|
66
|
+
│ │ ● ● ● │ │
|
|
67
|
+
│ │ ● ● ● ● │ │
|
|
68
|
+
│ │ ● ● ● │ │
|
|
69
|
+
│ │ Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri │ │
|
|
70
|
+
│ └─────────────────────────────────────────────────────────────────┘ │
|
|
71
|
+
│ │
|
|
72
|
+
│ ┌─ Insights ──────────────────────────────────────────────────────┐ │
|
|
73
|
+
│ │ 🎯 Improvement Streak: 3 weeks of declining spiral rate │ │
|
|
74
|
+
│ │ ⏰ Peak Hours: Most productive at 10am (23% of commits) │ │
|
|
75
|
+
│ │ 📅 Best Day: Thursday is your power day │ │
|
|
76
|
+
│ │ ⚠️ High-Risk: "auth" scope has 60% fix ratio │ │
|
|
77
|
+
│ └─────────────────────────────────────────────────────────────────┘ │
|
|
78
|
+
│ │
|
|
79
|
+
└─────────────────────────────────────────────────────────────────────────┘
|
|
37
80
|
```
|
|
38
|
-
VIBE-CHECK WATCH MODE
|
|
39
|
-
Monitoring /path/to/repo
|
|
40
|
-
Polling every 5s - Ctrl+C to stop
|
|
41
81
|
|
|
42
|
-
|
|
43
|
-
09:15 fix(auth) handle token refresh
|
|
44
|
-
09:18 fix(auth) add retry logic
|
|
45
|
-
09:22 fix(auth) increase timeout
|
|
82
|
+
---
|
|
46
83
|
|
|
47
|
-
|
|
48
|
-
Component: auth
|
|
49
|
-
Fixes: 3 commits, 7 min
|
|
84
|
+
## Install
|
|
50
85
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
• Check the docs or ask for help
|
|
54
|
-
• Take a 5-minute break
|
|
55
|
-
────────────────────────────────────────────────────────────
|
|
86
|
+
```bash
|
|
87
|
+
npm install -g @boshu2/vibe-check
|
|
56
88
|
```
|
|
57
89
|
|
|
58
|
-
|
|
59
|
-
- `--quiet` - Only show warnings, not all commits
|
|
60
|
-
- `--interval <ms>` - Poll frequency (default: 5000ms)
|
|
90
|
+
## Quick Start
|
|
61
91
|
|
|
62
|
-
|
|
92
|
+
```bash
|
|
93
|
+
# Analyze recent work
|
|
94
|
+
vibe-check --since "1 week ago"
|
|
63
95
|
|
|
64
|
-
|
|
65
|
-
|
|
96
|
+
# Real-time spiral detection
|
|
97
|
+
vibe-check watch
|
|
66
98
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
Rework: 35% MEDIUM
|
|
99
|
+
# Visual dashboard
|
|
100
|
+
vibe-check dashboard
|
|
70
101
|
|
|
71
|
-
|
|
102
|
+
# View your profile & achievements
|
|
103
|
+
vibe-check profile
|
|
72
104
|
```
|
|
73
105
|
|
|
74
|
-
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
## Watch Mode
|
|
75
109
|
|
|
76
|
-
|
|
110
|
+
Catch spirals **as they happen**, not after:
|
|
77
111
|
|
|
78
112
|
```bash
|
|
79
|
-
vibe-check
|
|
113
|
+
vibe-check watch
|
|
80
114
|
```
|
|
81
115
|
|
|
82
116
|
```
|
|
83
|
-
|
|
117
|
+
VIBE-CHECK WATCH MODE
|
|
118
|
+
Monitoring: ~/projects/my-app
|
|
119
|
+
────────────────────────────────────────────────────────
|
|
84
120
|
|
|
85
|
-
|
|
86
|
-
|
|
121
|
+
09:15 fix(auth): handle token refresh
|
|
122
|
+
09:18 fix(auth): add retry logic
|
|
123
|
+
09:22 fix(auth): increase timeout
|
|
87
124
|
|
|
88
|
-
|
|
125
|
+
⚠️ SPIRAL DETECTED
|
|
126
|
+
┌────────────────────────────────────────────────────┐
|
|
127
|
+
│ Component: auth │
|
|
128
|
+
│ Fixes: 3 commits over 7 minutes │
|
|
129
|
+
│ │
|
|
130
|
+
│ 💡 Consider: │
|
|
131
|
+
│ • Step back and write a test │
|
|
132
|
+
│ • Check the docs or ask for help │
|
|
133
|
+
│ • Take a 5-minute break │
|
|
134
|
+
└────────────────────────────────────────────────────┘
|
|
135
|
+
|
|
136
|
+
────────────────────────────────────────────────────────
|
|
89
137
|
```
|
|
90
138
|
|
|
91
|
-
|
|
139
|
+
---
|
|
92
140
|
|
|
93
|
-
##
|
|
141
|
+
## Gamification
|
|
94
142
|
|
|
95
|
-
|
|
143
|
+
Level up your coding with XP, streaks, and achievements:
|
|
96
144
|
|
|
97
145
|
```bash
|
|
98
|
-
|
|
99
|
-
vibe-check start --level 3
|
|
100
|
-
|
|
101
|
-
# ... do your work ...
|
|
102
|
-
|
|
103
|
-
# After work: compare reality vs expectation
|
|
104
|
-
vibe-check --since "1 hour ago"
|
|
146
|
+
vibe-check profile
|
|
105
147
|
```
|
|
106
148
|
|
|
107
149
|
```
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
150
|
+
╭─────────────────────────────────────────────────────╮
|
|
151
|
+
│ │
|
|
152
|
+
│ 🏔️ Level 6 Grandmaster │
|
|
153
|
+
│ ████████████████░░░░░░░░ 2140 / 5000 XP │
|
|
154
|
+
│ │
|
|
155
|
+
│ 🔥 12 day streak (longest: 14) │
|
|
156
|
+
│ 🏆 8/19 achievements unlocked │
|
|
157
|
+
│ │
|
|
158
|
+
│ Recent Unlocks: │
|
|
159
|
+
│ ✨ Elite Vibes 🧘 Zen Master 📊 Regular │
|
|
160
|
+
│ │
|
|
161
|
+
╰─────────────────────────────────────────────────────╯
|
|
117
162
|
```
|
|
118
163
|
|
|
119
|
-
|
|
164
|
+
**19 achievements** including 2 hidden ones. Can you find them?
|
|
120
165
|
|
|
121
|
-
|
|
122
|
-
|-------|------|-------|-------------|
|
|
123
|
-
| 5 | Full Automation | 95% | Formatting, linting |
|
|
124
|
-
| 4 | High Trust | 80% | Boilerplate, CRUD |
|
|
125
|
-
| 3 | Balanced | 60% | Features, tests |
|
|
126
|
-
| 2 | Careful | 40% | Integrations, APIs |
|
|
127
|
-
| 1 | Skeptical | 20% | Architecture, security |
|
|
128
|
-
| 0 | Manual | 0% | Novel research |
|
|
166
|
+
---
|
|
129
167
|
|
|
130
|
-
## The
|
|
168
|
+
## The Metrics
|
|
131
169
|
|
|
132
|
-
| Metric | What It Measures | Elite | Needs Work |
|
|
133
|
-
|
|
170
|
+
| Metric | What It Measures | 🟢 Elite | 🔴 Needs Work |
|
|
171
|
+
|--------|------------------|----------|---------------|
|
|
134
172
|
| **Trust Pass Rate** | % commits without immediate fix | >95% | <80% |
|
|
135
173
|
| **Rework Ratio** | % commits that are fixes | <30% | >50% |
|
|
136
|
-
| **Debug Spiral** | Stuck in fix loops? | 0
|
|
174
|
+
| **Debug Spiral** | Stuck in fix loops? | 0 | 3+ |
|
|
137
175
|
|
|
138
|
-
|
|
176
|
+
---
|
|
139
177
|
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
```bash
|
|
143
|
-
vibe-check init-hook
|
|
144
|
-
```
|
|
178
|
+
## Vibe Levels
|
|
145
179
|
|
|
146
|
-
|
|
180
|
+
Declare your trust level before starting work:
|
|
147
181
|
|
|
148
182
|
```bash
|
|
149
|
-
vibe-check
|
|
183
|
+
vibe-check start --level 3
|
|
184
|
+
# ... code ...
|
|
185
|
+
vibe-check --since "1 hour ago"
|
|
150
186
|
```
|
|
151
187
|
|
|
152
|
-
|
|
188
|
+
| Level | Name | Trust | Use For |
|
|
189
|
+
|-------|------|-------|---------|
|
|
190
|
+
| **5** | Full Auto | 95% | Formatting, linting |
|
|
191
|
+
| **4** | High Trust | 80% | Boilerplate, CRUD |
|
|
192
|
+
| **3** | Balanced | 60% | Features, tests |
|
|
193
|
+
| **2** | Careful | 40% | Integrations, APIs |
|
|
194
|
+
| **1** | Skeptical | 20% | Architecture, security |
|
|
195
|
+
| **0** | Manual | 0% | Novel research |
|
|
153
196
|
|
|
154
|
-
|
|
197
|
+
---
|
|
155
198
|
|
|
156
|
-
|
|
157
|
-
vibe-check profile
|
|
158
|
-
```
|
|
159
|
-
|
|
160
|
-
```
|
|
161
|
-
╭─────────────────────────────────────────────╮
|
|
162
|
-
│ Your Vibe Profile │
|
|
163
|
-
├─────────────────────────────────────────────┤
|
|
164
|
-
│ 🌲 Level 4 Expert │
|
|
165
|
-
│ ████████████████░░░░ 320/400 XP │
|
|
166
|
-
│ │
|
|
167
|
-
│ 🔥 Current Streak: 5 days │
|
|
168
|
-
│ 🏆 Achievements: 8/19 unlocked │
|
|
169
|
-
╰─────────────────────────────────────────────╯
|
|
170
|
-
```
|
|
199
|
+
## Git Hook
|
|
171
200
|
|
|
172
|
-
|
|
201
|
+
Auto-run before every push:
|
|
173
202
|
|
|
203
|
+
```bash
|
|
204
|
+
vibe-check init-hook # Install hook
|
|
205
|
+
vibe-check init-hook --block-low # Block LOW pushes
|
|
174
206
|
```
|
|
175
|
-
vibe-check [options]
|
|
176
207
|
|
|
177
|
-
|
|
178
|
-
--since <date> Start date (e.g., "1 week ago")
|
|
179
|
-
--until <date> End date (default: now)
|
|
180
|
-
-f, --format <type> Output: terminal, json, markdown
|
|
181
|
-
-r, --repo <path> Repository path
|
|
182
|
-
-o, --output <file> Write JSON to file
|
|
183
|
-
-s, --simple Simplified output
|
|
184
|
-
--score Include VibeScore
|
|
185
|
-
-v, --verbose Verbose output
|
|
186
|
-
|
|
187
|
-
Commands:
|
|
188
|
-
watch Real-time spiral detection
|
|
189
|
-
start --level <n> Start session with declared level (0-5)
|
|
190
|
-
profile View your gamification profile
|
|
191
|
-
init-hook Install pre-push git hook
|
|
192
|
-
```
|
|
208
|
+
---
|
|
193
209
|
|
|
194
210
|
## GitHub Action
|
|
195
211
|
|
|
196
212
|
```yaml
|
|
197
213
|
name: Vibe Check
|
|
198
|
-
on:
|
|
199
|
-
pull_request:
|
|
200
|
-
branches: [main]
|
|
214
|
+
on: [pull_request]
|
|
201
215
|
|
|
202
216
|
jobs:
|
|
203
|
-
vibe
|
|
217
|
+
vibe:
|
|
204
218
|
runs-on: ubuntu-latest
|
|
205
|
-
permissions:
|
|
206
|
-
contents: read
|
|
207
|
-
pull-requests: write
|
|
208
219
|
steps:
|
|
209
220
|
- uses: actions/checkout@v4
|
|
210
221
|
with:
|
|
211
222
|
fetch-depth: 0
|
|
212
|
-
-
|
|
213
|
-
uses: boshu2/vibe-check@v1
|
|
223
|
+
- uses: boshu2/vibe-check@v1
|
|
214
224
|
with:
|
|
215
225
|
github-token: ${{ secrets.GITHUB_TOKEN }}
|
|
216
226
|
```
|
|
217
227
|
|
|
218
|
-
|
|
228
|
+
---
|
|
219
229
|
|
|
220
|
-
|
|
221
|
-
|
|
230
|
+
## All Commands
|
|
231
|
+
|
|
232
|
+
```
|
|
233
|
+
vibe-check [options] Analyze git history
|
|
234
|
+
vibe-check watch Real-time spiral detection
|
|
235
|
+
vibe-check dashboard Visual dashboard + insights
|
|
236
|
+
vibe-check profile XP, streaks, achievements
|
|
237
|
+
vibe-check timeline Coding journey visualization
|
|
238
|
+
vibe-check start --level <n> Declare vibe level (0-5)
|
|
239
|
+
vibe-check intervene Record spiral intervention
|
|
240
|
+
vibe-check init-hook Install git hook
|
|
241
|
+
vibe-check cache Manage local storage
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
**Options:**
|
|
245
|
+
```
|
|
246
|
+
--since <date> Start date ("1 week ago", "2024-01-01")
|
|
247
|
+
--until <date> End date (default: now)
|
|
248
|
+
--score Include VibeScore calculation
|
|
249
|
+
--simple Compact output
|
|
250
|
+
--format <type> terminal | json | markdown
|
|
251
|
+
--output <file> Save JSON to file
|
|
252
|
+
--verbose Detailed output
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
---
|
|
256
|
+
|
|
257
|
+
## Philosophy
|
|
222
258
|
|
|
223
|
-
|
|
259
|
+
**vibe-check is a mirror, not a judge.**
|
|
224
260
|
|
|
225
|
-
|
|
261
|
+
Use it for self-reflection. Catch your own patterns. Improve your own flow.
|
|
226
262
|
|
|
227
|
-
|
|
263
|
+
It's not a productivity metric. It's not for performance reviews. It's not measuring AI effectiveness.
|
|
228
264
|
|
|
229
|
-
|
|
265
|
+
It's just asking: *are you building, or are you spiraling?*
|
|
266
|
+
|
|
267
|
+
---
|
|
268
|
+
|
|
269
|
+
## Requirements
|
|
270
|
+
|
|
271
|
+
- Node.js >= 20.0.0
|
|
272
|
+
- Git repository with commits
|
|
273
|
+
|
|
274
|
+
## Docs
|
|
275
|
+
|
|
276
|
+
- [Vibe-Coding Ecosystem](docs/VIBE-ECOSYSTEM.md) - Full methodology
|
|
277
|
+
- [Architecture](docs/ARCHITECTURE.md) - Codebase structure
|
|
278
|
+
- [Gamification](docs/GAMIFICATION.md) - XP & achievements deep dive
|
|
279
|
+
- [Metrics Explained](docs/METRICS-EXPLAINED.md) - How it works
|
|
280
|
+
- [Changelog](CHANGELOG.md) - Version history
|
|
230
281
|
|
|
231
282
|
## License
|
|
232
283
|
|
|
233
284
|
MIT
|
|
285
|
+
|
|
286
|
+
---
|
|
287
|
+
|
|
288
|
+
<p align="center">
|
|
289
|
+
<i>Built for developers who vibe with AI</i>
|
|
290
|
+
</p>
|