THRISHAL12345/Vigil
GitHub: THRISHAL12345/Vigil
Vigil 是一个监控第三方 API 契约变更并通过 WASM 静态分析将破坏性变更映射到代码调用点、自动生成验证修复 PR 的开源 Agentic 系统。
Stars: 0 | Forks: 0
**面向 Vendor API 契约的开源 Agentic 系统。**
*再也不用在突发且具有破坏性的 API 变更面前措手不及。*
[](https://github.com/THRISHAL12345/Vigil/actions)
[](./LICENSE)
[](./CONTRIBUTING.md)
[](https://nodejs.org/)
[](https://www.typescriptlang.org/)
## ⚡ API 维护缺失的一环
API 提供商会不断发布带有破坏性的变更和实用的新功能。Changelog 无人问津,破坏性变更在毫无预兆的情况下被发布,而实用的新功能则在悄然上线后被忽视。
这在 *包* 级别(例如 Dependabot、Renovate)是一个已解决的问题,但在 **API 契约级别却是一个未解决的问题**。目前没有任何工具能够监控 Vendor 的 OpenAPI schema,将其映射到您的实际调用点,并开启一个经过验证的 PR。
**Vigil 就是这缺失的一环。**
它是一个中立、与 Vendor 无关、完全开源的系统,其功能如下:
1. 📡 **监控公共 API 契约**(OpenAPI 规范、GraphQL schema、changelog、SDK 发布说明)。
2. 🏷️ **将检测到的每一项变更分类**为 `breaking`、`non_breaking`、`deprecation` 或 `new_feature`。
3. 🗺️ **通过极速的 WASM 静态分析,将变更映射到您代码库中的使用位置**。
4. 🛠️ **生成自动化修复**,在独立的沙箱中针对您现有的测试套件对其进行验证,并开启一个 *Draft PR*。
5. 🛡️ **尊重您的边界。** 未经明确安装,Vigil 绝不会触碰任何代码库,并且它*绝不会*自主合并代码。
## 🏗️ 架构
Vigil 采用基于队列、事件驱动的架构,以可靠地解析、映射和修补 Vendor 变更。每个阶段都是至少执行一次且具备幂等性的任务,支持独立的扩展、测试和部署。
```
flowchart TD
Vendor(Vendor Spec Sources) -->|poll / webhook| SpecWatcher(spec-watcher)
SpecWatcher -->|NormalizedSpecSnapshot| DiffClassifier(diff-classifier)
DiffClassifier -->|ClassifiedChange| UsageMapper(usage-mapper)
UsageMapper -->|UsageSite + ClassifiedChange| FixGenerator(fix-generator)
FixGenerator -->|CandidatePatch| SandboxVerifier(sandbox-verifier)
SandboxVerifier -->|VerifiedPatch| PrAuthor(pr-author)
PrAuthor --> GitHub[Target Repo PR]
```
## 🚀 快速开始
### 前置条件
- [Node.js](https://nodejs.org/) 20+
- [pnpm](https://pnpm.io/) 9+
- [Docker](https://www.docker.com/) 和 Docker Compose
### 本地开发设置
只需几分钟即可在本地运行 Vigil:
```
# Clone 仓库
git clone https://github.com/THRISHAL12345/Vigil.git
cd Vigil
# 安装依赖
pnpm install
# 设置环境变量
cp .env.example .env
# 启动本地 Redis & PostgreSQL 实例
docker compose -f infra/docker/docker-compose.dev.yml up -d
# 搭建数据库 schema
pnpm db:migrate
# 启动 monorepo 开发服务器
pnpm dev
```
## 🤝 贡献
我们欢迎社区的贡献!Vigil 的繁荣离不开开源协作。
1. **仔细阅读 [AGENTS.md](./AGENTS.md)。** 该文件是了解系统架构和信任模型的唯一事实来源。
2. 查看 [CONTRIBUTING.md](./CONTRIBUTING.md) 获取详细的指南。
3. 如果您希望帮助 Vigil 支持新的 API,请探索 `vendor-adapters/` 目录!
由开源社区倾注 ❤️ 打造。
标签:AI智能体, API契约管理, DevOps工具, MITM代理, TypeScript, WASM, 安全插件, 搜索引擎查询, 测试用例, 自动化代码修复, 自动化攻击, 请求拦截, 错误基检测, 静态代码分析