Update CHANGELOG.md with details on the new workon command, including added features for AI-powered workflows, git branching, flags, config options, IDE integration, and unit tests. Also includes changes to command handling, documentation refinements, and fixes for error handling and tests.
310 lines
15 KiB
Markdown
310 lines
15 KiB
Markdown
## [v0.4.0] - 2026-03-31
|
|
|
|
Workon command arrives: because who needs manual todos when AI can branch out for you?
|
|
|
|
### Added
|
|
- Add workon command for automating todo/fix workflows.
|
|
- Add AI-powered work plan generation using Grok.
|
|
- Add git branching for features and fixes.
|
|
- Add todo package with bootstrap for directory structure.
|
|
- Add flags for fix mode (-f), complete mode (-c), and custom messages (-M).
|
|
- Add config options for workon.model and workon.ide.
|
|
- Add IDE integration to open on task start.
|
|
- Add unit tests for commands, config, git, linter, logger, prompts, todo, and workon.
|
|
- Add prompts loading tests with fallback logic.
|
|
- Add todo/queued/workon.md documentation.
|
|
- Add workon guide to README and user docs.
|
|
|
|
### Changed
|
|
- Update workon command to handle modes: todo, fix, complete.
|
|
- Change custom message flag from -m to -M.
|
|
- Implement branch prefixing with feature/ or fix/.
|
|
- Update README index on task completion.
|
|
- Refine error handling, logging, and colorized output.
|
|
- Replace placeholder with actual Grok client calls.
|
|
- Remove temporary stubs and add TODOs for integrations.
|
|
- Reorder queued tasks and update workon descriptions in docs.
|
|
- Update workon.md to use 'todo item' instead of 'feature'.
|
|
- Clarify -c flag usage and exclusivity in docs.
|
|
- Refine workon command steps, usage, and benefits in docs.
|
|
- Move workon todo item from queued to doing, then completed.
|
|
- Mark recipe feature as completed in todo structure.
|
|
- Bump version to 0.3.9 in README and scripts (prior release).
|
|
- Update expected git diff ranges in tests.
|
|
|
|
### Fixed
|
|
- Discard errors explicitly from git commands in tests to satisfy linters.
|
|
## [v0.3.9] - 2026-03-31
|
|
|
|
Another tiny step forward, now with origin-al git flair.
|
|
|
|
### Changed
|
|
- Bump version to 0.3.9 in README.md.
|
|
- Update version references in Bash and PowerShell installation scripts in README.md.
|
|
- Update expected git diff ranges in tests to include origin prefix.
|
|
## [v0.3.8] - 2026-03-31
|
|
|
|
Bumping to v0.3.8 with git tweaks and doc updates.
|
|
|
|
### Added
|
|
- Add changelog entry for v0.3.7.
|
|
|
|
### Changed
|
|
- Update version to 0.3.8 in README installation instructions.
|
|
- Update bash and powershell scripts to reference new release version.
|
|
- Update git diff command to prefer remote origin/base branch.
|
|
- Fall back to local base branch if remote diff fails or is empty.
|
|
## [v0.3.7] - 2026-03-31
|
|
|
|
Version v0.3.7: Patchin' up git diffs because exit codes shouldn't be drama queens.
|
|
|
|
### Added
|
|
- Introduce `gitDiff` variable as a mockable wrapper for `git.Diff`.
|
|
- Introduce git.Diff function that uses CombinedOutput and treats exit code 1 as success.
|
|
|
|
### Changed
|
|
- Update tests to use `withMockGitDiff` for injecting diff mocks.
|
|
- Tweak flag description for clarity.
|
|
- Update prdescribe command to use git.Diff and trim whitespace when checking for empty diffs.
|
|
- Enhance prdescribe output to include base branch in the status message.
|
|
- Update installation and download scripts in README.md to reference v0.3.7.
|
|
|
|
### Fixed
|
|
- Improve diff handling to tolerate exit code 1.
|
|
## [v0.3.6] - 2026-03-30
|
|
|
|
### Fixed
|
|
- Handle fprintf error in version output by wrapping with error check.
|
|
|
|
### Changed
|
|
- Promote "Logging" to H2 and adjust subheadings to H3 in README.
|
|
- Bump version references from 0.3.3 to 0.3.5 in installation scripts.
|
|
- Convert plain text sections to Markdown headings in README.
|
|
- Add v0.3.5 entry to changelog documenting Markdown support and Windows tweaks.
|
|
- Add v0.3.4 entry to changelog for Windows support.
|
|
## [v0.3.5] - 2026-03-30
|
|
|
|
Now with Markdown editing flair and Windows install tweaks!
|
|
|
|
### Added
|
|
- Add support for editing Markdown files using a tailored technical writer prompt.
|
|
- Add PowerShell quick install snippet to release notes.
|
|
- Include PowerShell install script in release build artifacts.
|
|
- Add entry for v0.3.4 to changelog with Windows support details.
|
|
|
|
### Changed
|
|
- Simplify logging setup and remove unnecessary comments in analyze command.
|
|
- Improve directory skipping logic in source file discovery.
|
|
- Add error handling and include Git remotes in project context building.
|
|
- Simplify removal of "last modified" comments by direct slice append.
|
|
- Update MIME type detection to include .ps1 files as text/plain.
|
|
- Remove unnecessary comments from release workflow script.
|
|
- Ensure changelog entries include cross-platform consistency notes.
|
|
|
|
### Fixed
|
|
- Implement removal of "last modified" comments in edit command by filtering lines case-insensitively.
|
|
- Add missing newline at end of edited files to avoid Git warnings.
|
|
- Adjust response cleaning for Markdown files and use CleanCodeResponse for code files.
|
|
- Remove nolint comment and unnecessary line skipping in comment removal function.
|
|
## [v0.3.4] - 2026-03-30
|
|
|
|
Windows users, your PowerShell dreams just came true.
|
|
|
|
### Added
|
|
- Introduced grokkit-install.ps1 for Windows with auto-detection, checksum verification, and safe installation.
|
|
- Added one-line and download-first install methods for Bash and PowerShell in README.
|
|
- Added Windows-specific notes, tables, and examples in README.
|
|
|
|
### Changed
|
|
- Updated README formatting for improved readability.
|
|
- Ensured cross-platform consistency in installation instructions.
|
|
## [v0.3.2] - 2026-03-30
|
|
|
|
Polishing the install script and catching up on past changelog entries.
|
|
|
|
### Added
|
|
- Add debug echo statements for download and extraction.
|
|
- Add changelog entry for v0.3.1, documenting additions like .grokkit directory creation.
|
|
- Add changelog entry for v0.3.1, documenting changes like default output path, project analysis movement, analysis refinements, and v0.3.0 changelog update.
|
|
|
|
### Changed
|
|
- Adjust asset filename to include 'v' prefix for version.
|
|
- Comment out checksum download and verification.
|
|
- Update binary naming and extraction handling.
|
|
- Comment out temp dir cleanup trap.
|
|
|
|
### Fixed
|
|
- Fix quoting in case statements and echo commands.
|
|
## [v0.3.1] - 2026-03-28
|
|
|
|
### Added
|
|
- Add directory creation for .grokkit to ensure it exists before writing.
|
|
|
|
### Changed
|
|
- Change default output path to .grokkit/analysis.md for project-local storage.
|
|
- Move project analysis from analyze.md to .grokkit/analysis.md.
|
|
- Refine project analysis with more accurate tech stack, directory structure, function references, and learning path details.
|
|
- Update CHANGELOG.md with entry for v0.3.0 release.
|
|
## [v0.3.0] - 2026-03-28
|
|
|
|
Grokkit levels up with deep project analysis—because who doesn't love a good codebase dissection?
|
|
|
|
### Added
|
|
- Add "analyze" command for educational codebase analysis using AI prompts.
|
|
- Add Go-specific analysis prompt in .grokkit/prompts/go.md.
|
|
- Add feature specification for "analyze" command in todo/queued.
|
|
- Add project name inference in Go analysis prompts.
|
|
- Add documentation page for "analyze" command in docs/user-guide.
|
|
- Add link to "analyze" guide in index.md.
|
|
- Add project analysis Markdown report example in docs/analyze.md.
|
|
- Add Rexx language detection with extensions .rx, .rex, .rex, .rexlib, .rexx, .cls.
|
|
- Add empty Linters array for Rexx in internal/linter/linter.go.
|
|
- Add "none" linter configuration for Rexx language.
|
|
- Add internal/linter/language.go for primary language detection.
|
|
- Add internal/prompts/analyze.go for loading analysis prompts.
|
|
- Add error handling for confirmation input in analyze command.
|
|
|
|
### Changed
|
|
- Update Go analysis prompt for clarity, structure, and educational focus.
|
|
- Update cmd/analyze.go to include detected language in AI prompt.
|
|
- Update analyze command to infer project name from directory or go.mod.
|
|
- Enhance prompt formatting with bold text and rephrased sections.
|
|
- Enhance discoverSourceFiles to skip noise directories like "build" and "dist".
|
|
- Refine buildProjectContext with better labeling and git remote handling.
|
|
- Update DetectPrimaryLanguage to normalize "C/C++" and "C++" to "c".
|
|
- Revise function comments and internal comments in DetectPrimaryLanguage.
|
|
- Remove redundant comment on finding most common language.
|
|
- Change default output filename in analyze command from analyze.md to analysis.md.
|
|
- Update .grokkit/recipes/result-refactor.md.
|
|
- Move analyze-command task file from queued to completed.
|
|
- Update feature spec for "analyze" command with educational details and prompt discovery.
|
|
- Revise acceptance criteria, implementation plan, CLI usage, and flags in spec.
|
|
- Switch to package-level logger functions in analyze command.
|
|
- Update git.IsRepo to take no arguments.
|
|
- Simplify linter language detection comments.
|
|
- Adjust Grok client creation to NewClient().StreamSilent.
|
|
- Refine comments in linter and string adjustments for clarity.
|
|
- Implement DetectPrimaryLanguage with counting logic and Go bias.
|
|
- Enhance LoadAnalysisPrompt with better language handling and fallbacks.
|
|
- Expand cmd/analyze.go to discover files, detect language, load prompts, and generate reports.
|
|
- Integrate analyzeCmd into root command.
|
|
|
|
### Fixed
|
|
- Remove misplaced rootCmd.AddCommand(analyzeCmd) from cmd/analyze.go init function.
|
|
- Fix config.GetModel to use command name and flag in analyze command.
|
|
- Update safety check to use package-level logger without .Get().
|
|
- Remove unnecessary imports in linter.
|
|
## [v0.2.0] - 2026-03-08
|
|
|
|
Version 0.2.0: Recipes are cooking—now with extra safety and a dash of refactoring flair.
|
|
|
|
### Added
|
|
- Add tests for recipe package covering loading, parameters, safety, and patches.
|
|
- Add read-only shell support with user confirmation and whitelisting.
|
|
- Add configurable safe shell commands from YAML with fallback.
|
|
- Add project exploration step using safe read-only commands.
|
|
- Add numeric argument support in read-only shell commands.
|
|
- Add logging for safe commands config loading.
|
|
- Add smart defaults for package_path in file discovery.
|
|
- Add --param flag for passing key=value parameters to recipes.
|
|
- Add refactorJSONs to collect JSON from refactor steps.
|
|
- Add one-file-at-a-time refactoring handler.
|
|
- Add file discovery and special step handling in runner.
|
|
- Add apply/patch step handling with code extraction and application.
|
|
- Add LLM-powered recipe execution with parameters and streaming.
|
|
- Add recipe run command with path resolution.
|
|
- Add recipe system for Result[T] refactoring.
|
|
- Add --base flag to prdescribe for custom base branch.
|
|
- Add admin tool entry to TODO.
|
|
|
|
### Changed
|
|
- Change coverage badge from 68% to 54% and update quality section.
|
|
- Lower CI coverage gate from 65% to 50%.
|
|
- Remove t.Parallel() from cmd tests modifying global state.
|
|
- Refactor README and docs structure into user-guide and developer-guide.
|
|
- Remove root command addition from query init.
|
|
- Reorganize commit commands and add sections for new features.
|
|
- Enhance shell command security with global safe list and prefix checking.
|
|
- Update allowed shell command validation to exact match or space-separated.
|
|
- Tighten trigger conditions for read-only shell steps.
|
|
- Expand safe shell commands to include GNU utilities and test runners.
|
|
- Consolidate resolveWorkDir and remove resolvePackagePath.
|
|
- Rename and expand resolvePackagePath to resolveWorkDir.
|
|
- Update .gitignore to add .grok/ and *.patch ignores.
|
|
- Add template recipe and update final summary heading.
|
|
- Make search pattern configurable in file discovery.
|
|
- Make file discovery generic using recipe metadata.
|
|
- Improve boolean param handling and refine project root detection.
|
|
- Change default package_path to internal/git.
|
|
- Switch refactor step to strict JSON output.
|
|
- Update regex for Grok output matching.
|
|
- Improve regex flexibility and simplify patch creation.
|
|
- Enhance parsing for multi-line step content.
|
|
- Simplify apply step to dry-run only.
|
|
- Update result-refactor recipe for broader package path.
|
|
- Improve recipe loading and execution logic.
|
|
- Clean up comments, error handling, and output formatting.
|
|
- Simplify golangci-lint configuration.
|
|
- Remove priorities from queued TODO items.
|
|
- Remove auto-complete TODO workflow.
|
|
|
|
### Fixed
|
|
- Fix unsafe shell command error message.
|
|
- Fix recipe by adding error handling to unified patch creation.
|
|
- Fix import path and add error handling for user input in cmd/recipe.
|
|
- Fix testgen to distinguish C and C++ based on file extension.
|
|
- Fix regex to match Grok's current output style.
|
|
## [v0.1.9] - 2026-03-04
|
|
|
|
Grokkit gets a quick-query upgrade—because who has time for chit-chat?
|
|
|
|
### Added
|
|
- Implement `query` command in cmd/query.go for non-interactive Grok queries focused on programming.
|
|
- Add wordy flag for detailed responses in query command.
|
|
- Add .grok/settings.json with fast model configuration.
|
|
- Set default model for query in config.go.
|
|
- Add entry for query command to commands list in README.
|
|
- Create new section in README with query command usage examples and features.
|
|
- Add spec for grokkit non-interactive query tool in TODO.
|
|
- Add detailed description, examples, and ROI for `query` feature in TODO.
|
|
- Introduce initial CHANGELOG.md with v0.1.8 entries.
|
|
|
|
### Changed
|
|
- Update root.go to include queryCmd.
|
|
- Reorder and update queued task list in TODO with new entries like non-interactive-query.md.
|
|
- Move changelog.md to completed tasks in TODO with version note.
|
|
- Standardize link formats and list markers in README.md.
|
|
- Rename TODO entry from "grokkit query Go tools integration" to "grokkit query Simple Query Tool".
|
|
- Revise TODO description to focus on one-shot prompt/answer tool for concise queries.
|
|
# Changelog
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
## [v0.1.8] - 2026-03-03
|
|
|
|
Another step towards automated bliss, with AI changelogs and Git taking the safety wheel.
|
|
|
|
### Added
|
|
- Add release.sh script for automating releases with version validation, tagging, changelog generation, committing, and pushing.
|
|
- Add grokkit changelog command with flags for version, since, stdout, and commit reminder.
|
|
- Add git helpers for retrieving latest/previous tags and formatted logs since a reference.
|
|
- Add tests for changelog message building and full construction.
|
|
- Add todo/README.md as a table of contents for queued and completed tasks.
|
|
- Add section in README.md documenting grokkit changelog command with usage examples.
|
|
- Add detailed Git workflow for managing changes in README.md.
|
|
- Add detail in changelog.md about using generated CHANGELOG.md for Gitea release notes.
|
|
|
|
### Changed
|
|
- Change version flag shorthand from "v" to "V" in changelog command and update test assertion.
|
|
- Disable coverage threshold enforcement in CI workflow by commenting out the 65% minimum step.
|
|
- Update README.md to include grokkit changelog in the command features list.
|
|
- Reprioritize queued tasks in README.md to place changelog first, followed by interactive-agent, make, tea, and gotools.
|
|
- Update priorities in individual queued/*.md files to match new order.
|
|
- Adjust priorities for features including audit, changelog, gotools, interactive-agent, and rg in todo docs.
|
|
- Replace file backups with Git-based change management in safety features.
|
|
- Remove mentions of backups from README.md, cmd/lint.go, ARCHITECTURE.md, and TROUBLESHOOTING.md.
|
|
- Update troubleshooting guide with Git rollback instructions.
|
|
- Modify feature lists and safety descriptions to emphasize Git integration.
|
|
- Remove automatic .bak backup creation from edit, docs, lint, testgen, and agent commands.
|
|
- Update README.md, architecture docs, troubleshooting, TODOs, and tests to reflect removal of backups.
|