octie-dsh-plugin:DSH 插件形式的状态导向任务图内核

前言

在 DeepSeek Harness(DSH)会话里做智能体开发时,任务状态如果只散落在对话里,后续追踪会比较困难:任务拆成什么、哪些有依赖、哪些已经完成、哪些还需要审批,都不容易一眼看清。DSH 生态的理念是「一切皆插件」;这里的社区目录是独立站点,与 DeepSeek / 幻方无官方从属关系。

下面介绍 octie-dsh-plugin。它是 StarChen-Cycler 维护的一个 DSH bundle 插件,把 octie 的状态导向任务图内核包装成可安装插件。截至 2026-09-01,项目处于增量维护中。

这是什么

一句话定位:agent 时代的状态导向任务图内核,重构为 DeepSeek Harness(DSH)可安装的 bundle 插件。

它的核心原则是 State is derived, not set:状态只读派生,而非手工设置。任务图围绕原子任务组织,任务之间有依赖关系;完成一个任务后经 BFS 自动解锁下游。创建任务时有原子校验,用于拒绝模糊任务;不可变快照(SHA-256)用于支持长会话恢复。

它提供两条接口:

  • 独立 CLI(octie)与 Web UI(octie serve
  • DSH bundle 插件:13 个 octie_* 模型工具、octie Cordis 服务、octie/* 事件、客户端任务面板、预置 agent preset

两条接口共享同一份任务图存储:

.octie/project.json

核心功能

状态导向任务图

状态流转如下:

ready → in_progress → in_review → completed

唯一手动转移是 approve。完成一个任务后,下游任务会经 BFS 自动解锁。

这里的关键是状态不是靠手工维护,而是从任务状态中派生出来。任务创建时也会做原子校验,帮助避免模糊任务进入任务图。

DSH 插件能力

安装后,DSH 会话里可以使用:

  • 13 个 octie_* 模型工具
  • octie Cordis 服务
  • octie/* 事件

DSH 客户端任务面板支持:

  • 列表视图
  • 分层 DAG 图视图
  • 项目活跃度排序
  • 实时同步
  • 图物理开关

插件还会自动预置「Octie 任务图模式」agent preset。如果该 preset 已存在,则绝不覆盖。

独立 CLI 与 Web UI

不依赖 DSH 时,也可以使用独立 CLI:

octie

以及 Web UI:

octie serve

CLI 和 DSH 插件共享同一份任务图存储,可以在终端、脚本管道和 DSH 会话之间切换使用。

安装与启用

要求 Node.js ≥ 20。

推荐通过 npm 包安装:

dsh plugin --profile <name> add octie-cli

也可以从 GitHub 安装:

dsh plugin --profile <name> add github:StarChen-Cycler/octie-dsh-plugin

注意:从 GitHub 安装时,不含 octie serve 的网页界面资源;如需使用 Web UI,需要自行构建。

安装后需要重启 DSH;Node 侧改动必须重启才生效。

经过上面的步骤后,可以检查插件挂载情况:

dsh --profile <name> --dump-config | grep -i octie

典型用法

独立 CLI 使用

先全局安装 CLI:

npm install -g octie-cli

初始化项目:

octie init

创建一个任务。下面示例同时给出标题、描述、成功标准和交付物:

octie create --title "Implement login endpoint" --description "POST /api/auth/login:校验凭据、签发 JWT。" --success-criterion "Returns 200 with JWT for valid credentials" --deliverable "src/api/auth/login.ts"

查看任务列表:

octie list --format md

维护任务进度:

octie update <id> --complete-criterion <cid>

审批任务。这一步会触发下游任务解锁:

octie approve <id>

启动网页界面:

octie serve

DSH 会话使用

在 DSH 中安装并重启后,插件会提供 13 个 octie_* 模型工具、octie Cordis 服务和 octie/* 事件,用于在会话中规划、执行和追踪任务图。

随插件自动预置的「Octie 任务图模式」agent preset 可以直接用于任务图工作模式。

更新与已知注意

更新顺序是先全局 CLI,再 DSH 插件:

npm update -g octie-cli
dsh plugin --profile <name> update octie-cli

更新后可以检查挂载形态:

dsh --profile <name> --dump-config | grep -i octie

需要特别注意:

  • 全局 octie-cli 若停留在 1.2.0 之前版本,可能导致 DSH 把插件当普通依赖安装。遇到这类问题时,先更新全局 CLI,再更新 DSH 插件。
  • 从 GitHub 安装时,update 需要使用同一来源:
dsh plugin --profile <name> update github:StarChen-Cycler/octie-dsh-plugin

否则两条安装路径会并存。

  • DSH 安装后需重启 DSH;Node 侧改动必须重启才生效。

适用场景与注意

适合以下场景:

  • 希望在 DSH agent 会话中直接规划、执行、追踪任务图
  • 希望任务有明确成功标准、交付物和审批门
  • 希望 CLI、Web UI 和 DSH 会话共享同一份任务图
  • 长会话需要基于快照恢复任务状态

使用前需要注意:

  • 要求 Node.js ≥ 20
  • 插件会以当前 dsh 进程权限运行,安装前应检查源码与许可证;本插件许可证为 MIT(沿用上游)
  • DSH 社区目录不是官方应用商店;它与 DeepSeek / 幻方无官方从属关系
  • 从 GitHub 安装时,不含 octie serve 的网页界面资源
  • 预置 agent preset 已存在时不会覆盖

链接

  • 目录页:https://www.skillhub.cn/plugins/StarChen-Cycler/octie-dsh-plugin
  • GitHub:https://github.com/StarChen-Cycler/octie-dsh-plugin
羽毛球分组比赛记分
小程序二维码

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

Xiaoye