sashiko-dev/sashiko

Agentic review of Linux Kernel code changes

解决的问题

Sashiko 是一个专为强化 Linux 内核而设计的代理型代码审查系统,旨在自动检测提案补丁中的缺陷、架构缺陷和安全漏洞。它旨在减轻人类维护者的工作负担,识别那些常在人工审查中被遗漏的问题。

工作原理

Sashiko 使用一种多阶段审查协议,模拟专业评审团队的工作方式。它从邮件列表(lore.kernel.org)、GitHub PR、GitLab MR 或本地 git 仓库中获取补丁。该过程分为两个主要阶段:

  1. 分析阶段:并行检查特定类别的问题,包括架构目标、实现正确性、执行流程(逻辑错误)、资源管理(泄漏/UAF)、锁定(并发性)、安全(缓冲区溢出)以及硬件特定约束。
  2. 整合阶段:按顺序执行步骤,包括去重发现结果、解决不同分析结果之间的冲突、验证剩余问题以过滤误报,并最终为 Linux 内核邮件列表(LKML)生成礼貌且标准的回复邮件。

适用人群

主要面向希望自动化补丁初步筛选以提升代码质量和安全性的 Linux 内核维护者和开发者。

主要亮点

  • 内核专用智能:使用针对 C 代码和内核级约束量身定制的专用提示和多阶段协议。
  • LKM 集成:内置支持通过 NNTP 监控邮件列表,并与 GitHub/GitLab Webhook 集成。
  • 自包含性:可与多种 LLM 提供商(Gemini、Claude、GitHub Copilot)协作,无需外部代理 CLI 工具。
  • 高缺陷检测率:已证明能够发现大量此前已通过人工审查的上游提交中的缺陷。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目