附录:核心服务速查表#
本附录列出 dsh 运行时上下文中所有核心 ctx.* 服务的快速参考,方便插件开发时查阅。基于源码自动生成的能力图整理。
角色说明#
seam:可替换能力接口,可以切换不同 Provider 实现
core:核心主干服务,通常不建议替换
bundle:由 Bundle 提供的具体实现,不是抽象接口
服务速查表#
ctx 键 |
角色 |
职责 |
内置实现 |
|---|---|---|---|
|
core |
仅追加的 SessionEvent 日志和内存存储 |
无(内置) |
|
core |
提示词片段与工具 schema 的组装注册 |
无(内置) |
|
core |
作用域化的工具注册表和带把关的执行流水线 |
无(内置) |
|
core |
Agent 接口、活跃 Agent 注册表和 |
无(内置) |
|
bundle |
默认的 ReactLoop 循环驱动器 |
|
|
seam |
LLM 消息流式接口、适配器注册 |
|
|
core |
按会话隔离的 Token 测量折叠区 |
无(内置) |
|
core |
压缩前工具结果表层替换 |
无(内置) |
|
core |
运行时不变量断言注册表 |
无(内置) |
|
seam |
会话持久化后端 |
|
|
seam |
会话读取、追踪、过滤、搜索 |
|
|
seam |
会话标题生成 |
|
|
seam |
会话遥测脱敏上报 |
|
|
core |
状态驱动折叠单元注册 |
无(内置) |
|
core |
投影检查点持久缓存 |
无(内置) |
|
core |
跨会话快照投影 |
无(内置) |
|
seam |
二进制附件持久存储 |
|
|
seam |
凭据管理与脱敏存储 |
|
|
seam |
用户分层设置 |
|
|
seam |
非会话 KV 存储 |
|
|
core |
领域类型化持久状态 |
无(内置) |
|
core |
逐消息反馈(不进会话历史) |
无(内置) |
|
core |
Workspace 实体注册表 |
无(内置) |
|
seam |
文件系统抽象 |
|
|
seam |
子进程 spawn、进程树、stdio 管理 |
|
|
seam |
Shell 命令执行(bash/pwsh) |
|
|
core |
DSH_* 环境变量管理 |
无(内置) |
|
seam |
持久化 PTY 终端会话 |
|
|
seam |
进程沙箱包装 |
|
|
core |
沙箱默认模式和根目录配置 |
无(内置) |
|
seam |
权限审批请求分发 |
|
|
core |
用户权限预设组合 |
无(内置) |
|
seam |
模型代码异步执行 |
|
|
seam |
子 Agent 委派与延续 |
|
|
seam |
网页搜索和 HTTP 抓取 |
|
|
seam |
后台任务注册与管理 |
|
|
seam |
Skill 技能目录提供方 |
|
|
seam |
语言服务器协议导航 |
|
|
seam |
上下文压缩 |
|
|
core |
同会话目标状态折叠 |
无(内置) |
|
core |
计划协作状态 |
无(内置) |
|
core |
Agent Preset 配置发现 |
无(内置) |
|
core |
默认模型选择 |
无(内置) |
|
core |
用户斜杠命令注册 |
无(内置) |
|
seam |
人类问答交互(tool-ask-user) |
UI 提供方 |
|
seam |
大文本溢出存储 |
|
|
seam |
工作目录选择交互 |
|
|
core |
HTTP 路由注册 |
无(内置) |
|
core |
客户端插件图 HMR |
无(内置) |
|
seam |
工作流脚本引擎 |
|
|
core |
E2B 远程沙箱共享句柄 |
无(内置) |
|
core |
Host 浏览器 API 网关 |
无(内置) |
|
core |
动态 Cordis 插件 VM 沙箱运行器 |
无(内置) |
|
core |
运行时 Cordis 自省查询 |
无(内置) |
|
core |
运行时 zod 类型注册表 |
无(内置) |
|
core |
Typert Host RPC 网关 |
无(内置) |
常用扩展点速查#
你想做什么 |
用哪个服务/事件 |
|---|---|
添加一个面向模型的工具 |
|
添加一个新的模型提供商 |
|
拦截/修改工具执行 |
监听 |
拦截/修改模型请求 |
监听 |
在模型看到内容前注入指令 |
监听 |
判断 Turn 是否结束 |
监听 |
添加一个自定义 Shell 后端 |
注册 |
添加一个自定义文件系统后端 |
注册 |
添加一个子 Agent 委派目标 |
注册 |
添加一个斜杠命令 |
|
添加一个后台任务类型 |
|
读写结构化持久状态 |
|
注入上下文到下一次请求 |
|
Fork 一个会话 |
|
限定注册只在某个 Agent 生效 |
使用该 Agent 的 |
事件分发模式速查#
模式 |
方法 |
是否 await |
有返回值 |
用途 |
|---|---|---|---|---|
通知 |
|
否 |
否 |
日志、指标、纯观察 |
瀑布中间件 |
|
否 |
是 |
拦截、改写、短路、权限检查 |
并行扇出 |
|
是 |
否 |
多个独立后处理、遥测上报 |
串行执行 |
|
是 |
是 |
校验链、投票聚合(如 turn-stopping) |
同步早退 |
|
否 |
是 |
第一个返回非 null 的监听器获胜 |