Introduce a new --base flag (default: "master") to specify the base branch for diff comparison in the PR describe command. Update logic to use this base in git diff commands and fallback to origin/base. Adjust no-changes message accordingly. Add tests for custom base and default behavior.
- Implement new `query` command in cmd/query.go for non-interactive Grok queries focused on programming
- Add wordy flag for detailed responses
- Update root.go to include queryCmd
- Set default model for query in config.go
- Add .grok/settings.json with fast model configuration
- Reordered and updated queued task list with new entries like non-interactive-query.md.
- Moved changelog.md to completed with version note.
- Standardized link formats and list markers in README.md.
Rename from "grokkit query Go tools integration" to "grokkit query Simple Query Tool"
and revise description to focus on a one-shot prompt/answer tool for concise queries.
Introduces a new CHANGELOG.md file documenting notable changes, including added features like release scripts, grokkit changelog command, git helpers, tests, and TODO/README updates. Also covers changes such as flag adjustments, CI updates, README modifications, task reprioritization, and removal of file backups in favor of Git-based management.
Introduce a bash script to automate the Grokkit release process. It handles version validation, git tag creation, changelog generation via grokkit changelog, committing changes via grokkit commit, and pushing to the repository. Includes safety checks and user confirmations.
- Implement `grokkit changelog` command with flags for version, since, stdout, and commit reminder
- Add git helpers for latest/previous tags and formatted log since ref
- Include tests for message building and full changelog construction
- Reorder README.md queued list to prioritize changelog first, followed by interactive-agent, make, tea, and gotools.
- Update priorities in individual queued/*.md files accordingly.
- Add detail to changelog.md about using generated CHANGELOG.md for Gitea release notes.
Adjusted priorities for features including audit, changelog, gotools, interactive-agent, and rg.
Added todo/README.md as a table of contents listing all queued and completed tasks.
Update safety features to leverage Git for version control and rollbacks instead of creating .bak files. This includes:
- Removing backup mentions from README.md, cmd/lint.go, ARCHITECTURE.md, and TROUBLESHOOTING.md
- Adding detailed Git workflow for managing changes in README.md
- Updating troubleshooting guide with Git rollback instructions
- Modifying feature lists and safety descriptions to emphasize Git integration
Eliminate .bak file backups from edit, docs, lint, testgen, and agent commands to simplify safety features, relying on previews and confirmations instead. Update README, architecture docs, troubleshooting, and TODOs to reflect changes. Adjust tests to remove backup assertions.
Update the test generation prompt for Go to prohibit monkey-patching, global variable reassignments, and reflect tricks. Mandate use of only idiomatic Go with real function calls, table-driven tests, and simple happy/error path coverage. Simplify unit and live test structures for better production readiness.
- Add user-facing message showing the selected model
- Implement detailed error logging when AI response is empty, including raw preview
- Update Go test generation prompt for better naming, rules against monkey-patching, and simplicity
- Remove Grokkit-specific references to make the prompt more versatile.
- Update unit and live test patterns for broader applicability, including standard testing.T usage.
- Adjust test name derivation and skip messages for consistency.
- Sync test assertions in testgen_test.go with the updated prompt.
- Updated getTestPrompt for Go to enforce exact test structure: unit with t.Parallel() and logs, optional live with precise skip message.
- Ensured test name derivation, no unused imports, and pure output.
- Added example TestTestgenCmd_Unit and _Live in testgen_test.go to demonstrate the new pattern.
- Minor fixes to Python and C prompts for consistency.
- Modify user message to reference new pattern in system prompt
- Revise Go test prompt for exact unit/live structure matching scaffold_test.go
- Update testgen_test.go to match new prompt prefix
- Replace WriteString + Sprintf with Fprintf in harvestContext for better performance.
- Wrap deferred Chdir in scaffold tests with error logging to avoid silent failures.
- Renamed todo/queued/scaffold.md to todo/completed/scaffold.md to indicate task completion.
- Added todo/queued/interactive-agent.md with details for the next priority feature: a persistent conversational agent mode for Grokkit.
Add fast unit test and live integration tests for the scaffold command, including
scenarios for basic usage, flags like --with-tests, --dry-run, and --force.
Remove unused charmbracelet dependencies (bubbles, bubbletea, lipgloss, etc.)
and add testify for assertions. Update go.mod and go.sum accordingly.
Introduce a new `scaffold` command that uses Grok to generate new files based on a description.
Includes options for generating tests, dry runs, force overwrite, and language override.
Detects language from file extension and harvests project context for better generation.
- 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.
Queues a detailed specification for implementing the `grokkit scaffold` command, which enables AI-powered code generation for new files based on natural language descriptions and codebase patterns. Includes CLI examples, implementation notes, flags, and ROI analysis.
Adds a queued todo item outlining the `grokkit audit` feature for comprehensive code audits, including security, performance, and best practices analysis with actionable reports and fix previews.
Adjust the CI workflow to enforce a 65% test coverage threshold instead of 70% to accommodate current coverage levels. Delete the obsolete .output.txt file containing old test run logs.
- Add tests for shell completion generation in completion_test.go
- Add tests for root command execution and flags in root_test.go
- Expand config tests for temperature, timeout, and log level getters
- Add APIError unwrap test in errors_test.go
- Add WithContext tests in logger_test.go
- Stage test output artifact in .output.txt
- Implement `grokkit testgen` for Go/Python/C/C++ files
- Add language-specific prompts and test file conventions
- Include backups, previews, auto-apply flag
- Update README with docs and examples
- Add unit tests for helper functions
- Mark todo as completed
- Add error checking for os.Setenv and io operations in test files
- Use anonymous functions in defer to ignore errors from os.Remove, os.Setenv, etc.
- Minor formatting and consistency fixes in tests and client code
Switch default linters to standard and retain misspell enablement, removing explicit enables for govet, errcheck, staticcheck, ineffassign, unused, and gosimple.
- Introduce newGrokClient and gitRun vars to allow mocking in tests.
- Refactor commit, commitmsg, history, prdescribe, and review cmds into separate run funcs.
- Update docs, lint, and review to use newGrokClient.
- Add comprehensive unit tests in run_test.go covering happy paths, errors, and edge cases.
- Expand grok client tests with SSE server mocks for Stream* methods.
Add detailed GoDoc-style comments for the Client struct, NewClient function,
and various streaming methods to improve code readability and documentation.
Also include a comment for CleanCodeResponse and minor formatting adjustments.
- Implemented `grokkit docs` command for generating language-specific documentation comments (godoc, PEP 257, Doxygen, etc.) with previews, backups, and auto-apply option
- Extracted message builder functions for commit, history, pr-describe, and review commands
- Added comprehensive unit tests for all command message builders (commit_test.go, docs_test.go, history_test.go, lint_test.go, prdescribe_test.go, review_test.go)
- Enforced 70% test coverage threshold in CI workflow
- Added .golangci.yml configuration with linters like govet, errcheck, staticcheck
- Updated Makefile to include -race in tests and add help target
- Updated README.md with new docs command details, workflows, and quality features
- Added .claude/ to .gitignore
- Configured default model for docs command in config.go