npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

dsh-yunxiao-taskboard

v1.6.1

Published

DeepSeek Harness plugin: Aliyun Yunxiao requirements and defects kanban by status, with detail drawer, comment feed and posting, work item editing, image preview, one-click session dispatch, Req/Bug creation, and native tools for status transitions, work

Readme

dsh-yunxiao-taskboard

DeepSeek Harness(DSH)插件:把阿里云云效的需求和缺陷按状态看板展示,点开即看详情,可一键派到工作区处理。

数据实时读云效 OpenAPI,本地不另存工作项。

✨ 功能

  • 📋 按状态看板 - 需求 / 缺陷分栏,按状态列展示,支持关键词与编号检索
  • ✍️ 新建需求 / 缺陷 - 选择项目、类别和项目成员负责人;支持标题与描述,不支持附件
  • 🔍 详情抽屉 - 状态、负责人、创建人、类型、项目、时间、描述(富文本排版保留)、附件
  • 💬 评论展示与发布 - 详情抽屉内按时间展示评论(Markdown / 富文本均可读),可直接发布 Markdown 评论
  • ✏️ 需求编辑 - 详情内编辑标题、描述和负责人;未改动的字段不提交,未改描述时保留原富文本;含图片/表格的描述改前需二次确认
  • 🖼️ 图片预览 - 描述内图片经 Host 换取 OSS 直链,点开弹层等比预览,不跳转不下载
  • 🚀 一键派发 - 「处理」按钮选择工作区,直接起会话并预填 prompt
  • 📝 改动留档 - yunxiao_comment 把每次改动写成需求评论,推送后把 Codeup 提交关联到需求
  • 🛠️ 原生工具 - yunxiao_workitems(查询)、yunxiao_project_members(选择负责人)、yunxiao_create_workitem(创建 Req/Bug)、yunxiao_transition(流转状态)、yunxiao_comment(评论留档 / 关联提交)
  • 🔐 令牌只在 Host - 令牌不出 Host 进程,前端不回显、不进日志
  • 🔄 版本更新提醒 - 右上角显示当前版本;npm 有新版本时显示最新版号并可一键升级(重启 DSH 生效)

📸 截图

看板:需求 / 缺陷分栏按状态展示,卡片可拖拽流转,支持编号检索与优先级、负责人筛选。

云效进度看板

详情:状态、负责人、类型、时间等字段,描述按原富文本排版展示(图片、附件同源)。

工作项详情

📦 安装

以 npm 组合包分发:dsh-yunxiao-taskboard,按组合包安装,无需本地目录。要求 DSH >= 0.2.1-rc.3(声明在 engines.dsh,兼容后续版本)。

Web:侧边栏「插件」→「添加插件」→ 搜索框填 dsh-yunxiao-taskboard → 安装。

交给 Agent:plugin_manager → install_bundle,target 填 dsh-yunxiao-taskboard。

CLI:

dsh plugin --profile <profile> add dsh-yunxiao-taskboard

CLI 只装依赖,还要在「插件」页启用 dsh-yunxiao-taskboard 组合包(等价于在 profile 的 dsh.profile.bundles 里追加)。

安装后刷新 DSH Web,在插件设置里填令牌(配置见下)。

⚙️ 配置

插件 Config(设置页可改),非空值优先,空值退回环境变量:

| 字段 | 必填 | 空值退回 | 说明 | | --- | --- | --- | --- | | token | 是 | YUNXIAO_API_KEY | 云效个人访问令牌,writeOnly | | organizationId | 中心版必填 | YUNXIAO_ORG_ID | Region 版留空 | | baseUrl | 否 | YUNXIAO_API_BASE_URL → https://openapi-rdc.aliyuncs.com | Region 版填组织域名 | | edition | 否 | 由 organizationId 是否为空推断 | center / region |

请求头固定 x-yunxiao-token。

✍️ 新建需求与缺陷

看板中的「新建需求/缺陷」会按当前项目与类别创建工作项。负责人必须从该项目成员列表中明确选择;AI 使用 yunxiao_project_members 查询后,再通过 yunxiao_create_workitem 创建,不能猜测负责人 ID。首版不含附件上传。

💬 评论与需求编辑

详情抽屉下半部分展示评论列表(按创建时间倒序),并在同一处发布评论:正文以 Markdown 保存,支持 Ctrl/⌘+Enter 快捷发布。发布后自动刷新评论列表。

点详情右上角「编辑」可修改标题、描述和负责人:

  • 负责人列表来自当前项目成员;不选则保持原负责人。
  • 描述只在改动时提交,并按 Markdown 重新排版;不改描述不会覆盖云效原有富文本内容。
  • 原描述含图片或表格时,保存会先提示并需要再点一次「仍然保存」,避免静默丢失内容。
  • 保存或评论成功后若详情/评论刷新失败,会提示「已保存,但刷新失败」,不会误报为保存失败。

部分写入操作要求令牌具备工作项写权限,权限不足时保存或评论会失败并在界面上给出原因。

📝 需求改动留档

开发需求/缺陷时用 yunxiao_comment 把改动写进工作项评论列表,推送后把 Codeup 提交关联到工作项:

yunxiao_comment({
  id: 'EVXU-1095',
  content: '## 改动\n- 科目余额表打印支持边距调整\n- 已验证 A4/A5 打印',
  commits: [{ sha: 'abc1234', title: 'feat(print): 打印边距可调', url: 'https://codeup.aliyun.com/<组>/<库>/commit/abc1234' }],
})
  • content 以 Markdown 写到评论列表;提交列表会自动补在正文末尾(正文已提到的提交不重复)。
  • commits[].url 是 Codeup 提交页地址,插件用代码库列表反查关联接口要的代码库 id;反查不到时改传 projectId。
  • 提交关联失败不回滚评论:返回值里 commits 逐个给出 linked 和失败原因。
  • 云效偶尔会在写入关联记录后同步 appshell 失败,POST 报错但记录已存在;插件会回查关联列表核对真实结果,已写入的返回 linked: true 并带 note,重试时已关联的提交直接返回 alreadyLinked: true,不会重复关联。
  • 提交信息里带 #EVXU-1095 时云效本身也会自动关联,双保险。

🧪 开发

node --test        # 覆盖创建校验、成员选择、连接解析、看板、流转、评论列表与发布、需求编辑、客户端纯函数与版本比较

发布(files 白名单已限定包内容,prepublishOnly 先跑测试):

npm pack --dry-run   # 核对 tarball 内容
npm publish          # publishConfig.access = public

代码结构:

index.js          Host 侧插件入口(工具注册、/yunxiao 路由)
client.js         Client 侧看板与详情 UI
server/           云效 API 封装、连接配置、看板逻辑
test/             node:test 单测
docs/superpowers/ 设计规格与实施计划

📄 License

MIT