跳到正文

词汇

源码里的真名字

小孩版和源码版对照。点词条右边的章节,跳回故事发生的地方。

25

  • Plugin

    插件 / 积木

    去这一章

    一块可以卡住、也可以拔掉的积木。拔掉后痕迹一起消失。

    实现 Service 的函数或类。函数插件导出 inject + apply(ctx);类插件在构造里 super(ctx, name) 立刻注册。

  • Cordis

    底板

    去这一章

    乐高底板。不管积木长什么样,只管卡得住、拔得掉、大家能找到对方。

    时空可组合的插件框架。贡献 Service、类型化事件、可逆 Effect。卸载 fiber 时注册自动撤销。

  • Context / ctx

    公共置物架

    去这一章

    谁把大脑放到架子上,别人就拿 ctx.llm,不必认识那位老师。

    服务仓库。稳定键如 ctx.tools、ctx.llm、ctx.sessions。依赖服务名而不是实现。

  • inject(Cordis)

    等待朋友到齐

    去这一章

    你说『我需要工具柜』,底板等工具柜出现再让你上场。

    插件的服务依赖声明。加载顺序由服务需求表达,而不是手工 boot 排序。和 agent.inject() 不是一回事。

  • inject()(Agent)

    从门缝塞纸条

    去这一章

    不敲门。纸条进 next-step,等下一次领取才被看见。

    Agent.inject() 把消息放入 inbox.next-step 且不 wakeDriver。运行时上下文、技能正文、时间常用这条路。

  • Fiber

    这一挂积木的寿命

    去这一章

    一块积木卡住的那段时间。拔掉时,它挂过的东西一起收走。

    Cordis 的插件实例生命周期。fiber 卸载时 ctx.effect() / ctx.on() 登记全部 unwind。

  • Effect

    可逆的登记

    去这一章

    你在架子上放的东西、你听过的喊声,拔掉积木就会消失。

    Registrations via ctx.effect() 或 ctx.on()。没有需要打补丁的特权内核。

  • isolate

    教室自己的水龙头

    去这一章

    这间教室的饮水机不是大厅那台。同名服务可以有另一份。

    isolate(name, label) 让子上下文拥有另一份同名服务。agent preset 用它给每个教室准备自己的能力树。

  • scope

    储物柜

    去这一章

    每人一个柜子。不是围栏,只是别把外套挂错钩。

    dsh-scope:按 agent 划分注册层。scope 不是沙箱。独立水龙头是 isolate。

  • Profile

    玩具盒

    去这一章

    出门前选盒子:web 带窗户,headless 做完就回家。

    存放在 Harness home 的具名组装。列出 bundles、树外插件和用户的 cordis.patch.yml。web / headless 作为模板随发行版交付。

  • Bundle

    一袋现成积木

    去这一章

    最大那袋叫 dsh-base。带窗户的袋子叫 dsh-web-app。

    Cordis 配置项及其挂载代码的分发格式。dsh.bundle 指向 patch 文件。插入的内容始终可被上层 patch。

  • Patch

    便条 / 贴纸

    去这一章

    按名字找到那一行,整行换掉。要留的字段必须再写一遍。

    applyEntryPatches:按 id 整行替换 config,或 insert 新行。不做深合并。后写的赢。

  • Seam

    可换接头

    去这一章

    插座、插头、台灯要凑齐。只有插座不算能力。

    Service Definition + Provider + Consumer。扩展插件依赖定义,绝不依赖具体提供方。

  • Execution world

    执行世界

    去这一章

    手和脚必须去同一间房。搬家时眼镜也一起走。

    fs 与 subprocess 共享执行世界。指向 E2B 时 Bash、PTY、LSP 一起走,无需提供方专用 fork。

  • Sandbox

    围栏 / 婴儿门

    去这一章

    不是搬家,是在这间屋里装门。禁止静默放行。

    ctx.sandbox.confine 包装本机 argv。远程沙箱是另一对 fs/subprocess 提供方,不是 sandbox 后端。

  • Session

    日记本

    去这一章

    发生过的事都写在只能往后翻的本子上。

    仅追加的 SessionEvent 日志与内存存储。ctx.sessions。fork / resume / 检索都派生自它。

  • Model-visible means logged

    模型可见即已记录

    去这一章

    老师看见的作文,一定已经抄在日记里。不许偷偷改。

    deriveMessages() 从 surface 投影模型历史。抵达模型请求的一切必须能从日志重建,由运行时不变量断言。

  • Turn / Step

    一轮作业 / 一步

    去这一章

    一轮作业里可以想好几步。一步是一次想再加上它调用的工具。

    Turn 在领取首条输入前打开,不再欠工作时关闭。Step = 一次模型请求 + 它调用的工具。被拒绝的首次领取仍关闭一个不含步骤的持久轮次。

  • Inbox

    桌上的纸条

    去这一章

    followup 按门铃,steer 隔门喊,inject 塞门缝。

    followup → next-turn 并唤醒;steer → next-step 并唤醒;inject → next-step 不唤醒。Claim 是纯删除。

  • Waterfall

    洋葱传纸

    去这一章

    必须喊 next() 把纸传下去,否则就是你做主。

    around-middleware:listener 收 (...args, next)。agent/pre-step、agent/request、llm/stream、tools/* 都是 waterfall。

  • emit / parallel / serial

    广播 / 全班一起 / 排队

    去这一章

    广播不能否决;全班同时做;排队发言没有 next()。

    emit 不等待;parallel 等待全部;serial 顺序等待且有返回值。turn-stopping 是 serial。

  • Host / Client

    屋子 / 窗户

    去这一章

    屋子在 Node 里跑。窗户在浏览器里再拼一座小 Cordis 城。

    Host:webserver / apiproxy。Client:另起 Loader,立即挂载 immediately 行,DOM 交给 ctx.uiRenderer。Native 能力仅 loopback。

  • Slot

    毡板上的洞

    去这一章

    聊天框、侧栏、设置都是往洞里按图片。

    SlotMap 组合 API。ConversationNodeDefinition + keyed renderer 增加聊天节点。

  • Agent preset

    机器人套装

    去这一章

    同一进程里,不同教室可以穿不同衣服。

    按会话组装 agent + persona。服务行需要 isolate realm。ctx.agentPresets。

  • compaction / spill

    前情提要 / 另写一张纸

    去这一章

    日记太厚就摘要;一句话太长就抄到外面,本子上只留索引。

    compaction 由 token-meter 驱动摘要;spill 把超长工具结果外溢。replace 会撕掉被阴影罩住的节点。