关于 opentui-design
面向使用 OpenTUI 和 SolidJS 构建及排查 CLI 界面的参考技能,涵盖组件、输入与鼠标行为、导航、状态、测试和性能。
主要功能
- 01OpenTUI 组件模式
- 02键盘输入处理
- 03鼠标事件指南
- 04多屏幕导航
- 05SolidJS 状态与 Hooks
- 06布局、测试与性能优化
适用场景
- 01构建 CLI 屏幕和组件
- 02排查输入行为问题
- 03添加屏幕导航
- 04提升 CLI 响应性能
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ akiojin/ skills --skill opentui-design安装后在 Claude Code 中输入/opentui-design确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/component-patterns.mdhooks-guide.mdinput-handling.mdmouse-handling.mdmulti-screen-navigation.mdopentui-gotchas.mdperformance-optimization.mdresponsive-layout.mdstate-management.mdtesting-patterns.md详细介绍
OpenTUI 设计技能
描述
用于使用 OpenTUI 和 SolidJS 设计和实现 CLI 应用程序的综合工具包。
适用场景
- 使用 OpenTUI 构建新的 CLI 屏幕或组件
- 调试输入处理问题
- 实现屏幕导航
- 处理鼠标事件及其限制
- 优化 CLI 性能
关键参考资料
input-handling.md- 按键输入模式和阻止事件传播mouse-handling.md- 鼠标事件和 Selection API 的限制opentui-gotchas.md- 常见问题和解决方法component-patterns.md- 组件结构和组合multi-screen-navigation.md- 屏幕切换模式state-management.md- SolidJS 状态模式hooks-guide.md- OpenTUI hooks 参考performance-optimization.md- 性能最佳实践responsive-layout.md- 终端布局模式testing-patterns.md- CLI 组件测试
关键知识
阻止按键事件传播
使用 Enter 键在屏幕之间导航时,同一次按键可能会传播到新屏幕。请务必:
- 在事件源处使用
key.preventDefault() - 在目标屏幕添加初始帧延迟
- 使用
focused属性控制交互元素
SolidJS 响应性
切勿解构 props;始终通过 props.xxx 访问,以保持响应性。
鼠标限制
OpenTUI 的 Selection API(useSelectionHandler)无法可靠运行。将 useMouse: false 设置为允许操作系统级复制,但这会禁用滚轮滚动。
评论
支持 Markdown