@boshu2/vibe-check 1.5.0 โ 1.6.1
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 +165 -144
- 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/docs/images/dashboard.png +0 -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
|
@@ -0,0 +1,564 @@
|
|
|
1
|
+
# vibe-check Gamification System
|
|
2
|
+
|
|
3
|
+
**Deep dive into XP, levels, achievements, challenges, and more**
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Overview
|
|
8
|
+
|
|
9
|
+
vibe-check includes a complete gamification layer to make self-improvement engaging. This isn't productivity surveillanceโit's a personal game you play with yourself.
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
13
|
+
โ GAMIFICATION SYSTEM โ
|
|
14
|
+
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
|
|
15
|
+
โ โ
|
|
16
|
+
โ โโโโโโโโโโโโ โโโโโโโโโโโโ โโโโโโโโโโโโ โโโโโโโโโโโโ โ
|
|
17
|
+
โ โ XP โ โ Streaks โ โ Achieve- โ โChallenge โ โ
|
|
18
|
+
โ โ & Levels โ โ โ โ ments โ โ s โ โ
|
|
19
|
+
โ โโโโโโฌโโโโโโ โโโโโโฌโโโโโโ โโโโโโฌโโโโโโ โโโโโโฌโโโโโโ โ
|
|
20
|
+
โ โ โ โ โ โ
|
|
21
|
+
โ โโโโโโโโโโโโโโโดโโโโโโโฌโโโโโโโดโโโโโโโโโโโโโโ โ
|
|
22
|
+
โ โ โ
|
|
23
|
+
โ โโโโโโโโดโโโโโโโ โ
|
|
24
|
+
โ โ Profile โ โ
|
|
25
|
+
โ โ Storage โ โ
|
|
26
|
+
โ โโโโโโโโฌโโโโโโโ โ
|
|
27
|
+
โ โ โ
|
|
28
|
+
โ โโโโโโโโโโโโ โโโโโโโโโโโโดโโโโโโโโโโโ โโโโโโโโโโโโ โ
|
|
29
|
+
โ โ Leader- โ โ Hall of Fame โ โ Badges โ โ
|
|
30
|
+
โ โ boards โ โ โ โ โ โ
|
|
31
|
+
โ โโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโ โ
|
|
32
|
+
โ โ
|
|
33
|
+
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## XP System
|
|
39
|
+
|
|
40
|
+
### How XP Is Earned
|
|
41
|
+
|
|
42
|
+
| Action | XP Reward | Notes |
|
|
43
|
+
|--------|-----------|-------|
|
|
44
|
+
| Daily check-in | +10 | Once per day |
|
|
45
|
+
| ELITE session | +50 | Vibe rating |
|
|
46
|
+
| HIGH session | +25 | Vibe rating |
|
|
47
|
+
| MEDIUM session | +10 | Vibe rating |
|
|
48
|
+
| LOW session | +5 | Still shows up! |
|
|
49
|
+
| Streak bonus | +5 ร days | Per day of current streak |
|
|
50
|
+
| No spirals | +15 | Bonus for 0 spirals |
|
|
51
|
+
| Perfect trust | +20 | 100% trust pass rate |
|
|
52
|
+
| Achievement unlock | +25-100 | Varies by achievement |
|
|
53
|
+
| Challenge complete | +30-150 | Based on difficulty |
|
|
54
|
+
|
|
55
|
+
### XP Calculation Example
|
|
56
|
+
|
|
57
|
+
```
|
|
58
|
+
Session results:
|
|
59
|
+
- Rating: ELITE (+50)
|
|
60
|
+
- Trust: 100% (+20)
|
|
61
|
+
- Spirals: 0 (+15)
|
|
62
|
+
- Streak: 5 days (+25)
|
|
63
|
+
- Daily check-in (+10)
|
|
64
|
+
|
|
65
|
+
Total: 50 + 20 + 15 + 25 + 10 = 120 XP
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Anti-Gaming: Period Deduplication
|
|
69
|
+
|
|
70
|
+
XP is deduplicated by analysis period to prevent gaming:
|
|
71
|
+
|
|
72
|
+
```typescript
|
|
73
|
+
// Can't earn XP twice for same commits
|
|
74
|
+
if (previousSession.periodFrom === currentPeriodFrom &&
|
|
75
|
+
previousSession.periodTo === currentPeriodTo) {
|
|
76
|
+
return 0; // No duplicate XP
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## Level Progression
|
|
83
|
+
|
|
84
|
+
### Standard Levels (1-6)
|
|
85
|
+
|
|
86
|
+
| Level | Name | XP Range | Icon | Unlock |
|
|
87
|
+
|-------|------|----------|------|--------|
|
|
88
|
+
| 1 | Novice | 0-99 | ๐ฑ | Start |
|
|
89
|
+
| 2 | Apprentice | 100-299 | ๐ฟ | ~2-3 sessions |
|
|
90
|
+
| 3 | Practitioner | 300-599 | ๐ณ | ~1 week |
|
|
91
|
+
| 4 | Expert | 600-999 | ๐ฒ | ~2 weeks |
|
|
92
|
+
| 5 | Master | 1000-1999 | ๐ | ~1 month |
|
|
93
|
+
| 6 | Grandmaster | 2000-4999 | ๐๏ธ | ~2 months |
|
|
94
|
+
|
|
95
|
+
### Prestige Tiers (Post-Grandmaster)
|
|
96
|
+
|
|
97
|
+
After reaching Grandmaster, prestige tiers unlock:
|
|
98
|
+
|
|
99
|
+
| Tier | Name | XP Range | Icon | Time Estimate |
|
|
100
|
+
|------|------|----------|------|---------------|
|
|
101
|
+
| 1 | Archmage | 5000-9999 | ๐ฎ | ~3 months |
|
|
102
|
+
| 2 | Sage | 10000-19999 | ๐ฟ | ~6 months |
|
|
103
|
+
| 3 | Zenmester | 20000-39999 | โฏ๏ธ | ~1 year |
|
|
104
|
+
| 4 | Transcendent | 40000-79999 | ๐ | ~2 years |
|
|
105
|
+
| 5 | Legendary | 80000+ | ๐ซ | Long-term mastery |
|
|
106
|
+
|
|
107
|
+
### Level Display
|
|
108
|
+
|
|
109
|
+
```
|
|
110
|
+
๐ Level 5 Master (635/1000 XP)
|
|
111
|
+
โโโโโโโโโโโโโโโโโโโโ 63.5%
|
|
112
|
+
|
|
113
|
+
Next: ๐๏ธ Grandmaster at 2000 XP
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
## Streak System
|
|
119
|
+
|
|
120
|
+
### How Streaks Work
|
|
121
|
+
|
|
122
|
+
- **Daily check-in**: Run `vibe-check` at least once per day
|
|
123
|
+
- **Streak increments**: Each consecutive day with activity
|
|
124
|
+
- **Streak breaks**: Miss a day without freeze โ reset to 0
|
|
125
|
+
|
|
126
|
+
### Streak Display
|
|
127
|
+
|
|
128
|
+
Visual progression based on streak length:
|
|
129
|
+
|
|
130
|
+
| Streak | Icon | Display |
|
|
131
|
+
|--------|------|---------|
|
|
132
|
+
| 1-5 days | ๐ฅ | `๐ฅ 5-day streak` |
|
|
133
|
+
| 6-14 days | ๐ | `๐๐ 12-day streak` |
|
|
134
|
+
| 15+ days | ๐ | `๐๐๐ 18-day streak ๐` |
|
|
135
|
+
|
|
136
|
+
Personal best indicator:
|
|
137
|
+
```
|
|
138
|
+
๐๐๐ 18-day streak ๐ (Personal Best!)
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
### Streak Freezes
|
|
142
|
+
|
|
143
|
+
- **Initial freezes**: 2 per week
|
|
144
|
+
- **Freeze use**: Automatic when you miss a day
|
|
145
|
+
- **Freeze recovery**: 1 freeze regenerates per week (up to 2)
|
|
146
|
+
|
|
147
|
+
```
|
|
148
|
+
โ๏ธ 2 freezes available
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### Streak at Risk Warning
|
|
152
|
+
|
|
153
|
+
```
|
|
154
|
+
โ ๏ธ Streak at risk! Check in today to keep it alive
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## Achievements
|
|
160
|
+
|
|
161
|
+
### Categories
|
|
162
|
+
|
|
163
|
+
#### Streak Achievements
|
|
164
|
+
|
|
165
|
+
| Icon | Name | Requirement |
|
|
166
|
+
|------|------|-------------|
|
|
167
|
+
| ๐ฉธ | First Blood | Run your first vibe-check |
|
|
168
|
+
| โ๏ธ | Week Warrior | 7-day streak |
|
|
169
|
+
| ๐ | Streak Master | 30-day streak |
|
|
170
|
+
| ๐ | Diamond Streak | 100-day streak |
|
|
171
|
+
|
|
172
|
+
#### Score Achievements
|
|
173
|
+
|
|
174
|
+
| Icon | Name | Requirement |
|
|
175
|
+
|------|------|-------------|
|
|
176
|
+
| ๐ | Elite Vibes | Get ELITE rating |
|
|
177
|
+
| ๐๏ธ | Trust Builder | >90% trust for 30 days |
|
|
178
|
+
| ๐ง | Zen Master | 0 spirals in 50+ commit week |
|
|
179
|
+
| ๐ฏ | The Ninety Club | 90%+ vibe score |
|
|
180
|
+
|
|
181
|
+
#### Session Achievements
|
|
182
|
+
|
|
183
|
+
| Icon | Name | Requirement |
|
|
184
|
+
|------|------|-------------|
|
|
185
|
+
| ๐ | Getting Started | Complete 10 sessions |
|
|
186
|
+
| ๐๏ธ | Centurion | Complete 100 sessions |
|
|
187
|
+
| ๐๏ธ | Marathon Coder | Complete 500 sessions |
|
|
188
|
+
|
|
189
|
+
#### Special Achievements
|
|
190
|
+
|
|
191
|
+
| Icon | Name | Requirement |
|
|
192
|
+
|------|------|-------------|
|
|
193
|
+
| ๐ | Night Owl | Session after midnight |
|
|
194
|
+
| ๐
| Early Bird | Session before 6am |
|
|
195
|
+
| ๐ | Weekend Warrior | Session on weekend |
|
|
196
|
+
| ๐ | Comeback Kid | LOW โ ELITE same week |
|
|
197
|
+
| ๐ฅ | On Fire | 3 ELITE sessions in a row |
|
|
198
|
+
|
|
199
|
+
### Secret Achievements
|
|
200
|
+
|
|
201
|
+
Some achievements are hidden until unlocked:
|
|
202
|
+
- ๐ฅ **Easter Egg** - ???
|
|
203
|
+
- ๐ฏ **Perfectionist** - ???
|
|
204
|
+
|
|
205
|
+
### Achievement Display
|
|
206
|
+
|
|
207
|
+
```
|
|
208
|
+
๐ Achievements: 8/19 unlocked
|
|
209
|
+
|
|
210
|
+
Recent:
|
|
211
|
+
๐ง Zen Master (Nov 28)
|
|
212
|
+
โ๏ธ Week Warrior (Nov 25)
|
|
213
|
+
๐ Elite Vibes (Nov 22)
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
---
|
|
217
|
+
|
|
218
|
+
## Weekly Challenges
|
|
219
|
+
|
|
220
|
+
### How Challenges Work
|
|
221
|
+
|
|
222
|
+
- **Generated weekly**: Based on your weak metrics
|
|
223
|
+
- **3 challenges per week**: 1 targeted + 2 random
|
|
224
|
+
- **Progress tracked**: Updates after each session
|
|
225
|
+
- **XP rewards**: 30-150 XP per challenge
|
|
226
|
+
|
|
227
|
+
### Challenge Types
|
|
228
|
+
|
|
229
|
+
| Type | Name | Description | Targets |
|
|
230
|
+
|------|------|-------------|---------|
|
|
231
|
+
| `TRUST_STREAK` | Trust Gauntlet | Get 90%+ trust N times | 3, 5, 7 |
|
|
232
|
+
| `ZERO_SPIRALS` | Zen Mode | N sessions with 0 spirals | 3, 5, 7 |
|
|
233
|
+
| `ELITE_COUNT` | Elite Streak | Get N ELITE ratings | 2, 4, 6 |
|
|
234
|
+
| `COMMIT_VOLUME` | Commit Champion | Analyze N+ commits | 50, 100, 200 |
|
|
235
|
+
| `STREAK_EXTEND` | Streak Builder | Extend streak by N days | 3, 5, 7 |
|
|
236
|
+
|
|
237
|
+
### Challenge Display
|
|
238
|
+
|
|
239
|
+
```
|
|
240
|
+
WEEKLY CHALLENGES
|
|
241
|
+
|
|
242
|
+
๐ฏ Trust Gauntlet: โโโโโโโโโโ 4/5 (+100 XP)
|
|
243
|
+
๐ง Zen Mode: โโโโโโโโโโ โ COMPLETE
|
|
244
|
+
๐ฅ Streak Builder: โโโโโโโโโโ 1/5 (+40 XP)
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
### Challenge Selection Algorithm
|
|
248
|
+
|
|
249
|
+
1. Analyze recent session metrics
|
|
250
|
+
2. Identify weak areas (low trust? many spirals?)
|
|
251
|
+
3. Generate 1 challenge targeting weakness (medium difficulty)
|
|
252
|
+
4. Generate 2 random challenges (easy difficulty)
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
## Leaderboards
|
|
257
|
+
|
|
258
|
+
### Personal Leaderboards
|
|
259
|
+
|
|
260
|
+
Track your high scores across all repos:
|
|
261
|
+
|
|
262
|
+
```
|
|
263
|
+
๐ All-Time Top Scores
|
|
264
|
+
|
|
265
|
+
๐ฅ 96% ELITE my-project (Nov 15)
|
|
266
|
+
๐ฅ 94% ELITE vibe-check (Nov 28)
|
|
267
|
+
๐ฅ 91% ELITE other-repo (Nov 20)
|
|
268
|
+
4. 89% HIGH work-app (Nov 18)
|
|
269
|
+
5. 87% HIGH side-project (Nov 10)
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
### Per-Repo Leaderboards
|
|
273
|
+
|
|
274
|
+
```
|
|
275
|
+
๐ Top Scores - vibe-check
|
|
276
|
+
|
|
277
|
+
๐ฅ 94% ELITE Nov 28
|
|
278
|
+
๐ฅ 91% ELITE Nov 27
|
|
279
|
+
๐ฅ 88% HIGH Nov 26
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
### Data Stored
|
|
283
|
+
|
|
284
|
+
```typescript
|
|
285
|
+
interface LeaderboardEntry {
|
|
286
|
+
date: string;
|
|
287
|
+
repoPath: string;
|
|
288
|
+
repoName: string;
|
|
289
|
+
vibeScore: number;
|
|
290
|
+
overall: string;
|
|
291
|
+
commits: number;
|
|
292
|
+
xpEarned: number;
|
|
293
|
+
}
|
|
294
|
+
```
|
|
295
|
+
|
|
296
|
+
---
|
|
297
|
+
|
|
298
|
+
## Hall of Fame
|
|
299
|
+
|
|
300
|
+
Personal bests and records:
|
|
301
|
+
|
|
302
|
+
```
|
|
303
|
+
๐๏ธ HALL OF FAME
|
|
304
|
+
|
|
305
|
+
๐ Best Score: 96% (Nov 15)
|
|
306
|
+
my-project - ELITE rating
|
|
307
|
+
|
|
308
|
+
๐ฅ Longest Streak: 15 days
|
|
309
|
+
Consecutive daily check-ins
|
|
310
|
+
|
|
311
|
+
โก Best Week: 847 XP
|
|
312
|
+
Week of Nov 11
|
|
313
|
+
|
|
314
|
+
๐ Most Commits: 127 (Nov 10)
|
|
315
|
+
big-refactor - single session
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
---
|
|
319
|
+
|
|
320
|
+
## Rank Badges
|
|
321
|
+
|
|
322
|
+
Tier badges based on cumulative progress:
|
|
323
|
+
|
|
324
|
+
| Badge | Icon | Requirement |
|
|
325
|
+
|-------|------|-------------|
|
|
326
|
+
| Bronze | ๐ฅ | 10+ sessions |
|
|
327
|
+
| Silver | ๐ฅ | 50+ sessions |
|
|
328
|
+
| Gold | ๐ฅ | 100+ sessions |
|
|
329
|
+
| Platinum | ๐ | 14+ day streak |
|
|
330
|
+
| Diamond | ๐ท | 5000+ XP |
|
|
331
|
+
|
|
332
|
+
### Badge Display
|
|
333
|
+
|
|
334
|
+
```
|
|
335
|
+
Current: ๐ Platinum Tier
|
|
336
|
+
|
|
337
|
+
Next: ๐ท Diamond (need 5000 XP, have 3200)
|
|
338
|
+
Progress: โโโโโโโโโโโโโโโโ 64%
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
---
|
|
342
|
+
|
|
343
|
+
## Weekly Stats
|
|
344
|
+
|
|
345
|
+
### Sparklines
|
|
346
|
+
|
|
347
|
+
Visual trend of your scores this week:
|
|
348
|
+
|
|
349
|
+
```
|
|
350
|
+
๐
THIS WEEK
|
|
351
|
+
|
|
352
|
+
Avg Score: 87% โ
|
|
353
|
+
Sessions: 5
|
|
354
|
+
XP Earned: 320
|
|
355
|
+
ELITE: 3 | Spirals: 2
|
|
356
|
+
|
|
357
|
+
Trend: โโโโโ
โโ
|
|
358
|
+
```
|
|
359
|
+
|
|
360
|
+
### Trend Indicators
|
|
361
|
+
|
|
362
|
+
| Symbol | Meaning |
|
|
363
|
+
|--------|---------|
|
|
364
|
+
| โ | Improving (>5% vs previous) |
|
|
365
|
+
| โ | Stable |
|
|
366
|
+
| โ | Declining (<5% vs previous) |
|
|
367
|
+
|
|
368
|
+
---
|
|
369
|
+
|
|
370
|
+
## Pattern Memory
|
|
371
|
+
|
|
372
|
+
Tracks YOUR spiral triggers over time:
|
|
373
|
+
|
|
374
|
+
```
|
|
375
|
+
YOUR SPIRAL TRIGGERS
|
|
376
|
+
|
|
377
|
+
Pattern Times Avg Duration
|
|
378
|
+
SECRETS_AUTH 5 18 min
|
|
379
|
+
VOLUME_CONFIG 3 12 min
|
|
380
|
+
API_MISMATCH 2 25 min
|
|
381
|
+
|
|
382
|
+
Your kryptonite: OAuth/token issues
|
|
383
|
+
Consider: Tracer tests for auth flows
|
|
384
|
+
```
|
|
385
|
+
|
|
386
|
+
---
|
|
387
|
+
|
|
388
|
+
## Intervention Tracking
|
|
389
|
+
|
|
390
|
+
Records what breaks YOUR spirals:
|
|
391
|
+
|
|
392
|
+
```
|
|
393
|
+
WHAT WORKS FOR YOU
|
|
394
|
+
|
|
395
|
+
Intervention Times Success Rate
|
|
396
|
+
Take a break 4 75%
|
|
397
|
+
Write test 3 100%
|
|
398
|
+
Read docs 2 50%
|
|
399
|
+
Ask for help 1 100%
|
|
400
|
+
|
|
401
|
+
Recommendation: Write a test first!
|
|
402
|
+
```
|
|
403
|
+
|
|
404
|
+
### Intervention Types
|
|
405
|
+
|
|
406
|
+
| Type | Description |
|
|
407
|
+
|------|-------------|
|
|
408
|
+
| `TRACER_TEST` | Wrote a test to validate |
|
|
409
|
+
| `BREAK` | Took a break |
|
|
410
|
+
| `DOCS` | Consulted documentation |
|
|
411
|
+
| `REFACTOR` | Changed approach |
|
|
412
|
+
| `HELP` | Asked for help |
|
|
413
|
+
| `ROLLBACK` | Reverted to known state |
|
|
414
|
+
| `OTHER` | Custom intervention |
|
|
415
|
+
|
|
416
|
+
---
|
|
417
|
+
|
|
418
|
+
## Share Feature
|
|
419
|
+
|
|
420
|
+
### Shareable Text
|
|
421
|
+
|
|
422
|
+
```bash
|
|
423
|
+
vibe-check profile --share
|
|
424
|
+
```
|
|
425
|
+
|
|
426
|
+
Output:
|
|
427
|
+
```
|
|
428
|
+
๐ฎ bodefuller's Vibe-Check Profile
|
|
429
|
+
|
|
430
|
+
Level 5 Master (Archmage I) ๐ Platinum
|
|
431
|
+
1,250 Total XP
|
|
432
|
+
|
|
433
|
+
๐ฅ 12-day streak (Best: 15)
|
|
434
|
+
๐ 45 sessions | Avg: 87% | Best: 96%
|
|
435
|
+
๐ 12 achievements unlocked
|
|
436
|
+
|
|
437
|
+
Track your coding vibes: npx @boshu2/vibe-check
|
|
438
|
+
```
|
|
439
|
+
|
|
440
|
+
### Shareable JSON
|
|
441
|
+
|
|
442
|
+
```bash
|
|
443
|
+
vibe-check profile --share-json
|
|
444
|
+
```
|
|
445
|
+
|
|
446
|
+
Machine-readable profile for integrations.
|
|
447
|
+
|
|
448
|
+
---
|
|
449
|
+
|
|
450
|
+
## Near-Miss Psychology
|
|
451
|
+
|
|
452
|
+
Motivational messages when you're close to achievements:
|
|
453
|
+
|
|
454
|
+
```
|
|
455
|
+
๐ฏ SO CLOSE!
|
|
456
|
+
|
|
457
|
+
Just 1-2 metrics away from ELITE overall!
|
|
458
|
+
88% vibe score - just 2% from the Ninety Club!
|
|
459
|
+
```
|
|
460
|
+
|
|
461
|
+
Triggers when:
|
|
462
|
+
- HIGH rating with 3+ ELITE metrics
|
|
463
|
+
- Score 85-89% (close to 90)
|
|
464
|
+
- Trust 90-99% (close to 100)
|
|
465
|
+
- 1 spiral (close to Zen Master)
|
|
466
|
+
|
|
467
|
+
---
|
|
468
|
+
|
|
469
|
+
## Profile Storage
|
|
470
|
+
|
|
471
|
+
### Location
|
|
472
|
+
|
|
473
|
+
```
|
|
474
|
+
~/.vibe-check/
|
|
475
|
+
โโโ profile.json # Main profile
|
|
476
|
+
โโโ leaderboards.json # High scores
|
|
477
|
+
```
|
|
478
|
+
|
|
479
|
+
### Profile Schema
|
|
480
|
+
|
|
481
|
+
```typescript
|
|
482
|
+
interface UserProfile {
|
|
483
|
+
version: string; // "1.5.0"
|
|
484
|
+
createdAt: string;
|
|
485
|
+
updatedAt: string;
|
|
486
|
+
streak: StreakState;
|
|
487
|
+
xp: XPState;
|
|
488
|
+
achievements: Achievement[];
|
|
489
|
+
sessions: SessionRecord[];
|
|
490
|
+
patternMemory?: PatternMemory;
|
|
491
|
+
interventionMemory?: InterventionMemory;
|
|
492
|
+
challenges?: Challenge[];
|
|
493
|
+
preferences: {
|
|
494
|
+
weeklyGoal: number;
|
|
495
|
+
showNotifications: boolean;
|
|
496
|
+
publicProfile: boolean;
|
|
497
|
+
};
|
|
498
|
+
stats: {
|
|
499
|
+
totalSessions: number;
|
|
500
|
+
totalCommitsAnalyzed: number;
|
|
501
|
+
avgVibeScore: number;
|
|
502
|
+
bestVibeScore: number;
|
|
503
|
+
totalSpiralsDetected: number;
|
|
504
|
+
spiralsAvoided: number;
|
|
505
|
+
};
|
|
506
|
+
}
|
|
507
|
+
```
|
|
508
|
+
|
|
509
|
+
---
|
|
510
|
+
|
|
511
|
+
## Commands
|
|
512
|
+
|
|
513
|
+
```bash
|
|
514
|
+
# View full profile
|
|
515
|
+
vibe-check profile
|
|
516
|
+
|
|
517
|
+
# View specific sections
|
|
518
|
+
vibe-check profile --achievements
|
|
519
|
+
vibe-check profile --stats
|
|
520
|
+
vibe-check profile --challenges
|
|
521
|
+
vibe-check profile --leaderboard
|
|
522
|
+
vibe-check profile --hall-of-fame
|
|
523
|
+
vibe-check profile --weekly
|
|
524
|
+
vibe-check profile --patterns
|
|
525
|
+
vibe-check profile --interventions
|
|
526
|
+
|
|
527
|
+
# Share
|
|
528
|
+
vibe-check profile --share
|
|
529
|
+
vibe-check profile --share-json
|
|
530
|
+
|
|
531
|
+
# Record intervention
|
|
532
|
+
vibe-check intervene TRACER_TEST
|
|
533
|
+
vibe-check intervene BREAK
|
|
534
|
+
vibe-check intervene --list
|
|
535
|
+
vibe-check intervene --stats
|
|
536
|
+
```
|
|
537
|
+
|
|
538
|
+
---
|
|
539
|
+
|
|
540
|
+
## Design Philosophy
|
|
541
|
+
|
|
542
|
+
### Why Gamification?
|
|
543
|
+
|
|
544
|
+
1. **Self-improvement is hard** - External motivation helps
|
|
545
|
+
2. **Feedback loops matter** - XP provides immediate reward
|
|
546
|
+
3. **Streaks create habits** - Daily engagement compounds
|
|
547
|
+
4. **Achievements mark progress** - Milestones feel good
|
|
548
|
+
5. **Competition is optional** - Personal bests, not team rankings
|
|
549
|
+
|
|
550
|
+
### What This Is NOT
|
|
551
|
+
|
|
552
|
+
- **Not surveillance** - Your data, your machine
|
|
553
|
+
- **Not productivity tracking** - No manager dashboards
|
|
554
|
+
- **Not competition** - No public leaderboards
|
|
555
|
+
- **Not judgment** - LOW sessions still earn XP
|
|
556
|
+
|
|
557
|
+
### The Goal
|
|
558
|
+
|
|
559
|
+
Make you WANT to improve your vibe scoreโnot because someone's watching, but because the game is fun.
|
|
560
|
+
|
|
561
|
+
---
|
|
562
|
+
|
|
563
|
+
**Version:** 1.5.0
|
|
564
|
+
**Last Updated:** 2025-11-29
|