跑在你电脑上的「大脑」。把声音转成文字、交给大模型思考、再把回答合成语音回给卡片。
passport-companion · Python 3.12 · FastAPI 风格桥接 + MCP
HTTP 服务(健康检查、状态、SSE 事件流),把卡片和设备暴露成可查询的接口。
核心:管理连接、问答、音频收发、转写流程。
与固件/锚点一致的编解码、音频帧打包。
抽象出 BLE / 中继 / 假设备三种连接方式。
听(ASR)和说(TTS)的后端,支持多家云服务。
让 WorkBuddy 通过 MCP 协议指挥宿主。
宿主侧的大脑。管理连接状态、问答流程、音频收发的完整状态机。P9 的「接受序号空洞」「CRC 降级」两处修复都在这里。
| 文件 | 作用 | 关键函数 |
|---|---|---|
cli.py | 命令行工具(start/stop/status/scan/doctor/ask/listen 等) | build_parser() :395、main() :473 |
client.py | BridgeClient:连桥的 SDK | BridgeClient :21,ask/listen/notify 等 |
mcp_server.py | MCP 服务器,暴露工具给 WorkBuddy | tool_report :184、tool_ask :203、tool_notify :216、tool_listen :223、McpServer :270 |
http_util.py | HTTP 请求 + 代理检测 + 环境变量 key 读取 | detect_proxy :60、request :92、ensure_env_key :181 |
mcp_server.py,宿主把自己的能力(报告、提问、通知、监听录音、清空)包装成 MCP 工具。WorkBuddy 接入这个 MCP 后,就能直接用自然语言「让卡片问用户一个问题」或「听一段录音」,而不必关心底层协议细节。