- 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
蚁熊技能市场
蚁熊团队内部的插件市场,同时支持 Claude Code、**Codex(含 ChatGPT 桌面应用与 CLI 两种形态)**和 Hermes Agent——汇聚团队在真实业务场景里打磨出来的技能与工作流插件,从项目管理到知识库协作,从代码审查到数据工程,装上它,让 AI 编程助手更懂蚁熊。
快速安装
Claude Code
/plugin marketplace add https://gitea.rk-health.com/yixiong/yixiong-claude-marketplace.git
添加市场源之后,按需安装具体插件:
/plugin install huanxi@yixiong-claude-hub
/plugin install huanxi-admin@yixiong-claude-hub
/plugin install memcore@yixiong-claude-hub
/plugin install obsidian@yixiong-claude-hub
/plugin install zentao@yixiong-claude-hub
已安装的插件会在会话启动时自动检测更新——本仓库不走语义化版本号,每次推送 main 分支即视为新版本。
Codex CLI / ChatGPT 桌面应用
Codex 的桌面客户端已经并入 ChatGPT 桌面应用(原先叫 Codex App),插件市场和技能在 CLI、桌面应用、VS Code 插件三端共用同一套 .agents/plugins/marketplace.json。
第一步——注册市场源(仅命令行,桌面应用没有输入市场 URL 的图形入口):
codex plugin marketplace add https://gitea.rk-health.com/yixiong/yixiong-claude-marketplace.git
没有终端环境,或者只想用桌面应用的话,也可以手动把同样的条目写进配置文件,效果等价:
- 只想在这台机器全局生效:
~/.agents/plugins/marketplace.json - 只想在某个仓库生效:
<仓库根目录>/.agents/plugins/marketplace.json(本仓库已经自带一份,克隆下来就有)
写完保存后,完全退出并重新打开 ChatGPT 桌面应用(不是切后台,是完全退出进程)才会生效,官方文档目前没有提供"设置里粘贴 URL"这种图形化入口。
第二步——安装插件:
-
命令行:
codex plugin add huanxi@yixiong-codex-hub codex plugin add huanxi-admin@yixiong-codex-hub codex plugin add memcore@yixiong-codex-hub codex plugin add obsidian@yixiong-codex-hub codex plugin add zentao@yixiong-codex-hub -
ChatGPT 桌面应用(图形界面):市场源注册生效后,打开 设置(Settings)→ 插件(Plugins),或侧边栏的 Plugins 入口,就能看到我们的市场和这五个插件,点击安装即可,不用碰命令行。
安装完成后开一个新会话,Codex 才会加载新装的技能和 MCP 工具。
⚠️ 桌面应用读不到 shell 里
export的环境变量:huanxi/huanxi-admin/zentao的 Token 走环境变量注入(见下一节),但 macOS/Windows 上从 Dock/开始菜单启动的图形应用不会继承~/.zshrc里export的变量——这是终端应用和图形应用两种不同的启动路径决定的,不是我们插件的问题。桌面应用场景要设置成系统级/用户级持久环境变量才行,具体见下一节。⚠️ 插件级 Token 配置目前是 Codex 官方还没定案的能力:截至本文写作时,插件打包的 MCP server 没有类似 Claude 侧「安装时弹窗填 Token」的正式支持(见 openai/codex#24401),环境变量是目前唯一现实可用的路径。装完插件连不上 MCP,先检查 Token 环境变量是不是在 Codex/ChatGPT 启动之前就已经生效。
Codex 侧的插件清单独立维护在
.agents/plugins/marketplace.json。除memcore外,其余四个插件与 Claude Code 版共用同一份skills/;memcore因为架构差异(会话入口、记忆目录约定、有无远程同步都不同)走的是独立目录plugins/memcore-codex/,两边分开维护。
Hermes Agent
Hermes(Nous Research 开源的本地 Agent)没有像 Claude/Codex 那样的"注册市场源"命令,但官方支持一个跨客户端开放标准 Agent Plugins v1.0.0(plugin.json + skills/),且 hermes plugins pack install 支持 subdir 定位 monorepo 子目录——所以我们没有另开仓库,而是在每个插件根目录放一份裸 plugin.json,复用同一份 skills/,用一组 packs/ 里的 pack manifest 文件做选装。
安装(想装哪个装哪个,互不影响):
# 方式一:先看会装什么,再装(本地路径,需要先 clone)
git clone https://gitea.rk-health.com/yixiong/yixiong-claude-marketplace.git
cd yixiong-claude-marketplace
hermes plugins pack show ./packs/zentao.yaml
hermes plugins pack install ./packs/zentao.yaml
# 方式二:不用 clone,直接传 raw 链接(已验证可用)
hermes plugins pack install https://gitea.rk-health.com/yixiong/yixiong-claude-marketplace/raw/branch/main/packs/zentao.yaml
想一次装全部五个:hermes plugins pack install ./packs/all.yaml。
装的插件是用户/profile 级的,不是项目级——Hermes 的 plugins install/pack install 都没有 --scope/--project 之类的参数,固定装进 $HERMES_HOME/plugins/(默认 profile 就是 ~/.hermes/plugins/),装完之后在这台机器的哪个目录开 Hermes 会话都能用,跟"只在这个仓库目录里生效"的直觉不一样。
⚠️
ref是手动维护的定长 commit SHA,不会像 Claude Code 那样自动追新——Hermes 的 pack manifest 要求精确 40 位 commit SHA,不接受分支名,我们每次发布都会同步 bumppacks/*.yaml里的ref;如果你 clone 下来的代码比 pack 文件新,装的仍是 pack 里锁定的那个旧版本,想要最新内容就git pull到对应 commit 或等我们下一次发布。⚠️ 凭证类插件(
huanxi/huanxi-admin/zentao)不含 MCP 声明——Agent Plugins v1 的mcp.json规范明文禁止内嵌密钥,所以这三个插件只打包了技能,MCP Server 需要你在~/.hermes/config.yaml里手动加几行(下面各插件小节有具体片段),比 Claude 的"装插件时弹窗填 Token"体验差一点,这是协议本身的限制,不是我们没做完。⚠️
plugin.json的description不要写配置路径字面量——Hermes 对 community source(非官方审核)插件的安装前安全扫描是"零容忍"策略,任意 1 个 finding 就直接 BLOCKED、--force也无法覆盖;早期版本我们在 description 里写了~/.hermes/config.yaml这种点前缀路径字符串,被误判成 persistence(持久化)类危险模式挡了下来。现在 description 只放一句话简介,配置指令都放在这份 README 里,不会再触发。⚠️ 已知问题(非我们插件的锅,等 Hermes 上游修复):
huanxi/huanxi-admin/zentao走 HTTP 类型 MCP Server,实测在 Hermes 上会卡在initialize握手之后——网桥正确返回了mcp-session-id(Streamable HTTP 协议的有状态会话标识),但 Hermes 客户端没有正确捕获/回传这个 session id,导致后续请求被判定为无效、报 400,最终连接被 park。这跟 NousResearch/hermes-agent#20349 描述的现象一致,用 curl 直连网桥验证过网桥本身没问题(认证、握手响应都正常)。装完插件后如果 MCP 连不上,先去这条 issue 底下看有没有新版本修复,protocol: legacy试过没用(握手本身不是问题所在);obsidian/memcore-hermes不受影响(不含 MCP)。
插件一览
| 插件 | 技能数 | 适用场景 | 谁需要装 | Claude Code | Codex | Hermes |
|---|---|---|---|---|---|---|
huanxi |
7 | 寰汐企业管理系统个人端——日报、负责人日报、任务、议题、会议、组织检索 | 全员 | ✅ | ✅ | ✅ |
huanxi-admin |
4 | 寰汐管理端——汇报盘点、模块与成员配置、运维简报 | 需要后台管理员发放 hxa_ Token 的管理岗 |
✅ | ✅ | ✅ |
memcore / memcore-codex / memcore-hermes |
4 | 项目记忆体系核心引擎——跨会话记忆的同步/增量更新/健康校验 | 用 Claude Code / Codex / Hermes 做长期项目的开发者 | ✅ | ✅ | ✅ |
obsidian |
10 | Obsidian 知识库全套协作工作流——vault 管理、搜索图谱、Bases、Canvas、每日笔记等 | 用 Obsidian 做知识管理的人 | ✅ | ✅ | ✅ |
zentao |
8 | 禅道项目管理——项目集/产品/项目/执行、需求(story/epic/requirement)、Bug、任务、测试、计划与发布、反馈工单 | 用禅道管项目/需求/Bug/任务的人 | ✅ | ✅ | ✅ |
huanxi / huanxi-admin
寰汐是蚁熊内部的项目管理与团队协同系统。huanxi 以你本人的身份操作,权限与网页端一致;huanxi-admin 是全量管理视角,高危操作(账号启停、提权、删除)不在这个端点里,普通员工不需要装。
配置步骤:
-
去寰汐「个人中心 → MCP Token 管理」自助生成一个
hxp_开头的 Token(huanxi-admin的hxa_Token 由后台管理员单独发放,普通员工无需申请)。 -
Claude Code:执行
/plugin install时会提示输入 Token,直接粘贴即可——存放在系统钥匙链,不会明文写入配置文件。 -
Codex CLI / ChatGPT 桌面应用:Codex 没有等价的钥匙链机制,Token 走环境变量注入,两种运行方式的设置方法不一样:
-
命令行:启动前
export即可,建议写进 shell 启动脚本(~/.zshrc/~/.bashrc),避免每次开新终端都要重新导出:export HUANXI_TOKEN=hxp_你的token # huanxi 个人端 export HUANXI_ADMIN_TOKEN=hxa_你的token # huanxi-admin 管理端 -
ChatGPT 桌面应用(图形界面启动,不经过 shell):
export对它无效,要设成系统级持久变量:- macOS:终端里跑一次
launchctl setenv HUANXI_TOKEN hxp_你的token(huanxi-admin同理换成HUANXI_ADMIN_TOKEN),然后重新打开桌面应用;这个设置只在当前登录会话有效,重启电脑要重新执行,长期用建议放进登录项脚本 - Windows:「系统属性 → 环境变量」里新增用户变量
HUANXI_TOKEN/HUANXI_ADMIN_TOKEN,保存后重新打开应用
- macOS:终端里跑一次
-
-
Hermes Agent:装完插件包(只含技能,不含 MCP 声明)后,在
~/.hermes/config.yaml里手动加一段,${VAR}会在连接时从环境变量解析,不会明文写死在文件里:mcp_servers: huanxi: url: "https://huanxi.office.yixiong-tech.com/mcp/" headers: Authorization: "Bearer ${HUANXI_TOKEN}" huanxi-admin: # 只有装了 huanxi-admin 才需要这段 url: "https://huanxi.office.yixiong-tech.com/admin-mcp/" headers: Authorization: "Bearer ${HUANXI_ADMIN_TOKEN}"再设置环境变量(Hermes 是本地长驻进程,跟终端应用同源,
export写法同 Codex CLI 那节):export HUANXI_TOKEN=hxp_你的token。
memcore
给 AI 编程助手加一套跨会话持久记忆的引擎:memory-sync 做全量同步、memory-update 做增量写入、memory-lint 做健康校验(孤儿引用、断链、内容矛盾、过期检测)。不依赖 MCP,纯技能实现,无需任何配置,安装即用。
Claude Code 版(plugins/memcore)以 .claude/memory/ 为唯一权威,memory-sync 会额外和 ~/.claude/projects/*/memory/ 做远程镜像同步,支持多机协作。Codex 版(plugins/memcore-codex)架构不同:会话入口是 AGENTS.md 而非 CLAUDE.md,记忆目录优先复用已有的 .claude/memory/、否则落在 .codex/memory/,且不做远程同步——Codex 没有等价的跨机器 auto memory 层,记忆只落在当前仓库内。Hermes 版(plugins/memcore-hermes)会话入口同样是 AGENTS.md,记忆目录复用优先级是 .claude/memory/ → .codex/memory/ → 都没有则新建 .agents/memory/(目录名不绑定单一工具,方便未来第三个工具接入);Hermes 自己有一套按 profile 隔离的全局记忆(~/.hermes/memories/MEMORY.md/USER.md),跟项目级记忆是两回事,memcore-hermes 会在同步时提醒这个边界,避免同一份项目事实两处漂移。三个版本共享同一套 SYNTHESIS_THRESHOLD、过期检测速度分档等常量设计,但各自独立维护。
obsidian
检测到项目里有 .obsidian/ 目录会自动激活,覆盖 vault 管理、全文与图谱搜索、frontmatter、任务、每日笔记、Bases 数据库、Canvas 视觉层、版本历史、插件配置、PKM 编排十个技能,对标社区里比较成熟的 Obsidian 技能实现后做了扩展。无需任何配置,Claude Code、Codex CLI、Hermes Agent 共用同一份技能内容。
zentao
禅道是蚁熊内部的项目/需求/Bug/任务管理系统。插件覆盖项目集(program)/产品/项目/执行的层级管理、需求条线(story 用户故事 / epic 业务需求 / requirement 用户需求三种类型及其状态机)、Bug 全流程、任务状态机、测试用例与测试单、产品计划/版本/发布、反馈与工单、附件改名,共 8 个工作流技能。
配置步骤:
-
登录禅道,头像下拉菜单点「获取凭证」:
-
点击「生成凭证」——注意提示:生成新凭证会让旧凭证立即失效,且明文只在生成后展示一次,务必当场保存;有效期 14 天,到期需重新获取:
-
弹窗会给出「API 地址」和「Token」两项,Claude Code / Codex 安装时都只需要 Token(API 地址已经写死在插件的 MCP 配置里,不用手动填):
-
Claude Code:执行
/plugin install时会提示输入 Token,直接粘贴即可——存放在系统钥匙链,不会明文写入配置文件。 -
Codex CLI / ChatGPT 桌面应用:Token 走环境变量注入,设置方式同
huanxi:- 命令行:
export ZENTAO_TOKEN=你的token,建议写进~/.zshrc/~/.bashrc - ChatGPT 桌面应用:macOS 用
launchctl setenv ZENTAO_TOKEN 你的token,Windows 走「系统属性 → 环境变量」新增用户变量ZENTAO_TOKEN,设置后需重新打开应用
- 命令行:
-
Hermes Agent:装完插件包后在
~/.hermes/config.yaml里加一段(注意 zentao-mcp 网桥认的 header 字段是token,不是标准Authorization: Bearer):mcp_servers: zentao: url: "https://pm.ops.yixiong-tech.com/mcp" headers: token: "${ZENTAO_TOKEN}"再
export ZENTAO_TOKEN=你的token。
开发
给这个市场新增插件、技能实现规范、marketplace.json/plugin.json 格式说明,见 CLAUDE.md。
Codex 插件的 .codex-plugin/plugin.json 有几个硬性约束(用本机 plugin-creator 技能自带的 validate_plugin.py 校验):skills 字段必须精确指向 ./skills、mcpServers 字符串路径必须精确指向 ./.mcp.json(都在插件根目录,不能嵌套在 .codex-plugin/ 里),且顶层 interface 块(displayName/shortDescription/longDescription/developerName/category/capabilities/defaultPrompt)是必填项。
Hermes 插件走开放标准 Agent Plugins v1.0.0:plugin.json 是裸文件(不嵌套在点前缀目录里),必需字段只有 $schema + name(name 限定 [a-z0-9.-],1–64 字符,不能有连续 -/.),skills/ 目录下每个直接子目录含 SKILL.md 即被识别为一个技能。规范本身禁止在 mcp.json 里内嵌密钥,所以带 Token 的插件不打包 mcp.json,MCP 配置走 README 里各插件小节的手动指引。新增/修改 Hermes 相关内容后,同步维护 packs/ 里对应的 pack manifest(ref 手动 bump 到最新 commit SHA)。
更新记录
见 CHANGELOG.md。