Forge Guardrail → Hermes Integration Analysis
Codex 核验(2026-10-10):Context Gateway 为 Apache-2.0 开源 Go 项目,原文“闭源商业产品”错误;压缩模型调用和托管服务费用应分别评估。FastGraphRAG 用 PageRank 处理检索排序,仍依赖 LLM 与嵌入完成其他步骤。表中插件配置/测试代码属于六月方案与记录,本次未重启服务、安装或验证实际接线;skill 文档不能代替执行 hook。
发现
Forge (antoinezambelli/forge, HN: 687pts/252comments) 是一个 Python guardrail 中间件框架,核心是给 LLM tool-calling 增加三层 guardrail:
三层架构
1. ResponseValidator (无状态)
- 检查 LLM 返回的 tool call 是否合法(tool name 在白名单内、args 是 dict)
- Rescue parsing:当模型输出纯文本而非 tool call 时,用 regex 把文本解析回 tool call
- 解决”小模型不爱用 tool”的问题
2. StepEnforcer (有状态,按任务)
- 跟踪 required_steps 是否完成
- terminal_tool 检查——防止模型过早调用”最终回答”工具
- Tool prerequisites——要求必须先调工具 A 才能调 B(如先 read_file 再 patch)
- 三层递进 nudge(礼貌→坚决→严厉)
3. ErrorTracker (有状态,按循环)
- 连续重试预算 (默认3次) + 连续 tool error 预算 (默认2次)
- 耗尽时返回
"fatal"
与 Hermes 现有 guardrail 的对比
Hermes ToolCallGuardrailController | 本文拟借鉴的 Forge 能力(非缺失项断言) |
|---|---|
| ✅ 重复失败检测 (before/after call) | ❌ StepEnforcer(步骤强制执行) |
| ✅ 幂等 tool 死循环检测 | ❌ 终端 tool 检查(防止过早回答) |
| ✅ 硬停止 / circuit breaker | ❌ Tool prerequisites(工具前置条件) |
| ✅ 并发执行 (execute_tool_calls_concurrent) | ❌ Rescue parsing(文本→tool 恢复) |
| ✅ 递进式警告 | ❌ Response validation(tool 名、参数检查) |
推荐方案: Hermes 原生集成 (Option A)
Forge 不依赖,将三个概念移植到 agent/tool_guardrails.py:
Phase 1: StepEnforcer + ResponseValidator (1-2天)
Phase 2: Rescue parsing + 递进 nudge (1天)
Phase 3: Skill 级 workflow 声明 (2-3天)
集成点: tool_executor.py 的 before_call() / after_call() hook 已经存在
Forge 的 check(response) / record(executed) 模式直接映射
最关键的模式: “respond tool” ——强制模型调 respond(message) 而非输出纯文本
对 Hermes 的小模型场景,这消除 LLM 回答 vs 最终回复的歧义,显著减少 retry 循环
Agent Vault 分析
发现
Agent Vault (Infisical, HN: 156pts) 是开源的 credential broker:
- MITM HTTPS 代理 → agent 只持占位符 + 可撤销 token
- 真实凭据在 vault 端解密,从不返回给 agent
- AES-256-GCM 静态加密, Argon2id 主密码
Hermes 当前状态 vs Agent Vault
| Hermes (.env) | Agent Vault |
|---|---|
206 个 key=value 在 .env | Agent 零凭据 |
| 所有 API key 可被 prompt injection 窃取 | Token 有限 + 可撤销 |
| env_loader.py 直接读取 | Broker 代理注入 |
| CredentialPool 多 key 故障转移 | 单点凭据 |
推荐: 互补部署
不要替代——两种模式共存:
- 本地开发:
.env(方便) - 生产部署:
agent-vault run -- hermes(安全)
Agent Vault 已有 Hermes VPS 集成文档(Infisical 官方提供)。
FastGraphRAG 分析
发现
FastGraphRAG (circlemind-ai, HN: 457pts) 用 PageRank 做知识图谱检索排序(完整流程仍需要 LLM/嵌入):
工作流
- Query → LLM 提取实体 (1次LLM调用)
- Vector search → HNSWLib 返回相似度 → weight vector
- Personalized PageRank (igraph) → 权重沿图传播
- 实体→关系→chunk 矩阵相乘传播分数
- 阈值过滤 (实体>0.005, 关系 top64, chunk top8)
- LLM 从过滤后的 context 生成答案
优势
- 成本降低 6x (0.48 on Wizard of Oz)
- 确定性(无LLM排序波动)
- 增量图更新
- 理论: HippoRAG (arXiv:2405.14831)
gbrain 集成方案
并行混合检索: FastGraphRAG PPR + gbrain vector search → 合并重排序
FastGraphRAG 的 TContext 输出(entity+relation+chunk + PPR scores)可直接映射到 gbrain 的 prompt 增强管道
Context Gateway vs Headroom
| Headroom (已安装) | Context Gateway | |
|---|---|---|
| 类型 | Python 服务 (systemd) | 二进制 CLI (Go?) |
| 安装 | pip install headroom | `curl … |
| 配置 | YAML + env vars | TUI wizard |
| 集成 | Hermes 已有集成 | 支持 Claude Code / Cursor / OpenClaw |
| 运行 | headroom proxy --port 8787 | context-gateway (交互式) |
| HuggingFace 模型缓存 | ~150MB | 未知 |
结论: Context Gateway 是 Apache-2.0 开源 Go 项目,Headroom 是开源 Python 实现;托管产品与模型调用是否计费需分别核验。 二者竞争同一赛道(LLM context 压缩),Headroom 更适合 Hermes 因为已集成 + 开源可控。
Agent-Reach
- 已安装: agent-reach==1.4.0
- 4/16 channels available (GitHub, V2EX, RSS, web pages)
- 不是独立搜索CLI——是 agent skill 安装框架
- 需要额外工具才能扫描 X/小红书/抖音 (xurl, rdt-cli, Playwright)
- 可作为 Hermes 的 skill 集成,提供跨平台数据获取能力