版本: 1.0.0
作者: Manas AI
类别: 安全与监控
AgentGuard 是一款全面的安全监控技能,负责监督智能体操作,检测可疑行为,记录通信日志,并提供可操作的安全报告。
追踪所有文件读写操作并进行模式分析。
触发方式: 持续后台监控
命令: agentguard monitor files [--watch-dir <路径>]
检测内容:
- 异常的文件访问模式(批量读取、访问敏感目录)
- 对凭证文件的访问(.env、.secrets、密钥文件)
- 对系统目录的意外写入操作
- 文件外泄尝试(大量读取后接网络调用)
监控出站 API 调用,发现可疑活动。
命令: agentguard monitor api
检测内容:
- 对未知/不受信任端点的调用
- 异常的 API 调用频率(速率异常)
- 请求负载中的敏感数据
- 身份验证令牌暴露
- 对已知恶意域名的调用
记录所有外部通信,用于审计追踪。
命令: agentguard log comms [--output <路径>]
日志包含:
- HTTP/HTTPS 请求(已脱敏)
- WebSocket 连接
- 邮件发送
- 消息平台输出(Telegram、Discord 等)
- 时间戳、目标地址、负载哈希
基于轻量级机器学习的模式分析,用于检测行为异常。
命令: agentguard detect anomalies [--sensitivity <低|中|高>]
检测方法:
- 基线偏差(学习正常模式)
- 时间异常(非正常时段活动)
- 序列分析(异常操作链)
- 流量峰值
- 新目标检测
生成全面的每日安全报告。
命令: agentguard report [--period <每日|每周|每月>]
报告包含:
- 活动摘要
- 按严重程度划分的警报明细
- 访问最多的资源
- 通信目的地
- 异常时间线
- 建议措施
config/agentguard.yamlmonitoring:
enabled: true
file_watch_dirs:
- ~/clawd
- ~/.clawdbot
exclude_patterns:
- "*.log"
- "node_modules/**"
- ".git/**"
alerts:
sensitivity: medium # low, medium, high
channels:
- telegram
alert_on:
- credential_access
- bulk_file_read
- unknown_api_endpoint
- data_exfiltration
cooldown_minutes: 15
api_monitoring:
trusted_domains:
- api.anthropic.com
- api.openai.com
- api.telegram.org
- api.elevenlabs.io
block_on_suspicious: false # true = 阻止调用, false = 仅告警
logging:
retention_days: 30
log_dir: ~/.agentguard/logs
hash_sensitive_data: true
reporting:
auto_daily_report: true
report_time: "09:00"
report_channel: telegram
agentguard start
使用默认配置启用所有监控功能。
agentguard status
返回当前威胁级别、活动监视器和近期警报。
agentguard investigate --timerange "最近 2 小时" --type file_access
agentguard report --now
agentguard alerts --last 24h --severity high
agentguard trust add api.newservice.com --reason "X 集成所需"
| 级别 | 颜色 | 含义 | 示例 |
|---|---|---|---|
| 信息 | 🔵 | 正常记录的活动 | 在工作区读取文件 |
| 低 | 🟢 | 轻微偏差 | API 调用频率略有升高 |
| 中 | 🟡 | 显著异常 | 访问 .env 文件 |
| 高 | 🟠 | 潜在威胁 | 批量访问凭证 |
| 严重 | 🔴 | 需要立即行动 | 数据外泄模式 |
~/.agentguard/
├── logs/
│ ├── file_access/
│ ├── api_calls/
│ └── communications/
├── baselines/
│ └── behavior_model.json
├── alerts/
│ └── YYYY-MM-DD.json
└── reports/
└── YYYY-MM-DD_report.md
→ 延长基线学习周期或降低敏感度
→ 检查 file_watch_dirs 配置是否覆盖了目标目录
→ 验证 report_time 格式和时区设置
| 脚本 | 用途 |
|---|---|
execution/monitor.py |
核心监控守护进程 |
execution/detector.py |
异常检测引擎 |
execution/logger.py |
结构化日志处理器 |
execution/alerter.py |
警报分发系统 |
execution/reporter.py |
报告生成器 |
AgentGuard 采用纵深防御原则设计。它假设智能体可能被入侵或操纵,并提供了对其操作的可视性。
为获得最大安全性,建议在单独的进程中运行 AgentGuard,并限制其写入权限,以防止被入侵的智能体禁用监控。