tlc-claude-code 1.5.3 → 1.5.4

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.
Files changed (43) hide show
  1. package/.claude/commands/tlc/audit.md +129 -0
  2. package/.claude/commands/tlc/autofix.md +217 -0
  3. package/.claude/commands/tlc/bug.md +255 -0
  4. package/.claude/commands/tlc/build.md +731 -0
  5. package/.claude/commands/tlc/checklist.md +212 -0
  6. package/.claude/commands/tlc/ci.md +414 -0
  7. package/.claude/commands/tlc/claim.md +189 -0
  8. package/.claude/commands/tlc/cleanup.md +187 -0
  9. package/.claude/commands/tlc/complete.md +160 -0
  10. package/.claude/commands/tlc/config.md +395 -0
  11. package/.claude/commands/tlc/coverage.md +222 -0
  12. package/.claude/commands/tlc/deploy.md +723 -0
  13. package/.claude/commands/tlc/discuss.md +185 -0
  14. package/.claude/commands/tlc/docs.md +194 -0
  15. package/.claude/commands/tlc/edge-cases.md +241 -0
  16. package/.claude/commands/tlc/export.md +456 -0
  17. package/.claude/commands/tlc/help.md +169 -0
  18. package/.claude/commands/tlc/import-project.md +246 -0
  19. package/.claude/commands/tlc/init.md +443 -0
  20. package/.claude/commands/tlc/issues.md +376 -0
  21. package/.claude/commands/tlc/llm.md +111 -0
  22. package/.claude/commands/tlc/new-milestone.md +172 -0
  23. package/.claude/commands/tlc/new-project.md +399 -0
  24. package/.claude/commands/tlc/next.md +129 -0
  25. package/.claude/commands/tlc/outdated.md +200 -0
  26. package/.claude/commands/tlc/plan.md +224 -0
  27. package/.claude/commands/tlc/progress.md +153 -0
  28. package/.claude/commands/tlc/quality.md +185 -0
  29. package/.claude/commands/tlc/quick.md +52 -0
  30. package/.claude/commands/tlc/refactor.md +190 -0
  31. package/.claude/commands/tlc/release.md +135 -0
  32. package/.claude/commands/tlc/review-pr.md +184 -0
  33. package/.claude/commands/tlc/review.md +200 -0
  34. package/.claude/commands/tlc/security.md +195 -0
  35. package/.claude/commands/tlc/server.md +19 -0
  36. package/.claude/commands/tlc/start.md +137 -0
  37. package/.claude/commands/tlc/status.md +65 -0
  38. package/.claude/commands/tlc/sync.md +652 -0
  39. package/.claude/commands/tlc/tlc.md +279 -0
  40. package/.claude/commands/tlc/verify.md +159 -0
  41. package/.claude/commands/tlc/who.md +151 -0
  42. package/bin/postinstall.js +54 -0
  43. package/package.json +3 -1
@@ -0,0 +1,189 @@
1
+ # /tlc:claim - Claim a Task
2
+
3
+ Reserve a task so teammates know you're working on it.
4
+
5
+ ## Usage
6
+
7
+ ```
8
+ /tlc:claim [task-number]
9
+ ```
10
+
11
+ ## Process
12
+
13
+ ### Step 1: Identify User
14
+
15
+ Get current user identity:
16
+
17
+ ```bash
18
+ # Check TLC_USER environment variable first
19
+ if [ -n "$TLC_USER" ]; then
20
+ user=$TLC_USER
21
+ else
22
+ # Fall back to git username, normalized to lowercase
23
+ user=$(git config user.name | tr '[:upper:]' '[:lower:]' | tr ' ' '-')
24
+ fi
25
+ ```
26
+
27
+ ### Step 2: Sync Latest State
28
+
29
+ Pull latest changes to get current task claims:
30
+
31
+ ```bash
32
+ git pull --rebase
33
+ ```
34
+
35
+ If pull fails due to conflicts, abort and notify user to resolve manually.
36
+
37
+ ### Step 3: Find Current Phase Plan
38
+
39
+ Locate the active phase PLAN.md:
40
+
41
+ 1. Read `.planning/ROADMAP.md`
42
+ 2. Find phase marked `[>]` or `[current]`
43
+ 3. Load `.planning/phases/{N}-*-PLAN.md`
44
+
45
+ ### Step 4: Parse Task Status
46
+
47
+ Read task headings and their status markers:
48
+
49
+ | Pattern | Status | Available |
50
+ |---------|--------|-----------|
51
+ | `### Task N: Title [ ]` | Available | Yes |
52
+ | `### Task N: Title [>@user]` | Claimed | No (unless by you) |
53
+ | `### Task N: Title [x@user]` | Completed | No |
54
+
55
+ ### Step 5: Show Available Tasks
56
+
57
+ Display tasks with their status:
58
+
59
+ ```
60
+ Phase 2: User Dashboard
61
+
62
+ Tasks:
63
+ 1. Create layout component [x@alice] (done)
64
+ 2. Fetch data hook [ ] (available)
65
+ 3. Add charts [>@bob] (bob is working)
66
+ 4. Loading states [ ] (available)
67
+
68
+ Available: 2, 4
69
+ ```
70
+
71
+ ### Step 6: Claim Task
72
+
73
+ If task-number provided:
74
+ - Verify task exists and is available
75
+ - If not available, show error
76
+
77
+ If not provided:
78
+ - Prompt user to select from available tasks
79
+
80
+ Update the task heading:
81
+
82
+ ```markdown
83
+ ### Task 2: Fetch data hook [ ]
84
+ ```
85
+
86
+ becomes:
87
+
88
+ ```markdown
89
+ ### Task 2: Fetch data hook [>@alice]
90
+ ```
91
+
92
+ ### Step 7: Commit Claim
93
+
94
+ ```bash
95
+ git add .planning/phases/{N}-PLAN.md
96
+ git commit -m "claim: task {N} - {title} (@{user})"
97
+ ```
98
+
99
+ ### Step 8: Push
100
+
101
+ Prompt to push:
102
+
103
+ ```
104
+ Committed. Push now? (Y/n)
105
+ ```
106
+
107
+ If yes:
108
+ ```bash
109
+ git push
110
+ ```
111
+
112
+ If push fails (someone else pushed):
113
+ ```
114
+ Push failed - someone else updated the plan.
115
+ Run: git pull --rebase
116
+ Then try /tlc:claim again
117
+ ```
118
+
119
+ ## Example Session
120
+
121
+ ```
122
+ > /tlc:claim 2
123
+
124
+ Syncing latest...
125
+ ✓ Up to date
126
+
127
+ Phase 1: Authentication
128
+
129
+ Tasks:
130
+ 1. Create user schema [x@bob] (done)
131
+ 2. Add validation [ ] → [>@alice]
132
+ 3. Write migrations [>@bob] (bob is working)
133
+ 4. Integration tests [ ] (available)
134
+
135
+ Claiming task 2: Add validation
136
+
137
+ ✓ Committed: claim: task 2 - Add validation (@alice)
138
+
139
+ Push now? (Y/n) y
140
+ ✓ Pushed
141
+
142
+ Task 2 is yours. Run /tlc:build to start.
143
+ ```
144
+
145
+ ## Error Handling
146
+
147
+ **Task already claimed:**
148
+ ```
149
+ Task 2 is being worked on by @bob.
150
+ Available tasks: 4
151
+
152
+ Choose a different task, or ask @bob to /tlc:release 2
153
+ ```
154
+
155
+ **Task already completed:**
156
+ ```
157
+ Task 2 was completed by @alice.
158
+ Available tasks: 4
159
+ ```
160
+
161
+ **No available tasks:**
162
+ ```
163
+ All tasks in Phase 1 are claimed or completed.
164
+
165
+ [x@alice] 1. Create schema
166
+ [>@bob] 2. Add validation
167
+ [x@alice] 3. Write migrations
168
+ [>@bob] 4. Integration tests
169
+
170
+ Wait for a task to be released, or help review completed work.
171
+ ```
172
+
173
+ **Merge conflict on push:**
174
+ ```
175
+ Push rejected - concurrent claim detected.
176
+
177
+ Someone else claimed a task while you were claiming.
178
+ Run: git pull --rebase
179
+
180
+ If conflict on YOUR task: resolve and push
181
+ If conflict on different task: auto-resolved, just push
182
+ ```
183
+
184
+ ## Notes
185
+
186
+ - Claims are advisory - they don't prevent others from editing files
187
+ - Claims help coordinate, not enforce
188
+ - Use `/tlc:who` to see full team status
189
+ - Use `/tlc:release` to give up a claim
@@ -0,0 +1,187 @@
1
+ # /tlc:cleanup - Automatic Standards Cleanup
2
+
3
+ Automatically fix all coding standards violations. No prompts - just fixes everything and commits.
4
+
5
+ ## What This Does
6
+
7
+ 1. Ensures CLAUDE.md and CODING-STANDARDS.md exist
8
+ 2. Runs full audit to find all issues
9
+ 3. Fixes each issue automatically:
10
+ - Extracts hardcoded config to environment variables
11
+ - Migrates flat folders to entity-based structure
12
+ - Extracts inline interfaces to types/ files
13
+ - Replaces magic strings with constants
14
+ - Adds missing JSDoc comments
15
+ 4. Commits after each module/entity
16
+ 5. Reports results when done
17
+
18
+ ## Usage
19
+
20
+ ```
21
+ /tlc:cleanup
22
+ ```
23
+
24
+ ## Process
25
+
26
+ ### Step 1: Inject Standards
27
+
28
+ ```javascript
29
+ const { injectStandards } = require('./lib/standards/standards-injector');
30
+ const results = await injectStandards(projectPath);
31
+ ```
32
+
33
+ Creates CLAUDE.md and CODING-STANDARDS.md if missing.
34
+
35
+ ### Step 2: Run Audit
36
+
37
+ ```javascript
38
+ const { auditProject } = require('./lib/standards/audit-checker');
39
+ const auditResults = await auditProject(projectPath);
40
+ ```
41
+
42
+ ### Step 3: Fix Issues (No Prompts)
43
+
44
+ For each issue type, apply fixes automatically:
45
+
46
+ #### Hardcoded URLs/Ports
47
+ ```javascript
48
+ // Before
49
+ fetch('http://localhost:3000/api');
50
+
51
+ // After
52
+ fetch(process.env.API_URL || 'http://localhost:3000' + '/api');
53
+ ```
54
+
55
+ #### Flat Folders
56
+ ```
57
+ src/services/user.service.ts → src/user/user.service.ts
58
+ src/services/product.service.ts → src/product/product.service.ts
59
+ ```
60
+
61
+ All imports are updated automatically.
62
+
63
+ #### Inline Interfaces
64
+ ```javascript
65
+ // Before (user.service.ts)
66
+ interface UserData { id: string; }
67
+ export class UserService { }
68
+
69
+ // After (user.service.ts)
70
+ import { UserData } from './types/user-data';
71
+ export class UserService { }
72
+
73
+ // New file (types/user-data.ts)
74
+ export interface UserData { id: string; }
75
+ ```
76
+
77
+ #### Magic Strings
78
+ ```javascript
79
+ // Before
80
+ if (status === 'active') { }
81
+
82
+ // After
83
+ import { STATUS_ACTIVE } from './constants/status';
84
+ if (status === STATUS_ACTIVE) { }
85
+
86
+ // New file (constants/status.ts)
87
+ export const STATUS_ACTIVE = 'active';
88
+ ```
89
+
90
+ #### Missing JSDoc
91
+ ```javascript
92
+ // Before
93
+ export function getUser(id: string): User { }
94
+
95
+ // After
96
+ /**
97
+ * Gets a user by ID
98
+ * @param id - The user ID
99
+ * @returns The user
100
+ */
101
+ export function getUser(id: string): User { }
102
+ ```
103
+
104
+ ### Step 4: Commit After Each Module
105
+
106
+ After fixing all issues in an entity/module:
107
+
108
+ ```bash
109
+ git add src/user/
110
+ git commit -m "refactor(user): apply coding standards
111
+
112
+ - Extract UserData interface to types/
113
+ - Replace magic strings with constants
114
+ - Add missing JSDoc
115
+ "
116
+ ```
117
+
118
+ ### Step 5: Report Results
119
+
120
+ ```
121
+ TLC Cleanup Complete
122
+ ═══════════════════════════════════════════════════════════════
123
+
124
+ Standards Injected:
125
+ ✓ CLAUDE.md (created)
126
+ ✓ CODING-STANDARDS.md (created)
127
+
128
+ Issues Fixed: 11
129
+ - 4 hardcoded URLs extracted to env vars
130
+ - 3 flat folders migrated
131
+ - 2 inline interfaces extracted
132
+ - 2 magic strings replaced
133
+
134
+ Commits Created: 4
135
+ - refactor(user): apply coding standards
136
+ - refactor(product): apply coding standards
137
+ - refactor(order): apply coding standards
138
+ - refactor(config): extract environment variables
139
+
140
+ All checks now pass. Run /tlc:audit to verify.
141
+ ```
142
+
143
+ ## Example
144
+
145
+ ```
146
+ > /tlc:cleanup
147
+
148
+ TLC Cleanup - Automatic Standards Fix
149
+ ═══════════════════════════════════════════════════════════════
150
+
151
+ Injecting standards files...
152
+ ✓ Created CLAUDE.md
153
+ ✓ Created CODING-STANDARDS.md
154
+
155
+ Running audit...
156
+ Found 11 issues to fix
157
+
158
+ Fixing issues...
159
+ [1/11] Extracting http://localhost:3000 to API_URL...
160
+ [2/11] Extracting port 3000 to PORT...
161
+ [3/11] Migrating src/services/user.service.ts...
162
+ [4/11] Migrating src/services/product.service.ts...
163
+ [5/11] Extracting interface UserData...
164
+ [6/11] Replacing magic string 'active'...
165
+ [7/11] Adding JSDoc to getUser()...
166
+ ...
167
+
168
+ Committing changes...
169
+ ✓ refactor(user): apply coding standards
170
+ ✓ refactor(product): apply coding standards
171
+ ✓ refactor(config): extract environment variables
172
+
173
+ ═══════════════════════════════════════════════════════════════
174
+ CLEANUP COMPLETE - 11 issues fixed, 3 commits created
175
+ ═══════════════════════════════════════════════════════════════
176
+ ```
177
+
178
+ ## When to Use
179
+
180
+ - **New project**: Run once after `tlc init` to establish standards
181
+ - **Imported project**: Run after importing a Replit or external project
182
+ - **Quick fix**: When you just want everything fixed without reviewing
183
+
184
+ ## See Also
185
+
186
+ - `/tlc:audit` - Check without fixing
187
+ - `/tlc:refactor` - Fix step-by-step with previews
@@ -0,0 +1,160 @@
1
+ # /tlc:complete - Complete Milestone
2
+
3
+ Archive current milestone and tag the release.
4
+
5
+ ## What This Does
6
+
7
+ 1. Verifies all phases complete
8
+ 2. Runs full test suite
9
+ 3. Creates git tag
10
+ 4. Archives milestone files
11
+ 5. Prepares for next version
12
+
13
+ ## Usage
14
+
15
+ ```
16
+ /tlc:complete
17
+ ```
18
+
19
+ ## Process
20
+
21
+ ### Step 1: Check All Phases Complete
22
+
23
+ Read `.planning/ROADMAP.md` and verify:
24
+ - All phases marked `[x]` or `[completed]`
25
+ - All phases have `{N}-VERIFIED.md`
26
+
27
+ If incomplete:
28
+ ```
29
+ Cannot complete milestone.
30
+
31
+ Incomplete phases:
32
+ - Phase 4: Reports (not verified)
33
+ - Phase 5: Settings (not built)
34
+
35
+ Run /tlc to continue building.
36
+ ```
37
+
38
+ ### Step 2: Run Full Test Suite
39
+
40
+ ```bash
41
+ npm test
42
+ ```
43
+
44
+ - ✅ All pass → Continue
45
+ - ❌ Any fail → Block completion
46
+
47
+ ```
48
+ Cannot complete milestone.
49
+
50
+ 3 tests failing:
51
+ - user.test.ts: login timeout
52
+ - api.test.ts: invalid response
53
+
54
+ Fix tests before completing.
55
+ ```
56
+
57
+ ### Step 3: Confirm Completion
58
+
59
+ ```
60
+ Milestone: v1.0
61
+
62
+ Summary:
63
+ - 5 phases completed
64
+ - 47 tests passing
65
+ - All phases verified
66
+
67
+ Ready to tag release? (Y/n)
68
+ ```
69
+
70
+ ### Step 4: Create Git Tag
71
+
72
+ ```bash
73
+ git tag -a v1.0 -m "Release v1.0
74
+
75
+ Phases:
76
+ - Phase 1: Authentication
77
+ - Phase 2: User Dashboard
78
+ - Phase 3: Reports
79
+ - Phase 4: Settings
80
+ - Phase 5: Admin Panel
81
+
82
+ Tests: 47 passing"
83
+ ```
84
+
85
+ ### Step 5: Archive Milestone
86
+
87
+ Move planning files:
88
+ ```
89
+ .planning/
90
+ ├── archive/
91
+ │ └── v1.0/
92
+ │ ├── ROADMAP.md
93
+ │ ├── phases/
94
+ │ │ ├── 1-PLAN.md
95
+ │ │ ├── 1-VERIFIED.md
96
+ │ │ └── ...
97
+ │ └── SUMMARY.md
98
+ └── (clean for next milestone)
99
+ ```
100
+
101
+ Create `.planning/archive/v1.0/SUMMARY.md`:
102
+ ```markdown
103
+ # v1.0 Release Summary
104
+
105
+ Released: {date}
106
+ Tag: v1.0
107
+
108
+ ## Phases
109
+
110
+ 1. Authentication - User login, registration, sessions
111
+ 2. User Dashboard - Main interface, data display
112
+ 3. Reports - Export, PDF generation
113
+ 4. Settings - User preferences
114
+ 5. Admin Panel - User management
115
+
116
+ ## Stats
117
+
118
+ - Total tests: 47
119
+ - Duration: {X days/weeks}
120
+ - Commits: {N}
121
+
122
+ ## Notes
123
+
124
+ {Any release notes}
125
+ ```
126
+
127
+ ### Step 6: Complete
128
+
129
+ ```
130
+ ✅ Milestone v1.0 complete!
131
+
132
+ Tag created: v1.0
133
+ Files archived to .planning/archive/v1.0/
134
+
135
+ Next steps:
136
+ 1) Push tag: git push origin v1.0
137
+ 2) Start next version: /tlc:new-milestone v2.0
138
+ ```
139
+
140
+ ## Example
141
+
142
+ ```
143
+ > /tlc:complete
144
+
145
+ Checking milestone status...
146
+
147
+ ✅ All 5 phases verified
148
+ ✅ 47 tests passing
149
+
150
+ Ready to complete v1.0? (Y/n) > y
151
+
152
+ Creating tag v1.0...
153
+ Archiving planning files...
154
+
155
+ ✅ Milestone v1.0 complete!
156
+
157
+ Push to remote? (Y/n) > y
158
+
159
+ Done! Start v2.0 with /tlc:new-milestone
160
+ ```