开发与维护
按包边界定位修改,了解贡献流程和渠道适配器开发。
这一组面向修改 Qwen Code 本身或构建适配器的开发者。应用集成通常先使用SDK;运行与部署则从Daemon开始。
选择修改层
- 架构与包边界:TUI、headless、ACP、daemon、core 和客户端分别负责什么。
- 贡献与本地开发:建立环境、检查变更、文档和上游 PR 要求。
- 渠道插件实现:把平台消息规范化为 Envelope,并复用 ChannelBase。
- 渠道显示与投递契约:流式输出、命名任务来源标签和主动发送。
判断已实现还是路线图
官方 roadmap 同时记录历史首次出现版本和待开发方向。它不是当前配置 schema,也不保证某个发布包包含同页所有功能。例如 Hooks 在 roadmap 仍显示 In Progress,但已有完整用户和事件协议文档;OAuth 的历史完成标记也不表示旧登录方案仍用于新环境。
排查或新增功能时,优先对照对应版本的具体文档、公开类型和实现,再看 roadmap 中的方向。规划中的 Better UI、OnBoarding、LogView、Costs、Dashboard,以及研究中的 Home Spotlight、Pulse、Code Wiki 等,不应直接写成现有功能或承诺时间。
文档与代码验证分开
开发者章节中的 npm、Maven 和 Python 命令属于 Qwen Code 上游仓库或使用 SDK 的应用项目。阅读文档不需要执行发布、登录或真实模型测试;实际变更时再选择相应环境与验证范围。
上游设计文档要求同目录、同 PR 提供完整英文及简体中文版本,结构、决定、约束和验收标准一致。这里的中文文档按实际能力整理,并保留来源与核验日期,不能代替上游合入流程。
构建、检查与维护
- 构建与打包:开发产物、bundle 与发布归档。
- 集成测试:沙箱模式、筛选与输出。
- CI variables:重试、并发与超时预算。
- 发布工作流:渠道、演练与验证。
- Issue 与 PR 自动化:分诊权限与实际检查范围。
- Sandbox 代理示例:CONNECT 允许规则与边界。
客户端适配
- 适配器与历史草案:识别当前能力与拟议入口。
- IDE transport:连接、审批与恢复责任。
Daemon 运行时
内部实现说明 HTTP 启动、ACP bridge、审批及生命周期责任。
本节文档
- Qwen Code 架构与包边界区分直接 agent 执行、ACP 运行时及 HTTP 客户端,定位扩展和状态责任。
- 上游贡献与开发环境准备 Node 环境,区分构建、集成测试、调试与贡献要求。
- 渠道插件实现通过 ChannelPlugin 与 ChannelBase 接入平台消息,正确构造 Envelope 和附件。
- 渠道显示与投递契约保留命名任务来源标签,分离原始响应和平台展示,并验证主动发送目标。
- 源码构建与 npm 包区分 workspace 构建、CLI bundle、发布产物和独立安装包。
- 集成测试与诊断输出选择无沙箱、Docker 或 Podman 测试,并保留具体用例输出。
- CI 重试、并发与超时用仓库 Actions variables 调整测试预算,并理解 off 与零次重试的区别。
- 发布渠道与工作流理解 stable、preview、nightly,区分 dry run、归档验证和实际发布。
- Issue 与 PR 自动化了解上游分诊、CI 和发布之间的分工,以及实际触发条件。
- Sandbox 代理示例理解官方 CONNECT 代理的域名规则、启动入口和过滤边界。
- 客户端适配与历史草案区分共享 UI、现有 transport 和 TUI、IDE、渠道早期迁移方案。
- IDE daemon transport 实现核对 loopback 连接、事件回调、审批和断连恢复的实际责任。