dsh-knj-reqwork:以本地 Vue 路由为真相源的需求工坊

前言

在 DSH 里做产品或需求侧协作时,常见做法是把设计稿或文档当作主入口,再让智能体对着截图或说明去猜页面结构。真实前端往往早已在仓库里用 Vue Router 定好了路由和组件路径,若工作台不能直接从这份代码读取页面清单,列表和引用就容易和实现脱节。

dsh-knj-reqwork(社区目录名与包名一致)是维护者 yangdongzhen590 发布的 DSH 工作流类插件。它把本地前端代码库当作真相源:扫描配置的 Vue Router 入口,在 DSH Web 工作区里列出路由页面,并提供稳定的 @page:<path> 引用与源码检视。README 明确说明:它不是 Figma 替代品,M0 阶段只读、无持久化,不涉及矢量编辑、多人协作或云端设计文件。

这是什么

  • 定位:面向 DeepSeek Harness 的私有 PM「需求工坊」工作台插件(包名 dsh-knj-reqwork)。
  • 维护者:yangdongzhen590;许可证 MIT(© 2026 yangdongzhen)。
  • 解决的问题:在 DSH Web 侧快速对齐「仓库里真实有哪些路由页」,选中页后可在对话上下文中使用稳定 PageRef,并查看路由、组件源码与布局相关元数据。

社区目录简介将其归为工作流,并概括为需求导入、拆解与跟踪方向;当前已发布的 M0 能力以 README 为准:路由页列表、固定或可配置的 projectRoot 扫描、侧边栏「需求工坊」面板与 GET /dsh-knj-reqwork/pages 只读接口。

核心功能(M0:当前可用)

M0 刻意保持只读、无持久化,主要包括:

  1. Vue Router 页面列表
    在 projectRoot 下查找 src/router/index.js、src/router/index.ts、src/router.js、src/router.ts 等候选文件,解析路由 path、name、动态 import 的 .vue 组件及 home-child 布局约定。

  2. 固定或可配置的项目根
    默认读取 D:\workspace\knsearch-test\knsearch_web;宿主配置可提供 projectRoot 指向其他本地前端根目录。

  3. 稳定 PageRef
    选中页面后暴露 @page:<path>,例如 @page:/home,用于在 DSH 对话中引用路由而非单独的设计文档 ID。

  4. 源码检视(Source inspector)
    展示所选路由、组件源码及可用布局元数据。

  5. 宿主 API
    通过 DSH webServer 注册只读端点 GET /dsh-knj-reqwork/pages;成功时返回 { ok, root, pages },错误场景使用 404/405/500。扫描器拒绝 projectRoot 外的路径。

  6. Web 客户端面板
    向 knj.menu.item 插槽注入「需求工坊」菜单项,在主工作区挂载面板;dispose 时可逆地移除菜单、DOM、样式、观察者与监听。客户端入口导出为 dsh-knj-reqwork/client。

宿主侧导出 scanVueRouter、mountReqworkRoutes、BASE、PAGES_PATH、DEFAULT_PROJECT_ROOT 等符号,供集成与测试使用。

路线图(尚未在 M0 交付)包括 M1 画布节点与图层、M2 布局对比与快照、M3 后续工作流能力,仍约束在「私有、代码即真相」模型内。

安装与启用

插件需先在本机构建并打包,再装入 DSH web profile。官方 README 要求 Node.js 20 及以上;在 PowerShell 中应使用 npm.cmd,避免 PowerShell 的 npm shim。仓库 .npmrc 启用 legacy-peer-deps,以适配钉死的 DSH 预发布 peer 依赖。

package.json 声明引擎:node >= 20,dsh >= 0.1.1-rc.2;peer 依赖 @deepseek-ai/cordis(^4.0.1,可选)。

1、构建与校验并打包:

npm.cmd run check
npm.cmd test
npm.cmd pack

pack 会生成用于安装的 .tgz;README 举例 M0 产物名为 dsh-knj-reqwork-2026.9.5.tgz,实际文件名中的 <ver> 以 package.json 的 version 字段为准(资料中该字段为 2026.11.12)。

2、安装到 DSH web profile:

dsh plugin --profile web add ./dsh-knj-reqwork-<ver>.tgz

3、按宿主环境重启或重载 DSH Web,在菜单中打开「需求工坊」。

开发者在仓库内完整验证流程可参考:

npm.cmd install
npm.cmd run typecheck
npm.cmd run build
npm.cmd run check
npm.cmd test
npm.cmd pack

典型用法

经过上面的步骤安装并重载宿主后,在 DSH Web 客户端点击「需求工坊」,面板会向同源地址请求页面列表(可中止的请求,并对重复 apply/dispose 做防御性处理)。

1、确认扫描根目录:若本地前端不在默认路径,通过宿主配置设置 projectRoot,使扫描器只读该目录下的 Router 候选文件。

2、在列表中选择目标路由页;工作台暴露 @page:<path>,可在与智能体的对话里引用该标识。

3、使用源码检视区查看对应路由、.vue 组件源码及布局元数据,以代码为准对齐需求描述(M0 不写入仓库、不建库、不写缓存文件)。

也可直接调用只读 HTTP 接口做集成或调试(仅支持同主机的 GET):

GET /dsh-knj-reqwork/pages

适用场景与注意

适合谁

  • 已在 DSH Web 上工作、且前端为 Vue Router 结构的项目团队或 PM,需要在对话里用 @page: 对齐真实路由而非维护平行设计稿。
  • 希望快速列出仓库内可发现的路由页并检视组件源码的开发者。

务必注意

  • 插件以当前 DSH 进程权限读取本地文件;安装前应阅读源码与 MIT 许可证,并确认 projectRoot 指向的预期目录。
  • M0 无远程协作面:无上传、权限管理、评论审批、云组件库;无持久化状态。
  • 社区插件目录(SkillHub)为独立生态站点,与 DeepSeek / 幻方无官方从属关系;星标等目录元数据以站点展示为准(资料中 GitHub 星标为 0)。

结尾

dsh-knj-reqwork 把 Vue Router 扫描、稳定页引用和源码检视接到 DSH Web「需求工坊」里,适合以代码为真相源做需求对齐;更远期的画布与规格产出见 README 路线图。查阅说明与源码可访问社区目录页与 GitHub 仓库:

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

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

小夜