tlc-claude-code 1.2.10 → 1.2.12

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/README.md CHANGED
@@ -77,7 +77,7 @@ TLC knows where you are and what's next.
77
77
  ### For Enterprise
78
78
 
79
79
  - **CI/CD pipelines** — GitHub Actions, GitLab, Azure, CircleCI
80
- - **VPS deployment** — Branch previews with auth & Slack webhooks
80
+ - **Dev server** — Branch previews with auth & Slack webhooks
81
81
  - **Multi-tool export** — Works with Cursor, Copilot, Continue, Cody
82
82
 
83
83
  ---
@@ -110,7 +110,7 @@ TLC knows where you are and what's next.
110
110
  | `/tlc:ci` | Generate CI/CD pipeline |
111
111
  | `/tlc:issues` | Sync with GitHub/Jira/Linear |
112
112
  | `/tlc:export` | Export for Cursor/Copilot/etc |
113
- | `/tlc:deploy` | VPS deployment |
113
+ | `/tlc:deploy` | Dev server deployment |
114
114
 
115
115
  [**See all commands →**](help.md)
116
116
 
@@ -290,9 +290,9 @@ Commands install to `.claude/commands/tlc/`
290
290
 
291
291
  ---
292
292
 
293
- ## VPS Deployment
293
+ ## TLC Dev Server
294
294
 
295
- Deploy TLC server for your team on any VPS.
295
+ Deploy TLC dev server for your team on any Linux server.
296
296
 
297
297
  ### Quick Setup (Ubuntu)
298
298
 
@@ -310,8 +310,8 @@ curl -fsSL https://raw.githubusercontent.com/jurgencalleja/TLC/main/scripts/vps-
310
310
 
311
311
  ### Requirements
312
312
 
313
- - Ubuntu 22.04+ VPS (2GB+ RAM)
314
- - Domain with wildcard DNS (`*.project.com → VPS_IP`)
313
+ - Ubuntu 22.04+ server (2GB+ RAM)
314
+ - Domain with wildcard DNS (`*.project.com → SERVER_IP`)
315
315
  - GitHub/GitLab repo access
316
316
 
317
317
  ### Manual Setup
@@ -340,7 +340,7 @@ curl -fsSL https://raw.githubusercontent.com/jurgencalleja/TLC/main/scripts/vps-
340
340
 
341
341
  5. **Configure webhook** in GitHub/GitLab repo settings
342
342
 
343
- [**Full VPS Guide →**](docs/vps-deployment.md)
343
+ [**Full Dev Server Guide →**](docs/devserver.md)
344
344
 
345
345
  ---
346
346
 
@@ -373,7 +373,7 @@ helm install tlc tlc/tlc-server \
373
373
 
374
374
  - **[Help / All Commands](help.md)** — Complete command reference
375
375
  - **[Team Workflow](docs/team-workflow.md)** — Guide for teams (engineers + PO + QA)
376
- - **[VPS Deployment](docs/vps-deployment.md)** — Deploy on Ubuntu VPS
376
+ - **[Dev Server](docs/devserver.md)** — Deploy on Ubuntu server
377
377
  - **[Kubernetes Deployment](docs/kubernetes-deployment.md)** — Deploy on K8s
378
378
 
379
379
  ---
package/deploy.md CHANGED
@@ -1,6 +1,6 @@
1
- # /tlc:deploy - VPS Deployment Server
1
+ # /tlc:deploy - TLC Dev Server
2
2
 
3
- Deploy your TLC project to a VPS for team collaboration.
3
+ Deploy your TLC project to a remote dev server for team collaboration.
4
4
 
5
5
  ## Usage
6
6
 
@@ -9,17 +9,115 @@ Deploy your TLC project to a VPS for team collaboration.
9
9
  ```
10
10
 
11
11
  Commands:
12
- - `setup` - Configure deployment server
12
+ - `setup` - Generate server config and setup instructions
13
13
  - `push` - Deploy current branch
14
14
  - `status` - Check deployment status
15
15
  - `logs` - View deployment logs
16
16
  - `users` - Manage server users
17
17
 
18
+ ---
19
+
20
+ ## Quick Setup (Terminal)
21
+
22
+ Run `/tlc:deploy setup` to generate your server config:
23
+
24
+ ```
25
+ TLC Dev Server Setup
26
+ ════════════════════════════════════════════════════════════════════
27
+
28
+ Project Configuration
29
+ ─────────────────────
30
+ Name: my-awesome-app
31
+ Repo: git@github.com:myorg/my-awesome-app.git
32
+ Domain: (enter your domain)
33
+
34
+ Domain for dev server: myapp.example.com
35
+
36
+ Generating config...
37
+
38
+ ════════════════════════════════════════════════════════════════════
39
+ STEP 1: Run this on your Ubuntu server
40
+ ════════════════════════════════════════════════════════════════════
41
+
42
+ ┌────────────────────────────────────────────────────────────────────┐
43
+ │ │
44
+ │ curl -fsSL https://tlc.dev/install | bash -s -- \ │
45
+ │ --project "my-awesome-app" \ │
46
+ │ --repo "git@github.com:myorg/my-awesome-app.git" \ │
47
+ │ --domain "myapp.example.com" \ │
48
+ │ --webhook-secret "a1b2c3d4e5f6g7h8" │
49
+ │ │
50
+ └────────────────────────────────────────────────────────────────────┘
51
+ [Copy to clipboard]
52
+
53
+ ════════════════════════════════════════════════════════════════════
54
+ STEP 2: Configure DNS
55
+ ════════════════════════════════════════════════════════════════════
56
+
57
+ Add these DNS records pointing to your server IP:
58
+
59
+ *.myapp.example.com → YOUR_SERVER_IP
60
+ dashboard.myapp.example.com → YOUR_SERVER_IP
61
+
62
+ ════════════════════════════════════════════════════════════════════
63
+ STEP 3: Add GitHub Webhook
64
+ ════════════════════════════════════════════════════════════════════
65
+
66
+ Go to: https://github.com/myorg/my-awesome-app/settings/hooks/new
67
+
68
+ Payload URL: https://dashboard.myapp.example.com/api/webhook
69
+ Content type: application/json
70
+ Secret: a1b2c3d4e5f6g7h8
71
+ Events: Just the push event
72
+
73
+ ════════════════════════════════════════════════════════════════════
74
+ STEP 4: Done!
75
+ ════════════════════════════════════════════════════════════════════
76
+
77
+ Once server setup completes, you'll get:
78
+
79
+ Dashboard: https://dashboard.myapp.example.com
80
+ Main branch: https://main.myapp.example.com
81
+ Feature branches: https://{branch}.myapp.example.com
82
+
83
+ Admin credentials will be shown after server setup.
84
+
85
+ ────────────────────────────────────────────────────────────────────
86
+ Config saved to .tlc.json
87
+ ```
88
+
89
+ ### Process
90
+
91
+ 1. **Read project info** from `.tlc.json` or `package.json`
92
+ 2. **Ask for domain** if not configured
93
+ 3. **Generate webhook secret** (random 16 chars)
94
+ 4. **Output setup command** with all config embedded
95
+ 5. **Save config** to `.tlc.json`
96
+
97
+ ```javascript
98
+ // Config generation
99
+ const config = {
100
+ project: packageJson.name,
101
+ repo: getGitRemoteUrl(),
102
+ domain: userInput.domain,
103
+ webhookSecret: crypto.randomBytes(16).toString('hex')
104
+ };
105
+
106
+ // Generate one-liner
107
+ const command = `curl -fsSL https://tlc.dev/install | bash -s -- \\
108
+ --project "${config.project}" \\
109
+ --repo "${config.repo}" \\
110
+ --domain "${config.domain}" \\
111
+ --webhook-secret "${config.webhookSecret}"`;
112
+ ```
113
+
114
+ ---
115
+
18
116
  ## Architecture
19
117
 
20
118
  ```
21
119
  ┌─────────────────────────────────────────────────────────────┐
22
- VPS Server
120
+ TLC Dev Server
23
121
  │ │
24
122
  │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │
25
123
  │ │ Branch │ │ Branch │ │ Branch │ │
@@ -65,7 +163,7 @@ Commands:
65
163
 
66
164
  TLC Deployment Server Setup
67
165
 
68
- VPS Configuration:
166
+ Dev Server Configuration:
69
167
  Host: deploy.example.com
70
168
  SSH Key: ~/.ssh/id_rsa (detected)
71
169
 
@@ -82,7 +180,7 @@ Domain Configuration:
82
180
  Branches will be: {branch}.project.example.com
83
181
 
84
182
  Configure DNS:
85
- *.project.example.com → VPS_IP
183
+ *.project.example.com → SERVER_IP
86
184
 
87
185
  Admin User:
88
186
  Email: admin@example.com
@@ -183,7 +281,7 @@ app.get('/api/status', requireRole(['admin', 'engineer', 'qa', 'po']));
183
281
 
184
282
  Deploying branch: feat-auth
185
283
 
186
- Pushing to VPS...
284
+ Pushing to dev server...
187
285
  ✓ Code uploaded
188
286
  ✓ Dependencies installed
189
287
  ✓ Tests passed (23/23)
@@ -363,7 +461,7 @@ EXPOSE 3000
363
461
  CMD ["npm", "start"]
364
462
  ```
365
463
 
366
- ### docker-compose.yml (on VPS)
464
+ ### docker-compose.yml (on dev server)
367
465
 
368
466
  ```yaml
369
467
  version: '3.8'
@@ -434,7 +532,7 @@ server {
434
532
  Generating deployment SSH key...
435
533
  ✓ Key generated: ~/.ssh/tlc_deploy
436
534
 
437
- Add this to VPS authorized_keys:
535
+ Add this to server authorized_keys:
438
536
  ssh-rsa AAAA... tlc-deploy
439
537
 
440
538
  Add to GitHub deploy keys (read-only):
@@ -443,7 +541,7 @@ Add to GitHub deploy keys (read-only):
443
541
 
444
542
  ### Environment Variables
445
543
 
446
- Secrets stored on VPS:
544
+ Secrets stored on dev server:
447
545
 
448
546
  ```bash
449
547
  # /opt/tlc-deploy/.env
package/help.md CHANGED
@@ -92,7 +92,8 @@ Launches the visual dashboard. Detects where you are, shows what's next.
92
92
  | `/tlc:export --list` | Show all supported AI tools |
93
93
  | `/tlc:export --detect` | Detect which AI tool is running |
94
94
  | `/tlc:deploy` | Show deployment status |
95
- | `/tlc:deploy start <branch>` | Deploy branch to VPS |
95
+ | `/tlc:deploy setup` | Generate server config + copy-paste install command |
96
+ | `/tlc:deploy start <branch>` | Deploy branch to dev server |
96
97
  | `/tlc:deploy stop <branch>` | Stop branch deployment |
97
98
  | `/tlc:deploy logs <branch>` | View deployment logs |
98
99
  | `/tlc:deploy list` | List all active deployments |
package/init.md CHANGED
@@ -388,6 +388,28 @@ Next steps:
388
388
  - Run /tlc:quick for ad-hoc tasks with tests
389
389
  ```
390
390
 
391
+ ### Step 13: Offer Dev Server Setup
392
+
393
+ After initialization, offer remote dev server:
394
+
395
+ ```
396
+ ───────────────────────────────────────────────────────────────
397
+ Dev Server (Optional)
398
+ ───────────────────────────────────────────────────────────────
399
+
400
+ Set up a shared dev server for team collaboration?
401
+ • Each branch gets its own preview URL
402
+ • QA and PO can access without local setup
403
+ • Slack notifications for deployments
404
+
405
+ [1] Yes, set up dev server
406
+ [2] Skip for now
407
+
408
+ Choice [1/2]: _
409
+ ```
410
+
411
+ **If [1] selected:** Run the dev server setup flow from `/tlc:deploy setup`.
412
+
391
413
  ## Usage
392
414
 
393
415
  ```
package/new-project.md CHANGED
@@ -380,6 +380,37 @@ npx cypress open
380
380
  Ready to build. Run /tlc:plan to create your first phase.
381
381
  ```
382
382
 
383
+ ### Step 10: Offer Dev Server Setup
384
+
385
+ After project is configured, offer remote dev server:
386
+
387
+ ```
388
+ ───────────────────────────────────────────────────────────────
389
+ Dev Server (Optional)
390
+ ───────────────────────────────────────────────────────────────
391
+
392
+ Set up a shared dev server for team collaboration?
393
+ • Each branch gets its own preview URL
394
+ • QA and PO can access without local setup
395
+ • Slack notifications for deployments
396
+
397
+ [1] Yes, set up dev server
398
+ [2] Skip for now
399
+
400
+ Choice [1/2]: _
401
+ ```
402
+
403
+ **If [1] selected:**
404
+
405
+ 1. Ask for server domain
406
+ 2. Generate webhook secret
407
+ 3. Show setup command for server
408
+ 4. Show DNS instructions
409
+ 5. Show GitHub webhook config
410
+ 6. Save config to `.tlc.json`
411
+
412
+ See `/tlc:deploy setup` for full output format.
413
+
383
414
  ## Usage
384
415
 
385
416
  ```
@@ -392,3 +423,4 @@ Interactive flow that:
392
423
  3. Lets you adjust
393
424
  4. Creates roadmap
394
425
  5. Sets up tests
426
+ 6. Offers dev server setup
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tlc-claude-code",
3
- "version": "1.2.10",
3
+ "version": "1.2.12",
4
4
  "description": "TLC - Test Led Coding for Claude Code",
5
5
  "bin": {
6
6
  "tlc": "./bin/tlc.js",
package/tlc.md CHANGED
@@ -256,6 +256,114 @@ Options:
256
256
  Choice [1/2]: _
257
257
  ```
258
258
 
259
+ ## After Project Setup (First Time)
260
+
261
+ After `/tlc:new-project` or `/tlc:init` completes, show dev server option:
262
+
263
+ ```
264
+ TLC v{{VERSION}}
265
+ ═══════════════════════════════════════════════════════════════
266
+
267
+ ✓ Project configured: my-awesome-app
268
+
269
+ ───────────────────────────────────────────────────────────────
270
+ Dev Server Setup (Optional)
271
+ ───────────────────────────────────────────────────────────────
272
+
273
+ Deploy to a shared dev server for team collaboration?
274
+ Each branch gets its own preview URL.
275
+
276
+ [1] Yes, set up dev server → Shows setup instructions
277
+ [2] Skip for now → Continue to project
278
+
279
+ Choice [1/2]: _
280
+ ```
281
+
282
+ **If [1] selected**, show inline setup panel:
283
+
284
+ ```
285
+ ═══════════════════════════════════════════════════════════════
286
+ TLC Dev Server Setup
287
+ ═══════════════════════════════════════════════════════════════
288
+
289
+ Project: my-awesome-app
290
+ Repo: git@github.com:myorg/my-awesome-app.git
291
+
292
+ Enter your server domain: myapp.example.com
293
+
294
+ ───────────────────────────────────────────────────────────────
295
+ STEP 1: Run on Ubuntu Server
296
+ ───────────────────────────────────────────────────────────────
297
+
298
+ ┌─────────────────────────────────────────────────────────────┐
299
+ │ curl -fsSL https://tlc.dev/install | bash -s -- \ │
300
+ │ --project "my-awesome-app" \ │
301
+ │ --repo "git@github.com:myorg/my-awesome-app.git" \ │
302
+ │ --domain "myapp.example.com" \ │
303
+ │ --webhook-secret "x7k9m2p4q8r1s5t3" │
304
+ └─────────────────────────────────────────────────────────────┘
305
+
306
+ ───────────────────────────────────────────────────────────────
307
+ STEP 2: Configure DNS
308
+ ───────────────────────────────────────────────────────────────
309
+
310
+ Point these to your server:
311
+ *.myapp.example.com → SERVER_IP
312
+ dashboard.myapp.example.com → SERVER_IP
313
+
314
+ ───────────────────────────────────────────────────────────────
315
+ STEP 3: Add Webhook to GitHub
316
+ ───────────────────────────────────────────────────────────────
317
+
318
+ URL: https://dashboard.myapp.example.com/api/webhook
319
+ Secret: x7k9m2p4q8r1s5t3
320
+
321
+ ───────────────────────────────────────────────────────────────
322
+ What You Get
323
+ ───────────────────────────────────────────────────────────────
324
+
325
+ Dashboard: https://dashboard.myapp.example.com
326
+ Main branch: https://main.myapp.example.com
327
+ Feature branches: https://{branch}.myapp.example.com
328
+
329
+ ───────────────────────────────────────────────────────────────
330
+
331
+ Config saved to .tlc.json
332
+
333
+ Press Enter to continue...
334
+ ```
335
+
336
+ ### Config Generation
337
+
338
+ When generating the setup command:
339
+
340
+ ```javascript
341
+ // Read from project
342
+ const projectName = tlcJson.project || packageJson.name;
343
+ const repoUrl = execSync('git remote get-url origin').toString().trim();
344
+
345
+ // Ask user for domain
346
+ const domain = await prompt('Enter your server domain:');
347
+
348
+ // Generate secure webhook secret
349
+ const webhookSecret = crypto.randomBytes(8).toString('hex');
350
+
351
+ // Save to .tlc.json
352
+ tlcJson.deploy = {
353
+ domain: domain,
354
+ webhookSecret: webhookSecret,
355
+ dashboardUrl: `https://dashboard.${domain}`,
356
+ configured: false // Set to true after server confirms
357
+ };
358
+
359
+ // Generate command
360
+ const setupCommand = `curl -fsSL https://tlc.dev/install | bash -s -- \\
361
+ --project "${projectName}" \\
362
+ --repo "${repoUrl}" \\
363
+ --domain "${domain}" \\
364
+ --webhook-secret "${webhookSecret}"`;
365
+ ```
366
+
259
367
  ## All Phases Complete
260
368
 
261
369
  ```