- Added priority markers (e.g., "Priority: X of 12") to existing queued TODOs like audit, changelog, profile, scaffold. - Introduced new detailed TODO markdowns for agent integrations: cnotes, git-chglog, gotools, make, pprof, rg, tea. - Enhances planning for grokkit agent tooling ecosystem.
62 lines
1.6 KiB
Markdown
62 lines
1.6 KiB
Markdown
# `grokkit agent` git-chglog integration
|
|
## Priority: 11 of 12
|
|
|
|
**Description**: Wrapper for git-chglog CLI: generates CHANGELOG.md from conventional commits/tags. AI-enhanced parsing/validation.
|
|
|
|
## Problem It Solves
|
|
|
|
changelog.md is AI-from-git-log; git-chglog is standard tool—wrapper adds agent control/previews.
|
|
|
|
## Benefits
|
|
|
|
- **Standard**: git-chglog config + AI tweaks.
|
|
- **Validate**: Check changelog before release.
|
|
- **Safe**: Dry-run, output preview.
|
|
- **Integrate**: "Generate changelog v0.2.0, commit".
|
|
|
|
## Agent Tool Examples
|
|
|
|
```
|
|
grokkit agent "Generate changelog for next release from commits"
|
|
# Grok: git-chglog --next-tag v0.2.0 → preview → append to CHANGELOG.md
|
|
```
|
|
|
|
## High-Level Implementation
|
|
|
|
1. **Detect**: `git-chglog --version`.
|
|
2. **Tool schemas**:
|
|
- `generate(tag: string) → changelog_md`
|
|
- `validate() → issues`
|
|
3. **Wrappers** in `internal/tools/git-chglog.go`:
|
|
```go
|
|
func Generate(ctx context.Context, args map[string]any) (string, error)
|
|
```
|
|
4. **Agent integration**: Release workflows.
|
|
5. **Safety**:
|
|
- --dry-run flag.
|
|
- Config file respect.
|
|
- Config: `[tools.git-chglog.enabled]`.
|
|
|
|
## Flags / Config
|
|
|
|
| Key | Description |
|
|
|-----|-------------|
|
|
| `tools.git-chglog.enabled` | Enable git-chglog |
|
|
|
|
## Implementation Notes
|
|
|
|
- **Commands**: `git-chglog --output CHANGELOG.md --next-tag vX.Y.Z`.
|
|
- **Parsing**: Markdown output.
|
|
- **Errors**: ChglogError.
|
|
- **Tests**: Mock exec.
|
|
- **Effort**: Low (~110 LOC). Complements changelog.md.
|
|
- **Prereq**: git-chglog installed.
|
|
|
|
## ROI
|
|
|
|
**Medium-High**. Release polish:
|
|
|
|
| Stage | Covered |
|
|
|-------|---------|
|
|
| Changelog | **git-chglog** ← new |
|
|
| Release | changelog.md ✓ | |