guptaprakhariitr/vigil
GitHub: guptaprakhariitr/vigil
自托管的 AI 值班工程师工具,指向日志即可自动定位故障根因并可选地开启修复 PR。
Stars: 0 | Forks: 0
# VigilAI — `vigil`
运行在你**自己**机器上的值班工程师。将它指向你的日志;它会找到根本原因,
引用证据,并(如果你允许的话)开启一个修复 PR。你的基础设施,你的引擎(Claude / Cursor /
API / 本地),你的自主权调节选项。
**[落地页 →](https://guptaprakhariitr.github.io/vigil/)** · [版本发布](https://github.com/guptaprakhariitr/vigil/releases) · [工作原理](docs/HOW-IT-WORKS.md) · [参考手册](docs/REFERENCE.md)
## 开始使用你的 coding agent
最快的设置方式是让 **Claude Code**(或 **Cursor**)来完成。粘贴以下 prompt:
```
Run npx skills add guptaprakhariitr/vigil --all and use the setup-vigil skill to set up VigilAI in this project
```
更倾向于手动操作?请继续阅读下文。(引导模式受
[clicky](https://github.com/farzaa/clicky) 和 [superlog](https://superlog.sh) 启发 —— 但 VigilAI 不需要
**任何代码改动**,也**无需账号**:它直接读取你已有的日志。)
## 安装
从 [版本发布](https://github.com/guptaprakhariitr/vigil/releases) 中为你的平台**下载二进制文件**
(确定性引擎已内置其中 —— 无需获取其他任何内容):
```
# macOS (Apple silicon) 示例 — 有关您的平台/asset name,请参见 Releases
curl -fsSL -o vigil https://github.com/guptaprakhariitr/vigil/releases/latest/download/vigil-aarch64-apple-darwin
chmod +x vigil
# 将其添加到您的 PATH 中,以便 `vigil` 可以在任何地方运行
sudo mv vigil /usr/local/bin/vigil # or: mkdir -p ~/.local/bin && mv vigil ~/.local/bin/
vigil --version
```
**Linux x86_64** — 两个版本:
- `vigil-x86_64-unknown-linux-musl` — **完全静态;推荐。** 可在任何 Linux(Ubuntu 20.04+, Alpine, ……)上运行,**无 glibc 版本依赖**。
- `vigil-x86_64-unknown-linux-gnu` — 体积更小,但需要较新的 glibc(≥ 2.39,即 Ubuntu 24.04+)。如果你看到 `GLIBC_2.39 not found`,请使用上面的 musl 版本。
如果 `~/.local/bin` 尚未加入你的 PATH,请将 `export PATH="$HOME/.local/bin:$PATH"` 添加到你的 shell
配置文件(`~/.zshrc` / `~/.bashrc`)中。提示:设置一次 `export VIGIL_DB=/path/to/vigil.db`,所有命令都会使用它。
**或者在任何地方运行**,使用 Docker / Compose / Helm —— 参见 [docs/REFERENCE.md](docs/REFERENCE.md#deploy)。
macOS 二进制文件已**通过 Developer ID 签名并经过 Apple 公证**(Team `86F7TVY8RD`,硬化
runtime)。Linux x86_64 二进制文件及容器镜像也已发布。(如果下载的文件被
隔离,`xattr -dr com.apple.quarantine ./vigil` 可将其解除。)
### 升级(向下兼容)
新版本是**即插即用**的 —— 你现有的状态 db 在打开时会自动迁移(schema 变更是
增量的),并且所有先前的命令/标志依然有效。已经在旧版本上配置好了?通过以下方式升级:
```
vigil self-update # tells you if a newer release exists + the exact command
vigil self-update --apply # downloads the right asset for your platform and replaces the binary in place
```
更喜欢手动操作 —— 只需重新下载并替换(与安装步骤相同):获取最新的资源文件,`chmod +x`,
将其 `mv` 覆盖你 PATH 上现有的 `vigil`。无需数据迁移步骤;你的 `--db` / `VIGIL_DB` 存储将按原样
复用。(Coding-agent 用户只需重新运行 `setup-vigil` prompt —— 它会获取最新的二进制文件。)
## 60 秒试用
```
# 1) 对 log directory 进行一次性 root-cause 分析,基于您的 repo
vigil investigate ./logs --repo .
# 2) 或者持续 watch 一个系统(一个 project = 一个 app 及其所有 containers)
vigil project add myapp ./logs/web.log --repo .
vigil project add-source myapp ./logs/worker.log
vigil up --project myapp
```
未配置 LLM?添加 `--no-engine` —— 确定性 pipeline(检测、分组、分类)依然会运行。
要启用根本原因分析,自带(BYO)引擎:`--engine claude-cli`(你已登录的 Claude)或
`--engine anthropic-api`(设置 `ANTHROPIC_API_KEY`)。
## 你将获得什么
```
🔔 SEV2 myapp · NEW incident ×216 · blast 1 — ERROR payments cannot read 'id' of undefined …
↳ cause: a refactor (ce92608) made charge() read session.customer.id; on Stripe timeout
`session` is undefined → null-deref at src/charge.ts:9 (conf 0.94)
↳ patch: applies ✓ · tests skipped · secret-scan clean → branch vigil/fix-…
```
- **带引用**的根本原因(每一项推论都与日志 cluster、stack frame 或 diff 相关联)。
- 过滤噪音:数千行和数百次重现 → **一个事件,几次引擎调用**。
- 一个**经过验证**的修复(在脱离你已部署 SHA 的一次性 git worktree 中应用 —— 绝不是你的工作副本),仅在你调高自主权选项时才会作为 PR 开启。
随时进行检查:`vigil incidents`、`vigil status`、`vigil ask "what broke and is it fixed?"`,
或实时仪表盘 —— `vigil tui`(终端) / `vigil serve`(Web)。
## 了解更多
- **[docs/HOW-IT-WORKS.md](docs/HOW-IT-WORKS.md)** —— pipeline、Tier-1 策略、无害保证,以及项目/源码模型。
- **[docs/REFERENCE.md](docs/REFERENCE.md)** —— 每个命令和标志,每个 config/env 选项及其含义、部署指南和词汇表。
许可证:Apache-2.0(wrapper)。确定性引擎以捆绑的二进制文件形式发布。
agent 会做什么?
标签:AIOps, SOC Prime, 可视化界面, 开发工具, 模块化设计, 自主智能体, 自动化修复, 请求拦截, 运维, 通知系统