Token导航 LogoToken导航TokenDH.com
Opencode Peer Session Relay logo
AI代理未说明官方级别未说明来源级核验

Opencode Peer Session Relay

MCP Server

OpenCode A2A插件中继服务,提供HTTP/JSON-RPC/SSE接口,桥接请求到OpenCode会话,并保持MCP作为内部操作能力。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
TypeScript会话管理AI代理

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

FengYunCalm

提供方

FengYunCalm

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

OpenCode A2A插件中继

英语| 简体中文

OpenCode的A2A中继插件。该存储库公开了一个面向A2A的HTTP/JSON-RPC/SSE表面,将请求桥接到OpenCode会话中,并将MCP作为内部操作功能而不是公共协议。

存储库:https://github.com/FengYunCalm/opencode-peer-session-relay

此回购包含什么

  • packages/a2a-protocol --共享A2A模式和JSON-RPC/任务/消息/事件契约
  • packages/relay-plugin --插件运行时、A2A主机、请求路由、持久性、重放和保护
  • packages/relay-shared --小型共享实用程序和常量
  • tests/ --协议、插件和端到端验证
  • docs/plans/2026-04-03-opencode-a2a-plugin-relay-implementation-plan.md --用于驱动当前设计的实施计划
  • .opencode/commands/ --为团队和中继操作工作流项目本地OpenCode命令
  • .opencode/skills/relay-room/SKILL.md --项目本地中继室执行技巧
  • assets/skills/relay-ops/SKILL.md --面向操作员的内部中继操作界面技能元数据

图形化

  • graphify-out/ 有意作为回购的可导航知识库
  • 该图由仓库的图形化监视工作流刷新,而不是被视为一次性构建输出

当前体系结构

  • 公共合同: A2A基于HTTP JSON-RPC和SSE
  • 运行时形状: 插件首先用于会话挂钩、房间操作、工作流编排和会话感知交付;独立MCP仅兼容
  • 交货门: session.status 是主要的调度信号
  • 坚持不懈: 本地SQLite支持的任务、审计、会话链接、房间、线程、消息和团队运行状态
  • 操作界面: 插件中继工具是主要的操作界面;独立MCP仅具有兼容性,并使用不同的 compat_* 工具名称

已实现的能力

  • 代理卡风险
  • sendMessage, getTask, cancelTask, sendMessageStream
  • 私人/团体房间流量: relay_room_create, relay_room_join, relay_room_status, relay_room_send
  • 团队治理: relay_room_members, relay_room_set_role
  • 持久线程/消息流: relay_thread_create, relay_thread_list, relay_message_list, relay_message_send, relay_message_mark_read, relay_transcript_export
  • 工作流引导和管理: relay_team_start, relay_team_status, relay_team_intervene, relay_team_apply_policy
  • SSE任务事件流
  • 将空闲门控调度到OpenCode会话中
  • 重复抑制、人工接管保护、回放路径、审计跟踪和员工进度治理
  • 任务元数据的公共响应/事件清理

OpenCode技能和本地插件工作流程

  • 项目当地技能: .opencode/skills/relay-room/SKILL.md
  • 项目本地命令: .opencode/commands/team.md, .opencode/commands/relay-status.md, .opencode/commands/relay-pause.md, .opencode/commands/relay-resume.md, .opencode/commands/relay-replay.md
  • 操作员技能资产: assets/skills/relay-ops/SKILL.md
  • 本地测试期间使用的全局安装目标:

- 插件包: ~/.config/opencode/plugins/opencode-a2a-relay.js - 中继MCP束: ~/.config/opencode/plugins/opencode-a2a-relay-mcp.js

  • 全局OpenCode配置现在包括一个名为的本地MCP服务器条目 relay
  • 为了OpenCode 1.3.6本地路径插件兼容性,安装的插件包使用 default export { id, server }

Repo本地命令入口点

  • /team --通过本地启动或协调中继支持的工作流 relay-room 技能
  • /relay-status [taskId] --检查继电器操作员状态和最近的诊断
  • /relay-pause [reason] --暂停会话的自动中继传递
  • /relay-resume --恢复会话的自动中继传递
  • /relay-replay --通过内部操作界面重播可恢复的中继任务

为什么先插件

正常的房间和消息操作必须通过中继插件工具界面,以便会话感知注入和唤醒挂钩实际运行。 独立的MCP网桥仅适用于兼容性和面向手动存储的操作,现在使用不同的 compat_* 工具名称,以避免与插件中继工具冲突。 对于正常的会话感知中继使用,请仅调用插件工具: relay_room_*, relay_thread_*, relay_message_*,以及 relay_transcript_export.任何 relay_compat_* 该工具仅具有兼容性,并不代表标准的自动注射路径。 Repo本地 /relay-* 命令是内部操作MCP界面的操作员快捷键;它们不会取代插件第一中继工具表面。

私人房间流量(不变)

  1. 对话A创建一个房间
  2. 对话B与房间代码连接
  3. 任何一方都会向配对的对等方发送中继消息

团体房间流量

  1. 对话A创建了一个 群组 房间并成为主人
  2. 其他对话使用房间代码加入 和别名
  3. 所有者可以向房间广播或私下发送特定别名
  4. 代理可以检查线程、读取持久消息、标记已读游标和导出转录

团队工作流程

  1. 经理会话运行 /team
  2. 该插件创建了一个组室和三个工作根会话
  3. 工作人员使用固定别名加入并报告工作流信号,例如 [TEAM_READY], [TEAM_PROGRESS], [TEAM_BLOCKER],以及 [TEAM_DONE]
  4. 经理检查 relay_team_status 监控准备状态、活动工作、阻止程序、完成情况和最近的工作流事件跟踪
  5. 经理使用 relay_team_intervene 用于记录在工作流时间线中的标准化重试/重新分配/取消阻止操作
  6. 团队跑步只能达到 completed 在审阅者发出带有阶段的最终验收交接后 final-acceptance-pass
  7. 跑步结束后,经理可以使用 relay_team_cleanup 删除工作根会话,同时保持中继历史记录不变

快速教程: docs/team-workflow-quickstart.md

需求

  • Node.js >= 22
  • pnpm 10.8.1 (参见 packageManagerpackage.json)
  • 能够运行本地OpenCode插件运行时的Windows、macOS或Linux环境

获取代码

git clone https://github.com/FengYunCalm/opencode-peer-session-relay.git
cd opencode-peer-session-relay

验证

此工作区中的新本地验证:

corepack pnpm test
corepack pnpm exec tsc -b --pretty false

当前存储库状态通过了完整的本地测试套件和TypeScript项目构建。

发展

安装依赖项:

corepack pnpm install

运行测试:

corepack pnpm test

运行类型检查:

corepack pnpm exec tsc -b --pretty false

我们从OMO插件中学到了什么

这个存储库是通过学习OhMyOpenCode/OMO插件生态系统而形成的,特别是关于插件功能、技能和类似房间的工作流程是如何在OpenCode会话中出现的。

此处应用的关键要点:

  • 插件工具和独立MCP工具是不同的运行时界面,不能混为一谈
  • 面向执行的房间工作流需要更强的“工具优先,然后回复”行为,而不是通用的解释技能
  • OpenCode 1.3.6的本地插件兼容性取决于正确的 default export { id, server } 形状
  • 中继插件可能会暴露裸 relay_* 工具名称或等效命名空间 mcp__relay__* 别名;两者都属于插件表面,而不是独立的兼容性路径

谢谢

特别感谢OMO/OhMyOpenCode生态系统提供的插件模式、操作员工作流程灵感和实际环境,这些为继电器室的设计提供了信息。

存储库状态

此存储库是面向源代码的。它不声称有任何npm包、托管部署或公共发布渠道。

许可证

麻省理工学院

目录标签

目录标签

TypeScript会话管理AI代理A2A中继本地部署OpenCode插件工作流编排消息传递

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

session

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明session部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP