docs(hermes): 记录实测结果——安全扫描误判修复确认 + MCP session-id 已知 bug

- README:http raw 链接安装、用户/profile 级安装范围说明;两条新警告
  (description 触发安全扫描的原因、Hermes MCP session-id 已知 bug 阻塞
  huanxi/huanxi-admin/zentao 的 HTTP MCP 连接,链接 hermes-agent#20349)
- CLAUDE.md:开发指南补充同样两点
- decisions.md:新增两条决策记录,标注此前"待实测"的两点均已确认通过

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015D4xWG3gRWkUKJDgyvtyJw
This commit is contained in:
SkyJourney
2026-08-25 17:02:56 +08:00
co-authored by Claude Sonnet 5
parent 106c394a46
commit 9e1dcf6634
4 changed files with 43 additions and 11 deletions
+4 -3
View File
@@ -87,8 +87,9 @@ description: 一句话说明该技能的用途(Claude 用此判断何时触发
- 必需字段只有 `$schema` + `name``name` 限定 `[a-z0-9.-]`、164 字符,不能以 `-`/`.` 开头结尾,不能出现连续的 `--`/`..`
- `skills/` 目录下每个直接子目录只要含 `SKILL.md` 就会被识别为一个技能,不需要额外声明
- **规范禁止在 `mcp.json` 里内嵌密钥**(headers/env 都不行,也没有等价于 `bearer_token_env_var`/`userConfig` 的字段):带 Token 的插件(huanxi/huanxi-admin/zentao)因此不打包 `mcp.json`MCP 配置改走 README 里的 `~/.hermes/config.yaml` 手动指引(该文件原生支持 `${VAR}` 环境变量插值)
- 单仓库多插件靠 `hermes plugins pack install ./packs/<name>.yaml``subdir` 字段定位子目录,`ref` 必须是精确 40 位 commit SHA(不接受分支名),改动插件后要记得同步 bump `packs/*.yaml` 里的 `ref`
- 有两点文档未写清楚、没能验证:`pack install` 是否支持直接传 http(s) 链接(而非本地路径);`subdir` 指向的目录若只有 `plugin.json`(没有 Hermes 原生 `plugin.yaml`)能否被正确识别——见 [[decisions.md#Hermes 插件骨架:Agent Plugins v1 + packs 选装2026-08-25]]
- 单仓库多插件靠 `hermes plugins pack install ./packs/<name>.yaml``subdir` 字段定位子目录,`ref` 必须是精确 40 位 commit SHA(不接受分支名),改动插件后要记得同步 bump `packs/*.yaml` 里的 `ref``pack install` 已实测确认支持直接传 http(s) raw 链接,也确认纯 `plugin.json`(无原生 `plugin.yaml`)能被正确安装
- **`description` 字段不要写配置文件路径字面量**(如 `~/.hermes/config.yaml`)——Hermes 对 community source 插件的安装前安全扫描零容忍,命中一次就 BLOCKED、`--force` 不能覆盖,此类路径字符串容易被误判成 persistence 危险模式,见 [[decisions.md#Hermes 插件安装安全扫描:plugin.json description 不能含配置路径字面量2026-08-25]]
- **已知问题**huanxi/huanxi-admin/zentao 的 HTTP MCP 在 Hermes 上会因为 Streamable HTTP `mcp-session-id` 回传 bug 连不上([NousResearch/hermes-agent#20349](https://github.com/NousResearch/hermes-agent/issues/20349)),非我们插件问题,等上游修复,见 [[decisions.md#Hermes MCP Streamable HTTP session-id 已知 bug——凭证类插件连接受阻(2026-08-25]]
## 新增插件流程
@@ -142,7 +143,7 @@ description: 一句话说明该技能的用途(Claude 用此判断何时触发
```
.claude/memory/
├── MEMORY.md # 索引(入口)
├── decisions.md # 关键架构决策(含 memcore-shared/lint_report 保活/Base commit 兜底/obsidian 社区对标审查/memory-lint 速度分档过期检测/Codex 插件骨架与 memcore-codex 独立目录/bearer_token_env_var/不做 Antigravity 兼容/zentao-mcp 网桥双认证格式兼容/Hermes 插件骨架与 packs 选装等 18 项)
├── decisions.md # 关键架构决策(含 memcore-shared/lint_report 保活/Base commit 兜底/obsidian 社区对标审查/memory-lint 速度分档过期检测/Codex 插件骨架与 memcore-codex 独立目录/bearer_token_env_var/不做 Antigravity 兼容/zentao-mcp 网桥双认证格式兼容/Hermes 插件骨架与 packs 选装/Hermes 安全扫描 description 限制/Hermes MCP session-id 已知 bug 等 20 项)
├── project_overview.md # 项目定位与结构(huanxi/huanxi-admin/memcore/obsidian/zentao 已发布插件,均含 Codex + Hermes 支持情况)
├── feedback_plugin_dev.md # 插件开发协作规范(含 MCP docstring 单一真相、签名变更全量扫描)
└── lint_report.md # 记忆健康检查报告(按需)