@stardustlc/dsh-suite 0.1.0 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.en.md +26 -6
  2. package/README.md +26 -8
  3. package/package.json +4 -2
package/README.en.md CHANGED
@@ -1,5 +1,7 @@
1
1
  [简体中文](README.md)
2
2
 
3
+ ![npm](https://img.shields.io/npm/v/@stardustlc/dsh-suite) ![downloads](https://img.shields.io/npm/dm/@stardustlc/dsh-suite) ![license](https://img.shields.io/github/license/STARDUSTLC666/dsh-suite) ![stars](https://img.shields.io/github/stars/STARDUSTLC666/dsh-suite?style=social)
4
+
3
5
  # dsh-suite
4
6
 
5
7
  > **The STARDUSTLC plugin suite**: 18 DSH plugins, one command.
@@ -8,7 +10,7 @@ Bundles five product lines — office flow (with dream-based memory), media stud
8
10
 
9
11
  ## Compatibility
10
12
 
11
- Verified on `@deepseek-ai/dsh@0.1.2-alpha.2` (2026-08-31): all 18 components booted together, token auth OK, zero errors (including dsh-minimal-ptc 0.4.2 adapted to the PTC rename).
13
+ Verified against the official `@deepseek-ai/dsh@0.1.3-alpha.2` (2026-09-08): 18 components, 96 tools and 34 skills. All tool schemas pass the official JSON Schema subset, both TypeScript and Python PTC SDKs render, and isolated Web startup, token authentication (303/401/200) and process shutdown pass. The scripts below reproduce these checks against local source.
12
14
 
13
15
  ## Install / Uninstall
14
16
 
@@ -39,10 +41,10 @@ Restart the web service afterwards. Prefer a single component? Install its own r
39
41
  | | dsh-rss | RSS/Atom subscriptions + cross-feed search + incremental fetch |
40
42
  | | dsh-cite | Crossref lookup + four citation styles + BibTeX |
41
43
  | | dsh-dream | Session replay → reflection → dream journal → AGENTS.md bridge (privacy masking) |
42
- | Media | dsh-ffmpeg | probe/cut/concat/encode/subtitle/batch frames/GIF |
44
+ | Media | dsh-ffmpeg | probe/cut/concat/encode/subtitle/frames/GIF/adjust (speed/volume/mute/rotate), ten tools |
43
45
  | | dsh-voice | edge-tts synthesis + ASR transcription + voice preview |
44
- | | dsh-ppt | One prompt to HTML slideshow + PPTX export |
45
- | | dsh-hyperframes | HyperFrames by HeyGen five-skill bundle |
46
+ | | dsh-ppt | One prompt to HTML slideshow + PPTX export: 7 layouts (quote/table) + speaker notes |
47
+ | | dsh-hyperframes | HyperFrames by HeyGen bundle of 20 skills |
46
48
  | | dsh-remotion | Remotion programmatic-video skill |
47
49
  | DevOps | @stardustlc/dsh-docker | Seven container tools (incl. health) + exec approval gate |
48
50
  | | dsh-sql | SQLite/MySQL/PostgreSQL + read-only guard + approval gate + stats/CSV |
@@ -53,7 +55,7 @@ Restart the web service afterwards. Prefer a single component? Install its own r
53
55
  | | dsh-slack | Two-way Slack over Socket Mode |
54
56
  | Presets | dsh-minimal-ptc | Minimal-PTC agent preset |
55
57
 
56
- Every component ships a `*_health` self-check tool — run them after install.
58
+ 16 components provide `*_health`; use the read-only `ppt_themes` for PPT and check the preset picker for minimal-ptc. Some health tools contact external services or invoke local CLIs.
57
59
 
58
60
  ## Configuration
59
61
 
@@ -63,9 +65,27 @@ Override any component by its id in your profile's `cordis.patch.yml`.
63
65
 
64
66
  ```bash
65
67
  pnpm install
66
- pnpm test # 5 tests: combined patch validity, 18-entry integrity, unique ids, dependency parity, docs
68
+ pnpm test # suite manifest, documentation and offline-environment tests
69
+ ```
70
+
71
+ Place the 18 component checkouts beside `dsh-suite`, with development dependencies already installed and Harness already built. The verifier discovers components from `cordis.patch.yml`, rebuilds with each local TypeScript compiler and runs top-level unit tests. It never runs an installation command.
72
+
73
+ ```bash
74
+ node scripts/verify-local.mjs --harness-root C:/path/to/deepseek-harness --report ../.harness-validation/offline-report.json
75
+ node scripts/verify-local.mjs --harness-root C:/path/to/deepseek-harness --contracts-only --json
76
+ node scripts/smoke-harness.mjs --harness-root C:/path/to/deepseek-harness --contract-report ../.harness-validation/offline-report.json --report ../.harness-validation/smoke-report.json
67
77
  ```
68
78
 
79
+ `--workspace-root` selects the parent of the component repositories. `--report` saves JSON, `--json` prints only JSON, and failures return a nonzero exit status. `--contracts-only` validates existing `lib/` artifacts without rebuilding or running unit tests.
80
+
81
+ Contracts use the selected Harness's real `ToolRuntime` and `SkillRegistry`: required service declarations, all parameter/output schemas, skill registrations and collisions, both PTC SDKs, and the execution/rendering of 16 health fixtures plus `ppt_themes`. The preset is materialized in an isolated home and its Harness module references are resolved. Only these read-only output samples are executed; other business workflows rely on the component unit tests and mocked dependencies.
82
+
83
+ HyperFrames and Remotion also undergo a real registry regression: remove one registered skill and require unhealthy status, then restore the matching registration and require healthy status. The startup smoke check executes both health tools and requires all bundled skills to be active.
84
+
85
+ Child environments omit service credentials and put HOME, DSH_HOME, CODEX_HOME and temporary files under workspace `.harness-validation/`. A Node preload permits loopback mock servers and blocks external fetch/TCP/UDP. It prevents accidental network access by trusted tests; it is not an OS sandbox. Test names containing `integration`, `live` or `e2e` are excluded and reported. Voice synthesis is opt-in via that component's `pnpm test:integration`. Crossref and subprocess version probes use fixtures, so `fixtureOk` does not describe live service readiness.
86
+
87
+ Run directories and reports remain available for inspection. `smoke-harness.mjs` covers real CLI startup, all components loaded together, Web HTTP and authentication, and compares every tool and skill against `--contract-report`. Add `--extra-plugin C:/path/to/modlens` to include a locally installed Modlens. These development scripts are used from the source checkout and are not shipped in the suite's patch-only npm package.
88
+
69
89
  ## License
70
90
 
71
91
  MIT (all components are MIT in their own repos)
package/README.md CHANGED
@@ -4,13 +4,13 @@
4
4
 
5
5
  > **STARDUSTLC 插件全家桶**:一条命令,装入 18 个 DSH 插件。
6
6
 
7
- ![license](https://img.shields.io/github/license/STARDUSTLC666/dsh-suite) ![stars](https://img.shields.io/github/stars/STARDUSTLC666/dsh-suite?style=social)
7
+ ![npm](https://img.shields.io/npm/v/@stardustlc/dsh-suite) ![downloads](https://img.shields.io/npm/dm/@stardustlc/dsh-suite) ![license](https://img.shields.io/github/license/STARDUSTLC666/dsh-suite) ![stars](https://img.shields.io/github/stars/STARDUSTLC666/dsh-suite?style=social)
8
8
 
9
9
  把办公流(含做梦记忆)、媒体工坊、DevOps、通知与预设五条产品线一次装进你的 DeepSeek Harness。本仓库提供组合补丁(18 行默认配置,与组件自带 `cordis.patch.yml` 一致);组件本身经上方一条命令直装。
10
10
 
11
11
  ## 兼容性
12
12
 
13
- 在 `@deepseek-ai/dsh@0.1.2-alpha.2` 上验证(2026-08-31):18 个组件同载真实启动,token 鉴权正常,零报错(含适配 PTC 改名的 dsh-minimal-ptc 0.4.2)。
13
+ 已在官方 `@deepseek-ai/dsh@0.1.3-alpha.2`(2026-09-08)验证:18 个组件同载,96 个工具、34 个技能;工具参数与输出符合官方 JSON Schema 子集,TypeScript / Python PTC SDK 均可生成。隔离 Web 启动、token 鉴权(303/401/200)与进程退出也已通过。下方脚本可对本地源码重复验收。
14
14
 
15
15
  ## 安装
16
16
 
@@ -38,15 +38,15 @@ dsh plugin --profile web remove @stardustlc/dsh-suite
38
38
 
39
39
  | 产品线 | 组件 | 能力 |
40
40
  | :-- | :-- | :-- |
41
- | 📨 办公流 | dsh-email | IMAP/SMTP 收发/搜索/附件(since/until 日期过滤),八大服务商预设,发信审批门 |
41
+ | 📨 办公流 | dsh-email | IMAP/SMTP 十工具:收发/搜索/附件/增量新邮件监视/标记整理/回复转发,八大服务商预设,发信审批门 |
42
42
  | | dsh-calendar | CalDAV 日程查建改删搜(Google/iCloud/Nextcloud) |
43
43
  | | dsh-rss | RSS/Atom 订阅 + 跨订阅搜索 + 增量抓取 |
44
44
  | | dsh-cite | Crossref 文献检索 + 四种引文格式 + BibTeX |
45
45
  | | dsh-dream | 会话回放 → 反思 → 梦境日记 → 桥接 AGENTS.md(含隐私脱敏) |
46
- | 🎬 媒体工坊 | dsh-ffmpeg | 探测/剪辑/拼接/转码/字幕/批量抽帧/GIF |
46
+ | 🎬 媒体工坊 | dsh-ffmpeg | 探测/剪辑/拼接/转码/字幕/抽帧/GIF/调整(变速·音量·静音·旋转)十工具 |
47
47
  | | dsh-voice | edge-tts 合成 + ASR 转写 + 音色试听 |
48
- | | dsh-ppt | 一句话生成 HTML 放映 + PPTX 导出 |
49
- | | dsh-hyperframes | HyperFrames by HeyGen 视频五件套技能 |
48
+ | | dsh-ppt | 一句话生成 HTML 放映 + PPTX 导出:7 页型(金句/表格)+ 演讲者备注 |
49
+ | | dsh-hyperframes | HyperFrames by HeyGen 官方视频技能(20 个上游技能) |
50
50
  | | dsh-remotion | Remotion React 编程式视频技能 |
51
51
  | 🔧 DevOps | dsh-docker | 容器七工具(含 health 自检)+ exec 审批门(@stardustlc/dsh-docker) |
52
52
  | | dsh-sql | SQLite/MySQL/PostgreSQL + 只读保护 + 审批门 + 统计/CSV |
@@ -57,7 +57,7 @@ dsh plugin --profile web remove @stardustlc/dsh-suite
57
57
  | | dsh-slack | Slack 双向消息(Socket Mode) |
58
58
  | 🧠 预设 | dsh-minimal-ptc | 极简 PTC 模式 Agent 预设 |
59
59
 
60
- 全部组件自带 `*_health` 自检工具——装完先跑一遍 health,心里有底。
60
+ 16 个组件提供 `*_health` 自检工具;PPT 可先运行只读的 `ppt_themes`,minimal-ptc 则检查预设是否出现在选择器中。部分 health 会访问外部服务或调用本地 CLI。
61
61
 
62
62
  ## 配置
63
63
 
@@ -81,9 +81,27 @@ dsh plugin --profile web remove @stardustlc/dsh-suite
81
81
 
82
82
  ```bash
83
83
  pnpm install
84
- pnpm test # 5 个测试:组合补丁 YAML 合法性、18 条目完整性、id 唯一、依赖对应、文档齐备
84
+ pnpm test # 套件清单、文档和离线执行环境的测试
85
85
  ```
86
86
 
87
+ 本地 18 个组件仓库应与 `dsh-suite` 放在同一个父目录,组件开发依赖与 Harness 构建产物需预先就绪。验证器从 `cordis.patch.yml` 自动发现组件,通过本地 TypeScript 编译器重建,再运行各组件 `test/` 下的单元测试;不执行安装命令。
88
+
89
+ ```bash
90
+ node scripts/verify-local.mjs --harness-root C:/path/to/deepseek-harness --report ../.harness-validation/offline-report.json
91
+ node scripts/verify-local.mjs --harness-root C:/path/to/deepseek-harness --contracts-only --json
92
+ node scripts/smoke-harness.mjs --harness-root C:/path/to/deepseek-harness --contract-report ../.harness-validation/offline-report.json --report ../.harness-validation/smoke-report.json
93
+ ```
94
+
95
+ `--workspace-root` 可指定组件父目录;`--report` 保存 JSON,`--json` 让标准输出只包含 JSON。任何构建、测试或契约失败均返回非零退出码。`--contracts-only` 跳过重建与单元测试,检查当前 `lib/` 产物。
96
+
97
+ 契约检查使用指定 Harness 的真实 `ToolRuntime` 和 `SkillRegistry`:逐个校验服务注入声明、全部工具参数与输出 schema、技能注册和重名冲突,生成两种 PTC SDK,再通过宿主执行链运行 16 个 health 与 `ppt_themes` 输出样例。minimal-ptc 会物化到隔离目录,并校验预设引用的 Harness 模块可解析。这里只覆盖这些只读样例的返回值;发信、合成、渲染等业务流程由组件测试中的模拟依赖验证。
98
+
99
+ HyperFrames 与 Remotion 另有真实注册表回归:卸载一个已注册技能,确认 health 报告异常,再恢复相同注册并确认 health 恢复正常。启动验收也会执行这两个 health,要求全部随包技能实际生效。
100
+
101
+ 子进程只继承启动所需环境变量,HOME / DSH_HOME / CODEX_HOME 与临时目录位于工作区 `.harness-validation/`。测试入口预加载 Node 网络拦截器,允许 loopback 模拟服务器,拒绝外部 fetch / TCP / UDP;它用于防止可信测试意外联网,不是操作系统沙箱。`integration` / `live` / `e2e` 测试默认排除并在报告列出,语音真实合成须在对应仓库显式运行 `pnpm test:integration`。契约中的 Crossref 和版本探测使用固定模拟响应,health 的 `fixtureOk` 仅表示模拟配置结果,不代表真实外部服务状态。
102
+
103
+ 验收目录和报告会保留以供复核;`smoke-harness.mjs` 负责真实 CLI、全插件同载、Web HTTP 与鉴权检查,并按 `--contract-report` 逐项核对工具与技能目录。可加 `--extra-plugin C:/path/to/modlens` 验证额外安装的 Modlens。开发脚本在源码仓库中使用,不随组合补丁的 npm 包分发。
104
+
87
105
  ## License
88
106
 
89
107
  MIT(各组件许可证以各自仓库为准,均为 MIT)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stardustlc/dsh-suite",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "STARDUSTLC 插件全家桶·组合补丁:与 18 个组件插件配套,一条命令统一注入默认配置(办公流/媒体工坊/DevOps/通知/预设)。组件经一行 add 命令直装(pnpm 不允许 git 子依赖)。",
5
5
  "type": "module",
6
6
  "dsh": {
@@ -14,7 +14,9 @@
14
14
  "README.en.md"
15
15
  ],
16
16
  "scripts": {
17
- "test": "node --test \"test/*.test.mjs\""
17
+ "test": "node --test \"test/*.test.mjs\"",
18
+ "verify": "node scripts/verify-local.mjs",
19
+ "verify:contracts": "node scripts/verify-local.mjs --contracts-only"
18
20
  },
19
21
  "keywords": [
20
22
  "dsh",