| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
docs: 保留完整内容,重写中文实验 README 的教学流程 (#1145) * docs: teach from full experiment READMEs while preserving details * docs: keep existing anchors beside their teaching sections --------- Co-authored-by: Bojie Li <i@01.me> | 1 个月前 | |
docs: 保留完整内容,重写中文实验 README 的教学流程 (#1145) * docs: teach from full experiment READMEs while preserving details * docs: keep existing anchors beside their teaching sections --------- Co-authored-by: Bojie Li <i@01.me> | 1 个月前 | |
docs: 保留完整内容,重写中文实验 README 的教学流程 (#1145) * docs: teach from full experiment READMEs while preserving details * docs: keep existing anchors beside their teaching sections --------- Co-authored-by: Bojie Li <i@01.me> | 1 个月前 | |
docs: 保留完整内容,重写中文实验 README 的教学流程 (#1145) * docs: teach from full experiment READMEs while preserving details * docs: keep existing anchors beside their teaching sections --------- Co-authored-by: Bojie Li <i@01.me> | 1 个月前 | |
docs: 保留完整内容,重写中文实验 README 的教学流程 (#1145) * docs: teach from full experiment READMEs while preserving details * docs: keep existing anchors beside their teaching sections --------- Co-authored-by: Bojie Li <i@01.me> | 1 个月前 | |
docs: 保留完整内容,重写中文实验 README 的教学流程 (#1145) * docs: teach from full experiment READMEs while preserving details * docs: keep existing anchors beside their teaching sections --------- Co-authored-by: Bojie Li <i@01.me> | 1 个月前 | |
chore: remove secret-shaped placeholders | 3 个月前 | |
fix(ch4): 修复主动工具发现运行器的 MCP v2 迁移遗漏,并重跑实验 (#990) #630 把实验迁到 MCP SDK v2 时只覆盖了感知实验,主动工具发现的运行器被漏下, 仍在用 v1 的 serverInfo 属性——v2 已改名为 server_info。因此这个实验自那次 迁移起就完全跑不起来,这也正是它 ledger 里记录的哈希 ce9d6eda… 在运行目录中 对不上任何文件的原因:那份记录来自 v1 时代(server_version 1.26.0),之后再 没有人成功跑过。 - 运行器按仓库中已迁移运行器的同款防御写法修两处:serverInfo/server_info 与 isError/is_error 双兼容;顺带修正 VALIDATION_ROOT 仍指向 experiment_4_7 的 残留(磁盘上早已不是该名)。 - 重跑并记录为新的 canonical run rerun_20260825,12 项门禁全部通过, manifest 哈希 e5a70588… 可复验。ledger 与 latest.json 同步。 重跑复现了原始结论:两组均 3/3 完成、工具选择准确率均 100%,**准确率提升依然 没有出现**;主动发现在耗时与 schema 暴露上优势显著——每任务 system prompt 1,251 token 加全组 8,424 token 动态注入,对照组每任务 50,829 token; 783.442 秒对 3,056.294 秒(3.90×)。原始记录为 808.926 对 2,590.820 秒(3.20×)。 运行需要 OLLAMA_FLASH_ATTENTION=0:开启 flash attention 时,ollama 0.20.7 在 Metal 上预填充对照组约 5 万 token 的提示词会使 llama runner 崩溃(exit status 2)。 这只是运行时规避,实验参数一律未改——num_ctx 仍为 131072,127 个 schema、 50,597 token 全量注入,符合协议要求的下限。 ledger 顶部的失效哈希说明相应收敛为一条:6-1 邮箱实验的哈希仍然失效,其 Unipile 凭据至今返回 401,重跑无法解除阻塞,只能靠一次明确记录的重算来更正, 因此仍保留原值不动。 Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 2 个月前 | |
docs(ch4): 实验编号、目录名与交叉引用对齐新的阅读顺序 (#987) * docs(ch4): 实验编号、目录名与交叉引用全部对齐新的阅读顺序 第四章把「工具太多怎么办」移到三类工具之前后,实验的阅读顺序变了: 主动工具发现 4-5→4-1,感知 4-1→4-2,多模态 4-2→4-3,执行 4-3→4-4, 协作 4-4→4-5。本 PR 把正文之外的一切跟着改齐。 正文与文档 - book/chapter2.md 指向第四章的交叉引用改名为「工具太多怎么办」一节 - chapter4/README.md 配套项目表按新顺序重排重编号 - 五个实验目录各自的 README(中英双语段落) - docs/EXPERIMENT_STATUS.md、slides/lesson-12.md 代码与目录 - 运行器与测试文件改名:perception 的 run/test/test_real_evidence 4_1→4_2, execution 的 run 4_3→4_4,collaboration 的 run/test_run/validate 4_4→4_5 - validation 目录改名:discovery 4_5→4_1、perception 4_1→4_2、 execution 4_3→4_4、collaboration 4_4→4_5 - 源码内的路径常量、campaign 标识、Docker 容器名 exp4-3→exp4-4 顺带修一个真 bug:active-tool-discovery 的源码里编号停留在拆分第六章之前的 4-7,VALIDATION_ROOT 指向 experiment_4_7,而磁盘上的目录早已是 4_5——今天跑 一次会另建一个目录。现已统一到 4-1。 EXPERIMENT_LEDGER - ch4 ledger 重排重编号;原先残留的 4-5/4-6 两行(agent-with-event-trigger、 async-agent)早在拆分第六章时就搬走了,移出并新建 chapter6/EXPERIMENT_LEDGER.md 承接,编号改为 6-1/6-2 - 顶部新增说明:目录改名只动目录名,封存的 manifest 与 receipts 字节未变, 因此每个哈希仍可对其原文件复验;改名前写下的 receipts 仍引用旧路径与旧编号, 那是运行当时的真实记录,刻意不改写 两处既有的哈希失效,只标注不代填 - 4-1(主动工具发现)记录的 ce9d6eda… 在其 canonical 运行目录里对不上任何文件 - 搬去第六章的邮箱实验,manifest 的 experiment 字段被改标为 6-1 从而改变了文件, 但 ch4 ledger 与 chapter6/.../latest.json 都仍记着改标前的 3f689dfe…, 实际已是 5b8befd0… 两者都早于本次改动。直接写上新哈希等于把一次没有说明的改动洗白,因此保留原值 并在 ledger 中写明,留待重跑或明确记录的重算。 校验:源码与文档中已无旧编号残留;封存证据零修改(git 全为 R 改名); 四个仍然有效的 ch4 哈希与 6-2 的哈希改名后复验通过;改名后的运行器均通过 py_compile;图 fig4-1..4-4 按阅读顺序递增,无需改名,无孤儿文件。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe * docs(ch4): 12 个翻译版 README 的实验表同步重排重编号 上一个提交只改了 chapter4/README.md,11 个带编号的翻译版(ar/en/es/hu/id/ja/ ko/ru/ta/vi/zh-TW)漏了;README.tr.md 的表中没有编号,但行序同样按阅读顺序 重排。行内译文一字未动,只动编号与行序。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 2 个月前 | |
docs(ch4): 实验编号、目录名与交叉引用对齐新的阅读顺序 (#987) * docs(ch4): 实验编号、目录名与交叉引用全部对齐新的阅读顺序 第四章把「工具太多怎么办」移到三类工具之前后,实验的阅读顺序变了: 主动工具发现 4-5→4-1,感知 4-1→4-2,多模态 4-2→4-3,执行 4-3→4-4, 协作 4-4→4-5。本 PR 把正文之外的一切跟着改齐。 正文与文档 - book/chapter2.md 指向第四章的交叉引用改名为「工具太多怎么办」一节 - chapter4/README.md 配套项目表按新顺序重排重编号 - 五个实验目录各自的 README(中英双语段落) - docs/EXPERIMENT_STATUS.md、slides/lesson-12.md 代码与目录 - 运行器与测试文件改名:perception 的 run/test/test_real_evidence 4_1→4_2, execution 的 run 4_3→4_4,collaboration 的 run/test_run/validate 4_4→4_5 - validation 目录改名:discovery 4_5→4_1、perception 4_1→4_2、 execution 4_3→4_4、collaboration 4_4→4_5 - 源码内的路径常量、campaign 标识、Docker 容器名 exp4-3→exp4-4 顺带修一个真 bug:active-tool-discovery 的源码里编号停留在拆分第六章之前的 4-7,VALIDATION_ROOT 指向 experiment_4_7,而磁盘上的目录早已是 4_5——今天跑 一次会另建一个目录。现已统一到 4-1。 EXPERIMENT_LEDGER - ch4 ledger 重排重编号;原先残留的 4-5/4-6 两行(agent-with-event-trigger、 async-agent)早在拆分第六章时就搬走了,移出并新建 chapter6/EXPERIMENT_LEDGER.md 承接,编号改为 6-1/6-2 - 顶部新增说明:目录改名只动目录名,封存的 manifest 与 receipts 字节未变, 因此每个哈希仍可对其原文件复验;改名前写下的 receipts 仍引用旧路径与旧编号, 那是运行当时的真实记录,刻意不改写 两处既有的哈希失效,只标注不代填 - 4-1(主动工具发现)记录的 ce9d6eda… 在其 canonical 运行目录里对不上任何文件 - 搬去第六章的邮箱实验,manifest 的 experiment 字段被改标为 6-1 从而改变了文件, 但 ch4 ledger 与 chapter6/.../latest.json 都仍记着改标前的 3f689dfe…, 实际已是 5b8befd0… 两者都早于本次改动。直接写上新哈希等于把一次没有说明的改动洗白,因此保留原值 并在 ledger 中写明,留待重跑或明确记录的重算。 校验:源码与文档中已无旧编号残留;封存证据零修改(git 全为 R 改名); 四个仍然有效的 ch4 哈希与 6-2 的哈希改名后复验通过;改名后的运行器均通过 py_compile;图 fig4-1..4-4 按阅读顺序递增,无需改名,无孤儿文件。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe * docs(ch4): 12 个翻译版 README 的实验表同步重排重编号 上一个提交只改了 chapter4/README.md,11 个带编号的翻译版(ar/en/es/hu/id/ja/ ko/ru/ta/vi/zh-TW)漏了;README.tr.md 的表中没有编号,但行序同样按阅读顺序 重排。行内译文一字未动,只动编号与行序。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 2 个月前 | |
docs(ch4): 实验编号、目录名与交叉引用对齐新的阅读顺序 (#987) * docs(ch4): 实验编号、目录名与交叉引用全部对齐新的阅读顺序 第四章把「工具太多怎么办」移到三类工具之前后,实验的阅读顺序变了: 主动工具发现 4-5→4-1,感知 4-1→4-2,多模态 4-2→4-3,执行 4-3→4-4, 协作 4-4→4-5。本 PR 把正文之外的一切跟着改齐。 正文与文档 - book/chapter2.md 指向第四章的交叉引用改名为「工具太多怎么办」一节 - chapter4/README.md 配套项目表按新顺序重排重编号 - 五个实验目录各自的 README(中英双语段落) - docs/EXPERIMENT_STATUS.md、slides/lesson-12.md 代码与目录 - 运行器与测试文件改名:perception 的 run/test/test_real_evidence 4_1→4_2, execution 的 run 4_3→4_4,collaboration 的 run/test_run/validate 4_4→4_5 - validation 目录改名:discovery 4_5→4_1、perception 4_1→4_2、 execution 4_3→4_4、collaboration 4_4→4_5 - 源码内的路径常量、campaign 标识、Docker 容器名 exp4-3→exp4-4 顺带修一个真 bug:active-tool-discovery 的源码里编号停留在拆分第六章之前的 4-7,VALIDATION_ROOT 指向 experiment_4_7,而磁盘上的目录早已是 4_5——今天跑 一次会另建一个目录。现已统一到 4-1。 EXPERIMENT_LEDGER - ch4 ledger 重排重编号;原先残留的 4-5/4-6 两行(agent-with-event-trigger、 async-agent)早在拆分第六章时就搬走了,移出并新建 chapter6/EXPERIMENT_LEDGER.md 承接,编号改为 6-1/6-2 - 顶部新增说明:目录改名只动目录名,封存的 manifest 与 receipts 字节未变, 因此每个哈希仍可对其原文件复验;改名前写下的 receipts 仍引用旧路径与旧编号, 那是运行当时的真实记录,刻意不改写 两处既有的哈希失效,只标注不代填 - 4-1(主动工具发现)记录的 ce9d6eda… 在其 canonical 运行目录里对不上任何文件 - 搬去第六章的邮箱实验,manifest 的 experiment 字段被改标为 6-1 从而改变了文件, 但 ch4 ledger 与 chapter6/.../latest.json 都仍记着改标前的 3f689dfe…, 实际已是 5b8befd0… 两者都早于本次改动。直接写上新哈希等于把一次没有说明的改动洗白,因此保留原值 并在 ledger 中写明,留待重跑或明确记录的重算。 校验:源码与文档中已无旧编号残留;封存证据零修改(git 全为 R 改名); 四个仍然有效的 ch4 哈希与 6-2 的哈希改名后复验通过;改名后的运行器均通过 py_compile;图 fig4-1..4-4 按阅读顺序递增,无需改名,无孤儿文件。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe * docs(ch4): 12 个翻译版 README 的实验表同步重排重编号 上一个提交只改了 chapter4/README.md,11 个带编号的翻译版(ar/en/es/hu/id/ja/ ko/ru/ta/vi/zh-TW)漏了;README.tr.md 的表中没有编号,但行序同样按阅读顺序 重排。行内译文一字未动,只动编号与行序。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 2 个月前 | |
docs(ch4): 实验编号、目录名与交叉引用对齐新的阅读顺序 (#987) * docs(ch4): 实验编号、目录名与交叉引用全部对齐新的阅读顺序 第四章把「工具太多怎么办」移到三类工具之前后,实验的阅读顺序变了: 主动工具发现 4-5→4-1,感知 4-1→4-2,多模态 4-2→4-3,执行 4-3→4-4, 协作 4-4→4-5。本 PR 把正文之外的一切跟着改齐。 正文与文档 - book/chapter2.md 指向第四章的交叉引用改名为「工具太多怎么办」一节 - chapter4/README.md 配套项目表按新顺序重排重编号 - 五个实验目录各自的 README(中英双语段落) - docs/EXPERIMENT_STATUS.md、slides/lesson-12.md 代码与目录 - 运行器与测试文件改名:perception 的 run/test/test_real_evidence 4_1→4_2, execution 的 run 4_3→4_4,collaboration 的 run/test_run/validate 4_4→4_5 - validation 目录改名:discovery 4_5→4_1、perception 4_1→4_2、 execution 4_3→4_4、collaboration 4_4→4_5 - 源码内的路径常量、campaign 标识、Docker 容器名 exp4-3→exp4-4 顺带修一个真 bug:active-tool-discovery 的源码里编号停留在拆分第六章之前的 4-7,VALIDATION_ROOT 指向 experiment_4_7,而磁盘上的目录早已是 4_5——今天跑 一次会另建一个目录。现已统一到 4-1。 EXPERIMENT_LEDGER - ch4 ledger 重排重编号;原先残留的 4-5/4-6 两行(agent-with-event-trigger、 async-agent)早在拆分第六章时就搬走了,移出并新建 chapter6/EXPERIMENT_LEDGER.md 承接,编号改为 6-1/6-2 - 顶部新增说明:目录改名只动目录名,封存的 manifest 与 receipts 字节未变, 因此每个哈希仍可对其原文件复验;改名前写下的 receipts 仍引用旧路径与旧编号, 那是运行当时的真实记录,刻意不改写 两处既有的哈希失效,只标注不代填 - 4-1(主动工具发现)记录的 ce9d6eda… 在其 canonical 运行目录里对不上任何文件 - 搬去第六章的邮箱实验,manifest 的 experiment 字段被改标为 6-1 从而改变了文件, 但 ch4 ledger 与 chapter6/.../latest.json 都仍记着改标前的 3f689dfe…, 实际已是 5b8befd0… 两者都早于本次改动。直接写上新哈希等于把一次没有说明的改动洗白,因此保留原值 并在 ledger 中写明,留待重跑或明确记录的重算。 校验:源码与文档中已无旧编号残留;封存证据零修改(git 全为 R 改名); 四个仍然有效的 ch4 哈希与 6-2 的哈希改名后复验通过;改名后的运行器均通过 py_compile;图 fig4-1..4-4 按阅读顺序递增,无需改名,无孤儿文件。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe * docs(ch4): 12 个翻译版 README 的实验表同步重排重编号 上一个提交只改了 chapter4/README.md,11 个带编号的翻译版(ar/en/es/hu/id/ja/ ko/ru/ta/vi/zh-TW)漏了;README.tr.md 的表中没有编号,但行序同样按阅读顺序 重排。行内译文一字未动,只动编号与行序。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 2 个月前 | |
docs(ch4): 实验编号、目录名与交叉引用对齐新的阅读顺序 (#987) * docs(ch4): 实验编号、目录名与交叉引用全部对齐新的阅读顺序 第四章把「工具太多怎么办」移到三类工具之前后,实验的阅读顺序变了: 主动工具发现 4-5→4-1,感知 4-1→4-2,多模态 4-2→4-3,执行 4-3→4-4, 协作 4-4→4-5。本 PR 把正文之外的一切跟着改齐。 正文与文档 - book/chapter2.md 指向第四章的交叉引用改名为「工具太多怎么办」一节 - chapter4/README.md 配套项目表按新顺序重排重编号 - 五个实验目录各自的 README(中英双语段落) - docs/EXPERIMENT_STATUS.md、slides/lesson-12.md 代码与目录 - 运行器与测试文件改名:perception 的 run/test/test_real_evidence 4_1→4_2, execution 的 run 4_3→4_4,collaboration 的 run/test_run/validate 4_4→4_5 - validation 目录改名:discovery 4_5→4_1、perception 4_1→4_2、 execution 4_3→4_4、collaboration 4_4→4_5 - 源码内的路径常量、campaign 标识、Docker 容器名 exp4-3→exp4-4 顺带修一个真 bug:active-tool-discovery 的源码里编号停留在拆分第六章之前的 4-7,VALIDATION_ROOT 指向 experiment_4_7,而磁盘上的目录早已是 4_5——今天跑 一次会另建一个目录。现已统一到 4-1。 EXPERIMENT_LEDGER - ch4 ledger 重排重编号;原先残留的 4-5/4-6 两行(agent-with-event-trigger、 async-agent)早在拆分第六章时就搬走了,移出并新建 chapter6/EXPERIMENT_LEDGER.md 承接,编号改为 6-1/6-2 - 顶部新增说明:目录改名只动目录名,封存的 manifest 与 receipts 字节未变, 因此每个哈希仍可对其原文件复验;改名前写下的 receipts 仍引用旧路径与旧编号, 那是运行当时的真实记录,刻意不改写 两处既有的哈希失效,只标注不代填 - 4-1(主动工具发现)记录的 ce9d6eda… 在其 canonical 运行目录里对不上任何文件 - 搬去第六章的邮箱实验,manifest 的 experiment 字段被改标为 6-1 从而改变了文件, 但 ch4 ledger 与 chapter6/.../latest.json 都仍记着改标前的 3f689dfe…, 实际已是 5b8befd0… 两者都早于本次改动。直接写上新哈希等于把一次没有说明的改动洗白,因此保留原值 并在 ledger 中写明,留待重跑或明确记录的重算。 校验:源码与文档中已无旧编号残留;封存证据零修改(git 全为 R 改名); 四个仍然有效的 ch4 哈希与 6-2 的哈希改名后复验通过;改名后的运行器均通过 py_compile;图 fig4-1..4-4 按阅读顺序递增,无需改名,无孤儿文件。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe * docs(ch4): 12 个翻译版 README 的实验表同步重排重编号 上一个提交只改了 chapter4/README.md,11 个带编号的翻译版(ar/en/es/hu/id/ja/ ko/ru/ta/vi/zh-TW)漏了;README.tr.md 的表中没有编号,但行序同样按阅读顺序 重排。行内译文一字未动,只动编号与行序。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 2 个月前 | |
docs(ch4): 实验编号、目录名与交叉引用对齐新的阅读顺序 (#987) * docs(ch4): 实验编号、目录名与交叉引用全部对齐新的阅读顺序 第四章把「工具太多怎么办」移到三类工具之前后,实验的阅读顺序变了: 主动工具发现 4-5→4-1,感知 4-1→4-2,多模态 4-2→4-3,执行 4-3→4-4, 协作 4-4→4-5。本 PR 把正文之外的一切跟着改齐。 正文与文档 - book/chapter2.md 指向第四章的交叉引用改名为「工具太多怎么办」一节 - chapter4/README.md 配套项目表按新顺序重排重编号 - 五个实验目录各自的 README(中英双语段落) - docs/EXPERIMENT_STATUS.md、slides/lesson-12.md 代码与目录 - 运行器与测试文件改名:perception 的 run/test/test_real_evidence 4_1→4_2, execution 的 run 4_3→4_4,collaboration 的 run/test_run/validate 4_4→4_5 - validation 目录改名:discovery 4_5→4_1、perception 4_1→4_2、 execution 4_3→4_4、collaboration 4_4→4_5 - 源码内的路径常量、campaign 标识、Docker 容器名 exp4-3→exp4-4 顺带修一个真 bug:active-tool-discovery 的源码里编号停留在拆分第六章之前的 4-7,VALIDATION_ROOT 指向 experiment_4_7,而磁盘上的目录早已是 4_5——今天跑 一次会另建一个目录。现已统一到 4-1。 EXPERIMENT_LEDGER - ch4 ledger 重排重编号;原先残留的 4-5/4-6 两行(agent-with-event-trigger、 async-agent)早在拆分第六章时就搬走了,移出并新建 chapter6/EXPERIMENT_LEDGER.md 承接,编号改为 6-1/6-2 - 顶部新增说明:目录改名只动目录名,封存的 manifest 与 receipts 字节未变, 因此每个哈希仍可对其原文件复验;改名前写下的 receipts 仍引用旧路径与旧编号, 那是运行当时的真实记录,刻意不改写 两处既有的哈希失效,只标注不代填 - 4-1(主动工具发现)记录的 ce9d6eda… 在其 canonical 运行目录里对不上任何文件 - 搬去第六章的邮箱实验,manifest 的 experiment 字段被改标为 6-1 从而改变了文件, 但 ch4 ledger 与 chapter6/.../latest.json 都仍记着改标前的 3f689dfe…, 实际已是 5b8befd0… 两者都早于本次改动。直接写上新哈希等于把一次没有说明的改动洗白,因此保留原值 并在 ledger 中写明,留待重跑或明确记录的重算。 校验:源码与文档中已无旧编号残留;封存证据零修改(git 全为 R 改名); 四个仍然有效的 ch4 哈希与 6-2 的哈希改名后复验通过;改名后的运行器均通过 py_compile;图 fig4-1..4-4 按阅读顺序递增,无需改名,无孤儿文件。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe * docs(ch4): 12 个翻译版 README 的实验表同步重排重编号 上一个提交只改了 chapter4/README.md,11 个带编号的翻译版(ar/en/es/hu/id/ja/ ko/ru/ta/vi/zh-TW)漏了;README.tr.md 的表中没有编号,但行序同样按阅读顺序 重排。行内译文一字未动,只动编号与行序。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 2 个月前 | |
docs(ch4): 实验编号、目录名与交叉引用对齐新的阅读顺序 (#987) * docs(ch4): 实验编号、目录名与交叉引用全部对齐新的阅读顺序 第四章把「工具太多怎么办」移到三类工具之前后,实验的阅读顺序变了: 主动工具发现 4-5→4-1,感知 4-1→4-2,多模态 4-2→4-3,执行 4-3→4-4, 协作 4-4→4-5。本 PR 把正文之外的一切跟着改齐。 正文与文档 - book/chapter2.md 指向第四章的交叉引用改名为「工具太多怎么办」一节 - chapter4/README.md 配套项目表按新顺序重排重编号 - 五个实验目录各自的 README(中英双语段落) - docs/EXPERIMENT_STATUS.md、slides/lesson-12.md 代码与目录 - 运行器与测试文件改名:perception 的 run/test/test_real_evidence 4_1→4_2, execution 的 run 4_3→4_4,collaboration 的 run/test_run/validate 4_4→4_5 - validation 目录改名:discovery 4_5→4_1、perception 4_1→4_2、 execution 4_3→4_4、collaboration 4_4→4_5 - 源码内的路径常量、campaign 标识、Docker 容器名 exp4-3→exp4-4 顺带修一个真 bug:active-tool-discovery 的源码里编号停留在拆分第六章之前的 4-7,VALIDATION_ROOT 指向 experiment_4_7,而磁盘上的目录早已是 4_5——今天跑 一次会另建一个目录。现已统一到 4-1。 EXPERIMENT_LEDGER - ch4 ledger 重排重编号;原先残留的 4-5/4-6 两行(agent-with-event-trigger、 async-agent)早在拆分第六章时就搬走了,移出并新建 chapter6/EXPERIMENT_LEDGER.md 承接,编号改为 6-1/6-2 - 顶部新增说明:目录改名只动目录名,封存的 manifest 与 receipts 字节未变, 因此每个哈希仍可对其原文件复验;改名前写下的 receipts 仍引用旧路径与旧编号, 那是运行当时的真实记录,刻意不改写 两处既有的哈希失效,只标注不代填 - 4-1(主动工具发现)记录的 ce9d6eda… 在其 canonical 运行目录里对不上任何文件 - 搬去第六章的邮箱实验,manifest 的 experiment 字段被改标为 6-1 从而改变了文件, 但 ch4 ledger 与 chapter6/.../latest.json 都仍记着改标前的 3f689dfe…, 实际已是 5b8befd0… 两者都早于本次改动。直接写上新哈希等于把一次没有说明的改动洗白,因此保留原值 并在 ledger 中写明,留待重跑或明确记录的重算。 校验:源码与文档中已无旧编号残留;封存证据零修改(git 全为 R 改名); 四个仍然有效的 ch4 哈希与 6-2 的哈希改名后复验通过;改名后的运行器均通过 py_compile;图 fig4-1..4-4 按阅读顺序递增,无需改名,无孤儿文件。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe * docs(ch4): 12 个翻译版 README 的实验表同步重排重编号 上一个提交只改了 chapter4/README.md,11 个带编号的翻译版(ar/en/es/hu/id/ja/ ko/ru/ta/vi/zh-TW)漏了;README.tr.md 的表中没有编号,但行序同样按阅读顺序 重排。行内译文一字未动,只动编号与行序。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 2 个月前 | |
docs: 保留完整内容,重写中文实验 README 的教学流程 (#1145) * docs: teach from full experiment READMEs while preserving details * docs: keep existing anchors beside their teaching sections --------- Co-authored-by: Bojie Li <i@01.me> | 1 个月前 | |
docs(ch4): 实验编号、目录名与交叉引用对齐新的阅读顺序 (#987) * docs(ch4): 实验编号、目录名与交叉引用全部对齐新的阅读顺序 第四章把「工具太多怎么办」移到三类工具之前后,实验的阅读顺序变了: 主动工具发现 4-5→4-1,感知 4-1→4-2,多模态 4-2→4-3,执行 4-3→4-4, 协作 4-4→4-5。本 PR 把正文之外的一切跟着改齐。 正文与文档 - book/chapter2.md 指向第四章的交叉引用改名为「工具太多怎么办」一节 - chapter4/README.md 配套项目表按新顺序重排重编号 - 五个实验目录各自的 README(中英双语段落) - docs/EXPERIMENT_STATUS.md、slides/lesson-12.md 代码与目录 - 运行器与测试文件改名:perception 的 run/test/test_real_evidence 4_1→4_2, execution 的 run 4_3→4_4,collaboration 的 run/test_run/validate 4_4→4_5 - validation 目录改名:discovery 4_5→4_1、perception 4_1→4_2、 execution 4_3→4_4、collaboration 4_4→4_5 - 源码内的路径常量、campaign 标识、Docker 容器名 exp4-3→exp4-4 顺带修一个真 bug:active-tool-discovery 的源码里编号停留在拆分第六章之前的 4-7,VALIDATION_ROOT 指向 experiment_4_7,而磁盘上的目录早已是 4_5——今天跑 一次会另建一个目录。现已统一到 4-1。 EXPERIMENT_LEDGER - ch4 ledger 重排重编号;原先残留的 4-5/4-6 两行(agent-with-event-trigger、 async-agent)早在拆分第六章时就搬走了,移出并新建 chapter6/EXPERIMENT_LEDGER.md 承接,编号改为 6-1/6-2 - 顶部新增说明:目录改名只动目录名,封存的 manifest 与 receipts 字节未变, 因此每个哈希仍可对其原文件复验;改名前写下的 receipts 仍引用旧路径与旧编号, 那是运行当时的真实记录,刻意不改写 两处既有的哈希失效,只标注不代填 - 4-1(主动工具发现)记录的 ce9d6eda… 在其 canonical 运行目录里对不上任何文件 - 搬去第六章的邮箱实验,manifest 的 experiment 字段被改标为 6-1 从而改变了文件, 但 ch4 ledger 与 chapter6/.../latest.json 都仍记着改标前的 3f689dfe…, 实际已是 5b8befd0… 两者都早于本次改动。直接写上新哈希等于把一次没有说明的改动洗白,因此保留原值 并在 ledger 中写明,留待重跑或明确记录的重算。 校验:源码与文档中已无旧编号残留;封存证据零修改(git 全为 R 改名); 四个仍然有效的 ch4 哈希与 6-2 的哈希改名后复验通过;改名后的运行器均通过 py_compile;图 fig4-1..4-4 按阅读顺序递增,无需改名,无孤儿文件。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe * docs(ch4): 12 个翻译版 README 的实验表同步重排重编号 上一个提交只改了 chapter4/README.md,11 个带编号的翻译版(ar/en/es/hu/id/ja/ ko/ru/ta/vi/zh-TW)漏了;README.tr.md 的表中没有编号,但行序同样按阅读顺序 重排。行内译文一字未动,只动编号与行序。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 2 个月前 | |
docs(ch4): 实验编号、目录名与交叉引用对齐新的阅读顺序 (#987) * docs(ch4): 实验编号、目录名与交叉引用全部对齐新的阅读顺序 第四章把「工具太多怎么办」移到三类工具之前后,实验的阅读顺序变了: 主动工具发现 4-5→4-1,感知 4-1→4-2,多模态 4-2→4-3,执行 4-3→4-4, 协作 4-4→4-5。本 PR 把正文之外的一切跟着改齐。 正文与文档 - book/chapter2.md 指向第四章的交叉引用改名为「工具太多怎么办」一节 - chapter4/README.md 配套项目表按新顺序重排重编号 - 五个实验目录各自的 README(中英双语段落) - docs/EXPERIMENT_STATUS.md、slides/lesson-12.md 代码与目录 - 运行器与测试文件改名:perception 的 run/test/test_real_evidence 4_1→4_2, execution 的 run 4_3→4_4,collaboration 的 run/test_run/validate 4_4→4_5 - validation 目录改名:discovery 4_5→4_1、perception 4_1→4_2、 execution 4_3→4_4、collaboration 4_4→4_5 - 源码内的路径常量、campaign 标识、Docker 容器名 exp4-3→exp4-4 顺带修一个真 bug:active-tool-discovery 的源码里编号停留在拆分第六章之前的 4-7,VALIDATION_ROOT 指向 experiment_4_7,而磁盘上的目录早已是 4_5——今天跑 一次会另建一个目录。现已统一到 4-1。 EXPERIMENT_LEDGER - ch4 ledger 重排重编号;原先残留的 4-5/4-6 两行(agent-with-event-trigger、 async-agent)早在拆分第六章时就搬走了,移出并新建 chapter6/EXPERIMENT_LEDGER.md 承接,编号改为 6-1/6-2 - 顶部新增说明:目录改名只动目录名,封存的 manifest 与 receipts 字节未变, 因此每个哈希仍可对其原文件复验;改名前写下的 receipts 仍引用旧路径与旧编号, 那是运行当时的真实记录,刻意不改写 两处既有的哈希失效,只标注不代填 - 4-1(主动工具发现)记录的 ce9d6eda… 在其 canonical 运行目录里对不上任何文件 - 搬去第六章的邮箱实验,manifest 的 experiment 字段被改标为 6-1 从而改变了文件, 但 ch4 ledger 与 chapter6/.../latest.json 都仍记着改标前的 3f689dfe…, 实际已是 5b8befd0… 两者都早于本次改动。直接写上新哈希等于把一次没有说明的改动洗白,因此保留原值 并在 ledger 中写明,留待重跑或明确记录的重算。 校验:源码与文档中已无旧编号残留;封存证据零修改(git 全为 R 改名); 四个仍然有效的 ch4 哈希与 6-2 的哈希改名后复验通过;改名后的运行器均通过 py_compile;图 fig4-1..4-4 按阅读顺序递增,无需改名,无孤儿文件。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe * docs(ch4): 12 个翻译版 README 的实验表同步重排重编号 上一个提交只改了 chapter4/README.md,11 个带编号的翻译版(ar/en/es/hu/id/ja/ ko/ru/ta/vi/zh-TW)漏了;README.tr.md 的表中没有编号,但行序同样按阅读顺序 重排。行内译文一字未动,只动编号与行序。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 2 个月前 | |
docs(ch4): 实验编号、目录名与交叉引用对齐新的阅读顺序 (#987) * docs(ch4): 实验编号、目录名与交叉引用全部对齐新的阅读顺序 第四章把「工具太多怎么办」移到三类工具之前后,实验的阅读顺序变了: 主动工具发现 4-5→4-1,感知 4-1→4-2,多模态 4-2→4-3,执行 4-3→4-4, 协作 4-4→4-5。本 PR 把正文之外的一切跟着改齐。 正文与文档 - book/chapter2.md 指向第四章的交叉引用改名为「工具太多怎么办」一节 - chapter4/README.md 配套项目表按新顺序重排重编号 - 五个实验目录各自的 README(中英双语段落) - docs/EXPERIMENT_STATUS.md、slides/lesson-12.md 代码与目录 - 运行器与测试文件改名:perception 的 run/test/test_real_evidence 4_1→4_2, execution 的 run 4_3→4_4,collaboration 的 run/test_run/validate 4_4→4_5 - validation 目录改名:discovery 4_5→4_1、perception 4_1→4_2、 execution 4_3→4_4、collaboration 4_4→4_5 - 源码内的路径常量、campaign 标识、Docker 容器名 exp4-3→exp4-4 顺带修一个真 bug:active-tool-discovery 的源码里编号停留在拆分第六章之前的 4-7,VALIDATION_ROOT 指向 experiment_4_7,而磁盘上的目录早已是 4_5——今天跑 一次会另建一个目录。现已统一到 4-1。 EXPERIMENT_LEDGER - ch4 ledger 重排重编号;原先残留的 4-5/4-6 两行(agent-with-event-trigger、 async-agent)早在拆分第六章时就搬走了,移出并新建 chapter6/EXPERIMENT_LEDGER.md 承接,编号改为 6-1/6-2 - 顶部新增说明:目录改名只动目录名,封存的 manifest 与 receipts 字节未变, 因此每个哈希仍可对其原文件复验;改名前写下的 receipts 仍引用旧路径与旧编号, 那是运行当时的真实记录,刻意不改写 两处既有的哈希失效,只标注不代填 - 4-1(主动工具发现)记录的 ce9d6eda… 在其 canonical 运行目录里对不上任何文件 - 搬去第六章的邮箱实验,manifest 的 experiment 字段被改标为 6-1 从而改变了文件, 但 ch4 ledger 与 chapter6/.../latest.json 都仍记着改标前的 3f689dfe…, 实际已是 5b8befd0… 两者都早于本次改动。直接写上新哈希等于把一次没有说明的改动洗白,因此保留原值 并在 ledger 中写明,留待重跑或明确记录的重算。 校验:源码与文档中已无旧编号残留;封存证据零修改(git 全为 R 改名); 四个仍然有效的 ch4 哈希与 6-2 的哈希改名后复验通过;改名后的运行器均通过 py_compile;图 fig4-1..4-4 按阅读顺序递增,无需改名,无孤儿文件。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe * docs(ch4): 12 个翻译版 README 的实验表同步重排重编号 上一个提交只改了 chapter4/README.md,11 个带编号的翻译版(ar/en/es/hu/id/ja/ ko/ru/ta/vi/zh-TW)漏了;README.tr.md 的表中没有编号,但行序同样按阅读顺序 重排。行内译文一字未动,只动编号与行序。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 2 个月前 | |
docs(ch4): 实验编号、目录名与交叉引用对齐新的阅读顺序 (#987) * docs(ch4): 实验编号、目录名与交叉引用全部对齐新的阅读顺序 第四章把「工具太多怎么办」移到三类工具之前后,实验的阅读顺序变了: 主动工具发现 4-5→4-1,感知 4-1→4-2,多模态 4-2→4-3,执行 4-3→4-4, 协作 4-4→4-5。本 PR 把正文之外的一切跟着改齐。 正文与文档 - book/chapter2.md 指向第四章的交叉引用改名为「工具太多怎么办」一节 - chapter4/README.md 配套项目表按新顺序重排重编号 - 五个实验目录各自的 README(中英双语段落) - docs/EXPERIMENT_STATUS.md、slides/lesson-12.md 代码与目录 - 运行器与测试文件改名:perception 的 run/test/test_real_evidence 4_1→4_2, execution 的 run 4_3→4_4,collaboration 的 run/test_run/validate 4_4→4_5 - validation 目录改名:discovery 4_5→4_1、perception 4_1→4_2、 execution 4_3→4_4、collaboration 4_4→4_5 - 源码内的路径常量、campaign 标识、Docker 容器名 exp4-3→exp4-4 顺带修一个真 bug:active-tool-discovery 的源码里编号停留在拆分第六章之前的 4-7,VALIDATION_ROOT 指向 experiment_4_7,而磁盘上的目录早已是 4_5——今天跑 一次会另建一个目录。现已统一到 4-1。 EXPERIMENT_LEDGER - ch4 ledger 重排重编号;原先残留的 4-5/4-6 两行(agent-with-event-trigger、 async-agent)早在拆分第六章时就搬走了,移出并新建 chapter6/EXPERIMENT_LEDGER.md 承接,编号改为 6-1/6-2 - 顶部新增说明:目录改名只动目录名,封存的 manifest 与 receipts 字节未变, 因此每个哈希仍可对其原文件复验;改名前写下的 receipts 仍引用旧路径与旧编号, 那是运行当时的真实记录,刻意不改写 两处既有的哈希失效,只标注不代填 - 4-1(主动工具发现)记录的 ce9d6eda… 在其 canonical 运行目录里对不上任何文件 - 搬去第六章的邮箱实验,manifest 的 experiment 字段被改标为 6-1 从而改变了文件, 但 ch4 ledger 与 chapter6/.../latest.json 都仍记着改标前的 3f689dfe…, 实际已是 5b8befd0… 两者都早于本次改动。直接写上新哈希等于把一次没有说明的改动洗白,因此保留原值 并在 ledger 中写明,留待重跑或明确记录的重算。 校验:源码与文档中已无旧编号残留;封存证据零修改(git 全为 R 改名); 四个仍然有效的 ch4 哈希与 6-2 的哈希改名后复验通过;改名后的运行器均通过 py_compile;图 fig4-1..4-4 按阅读顺序递增,无需改名,无孤儿文件。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe * docs(ch4): 12 个翻译版 README 的实验表同步重排重编号 上一个提交只改了 chapter4/README.md,11 个带编号的翻译版(ar/en/es/hu/id/ja/ ko/ru/ta/vi/zh-TW)漏了;README.tr.md 的表中没有编号,但行序同样按阅读顺序 重排。行内译文一字未动,只动编号与行序。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 2 个月前 | |
docs(ch4): 实验编号、目录名与交叉引用对齐新的阅读顺序 (#987) * docs(ch4): 实验编号、目录名与交叉引用全部对齐新的阅读顺序 第四章把「工具太多怎么办」移到三类工具之前后,实验的阅读顺序变了: 主动工具发现 4-5→4-1,感知 4-1→4-2,多模态 4-2→4-3,执行 4-3→4-4, 协作 4-4→4-5。本 PR 把正文之外的一切跟着改齐。 正文与文档 - book/chapter2.md 指向第四章的交叉引用改名为「工具太多怎么办」一节 - chapter4/README.md 配套项目表按新顺序重排重编号 - 五个实验目录各自的 README(中英双语段落) - docs/EXPERIMENT_STATUS.md、slides/lesson-12.md 代码与目录 - 运行器与测试文件改名:perception 的 run/test/test_real_evidence 4_1→4_2, execution 的 run 4_3→4_4,collaboration 的 run/test_run/validate 4_4→4_5 - validation 目录改名:discovery 4_5→4_1、perception 4_1→4_2、 execution 4_3→4_4、collaboration 4_4→4_5 - 源码内的路径常量、campaign 标识、Docker 容器名 exp4-3→exp4-4 顺带修一个真 bug:active-tool-discovery 的源码里编号停留在拆分第六章之前的 4-7,VALIDATION_ROOT 指向 experiment_4_7,而磁盘上的目录早已是 4_5——今天跑 一次会另建一个目录。现已统一到 4-1。 EXPERIMENT_LEDGER - ch4 ledger 重排重编号;原先残留的 4-5/4-6 两行(agent-with-event-trigger、 async-agent)早在拆分第六章时就搬走了,移出并新建 chapter6/EXPERIMENT_LEDGER.md 承接,编号改为 6-1/6-2 - 顶部新增说明:目录改名只动目录名,封存的 manifest 与 receipts 字节未变, 因此每个哈希仍可对其原文件复验;改名前写下的 receipts 仍引用旧路径与旧编号, 那是运行当时的真实记录,刻意不改写 两处既有的哈希失效,只标注不代填 - 4-1(主动工具发现)记录的 ce9d6eda… 在其 canonical 运行目录里对不上任何文件 - 搬去第六章的邮箱实验,manifest 的 experiment 字段被改标为 6-1 从而改变了文件, 但 ch4 ledger 与 chapter6/.../latest.json 都仍记着改标前的 3f689dfe…, 实际已是 5b8befd0… 两者都早于本次改动。直接写上新哈希等于把一次没有说明的改动洗白,因此保留原值 并在 ledger 中写明,留待重跑或明确记录的重算。 校验:源码与文档中已无旧编号残留;封存证据零修改(git 全为 R 改名); 四个仍然有效的 ch4 哈希与 6-2 的哈希改名后复验通过;改名后的运行器均通过 py_compile;图 fig4-1..4-4 按阅读顺序递增,无需改名,无孤儿文件。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe * docs(ch4): 12 个翻译版 README 的实验表同步重排重编号 上一个提交只改了 chapter4/README.md,11 个带编号的翻译版(ar/en/es/hu/id/ja/ ko/ru/ta/vi/zh-TW)漏了;README.tr.md 的表中没有编号,但行序同样按阅读顺序 重排。行内译文一字未动,只动编号与行序。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01B1Zu35aad26ZyQbzyAvBJe --------- Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com> | 2 个月前 | |
配套代码目录与索引对齐全书十章结构 - 目录重命名 week1..week9 → chapter1..chapter10,与全书章节一一对应 - 跨章归位: · 用户记忆(user-memory、user-memory-evaluation)从「上下文工程」移入第3章「用户记忆和知识库」 · 新建第8章「Agent 的自我进化」,纳入 gaia-experience、browser-use-rpa(原 week3) 与 prompt-distillation、learn-from-observation、feedback-guided-sampling(原 week7) · 多模态→第9章、多 Agent→第10章,修正原 week 编号自第8章起的错位 - README 重写为按章节的索引:更新全部 chapterN/ 路径、新增第8章、 学习路径与难度分级改为章节制 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> | 3 个月前 |
第 4 章 · 工具
本章把工具看作模型与环境之间的接口。感知提供观察,执行改变状态,协作让任务在不同参与者之间继续。工具数量增加后,还需要解决发现与选择。
第一次阅读的顺序
读懂一个完整例子后,再查阅下面的全部项目与配置。比较实验时,把输入、模型、运行条件和结果放在一起记录;遇到历史输出,先确认它对应的版本与任务范围。
工具是 Agent 的双手:MCP 协议,感知/执行/协作三类工具,以及工具规模化后的主动发现
如何阅读实验
正文 skeleton 只保留工具安全门、事件循环和主动发现的控制关系;实现和真实门禁在以下项目:
- Starter:从 execution-tools 的
python cli.py demo离线调用开始,先找 schema 校验、风险分类和结果验证; - Builder:阅读 async-agent 的 AgentRuntime._dispatcher、_handle_interrupt 与并行工具任务,再看 active-tool-discovery 的检索/追加 schema 路径;
- Maintainer:检查权限策略、沙盒清理、取消确认、原始 provider 回执和 EXPERIMENT_LEDGER.md。
首次可跳过 MCP transport、Web UI 和 provider 适配器;先运行再按上述入口读核心循环。
配套项目
| 编号 | 项目 | 类型 | 一句话说明 |
|---|---|---|---|
| 4-1 | active-tool-discovery | ✅ | Qwen3-4B 真实对照中两组均 3/3 完成、准确率均 100%(未证明准确率提升);主动发现的 schema 暴露和实测用时显著更低,但轨迹仍含无关调用与过早结束 |
| 4-2 | perception-tools | ✅ | 感知工具 MCP:网络搜索、多模态理解、文件系统、公共数据源(DuckDuckGo/Open-Meteo/Yahoo/OpenStreetMap),大多无需 API Key |
| 4-3 | multimodal-agent | ✅ | 对比原生多模态、提取为文本、工具化分析三种策略在保真度、成本和灵活性上的权衡 |
| 4-4 | execution-tools | ✅ | 执行工具 MCP:20 次正式调用已通过 13/15 门禁,含 GitHub PR、Xvfb 桌面 Computer Use 与 KVM Android 实机操作;仅真实日历/邮件授权仍阻塞 |
| 4-5 | collaboration-tools | ✅ | 协作工具 MCP:浏览器自动化、HITL、Email/Telegram/Slack/Discord 通知、定时器,支持管理员审批 |
| — | active-tool-selection | ✅ | 让 Agent 根据任务需求主动选择最合适的工具组合,而非被动接受预定义工具集 |
此外,
chapter4/docker-compose.yml与chapter4/DOCKER_DEPLOYMENT.md提供了将上述 MCP 工具服务器容器化部署的参考方案。
正式实验验收
真实运行、原始收据、哈希、逐项门禁与外部凭据阻塞项统一记录在 EXPERIMENT_LEDGER.md。代码“可独立运行”不等于本机当前凭据已满足论文实验:4-1 至 4-5 的可执行核心均已通过真实运行,但授权私有数据、外部通知或真实邮箱门禁仍按证据诚实标为 blocked;不会用 mock 结果代替。
项目类型说明
| 图标 | 类型 | 含义 |
|---|---|---|
| ✅ | 可独立运行 | 本仓库自带完整代码,配置好 API Key 即可运行 |
| 📖 | 复现指南 | 依赖需自行 git clone 的外部仓库(训练框架、评测基准等) |
| 🚧 | 设计文档 | 仅包含架构与实现方案,可运行代码仍在完善中 |