cdxiaodong/dsh-island

cdxiaodong★ 0SwiftLast synced: 2026-08-16

Open on GitHub

把 DeepSeek Harness(DSH) agent 实时状态桥接到 CodeIsland 刘海面板 — sessions/tools/approvals on the Dynamic Island

README excerpt

dsh-island 自带 macOS 菜单栏灵动岛 的 DeepSeek Harness(DSH)插件 —— 插件一启动,DSH 的会话、工具调用、审批直接出现在你的 顶部菜单栏 ,点击展开实时面板,无需安装任何第三方应用。 这是什么 开发 AI agent 时,最常见的烦恼是「切窗口看它到底在干嘛、是不是卡在审批」。 dsh-island 把 DSH 的实时状态带进 macOS 菜单栏 : - 插件 apply 时 自动拉起原生 Swift 面板 ( bin/dsh-island-panel ,NSStatusItem + NSPopover + SwiftUI,借鉴 CodeIsland 的实现) - 菜单栏按钮文案 随状态动态变化 : 🐋 DSH (空闲)→ 🔧 运行中 / 🔧 (执行中)→ 🛡️ 需要授权 (审批中) - 点击菜单栏图标 → 弹出毛玻璃灵动岛面板:会话、工具调用、事件流 - 审批请求直接在面板上点「允许 / 拒绝」,决策回写 DSH 无需中间层 :不依赖 CodeIsland 应用、不写 hook 配置、不用浏览器。装插件即用。 功能 - 自动拉起 :插件加载即常驻菜单栏(已运行则不重复启动) - 动态菜单栏 :按钮文案随状态变(空闲/运行中/等待授权) - 会话状态 : SessionStart / SessionEnd 跟随 DSH 会话生命周期 - 工具调用 : PreToolUse / PostToolUse / PostToolUseFailure 实时展示正在执行的工具 - 面板审批 : approval/request → 面板出现「需要授权」卡,点「允许 / 拒绝」直接回写 DSH - 子代理 : SubagentStart / SubagentStop - 状态变化 : agent/status → 面板状态灯与提示 - 零侵入 :不修改 DSH 配置、不拦截工具决策( next() 总是放行) 事件映射 DSH 事件 面板事件 方向 session/created SessionStart 通知 session/disposed SessionEnd 通知 tools/pre-execute PreToolUse 通知 tools/post-execute PostToolUse / PostToolUseFailure 通知 approval/request PermissionRequest (阻塞) 双向 · 面板批准/拒绝回写 subagent/start / subagent/end SubagentStart / Stop 通知 agent/status Notification 通知 事件发送对 DSH 是 旁路观察 : PreToolUse / PostToolUse 监听器总是调用 ne…

View full README on GitHub →
Agentscodeislanddeepseek-harnessdshdsh-plugintuiagent

Category