fboiero/Argentor

GitHub: fboiero/Argentor

Argentor 是一个基于 Rust 的安全多智能体 AI 框架,旨在为关键业务提供具备强安全隔离与合规保障的自动化编排能力。

Stars: 1 | Forks: 0

# Argentor **安全的 Rust 多智能体 AI 框架,内置 WASM 沙箱插件、MCP 集成和合规模块。** [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/fd451c482d214456.svg)](https://github.com/fboiero/Argentor/actions/workflows/ci.yml) [![License: AGPL-3.0](https://img.shields.io/badge/License-AGPL--3.0--only-blue.svg)](https://www.gnu.org/licenses/agpl-3.0) [![Rust](https://img.shields.io/badge/Rust-1.80%2B-orange.svg)](https://www.rust-lang.org) [![Tests](https://img.shields.io/badge/Tests-4498%20passing-brightgreen.svg)]() [![LOC](https://img.shields.io/badge/LOC-187K%2B-informational.svg)]() [![Crates](https://img.shields.io/badge/Crates-15-informational.svg)]() [![PyPI](https://img.shields.io/badge/PyPI-argentor--sdk-blue.svg)](https://pypi.org/project/argentor-sdk/) [![npm](https://img.shields.io/badge/npm-%40argentor%2Fsdk-red.svg)](https://www.npmjs.com/package/@argentor/sdk) ## 演示

Argentor Pipeline Demo

Run it yourself ``` cargo run -p argentor-cli --example demo_pipeline ``` 该智能体执行 8 个真实工具:`shell`(git 统计、LOC、注释、安全扫描)、`file_read`(Cargo.toml)、`memory_store`(向量嵌入)、`memory_search`(余弦相似度)、`file_write`(Markdown 报告)。所有操作均经过权限检查与审计日志记录。
## 什么是 Argentor? Argentor 是一个自主智能体框架,专为 **安全性**、**合规性** 和 **多智能体编排** 而设计。使用 Rust 从零构建,它解决了现有框架中的关键漏洞(RCE、沙箱逃逸、SSRF、路径遍历),同时提供完整的多智能体系统,遵循 [Anthropic 的推荐模式](https://docs.anthropic.com/en/docs/build-with-claude/agentic-systems)。 与事后补充安全性的框架不同,Argentor将安全作为基础:每个技能在 WASM 沙箱中运行并基于能力进行授权,每个工具调用都被审计记录,每个智能体都在严格的权限边界内操作。这使得你可以在生产工作负载中放心使用,尤其在安全与合规至关重要的场景。 Argentor 还提供构建多智能体系统的完整平台——从代码生成流水线到 DevOps 自动化——内置可观测性、令牌预算追踪,并支持 14 个 LLM 提供商。无论是部署单个智能体还是编排一组专业化工作者,Argentor 都能处理复杂性,同时确保一切可审计且安全。 ## 关键特性 ### 核心运行时 - **Rust 1.75+**,启用严格 clippy 检查(`unwrap_used`、`expect_used` 等)——CI 中零错误、零警告 - **多提供商标 LLM 支持**——Claude、OpenAI、Gemini、OpenRouter、Groq、Ollama、Mistral、XAi、Azure OpenAI、Cerebras、Together、DeepSeek 等(14 个提供商标) - **自动故障转移**——跨 LLM 后端使用 `RetryPolicy`(指数退避、错误分类) - **断路器**——每个 LLM 提供商的独立断路器(Closed→Open→HalfOpen 状态机),集成到 AgentRunner - **LLM 响应缓存**——内存中的 LRU,带 TTL 过期、命中/未命中指标、令牌节省追踪 - **流式响应**(SSE)——`StreamEvent` 类型 - **配置热重载**——通过文件监视器(`notify` crate,500ms 防抖) - **令牌估算**——按提供商标识并计算成本 - **批处理器**——对多个 LLM 请求进行分组,优先级队列调度 ### 安全性(核心差异化) - **WASM 沙箱插件**——通过 wasmtime + WASI - **基于能力的权限**(FileRead、FileWrite、ShellExec、NetworkAccess 等) - **SSRF 防护**——阻止本地主机、链路本地及私有网络范围 - **路径遍历防护**——规范化解 + 阻止列表 - **Shell 注入阻断**——检测 `rm -rf`、fork 炸弹等危险模式 - **输入净化**——剥离控制字符,防止日志注入 - **速率限制**——令牌桶算法 - **TLS/mTLS 支持** - **JWT 认证**(HMAC-SHA256)带 API 密钥哈希 - **OAuth2 提供商配置**(GitHub、Google、自定义) - **SSO/SAML 企业身份提供者支持** - **加密凭证存储**(AES-256-GCM + PBKDF2 密钥派生) - **RBAC 策略引擎**——管理员、操作员、查看员、自定义角色及细粒度权限 - **审计日志**——仅追加的 JSONL,结构化查询与统计 ### 多智能体编排 - **编排器-工作者模式**(Anthropic 推荐) - **10 种智能体角色**——编排器、Spec、Coder、Tester、Reviewer、Architect、SecurityAuditor、DevOps、DocumentWriter、Custom - **任务队列与 DAG 解析**——拓扑排序 + 环检测 - **智能体间消息传递**——MessageBus,支持发送、接收与广播 - **动态重规划**——6 种恢复策略:重试、重新分配、分解、跳过、中止、升级 - **令牌预算追踪**——每个智能体独立预算,带成本估算 - **AgentMonitor**——实时指标(轮次、工具调用、令牌、错误) - **渐进式工具披露**——约 98% 令牌减少 - **6 种协作模式**——流水线、MapReduce、辩论、集成、监督者、蜂群 - **子智能体生成**——带可配置深度限制 ### 代码生成与 DevOps 技能 - **API 脚手架生成器**——生成完整项目(Rust/Axum、Python/FastAPI、Node/Express),含路由、模型、Dockerfile 与测试 - **IaC 生成器**——Docker 多阶段构建、docker-compose、Helm 图表、Terraform(AWS/GCP)、GitHub Actions CI/CD - **代码分析技能**——语言感知的 AST 分析 - **测试运行器技能**——多语言测试执行与结构化结果解析 - **Git 操作技能**——基于 libgit2 的仓库操作(无 Shell 命令、无注入风险) ### 通用技能工具包 - **50+ 内置技能**——计算器、CSV/YAML/JSON 工具、正则表达式、UUID/哈希生成器、加密、网络搜索、安全扫描、模板引擎、JWT 工具、颜色转换器、语义化版本工具、Cron 解析器等 - **多提供商标网络搜索**——DuckDuckGo、Tavily、Brave、SearXNG,统一接口 - **插件市场**——技能发布、发现、依赖解析与版本管理 ### 防护链管道 - **PII 检测**——信用卡(Luhn)、SSN、邮箱、电话号码检测与脱敏 - **提示注入阻断**——23+ 模式签名 - **毒性过滤**——输入输出内容策略执行 - **防护链集成**——在智能体管道中预/后执行过滤 ### 网关与 API - **HTTP/WebSocket 网关**(基于 axum) - **REST API**——40+ 端点(10 核心 + 17 控制平面 + 13 代理管理) - **控制平面 API**——17 个端点用于部署管理、智能体注册与运行状况监控 - **Web 仪表板**——深色主题 SPA,位于 `/dashboard`,含部署管理、智能体目录、运行状况监控 - **OpenAPI 3.0 规范**——自动生成于 `/openapi.json` - **与 Prometheus 兼容的 `/metrics` 端点**——用于可观测性 - **OpenTelemetry 可观测性**——OTLP 导出、分布式追踪(`#[tracing::instrument]`) - **每 API 密钥速率限制**——租户感知(Free/Pro/Enterprise 分级) - **速率限制头**——X-RateLimit-*、IETF 草案 RateLimit、Retry-After - **Webhook 支持**——入站/出站,带 HMAC-SHA256 校验 - **通道桥接**——Slack、Discord、Telegram、Webchat 适配器 - **基于 WebSocket 的人工审批通道** ### A2A 协议(智能体到智能体) - **Google A2A 互操作**——JSON-RPC 2.0 over HTTP - **智能体发现**——通过 `/.well-known/agent.json`AgentCard) - **A2AServer**——带 `TaskHandler` 特性的自定义任务处理 - **A2AClient**——与远程 A2A 兼容智能体通信 - **完整任务生命周期**——发送、获取、取消、列表 ### 内存与搜索 - **向量内存**——本地嵌入(词袋 FNV,256 维) - **混合搜索**——BM25 + 嵌入相似度 + 互惠排名融合 - **查询扩展**——同义词组 - **JSONL 持久化**——向量存储 - **基于文件的数据库会话存储** ### 合规 - **GDPR**——同意追踪、删除权(Art. 17)、数据可移植性(Art. 20) - **ISO 27001**——访问控制日志、事件响应、风险评估 - **ISO 42001**——AI 系统清单、偏差监控、透明日志、人机交互 - **DPGA**——全部 9 项指标评估 - **合规报告生成**——Markdown、JSON、HTML 输出格式 - **多区域数据路由**——可配置的数据驻留与区域感知请求路由 ### MCP 集成 - **MCP 客户端**(JSON-RPC 2.0 over stdio) - **MCP 服务器模式**——将技能作为 MCP 工具暴露 - **MCP 代理**——集中式控制平面,含日志、指标、速率限制 - **代理编排器**——多代理代理与路由规则、断路器、故障转移 - **凭证保险库**——集中式 API 令牌管理,含轮换、配额与分组 - **令牌池**——每提供商标识的令牌池,滑动窗口速率限制与优先级 - **工具发现与自动重连** ### 生产强化 - **优雅关闭**——4 阶段有序关闭(PreDrain→Drain→Cleanup→Final),带超时强制 - **分布式关联**——W3C traceparent 传播、跨度层级、代理间 baggage - **错误聚合**——指纹识别、去重、严重性升级、趋势分析 - **告警引擎**——8 种条件类型、冷却抑制、批量评估、确认流程 - **SLA 追踪**——可用率 %、响应时间合规、事件生命周期、合规报告 - **多格式指标导出**——JSON、CSV、OpenMetrics(Prometheus)、InfluxDB 行协议 - **事件总线**——发布/订阅用于组件解耦(编排器事件) - **结构化输出解析**——从 LLM 文本提取 JSON Schema,自动回退模式 - **调试记录器**——逐步推理追踪,便于调试 ### 代码智能 - **CodeGraph**——基于正则的 AST 分析(Rust、Python、TypeScript、Go) - **DiffEngine**——精确差异生成(LCS,统一差异格式) - **TestOracle**——解析 cargo test、pytest、jest、go test 并自动化 TDD 循环 - **CodePlanner**——实现规划与 DAG 排序及风险评估 - **ReviewEngine**——25+ 条规则,覆盖 7 个维度(安全、性能、风格、正确性) - **DevTeam**——预配置团队,8 种工作流模板与质量门禁 ### SDK 与语言桥接 - **Python SDK**(`argentor-sdk` 在 PyPI)——httpx + pydantic,同步与异步,24 个模型 - **TypeScript SDK**(`@argentor/sdk` 在 npm)——基于 fetch,严格 TypeScript,SSE 流式 - **PyO3 Python 桥接**(`argentor-python` crate)——Rust 到 Python 的原生绑定,用于直接嵌入 ### 智能体智能(核心差异化) - **扩展思考模式**——多轮推理(快速/标准/深度/详尽),含任务分解与置信度评分 - **自我批判循环**——Reflexion 模式:智能体审查并修订自身响应,覆盖 6 个质量维度 - **自动上下文压缩**——在接近令牌限制时汇总对话历史(4 种策略) - **动态工具发现**——语义搜索相关工具(TF-IDF + 关键词混合),而非加载全部 - **智能体交接**——在专业化智能体之间顺序控制转移(OpenAI Agents SDK 模式) - **状态检查点**——保存/恢复完整智能体状态,支持时间旅行调试(LangGraph 模式) - **追踪可视化**——JSON、Mermaid 甘特图、火焰图输出,便于执行调试 - **动态工具生成**——智能体在运行时从声明式规范创建新工具 - **流程奖励评分**——7 个类别对每步推理质量进行评分 - **学习反馈循环**——工具选择器随执行结果数据不断优化 ### 智能体评估与基准 - **智能体评估与基准套件**——5 个基准系列,45 个测试用例衡量智能体质量 - **工作流 DSL**——基于 TOML 的工作流定义,无需 Rust 代码 - **知识图谱内存**——实体关系图,用于结构化智能体记忆 ### 流式与成本管理 - **SSE 流式聊天**——`POST /api/v1/chat/stream`,实时逐令牌响应 - **成本优化引擎**——5 种策略,在保持质量的同时最小化 LLM 支出 - **对话树**——类似 Git 的分支(分支、合并、差异)用于对话历史 ### 开发者工具 - **工具构建器**——3 行工具定义,快速创建技能 - **钩子系统**——Pre/Post 执行钩子,含拒绝/修改能力 - **权限模式**——6 种模式,包括仅计划模式(PlanOnly)用于安全执行 - **进程内 MCP 服务器**——无需 stdio 开销即可在进程中运行 MCP 服务器 ### 协议与集成 - **通用 `query()` API**——单个 API 覆盖全部 14 个 LLM 提供商 - **NDJSON 协议**——换行符分隔的 JSON,用于结构化智能体通信 - **无头模式**——在 CI/CD 或自动化中运行智能体,无需交互终端 - **上下文组装**——自动组装 Git 上下文与 ARGENTOR.md 项目文件 - **智能体 SDK 包装器**——Python 与 TypeScript 包装器用于智能体编排 ### 额外能力 - **Docker 沙箱**——用于不可信代码执行 - **浏览器自动化**——导航、截图、提取文本、填表、点击 - **类 Cron 任务调度**——周期性智能体作业 - **工件存储**——内存与文件系统后端 - **人机审批通道**——自动批准、回调、Stdin、WebSocket 通道 - **会话转录**——仅追加的 JSONL - **基于 Markdown 的技能定义** - **智能体人格系统**——名称、角色、指令、风格、约束、专业领域、思考层级 - **技能审查管道**——校验和、大小限制、ed25519 签名验证、WASM 静态分析 - **CLI REPL**——交互式智能体调试 Shell,含 12 条命令 ## 架构 ``` ┌──────────────────┐ │ Orchestrator │ │ (Opus model) │ └────────┬─────────┘ │ ┌───────────┬───────────┼───────────┬───────────┐ │ │ │ │ │ ┌─────▼─────┐┌────▼─────┐┌───▼────┐┌─────▼────┐┌────▼─────┐ │ Spec ││ Coder ││ Tester ││ Reviewer ││ Architect│ │ Worker ││ Worker ││ Worker ││ Worker ││ Worker │ └─────┬─────┘└────┬─────┘└───┬────┘└─────┬────┘└────┬─────┘ │ │ │ │ │ └───────────┴──────────┼────────────┴──────────┘ │ ┌────────────▼────────────┐ │ MCP Proxy │ <-- Centralized control plane │ (argentor-mcp) │ └────────────┬────────────┘ │ ┌──────────────────────┼──────────────────────┐ │ │ │ ┌─────▼──────┐ ┌──────────▼──────────┐ ┌──────▼──────┐ │ Skills │ │ External MCP │ │ Audit │ │ (WASM) │ │ Servers + Tools │ │ Log │ └────────────┘ └─────────────────────┘ └─────────────┘ │ │ ┌─────▼──────┐ ┌──────▼──────┐ │ Capability │ │ Compliance │ │ Check │ │ Modules │ └────────────┘ └─────────────┘ ``` ### 数据流 1. **摄入**——请求通过 REST API、WebSocket 或通道适配器(Slack、Discord、Telegram)到达 2. **路由**——网关进行认证、速率限制,并路由到对应智能体或编排器 3. **规划**——编排器将任务分解为带依赖关系的 DAG 子任务 4. **执行**——专用工作者并行执行子任务(遵循依赖关系),每个拥有独立上下文 5. **代理**——所有工具调用经过 MCP 代理进行权限验证、日志记录与渐进式披露 6. **综合**——编排器收集工件,验证一致性并生成最终输出 7. **审计**——每个动作记录到仅追加的审计追踪,供合规查询 ## 软件包 | 软件包 | 描述 | |--------|------| | `argentor-core` | 核心类型、错误、相关上下文、事件总线、错误聚合、指标导出 | | `argentor-security` | 能力、RBAC、速率限制、审计、TLS/mTLS、JWT、加密存储、告警、SLA 追踪 | | `argentor-session` | 会话管理、`FileSessionStore`、持久化 | | `argentor-skills` | 技能特质、`SkillRegistry`、WASM 沙箱运行时、审查管线、ed25519 签名 | | `argentor-agent` | 智能体运行器、14 个 LLM 后端、故障转移、流式、断路器、缓存、代码智能 | |argentor-channels` | 多平台通道适配器(Slack、Discord、Telegram、Webchat) | | `argentor-gateway` | HTTP/WebSocket 网关,含认证、Webhook、Prometheus 指标、控制平面、仪表板、OpenAPI | | `argentor-builtins` | 内置技能:Shell、文件 I/O、HTTP、内存、浏览器、Docker、代码生成 | | `argentor-memory` | 向量内存、混合搜索(BM25 + 嵌入)、查询扩展 | | `argentor-mcp` | MCP 客户端/服务器/代理、凭证保险库、令牌池、工具发现与自动重连 | | `argentor-orchestrator` | 多智能体引擎、任务队列与 DAG、智能体监控、部署管理器、运行状况检查 | | `argentor-compliance` | GDPR、ISO 27001、ISO 42001、DPGA 合规模块 | | `argentor-a2a` | Google A2A 协议:AgentCard、A2AServer、A2AClient、JSON-RPC 2.0 互操作 | | `argentor-python` | PyO3 Python 桥接——用于在 Python 应用中嵌入 Argentor 的原生 Rust 绑定 | | `argentor-cli` | CLI 二进制(`serve`、`deploy`、`agents`、`health`、`skill list`),支持配置热重载 | ## 快速开始 ### 先决条件 - Rust 1.75+(`rustup update stable`) - 来自 Claude、OpenAI、Gemini 或其他受支持提供商的 API 密钥 ### 构建 ``` git clone https://github.com/fboiero/Argentor.git cd Argentor cargo build --workspace ``` ### 配置 复制并编辑配置文件: ``` cp argentor.toml my-config.toml # 使用您的 API 密钥和首选项编辑 my-config.toml ``` 最小配置示例: ``` [model] provider = "claude" model_id = "claude-sonnet-4-20250514" api_key = "${ANTHROPIC_API_KEY}" temperature = 0.7 max_tokens = 4096 max_turns = 20 [server] host = "0.0.0.0" port = 3000 ``` ### 运行 ``` # 启动网关服务器 cargo run --bin argentor -- serve # 列出可用技能 cargo run --bin argentor -- skill list # 生成合规报告 cargo run --bin argentor -- compliance report ``` ### 客户端 SDK ``` # Python pip install argentor-client # TypeScript npm install @argentor/client ``` ``` from argentor_client import ArgentorClient client = ArgentorClient(base_url="http://localhost:3000", tenant_id="my-tenant") result = client.run_task("sales_qualifier", "Lead: Acme Corp, LATAM, CFO, Score 75") print(result["response"]) ``` ``` import { ArgentorClient } from '@argentor/client'; const client = new ArgentorClient({ baseUrl: 'http://localhost:3000', tenantId: 'my-tenant' }); const result = await client.runTask('support_responder', 'Customer needs help with withdrawal'); console.log(result.response); ``` ### 测试 ``` cargo test --workspace # Run all 3953 tests cargo clippy --workspace # 0 warnings (strict lints) cargo fmt --all -- --check # Check formatting ``` ## 安全模型 Argentor 采用纵深防御与基于能力的保障: | 威胁 | 防御 | |------|------| | 网关的 RCE | 源验证 + mTLS | | 沙箱逃逸 | WASM 隔离(wasmtime + WASI) | | SSRF | NetworkAccess 能力与允许列表,阻止本地/链路本地/私有网段 | | 路径遍历 | FileRead/FileWrite 作用域限定至目录,规范化解 + 阻止列表 | | 认证绕过 | JWT 认证(HMAC-SHA256)+ API 密钥中间件 | | 凭证窃取 | 加密凭证存储(AES-256-GCM + PBKDF2 密钥派生) | | 权限提升 | RBAC 策略引擎(管理员/操作员/查看员/自定义角色) | | 日志注入 | 净化器剥离控制字符 | | 供应链(插件)| WASM 隔离 + 能力审计 + ed25519 签名验证 | | Shell 注入 | 命令净化器阻断 `rm -rf`、fork 炸弹等危险模式 | | 暴力破解 | 每智能体/端点的令牌桶速率限制 | | 中间人攻击 | TLS/mTLS 支持 | ### 能力 每个技能声明其所需能力。权限系统在执行前进行验证: ``` [[skills]] name = "file_reader" type = "wasm" path = "skills/file-reader.wasm" [skills.capabilities] file_read = ["/tmp", "/home/user/docs"] ``` ### 认证与授权 ``` # JWT 认证 [auth] jwt_secret = "${JWT_SECRET}" algorithm = "HS256" # OAuth2 提供程序 [[auth.oauth2]] provider = "github" client_id = "${GITHUB_CLIENT_ID}" client_secret = "${GITHUB_CLIENT_SECRET}" # RBAC 角色 [[rbac.roles]] name = "operator" permissions = ["execute_skills", "read_sessions"] allowed_skills = ["shell", "file_read", "file_write"] rate_limit = { requests_per_minute = 100 } ``` ## 多智能体编排 编排器遵循 Anthropic 推荐的 **编排器-工作者** 模式: 1. **规划**——编排器将任务分解为带依赖关系的子任务 DAG 2. **执行**——专用工作者在并行中执行(遵循依赖关系),每个拥有独立上下文窗口 3. **综合**——编排器收集工件,验证一致性并生成最终输出 ### 智能体角色 | 角色 | 职责 | |------|-------| | **编排器** | 任务分解、委派工作者、合成结果 | | **Spec** | 分析需求,生成规范 | | **Coder** | 生成安全、惯用的代码 | | **Tester** | 编写并验证测试 | | **Reviewer** | 审查代码的安全性与合规性 | | **Architect** | 设计系统架构并作出结构性决策 | | **SecurityAuditor** | 执行安全分析与漏洞评估 | | **DevOps** | 处理部署、基础设施与 CI/CD | | **DocumentWriter** | 生成文档与报告 | | **Custom** | 用户自定义角色与指令 | ### 协作模式 | 模式 | 描述 | |------|-------| | **Pipeline** | 顺序处理的工作流 | | **MapReduce** | 并行执行并聚合结果 | | **Debate** | 多智能体辩论,最优响应胜出 | | **Ensemble** | 多智能体产出合并 | | **Supervisor** | 监督智能体监控并修正工作者 | | **Swarm** | 智能体自主围绕任务自组织 | ### 恢复策略 当子任务失败时,编排器可应用动态重规划: - **重试**——重新执行失败任务 - **重新分配**——分配给不同工作者 - **分解**——将任务拆分为更小子任务 - **跳过**——跳过任务并继续 - **中止**——停止整个流水线 - **升级**——转交人工审查 ### 令牌预算追踪 每个智能体在配置的令牌预算内运行。编排器追踪所有工作者的累计令牌用量与成本估算,实现成本感知任务分配。 ### 人工介入 高风险操作需人工审批: ``` TaskStatus::NeedsHumanReview // Pauses execution until approved ``` 审批通道:自动批准(测试)、Stdin(CLI)、WebSocket(网关)、回调(自定义)。 ## 代码生成与 DevOps 技能 Argentor 内置代码生成与基础设施自动化技能。 ### API 脚手架生成器 从规范生成完整项目脚手架: ``` [[skills]] name = "api_scaffold" type = "builtin" ``` 支持目标: | 框架 | 生成内容 | |------|----------| | **Rust / Axum** | 路由、模型、处理器、Cargo.toml、Dockerfile、测试 | | **Python / FastAPI** | 路由、模型、Schema、requirements.txt、Dockerfile、测试 | | **Node / Express** | 路由、模型、中间件、package.json、Dockerfile、测试 | ### IaC 生成器 生成基础设施即代码工件: | 输出 | 详情 | |------|------| | **Docker** | 多阶段构建,含安全加固 | | **docker-compose** | 服务定义,含资源限制、只读文件系统 | | **Helm 图表** | 完整图表(含 Deployment、Service、Ingress、HPA、PVC、ServiceAccount) | | **Terraform** | AWS 与 GCP 提供商配置 | | **GitHub Actions** | CI/CD 工作流(check、测试、clippy、fmt) | ### 附加开发技能 - **代码分析**——语言感知的 AST 分析 - **测试运行器**——多语言测试执行与结构化结果解析 - **Git 操作**——基于 libgit2 的仓库操作(无 Shell 命令、无注入风险) ## 可观测性 ### Prometheus 指标 Argentor 暴露与 Prometheus 兼容的 `/metrics` 端点: ``` GET /metrics ``` 可用指标包括请求计数、延迟直方图、活动连接数及智能体级统计。 ### 令牌追踪 按智能体与会话追踪令牌用量,含成本估算: - 每轮次的输入/输出令牌计数 - 每个智能体及编排运行的累计成本 - 带预算限制的强制执行 ### 审计日志 仅追加的 JSONL 审计日志,支持结构化查询: ``` let results = query_audit_log(&log, AuditFilter { action: Some("tool_call".into()), agent_id: Some("coder-01".into()), from: Some(start_time), ..Default::default() }); ``` ## 合规 ### GDPR - 同意追踪(`ConsentStore`) - 删除权(Art. 17) - 数据可移植性(Art. 20) - 目的限制 ### ISO 27001 - 访问控制日志 - 事件响应追踪 - 风险评估记录 ### ISO 42001(AI 管理) - AI 系统清单 - 偏差监控 - 透明日志 - 人工介入(HITL) ### DPGA(数字公共产品联盟) Argentor 覆盖全部 9 项 DPGA 指标: 1. **开源**——仅采用 AGPL-3.0 2. **SDG 相关性**——SDG 9(创新)、SDG 16(制度) 3. **开放数据**——通过 MCP 与开放数据集互操作 4. **隐私**——GDPR 合规模块 5. **文档**——完整文档(英/西) 6. **开放标准**——MCP(AAIF/Linux Foundation)、WASM、WIT 7. **所有权**——清晰治理 8. **不造成伤害**——ISO 42001、HITL、偏差监控 9. **互操作性**——MCP + A2A 协议支持 ## MCP 集成 Argentor 实现 [模型上下文协议](https://modelcontextprotocol.io/) 用于工具集成。 **5,800+ 预制集成**——通过 MCP 可用(详见 [docs/MCP_REGISTRY.md](docs/MCP_REGISTRY.md) 获取前 100 个服务端,如 filesystem、GitHub、Postgres、Slack、AWS、Stripe、Grafana 等)以及 [文档集成指南](docs/MCP_INTEGRATION_GUIDE.md)。 ### 客户端模式 连接外部 MCP 服务: ``` [[mcp_servers]] command = "npx" args = ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"] ``` ### 服务器模式 将 Argentor 技能作为 MCP 工具暴露,供其他智能体与客户端使用: ``` [mcp_server] enabled = true transport = "stdio" ``` ### 代理模式 MCP 代理作为集中式控制平面: - 每项工具调用的日志记录 - 依据能力策略的权限验证 - 每智能体速率限制 - 渐进式工具披露(~98% 令牌减少) - 健康检查自动重连 - 多后端工具发现 ## Docker ### 构建与运行 ``` docker build -t argentor . docker run -p 3000:3000 argentor serve ``` ### Docker Compose ``` docker-compose -f docker-compose.production.yml up -d ``` 内置的 `docker-compose.production.yml` 提供安全加固: - 资源限制(内存与 CPU) - 只读文件系统 - 丢弃能力(`cap_drop: ALL`) - 非 root 用户 ### Helm 图表 部署到 Kubernetes: ``` helm install argentor deploy/helm/argentor/ ``` 图表包含 Deployment、Service、Ingress、HPA、PVC 与 ServiceAccount 模板。 ## 基准测试 Argentor 与 LangChain、CrewAI、Pydantic AI、Claude Agent SDK 在六个可衡量维度上进行对比(所有数据均可从 `benchmarks/` 重现): - **[基准索引](docs/BENCHMARKS_INDEX.md)**——单页入口,覆盖所有赛道 - **[基准综合](docs/BENCHMARK_SYNTHESIS.md)**——带整体排名、敏感度分析与真实损耗的执行报告 - **[演进路线图](docs/EVOLUTION_ROADMAP.md)**——约 20 项基于基准的工程项(P0/P1/P2) 关键声明(均有引用): - Argentor 相比竞品带来约 2 ms 框架开销(对比 11–55 ms,N=10 配对,p < 0.0001) - Argentor 开箱即用可阻断 58.3% 的对抗性提示,而竞品为 0% - 在 50 工具工作负载下,Argentor 发送的令牌比 LangChain 少 7.9 倍 ## 下一步 - **[10 个分步教程](docs/tutorials/)**——从空目录到生产就绪的多智能体系统,涵盖首个智能体、技能、编排、RAG、自定义技能、防护链、智能体智能、MCP、部署与可观测性 - [快速入门指南](docs/GETTING_STARTED.md)——5 分钟快速启动(CLI、SDK、Docker) - [部署指南](docs/DEPLOYMENT.md)——生产部署(Docker、Kubernetes、Helm、多区域) - [技术报告](docs/TECHNICAL_REPORT.md)——架构深度解读 - [对比分析](docs/COMPARISON.md)——与 LangChain、CrewAI、AutoGen 的对比 ## 贡献 参见 [CONTRIBUTING.md](CONTRIBUTING.md) 获取指南。 ## 许可证 本项目采用 **GNU Affero General Public License v3.0** 许可——详见 [LICENSE](LICENSE) 文件。 ## 感谢 - [Anthropic](https://anthropic.com) —— Claude 模型与 MCP 协议 - [wasmtime](https://wasmtime.dev) —— WebAssembly 运行时 - [Axum](https://github.com/tokio-rs/axum) —— Web 框架 - [DPGA](https://digitalpublicgoods.net) —— 数字公共产品联盟 - [wiremock](https://github.com/LukeMathWalker/wiremock-rs) —— HTTP 模拟用于集成测试 - [criterion](https://github.com/bheisler/criterion.rs) —— 基准测试框架
标签:14种LLM, 50多种技能, AGPL-3.0, AI工具, Anthropic模式, CI自动化, LLM提供商, MCP集成, Node.js SDK, PyRIT, Python SDK, RCE防护, Rust, SSRF防护, WASM沙箱, 余弦相似度, 内存存储, 内存搜索, 可视化界面, 合规模块, 向量嵌入, 多智能体系统, 多智能体编排, 安全AI框架, 安全合规, 安全扫描, 实时演示, 审计日志, 开源框架, 技能插件, 持续集成, 插件沙箱, 搜索引擎查询, 文件读写, 时序注入, 权限控制, 沙箱逃逸防护, 测试用例, 演示管道, 用户代理, 网络代理, 网络流量审计, 自主AI代理, 自定义请求头, 路径遍历防护, 通知系统