用途:面向 Python Textual 终端界面的构建、调试、测试与打包,涵盖 screens、widgets、TCSS、响应式状态、workers、键盘工作流及可选浏览器交付。
主要能力:先检查应用、锁定依赖、入口点、TCSS、测试和实际用户工作流,再优先选择内置部件与组合而非自定义渲染;保持应用状态与长任务分离,键盘路径优先。
使用方式:小型工具可保留一个 App;用户上下文变化时用独立 Screen,短暂中断用 ModalScreen,局部步骤用 ContentSwitcher,真正独立的顶层屏幕栈才用模式。用稳定 ID 与语义类支持样式与测试。优先 DataTable、Tree/DirectoryTree、MarkdownViewer、TextArea 及内置输入部件。并发方面,async workers 共享事件循环,阻塞调用不会因 async def 或 @work 变为非阻塞;应使用异步 API、thread=True 处理阻塞 IO,重 CPU 用进程/原生策略。exclusive 取消失去事务回滚保证,需携带请求版本并在 UI 线程应用结果时复查。reactive 与 var 各有用途,计算保持轻量纯粹,watcher 不做阻塞工作。脚手架可用系统命令,例如 python "$SKILL_DIR/scripts/scaffold_textual_app.py" --list-templates,写入时需加 --write --output-dir。
适用场景:终端界面开发、响应式布局、worker 并发、键盘工作流、测试与打包。
限制:dump_dom_and_bindings.py 会导入并运行应用,可能执行启动、网络或文件系统动作,只能在授权的隔离测试环境配合假服务运行。服务端交付暴露文件系统与服务权限,不是沙箱,也非自动认证边界。headless 测试不证明所有真实终端或浏览器渲染一致。固定 sleep 不算 worker/布局完成的证据。未提供具体收费、价格或效果数据。