源码实践导航

本部分把前面的知识转换成可观察、可验证的任务。每项实践都包含目标、需要阅读的代码、预期观察、完成条件、验证方法和复盘问题。

前置知识

  • 至少完成“一次 Turn”主线;
  • 已按 DeepSeek 第一次请求 建立隔离配置;
  • 知道如何在 IDE 中给 Python 函数打断点;
  • 所有实验都使用独立 workspace 和测试 Session,不使用重要聊天历史。

实践分级

难度实践是否修改 nanobot 源码
1跟踪一个无工具 Turn否
1跟踪 Tool Call 与 Session否
2复现流式、取消与重试否
2编写一个 Workspace Skill不改源码;写实验 workspace
3实现一个只读 Tool 插件不改 core;安装隔离 plugin
4综合扩展设计评审先设计;实现可选

学习循环

flowchart TD
    A["先写下预测"] --> B["运行或调试"]
    B --> C["记录实际对象与状态"]
    C --> D["回到源码解释差异"]
    D --> E["用测试复现"]
    E --> F["写一段复盘"]
    F --> A

关键是先预测。若直接单步穿过几千行代码,很容易只记住“我看过”,却无法形成模型。

统一实验记录模板

每个实践建议新建一段笔记:

## 我的预测
 
## 实际调用链
 
## 关键对象快照
 
## 与预测不一致之处
 
## 源码证据
 
## 测试证据
 
## 仍不确定

“仍不确定”不是失败。它能区分代码已证明的事实和下一步需要验证的问题。

安全规则

  • 不在调试器变量窗口截图或复制 API key;
  • 不用真实重要 workspace 做写入/取消实验;
  • 不用支付、发信、删除、发布等外部副作用测试 Tool;
  • 修改练习使用独立 plugin 目录或分支;
  • 每次只改变一个变量;
  • 真实模型 smoke test 不能替代确定性测试。

下一篇:跟踪一个无工具 Turn