# 并行化与异步唤醒 — 能力设计 > 创建: 2026-10-04 | 定位: 能力建设批(非缺陷修复)。两条已实证的能力边界:①写并行缺位+同文件写竞态隐患 ②无异步唤醒原语(挂起即等人) > 关联: 跨进程任务接力-设计(M1 接力棒/wake 对接)/无人值守长任务-设计(continuum/租约)/飞书直连通道(外部唤醒源) ## 一、能力 1:写并行化(risk × 路径租约二维分组) ### 1.1 现状与缺口 工具批执行按 risk 单维分组:Low 并行(join_all),Medium 逐个审批/串行,boundary 会话 Medium 旁路后并入并行向量。三个缺口: 1. **潜在竞态(顺带修复)**:boundary/auto 会话同轮两个 patch 同一文件→旁路后并行执行→写竞态(实证可能:LLM 同轮多次编辑同文件常见); 2. **非 boundary 会话写类纯串行**:多文件重构任务(今日主场景)单轮写吞吐受限; 3. **分组器无资源维度**:risk 之外,「是否同一路径」这一冲突维度未建模。 ### 1.2 设计:二维分组器 - 分组三档:**纯读类**→并行(上限沿用 8);**写类按规范路径分片**→异路径并行、同路径按 LLM 发出顺序串行(路径经 canonicalize 归一,与 boundary 白名单同款归一口径);**High**→逐个审批不变。 - boundary/auto 旁路逻辑不变,旁路后的写类再按路径分片;非 boundary 会话维持逐个审批(用户逐个拍板语义不倒退)。 - 顺带消解 1.1-1 竞态:同路径强制串行即修复。 - 实现:单点在 audit 的 process_tool_calls 批分组器;写类路径冲突判定抽纯函数+单测(双 patch 同文件/异文件/读写混合三态)。 ### 1.3 五项自评 兼容(零 schema)/破坏(同路径保序显式化=消竞态,是修复非破坏)/安全(写面与审批面均不扩)/资源(进程内并发写不同文件安全)/回退(分组器单点开关,默认随 auto/boundary 开)。 ## 二、能力 2:wake 异步唤醒原语 ### 2.1 模型 挂起任务登记唤醒条件,条件满足自动唤醒注入续跑——「挂起」与「等人」解耦。 - **WakeRegistry**(首期进程内存,随 app 存亡;宁少勿预留不落库):条目={conv_id, condition, payload, created_at, expires_at, once=true} - **条件三型(首期)**:delay(延时到)/file-appear(文件出现,接力棒 result.json 场景)/process-exit(进程退出,自换装场景) - **唤醒动作**:向目标会话注入一条 user 角色消息(复用 a5 换向注入路径+force_send 语义,过 generating guard/epoch 守卫),内容=唤醒上下文人话;注入即从当前会话状态续跑 - **防重**:once 语义+expires 过期清理(默认 24h);注册表上限 64 ### 2.2 三源对接(唤醒源不新增机制) | 唤醒源 | 对接方式 | |---|---| | 接力棒脚本(M1) | 脚本完成写 result.json → file-appear 唤醒 | | 飞书直连通道 | 用户消息到达 → 直接注入(不经 registry,即时唤醒) | | app 内调度器 | delay 型 tick 检查(复用既有定时模式) | ### 2.3 五项自评 兼容(零 schema,首期内存)/破坏(无既有语义变更)/安全(注入走既有 guard;外部源经飞书白名单;registry 本地条件无远程面)/资源(64 上限+24h 过期)/回退(随接力棒 M1 开关,未开关时 registry 不启用)。 ## 三、分期 - W-a: 写并行二维分组器(独立交付,含同文件竞态修复) - W-b: wake 原语核心(三条件+注入续跑) - W-c: 与 M1/飞书通道对接(依赖各方落地) ## 四、拍板点 1. 写并行默认开(仅 auto/boundary 会话)还是全局?建议:仅 auto/boundary,普通会话维持逐个审批,观测一版再放宽。 2. wake 注入消息形态:user 角色(对齐 a5,落库可见)还是 system(静默)?建议 user,审计可见。 3. registry 首期内存态(重启即失)可接受?建议可接受——唤醒条件本就依附 app 存续,接力棒场景由进程外脚本兜底。 ## 五、明确不做 - 不做跨设备唤醒分发;不做条件表达式引擎(三型够用,复杂条件=任务书职责);不做并行度动态调优(常量起步,实测再调)。 ## 六、续接与主动性(下一阶能力,2026-10-04 深夜分析) ### 6.1 续接能力现状与根修 | 场景 | 现状 | 根修 | |---|---|---| | 同 loop 断流/失败 | ✅ 跨轮重入退避(P1 已修) | — | | 停靠后续接 | ✅ 人工(点继续/重发);a5 落地后先自动换向×2 | — | | 进程重启后 | ❌ 任务静默失踪(落库稀疏:225 轮存 2 条) | **continuum 任务连续体**(M2/W4 批,V46 轮级持久化) | | 换装/进程死亡 | ❌ 无恢复入口 | **M1 接力棒**(result.json+file-appear 唤醒=6.2) | | 长会话上下文 | ✅ 视图压缩续接(今日已修 memo/豁免) | — | 缺口本质=「执行续点」不持久+「进程级恢复」缺位。根修两件均设计已备(W4 批与 M1),不新增立项。 ### 6.2 主动性能力分层与根修 主动性四层:反应性(✅ 响应指令)→自愈性(a5 ✅ 在飞)→**前瞻性(缺)**→**目标驱动持续性(缺)**。 根修=wake 原语的首个应用场景「**空闲自领**」(不新立大设计): - 空闲检测(无活跃 loop+无 pending)→ delay 型 wake 唤醒 → 查 todo 板按优先级领任务 → 领单纪律(已注入的纪律段覆盖「修复必销账」)→ 完成回写 - **边界约束(要害)**:自领任务默认限 Low 风险档+白名单目录,Medium 以上仍需人工——主动性≠放权,是边界内自主(对齐无人值守 TaskBoundary 信任分级) - 治理环联动:自领行为全量进监控 history.jsonl,自领质量纳入 S 阶升级判据 - 拍板点(新增 4):①自领默认开还是白名单会话(建议后者起步)②自领频率(建议空闲后 30 分钟延迟触发)③自领范围(todo 板确定性条目 only,设计先行类不领)④自领产出是否推送飞书(建议是,对齐治理环) ### 6.3 挂机模式(2026-10-04 深夜用户拍板:自领/自推进/自拆解/自设计) W-d 空闲自领的完全体:agent 在边界内持续自主运转,人只做拍板与验收。 **核心循环**: 空闲检测(delay wake)→ 领单(todo 板按优先级)→ 分类(确定性条目直推/设计先行类先自设计)→ 自拆解(大任务切子批,文件零交集矩阵)→ 自推进(边界内执行,熔断走 a5 自愈)→ 自验证(门禁三件套)→ 自销账(板回写+核验语)→ 间隔 → 循环。 **约束框架(防失控四闸)**: 1. 边界闸: 挂机会话=boundary 会话(auto_exec+risk_ceiling+白名单目录),High 风险(部署/push/删除)一律挂起等拍板 2. 预算闸: 复用 TaskBudget 三值(挂机时长/单任务轮次/总 token),耗尽→停靠+飞书通知(不无限空转) 3. 自愈闸: 执行中熔断走 a5 换向×2;挂机内换向耗尽→跳过该任务领下一个(不死磕单点),同一任务两次挂机失败进「待人工」清单 4. 治理闸: 全程进 history.jsonl;每日挂机报告(领了几单/完成几单/返工率/消耗)→飞书 **与既建机制的组合**(零新基建,全是既有件循环化): wake(循环驱动)/a5(执行自愈)/continuum(续点)/boundary(边界)/TaskBudget(预算)/监控 history(治理)/飞书(通知与远程指令)。 **分期**: - W-d1 挂机循环骨架(领单→执行→销账,确定性条目 only) - W-d2 自拆解+自设计(设计先行类:先出设计稿落 docs→登记→作为后续实施批自领;编码类大任务切子批) - W-d3 治理强化(预算闸/挂机报告/待人工清单) **拍板点(挂机版,覆盖 6.2 的 4 项)**: 1. 挂机开关形态: 托盘一键+设置页(建议双入口) 2. 挂机时段: 全天 or 夜间档(初衷图既有「夜间额度高宜批量推进」设想,建议可配,默认全天) 3. 任务范围: 确定性条目 W-d1 起步;设计类 W-d2 起(自设计产出稿仍挂「待拍板」不直接实施,人工审后自动领实施) 4. 失败升级路径: 两次挂机失败→待人工清单+飞书(建议是) ### 6.3.1 续接能力并入挂机(2026-10-04 深夜 [补1] 用户令) 挂机跑长时段(尤其过夜),进程重启/崩溃/换装必须能续——**续接是挂机的命门,不是附加项**: - **挂机状态持久化**: 挂机会话登记为 continuum 条目(挂机上下文=当前任务/子批进度/预算消耗/待人工清单);W-d1 首版用轻量挂机状态文件(挂机目录 JSON,对齐接力棒 result.json 模式),M2 continuum 落地后升级 - **重启自动续**: 启动扫描发现「挂机中」状态→自动恢复循环(挂机=显式完全信任档,重启自动续符合语义;区别于普通任务的「重启不自动续」,开关=挂机开关本身) - **断点任务续跑**: 单任务中断从 continuum 续点恢复(不重放已落库轮次);W-d1 首版退化为「重启后该任务重领,已完成部分靠销账标记去重」——销账纪律(已注入)在此兜底 - **换装特殊流**: 挂机中自带换装(接力棒场景)→换装后 file-appear 唤醒自动续,全程无人 - 依赖序: W-d1 轻量续接(状态文件)→ M2 continuum(精确续点)→ W-d3 治理强化;续接不阻塞挂机骨架先行 ## 七、多任务×子代理×真异步编排(2026-10-04 深夜用户定标) ### 7.1 三级并行模型 ``` 会话层: 多会话并行(F-09 per-conv 已有,并行度可配化) └ 任务层: 每会话一活跃任务,多任务跨会话并行 └ 子代理层: 每任务 N 个子代理(spawn 并发已验证),W-a 后工具批内写类亦并行 ``` ### 7.2 真异步 spawn(核心新增) 现状:spawn_agent 同步语义(报告=工具返回值,父阻塞等全部子代理)。真异步变体: - `spawn_agent(async=true)`: 派发后**立即返回**「已派发+agent_id」,父 loop 继续其它工具/下一轮 - 子代理完成 → 经 **wake 原语**(file-appear/process 条件,§二)唤醒父会话,注入「[子代理报告] agent-N: <摘要>」user 消息 → 父下一轮消化 - 父任务若已收敛: 报告落审计+完成卡,不强行唤醒(任务边界尊重) - **轮界注入**: 父正在流式生成时报告到达→排队至本轮结束(对齐 a5 轮界注入模式),不打断流 ### 7.3 并发治理(防爆炸) - 全局子代理并发池上限(建议 4-6,实测调):防 API 限流+token 成本失控+CPU 争抢 - per-task TaskBudget 预算已备,async 子代理计入所属任务预算 - 超限行为: async spawn 排队(WakeRegistry 挂 pending 条件=有空槽),非拒绝 ### 7.4 失败面 子代理失败/截断 → wake 注入失败报告(带 stop_kind,对齐停靠词表),父可重派;父会话已删 → 报告落审计即止。 ### 7.5 依赖与分期 - 前置: W-a(写并行)/W-b(wake 原语)——本节是二者的组合应用层 - W-e1: async spawn 变体+报告回填注入(轮界排队) - W-e2: 全局并发池+预算联动 - W-e3: 与 continuum 组合(父会话被压缩/切换后报告仍可达) ### 7.6 拍板点 1. async 子代理失败是否自动重派一次?(建议:是,带失败摘要,重派计入任务预算) 2. 报告回填消息是否也走 [自动换向] 类前缀族(建议:新增 [子代理报告] 前缀,前端完成卡旁路消费) ## 八、编排能力分析与规划(2026-10-04 深夜 [补1]) ### 8.1 存量资产盘点(反转发现:编排面零使用≠零资产) | 资产 | 状态 | 编排价值 | |---|---|---| | tasks 表(parent_id 层级+8 态状态机) | 在用 | 任务分解与推进的原语 | | task_links 依赖图(DAG 关联+循环检测) | 建成零使用 | 依赖满足自动推进的底座 | | df-workflow(DAG 引擎+workflow_executions 持久化) | 建成零使用(9 张编排表 0 行) | 编排轨迹与节点化执行面 | | TaskAdvanceNode(DAG 节点已注册) | 建成未联动 | DAG×agent 融合的现成插销 | | spawn_agent+registry/boundary/budget | 在用 | 子代理编配原语 | | todo 协作板+挂机自领(W-d 设计) | 设计中 | 任务源与自驱入口 | 结论:**编排缺口不在资产,在「连接与驱动」**——依赖图没人推进、DAG 引擎不知道 agent、任务源没有调度器。 ### 8.2 缺口清单 1. 依赖图静态:task_links 声明了 A→B,但 A 完成不会解锁 B(无依赖满足→自动推进) 2. 两套孤岛:df-workflow 与 agent loop 互不感知 3. 多任务调度器缺位:挂机领单只查板,无依赖/优先级/资源三维调度 4. 事件驱动编排缺位:「X 完成→触发 Y」无机制(wake 是雏形) ### 8.3 编排能力三层路线(渐进,复用率极高) - **编排 1.0**(挂机模式内含,W-d):板驱动+任务状态机推进,无依赖图——已设计 - **编排 2.0 依赖图自动推进**:task_links 依赖满足(前置任务 completed)→wake 唤醒解锁下游任务(advance+可选自动派发);执行轨迹落 workflow_executions——把「死的依赖图」变成「活的流水线」;改动面=advance 成功回调+wake 注册,复用 df-nodes 状态机与 task_links - **编排 3.0 DAG×agent 融合**:工作流节点=agent 动作(spawn/advance/notify 已有 TaskAdvanceNode 插销),DAG 即多任务编排面;初衷图 Code-Working 会话「dynamic workflow 编排推进」的落地形态;前置=2.0+async spawn(W-e) ### 8.4 拍板点 1. 编排 2.0 的依赖解锁是否自动派发执行(建议:解锁仅标记 ready,派发由挂机领单消费——调度权仍在挂机,编排只管条件) 2. 编排 3.0 的 DAG 定义形态(YAML 模板 vs 板驱动自动生成,建议后者起步) ## 九、状态即时同步与通知能力(2026-10-04 深夜 [补2]) 可控支柱的推送面:agent 状态变化即时可达所有端。现状=事件总线单一事实源已立(AiChatEvent 族),缺的是**出口扇出与分级**。 ### 9.1 出口扇出(一对多,零新事实源) AiChatEvent 族(进度/停靠/完成/失败/审批)→ 出口适配器:桌面 UI(既有)/托盘 NeedAction(既有)/飞书通道(设计已立,关键路径)/relay-miniapp(隧道既有)/监控 history(已建)。 ### 9.2 即时性分级(防刷屏) | 级 | 事件 | 策略 | |---|---|---| | 即时 | 停靠/审批挂起/任务完成/失败熔断 | 即推(同类 5s 节流,notify 既有范式) | | 摘要 | TaskProgress 每 N 轮 | 可选推(挂机模式开时推) | | 批量 | 小时监控摘要/每日挂机报告 | cron 推(治理环既有设想) | ### 9.3 状态查询面(补「跑到哪了」) 远控查询命令族(飞书/miniapp 同构):查活跃任务/预算消耗/最近停靠原因——复用 remote_bridge 命令族扩展,只读零风险。 ### 9.4 依赖与分期 W-g1 出口适配器框架+即时级(依赖飞书通道实施)/W-g2 摘要级+查询命令族/W-g3 每日报告(挂机 W-d3 联动)。 ## 十、会话间/代理间感知能力(2026-10-04 深夜 [补3]) 今天的全部互踩(双头编排/子代理同文件/主客两线)同根:**无人知道「谁正占着什么」**。感知能力=lease 原语的读写两面落地。 ### 10.1 FileLeaseRegistry(文件面占用感知,要害) - 写类工具(patch/write/edit)执行前登记 path→(conv, agent, ttl) 到进程级注册表,完成释放;同路径第二写者前置校验命中→拒绝+指路「该文件正被会话 B 编辑,等它完成或换文件」 - 与 W-a 二维分组器互补:分组器管**同轮内**保序,registry 管**跨轮跨会话**互斥——合起来=完整 lease - 直接根治:双头编排互踩/子代理同文件竞态/主客两线叠改 ### 10.2 拓扑与状态感知 - 父↔子: 父见子代理实时状态(ai_sub_agent_list 已备,S3 轨迹已建),子见兄弟在做什么(query_leases 天然覆盖) - 会话↔会话: 一行状态查询「会话 B 在干什么」(per_conv 状态投影,只读) - 发现共享: agent 的排障发现(如「X 是软删地雷」)写 knowledges→其他会话 knowledge_search 可见(盘活 1033 条只写不读的存量) ### 10.3 分期 W-h1 FileLeaseRegistry+写前置校验(小改,价值立现)/W-h2 query_leases 工具+兄弟感知/W-h3 跨会话状态+知识联动。前置: 无(纯增量);与 W-a 同批相邻落地最佳。 ## 十一、伪命题甄别(2026-10-04 深夜 [补4],对抗自查,实施清单以此为准) 五测试:今天有无真实被卡/有无更轻替代/是否预建/与既有重复/收益成本比。 | 件 | 判定 | 理由与处置 | |---|---|---| | W-h 感知/租约 | **真命题,P0** | 今日三连实锤(双头/子代理同文件/主客两线);小改大收益,提到最前 | | W-d1 挂机最小闭环 | **真命题** | 用户亲定场景;先跑一周看真实产出率再议深化 | | W-e2 全局并发池 | **真命题(小)** | 3 子代理连发已近约束,防 token 爆炸真约束 | | W-a 写并行吞吐 | **半伪,降级** | 墙钟大头是构建(38%)非写(秒级);**只修同文件竞态保序**(一行分组逻辑),吞吐优化等写耗时占比>20% 实测再做 | | W-d2 自拆解/自设计 | **降级** | 板上条目登板时已拆好;设计稿产出不需要专门机制——作顺手能力,不立子系统 | | W-b wake 原语 | **条件性,随场景建** | 现有消费者(挂机/接力棒)均未落地;单独建=预建。与 W-d1 绑定实施 | | W-e1 async spawn | **条件性,缓** | 今日子报告全是下一步输入(依赖决定同步是对的);先建并发池,出现「父有事可做」场景再建 async | | W-f 编排 2.0/3.0 | **冻结(高伪风险)** | task_links/df-workflow 至今零真实使用——「编排面零使用」的正确读法是**还没到需要编排的阶段**;启动信号=用户开始建依赖链或挂机领单遇前置任务 | | W-g 状态推送 | 真命题但被阻塞 | 随飞书通道走,不单独排 | | W-c 对接层 | 合并 | 非独立件,并入 W-d/M1 实施阶段标记 | **实施序修正**: W-h 感知租约(最先)→ W-e2 并发池 → W-d1 挂机最小闭环(含 W-b wake 按需)→ 其余冻结等信号。 **自查教训**: 本文档 §1-§9 是「能力全景」(留给未来对照),§十一才是「现在做什么」——全景图与施工图必须分开,否则全景会冒充计划。 ## 十一·修正(2026-10-04 深夜 [补2] 用户纠正) **方法错误更正**:「零真实使用→冻结等信号」是鸡生蛋逻辑错误——task_links/df-workflow 零使用的主因是**能力未暴露**(无 agent 工具面入口/无调用门),不是需求不存在。**正确方法=投最小探针**:暴露最小可用入口让真实使用发生,用使用率(而非等待)决定深化。 修正后处置: - W-f 2.0: 降级为**最小探针**——agent 工具面暴露「声明依赖」+依赖满足时提示一行(不做自动推进);探针使用率决定是否建自动推进 - W-e1 async spawn: 同理暴露 async 参数(小改),有机会用才有需求验证;并发池(W-e2)不受影响仍立做 - 其余维持: W-a 写并行降级有**实测数据支撑**(构建 38% vs 写秒级),不依赖使用信号,结论不变;W-d2 维持「顺手能力不立子系统」但自设计保留为挂机探索项 - 通用教训(入方法论): 能力甄别双判据——**有量化实测数据的按数据判;无数据的投最小探针判**;禁止把「未被使用」直接读成「不需要」(尤其当入口未提供时) ## 十二、自进化能力(2026-10-04 深夜 [补1]:自造工具+重复寻优) 初衷图「进化系统(自举)」的落地形态,两层: ### 12.1 重复→寻优(重复是重构信号,不只是停滞信号) - 数据源已备: audit 表全量工具调用序列——**同一序列模式出现 N 次**(如「grep X→read Y→patch Z」×5)即抽象候选 - 两种触发: ①在线(G2 熔断前的中途检测:重复达阈值时先问「是否有更优解/可抽象为脚本」,从「数次数」升级为「问原因」)②离线(挂机空闲扫 audit 出模式报告——进化任务成为挂机的自领任务类型) - 输出: 优化建议(换工具/写脚本/建技能),不自动改=零风险 ### 12.2 工具/技能自造管线 - 现状: agent 会写脚本(run_command)但**无「晋升为注册技能」的管线**;devflow 技能库与 read_skill 已存在(read_skill cm/advance 今日实证) - 设计: 脚本落 scripts/ → 注册进技能库(最小元数据: 名称/用途/入参/风险档) → 后续任务 read_skill 复用;风险档默认 Low(只读类)/写类需审批;资产可审计可回收 - 沉淀物分流: 重复的**排障发现**→knowledges;重复的**操作序列**→skills(两种进化物各归其位) ### 12.3 分期与拍板 - E-m1 模式扫描报告(只读,零风险,挂机自领一类)→ E-m2 在线启发(熔断对话化)→ E-m3 技能注册管线(风险档+审批) - 拍板点: 技能注册是否需人工审(建议 E-m3 首次注册必审,之后同类自动) ## 十三、失败学习环(2026-10-04 深夜:所有失败作为学习教材,不反复在相同处失败) 「不重复失败」的量化判据分两层:同签名不重放(已管:loop 内窗口+纪律注入)+ **同类失败不跨会话重演**(缺,本节补)。 ### 13.1 失败归类与学习 - audit 已是全量失败事实源(status+error+参数);缺「**归类**」:按错误模式聚类(状态机拒绝/路径未授权/精确匹配未中/网络/参数非法),类粒度才是学习单元 - 高频失败类 → 提炼**教训文本**(因果+规避法一句话),存 knowledges(失败分册,复用既有知识链与召回闭环设计,零新存储) ### 13.2 教训的三个消费点 1. **同类任务前置注入**: 派发/自领任务时,若目标域有高频失败类教训→提示词附「历史高频坑」(与 a5 换向注入同路) 2. **失败现场即时附学**: 新失败发生时,若该类已有教训→失败提示附「同类失败已 N 次,已学经验:...」(治盲试的直接抓手) 3. **挂机进化任务**: F-m1 失败归类统计=自领任务一类(只读零风险),产出高频失败 Top 与教训草案 ### 13.3 分期与自评 F-m1 归类统计(只读)/F-m2 教训提炼+注入/F-m3 失败现场附学。自评: 兼容(复用 audit+knowledge 链零新存储)/安全(教训文本进提示词,无注入面——教训由 LLM 提炼经审核入板)/资源(统计查询按需)/回退(注入开关)。拍板点: 教训提炼由谁审(LLM 出稿+用户/主代理审,建议后者)。 ### 12.4 工具进化环([补]:自写工具的自迭代) 自造(E-m3)之后是自进化——工具不是写完即终态: - **使用遥测**: 自造工具每次调用记 次数/失败率/「调用后紧跟修正」率(补丁紧跟=不顺手信号),数据源=既有 audit,零新埋点 - **进化触发**: 失败率高 或 修正跟随率超阈值 → 该工具进进化候选 - **进化动作**: 读工具源码+遥测 → LLM 产改进版(**参数向后兼容**)→ 版本号递增 → 旧调用方不受影响 → 旧版退役 - **安全闸**: 进化=代码变更,走既有门禁(check+相关测试);行为变化审计留痕;风险档升级需审批(对齐技能注册同款纪律) - 依赖序: E-m3 注册管线之后(先有自造才有自进化),真工具的真实使用积累(E-m3 落地后自然产生)——**本阶是最远期件,前面三阶不落地它不启动** ### 12.5 脚本生命周期纪律([补1]:不瞎写瞎用瞎删) 今日实证三类乱象:仓库根目录散落探查脚本(.fix_audit.py 类)/feishu_smoke.rs 写删横跳/docs 目录混入 .research 脚本堆。纪律四条: 1. **落位**: 一次性探查脚本→scripts/ 专用目录+命名 `scratch-<主题>.`,头部两行注释(用途/一次性或可复用);持久工具→走 E-m3 注册管线晋技能;**禁止落仓库根目录与文档目录** 2. **声明**: 头部即声明生命周期(用完即删/长期保留),删前核对「目的已达成且无引用」 3. **写前想清**: 结构性脚本(超过 30 行/含依赖引入)先定形态再写——对齐纪律段「一次成形」;写删回环超过一轮=停下换思路(与 G3 熔断同一触发语义,但纪律在前熔断在后) 4. **资产化优先**: 同类脚本写第二次→触发 E-m 重复寻优(抽象为注册技能),脚本资产不流失 落地: ①E-m3 管线含落位与声明规范 ②纪律段增补第 7 条(脚本落位,下一批注入修订顺带,不单独改) ③既有 memory「工作空间根目录整洁规范/AI临时文件写入规范」与此同源,agent 侧规则注入后即为同一纪律的对端执行 5. **临时文件同规**: 临时文件(中间产物/探针输出/快照)与脚本同一套生命周期——落专用目录(temp/ 或 .scratch/,禁根目录/文档目录/源码树)+命名带主题与日期+声明保留策略(用完即删/任务末清理)+**永不进 git**(gitignore 已挡,提交前三问第 1 问复核)。今天实证的应然态:探查脚本堆落 docs/.research/ 即违规,应落 temp/agent-monitor/ 同级专用目录。 6. **文档同规**: AI 产文档三分各归其位——①会话报告/分析结论:默认对话内直交,需跨会话保留落 temp/(命名主题-日期);②设计文档:docs/02-架构设计/专项设计/ +INDEX 登记;③项目文档:对应 docs/ 子目录+中文命名+INDEX 更新。禁:文档落根目录/未进 INDEX/设计稿与正式文档混放。今天正反例:四篇设计落专项设计目录(正)vs .research 勘察堆落 docs 目录(反,应落 temp/)。