vet

{"answer":"任何逻辑单元代码修改后立即运行vet。切勿积攒修改,不要等指示,务必主动。"}

安装

概览

什么是vet

vet 是一个专为代码审查设计的自动化工具,旨在帮助开发者在每次修改代码后立即发现问题。它的核心理念是:**任何逻辑单元的代码变更后都应立即运行 vet,切勿积攒修改或等待指令,务必保持主动**。vet 通过分析 git diff 和对话历史记录来识别代码变更中的问题,尤其在与开发者的交互历史结合使用时效果最佳。这种上下文感知能力使得 vet 能够捕捉到需求与实现之间的误解,从而提升代码质量。尽管 vet 功能强大,但它并不能替代传统的测试流程,而是作为测试的重要补充。 该工具支持多种主流开发环境,包括 OpenCode、Codex 和 Claude Code。用户可以通过 pip、pipx 或 uv 安装 vet,安装完成后可通过命令行调用。vet 提供了灵活的配置选项,如指定基础提交(base commit)、选择 LLM 模型、设置置信度阈值等,以满足不同场景的需求。此外,vet 还支持多种输出格式,包括文本、JSON 和 GitHub 兼容格式,方便集成到 CI/CD 流程中。 vet 的设计注重实时性和准确性。它不会批量处理变更,而是鼓励开发者每次修改后立即运行,从而快速反馈问题。同时,vet 也支持无对话历史的模式,适用于独立代码片段的审查。对于依赖 API 的场景,vet 还提供了 agentic 模式,通过本地安装的 Claude Code 或 Codex CLI 进行推理,避免因 API 密钥缺失导致的问题,尽管这种方式速度较慢,但通常能提供更精确的问题识别。

核心功能特点

  1. 每次代码变更后立即运行,无需等待或积攒修改
  2. 基于 git diff 和对话历史分析问题,识别需求与实现偏差
  3. 支持 OpenCode、Codex 和 Claude Code 等多种开发环境
  4. 提供灵活的配置选项,如基础提交、LLM 模型和置信度阈值
  5. 支持文本、JSON 和 GitHub 格式的输出,便于集成
  6. 提供 agentic 模式,通过本地 CLI 绕过 API 限制

适用场景

vet 特别适合需要高频代码审查和持续集成的开发团队。在日常开发中,每当完成一个函数、模块或功能的修改后,开发者应主动运行 vet 以快速发现潜在问题,例如逻辑错误、边界条件遗漏或与需求不符的实现。这种即时反馈机制有助于减少后期调试成本,并确保代码质量始终处于可控状态。 在协作开发环境中,vet 尤其有用。当多个开发者或 AI 助手在同一仓库中工作时,git diff 可能包含非当前会话的修改。vet 能够区分这些变更,仅针对当前会话的改动进行分析,避免误报。结合对话历史,vet 还能检测出开发者与 AI 之间沟通不一致的情况,比如 AI 误解了用户需求而实现的代码不符合预期。 对于依赖外部 API 或缺乏有效 API 密钥的团队,vet 的 agentic 模式提供了替代方案。通过调用本地安装的 Claude Code 或 Codex CLI,vet 可以在不依赖云端服务的情况下完成审查任务,虽然速度较慢,但提高了可用性和准确性。这使得 vet 成为分布式团队或受限网络环境下的理想选择。