THRISHAL12345/Vigil

GitHub: THRISHAL12345/Vigil

Vigil 是一个监控第三方 API 契约变更并通过 WASM 静态分析将破坏性变更映射到代码调用点、自动生成验证修复 PR 的开源 Agentic 系统。

Stars: 0 | Forks: 0

Vigil Banner

**面向 Vendor API 契约的开源 Agentic 系统。**
*再也不用在突发且具有破坏性的 API 变更面前措手不及。*
[![CI 状态](https://img.shields.io/badge/CI-Passing-brightgreen?style=for-the-badge&logo=githubactions)](https://github.com/THRISHAL12345/Vigil/actions) [![许可证: MIT](https://img.shields.io/badge/License-MIT-blue.svg?style=for-the-badge)](./LICENSE) [![欢迎 PR](https://img.shields.io/badge/PRs-Welcome-brightgreen.svg?style=for-the-badge)](./CONTRIBUTING.md) [![Node.js 20+](https://img.shields.io/badge/Node.js-20%2B-339933?style=for-the-badge&logo=nodedotjs)](https://nodejs.org/) [![由 TypeScript 提供支持](https://img.shields.io/badge/TypeScript-3178C6?style=for-the-badge&logo=typescript&logoColor=white)](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, 安全插件, 搜索引擎查询, 测试用例, 自动化代码修复, 自动化攻击, 请求拦截, 错误基检测, 静态代码分析