位置
apps/sidecar/src/services/agent-runtime/runtime-core/run.ts(2882 行):五块职责混装——SDK 工具装配、Agent/Delegate/WaitForDelegations 三个内联工具定义(~700 行闭包)、事件总线"第二入口"发布助手(:1721-1825)、session 工厂主体(:1827-2611)、task-linked subagent 执行器(:2716-2827)。建议工具装配+委托工具拆 run-tools.ts、总线发布助手独立
apps/sidecar/src/services/agent-runtime/runtime-core/attempt.ts:147-766:createCanUseToolHandler 约 620 行,五段权限逻辑(插件敏感能力审批/AskUserQuestion 会话/workflow hook/subagent 策略/自动化暂停)应归入 permissions/ 目录
apps/sidecar/src/rpc/agent-handlers.ts(2329 行):混 12+ 域,约 2/3 与"agent"无关;create-rpc-handlers.ts:64-90 已有 15 个 factory 拼装缝,按 coding/plugin/skill/file/resume 再拆 4-5 个文件即可(schemas.ts 2103 行同步按域拆);:1460 有两个 handler 挤同一行、缩进断裂——文件过大导致的机械损伤样本
apps/sidecar/src/services/agent/agent-files-service.ts(2206 行):FileRef 授权/守护层(:211-657,自洽可整体移出)+ 线程/工作区/项目三套平行 CRUD(大量 ×3 近重复,:1041-1316)+ 附件流式写入 + 搜索
apps/sidecar/src/services/plugins/plugin-market-service.ts(2125 行):市场索引/缓存世代 + GitHub 适配(约 600 行,可下沉独立模块)+ 安装状态机 + catalog lease + semver
- 总线发布助手散在三处且签名重复:run.ts / lume-runner.ts / run-loop.ts 均为
void bus.publish(...).catch(log.warn) 同构,可合并单一 bus-bridge
说明
与 web 评审 #141(god-file)同主题的 sidecar 侧。不阻塞功能,按机会成本排期;每处拆分都是纯移动+import 调整,可分 PR 逐个进行。
位置
apps/sidecar/src/services/agent-runtime/runtime-core/run.ts(2882 行):五块职责混装——SDK 工具装配、Agent/Delegate/WaitForDelegations 三个内联工具定义(~700 行闭包)、事件总线"第二入口"发布助手(:1721-1825)、session 工厂主体(:1827-2611)、task-linked subagent 执行器(:2716-2827)。建议工具装配+委托工具拆 run-tools.ts、总线发布助手独立apps/sidecar/src/services/agent-runtime/runtime-core/attempt.ts:147-766:createCanUseToolHandler 约 620 行,五段权限逻辑(插件敏感能力审批/AskUserQuestion 会话/workflow hook/subagent 策略/自动化暂停)应归入 permissions/ 目录apps/sidecar/src/rpc/agent-handlers.ts(2329 行):混 12+ 域,约 2/3 与"agent"无关;create-rpc-handlers.ts:64-90 已有 15 个 factory 拼装缝,按 coding/plugin/skill/file/resume 再拆 4-5 个文件即可(schemas.ts 2103 行同步按域拆);:1460 有两个 handler 挤同一行、缩进断裂——文件过大导致的机械损伤样本apps/sidecar/src/services/agent/agent-files-service.ts(2206 行):FileRef 授权/守护层(:211-657,自洽可整体移出)+ 线程/工作区/项目三套平行 CRUD(大量 ×3 近重复,:1041-1316)+ 附件流式写入 + 搜索apps/sidecar/src/services/plugins/plugin-market-service.ts(2125 行):市场索引/缓存世代 + GitHub 适配(约 600 行,可下沉独立模块)+ 安装状态机 + catalog lease + semvervoid bus.publish(...).catch(log.warn)同构,可合并单一 bus-bridge说明
与 web 评审 #141(god-file)同主题的 sidecar 侧。不阻塞功能,按机会成本排期;每处拆分都是纯移动+import 调整,可分 PR 逐个进行。