
Aegis aegis-v0.14.1-alpha
面向AI代理的操作系统级监控器:观察本地机器上的进程、文件访问和网络活动,并将每个事件归属到相应的代理实例。
AEGIS
面向 AI 编码代理的独立、操作系统级可观测性
从代理外部观察 AI 代理在你的机器上实际执行的操作——进程、文件、网络——无需任何钩子。
AEGIS 是一个面向 AI 代理的独立、操作系统级观察器。 无论代理是如何启动的,或者它是否配合监控,它都会观察代理进程、文件访问和网络活动——并将每一条观察结果关联到特定的代理实例,且该归属的证据会被明确记录在案。它基于 CommonJS JavaScript 监控引擎构建,渲染进程和共享类型使用 TypeScript。开源、本地化、无遥测——一切数据都保留在你的机器上。

演示录制于 v0.10.0-alpha;此后部分标签已重命名。
AEGIS 观察什么
| 层 | 方式 |
|---|---|
| 进程 | 110 个代理(262 个进程名称签名)、父进程链解析、IDE 宿主检测、WSL 和 IDE 扩展发现 |
| 文件 | 对敏感目录(.ssh、.aws、.gnupg、.env*、云配置)以及已知代理的已注册配置路径进行 chokidar 监视;在 Windows 上检测打开句柄和 Restart-Manager 读取 |
| 网络 | 每个代理进程的出站 TCP、正向确认的反向 DNS,以及每个端点的判定——allowlisted、unknown 或 flagged;未识别的端点绝不会显示为安全 |
| 行为 | 8 个类别中的 73 条检测规则(YAML,热重载)、滚动 10 会话基线、跨四个轴(网络 / 文件系统 / 进程 / 基线)的异常评分 |
| 本地 LLM | 对 Ollama 和 LM Studio 的运行时探测,包括已加载模型;其他运行时(如 vLLM 和 llama.cpp)通过进程签名检测 |
上述计数事实并非手工维护:npm run counts:check 在每次 CI 运行时都会从代码树中重新推导每个记录的计数器,并在文档中的数字与现实偏离时使构建失败。
证据图
AEGIS 与进程查看器的区别不在于传感器——而在于每个事件都关联到一个代理实例,并附带你可以审计的证据:
- 实例身份。 代理以
pid+ 操作系统出生时间(instanceId)作为键,因此被回收的 PID 是新实例,而不是旧实例历史的延续。身份缓存由见证者把关,CI 运行注入证明(npm run verify:gate,4 个变异体),如果身份可能从过期缓存中提供,该证明就会变红。 - 带明确证据的归属。 每条审计记录都带有
pid、instanceId和一个attribution对象,其状态有三种——confirmed、inferred 或 unattributed——并由一个封闭的证据代码注册表支持。当 AEGIS 不知道哪个代理接触了文件时,它会标注为 unattributed;它绝不会虚构所有者。 - 防篡改日志。 审计事件是哈希链式 JSONL(事件模式 v1),每日轮转、30 天保留期,并在写入缓冲区溢出时显式标记丢失。
- 实测而非断言。 身份机制在仓库内进行了基准测试:在两次记录的运行中,提供者的出生时间一致性对所有可比较进程都是精确的(542/542 和 419/419),进程快照辅助进程每次扫描约耗时 10 毫秒,而回退提供者则需要数百到数千毫秒。每次运行的表格、环境和已说明的差距见 docs/bench/。
证据:src/main/process-identity.js · src/main/attribution.js · 正确性审计 · 基准测试 2026-08-12 · 基准测试 2026-08-13
监控优先
AEGIS 是一台摄像机,而不是一名守卫。 它观察并记录——目前不会在操作系统层面阻止代理。没有内核钩子,也没有自动执行机制。进程控制(终止 / 挂起 / 恢复)仅限手动且由用户触发。主动阻止在路线图上,而非当前版本中。将 AEGIS 用于可见性、审计和异常检测——当你需要强制执行时,请将其与沙箱配合使用。
AEGIS 与代理内部监督的区别
大多数 AI 代理监督工具都是对代理本身进行插桩——例如 Claude Code 插件、IDE 扩展或 SDK 包装器。这种部署方式存在结构性盲区:代理只有在(或其用户)安装了钩子时才会出现。一个原始的 python autogpt.py、未包装的二进制文件或根本不配合的工具,对代理内部插桩来说是不可见的。
AEGIS 则位于操作系统层:它从代理外部观察进程、文件和网络活动,因此它所看到的内容不依赖于代理的配合——只取决于 AEGIS 自身的覆盖范围(见已知限制)。它并不是唯一在本地观察代理的工具——例如 AgentSight 在 Linux 上从 eBPF 层进行观察——而基于钩子的工具是互补而非竞争的:钩子能看到选择加入的代理内部的意图(提示词、工具调用),而 AEGIS 则能看到机器上运行的任何内容的实际效果(进程、文件、连接),并将其关联到代理实例,无需代理配合。
已知限制
无法校准的监控器是无法信任的监控器,因此限制在此明确列出,而不是事后才发现。此列表背后经过重新验证的发现(每条都带有 OPEN/CLOSED 状态)见正确性审计;简要版本:
- 覆盖范围基于签名和启发式规则。 检测从 110 个代理(262 个进程名称签名)加上启发式规则(WSL、IDE 扩展、本地 LLM 探测)开始。不匹配其中任何一项的代理二进制文件将无法被检测到。
- 轮询存在盲区。 在扫描间隔(约 10 秒)之间诞生并消亡的进程永远不会被观察到;基准测试页面明确说明了这一点。通过 ETW 的逐事件捕获在路线图上,静态侦察已在 docs/recon/kernel-file-etw.md 中完成。
- macOS/Linux 身份识别能力降级。 这些平台目前不提供操作系统出生时间,因此实例身份仅回退到 PID,在 PID 被重用时不安全。Token 成本跟踪仅限 Windows。
- UI 事件窗口会静默截断。 渲染进程保持有界的事件窗口,可能与总数不一致,且目前没有截断横幅。
- 传感器健康状态已跟踪但尚未显示。 主进程会记录文件系统和网络传感器的逐传感器健康状态,但 UI 目前无法区分静默的机器和失效的传感器,且进程扫描超时会被跳过而不计数。
- 审计丢失标记需要成功刷新。 如果进程在磁盘仍处于故障状态时被终止,被逐出的审计条目可能会丢失,且磁盘上没有标记。
我们刻意不做的主张
本 README 中出现的数字仅当它们从仓库中推导出来(并由 npm run counts:check 强制执行)或通过书面记录的方法测量时才会出现。有些人询问的一些数字尚不存在,因此我们不会陈述它们:
- 启动时间。 不存在启动基准测试;旧的“两秒以内”的说法已被移除,而不是保留为未测量的数据。
- 检测率或误报率。 存在一个带有独立判定基准的场景基准测试(
bench/,以 Sysmon/Procmon 为评分标准),但它仅限 Windows、只覆盖一个场景,且不在 CI 中运行——不足以作为比率的基础。 - 开销。 AEGIS 自身的 CPU/RAM 成本尚未通过书面记录的方法进行测量。
- 基准测试加速的标题数字。 在同一台机器上两天之间,实测的快照与回退之比从 193× 变为 51×;持久的主张是较弱的那一个——快照约 10 毫秒,回退为数百到数千毫秒——这也是此处引用的唯一形式。
- 逐事件置信度分数。 在存在真实基准测试之前,刻意不在产品中提供。
- 测试数量。 手工复制的套件数量会静默过期;套件会自行打印其数量,CI 在每次提交时都会运行它。
为什么需要独立监督
AI 代理对文件、凭据和 shell 命令拥有深度访问权限。风险并非假设性的:卡巴斯基关于 OpenClaw 案例的报告指出,2026 年 1 月的一次安全审计发现了 512 个漏洞,其中 8 个为严重级别,并认为更深层的问题是架构性的——特权本地访问与外部通信能力的结合(卡巴斯基,2026-02-10)。打补丁能修复 Bug,但不能让你了解代理在你的机器上实际做了什么。这种可见性正是 AEGIS 所增加的层次。
下载
Windows 安装程序
从 v0.11.0-alpha 开始,发布版本附带 Windows NSIS 安装程序——从最新发布下载 .exe。从 v0.13.0-alpha 起的发布版本还附带签名清单,因此下载内容可以针对本仓库中提交的公钥进行离线验证——见验证 AEGIS 发布。更早的发布版本不附带清单,无法以此方式验证。
从源码构建(所有平台)```bash
git clone https://github.com/antropos17/Aegis.git cd Aegis npm install npm start
> 需要 **Node.js 24.x**(`package.json` 中的 `engines`)。建议使用 Windows 10/11;macOS/Linux 为实验性支持([#37](https://github.com/antropos17/Aegis/issues/37))——参见[已知限制](#known-limits)。
### 无需 AI 代理即可试用
没有运行 AI 代理?演示模式可让你使用模拟数据探索完整仪表板——无需真实监控,无需真实进程。```bash
npm run dev
# then open http://localhost:5174
开发服务器承载演示场景引擎——vite.config.js 在命令为 serve 时启用它,因此模拟仪表盘无需单独的构建步骤或 Electron 即可渲染。如需静态、可共享的构建(无开发服务器、无 Electron),运行 npm run build:demo 并使用任意静态文件服务器托管生成的 dist/demo 目录(构建使用相对资源路径,因此任何主机均可工作)。
演示模式运行一个场景引擎,循环经历四个威胁阶段——平静 → 升级 → 危急 → 重置——并模拟多达 12 个 AI 代理(Claude Code、Copilot、Cursor 等)。文件访问事件、网络连接、异常评分和风险评估均实时生成,因此每个标签页和功能都完全可用。
使用它可在部署前评估 AEGIS、向团队演示 UI,或在无需实时 Windows 环境的情况下开发新功能。
发布历史
| 版本 | 日期 | 亮点 |
|---|---|---|
| v0.11.0-alpha | 2026-08-11 | Windows 安装程序、事件模式 v1 归因、端点判定、传感器健康记录、WSL 与 IDE 扩展检测 |
| v0.10.0-alpha | 2026-03-09 | 代码清理、安全加固、命令面板 |
| v0.9.1-alpha | 2026-03-08 | 下拉去重、技能路径、aegis-context 优化 |
| v0.9.0-alpha | 2026-03-08 | categoryIndex、prompt-craft 技能、TS 迁移存储 |
| v0.8.2-alpha | 2026-03-08 | formatBytes TS 提取、有意义的测试、分支清理 |
| v0.8.1-alpha | 2026-03-07 | 补丁发布 |
| v0.8.0-alpha | 2026-03-05 | 发布就绪:CSP 加固、OpenClaw 集成、README 全面修订 |
| v0.7.0-alpha | 2026-03-04 | YAML 规则集、68 条规则、热重载、568 项测试 |
| v0.5.0-alpha | 2026-03-03 | 精美 UI 重新设计、VisTimeline、AgentGraph |
| v0.4.0-alpha | 2026-03-03 | TypeScript 基础设施、性能、重构 |
功能
检测 — 110 个代理(262 个进程名称签名)、父链解析、敏感路径与代理配置监控、带信任等级(A+ 至 F)的逐代理风险评分、本地 LLM 检测、误报标记
分析 — 带滚动平均值的行为基线、多轴异常检测、通过 Anthropic API 进行的 AI 威胁评估(可选加入)、可打印的 HTML 威胁报告
仪表盘 — Bento 网格仪表盘:RiskRing 仪表、TrustBadge、带筛选器的活动流、带归因提示的会话时间线、可展开的代理卡片、保护预设(Paranoid/Strict/Balanced/Developer)、命令面板(Ctrl+K)、键盘快捷键(Ctrl+1-5)、深色/浅色主题、Toast 通知、OOM 保护
导出 — JSON、CSV、HTML 报告、一键 ZIP 归档、哈希链式 JSONL 审计日志(每日轮转、30 天保留)
i18n — 国际化,以英语为基础(en.json);欢迎社区翻译
CLI — --scan-json 用于脚本编写、--version、--help
YAML 规则集
- 8 个类别(AI 配置、密钥、SSH、云、浏览器、开发工具、加密货币、证书)中的 73 条检测规则
- 根据
rules/_schema.json进行验证;编辑规则集可热重载,无需重启 - 通过向
rules/添加.yaml文件进行扩展。规则 ID 必须唯一——重复 ID 会被跳过,而非覆盖。新添加的文件将在下次重载或重启时被拾取,因为监视器仅对现有顶层文件的更改作出反应
截图
截取自演示构建(
npm run build:demo),2026-08-21。
📸 防护盾 — 实时概览
📸 活动流
📸 规则与权限
📸 报告与导出
📸 代理统计
📸 设置
架构```
┌───────────────┐ ┌────────────────┐ ┌───────────────┐ ┌───────────────┐ │ Process │ │ File │ │ Network │ │ LLM Runtime │ │ Snapshot │ │ Watcher │ │ Monitor │ │ Detector │ │ (sidecar with │ │ (chokidar + │ │ (TCP + rDNS + │ │ (Ollama / LM │ │ CIM fallback)│ │ handle / RM) │ │ verdicts) │ │ Studio) │ └──────┬────────┘ └──────┬─────────┘ └──────┬────────┘ └──────┬────────┘ └──────────────┬───┴───────────────────┴──────────────────┘ ▼ ┌───────────────────────────────┐ │ Identity & Attribution │ │ instanceId = pid + birth time │ │ evidence codes, no guessing │ └──────┬────────────────┬───────┘ ▼ ▼ ┌──────────────────┐ ┌─────────────────────┐ │ Baselines + │ │ Audit Logger │ │ Anomaly (4-axis) │ │ (Event Schema v1, │ │ Risk Engine │ │ hash-chained JSONL) │ └──────┬───────────┘ └──────┬──────────────┘ ▼ ▼ ┌──────────────┐ ┌──────────────────┐ ┌───────────────┐ │ Dashboard │ │ Exports │ │ CLI │ │ (Svelte IPC) │ │ (JSON/CSV/HTML/ │ │ (--scan-json │ │ │ │ ZIP) │ │ --version) │ └──────────────┘ └──────────────────┘ └───────────────┘
Per-sensor health records live in the main process; surfacing them in the UI is on the roadmap.
**技术栈**:Electron 43、Svelte 5、Vite 7、Vitest。监控引擎采用 JavaScript(CommonJS);TypeScript 用于渲染进程和共享类型定义。CI 通过构建、lint、svelte-check、测试和审计任务对每次合并进行把关;`npm run counts:check` 从树中重新推导每个已记录的计数器,`npm run verify:gate` 验证身份见证器对注入突变体的检测,`npm run verify:seq-gate` 验证序列引擎对注入突变体的检测。
## 代理数据库
[`src/shared/agent-database.json`](https://github.com/antropos17/aegis/blob/master/src/shared/agent-database.json) 中包含 110 个代理:
**编码** — Claude Code、GitHub Copilot、Cursor、Windsurf、Tabnine、Amazon Q、Cody、Aider
**自主代理** — OpenClaw、Devin、Manus AI、OpenHands、SWE-Agent、AutoGPT、BabyAGI、CrewAI
**桌面端** — Anthropic Computer Use、Google Gemini、Apple Intelligence、Microsoft Copilot
**框架** — LangChain、Semantic Kernel、AutoGen、MetaGPT、TaskWeaver
**本地 LLM** — Ollama、LM Studio、vLLM、llama.cpp、LocalAI、GPT4All、Jan
可通过 UI 添加自定义代理,或直接编辑 JSON 文件。参见 [AGENTS.md](https://github.com/antropos17/aegis/blob/master/AGENTS.md)。
## 路线图
以下所有内容均为**计划中**,尚未发布。AEGIS 目前仅支持监控(参见[监控优先](#monitor-first))。
- [ ] 主动阻断 — 在违规时强制执行规则(用户态、执行前;内核驱动不在目标范围内)(当前:仅观察与记录)
- [ ] 在 UI 中展示各传感器健康状态 — 主进程记录已存在([设计文档](https://github.com/antropos17/aegis/blob/master/docs/roadmap/sensor-health-degraded.md))
- [ ] 为检测规则添加 MITRE ATT&CK 映射
- [ ] 基于机器学习的异常检测(当前:硬编码启发式权重)
- [ ] 一流的 macOS 与 Linux 支持(目前为实验性 — [#37](https://github.com/antropos17/Aegis/issues/37))
- [ ] 针对本地推理检测的 GPU 监控
- [ ] 按进程的文件归属(ETW、fanotify)— 静态侦察:[docs/recon/kernel-file-etw.md](https://github.com/antropos17/aegis/blob/master/docs/recon/kernel-file-etw.md)
- [ ] 容器/虚拟机检测(Docker、WSL)
- [ ] 面向 Web 端 AI 代理的浏览器扩展
- [x] 已签名的 Windows 自动更新(已实现;首个版本需要手动安装)
- [x] 国际化 / 本地化([#53](https://github.com/antropos17/Aegis/issues/53))
## 常见问题解答
### 什么是 Aegis?
Aegis 是一款开源的、面向 AI 代理的操作系统级监控工具。它基于 Electron 43 和 Svelte 5 构建,可实时跟踪进程、文件访问、网络活动和行为异常。监控引擎采用 CommonJS JavaScript;渲染进程使用 ES 模块,TypeScript 用于渲染进程和共享类型定义。所有数据均保存在本地 — 无遥测、无云依赖。
### 为什么 AI 代理需要监控?
OpenClaw、AutoGPT 和 Devin 等自主 AI 代理对本地文件、凭据和 shell 命令具有深度访问权限 — 却几乎不受监督。OpenClaw 案例就是一个具体例子:由 [Kaspersky](https://www.kaspersky.com/blog/openclaw-vulnerabilities-exposed/55263/) 报告的安全审计在一个热门代理中发现了 512 个漏洞。Aegis 提供了独立的可观测层,让您能够看到代理在您的机器上实际执行的操作。
### Aegis 与传统 EDR 有何不同?
传统 EDR 工具监控的是人类驱动的威胁 — 恶意软件、勒索软件、网络钓鱼。Aegis 专为 AI 代理行为而构建:其检测数据库中包含 110 个代理(262 个进程名签名)、73 条针对代理特定模式调优的检测规则,以及跟踪每个代理活动随时间变化的行为基线。此外,它采用监控优先策略:仅观察和记录,将强制执行交由沙箱处理。
### Aegis 是否支持 MCP 工具?
Aegis 监控的是进程,而非协议。如果通过模型上下文协议(MCP)连接的工具产生了进程、访问了文件或发起了网络调用,这些活动都会被观察并像其他活动一样被归属 — Aegis 本身不解析 MCP 流量。
### Aegis 能否替代沙箱?
不能。Aegis 是一个可观测层,而非限制层。沙箱限制代理能做什么;Aegis 向您展示代理正在做什么。两者相辅相成 — 使用沙箱进行强制执行,使用 Aegis 进行可见性、审计和异常检测。
### Aegis 支持哪些代理?
Aegis 的数据库中包含 110 个代理(262 个进程名签名),涵盖编码助手(Claude Code、Copilot、Cursor)、自主代理(OpenClaw、AutoGPT、CrewAI、Devin)、桌面 AI(Gemini、Apple Intelligence)、框架(LangChain、AutoGen、MetaGPT)以及本地 LLM 运行时(Ollama、LM Studio、llama.cpp)。您可以通过 UI 或 JSON 配置添加自定义代理。
### 我可以在生产环境中使用 Aegis 吗?
Aegis 是 alpha 软件(当前版本参见 [Releases](https://github.com/antropos17/Aegis/releases)),建议用于开发和测试环境。它采用监控优先策略 — 不会阻断任何操作 — 自动更新和操作系统级强制执行等生产部署功能在[路线图](#roadmap)中,而非当前版本中。
### Aegis 免费吗?
是的。Aegis 以 MIT 许可证发布,无遥测、无云要求、无付费层级。完整源代码可在 GitHub 上获取。
## 贡献者
<table>
<tr>
<td align="center"><a href="https://github.com/antropos17"><img src="https://assets.kitploit.com/production/public/readmes/11867/d578c57b7ef172e620fdae169ad91c8e0055b37d16844c2c2629faaf9b9219a2.jpg" width="80px;" alt=""/><br/><sub><b>Antropos7</b></sub></a></td>
<td align="center"><a href="https://github.com/ElshadHu"><img src="https://assets.kitploit.com/production/public/readmes/11867/3c10ee663b93377a199c1e7210a9367027209543b0517b81c3d062f896295e8f.jpg" width="80px;" alt=""/><br/><sub><b>Elshad Humbatli</b></sub></a></td>
<td align="center"><a href="https://github.com/skmelendez"><img src="https://assets.kitploit.com/production/public/readmes/11867/e5155c2418c9da5882d234cc3c4cc9553f394b267dc070af20e46ec29e6c1424.jpg" width="80px;" alt=""/><br/><sub><b>Steven Melendez</b></sub></a></td>
<td align="center"><a href="https://github.com/travisbreaks"><img src="https://assets.kitploit.com/production/public/readmes/11867/bc41c225a907e0765ed5854e34d18643727303d9f0322b87e3aadffce277f93a.jpg" width="80px;" alt=""/><br/><sub><b>travisbreaks</b></sub></a></td>
<td align="center"><a href="https://github.com/raye-deng"><img src="https://assets.kitploit.com/production/public/readmes/11867/922df91939ff1c15304305ca05e0e48193a6fd98679450b765363ae710a22344.png" width="80px;" alt=""/><br/><sub><b>raye-deng</b></sub></a></td>
<td align="center"><a href="https://github.com/KJyang-0114"><img src="https://assets.kitploit.com/production/public/readmes/11867/bf4bc0e449422b18054b342eea0716b8d434554a3b84fd539df0ac570d375a73.png" width="80px;" alt=""/><br/><sub><b>KJyang-0114</b></sub></a></td>
</tr>
</table>
[CONTRIBUTING.md](https://github.com/antropos17/aegis/blob/master/CONTRIBUTING.md) · [SECURITY.md](https://github.com/antropos17/aegis/blob/master/SECURITY.md) · [CODE_OF_CONDUCT.md](https://github.com/antropos17/aegis/blob/master/CODE_OF_CONDUCT.md)
## 支持
如果 Aegis 对您有帮助,请考虑在 GitHub 上为它点个星标 — 这有助于其他人发现该项目。
**团队与企业版** — 需要集中式仪表盘、SIEM 集成或托管部署?我们正在构建中。[获取通知](mailto:[email protected]?subject=Aegis%20Enterprise%20Interest)
## 许可证
[MIT](https://github.com/antropos17/aegis/blob/master/LICENSE)
## Star 历史
[](https://www.star-history.com/?repos=antropos17%2FAegis&type=timeline&legend=top-left)