codefox-lab/CodeFox-CLI

GitHub: codefox-lab/CodeFox-CLI

一款面向终端和 CI 工作流的 Diff 感知 AI 代码审查工具,支持本地 Ollama 和云端 LLM,可对代码变更进行安全、性能、风格等维度的智能分析。

Stars: 39 | Forks: 8

CodeFox logo

CodeFox-CLI

面向终端和 CI 工作流的 Diff 感知 AI 代码审查工具

CI License Python 3.11+ Wiki PyPI Downloads

📚 文档 • 🚀 快速开始 • 🐛 报告问题 • 📝 演示 PR

## 🦊 概述 **CodeFox-CLI** 是一款 CLI 优先的 AI 代码审查工具,专为 **git diff、pull request 和 CI 工作流** 设计。 它能分析代码变更,检索相关的项目上下文,并直接在终端或自动化审查流水线中生成审查反馈。 CodeFox 同时支持: - **结合 Ollama 进行本地审查**,适用于自托管工作流 - **当偏好远程推理时,使用云 LLM 提供商**,如 Gemini 和 OpenRouter 该工具专为希望在本地检查、pull request 和 CI/CD 流水线中采用 **CLI 优先审查工作流** 的开发者和团队设计。 ## 为什么选择 CodeFox? - 审查 **git 变更**,而不仅仅是孤立文件 - 利用 **相关代码库上下文** 提升审查质量 - 兼容 **本地或云端模型** - 无缝融入 **基于终端和 CI 的工作流** - 支持配置审查重点,如 **安全性**、**性能** 和 **风格** | 与 Linter 相比 | 与托管式 AI 审查工具相比 | |---|---| | 结合代码库上下文审查 diff,而非仅依赖静态规则 | 可使用 Ollama 在本地运行 | | 不仅能标记问题,还能建议修复方案 | 无严格供应商锁定 | | 灵活的审查重点:安全、性能、风格 | CLI 优先的工作流,适用于本地和 CI 场景 |

CodeFox scan demo

## CodeFox 是什么与不是什么 CodeFox 是一个 **用于对 git 变更进行自动化 AI 审查的 CLI 工具**。 它 **不是** 像 Cursor 或 Claude Code 那样的 IDE 编程助手。 它是为 **diff 审查工作流**、终端使用和 CI/CD 自动化而构建的。 ## 集成 当前支持: - GitHub Actions - GitLab 计划中: - Bitbucket ## 隐私 - 使用 **Ollama** 时,审查完全可以在您的机器上本地运行 - 使用 **云提供商** 时,根据您的配置,代码和上下文可能会发送到外部 API - 使用 `.codefoxignore` 排除无需分析的文件 ## 📥 安装 ### 面向用户 **uv** ``` uv tool install codefox ``` **pip** ``` python3 -m pip install codefox ``` ## 验证安装 ``` codefox version ``` ## 🚀 快速开始 1. 初始化 CodeFox ``` codefox init ``` 这会将您的提供商 token 本地存储,并创建初始配置文件。 2. 审查您当前的 git 变更 ``` codefox scan ``` `scan` 期间发生了什么: - 收集当前的 git diff - 根据您的配置加载相关的项目上下文 - 将审查请求发送到配置的模型 - 返回审查评论和可选的修复建议 3. 显示版本 ``` codefox version ``` ## ⚙️ 配置 **忽略文件:** `./.codefoxignore` 指定不应上传到 File Store 的路径。 **模型设置:** `./.codefox.yml` 用于对分析行为和模型参数(例如模型选择、temperature、审查规则、基线和提示词)进行精细配置。 有关详细的配置选项和示例,请参阅 [**WIKI**](https://github.com/codefox-lab/CodeFox-CLI/wiki)。 上方演示中使用的示例配置(Ollama + qwen3-coder): ``` provider: ollama model: name: qwen3.5:9b temperature: 0.5 max_tokens: 4000 review: severity: high max_issues: null suggest_fixes: true diff_only: false baseline: enable: true ruler: security: true performance: true style: true prompt: system: null extra: null ``` **Token 配置:** `./codefoxenv` 存储模型的 API token。CLI 使用此文件进行身份验证,不应将其提交到版本控制。 ## 📚 文档 **完整配置参考和示例:** [**WIKI**](https://github.com/codefox-lab/CodeFox-CLI/wiki) - 提供商设置、模型选项、审查规则、提示词等。 ## 🧩 命令 | 命令 | 描述 | | --------- | ---------------------------------------------------------------------------------------------------- | | `init` | 在本地保存 API key,并在当前目录下创建 `.codefoxignore` 和 `.codefox.yml` 文件。 | | `list` | 根据 `.codefox.yml` 显示当前提供商(Gemini、Ollama 或 OpenRouter)和 embeddings(fastembed)可用的完整模型列表。 | | `scan` | 从 `git diff` 收集变更,将文件上传到 File Store,并向配置的模型发送请求。 | | `version` | 显示当前的 CodeFox CLI 版本。 | | `clean` | 清除 CodeFox 使用的本地缓存 | | `--help` | 显示可用的标志和使用信息。 | ## 🧪 示例 ### 列出可用模型(针对 `.codefox.yml` 中的提供商) ``` codefox list ``` ### 在项目中运行扫描 ``` codefox scan ``` ## 🛠 开发 安装开发依赖(包括 pytest, mypy, ruff, types-PyYAML): **pip:** ``` pip install -e ".[dev]" # 或:pip install -r requirements.txt -r requirements-dev.txt ``` **uv:** ``` uv pip install -e ".[dev]" ``` 运行测试: ``` pytest tests -v ``` Lint 和格式化: ``` ruff check codefox tests ruff format codefox tests ``` 静态类型检查: ``` mypy codefox ``` ## 🤝 贡献 欢迎提交 Bug 报告、Pull Request 和文档改进。
标签:AI风险缓解, DLL 劫持, Gemini, Git Diff, LLM评估, LNA, Ollama, Pull Request, Python, SOC Prime, 云安全监控, 人工智能, 代码助手, 代码审查, 大语言模型, 开发工具, 开源, 无后门, 服务枚举, 本地模型, 用户模式Hook绕过, 终端工具, 网络安全研究, 自动化审查, 逆向工具, 静态分析