project-codeguard
OASIS CoSAI 开源安全框架,将 23 条安全规则嵌入 AI 编码助手工作流,支持 MCP Server 统一部署
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
OASIS CoSAI 开源安全框架,将 23 条安全规则嵌入 AI 编码助手工作流,支持 MCP Server 统一部署
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
想象这样一个场景:你让 GitHub Copilot 帮你写一个用户登录接口,它三秒钟吐出了一段代码——功能完美,但密码是明文存储的。这是 AI 编程时代最讽刺的缩影:速度有了,安全感没了。
Project CodeGuard 正是为解决这个矛盾而生。这是一个由 OASIS Open Project「AI 安全联盟」(CoSAI)主导的开源安全框架,它不做杀毒软件、不做代码扫描器,而是直接把安全规则「焊进」AI 编码助手的工作流里——从写代码的第一秒开始,就让 AI 知道什么该做、什么不能做。
Project CodeGuard 隶属于 CoSAI(Coalition for Secure AI,AI 安全联盟),这是 OASIS Open 旗下的一个开放协作项目,汇集了来自 Google、Microsoft、IBM、Samsung 等头部科技公司的 AI 与安全专家。OASIS Open 本身是国际知名的开源标准组织,曾主导过众多网络安全标准的制定。
这种「标准组织背书 + 行业头部参与」的模式,让 CodeGuard 的安全规则具备天然的权威性和可扩展性——它不是某个安全公司的商业产品,而是整个行业共同维护的安全知识库。
CodeGuard 的安全能力覆盖了软件安全的几乎所有关键领域,构建起一张从密码学到供应链的完整防护网:
| 安全领域 | 具体覆盖内容 |
|---|---|
| 密码学 | 安全算法(含后量子密码)、密钥管理、证书验证 |
| 输入验证 | SQL 注入防护、XSS 保护、命令注入防御 |
| 身份认证 | MFA 最佳实践、OAuth/OIDC、安全会话管理 |
| 访问授权 | RBAC/ABAC、IDOR 防护、权限最小化 |
| 供应链安全 | 依赖安全检查、SBOM 生成、漏洞管理 |
| 云安全 | IaC 加固、容器安全、Kubernetes 最佳实践 |
| API 安全 | 接口鉴权、速率限制、输入校验 |
这 23 条核心安全规则以 Markdown 格式统一存储在 sources/rules/core/ 目录下,格式无关具体 AI 框架,真正做到了模型无关(model-agnostic)——无论你用的是 Claude Code、Cursor、Copilot 还是 Windsurf,规则都可以直接使用。
CodeGuard 的工作流程分为三个阶段,覆盖 AI 编码的完整生命周期:
阶段一:规划期(Planning Phase) 在 AI 开始写代码之前,安全技能(Skills)和规则(Rules)可以用来指导产品设计和规范制定。开发者可以在 AI 编码助手的「规划阶段」注入这些规则,让模型从架构设计层面就走向安全路径——这比代码写完后再扫描漏洞要高效得多。
阶段二:生成期(Code Generation) AI 在编写代码的过程中,CodeGuard 规则会实时「提醒」它避开危险写法。比如检测到使用 eval()、pickle.loads() 未验证输入、硬编码密钥等不安全模式时,AI 会自动引导至安全替代方案。
阶段三:审查期(Code Review) 代码生成后,AI 编码助手(如 Cursor、GitHub Copilot、Codex、Windsurf、Claude Code)可以利用这些规则进行代码审查,找出潜在的安全漏洞并提供修复建议——相当于给每个开发者配备了一个 7×24 小时在线的安全专家。
CodeGuard 还提供了一个 MCP(Model Context Protocol)Server,这是整个项目中最具工程价值的部分。它将 23 条安全规则全部暴露为独立的 MCP 工具,通过流式 HTTP 接口供 AI 编码助手调用。
企业可以在自己的基础设施上部署这个 MCP Server,然后让公司所有开发者的 AI 编码助手连接到同一个集中管理实例。这意味着:安全规则可以统一更新、集中管控、版本化追溯——规则库更新一次,所有 IDE 立即生效,不再需要每台机器手动同步。
MCP Server 的部署极为简单:src/codeguard-mcp/ 目录下提供了完整的多阶段 Dockerfile(基于 python:3.11-slim)和 docker-compose.yml,包含了完整的安全加固配置:容器以只读模式运行(read_only: true)、禁止提权(no-new-privileges: true)、丢弃所有 Linux 能力(cap_drop: ALL)、带完整健康检查。这种容器安全加固配置在开源项目中相当罕见,说明 CoSAI 对生产环境安全性有认真考量。
CodeGuard 的代码组织非常清晰:安全规则与技能(Skills)存储在 sources/ 目录,Python 源码在 src/ 目录,其中 codeguard-mcp/ 是 MCP Server 实现(FastMCP + Python 3.11),converter.py 负责规则格式转换,emit_agents.py 用于智能体发行。项目使用 uv 作为包管理器,并设置了供应链冷却期(exclude-newer = "7 days")防止依赖劫持。规则本身以 YAML 格式编写,通过转换工具适配各 AI 编码助手。
技术栈方面,项目主体是纯 Python(要求 3.11+),依赖极简(仅 pyyaml + mkdocs)。
对于个人开发者,最快的方式是直接从 GitHub Releases 下载规则包,将对应 AI 助手的规则文件复制到项目目录中,AI 助手会自动加载并应用这些安全规则。
对于企业团队,推荐使用 MCP Server 方案:
# 克隆项目
git clone https://github.com/cosai-oasis/project-codeguard.git
# 启动 MCP Server
cd src/codeguard-mcp
docker compose up --build
# 配置 IDE MCP 客户端
# 在 IDE 设置中添加 MCP Server URL: http://localhost:8080/mcp
AI 执行意愿问题。 CodeGuard 的本质是一套「建议」而非强制约束,AI 编码助手是否会忠实地遵循这些规则,取决于模型本身的指令遵循能力。精心设计的提示词注入攻击仍可能绕过规则约束。
生态锁定风险。 虽然项目自称「模型无关」,但各 AI 编码助手的插件格式(.claude-plugin、.codex-plugin)实际上是不同的,需要针对每种工具单独适配。随着 AI 编码助手快速迭代,维护多套插件格式的成本不容忽视。
许可协议不够明确。 仓库使用的 License 显示为 NOASSERTION,而非标准的 MIT/Apache 2.0 等开源许可证。虽然 README 中提到内容采用 CC BY 4.0,但这与代码文件的许可状态存在歧义,企业直接商用前需要法律确认。
Project CodeGuard 的出现,标志着 AI 安全从「事后检测」向「事前预防」的范式转变。传统的 SAST 工具总是在代码写完之后才告诉你哪里有问题,而 CodeGuard 试图在代码被「吐出来」的那一瞬间就阻止漏洞的产生。
从增长数据来看,2026年1月仓库创建,到8月中旬已有 311 Stars 和 61 Forks,考虑到这是一个高度垂直的工具型项目而非通用框架,这个增长曲线相当健康。尤其是 CoSAI 作为 OASIS Open Project 的背书,为项目带来了传统开源项目难以获得的企业级信任背书。
在 AI 编码助手全面普及的背景下,CodeGuard 所代表的「安全左移(Shift Left Security)」思路——将安全实践嵌入到开发工作流的每一个环节——代表了 AI 原生安全(AI-Native Security)的一个有价值的探索方向。随着 AI 编码助手逐步成为软件开发的主力工具,类似 CodeGuard 这样的安全基础设施的重要性只会持续增加。