XFixes 监听 X11 剪贴板所有者变化,不会使用定时器反复读取剪贴板。
本地运行 · 事件驱动 · 兼容性桥接
让 WSL 中的 Codex CLI 正确粘贴 Windows 截图。
解决令人困扰的 no image on clipboard 错误,无需轮询、云服务或永久保存剪贴板文件。
MIT 许可证纯本地处理空闲不轮询
$ codex 修复前 Failed to paste image: no image on clipboard 修复后 › [Image #1]▋
真正的问题:格式断层
Codex 支持图片,出问题的是剪贴板传递链路。
在受影响的 WSLg 环境中,Windows 截图以 BMP 暴露给 Wayland,而 Codex 能从 X11 剪贴板读取 PNG。桥接器在本地安全地转换并重新发布图片。
工作原理
跨越三个边界的小型桥接器。
服务读取 Wayland image/bmp,经过大小限制检查后转换成 PNG32。
xclip 持有 X11 image/png,Codex 即可通过 Ctrl+V 附加图片。
Windows→WSLg→BMP→PNG32→Codex
安装
三组命令,随后验证。
适用于 Windows 11、WSL2/WSLg、启用了 systemd 的 Ubuntu,以及原生图片粘贴失败的 Codex CLI 会话。
- 验证 WSLg、systemd、X11 和 XFixes
- 原子化安装,失败自动回滚
- 作为经过限制的用户服务运行
WSL · BASH
sudo apt update
sudo apt install wl-clipboard imagemagick xclip
git clone https://github.com/shangxiang0907/\
codex-wsl-clipboard-bridge.git
cd codex-wsl-clipboard-bridge
bash ./install.sh
验证
确认修复有效后再开始使用。
bash ./verify.sh在 Windows 中复制截图,聚焦 WSL 中的 Codex CLI 输入框,然后按 Ctrl + V。Codex 应显示 [Image #1]。
仅在需要时使用
这是针对性兼容方案,不是原生功能的替代品。
未来 Codex 或 WSLg 版本可能已经修复底层兼容问题。
当前实现针对实际观察到的 WSLg 截图格式。
桥接器依赖 Wayland 以及 WSLg 的 X11 兼容链路。
图片保留在本地私有运行时目录中,并在处理后删除。
仍然遇到错误?