服务与集成
模块存在意义
如果说 QueryEngine 是内部主循环,那么服务与集成层就是它与外部世界的接口面。所有真正跨出本地进程边界的能力,基本都会落在这一层。关键文件与入口
| 文件/目录 | 作用 |
|---|---|
src/services/ | API、MCP、LSP、OAuth、analytics、plugins 等服务接入。 |
src/bridge/ | IDE / 远程控制桥接能力。 |
src/remote/ | 远程会话与远端执行相关能力。 |
src/server/ | 服务端模式与直连会话相关能力。 |
对上游 / 下游的依赖关系
- 上游:主循环、命令系统、工具系统。
- 下游:模型 API、IDE 扩展、MCP Server、远程守护进程、外部配置服务。
运行时扮演的角色
- 与模型提供方通信。
- 管理外部协议,例如 MCP 与 LSP。
- 建立 bridge 或 remote 会话,让 CLI 能与 IDE、网页或远程环境协作。
- 承载鉴权、限额、策略与远端配置等能力。
新读者建议的阅读顺序
src/services/api/src/services/mcp/src/bridge/src/remote/与src/server/
这层为什么容易复杂
- 它同时面对本地会话、远程会话和企业策略约束。
- 它引入多种外部协议,天然比纯内部模块更分散。
- 很多功能为了启动性能采用懒加载,因此需要结合调用路径一起看。