sid-2424/AgentShield

GitHub: sid-2424/AgentShield

一款基于 TypeScript 的 AI Agent 运行时安全中间件,通过确定性策略引擎拦截 Prompt 注入与不安全工具调用。

Stars: 2 | Forks: 0

# AgentShield ## 功能 - ✅ 工具白名单 - ✅ 人工审批工作流 - ✅ Prompt 注入防护 - ✅ 路径遍历检测 - ✅ SSRF 防护 - ✅ 轻量级 TypeScript API ## 安装 ``` npm install agentshield ``` ## 快速开始 ``` import { AgentShield } from "agentshield"; const shield = new AgentShield({ allowedTools: ["readFile", "writeFile"], requireApproval: ["writeFile"] }); await shield.enforce( { tool: "writeFile", provenance: "SYSTEM", args: { path: "notes.txt", content: "Hello" } }, async () => { console.log("Writing..."); }, async () => true ); ``` ## 审计日志 AgentShield 可以在每次策略评估后生成审计事件。 ``` const shield = new AgentShield({ allowedTools: ["readFile"], auditLogger: (event) => { console.log(event); } }); ``` 示例事件: ``` { "timestamp": "2026-07-21T12:34:56.000Z", "tool": "deleteFile", "allowed": false, "reason": "Tool is not allowlisted", "risk": "HIGH" } ``` 这可以与日志系统、监控管道或 SIEM 平台集成,以审计 AI agent 的活动。 ## 支持的安全规则 | 规则 | 状态 | |------|--------| | 工具白名单 | ✅ | | 人工审批 | ✅ | | 破坏性关键词检测 | ✅ | | 路径遍历检测 | ✅ | | SSRF 检测 | ✅ | ## 为什么选择 AgentShield? LLM 非常擅长推理,但不应信任它们来决定特权操作是否安全。 AgentShield 位于 AI agent 及其工具之间,在执行之前应用确定性的安全策略。 ``` LLM │ ▼ AgentShield │ ▼ Policy Engine │ ▼ Security Rules │ ▼ Tool Execution ``` ## 路线图 ### v0.2 - 密钥检测 - Anthropic Claude Code 集成 - OpenAI Agents SDK 集成 - LangChain 集成 - Model Context Protocol (MCP) 支持 ### 未来 - 自定义规则插件 - 通过 JSON/YAML 进行策略配置 - OpenTelemetry 集成 - 额外的 SSRF 检测启发式算法 - 语义 Prompt 注入检测 ## 许可证 MIT
标签:AI代理, Streamlit, TypeScript, 人工智能, 安全中间件, 安全插件, 暗色界面, 构建工具, 用户代理, 用户模式Hook绕过, 自动化攻击, 访问控制