ClaudeMap

clawd-conduit

把全部 15 个 Claude Code hook 事件接进 Clawd on Desk 桌面宠物,权限请求变成可等待的桌面卡片。

插件与代理hooksdesktopnotificationsclaude-codemacos

clawd-conduit 是套在 Clawd on Desk 桌面宠物外面的接线层,让 Claude Code 会话有一个看得见的「身体」。它把 14 个生命周期事件作为异步 command hook(5 秒超时、绝不阻塞会话)转发给 Clawd 自带的 clawd-hook.js,再把最要紧的一个事件——PermissionRequest——单独走阻塞式 HTTP hook 直连 Clawd 本地端口、等待 600 秒:权限请求以桌面卡片弹出,Cmd+Shift+Y 允许、Cmd+Shift+N 拒绝,卡片永不自动消失,「它三分钟前就停下来等我点允许」的空转就此归零。每个事件都映射到宠物状态(取自 Clawd 自己的 EVENT_TO_STATE 表):子代理并发时抛接球、上下文压缩时扫地、工具失败时冒烟。幂等的 install.sh 带时间戳备份 settings.json、按事件合并 hook 且保留你原有的、补全 node 与应用的绝对路径(hook 跑在非登录 shell 里,裸 node 会静默失败)、回写后校验 JSON,可重复执行——clawd-hook.js 的出现次数恒为 14。

它做什么

  • 15 个 hook 事件全接通:14 个走异步 command hook(5 秒超时),PermissionRequest 单独走唯一的阻塞通道(HTTP、等 600 秒)
  • 权限卡片直达桌面:Cmd+Shift+Y / Cmd+Shift+N 不用切窗口,自动关闭禁用(permissionBubbleAutoCloseSeconds: 0),rm -rf 自动加「危险操作」警示
  • 事件到宠物状态的映射取自 Clawd 自己的 EVENT_TO_STATE——SubagentStart 抛接球、PreCompact 扫地、PostToolUseFailure 冒烟、SessionEnd 睡觉
  • 幂等工具链:带时间戳备份 settings.json、按事件合并且保留你的 hook、为非登录 shell 解析绝对路径、JSON 校验、重跑只替换不追加

什么时候用

跑长会话、人却离开终端的 macOS 用户:宠物一眼告诉你会话在干活、卡在等确认、还是出了错;权限卡片免去回终端点允许的往返。

如何上手

# 1. 先装 Clawd on Desk 本体(不随本仓库分发):
#    https://github.com/rullerzhou-afk/clawd-on-desk/releases
git clone https://github.com/ssssssanjiu/clawd-conduit.git
cd clawd-conduit && bash install.sh

# 2. 验证:
python3 -c "import json;h=json.load(open('$HOME/.claude/settings.json'))['hooks'];print(len([k for k,v in h.items() if 'clawd' in json.dumps(v).lower() or '23333' in json.dumps(v)]),'events')"
lsof -nP -iTCP:23333 -sTCP:LISTEN

# 3. 开一个新会话——hook 只在会话启动时加载

注意事项

仅限 macOS。依赖单独安装的 Clawd on Desk 应用——宠物和它在 23333 端口的本地服务就是全部显示层。异步 hook 的失败是静默的:宠物不动时,先手动跑一条 hook 看报错,再确认 Clawd 在运行(pgrep -f "Clawd on Desk"),然后开新会话——hook 永远不热加载。用 --dangerously-skip-permissions 或动作已在白名单时不会弹权限卡——这是 Claude Code 的行为,不是 bug。参数取舍(权限走阻塞通道、卡片不自动消失)来自作者三个月的日常使用。MIT。

代码仓库

ssssssanjiu/clawd-conduit

收录日期

地图上的相关资源

  • CometixCode

    插件 / 代理

    非官方的 Claude Code 终端 UI 复刻:用 Rust 按 1:1 逐文件移植到 iocraft 这套 React 风格 TUI 框架上。

    • terminal-ui
    • rust
    • reimplementation
    • unofficial
  • Abide

    插件 / 代理

    把 AGENTS.md、CLAUDE.md 里的自然语言规则变成钩子级强制:每次编辑都被评审,违规当场修复。

    • hooks
    • code-review
    • rules
    • agents-md
  • fast-jev-compaction

    插件 / 代理

    用 Jev 评分式修剪取代有损压缩摘要的 Claude Code 插件:过期的工具调用被丢弃,保留下来的内容原样不动。

    • plugin
    • context-management
    • compaction
    • function-hooks