Commit Graph

9 Commits

Author SHA1 Message Date
269faa6546 fix(cmd): remove misplaced analyze command addition
Some checks failed
CI / Test (push) Failing after 23s
CI / Lint (push) Has been skipped
CI / Build (push) Has been skipped
- Remove `rootCmd.AddCommand(analyzeCmd)` from `cmd/analyze.go` init func
- Add empty `Linters` array for Rexx in `internal/linter/linter.go` with comment for analyze support
2026-03-28 17:37:11 +00:00
3c73b897a6 chore: update analyze command output and add Rexx to linter
Some checks failed
CI / Test (push) Failing after 22s
CI / Lint (push) Has been skipped
CI / Build (push) Has been skipped
- Change default output filename in analyze command from analyze.md to analysis.md
- Add Rexx language detection with extensions .rx, .rex, .rexlib, .rexx, .cls
2026-03-28 17:06:26 +00:00
12bd5f9376 refactor(linter): clean language names in primary detection
All checks were successful
CI / Test (push) Successful in 26s
CI / Lint (push) Successful in 18s
CI / Build (push) Successful in 14s
Update DetectPrimaryLanguage to normalize "C/C++" and "C++" to "c" for consistent counting.
Revise function comment and internal comments for clarity.
Remove redundant comment on finding most common language.
2026-03-28 16:24:26 +00:00
fd033b03c7 fix(analyze): correct config, logger, and git usage in analyze command
- Fix config.GetModel to use command name and flag
- Switch to package-level logger functions
- Update git.IsRepo to take no arguments
- Simplify linter language detection comments
- Adjust Grok client creation to NewClient().StreamSilent
- Add error handling for confirmation input
- Remove unnecessary imports and refine comments in linter
2026-03-28 13:16:31 +00:00
09119ded37 refactor(analysis): refine prompts, language detection, and context building
- Updated Go analysis prompt for clarity, structure, and educational focus.
- Improved buildProjectContext to include shallow key files and cleaner Git remote handling.
- Implemented DetectPrimaryLanguage with counting logic and Go bias; added SupportedLanguages.
- Enhanced LoadAnalysisPrompt with better language handling, fallbacks, and error clarity.
2026-03-28 12:46:04 +00:00
b24b86723b feat(analyze): implement educational project analysis with language prompts
- Add Go-specific analysis prompt in .grokkit/prompts/go.md
- Expand cmd/analyze.go to discover files, detect language, load prompts, build context, generate report via Grok, and handle output with preview/confirmation
- Integrate analyzeCmd into root command
- Introduce internal/linter/language.go for primary language detection
- Add internal/prompts/analyze.go for loading analysis prompts from project or global locations
2026-03-28 12:36:06 +00:00
f0322a84bd chore(lint): enhance golangci configuration and add security annotations
Some checks failed
CI / Test (push) Successful in 33s
CI / Lint (push) Failing after 17s
CI / Build (push) Successful in 21s
- Expand .golangci.yml with more linters (bodyclose, errcheck, etc.), settings for govet, revive, gocritic, gosec
- Add // nolint:gosec comments for intentional file operations and subprocesses
- Change file write permissions from 0644 to 0600 for better security
- Refactor loops, error handling, and test parallelism with t.Parallel()
- Minor fixes: ignore unused args, use errors.Is, adjust mkdir permissions to 0750
2026-03-04 20:00:32 +00:00
918ccc01c8 refactor(tests): improve error handling and defer usage
All checks were successful
CI / Test (push) Successful in 31s
CI / Lint (push) Successful in 25s
CI / Build (push) Successful in 22s
Release / Create Release (push) Successful in 36s
- 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
2026-03-02 21:33:11 +00:00
9f1309ba1a feat(lint): add lint command with AI-powered fixes
Introduce new `grokkit lint` command for automatic language detection,
linting, and AI-suggested fixes. Supports 9 languages including Go, Python,
JavaScript, TypeScript, Rust, Ruby, Java, C/C++, and Shell.

- Add cmd/lint.go for command implementation
- Create internal/linter package with detection and execution logic
- Update README.md with usage examples and workflows
- Enhance docs/ARCHITECTURE.md and docs/TROUBLESHOOTING.md
- Add comprehensive tests for linter functionality
2026-03-01 13:21:44 +00:00