devdaily-ai 0.1.2 → 0.3.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/README.md +285 -22
- package/README.md.bak +595 -0
- package/dist/index.js +4779 -372
- package/dist/index.js.map +1 -1
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -35,10 +35,15 @@ As developers, we spend too much time on repetitive tasks:
|
|
|
35
35
|
| **🚀 Standup Generator** | Generate daily standup notes from recent commits in 30 seconds |
|
|
36
36
|
| **📄 Smart PR Descriptions** | Auto-generate PR titles and descriptions with commitlint integration |
|
|
37
37
|
| **📅 Weekly Summaries** | Track your impact and accomplishments over time |
|
|
38
|
+
| **🎫 GitHub Issues Context** | Fetches linked issues for richer, context-aware AI summaries |
|
|
39
|
+
| **🖥️ Interactive Dashboard** | Beautiful TUI with keyboard navigation and real-time stats |
|
|
40
|
+
| **🩺 Doctor Command** | Diagnose and auto-fix setup issues with `devdaily doctor --fix` |
|
|
41
|
+
| **⚙️ Customizable Config** | Per-project and global configuration with themes |
|
|
42
|
+
| **⌨️ Shell Integration** | `dd` alias, tab completions for bash/zsh/fish |
|
|
38
43
|
| **🔄 Interactive Workflow** | Preview, edit, and create PRs with interactive menus |
|
|
39
44
|
| **📋 Auto-Copy** | All outputs copied to clipboard automatically |
|
|
40
|
-
| **🎨 Professional Output** | Clean terminal UI with
|
|
41
|
-
| **🔧 Multi-Format** | Export to Markdown, Slack, or plain text
|
|
45
|
+
| **🎨 Professional Output** | Clean terminal UI with ASCII art and beautiful formatting |
|
|
46
|
+
| **🔧 Multi-Format** | Export to Markdown, Slack, JSON, or plain text |
|
|
42
47
|
|
|
43
48
|
## Installation
|
|
44
49
|
|
|
@@ -48,7 +53,26 @@ As developers, we spend too much time on repetitive tasks:
|
|
|
48
53
|
- Git repository
|
|
49
54
|
- GitHub CLI with Copilot extension
|
|
50
55
|
|
|
51
|
-
###
|
|
56
|
+
### Quick Install (Recommended)
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
# Install DevDaily
|
|
60
|
+
npm install -g devdaily-ai
|
|
61
|
+
|
|
62
|
+
# Run doctor to check/fix prerequisites
|
|
63
|
+
devdaily doctor --fix
|
|
64
|
+
|
|
65
|
+
# Set up shell alias and completions
|
|
66
|
+
devdaily init
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
That's it! Now you can use `dd` as a shortcut anywhere.
|
|
70
|
+
|
|
71
|
+
### Manual Setup
|
|
72
|
+
|
|
73
|
+
If you prefer to set up manually:
|
|
74
|
+
|
|
75
|
+
#### 1. Install GitHub CLI (if not already installed)
|
|
52
76
|
|
|
53
77
|
```bash
|
|
54
78
|
# macOS
|
|
@@ -64,14 +88,14 @@ sudo dnf install gh # Fedora/RHEL
|
|
|
64
88
|
|
|
65
89
|
Or visit [cli.github.com](https://cli.github.com) for other installation methods.
|
|
66
90
|
|
|
67
|
-
|
|
91
|
+
#### 2. Install GitHub Copilot CLI Extension
|
|
68
92
|
|
|
69
93
|
```bash
|
|
70
94
|
gh extension install github/gh-copilot
|
|
71
95
|
gh auth login
|
|
72
96
|
```
|
|
73
97
|
|
|
74
|
-
|
|
98
|
+
#### 3. Install DevDaily AI
|
|
75
99
|
|
|
76
100
|
```bash
|
|
77
101
|
npm install -g devdaily-ai
|
|
@@ -80,6 +104,10 @@ npm install -g devdaily-ai
|
|
|
80
104
|
### Verify Installation
|
|
81
105
|
|
|
82
106
|
```bash
|
|
107
|
+
# Check everything is set up correctly
|
|
108
|
+
devdaily doctor
|
|
109
|
+
|
|
110
|
+
# Or manually check version
|
|
83
111
|
devdaily --version
|
|
84
112
|
devdaily --help
|
|
85
113
|
```
|
|
@@ -89,14 +117,20 @@ devdaily --help
|
|
|
89
117
|
Navigate to any git repository and run:
|
|
90
118
|
|
|
91
119
|
```bash
|
|
120
|
+
# First time setup (sets up 'dd' alias and shell completions)
|
|
121
|
+
devdaily init
|
|
122
|
+
|
|
92
123
|
# Generate standup notes
|
|
93
|
-
devdaily standup
|
|
124
|
+
devdaily standup # or: dd s
|
|
94
125
|
|
|
95
126
|
# Generate PR description
|
|
96
|
-
devdaily pr
|
|
127
|
+
devdaily pr # or: dd p
|
|
97
128
|
|
|
98
129
|
# Get weekly summary
|
|
99
|
-
devdaily week
|
|
130
|
+
devdaily week # or: dd w
|
|
131
|
+
|
|
132
|
+
# Open interactive dashboard
|
|
133
|
+
devdaily dash # or: dd d
|
|
100
134
|
```
|
|
101
135
|
|
|
102
136
|
All outputs are automatically copied to your clipboard! 📋
|
|
@@ -209,6 +243,223 @@ Recover work context from past commits (coming soon).
|
|
|
209
243
|
devdaily context --days=7
|
|
210
244
|
```
|
|
211
245
|
|
|
246
|
+
### `devdaily dash`
|
|
247
|
+
|
|
248
|
+
Open the interactive dashboard with keyboard navigation.
|
|
249
|
+
|
|
250
|
+
```bash
|
|
251
|
+
# Open dashboard
|
|
252
|
+
devdaily dash
|
|
253
|
+
|
|
254
|
+
# Short alias
|
|
255
|
+
dd d
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
**Keyboard Shortcuts:**
|
|
259
|
+
|
|
260
|
+
- `s` - Generate standup
|
|
261
|
+
- `p` - Generate PR description
|
|
262
|
+
- `w` - Generate weekly summary
|
|
263
|
+
- `c` - Open configuration
|
|
264
|
+
- `r` - Refresh data
|
|
265
|
+
- `q` - Quit
|
|
266
|
+
|
|
267
|
+
### `devdaily init`
|
|
268
|
+
|
|
269
|
+
Set up DevDaily with shell aliases and completions.
|
|
270
|
+
|
|
271
|
+
```bash
|
|
272
|
+
# Interactive setup
|
|
273
|
+
devdaily init
|
|
274
|
+
|
|
275
|
+
# Global setup (for all projects)
|
|
276
|
+
devdaily init --global
|
|
277
|
+
|
|
278
|
+
# Only set up alias
|
|
279
|
+
devdaily init --alias
|
|
280
|
+
|
|
281
|
+
# Only set up completions
|
|
282
|
+
devdaily init --completions
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
**Sets up:**
|
|
286
|
+
|
|
287
|
+
- Shell alias: `dd` → `devdaily`
|
|
288
|
+
- Tab completions for bash/zsh/fish
|
|
289
|
+
- Configuration file
|
|
290
|
+
|
|
291
|
+
### `devdaily config`
|
|
292
|
+
|
|
293
|
+
Manage DevDaily configuration.
|
|
294
|
+
|
|
295
|
+
```bash
|
|
296
|
+
# Interactive config editor
|
|
297
|
+
devdaily config
|
|
298
|
+
|
|
299
|
+
# Open config in your editor
|
|
300
|
+
devdaily config --edit
|
|
301
|
+
|
|
302
|
+
# Show current config
|
|
303
|
+
devdaily config --show
|
|
304
|
+
|
|
305
|
+
# Show config file path
|
|
306
|
+
devdaily config --path
|
|
307
|
+
|
|
308
|
+
# Reset to defaults
|
|
309
|
+
devdaily config --reset
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
### `devdaily doctor`
|
|
313
|
+
|
|
314
|
+
Check system requirements and diagnose issues.
|
|
315
|
+
|
|
316
|
+
```bash
|
|
317
|
+
# Check all prerequisites
|
|
318
|
+
devdaily doctor
|
|
319
|
+
|
|
320
|
+
# Attempt automatic fixes
|
|
321
|
+
devdaily doctor --fix
|
|
322
|
+
|
|
323
|
+
# Short alias
|
|
324
|
+
devdaily check
|
|
325
|
+
```
|
|
326
|
+
|
|
327
|
+
**Checks:**
|
|
328
|
+
|
|
329
|
+
- ✅ Node.js version (>= 18)
|
|
330
|
+
- ✅ Git installed
|
|
331
|
+
- ✅ GitHub CLI installed
|
|
332
|
+
- ✅ GitHub authentication
|
|
333
|
+
- ✅ Copilot extension installed
|
|
334
|
+
|
|
335
|
+
**Auto-fix capabilities:**
|
|
336
|
+
|
|
337
|
+
- Interactive GitHub authentication
|
|
338
|
+
- Copilot extension installation
|
|
339
|
+
|
|
340
|
+
## GitHub Issues Integration
|
|
341
|
+
|
|
342
|
+
DevDaily automatically fetches GitHub issue context to provide **richer, more meaningful summaries**. When your commits reference issues (e.g., `fix #123`), DevDaily:
|
|
343
|
+
|
|
344
|
+
1. Fetches the issue title and description
|
|
345
|
+
2. Categorizes it (bug, feature, docs, etc.)
|
|
346
|
+
3. Includes the context in AI prompts for better summaries
|
|
347
|
+
|
|
348
|
+
**Benefits:**
|
|
349
|
+
|
|
350
|
+
- PR descriptions explain the _why_ (business value), not just the _what_
|
|
351
|
+
- Weekly summaries highlight impact by referencing completed issues
|
|
352
|
+
- Standup notes include context about what you were working on
|
|
353
|
+
|
|
354
|
+
**Usage:**
|
|
355
|
+
|
|
356
|
+
```bash
|
|
357
|
+
# Normal usage (issues fetched automatically)
|
|
358
|
+
devdaily standup
|
|
359
|
+
|
|
360
|
+
# Skip issue fetching (faster, offline)
|
|
361
|
+
devdaily standup --no-issues
|
|
362
|
+
devdaily pr --no-issues
|
|
363
|
+
devdaily week --no-issues
|
|
364
|
+
```
|
|
365
|
+
|
|
366
|
+
## Configuration
|
|
367
|
+
|
|
368
|
+
DevDaily supports both global and per-project configuration.
|
|
369
|
+
|
|
370
|
+
### Config File Locations
|
|
371
|
+
|
|
372
|
+
- **Global:** `~/.config/devdaily/config.json`
|
|
373
|
+
- **Local:** `.devdailyrc` in your project root
|
|
374
|
+
|
|
375
|
+
### Example Configuration
|
|
376
|
+
|
|
377
|
+
```json
|
|
378
|
+
{
|
|
379
|
+
"version": 1,
|
|
380
|
+
"theme": {
|
|
381
|
+
"primary": "cyan",
|
|
382
|
+
"accent": "magenta"
|
|
383
|
+
},
|
|
384
|
+
"ascii": true,
|
|
385
|
+
"compactMode": false,
|
|
386
|
+
"output": {
|
|
387
|
+
"format": "markdown",
|
|
388
|
+
"copyToClipboard": true,
|
|
389
|
+
"showStats": true
|
|
390
|
+
},
|
|
391
|
+
"projectManagement": {
|
|
392
|
+
"tool": "github",
|
|
393
|
+
"ticketPrefix": "PROJ"
|
|
394
|
+
},
|
|
395
|
+
"standup": {
|
|
396
|
+
"defaultDays": 1
|
|
397
|
+
},
|
|
398
|
+
"pr": {
|
|
399
|
+
"defaultBase": "main"
|
|
400
|
+
},
|
|
401
|
+
"week": {
|
|
402
|
+
"startDay": "monday"
|
|
403
|
+
}
|
|
404
|
+
}
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
### Project Management Integration
|
|
408
|
+
|
|
409
|
+
DevDaily supports multiple project management tools for richer context:
|
|
410
|
+
|
|
411
|
+
```json
|
|
412
|
+
{
|
|
413
|
+
"projectManagement": {
|
|
414
|
+
// Tool: "github" | "jira" | "linear" | "notion" | "none"
|
|
415
|
+
"tool": "jira",
|
|
416
|
+
|
|
417
|
+
// Ticket prefix for extraction from branches/commits
|
|
418
|
+
"ticketPrefix": "PROJ",
|
|
419
|
+
|
|
420
|
+
// Jira settings
|
|
421
|
+
"jira": {
|
|
422
|
+
"baseUrl": "https://yourcompany.atlassian.net",
|
|
423
|
+
"projectKey": "PROJ"
|
|
424
|
+
},
|
|
425
|
+
|
|
426
|
+
// Linear settings
|
|
427
|
+
"linear": {
|
|
428
|
+
"teamKey": "ENG"
|
|
429
|
+
},
|
|
430
|
+
|
|
431
|
+
// Notion settings
|
|
432
|
+
"notion": {
|
|
433
|
+
"databaseId": "your-database-id"
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
```
|
|
438
|
+
|
|
439
|
+
**Environment Variables for Authentication:**
|
|
440
|
+
|
|
441
|
+
```bash
|
|
442
|
+
# Jira
|
|
443
|
+
export JIRA_BASE_URL="https://yourcompany.atlassian.net"
|
|
444
|
+
export JIRA_EMAIL="you@company.com"
|
|
445
|
+
export JIRA_API_TOKEN="your-api-token"
|
|
446
|
+
|
|
447
|
+
# Linear
|
|
448
|
+
export LINEAR_API_KEY="lin_api_xxx"
|
|
449
|
+
|
|
450
|
+
# Notion
|
|
451
|
+
export NOTION_API_KEY="secret_xxx"
|
|
452
|
+
export NOTION_DATABASE_ID="xxx"
|
|
453
|
+
```
|
|
454
|
+
|
|
455
|
+
**Ticket Extraction:**
|
|
456
|
+
|
|
457
|
+
DevDaily automatically extracts ticket IDs from:
|
|
458
|
+
|
|
459
|
+
1. **Branch names**: `feature/PROJ-123-description`, `PROJ-123/fix-bug`
|
|
460
|
+
2. **Commit messages**: `fix: resolve issue PROJ-123`
|
|
461
|
+
3. **Manual input**: `devdaily pr --ticket PROJ-123`
|
|
462
|
+
|
|
212
463
|
## Examples
|
|
213
464
|
|
|
214
465
|
See the [`examples/`](examples/) directory for detailed output samples:
|
|
@@ -272,22 +523,34 @@ npm run build
|
|
|
272
523
|
devdaily-ai/
|
|
273
524
|
├── src/
|
|
274
525
|
│ ├── commands/ # CLI command implementations
|
|
275
|
-
│ │ ├── standup.ts
|
|
276
|
-
│ │ ├── pr.ts
|
|
277
|
-
│ │ ├── week.ts
|
|
278
|
-
│ │
|
|
279
|
-
│ ├──
|
|
526
|
+
│ │ ├── standup.ts # Standup generator
|
|
527
|
+
│ │ ├── pr.ts # PR description generator
|
|
528
|
+
│ │ ├── week.ts # Weekly summary
|
|
529
|
+
│ │ ├── dash.ts # Interactive dashboard
|
|
530
|
+
│ │ ├── init.ts # Shell setup (aliases, completions)
|
|
531
|
+
│ │ ├── config.ts # Configuration management
|
|
532
|
+
│ │ └── context.ts # Context recovery (coming soon)
|
|
533
|
+
│ ├── core/ # Core business logic
|
|
280
534
|
│ │ ├── git-analyzer.ts # Git operations
|
|
281
535
|
│ │ └── copilot.ts # Copilot CLI integration
|
|
282
|
-
│ ├──
|
|
283
|
-
│ │ ├──
|
|
284
|
-
│ │ ├──
|
|
285
|
-
│ │
|
|
286
|
-
│ ├──
|
|
287
|
-
│
|
|
288
|
-
|
|
289
|
-
├──
|
|
290
|
-
├──
|
|
536
|
+
│ ├── ui/ # Terminal UI system
|
|
537
|
+
│ │ ├── renderer.ts # Main UI rendering functions
|
|
538
|
+
│ │ ├── colors.ts # Theme-aware color system
|
|
539
|
+
│ │ ├── ascii.ts # ASCII art and symbols
|
|
540
|
+
│ │ ├── help.ts # Beautiful help screens
|
|
541
|
+
│ │ ├── dashboard.ts # Interactive TUI dashboard
|
|
542
|
+
│ │ └── keyboard.ts # Keyboard input handling
|
|
543
|
+
│ ├── config/ # Configuration system
|
|
544
|
+
│ │ ├── schema.ts # Zod config schema
|
|
545
|
+
│ │ └── index.ts # Config manager
|
|
546
|
+
│ ├── utils/ # Utilities
|
|
547
|
+
│ │ ├── helpers.ts # Date, clipboard utilities
|
|
548
|
+
│ │ └── commitlint.ts # Commit parser
|
|
549
|
+
│ ├── types/ # TypeScript type definitions
|
|
550
|
+
│ └── index.ts # CLI entry point
|
|
551
|
+
├── tests/ # Test files
|
|
552
|
+
├── docs/ # Documentation
|
|
553
|
+
├── examples/ # Usage examples
|
|
291
554
|
└── dist/ # Build output
|
|
292
555
|
```
|
|
293
556
|
|