SuperAPI AI 工具集

build-tui-view

编程与开发

查看项目

更新于 10-16 05:50

技能介绍

用途:该技能为在 Hatchet CLI 中创建、维护终端用户界面(TUI)视图提供说明,主要基于 bubbletea(TUI 框架)和 lipgloss(样式)实现。它要求实现视图前先找到前端应用中的对应视图,以理解列结构、API 调用、数据类型、过滤与排序逻辑。

主要能力与约定:视图采用模块化架构,每个视图单独放在 cmd/hatchet-cli/cli/tui/ 目录下的独立文件中,需实现 View 接口(Init、Update、View、SetSize),并通常嵌入 BaseModel 复用公共字段。所有视图应使用 views/view.go 中定义的可复用组件,包括 RenderHeader(详情视图与弹窗)、RenderHeaderWithViewIndicator(主列表视图)、RenderInstructions 和 RenderFooter,避免复制粘贴页头页脚样式。样式必须使用 cmd/hatchet-cli/cli/internal/styles 中预定义的 Hatchet 主题颜色与工具,不得硬编码颜色或样式。状态渲染可使用支持单元格级样式的表格包装器。

必要用法:文档给出的路径约定包括 TUI 命令文件 cmd/hatchet-cli/cli/tui.go、视图目录 cmd/hatchet-cli/cli/tui/、主题文件 cmd/hatchet-cli/cli/internal/styles/styles.go、前端参考目录 frontend/app/src/pages/main/v1/。前端列定义示例见 task-runs-columns.tsx,数据钩子见 use-runs.tsx,查询定义见 lib/api/queries.ts。前端 API(如 api.v1WorkflowRunList)对应 Go 客户端 client.API().V1WorkflowRunListWithResponse(),查询参数映射到 Go 结构体参数。客户端在 tui.go 中通过 client.New 初始化,并通过 ViewContext 传给各视图。

适用场景:需要在 Hatchet CLI 中新增或维护 TUI 列表视图、详情视图或模态窗口,并希望与前端结构及 Hatchet 主题保持一致时。

限制:资料未提供安装命令、收费信息或平台要求;文档自述为会随代码库变化自我更新的说明,使用前需对照实际代码库验证路径、代码示例与 API 签名。