模块知识库/Vibe-Trading 量化交易智能体平台/Vibe-Trading Agent 核心运行时/多渠道 IM 接入与 WebUI 网关/WebSocket Channel WebUI 兼容层/编码规范
- 每个功能文件顶部用单行 docstring 说明其作为 WebSocket channel 的兼容性角色(如 CLI mention、MCP preset、fork-chat、转录、HTTP 工具等)。
- 对外暴露的归一化函数统一接受
(content: Any, metadata: dict | None = None) 签名,并通过 del metadata 显式忽略未使用的参数以保持与 channel 调用方约定的签名一致。
- 服务类采用 dataclass 组织状态,并通过
build_gateway_services(**kwargs) 集中构造,允许按需覆盖任意字段并提供默认工厂。
- 对可选/未配置的外部能力(fork-chat、转录)提供同签名的 stub 函数,返回结构化错误或空结果而非抛出异常,使 channel 无需条件分支即可调用。
- 工作区路径在写入前一律通过
Path.expanduser().resolve() 规范化,并在启用限制时校验相对性,越界则抛出 WorkspaceScopeError。