dsh-tui-jobs:dsh-TUI 后台任务管理面板

前言

在使用 dsh-TUI 进行开发或调试时,后台任务(如 bash 脚本、子 agent)的管理是一个常见痛点。官方 WebUI 提供了任务列表面板,但 TUI 端目前缺少对应的功能,导致查看任务状态和输出、取消任务时不够直观。dsh-tui-jobs 插件正是为了补齐这一短板而生。

插件介绍

这是一个适用于 dsh-TUI 的后台任务面板,由开发者 FUSU123fusu 维护。它通过命令行界面列出、查看和取消后台任务,解决了 TUI 环境下任务管理缺失的问题,实现了与官方 WebUI 在任务列表面板上的功能对齐。

核心功能

  • 列出当前所有可见的后台任务(包括 bash 和子 agent)。
  • 实时刷新任务状态变化。
  • 查看已完成任务的输出内容。
  • 取消运行中的任务。

安装与使用

  1. 克隆仓库并打包
git clone https://github.com/FUSU123fusu/dsh-tui-jobs.git
cd dsh-tui-jobs
npm pack
  1. 安装插件
dsh plugin --profile <你的profile> add file:dsh-tui-jobs-0.1.0.tgz
  1. 打开面板
    在 dsh-TUI 中输入 /jobs 命令即可打开任务面板。

  2. 交互操作
    * 列表:使用 ↑ / ↓ 选择任务。
    * 查看详情:按 Enter 进入详情视图查看输出。
    * 取消任务:按 x 取消(需在 3 秒窗口内双击)。
    * 刷新列表:按 r。
    * 退出:按 Esc。

设计与注意事项

  • 输出读取机制:为了不干扰模型侧的完成通知,面板绝不读取运行中任务的输出。只有终态任务(completed/killed/failed)的输出可读,且是幂等的。
  • 防误触设计:取消任务需要双击 x,且在 3 秒时间窗口内,防止误操作。
  • 列表排序:列表中运行中的任务优先显示,已完成任务按最新在前排序。运行中任务的时长每秒刷新。
  • 环境兼容性:如果宿主环境不支持 scene(web、headless),面板会自动退化为文本列表。

结尾

dsh-tui-jobs 通过纪律性的输出读取和防误触设计,为 dsh-TUI 用户提供了可靠的后台任务管理能力。如果你想深入了解或贡献代码,可以访问项目主页。

  • 项目地址:https://github.com/FUSU123fusu/dsh-tui-jobs
  • 插件目录:https://www.skillhub.cn/plugins/FUSU123fusu/dsh-tui-jobs
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜