https://github.com/firekeeper-ai/firekeeper
Agentic AI code reviewer CLI. Parallel review, custom rules, agent skills, run anywhere
https://github.com/firekeeper-ai/firekeeper
agent agentic ai code-review llm
Last synced: 4 months ago
JSON representation
Agentic AI code reviewer CLI. Parallel review, custom rules, agent skills, run anywhere
- Host: GitHub
- URL: https://github.com/firekeeper-ai/firekeeper
- Owner: firekeeper-ai
- License: mit
- Created: 2026-01-15T12:05:00.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2026-02-07T15:41:41.000Z (4 months ago)
- Last Synced: 2026-02-07T22:29:09.146Z (4 months ago)
- Topics: agent, agentic, ai, code-review, llm
- Language: Rust
- Homepage:
- Size: 388 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
_firekeeper_
_Agentic AI code reviewer CLI_
_Parallel review, custom rules, agent skills, run anywhere_
[](https://www.npmjs.com/package/@firekeeper.ai/firekeeper)
[](https://github.com/firekeeper-ai/firekeeper/releases)
[](https://github.com/firekeeper-ai/firekeeper/blob/main/LICENSE)
## Features
- **_Privacy-first_**: Bring your own LLM API key and model—works with any OpenAI-compatible endpoint
- **_Agentic review_**: Uses an agentic loop with tools to intelligently investigate code changes, not just one-shot LLM calls
- **_Custom rules_**: Define project-specific review rules in `firekeeper.toml` with detailed instructions for the AI agent
- **_Flexible scope_**: Review uncommitted changes, specific commits, date ranges, or entire repositories
- **_Parallel execution_**: Splits review tasks across multiple workers for speed **_and focus_**, with configurable file batching
- **_Structured output_**: JSON output and markdown trace files for integration with CI/CD and debugging
- **_Context engineering_**: Include files, shell command outputs, and Agent Skills as context for reviews
## Installation
Shell (macOS/Linux)
```sh
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/firekeeper-ai/firekeeper/releases/latest/download/firekeeper-installer.sh | sh
```
PowerShell (Windows)
```powershell
powershell -ExecutionPolicy Bypass -c "irm https://github.com/firekeeper-ai/firekeeper/releases/latest/download/firekeeper-installer.ps1 | iex"
```
npm
```sh
npm install -g @firekeeper.ai/firekeeper
```
## Getting Started
Init a config file `firekeeper.toml`:
```bash
firekeeper init
```
Set LLM API key (OpenRouter by default):
```bash
export FIREKEEPER_LLM_API_KEY=sk-xxxxxxxxxxxxxx
```
Review uncommitted changes or the last commit:
```bash
firekeeper review
```
More examples
> Review uncommitted changes only, suitable for git hooks or coding agent hooks:
>
> ```bash
> firekeeper review --base HEAD
> ```
>
> Review changes from 1 day ago with structured output, suitable for CI/CD pipelines:
>
> ```bash
> firekeeper review --base "@{1.day.ago}" --output /tmp/report.json --trace /tmp/trace.md
> ```
>
> Review all files (ensure you have sufficient LLM token budget):
>
> ```bash
> firekeeper review --base ROOT
> ```
## FAQ
### Why use a dedicated AI code reviewer instead of coding agents with MCP/Skills?
- **Cost efficiency**: Reviewers need less coding capability than code generators, so you can use cheaper models (Gemini Flash vs Pro, Claude Haiku vs Opus)
- **Integration**: CLI design fits naturally into git hooks and CI/CD pipelines
- **Specialized tooling**: Reviewer agents can have a different, optimized tool set
- **Performance at scale**: Parallel execution with filtered scopes keeps reviews fast and focused, preventing quality degradation on large codebases
### Why doesn't this tool fix bugs after review?
Fixing bugs requires high-quality output (passing compilation and tests), which coding agents already handle well. To avoid duplicate responsibility, firekeeper focuses solely on code review.
**Recommended workflow**: Integrate firekeeper in pre-commit git hooks → coding agent triggers the hook → sees review results → auto-optimizes the code.
### What should I review with this tool?
**Don't use for**: Issues caught by static analysis tools (formatters, linters, compilers, static analyzers). They're faster, more accurate, and cheaper.
**Do use for**: Semantic rules and conventions that traditional tools can't detect:
- Documentation updates after code changes
- Error logging after exception handling
- Code duplication that should be extracted into modules
- Project-specific conventions and patterns
This tool is designed for **_user-defined rules_**, not built-in nitpicking.
## [CHANGELOG](./CHANGELOG.md)