其他
避免 TaskOutput…
当需要运行子代理并获取结果时,用同步 `Task` 代替 `TaskOutput`,防止完整 transcript 灌入主上下文。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 35/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 40/100 ×0.15
适用场景
避免 TaskOutput 灌满上下文:特定
解决思路
- 不要调用 `TaskOutput` 工具。
- 需要子 agent 的产出时,改用 `Task` 工具的同步模式。
- 调用 `Task` 时设置 `run_in_background=false`,让 agent 运行完成后直接返回摘要,而不是把 transcript 倒入主上下文。
- 不要写成 `Task(run_in_background=true)` 后再 `TaskOutput(task_id="...")`;这种模式会把完整 agent transcript(可达 70k+ tokens)读入上下文。
- 不要用 `TaskOutput` 读取完整 agent transcript 到上下文中,否则会造成对话中途 compaction,并破坏 agent 上下文隔离的目的。
适用边界 · 注意事项
- 当你确实需要完整 agent transcript 进入主上下文做人工审查或调试时,不要使用本经验;它优先返回摘要并保持上下文隔离。
- 当环境没有 `Task`/`TaskOutput` 工具或 `Task` 不支持 `run_in_background` 同步模式时,无法直接按此模式执行。