- Go 1.24+
- golangci-lint
git clone https://github.com/randalmurphal/llmkit.git
cd llmkit
go test ./...
make verify # Run all checksmake build # Build all packages
make test # Run tests
make coverage # Run tests with coverage
make lint # Run linter
make verify # Run all checks- Run
make verifybefore submitting PRs - Maintain 90%+ test coverage on all packages
- Follow existing code patterns
| Package | Purpose |
|---|---|
root llmkit/ |
Shared client/config/types/registry/model helpers |
claude/ |
Claude CLI wrapper and sessions |
codex/ |
Codex CLI wrapper and sessions |
claudeconfig/ |
Claude ecosystem parsing |
codexconfig/ |
Codex ecosystem parsing |
env/ |
Scoped hook/MCP/env lifecycle |
worktree/ |
Git worktree lifecycle |
providers/ |
Blank-import convenience package for registry registration |
tokens/ |
Token counting and budget management |
template/ |
Prompt template rendering |
parser/ |
LLM response parsing |
truncate/ |
Token-aware text truncation |
- The repository is
github.com/randalmurphal/llmkit - The V2 Go module path is
github.com/randalmurphal/llmkit/v2 - V1 maintenance fixes can continue landing on
main, but all V2 code and docs must use/v2imports
Each package has comprehensive tests. Run with:
go test ./... # All tests
go test ./claude/... # Single package
go test -cover ./... # With coverage- Add tests first
- Implement the feature
- Run
make verify - Submit PR