gonzo-max2/aegis-unified-0.9.0

GitHub: gonzo-max2/aegis-unified-0.9.0

Aegis 是一个位于 AI 模型与操作系统之间的本地优先执行运行时,通过策略网关、受限工具、操作员审批和证据账本为 AI agent 提供可控、可审计、可回滚的任务执行环境。

Stars: 0 | Forks: 0

# Aegis [![CI](https://static.pigsec.cn/wp-content/uploads/repos/cas/39/39faa54be350a1dab8afd3b2fb8c1c83e4d9cff84abfef2374d19a18053687c4.svg)](https://github.com/gonzo-max2/aegis-unified-0.9.0/actions/workflows/ci.yml) [![Python 3.11–3.13](https://img.shields.io/badge/python-3.11%E2%80%933.13-56d6b8)](pyproject.toml) [![License: Apache-2.0](https://img.shields.io/badge/license-Apache--2.0-7a8a82)](LICENSE) [![Status: Alpha](https://img.shields.io/badge/status-alpha-e9b44c)](pyproject.toml) [![Project site](https://img.shields.io/badge/project-site-63c7da)](https://gonzo-max2.github.io/aegis-unified-0.9.0/) **面向语义 agent 的策略、溯源和可逆执行。** Aegis 是一个 local-first 的执行 runtime,位于 AI 模型和 操作系统之间。模型可以提出计划和工具调用;而确定性的代码负责控制 权限检查、批准、受限执行、回滚数据、验证凭证, 以及最终的成功状态。 ![Aegis Studio 执行真实的受保护任务](https://static.pigsec.cn/wp-content/uploads/repos/cas/39/3964b290418f8eb90353179c9b32aa9abeb4881bb9b05b8ccd1cf559bd00f9f2.webp)

当前 Aegis 0.10 Studio 源码通过规范的 runtime-event 合约渲染。可复现的捕获测试工具已检入到代码库中。

## Runtime 合约 ``` model proposal ↓ typed intent and capability snapshot ↓ permission + risk classification ↓ policy decision / operator approval ↓ bounded, cancellable execution ↓ diff + process + verification receipts ↓ proof-gated completion or explicit fracture ``` 规则很简单:**模型提出计划;runtime 负责验证和执行**。 工具参数会经过 schema 验证,受限于 workspace,进行策略分类, 需经批准,受到边界限制,经过脱敏处理,并写入到持久化的证据中。 ### 前沿语义控制平面 Aegis 0.10.5 在单个工具之上扩展了通用的语义内核。它 映射了源代码、runtime、外部证明和内部控制平面;将每个 操作动作绑定到确切的目标权限上;并将计划提案 与权限和证明分离开来。矛盾的、否定的或不受限的变异意图 会成为结构化的澄清环节,而不是随意猜测。没有任何来自事故的 host、provider、服务、域名、路径、用户名或凭证被编译到此 行为中。 规划使用受限的 System-2 搜索。模型提出几种架构 路径;而确定性的代码负责控制语义指纹、过程奖励、搜索 预算、置信度校准、Pareto 前沿选择、最弱维度底线、重复耗尽、致命安全关卡、平局裁决以及审计 摘要。请参见 [`docs/SYSTEM2_PLANNING.md`](docs/SYSTEM2_PLANNING.md)。 凭证使用独立的本地操作员边界。当配置的 SSH key 需要密码或策略允许密码回退时,Aegis 会主动 暂停,渲染一个无需凭证的说明界面,打开一个掩码的、不留历史记录的本地 提示符,只有在协议验证结果后才恢复运行。Secret 永远不会 进入聊天、工具 schema、命令、环境变量、凭证或模型 上下文。请参见 [`docs/SECURE_OPERATOR_AUTH.md`](docs/SECURE_OPERATOR_AUTH.md)。 ### Main-AI 信任、深度调试和受控的自我改进 Aegis 0.10.5 将信任边界从单个工具调用提升到了完整的 工程任务级别。规范的凭证身份、精确的证据账本、 独立的怀疑论审查、受保护的连续性单元以及因果 变异后验证,可以防止模型生成的文本、记忆中的声明或通用的 退出代码变成虚假的证明。Runtime 可以映射嵌套的 repository 联邦,构建受限的跨域调试图谱,对可证伪的探针进行排名, 并在超大型 workspace 中保持最具体的归属权。 对于从零开始的工作,项目生成路径会原子化地暂存一个完整的显式 蓝图,并在不将其称为 生产就绪的情况下评估生成的基础。对于缺失的 Aegis 功能,受批准限制的 自我修改可以暂存并验证一个隔离的候选分支,但 正在运行的进程无法热修补自身或批准自身的提升。请参见 [`docs/MAIN_AI_TRUST_MODEL.md`](docs/MAIN_AI_TRUST_MODEL.md)。 ### 选择性开启的公共 GitHub 自动修复 可选的 GitHub 服务会验证已签名的 webhook,要求维护者明确开启, 将每个工作订单绑定到确切的默认分支对象,并持久化一个 租赁式队列。公共 repository 代码仅在可丢弃的、 无凭证的、网络隔离的 worker 中运行,并使用 loopback 模型 endpoint。 独立的发布者只能使用已证明的凭证证据并打开一个 draft pull request;它绝不能执行 repository 代码。该功能默认是禁用的。请参见 [`docs/PUBLIC_GITHUB_AUTOFIX.md`](docs/PUBLIC_GITHUB_AUTOFIX.md)。 ## 核心组件 | 组件 | 用途 | 权限 | |---|---|---| | `aegis` | 滚动优先的终端操作员 | 相同的受保护 runtime | | `aegisui` | React 任务检查和控制 | 相同的 API、策略、目标和凭证 | | Runtime 内核 | 工具、策略、进程所有权、目标、证明、恢复 | 规范的执行权限 | | 专家配置 | 为任务加载的受限专业知识 | 缩减的能力;无顶级完成权限 | Aegis 不是一个新的基础模型,也不打算取代每一个专家 助手。它是位于本地或托管模型下方的受控执行层,适用于 软件、文档、数据、研究、策略分析和混合 workspace 任务。 Ollama 是默认的 provider;OpenAI、Anthropic 和 Google provider 可通过配置支持。 该 repository 不宣称已被采用、具备企业级隔离或经过独立的 安全审查。发布的信心来自于可复现的检查和与 特定 commit 相关的可审查产物——而不是来自于功能数量或自我报告的成熟度。 ## 真实的操作员界面 Aegis 0.10 Studio desktop mission view 原生 CLI 保留普通的终端滚动记录,而不是接管一个 备用屏幕。Studio 将相同的规范事件投射到执行 主干、持久化记录、证据密度、批准、目标、队列、资源管理器和 凭证查看器中。这两种界面都无法绕过 runtime。 ## 执行视图 ### 由 runtime 事件支撑的进度 Studio 将实际的 `AgentEvent` 记录标准化为执行追踪。只有当 实际发生规划、读取、编辑、运行、验证、批准、 委派、响应合成、完成或失败时,才会创建一个片段。已完成的 节点变为静态。只有最新的活动阶段才会显示受限的动态。 证据视图报告的是可度量的凭证,而不是估计的百分比: 映射的 repository 文件、检查和更改的唯一文件、通过或失败的检查、 命令凭证、检查点、子 agent 和阻碍。仅仅时间流逝永远不会推进它。 成功的追踪会产生一个确定性的完成证明。失败或不完整的 追踪会保留确切的失败点以及 `/retry`、`/strategy` 和 `/proof` 操作。恢复会从该节点创建一个新分支;它不会抹去失败的 历史记录。 底部的 HUD 在每个阶段使用不同的动态语法: - 规划阶段进行探索并收敛; - 读取阶段将证据向内拉取; - 编辑阶段使用受控的拼接; - 运行阶段使用方向性电流; - 验证阶段锁定离散的检查点; - 等待阶段几乎静止; - 完成和失败阶段完全静态。 动态可以设置为 `full`、`reduced` 或 `off`。默认的 **Graphite** 调色板 继承终端背景色,仅在语义状态中使用受限的青色、绿色、琥珀色和玫瑰色。其他可选调色板仍然可用。 ### 输入框反馈 输入框使用 prompt-toolkit 输入处理器,在不改变输入文本或光标映射的情况下,提供受限的、光标局部的反馈。在 full 动态模式下,它以大约 75 毫秒的视觉延迟跟随光标,在 reduced 动态模式下会变窄,在 off 模式下变为静态。提交会在滚动记录和第一个执行节点中产生一次转换;没有永久的装饰性动画。 ### 选择器和真实的子终端所有权 每个选择界面都是一个真正的选择器。模型、策略、调色板、设置、聊天、计划行、批准、命令和子 agent 工作流支持方向键、`j`/`k`、Tab/Shift+Tab、Page Up/Down、Home/End、Enter/Space、数字快捷键、模糊过滤和终端鼠标输入。如果增强输入不可用,Aegis 会使用受限的纯数字/默认回退,而不是打印无法选择的菜单。 捕获的命令(`!command`、`/shell`)会接收到闭合的标准输入。交互式命令(`!!command`、`/terminal`)暂时将控制 TTY 交给子进程,挂起 Aegis 输入框,以便 Vite、ESLint、包管理器及类似菜单能正常接收方向键、Tab、Space、Enter、鼠标序列和信号。模型请求的切换始终需要重新批准。 ### Runtime 边界 交互式任务在持久化的检查点周期之间自动继续。配置的迭代、工具、wall-time、重复或无进度限制永远不会作为死胡同式的 `iteration_budget_exhausted` 消息暴露出来。Aegis 首先尝试受限的继续执行,然后是禁用工具的最终合成,最后如果 provider 失败,则进行确定性的、有证据支撑的检查点。内部原因标识符保留在审计证据中,而操作员会收到已验证的进度、未解决的工作和恢复操作。 如果任何具体的工具、批准或子 agent 缺少终止凭证,则拒绝提供完成证明。这样的运行将保持未完成状态,而不是显示虚假的成功。 有关执行模型,请参见 [`docs/PROOFFLOW.md`](docs/PROOFFLOW.md);有关交互细节,请参见 [`docs/NATIVE_CLI.md`](docs/NATIVE_CLI.md)。 ## 专家网络 Aegis 通过一个小型的、权限受限的专家网络来路由复杂任务,而不是无限制的群体。内置的配置有 Repository 智能、知识工作、Web 平台、系统与原生、产品 UI、取证分析、取证强化、安全与策略、验证和发布工程。React、Node.js、Vite、runtime 深度调试、无障碍及类似的专业知识作为 JIT 技能在适当的 owner 内部加载,而不是为每个框架生成一个重叠的 agent。 ``` objective → repository classification → dependency-ordered route → scoped specialists → typed evidence handoffs → independent verification → release proof ``` 委派的子进程拥有缩减的工具注册表、独立的会话、受限的上下文和预算、无递归委派、激活的技能哈希、由 runtime 强制执行的可选路径范围、漂移检测,并且无权宣布整个任务完成。只读和验证子进程使用安全策略,并被拒绝批准。变异专家在被明确启用之前保持禁用状态,即便如此,普通策略和操作员批准仍然是权威的。 ``` aegis agents list aegis agents inspect web-platform aegis agents route "Repair the React UI and C++ bridge, verify, then package" aegis agents validate --json ``` 该包包含 37 个内置技能以及 workspace/全局扩展点。有关配置合约、路由语义、取证隔离、类型化切换、自定义配置和自定义技能,请参见 [`docs/SPECIALIST_MESH.md`](docs/SPECIALIST_MESH.md)。 ## 功能特性 - **本地模型 runtime:** Ollama `/api/chat`、流式输出、Gemma 思考级别、JSON-schema 结构化规划、原生工具调用、经过验证的视觉附件、运行内上下文压缩和持久化续接。 - **规划与控制:** 受限的 System-2 搜索、置信度校准的过程奖励、Pareto 前沿选择、最弱维度底线、确定性的语义回退、版本化的 `STEER_PROMPT_V2`、在安全的模型边界处的实时 `/steer` 指导、不可变的 `MissionProfileV2`、由 runtime 拥有的生命周期状态、workspace 范围的经验记忆验证、高级证明标准、受限的周期、感知漂移的恢复、重复调用保护、累积预算、取消和真实的非成功状态。 - **Repository 智能:** 增量式本地 SQLite/FTS 索引、Python AST 和 Tree-sitter 结构、符号/导入/依赖邻居、锚定检索、编辑后即时失效、secret/生成式/runtime 排除、类型化搜索/影响工具、嵌套 repository 联邦、最具体的路径所有权以及受限的因果调试图谱。 - **JIT 技能:** 兼容 Antigravity 的 `.agents/skills//SKILL.md`、仅元数据发现、最多八个配置的感知激活路由、按需受限资源、哈希和证明凭证。 - **Workspace 工程:** 清单、受限读取、一流的 `ChangeSet` 多文件差异、写入前全部验证、按文件原子替换、备份、尽力而为的回滚、效果后哈希、Git 检查和确定性审计结果。 - **专家委派:** 十个权限受限的归属权配置、确定性的依赖路由、类型化的证据切换、配置感知的 JIT 技能、由 runtime 强制执行的可选路径范围、本地/云并发限制、子进程清单、无递归委派以及陈旧指纹拒绝。 - **执行:** host 或加固的 Docker 后端、隔离的子进程环境、超时/进程组终止、输出边界、CPU/内存/PID 限制、丢弃的权限、只读的 container root,并且默认禁用网络。 - **基础设施:** 源自 repository 的执行拓扑、确切的命名 SSH 目标绑定、强制的 `known_hosts`、key/agent 身份验证、主动的本地掩码凭证挑战、无 agent转发、远程命令分类以及 SFTP 上传/下载。 - **研究:** Brave、Tavily 或 SearxNG 搜索;受保护的 HTTP(S) 抓取;重定向验证;私有地址阻止;HTML 提取;PDF 文本提取;以及稳定的源 ID。 - **操作:** 重启安全的 workspace 聊天、SQLite 会话历史、`.aegis/runs//manifest.json`、仅追加的生命周期事件、周期检查点、受保护的 Main-AI 连续性、规范的凭证身份、独立的怀疑论审查、可选择开启的 GitHub webhook/lease 控制平面、临时运行附件、secret 脱敏、FastAPI/SSE、诊断、插件和稳定的 headless JSON。 经过验证的经验记忆仅从终止的 运行结果中提取受限的计划和凭证元数据。它是经过脱敏处理的,会过期,绝不跨 workspace,并且被明确标记为 不受信任:召回的历史记录不能授权操作或满足证明。可以通过 `aegis memory list` 进行检查,通过 `aegis memory search` 进行搜索,或者使用 `aegis memory forget ... --yes` 删除确切的记录。请参见 [`docs/VERIFIED_EPISODIC_MEMORY.md`](docs/VERIFIED_EPISODIC_MEMORY.md)。 ## 环境要求 - Python 3.11–3.13 - 已安装 `gemma4:12b` 的 Ollama - 推荐 `uv`;也支持标准的 `pip` - 用于 React Studio 构建的 Node.js 20.19+ 和 npm - 可选:用于更强命令隔离的 Docker - 可选:用于网络搜索的 Brave/Tavily/SearxNG - 可选:用于指纹检查的 OpenSSH 工具 Gemma 4 12B 是一个庞大的本地模型。硬件要求因量化、上下文和并发而异。如果内存压力较大,请从 Ollama 默认模型开始,并在配置中减小 `context_window`。 ## 快速开始 ### 一键用户安装 ``` cd aegis-unified-0.9.0 ./scripts/install-user.sh source ~/.bashrc aegis --version ``` 安装程序会创建一个隔离的 `.venv`,安装所有声明的 runtime 依赖项,对 React 源代码进行类型检查和测试,构建生产环境的浏览器资源,验证 Proofflow runtime,并将原生的 `aegis` 命令指向此版本。如果任何构建或测试失败,它将停止。请勿使用 `--no-deps`。 ### React Proofflow Studio 只读模式启动: ``` aegis web --workspace /path/to/project ``` 策略控制的写入启动: ``` aegis web --workspace /path/to/project --allow-write ``` 服务器会打印其 loopback URL;请手动打开它。Aegis 绝不会启动浏览器 或控制桌面会话。浏览器通过同源的 WebSocket/API 网桥连接到相同的策略 引擎,并渲染真实的执行事件、 凭证、批准、子 agent 状态、文件和完成证明。它永远不会直接 启动工具。 请参见 [`ARCHITECTURE_WEB.md`](ARCHITECTURE_WEB.md)、[`RELEASE_NOTES_0.9.2.md`](RELEASE_NOTES_0.9.2.md) 和 [`VALIDATION_0.9.2.md`](VALIDATION_0.9.2.md)。 ### 原生 CLI ``` # 1. 创建环境并安装运行时依赖。 uv sync --python 3.12 --all-extras --dev # 2. 在另一个终端启动 Ollama 并获取默认模型。 ollama serve ollama pull gemma4:12b # 3. 创建工作区规则并验证环境。 uv run aegis init --workspace . uv run aegis doctor --workspace . # 4. 运行可选的首次设置,然后启动原生 CLI。 uv run aegis setup --workspace . uv run aegis --workspace . ``` 也支持标准的 `pip` 安装: ``` python -m venv .venv . .venv/bin/activate # Windows PowerShell: .venv\Scripts\Activate.ps1 python -m pip install -e ".[api]" aegis init --workspace . aegis doctor --workspace . aegis setup --workspace . aegis --workspace . ``` `aegis` 和 `aegis tui` 都会启动规范的原生内联界面。`aegisui` 启动 React Studio。 ### 一键 Docker Compose runtime Compose 堆栈会启动 Ollama,等待其变得健康,在一个一次性初始化服务中拉取 `gemma4:12b`,并在拉取成功后启动仅限 loopback 访问的 Aegis API。 ``` mkdir -p workspace cp .env.example .env python - <<'PYTOKEN' from pathlib import Path import secrets path = Path(".env") text = path.read_text(encoding="utf-8") text = text.replace( "AEGIS_API_TOKEN=", f"AEGIS_API_TOKEN={secrets.token_urlsafe(48)}", 1, ) path.write_text(text, encoding="utf-8") PYTOKEN docker compose up --build ``` API 默认监听 `http://127.0.0.1:8765`。请将 repository 放在 `./workspace` 下,妥善保管生成的 bearer token,并在生产环境使用前将 `OLLAMA_IMAGE` 以及命令沙盒镜像固定为已审查的摘要值。 Headless 执行: ``` uv run aegis run \ --workspace /path/to/project \ --mode safe \ "Audit the repository, explain the top risks, fix the highest-confidence defect, and run targeted tests." ``` 机器可读的执行会拒绝交互式批准,除非明确提供 `--approve-all`: ``` uv run aegis run --json --workspace . "Inventory this repository and report risks." ``` 持久化任务、恢复、图像和本地索引: ``` uv run aegis index --workspace . --json uv run aegis run --continuous --attach ui.png --workspace . \ "Implement and verify the full repository-wide change" uv run aegis run --resume RUN_ID --workspace . ``` 请从你打算操作的 repository 启动 Aegis,或者显式地传递它: ``` aegis -w /path/to/repository ``` 当所选 workspace 为用户主目录 或文件系统根目录时,自动索引将被暂停。这可以避免意外扫描范围过广的 文件系统。 如果确实需要该范围,`/index refresh` 仍然可用。冷索引绝不会 阻止规划;Aegis 会在后台刷新运行的同时继续进行受限的 直接检查。 ## 策略模式 | 模式 | 自动操作 | 需批准的操作 | |---|---|---| | `safe` | workspace 读取、网络读取、内部计划更新 | workspace 写入、所有本地执行、SSH、破坏性操作 | | `workspace` | 读取、常规 workspace 写入、中等风险的 Docker 执行 | host 变异/执行、高风险操作、SSH 写入、破坏性操作 | | `autonomous` | 低/中等非破坏性操作 | 高风险操作、破坏性操作、SSH 写入 | 即使使用 `--approve-all` 或 `dangerously_skip_approvals`,关键命令模式也会被拒绝。策略分类是纵深防御,不能替代操作系统的隔离。 对于无人值守的项目命令,请使用 Docker 作为配置的后端: ``` [sandbox] backend = "docker" docker_image = "python:3.13-slim" docker_network = "none" docker_memory = "4g" docker_cpus = 2.0 ``` ## 配置 默认的用户配置由 `aegis init` 使用平台原生的配置目录创建。使用以下命令查看有效的、已脱敏的配置: ``` uv run aegis config show ``` 相关的环境变量覆盖: ``` export AEGIS_MODEL=gemma4:12b export AEGIS_OLLAMA_URL=http://127.0.0.1:11434 export AEGIS_POLICY_MODE=safe export AEGIS_SANDBOX_BACKEND=docker export BRAVE_SEARCH_API_KEY=... # 或 TAVILY_API_KEY=... # 或 AEGIS_SEARXNG_URL=http://127.0.0.1:8080 ``` 有关每个字段的说明,请参见 [`docs/CONFIGURATION.md`](docs/CONFIGURATION.md)。 ## SSH 设置 只有命名的 SSH 别名才会暴露给模型。强制要求进行 host-key 验证。 ``` [ssh.hosts.production] host = "server.example.com" user = "deploy" port = 22 known_hosts = "~/.ssh/known_hosts" client_keys = ["~/.ssh/id_ed25519"] connect_timeout_seconds = 15 command_timeout_seconds = 120 ``` 检查提供的指纹: ``` uv run aegis ssh fingerprint production ``` `ssh-keyscan` 本身**并不能**建立信任。在将 key 添加到 `known_hosts` 之前,请通过独立的渠道比较结果。Aegis 绝不会禁用 host-key 验证,也绝不会将你的 SSH agent 转发给远程服务器。 ## 网络参考 `web_fetch` 可以在没有搜索 provider 的情况下工作。当 `provider = "auto"` 时,`web_search` 会按以下顺序选择第一个配置的 provider:Brave、Tavily、SearxNG。 所有抓取的内容都会被包装为不受信任的参考资料。系统提示会告诉模型绝不要执行在页面中找到的指令。URL 验证默认会阻止凭证、非 HTTP 协议、loopback、链路本地、私有、保留和非全局目标。对于充满恶意的环境,请添加出站代理/防火墙,因为应用层的 SSRF 检查无法替代网络出口控制。 ## CLI 命令 ``` aegis Launch the native inline CLI aegis setup Run selectable first-run/reconfiguration flow aegis tui Launch the canonical native inline interface aegis run TASK Run one headless agent task aegis run --continuous TASK Run durable bounded continuation epochs aegis run --resume RUN_ID Resume a checkpoint after drift checks aegis run --attach IMAGE TASK Add repeatable vision input aegis index Build/refresh structural repository index aegis skills --for OBJECTIVE List metadata and routed JIT skills aegis doctor Check Python, provider, model, tools, web, SSH aegis audit Run deterministic workspace audit aegis init Create config and .aegis/rules.md aegis sessions List durable agent sessions aegis chats List persistent workspace chats aegis config show|init Inspect or initialize config aegis model list|pull Manage Ollama models aegis ssh fingerprint ALIAS Inspect an SSH host-key fingerprint aegis api Start the local SSE API ``` 原生快捷键:`Ctrl+K` 可选择的命令中心、`Ctrl+T` 可选择的计划、`Shift+Tab` 循环切换 safe/workspace/autonomous、`Alt+P` 模型选择器、`Ctrl+O` 工具详情切换、`Ctrl+G` 或 `Ctrl+X Ctrl+E` 外部编辑器、`Ctrl+L` 清除、以及按两次 `Ctrl+X Ctrl+K` 停止父任务和委派的工作流。`Ctrl+C` 清除输入并取消活动运行;在空闲状态下连续按两次空输入可退出。`Ctrl+D` 也需要按两次才能退出。为 shell 命令添加前缀 `!` 可进入捕获模式,或者添加 `!!` 获取真实终端所有权。 在任务执行期间,输入的普通文本将作为操作员指导排队,而不是开启第二次运行。`/tasks` 选择特定的计划行,`/agents` 选择一个工作流,而 `/commands` 仅公开在当前模型边界下安全的操作。 ## API 在 loopback 上启动: ``` uv run aegis api --host 127.0.0.1 --port 8765 ``` 对于非 loopback 绑定,请设置 `AEGIS_API_TOKEN`。除非 `allow_arbitrary_workspaces = true`,否则请求将被限制在 `api.workspace_root` 范围内。除非 `api.allow_write = true`,否则写入功能保持禁用状态。 请参见 [`docs/API.md`](docs/API.md)。 ## 验证 ``` make lint make typecheck make test make frontend make build uv run aegis --version uv run aegis audit --workspace . --json ``` 真实的多轮 agent 行为会通过生产 测试工具、真实工具、严格的执行环境结果和模型评判器单独进行验证: ``` aegis eval run --model gemma4:12b --judge-model gemma4:e2b-it-qat ``` 有关场景声明、评分器、产物和重复指南,请参见 [`docs/LIVE_AGENT_EVALUATIONS.md`](docs/LIVE_AGENT_EVALUATIONS.md)。 该套件涵盖了生命周期状态和证明持久化、进程重启恢复、 workspace 漂移、Tree-sitter/FTS 检索、渐进式披露技能、 视觉 payload、changeset、受限的并行子 agent、原生内联选择器、 策略边界、API 限制以及完整的 agent 循环。有关确切的发布记录,请参见 [`docs/VALIDATION.md`](docs/VALIDATION.md)。 ## 项目结构 ``` src/aegis_terminal/ agent.py run coordinator and bounded tool loop run_completion.py completion proof, state, and final response boundary mission.py V2 mission profiles, manifests, lifecycle, checkpoints indexing.py local structural SQLite/FTS repository intelligence jit_skills.py progressive-disclosure workspace/global skills attachments.py validated ephemeral multimodal input llm.py Ollama streaming + structured-output client policy.py permissions, risk classification, approvals tools/ workspace, Git, shell, web, SSH, planning tools native/ inline prompt-toolkit/Rich terminal interface api.py FastAPI/SSE adapter session.py SQLite transcripts and tool history auditlog.py append-only redacted JSONL events ``` 在扩展执行权限之前,请阅读 [`ARCHITECTURE.md`](ARCHITECTURE.md)、[`SECURITY.md`](SECURITY.md) 和 [`docs/TOOLS.md`](docs/TOOLS.md)。 ## 许可证 Apache License 2.0。请参见 [`LICENSE`](LICENSE)。
标签:AI风险缓解, Python, React, Syscalls, 工作流回滚, 执行运行时, 无后门, 策略控制