DAG总览 / 组目录 / G08 上下文注入

dsh-tmux-context · @deepseek-ai/dsh-tmux-context

Layer 5G08L3 其余
目录:ACP 协议API 网关与控制器附件启动与插件管理客户端运行时客户端 UI 包上下文压缩上下文注入核心运行时凭据与授权交付物文档处理实验特性宿主扩展反馈通道文件系统目标与计划工具守卫Hooks 扩展宿主服务交互命令作业调度LLM 适配LSP 集成MCP 协议规划模式Agent 预设代码执行运行时运行时诊断沙箱定时调度SDK 与协议会话核心会话检索设置Shell 执行技能溢出存储SSH 远程执行存储子代理子进程终端待办类型契约框架 vendorWeb 访问Webhook工作流工作区
依赖链 · 上游(该插件依赖的前驱):
依赖链 · 下游(依赖该插件的节点):
无下游(叶子/被消费端)
同一拓扑层(Layer 5,层次遍历层序):
↑ Layer 4(13 插件)Layer 5↓ Layer 6(18 插件)

插件信息

包名@deepseek-ai/dsh-tmux-context
分组G08 · 上下文注入
拓扑层Layer 5(层次遍历:被依赖方先于依赖方)
源码路径packages/context/tmux-context
来源层L3 其余插件(独立于 bundle 装配的扩展/变体/示例)

① 实现逻辑

可选的 tmux 位置上下文:在 turn 的首个请求(step===1)时经 ctx.shell 执行一次 tmux display-message,并通过比对 pane 的 pane_tty 与本进程控制终端来确认真正运行于该 pane(避免继承 $TMUX_PANE 的假阳),失败/不在 tmux/无 shell 时静默 no-op(src/index.ts:120-168、src/index.ts:246-274)。渲染出的读数含稳定的 location 状态块;注册 tmuxContext 投影记录上次注入状态,仅在状态变化且超过可选 refreshIntervalMs 时才重新注入(src/index.ts:175-186、src/index.ts:230-263)。

内部结构动态 DAG(深色主题:橙色=上游依赖 · 绿色=下游依赖 · 棕色=外部seam · 蓝=本插件)
本插件 上游依赖 下游依赖 外部 seam

② 注册/提供(provides)

③ 依赖(depends_on · 上游前驱)

dsh-agentE1+E2
在 agent 步前注入 tmux 位置上下文,并读取 turn/step 位置
src/index.ts:24 import type PreStepDecision + src/index.ts:246 ctx.on('agent/pre-step', {prepend:true})
dsh-llmE1
构造带来源标记的 tmux 位置快照 user 消息,并复用消息来源合并类型
src/index.ts:27 import createUserMessage + src/index.ts:28 import type ContextFormed
dsh-session-projectionE1+E2
注册并读取 tmuxContext 投影以判断位置是否变化、是否超过刷新间隔
src/index.ts:25 type-only import + src/index.ts:44 inject ['agents','sessionProjections'] + src/index.ts:230 ctx.sessionProjections.register + src/index.ts:254 ctx.sessionProjections.stateOf

④ 被依赖(dependents · 下游消费者)

无下游(叶子/被消费端)