🛡️ TrustMyAgent - AI 代理安全态势监控,执行 41 项无状态检查覆盖 14 个领域,计算信任评分(0‑100),支持本地...
QQ Trust MyAgent - 安全代理是一项面向实际任务的技能,主要用于AI 代理的无状态安全态势监视;TrustMyAgent在主机上运行了41个只读的安全检查, 计算一个信任 s。
从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;
若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
面向 AI 代理的无状态安全态势监控。
TrustMyAgent 在宿主机上跨 14 个安全领域执行 41 项只读安全检查,计算出一个信任评分(0–100),并可选地将结果上报至公开的 Trust Center 仪表板。该工具完全无状态 —— 不写入任何文件、不持久化任何状态,且未经用户明确授权,不会安装任何后台进程。
开源:所有检查逻辑均可见于
run.py和checks/*.json。完整源代码托管于 github.com/Anecdotes-Yair/trust-my-agent-ai。
当用户请求设置 TrustMyAgent 时,请引导其完成以下步骤。每一步均需向用户明确呈现,并获得其确认后方可执行。 禁止静默运行命令或跳过用户确认环节。
检查系统中是否已安装 Python 3:
python3 --version
若未安装 Python 3,请在安装前征得用户同意:
brew install python3sudo apt-get install python3 或 sudo apk add python3首先以 试运行模式(dry-run mode) 运行安全评估,以便用户在数据离开本机前审阅全部结果:
python3 {baseDir}/run.py --dry-run
该命令将运行全部 41 项检查,并打印出 本应 发送的完整遥测载荷(telemetry payload),但实际不发送任何数据。请向用户展示以下内容并供其审阅:
向用户提问:“您希望将此报告发送至 Trust Center 仪表板、仅在本地运行(不联网),还是调整某些配置?”
若用户同意发送遥测数据:
python3 {baseDir}/run.py
若用户选择仅本地运行(不发送遥测):
python3 {baseDir}/run.py --local-only
询问用户是否希望配置自动化的周期性评估。若用户同意,请建议配置 cron 任务。具体命令依代理平台而异:
OpenClaw 代理:
openclaw cron add --name "🛡️ TrustMyAgent" --cron "*/15 * * * *" --session agent:security:main --message "Run security assessment: python3 {baseDir}/run.py"
其他代理 / 独立运行环境:
# 添加至系统 crontab(每 15 分钟执行一次)
(crontab -l 2>/dev/null; echo "*/15 * * * * python3 {baseDir}/run.py --quiet") | crontab -
用户可自由选择任意时间间隔,或完全跳过调度配置。
当启用遥测(默认行为)时,以下数据将通过 HTTPS POST 发送至 https://www.trustmyagent.ai/api/telemetry:
| 字段 | 示例 | 用途 |
|---|---|---|
agent.id |
sha256(hostname) |
唯一标识符(由主机名哈希生成,而非主机名本身) |
agent.name |
"My Agent" |
显示名称(取自 IDENTITY.md 或环境变量) |
agent.platform |
"darwin" |
操作系统类型(darwin / linux) |
agent.detected_env |
"macos_arm64" |
运行时环境标签 |
posture.trust_tier |
"HIGH" |
计算得出的信任等级 |
posture.overall_score |
92 |
数值型评分(0–100) |
results[] |
{check_id, passed, status} |
逐项检查的通过/失败状态 |
detections[] |
{check_id, severity, risk} |
失败检查项及其风险上下文 |
以下数据 不会 被发送:
遥测端点及全部检查逻辑均为开源。您可通过 --dry-run 模式准确验证实际传输的内容。
使用 --local-only 参数可在不发起任何网络调用的前提下运行全部检查:
python3 {baseDir}/run.py --local-only
该方式将在本地提供完整的安全评估,且不外发任何数据。
run.py 在宿主机上执行 —— 可由手动触发、cron 定时任务或代理心跳机制启动本地不写入任何文件,代理宿主机上不持久化任何状态。
| 领域 | 检查项编号 | 关注重点 |
|---|---|---|
| 物理环境 | PHY-001 至 PHY-005 | 磁盘加密、容器隔离、非 root 用户执行 |
| 网络 | NET-001 至 NET-005 | 高危端口、TLS/SSL 配置、DNS 设置、证书有效性 |
| 密钥管理 | SEC-001 至 SEC-005、MSG-005 | 环境变量中的密钥、云服务凭据、私钥、对话内容泄露风险 |
| 代码 | COD-001 至 COD-004 | Git 安全性、代码仓库中禁止硬编码密钥 |
| 日志 | LOG-001 至 LOG-004 | 系统日志配置、审计就绪度 |
| 技能 | SKL-001 至 SKL-005、MSG-001、MSG-003 | 技能清单(skill manifests)、MCP 服务器可信度 |
| 完整性 | INT-001 至 INT-005、MSG-002、MSG-006 | 后门程序、浏览器滥用、可疑工具调用、URL 声誉 |
| 社交防护 | SOC-001 至 SOC-006、MSG-004 | 操作日志记录、会话透明度、Moltbook 完整性、所有者声誉 |
| 事件预防 | INC-001 至 INC-005 | 进程派生、系统负载、端口扫描行为 |
| 节点安全 | NODE-001 至 NODE-005 | 远程执行审批、令牌权限、exec 白名单 |
| 媒体安全 | MEDIA-002 至 MEDIA-003 | 临时目录权限、文件类型校验 |
| 网关安全 | GATEWAY-001 至 GATEWAY-002 | 绑定地址、身份认证机制 |
| 身份安全 | IDENTITY-001 至 IDENTITY-002 | DM 配对白名单、群组聊天白名单 |
| 子代理安全 | SUBAGENT-001 至 SUBAGENT-002 | 并发数限制、目标白名单 |
定义于 checks/openclaw_checks.json。每项检查执行一条 shell 命令,并依据 pass_condition(如 equals、contains、not_contains、exit_code_zero 等)判断输出结果。
定义于 checks/message_checks.json 和 checks/nodes_media_checks.json。这些是程序化传感器,用于分析密钥、会话转录文本、MCP 配置、技能清单等内容。
检查逻辑自动识别 macOS 与 Linux 并选用对应平台命令。检查项可声明 "platforms": ["linux"] 字段,从而在不支持的平台上被优雅跳过。
| 等级 | 评分范围 | 标签 |
|---|---|---|
| HIGH | 90–100 | Ready for Business |
| MEDIUM | 70–89 | Needs Review |
| LOW | 50–69 | Elevated Risk |
| UNTRUSTED | 0–49 | Critical Security Gaps |
任一严重性(critical)检查失败,将直接将最终评分上限设为 49(UNTRUSTED);三项及以上高严重性(high)检查失败,则评分上限设为 69(LOW)。
| 标志 | 说明 |
|---|---|
--checks, -c |
自定义检查 JSON 文件路径 |
--timeout, -t |
单次检查超时时间(秒),默认为 30 |
--quiet, -q |
最小化输出 |
--json, -j |
以结构化 JSON 格式向 stdout 输出结果 |
--dry-run |
运行全部检查并显示遥测载荷,但不实际发送 |
--local-only |
在本地运行全部检查,不发起任何网络调用 |
--no-notify |
跳过针对检测结果的代理通知 |
| 来源 | 说明 | 默认值 |
|---|---|---|
IDENTITY.md |
代理显示名称(从 # Name 区域读取) |
"Agent" |
OPENCLAW_AGENT_NAME 环境变量 |
覆盖 IDENTITY.md 中指定的名称 | — |
OPENCLAW_AGENT_ID 环境变量 |
代理标识符 | 主机名的 SHA256 哈希值 |
TRUSTMYAGENT_TELEMETRY_URL 环境变量 |
服务端接入点 | https://www.trustmyagent.ai/api/telemetry |
Agent/
├── SKILL.md # 当前文件
├── run.py # 主入口(无状态执行器)
└── checks/
├── openclaw_checks.json # 20 项基于 bash 的安全检查
├── message_checks.json # 10 项基于 Python 的消息/密钥传感器
├── nodes_media_checks.json # 11 项基础设施检查
└── detection_kb.json # 风险描述与修复建议知识库
┌─────────────────┐ ┌──────────────────┐
│ Agent Host │ POST /api/telemetry │ 🛡️ TrustMyAgent │
│ │ ────────────────────────────► │ Server │
│ run.py │ (仅当启用遥测时) │ (Cloudflare) │
│ ├─ bash checks │ │ ├─ R2 存储 │
│ └─ python checks│ │ ├─ agents 索引 │
│ │ │ └─ 趋势历史数据 │
│ (无本地状态) │ │ │
└─────────────────┘ └──────────────────┘
│
trust-center.html
(公开仪表板)
--local-only 可完全离线运行,或使用 --dry-run 预览后再决定是否发送--dry-run 标志可精确展示即将发送的 JSON 内容由 Anecdotes AI 为 AI 代理生态构建。