生产力
canvas avatar

canvas

Claude Code 的交互式终端 UI 工具包。可在 tmux 窗格中生成并控制日历、文档及航班预订界面。

简介

Canvas 工具包使 Claude 能够利用终端用户界面 (TUI) 组件提供丰富的交互体验。通过利用 tmux 的分割窗格,此技能允许用户在一个窗格中保持对话,同时在另一个窗格中与动态数据进行交互,例如日历、Markdown 文档或航班搜索结果。它促进了复杂的工作流程,特别是在视觉选择比纯文本交互更有效率的情况下,例如从多人的重叠时间表中挑选会议时间或编辑文档的特定部分。系统使用通过 Unix 域套接字运行的稳健 IPC(进程间通信)协议,以确保模型与交互式画布之间的同步。

  • 实时交互组件:日历会议选择器、Markdown 编辑器以及航班预订图表。

  • 与 tmux 的无缝集成,实现并排的终端工作流程。

  • 基于 Unix 域套接字的 IPC,支持 Claude 与 TUI 之间的双向通信。

  • 支持自定义场景(例如仅显示模式或交互式选择模式)。

  • 采用 Bun、React 和 Ink 构建,实现高效的终端渲染。

  • 在生成画布之前,请确保 tmux 会话处于活动状态,以防止显示失败。

  • 需要支持鼠标操作的终端,以处理选择和导航等交互元素。

  • 此插件主要为 Claude Code 设计,并可通过标准市场命令进行集成。

  • 输入配置遵循基于 JSON 的架构,允许对画布状态(如事件调度或文档文本)进行动态更新。

  • 处理包含 'ready'、'selected'、'cancelled' 及 'error' 在内的 IPC 信号,以管理用户交互的生命周期。

仓库统计

Star 数
1,479
Fork 数
142
Open Issue 数
6
主要语言
TypeScript
默认分支
main
同步状态
空闲
最近同步时间
2026年4月30日 16:38
在 GitHub 查看