doggydaddy90/robozilla-core

GitHub: doggydaddy90/robozilla-core

一款面向安全敏感场景的 AI Agent 运行时框架,通过契约驱动、策略优先的设计确保 Agent 行为始终在可控边界内执行。

Stars: 0 | Forks: 0

# RoboZilla Core RoboZilla Core 是一个用于契约驱动代理工作流的故障封闭、策略优先运行时。 其设计旨在确保即使能力扩展,强制执行依然有效。该平台优先考虑确定性验证、严格边界和可审计执行,而非宽松行为。 ## 本仓库包含内容 - 位于 `runtime/core` 下的模块化运行时 - 契约与策略强制执行(作业生命周期、权限、范围限制) - 安全 API 接口(健康检查、作业、制品、评估、仪表板) - Roland 信任感知安全模块和编排工具 - 针对核心强制执行路径的完整单元测试和压力测试覆盖 ## 核心安全不变量 这些是本代码库中不可协商的约束: 1. 能力管控默认拒绝(`CapabilityEnforcer`) 2. `IntentEnvelope` 哈希和范围检查是强制性的 3. 强制执行仅差异写入边界(`diffEnforcer` + `pathGuard.safeWrite`) 4. 严格模式隔离默认启用(`ROLAND_STRICT_MODE=true`) 5. 密钥/PII 处理采用故障封闭机制(`redaction_layer`,角色控制) 6. 工具出口前强制执行端点白名单 7. 强制执行脊梁不存在全局旁路开关 ## 架构 顶级运行时模块: - `runtime/core/api`:HTTP 路由器(`main`、仪表板、Roland 辅助工具) - `runtime/core/security`:能力、路径、差异、信任、意图、注入、角色、端点控制 - `runtime/core/orchestration`:研究路由、置信度适配器、脱敏、循环控制器 - `runtime/core/governance`:严格度配置文件和行为谨慎控制 - `runtime/core/search`:布尔查询策略 + 构建器 + 零结果记忆注册表 - `runtime/core/economics`:稀缺性和节流策略适配 - `runtime/core/registry`:schema 和清单加载/验证 - `runtime/core/executor`:契约感知作业引擎和策略层 - `runtime/core/audit`:不可变哈希链审计日志 - `runtime/core/tests`:单元/压力测试套件 ## Roland 加固模型 请求加固路径是信任感知且分层的: 1. 信任分类(`internal_system`、`structured_external`、`unstructured_external`) 2. 按信任级别选择防御矩阵 3. 针对非内部输入进行 Prompt 注入过滤 4. 意图风险评分和拒绝阈值检查 5. 基于严格度的敏感度调整(不削弱不变量) 6. 工具执行前能力强制执行保持强制性 ### 信任分类 在 `runtime/core/security/trust_classifier.py` 中实现。 - 内部签名类型化 schema 绑定调用 -> `internal_system` - 结构化 API JSON 输出 -> `structured_external` - 抓取/网页/用户文本 -> `unstructured_external` ### 防御矩阵 在 `runtime/core/security/defense_matrix.py` 中实现。 - `internal_system`:跳过注入/意图预处理,但仍需要能力、范围和核心边界 - `structured_external`:轻度注入过滤 + 意图检查 + schema 钩子 - `unstructured_external`:完整注入过滤 + 意图检查 + 熵值保护 + 高风险日志记录 ### 意图分类器 在 `runtime/core/security/intent_classifier.py` 中实现。 检测并评分: - 秘密提取尝试 - 范围覆盖尝试 - 系统提示泄露尝试 - 文件访问滥用 - 工具滥用意图 风险类别阈值: - `< 0.4`:低 - `0.4 - 0.7`:中 - `> 0.7`:高(在工具层之前拒绝) ### 严格度适配器 在 `runtime/core/governance/strictness_adapter.py` 中实现。 `system_strictness`(默认 `0.75`)仅控制行为谨慎度: - 意图拒绝敏感度 - 深度触发激进程度 - 少数派升级敏感度 - 熵值容忍度 - 经济节流激进程度 严格度不能禁用核心保护或将原子底线降至 `0.7` 以下。 ### 基于角色的数据访问 在 `runtime/core/security/role_enforcer.py` 中实现。 角色: - `admin` - `operator` - `viewer` - `agent_internal` 规则: - Admin 可以访问敏感个人字段(例如电话、地址、SSN) - 非管理员访问这些字段将被拒绝 - 凭证/秘密永远不会在聊天响应中返回,包括 admin ### Prompt 注入过滤器 在 `runtime/core/security/prompt_injection_filter.py` 中实现。 过滤/阻止的模式包括: - 指令覆盖措辞 - 密钥/令牌窃取请求 - 脚本标签 - 嵌入的大型 base64 payload - 编码指令尝试 ### 端点白名单强制执行 在 `runtime/core/security/endpoint_allowlist_enforcer.py` 中实现。 工具出口必须匹配声明的允许端点。 - 未知端点被拒绝 - 禁止通配符域 ## 搜索栈 ### 布尔查询策略 - 操作符策略文件:`runtime/core/search/search_operator_policy.yaml` - 构建器/验证器:`runtime/core/search/boolean_query_builder.py` 特性: - 特定层级操作符合法性 - 引擎能力矩阵检查 - 分组深度验证 - 确认偏差查询检测 - 结构化输出契约 ### 零结果记忆注册表 在 `runtime/core/search/zero_result_registry.py` 中实现。 目的: - 在 SQLite 中持久化高级零结果记忆 - 避免对结构等效的失败查询重复进行昂贵的升级 注册表表: - `zero_result_registry(engine, query_signature, zero_count, last_seen, entropy_score)` 查询签名行为: - 标准化布尔/操作符结构 - 剥离日期界限 - 剥离动态令牌 - 确定性 SHA-256 哈希 路由器集成: - 在高级升级路径之前应用 - 如果被阻止,则跳过高级调用并审计 `search.zero_memory_block` - 不阻止 RAG 或阶段 1 低成本表面 ## API 接口 主 FastAPI 应用(`runtime/core/api/main.py`)包括: - `GET /health` - `GET /audit/verify` - `POST /jobs` - `GET /jobs/{job_id}` - `POST /jobs/{job_id}/run` - `POST /jobs/{job_id}/stop` - `POST /artifacts` - `GET /artifacts/{artifact_id}` - `POST /evaluations` 仪表板路由器包括: - `GET /dashboard/telemetry` - `GET /dashboard/economics` - `GET /dashboard/rag` - `GET /dashboard/truth-ledger` Roland 路由器辅助工具(`runtime/core/api/roland_interface.py`)提供: - `POST /roland/query` - `POST /roland/research` - `GET /roland/health` - `GET /roland/economics_summary` ## 本地开发 安装依赖: ``` cd runtime/core python -m pip install -r requirements.txt ``` 运行 API: ``` cd runtime/core python -m uvicorn api.main:app --host ${API_BIND:-localhost} --port ${API_PORT:-8787} ``` 容器运行: ``` cd runtime/core docker compose up --build ``` ## 配置 主要配置文件: - `runtime/core/config/runtime.yaml` - `runtime/core/config/logging.yaml` - `runtime/core/config/limits.yaml` 关键环境控制: - `ROBOZILLA_PROJECT_ROOT` - `ROBOZILLA_RUNTIME_CONFIG` - `ROBOZILLA_LOGGING_CONFIG` - `ROBOZILLA_LIMITS_CONFIG` - `ROLAND_STRICT_MODE`(默认启用严格模式) ## 测试 运行完整核心套件: ``` python -m unittest discover -s runtime/core/tests -p "test_*.py" ``` 运行特定模块: ``` python -m unittest runtime/core/tests/test_research_router.py python -m unittest runtime/core/tests/test_zero_result_registry.py ``` ## 强制优先开发规则 添加新功能时: 1. 保持 `CapabilityEnforcer` 为强制性瓶颈 2. 保留 `IntentEnvelope` 验证和范围子集检查 3. 不要绕过 `safeWrite`/`safeDelete` 差异/路径控制 4. 维护秘密脱敏和角色约束 5. 在出口前强制执行端点白名单 6. 为拒绝情况添加测试,不仅是成功情况 有关运行时的具体细节,请参阅 `runtime/core/README.md`。
标签:AI Runtime, AI 安全, CISA项目, DLP, Fail-closed, Lerna, LLM 防护, PII 脱敏, Streamlit, Web报告查看器, 合同驱动开发, 审计日志, 提示词注入防御, 智能体编排, 治理与合规, 端点白名单, 策略执行, 网络安全审计, 能力围栏, 访问控制, 请求拦截, 软件供应链安全, 远程方法调用, 逆向工具, 零信任架构