@eldrforge/kodrdriv 1.2.132 → 1.2.133

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/guide/index.md ADDED
@@ -0,0 +1,212 @@
1
+ # KodrDriv AI Guide
2
+
3
+ This directory contains comprehensive documentation designed to help developers and AI assistants understand, integrate, debug, and extend kodrdriv - an AI-powered Git workflow automation tool.
4
+
5
+ ## What is KodrDriv?
6
+
7
+ KodrDriv automates Git workflows by using AI to generate intelligent commit messages and release notes. It analyzes your code changes, Git history, and project context to create meaningful documentation while automating the entire release process.
8
+
9
+ **Core Value**: Solves the "context switch" problem - when you're deep in code and Git asks you to summarize what you've done, kodrdriv analyzes your changes and writes documentation that reflects your actual work.
10
+
11
+ ## Guide Contents
12
+
13
+ ### Getting Started
14
+ - [**Quick Start**](./quickstart.md): Get kodrdriv working in 5 minutes
15
+ - [**Usage**](./usage.md): Common workflows and command examples
16
+ - [**Integration**](./integration.md): How to integrate kodrdriv into your project
17
+
18
+ ### Understanding KodrDriv
19
+ - [**Architecture**](./architecture.md): System design, packages, and data flow
20
+ - [**Commands**](./commands.md): Complete command reference with examples
21
+ - [**Configuration**](./configuration.md): All configuration options and patterns
22
+
23
+ ### Development & Debugging
24
+ - [**Development**](./development.md): Building, testing, and extending kodrdriv
25
+ - [**Debugging**](./debugging.md): Common issues and troubleshooting strategies
26
+ - [**Testing**](./testing.md): Test structure and how to run tests
27
+
28
+ ### Advanced Topics
29
+ - [**AI System**](./ai-system.md): How AI analysis works (agentic mode, tools, prompts)
30
+ - [**Tree Operations**](./tree-operations.md): Multi-package workflow automation
31
+ - [**Monorepo Guide**](./monorepo.md): Using kodrdriv in monorepos
32
+
33
+ ## Project Structure
34
+
35
+ ```
36
+ kodrdriv/ - Main CLI tool
37
+ ├── src/
38
+ │ ├── commands/ - Command implementations
39
+ │ ├── util/ - Utility functions
40
+ │ ├── content/ - Content generation (diffs, logs)
41
+ │ └── types.ts - TypeScript types
42
+ ├── tests/ - Test suite
43
+ └── docs/ - Detailed documentation
44
+
45
+ ai-service/ - AI integration package
46
+ ├── src/
47
+ │ ├── agentic/ - Tool-calling AI agents
48
+ │ ├── prompts/ - Prompt engineering
49
+ │ └── tools/ - AI tools for analysis
50
+ └── tests/ - AI service tests
51
+
52
+ tree-core/ - Dependency graph analysis
53
+ tree-execution/ - Parallel execution engine
54
+ shared/ - Shared utilities
55
+ git-tools/ - Git operations
56
+ github-tools/ - GitHub API integration
57
+ audio-tools/ - Audio recording & transcription
58
+ ```
59
+
60
+ ## Key Capabilities
61
+
62
+ ### 1. Intelligent Commit Messages
63
+ Uses AI to analyze your code changes and generate meaningful commit messages:
64
+ - Investigates file relationships and dependencies
65
+ - Reviews recent commit history to avoid duplicates
66
+ - Checks related tests to understand behavior changes
67
+ - Suggests splitting unrelated changes into multiple commits
68
+
69
+ ### 2. Comprehensive Release Notes
70
+ Generates detailed release notes from Git history:
71
+ - Analyzes commits and identifies patterns
72
+ - Detects breaking changes automatically
73
+ - Integrates with GitHub issues and milestones
74
+ - Provides context about how changes relate
75
+
76
+ ### 3. Automated Publishing
77
+ Complete release workflow automation:
78
+ - Generates release notes
79
+ - Creates pull request
80
+ - Waits for CI checks
81
+ - Merges to main
82
+ - Creates GitHub release
83
+ - Bumps to next dev version
84
+
85
+ ### 4. Multi-Package Support
86
+ Manages monorepos with complex dependencies:
87
+ - Analyzes dependency graphs
88
+ - Executes commands in correct order
89
+ - Parallel execution where possible
90
+ - Recovery from failures
91
+
92
+ ### 5. Audio-Driven Workflows
93
+ Voice-powered development:
94
+ - Record audio for commit context
95
+ - Transcribe review notes
96
+ - Voice-driven issue creation
97
+
98
+ ## Quick Reference
99
+
100
+ ### Essential Commands
101
+
102
+ ```bash
103
+ # Generate commit message
104
+ kodrdriv commit --sendit
105
+
106
+ # Generate release notes
107
+ kodrdriv release
108
+
109
+ # Publish a release
110
+ kodrdriv publish
111
+
112
+ # Multi-package operations
113
+ kodrdriv tree publish --parallel
114
+
115
+ # With context files
116
+ kodrdriv release --context-files IMPLEMENTATION.md
117
+
118
+ # With self-reflection
119
+ kodrdriv commit --self-reflection
120
+ ```
121
+
122
+ ### Essential Configuration
123
+
124
+ ```json
125
+ {
126
+ "model": "gpt-4o",
127
+ "outputDirectory": "output",
128
+ "commit": {
129
+ "selfReflection": true,
130
+ "maxAgenticIterations": 10
131
+ },
132
+ "release": {
133
+ "selfReflection": true,
134
+ "maxAgenticIterations": 30
135
+ }
136
+ }
137
+ ```
138
+
139
+ ### Environment Variables
140
+
141
+ ```bash
142
+ export OPENAI_API_KEY="your-key" # Required
143
+ export GITHUB_TOKEN="your-token" # For publish
144
+ ```
145
+
146
+ ## Key Features
147
+
148
+ - **AI Analysis (Always On)**: Uses tool-calling to investigate changes before generating content
149
+ - **Context Files**: Pass documentation files as context (`--context-files`)
150
+ - **Self-Reflection**: Generate reports showing tool effectiveness and analysis quality
151
+ - **GitHub Integration**: Issues, milestones, pull requests, releases
152
+ - **Flexible Configuration**: Hierarchical config with command-line overrides
153
+ - **Stop-Context Filtering**: Automatically remove sensitive information
154
+ - **Dry Run Mode**: Preview everything before execution
155
+
156
+ ## Implementation Guides in Root Directory
157
+
158
+ The `/Users/tobrien/gitw/calenvarek/` directory contains extensive implementation documentation:
159
+
160
+ ### Recent Improvements
161
+ - `SELF-REFLECTION-IMPROVEMENTS.md` - File location and prompt improvements
162
+ - `CONTEXT-FILES-AND-HUMAN-PROMPTS.md` - Context files and anti-slop prompts
163
+ - `AGENTIC-ONLY-SIMPLIFICATION.md` - Simplified to always use AI analysis
164
+ - `SESSION-SUMMARY-DEC-31.md` - Complete overview of recent changes
165
+
166
+ ### AI System
167
+ - `AI-SERVICE-INTEGRATION-COMPLETE.md` - AI service extraction and integration
168
+ - `AGENTIC-RELEASE-NOTES-COMPLETE.md` - Agentic release notes implementation
169
+ - `AGENTIC-COMMIT-IMPROVEMENTS.md` - Commit generation improvements
170
+ - `AI-FRIENDLY-LOGGING-GUIDE.md` - Logging best practices
171
+
172
+ ### Architecture & Features
173
+ - `TREE-TOOLKIT-COMPLETE.md` - Tree operations extraction
174
+ - `PARALLEL-PUBLISH-QUICK-REFERENCE.md` - Parallel execution guide
175
+ - `RIOTPROMPT-COMPLETE-SUMMARY.md` - Prompt engineering system
176
+ - `MONOREPO-PUBLISH-IMPROVEMENTS.md` - Monorepo workflows
177
+
178
+ ### Debugging & Fixes
179
+ - `PARALLEL-PUBLISH-DEBUGGING-GUIDE.md` - Troubleshooting parallel execution
180
+ - `RECOVERY-FIXES.md` - Error recovery mechanisms
181
+ - `CHECKPOINT-RECOVERY-FIX.md` - Checkpoint system details
182
+
183
+ ## For AI Assistants
184
+
185
+ If you're an AI helping someone use kodrdriv:
186
+
187
+ 1. **Start with** [`quickstart.md`](./quickstart.md) to get the basics
188
+ 2. **Read** [`integration.md`](./integration.md) to understand how to integrate into projects
189
+ 3. **Reference** [`commands.md`](./commands.md) for specific command details
190
+ 4. **Check** [`debugging.md`](./debugging.md) when troubleshooting
191
+ 5. **Review** root directory `.md` files for implementation details
192
+
193
+ ## For Developers
194
+
195
+ If you're integrating kodrdriv:
196
+
197
+ 1. **Install**: `npm install -g @eldrforge/kodrdriv`
198
+ 2. **Configure**: `kodrdriv --init-config`
199
+ 3. **Try it**: `kodrdriv commit --dry-run`
200
+ 4. **Customize**: Edit `.kodrdriv/config.yaml`
201
+ 5. **Automate**: Add to your CI/CD pipeline
202
+
203
+ ## Next Steps
204
+
205
+ - 🚀 [Get started in 5 minutes](./quickstart.md)
206
+ - 📖 [Learn common workflows](./usage.md)
207
+ - 🔧 [Integrate into your project](./integration.md)
208
+ - 🐛 [Troubleshoot issues](./debugging.md)
209
+ - 🧠 [Understand the AI system](./ai-system.md)
210
+
211
+ **Need help?** Start with the guide that matches your goal, and refer to the implementation documents in the root directory for detailed technical information.
212
+
@@ -0,0 +1,507 @@
1
+ # Integration Guide
2
+
3
+ How to integrate kodrdriv into your project.
4
+
5
+ ## Integration Patterns
6
+
7
+ ### 1. Basic Git Workflow Integration
8
+
9
+ Replace manual commit messages with AI-generated ones:
10
+
11
+ **Before**:
12
+ ```bash
13
+ git add .
14
+ git commit -m "fix: update user auth"
15
+ ```
16
+
17
+ **After**:
18
+ ```bash
19
+ git add .
20
+ kodrdriv commit --sendit
21
+ ```
22
+
23
+ ### 2. CI/CD Integration
24
+
25
+ #### GitHub Actions Example
26
+
27
+ ```yaml
28
+ name: Release
29
+ on:
30
+ push:
31
+ branches: [main]
32
+
33
+ jobs:
34
+ release:
35
+ runs-on: ubuntu-latest
36
+ steps:
37
+ - uses: actions/checkout@v4
38
+ - uses: actions/setup-node@v4
39
+ with:
40
+ node-version: '20'
41
+
42
+ - name: Install kodrdriv
43
+ run: npm install -g @eldrforge/kodrdriv
44
+
45
+ - name: Generate Release Notes
46
+ env:
47
+ OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
48
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
49
+ run: |
50
+ kodrdriv release --context-files CHANGELOG.md
51
+
52
+ - name: Create Release
53
+ env:
54
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
55
+ run: |
56
+ # Release notes are in output/RELEASE_NOTES.md
57
+ gh release create v$(node -p "require('./package.json').version") \
58
+ --notes-file output/RELEASE_NOTES.md
59
+ ```
60
+
61
+ #### GitLab CI Example
62
+
63
+ ```yaml
64
+ release:
65
+ stage: deploy
66
+ script:
67
+ - npm install -g @eldrforge/kodrdriv
68
+ - kodrdriv release
69
+ - # Use generated notes in output/RELEASE_NOTES.md
70
+ only:
71
+ - main
72
+ ```
73
+
74
+ ### 3. Pre-Commit Hook Integration
75
+
76
+ Automatically generate commit messages:
77
+
78
+ **.git/hooks/prepare-commit-msg**:
79
+ ```bash
80
+ #!/bin/bash
81
+ # Generate commit message with kodrdriv
82
+ if [ -z "$2" ]; then
83
+ # Only for new commits (not amend)
84
+ kodrdriv commit --cached > "$1"
85
+ fi
86
+ ```
87
+
88
+ Make it executable:
89
+ ```bash
90
+ chmod +x .git/hooks/prepare-commit-msg
91
+ ```
92
+
93
+ ### 4. npm Scripts Integration
94
+
95
+ Add to `package.json`:
96
+
97
+ ```json
98
+ {
99
+ "scripts": {
100
+ "commit": "kodrdriv commit --sendit",
101
+ "release:notes": "kodrdriv release",
102
+ "release:publish": "kodrdriv publish",
103
+ "precommit": "kodrdriv precommit"
104
+ }
105
+ }
106
+ ```
107
+
108
+ Usage:
109
+ ```bash
110
+ npm run commit
111
+ npm run release:publish
112
+ ```
113
+
114
+ ## Project Setup
115
+
116
+ ### For Single Package Projects
117
+
118
+ 1. **Install kodrdriv**:
119
+ ```bash
120
+ npm install --save-dev @eldrforge/kodrdriv
121
+ # or globally
122
+ npm install -g @eldrforge/kodrdriv
123
+ ```
124
+
125
+ 2. **Initialize configuration**:
126
+ ```bash
127
+ kodrdriv --init-config
128
+ ```
129
+
130
+ 3. **Configure for your project**:
131
+ ```yaml
132
+ # .kodrdriv/config.yaml
133
+ model: gpt-4o
134
+ outputDirectory: output
135
+
136
+ commit:
137
+ sendit: false # Require manual confirmation
138
+ selfReflection: true # Generate analysis reports
139
+
140
+ release:
141
+ focus: "user-facing changes and breaking changes"
142
+ maxAgenticIterations: 30
143
+ ```
144
+
145
+ 4. **Test it**:
146
+ ```bash
147
+ kodrdriv commit --dry-run
148
+ kodrdriv release --dry-run
149
+ ```
150
+
151
+ ### For Monorepo Projects
152
+
153
+ 1. **Install in root**:
154
+ ```bash
155
+ cd /path/to/monorepo
156
+ npm install -g @eldrforge/kodrdriv
157
+ ```
158
+
159
+ 2. **Configure tree operations**:
160
+ ```yaml
161
+ # .kodrdriv/config.yaml
162
+ tree:
163
+ directories:
164
+ - packages/core
165
+ - packages/ui
166
+ - packages/utils
167
+ parallel: true
168
+ maxConcurrency: 4
169
+ ```
170
+
171
+ 3. **Use tree commands**:
172
+ ```bash
173
+ # Commit across all packages
174
+ kodrdriv tree commit
175
+
176
+ # Publish all in correct order
177
+ kodrdriv tree publish --parallel
178
+
179
+ # Link packages for development
180
+ kodrdriv tree link
181
+ ```
182
+
183
+ ## Integration with Existing Tools
184
+
185
+ ### With Conventional Commits
186
+
187
+ Kodrdriv generates conventional commit format by default:
188
+
189
+ ```bash
190
+ # Output follows conventional format
191
+ kodrdriv commit
192
+ # → feat: add user authentication
193
+ # → fix: resolve memory leak in cache
194
+ # → chore: update dependencies
195
+ ```
196
+
197
+ ### With Semantic Release
198
+
199
+ Use kodrdriv to generate release notes, then use semantic-release for publishing:
200
+
201
+ ```json
202
+ {
203
+ "scripts": {
204
+ "release:notes": "kodrdriv release",
205
+ "release:semantic": "semantic-release"
206
+ }
207
+ }
208
+ ```
209
+
210
+ ### With Changesets
211
+
212
+ Generate release notes that complement changesets:
213
+
214
+ ```bash
215
+ # Generate comprehensive notes
216
+ kodrdriv release --context-files .changeset/*.md
217
+
218
+ # Use alongside changesets
219
+ npx changeset version
220
+ kodrdriv release
221
+ npx changeset publish
222
+ ```
223
+
224
+ ### With Lerna/nx
225
+
226
+ Use kodrdriv's tree operations:
227
+
228
+ ```bash
229
+ # Instead of lerna run
230
+ kodrdriv tree --cmd "npm test"
231
+
232
+ # Instead of lerna publish
233
+ kodrdriv tree publish --parallel
234
+ ```
235
+
236
+ ## Configuration Patterns
237
+
238
+ ### Minimal Configuration
239
+
240
+ ```yaml
241
+ model: gpt-4o-mini
242
+ outputDirectory: output
243
+ ```
244
+
245
+ ### Standard Configuration
246
+
247
+ ```yaml
248
+ model: gpt-4o
249
+ outputDirectory: output
250
+
251
+ commit:
252
+ selfReflection: true
253
+ add: false
254
+
255
+ release:
256
+ focus: "breaking changes and new features"
257
+ selfReflection: true
258
+
259
+ publish:
260
+ sendit: false
261
+ targetBranch: main
262
+ ```
263
+
264
+ ### Advanced Configuration
265
+
266
+ ```yaml
267
+ model: gpt-4o
268
+ openaiReasoning: medium
269
+ outputDirectory: output
270
+
271
+ contextDirectories:
272
+ - docs
273
+ - .github
274
+
275
+ commit:
276
+ selfReflection: true
277
+ maxAgenticIterations: 15
278
+ allowCommitSplitting: true
279
+ contextFiles:
280
+ - docs/ARCHITECTURE.md
281
+
282
+ release:
283
+ selfReflection: true
284
+ maxAgenticIterations: 40
285
+ focus: |
286
+ Emphasize breaking changes and migration steps.
287
+ Target audience: developers using this library.
288
+
289
+ publish:
290
+ targetBranch: main
291
+ mergeMethod: squash
292
+ checksTimeout: 3600000
293
+ waitForReleaseWorkflows: true
294
+
295
+ tree:
296
+ parallel: true
297
+ maxConcurrency: 4
298
+ directories:
299
+ - packages/core
300
+ - packages/ui
301
+ ```
302
+
303
+ ## Team Workflows
304
+
305
+ ### Small Team (1-5 developers)
306
+
307
+ ```bash
308
+ # Each developer runs locally
309
+ kodrdriv commit --sendit
310
+
311
+ # Releases done by maintainer
312
+ kodrdriv publish --interactive
313
+ ```
314
+
315
+ ### Medium Team (5-20 developers)
316
+
317
+ ```yaml
318
+ # .kodrdriv/config.yaml
319
+ commit:
320
+ sendit: false # Require review
321
+ interactive: true # Allow editing
322
+
323
+ release:
324
+ interactive: true # Team review before publish
325
+ noMilestones: false # Use GitHub milestones
326
+ ```
327
+
328
+ ### Large Team (20+ developers)
329
+
330
+ ```yaml
331
+ # Stricter controls
332
+ commit:
333
+ sendit: false
334
+ skipFileCheck: false # Prevent accidental commits
335
+
336
+ publish:
337
+ sendit: false # Manual approval required
338
+ requireEnvVars:
339
+ - GITHUB_TOKEN
340
+ - OPENAI_API_KEY
341
+ - RELEASE_APPROVER # Custom check
342
+ ```
343
+
344
+ ## Environment-Specific Configuration
345
+
346
+ ### Development
347
+
348
+ ```yaml
349
+ # .kodrdriv/config.dev.yaml
350
+ dryRun: true
351
+ verbose: true
352
+ model: gpt-4o-mini
353
+ ```
354
+
355
+ ### Production
356
+
357
+ ```yaml
358
+ # .kodrdriv/config.prod.yaml
359
+ dryRun: false
360
+ model: gpt-4o
361
+ release:
362
+ selfReflection: true
363
+ publish:
364
+ sendit: true
365
+ skipUserConfirmation: true
366
+ ```
367
+
368
+ Load with:
369
+ ```bash
370
+ kodrdriv commit --config-dir .kodrdriv/config.prod.yaml
371
+ ```
372
+
373
+ ## Migration from Other Tools
374
+
375
+ ### From semantic-release
376
+
377
+ **Before**:
378
+ ```json
379
+ {
380
+ "release": {
381
+ "plugins": ["@semantic-release/commit-analyzer"]
382
+ }
383
+ }
384
+ ```
385
+
386
+ **After**: Remove semantic-release config, use kodrdriv:
387
+ ```bash
388
+ kodrdriv publish
389
+ ```
390
+
391
+ ### From conventional-changelog
392
+
393
+ **Before**:
394
+ ```bash
395
+ conventional-changelog -p angular -i CHANGELOG.md -s
396
+ ```
397
+
398
+ **After**:
399
+ ```bash
400
+ kodrdriv release
401
+ # Notes in output/RELEASE_NOTES.md
402
+ ```
403
+
404
+ ### From manual process
405
+
406
+ **Before**:
407
+ ```bash
408
+ git log --oneline > notes.txt
409
+ # Manually write release notes
410
+ gh release create v1.0.0 --notes "..."
411
+ ```
412
+
413
+ **After**:
414
+ ```bash
415
+ kodrdriv publish # Does everything
416
+ ```
417
+
418
+ ## Verification
419
+
420
+ ### Test Your Integration
421
+
422
+ 1. **Dry Run Test**:
423
+ ```bash
424
+ kodrdriv commit --dry-run
425
+ kodrdriv release --dry-run
426
+ kodrdriv publish --dry-run
427
+ ```
428
+
429
+ 2. **Check Output**:
430
+ ```bash
431
+ ls output/
432
+ # Should see timestamped files
433
+ ```
434
+
435
+ 3. **Verify Configuration**:
436
+ ```bash
437
+ kodrdriv --check-config
438
+ ```
439
+
440
+ 4. **Test with Real Changes**:
441
+ ```bash
442
+ echo "test" >> test.txt
443
+ git add test.txt
444
+ kodrdriv commit --verbose
445
+ git reset HEAD test.txt
446
+ rm test.txt
447
+ ```
448
+
449
+ ## Common Integration Patterns
450
+
451
+ ### Pattern 1: Manual Commit, Auto Release
452
+
453
+ ```yaml
454
+ commit:
455
+ sendit: false # Review commits manually
456
+
457
+ release:
458
+ interactive: false # Auto-generate notes
459
+
460
+ publish:
461
+ sendit: true # Fully automated
462
+ ```
463
+
464
+ ### Pattern 2: Auto Commit, Manual Release
465
+
466
+ ```yaml
467
+ commit:
468
+ sendit: true # Auto-commit
469
+
470
+ release:
471
+ interactive: true # Review release notes
472
+
473
+ publish:
474
+ sendit: false # Manual approval
475
+ ```
476
+
477
+ ### Pattern 3: Full Automation
478
+
479
+ ```yaml
480
+ commit:
481
+ sendit: true
482
+
483
+ release:
484
+ interactive: false
485
+
486
+ publish:
487
+ sendit: true
488
+ skipUserConfirmation: true
489
+ ```
490
+
491
+ ## Next Steps
492
+
493
+ - **[Usage Guide](./usage.md)** - Learn common workflows
494
+ - **[Commands Reference](./commands.md)** - All available commands
495
+ - **[Configuration Guide](./configuration.md)** - Advanced configuration options
496
+ - **[Debugging Guide](./debugging.md)** - Troubleshooting help
497
+
498
+ ## Quick Tips
499
+
500
+ 1. **Always start with --dry-run** to preview
501
+ 2. **Use --verbose** to see what's happening
502
+ 3. **Enable selfReflection** to improve quality
503
+ 4. **Pass --context-files** for better context
504
+ 5. **Check output/** directory for generated files
505
+
506
+ Your kodrdriv integration is complete! 🎉
507
+