software-design-test 1.2.0 → 1.2.1

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/CHANGELOG.md +15 -0
  2. package/README.md +106 -6
  3. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,21 @@
3
3
  本项目遵循 [Keep a Changelog](https://keepachangelog.com/zh-CN/1.1.0/) 与[语义化版本](https://semver.org/lang/zh-CN/)。
4
4
  This project follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and [SemVer](https://semver.org/).
5
5
 
6
+ ## [1.2.1] - 2026-10-04
7
+
8
+ ### 新增 / Added
9
+
10
+ - README 新增「收录信息」一节:一句话价值、能力分类、安装命令(npm / GitHub / tarball / link)、
11
+ 兼容与运行要求、权限与数据说明、**真实输出**(8/8 自检 + 29/29 测试 + 会话演示),
12
+ 以及 DSH Plugin Hub 收录徽章与非官方声明。
13
+ - `.github/workflows/publish.yml`:**npm Trusted Publishing(OIDC)** 发布工作流(含 provenance 与
14
+ 粒度令牌备用方案)。默认仅手动触发,配置好 Trusted Publisher 或 `NPM_TOKEN` 后可改为打 tag 自动发布。
15
+ - README「分发与发布」一节:npm / GitHub / Release 三个渠道与维护者发布流程。
16
+
17
+ ### 变更 / Changed
18
+
19
+ - 安装命令同时给出 `--profile web` 与 `--profile desktop` 两种写法,并补充 tarball 安装方式。
20
+
6
21
  ## [1.2.0] - 2026-10-04
7
22
 
8
23
  ### 新增 / Added
package/README.md CHANGED
@@ -11,9 +11,19 @@ screen-evidence judgement of element integrity and tool usability — with zero
11
11
  [![verify](https://github.com/Inceptzws/software-design-test/actions/workflows/verify.yml/badge.svg)](https://github.com/Inceptzws/software-design-test/actions/workflows/verify.yml)
12
12
  [![license: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
13
13
  [![dsh-plugin](https://img.shields.io/badge/dsh--plugin-ecosystem-7C6CF6)](https://github.com/topics/dsh-plugin)
14
+ [![Listed on dsh-plugin.org](https://dsh-plugin.org/badges/listed.svg)](https://dsh-plugin.org/plugins/Inceptzws/software-design-test)
14
15
 
15
16
  [English](#english) | 中文
16
17
 
18
+ > **一句话价值 / In one line**:装上它,Agent 就会**像真实用户一样**去测你的软件——先问你要鼠标、键盘与
19
+ > 录屏权限,再按人物、场景、任务卡与"测试内容清单"(窗口尺寸、鼠标速度、工具栏可读性……)
20
+ > 走一遍真实操作,用录屏与截屏给出可复现的缺陷报告。
21
+ > **Installing it makes the agent test your software the way a real user would** — permission gate first,
22
+ > then personas, task cards and a what-to-test checklist, executed by hand with screen evidence.
23
+
24
+ **能力分类 / Category**:技能与智能体 (Skills & Agents) · **许可证 / License**:MIT ·
25
+ **社区项目 / Community project**:非 DeepSeek 官方出品,与 DeepSeek AI 无隶属关系。
26
+
17
27
  ---
18
28
 
19
29
  ## 它是什么 / What it is
@@ -40,14 +50,18 @@ screen-evidence judgement of element integrity and tool usability — with zero
40
50
  ## 安装 / Install
41
51
 
42
52
  ```bash
43
- # 本地目录(推荐;本机工作区里就是) / local checkout (recommended)
44
- dsh plugin --profile desktop add link:/Users/inception/Documents/deepseek-harness/default-workspace/software-design-test
53
+ # npm(已发布,预构建,无需构建授权)/ from npm — prebuilt, no build approval needed
54
+ dsh plugin --profile web add software-design-test
55
+ dsh plugin --profile desktop add software-design-test
45
56
 
46
- # GitHub(无需克隆)/ from GitHub
47
- dsh plugin --profile desktop add github:Inceptzws/software-design-test
57
+ # GitHub(源码直装;本包零依赖零构建,不需要 allowBuilds)/ from GitHub
58
+ dsh plugin --profile web add github:Inceptzws/software-design-test
48
59
 
49
- # npm / from npm
50
- dsh plugin --profile desktop add software-design-test
60
+ # Release 里的 tarball / the tarball from the release
61
+ dsh plugin --profile web add ./software-design-test-1.2.1.tgz
62
+
63
+ # 本地目录(改源码时)/ local checkout while editing
64
+ dsh plugin --profile desktop add link:/abs/path/to/software-design-test
51
65
  ```
52
66
 
53
67
  重启 Harness,然后确认:
@@ -95,6 +109,92 @@ node scripts/report.mjs build ./ui-test-demo-2026-10-04
95
109
 
96
110
  ---
97
111
 
112
+ ## 分发与发布 / Distribution and publishing
113
+
114
+ **安装(用户侧)** / Install for users:
115
+
116
+ ```bash
117
+ # npm(已发布)/ from npm
118
+ dsh plugin --profile desktop add software-design-test
119
+
120
+ # GitHub(无需克隆)/ from GitHub
121
+ dsh plugin --profile desktop add github:Inceptzws/software-design-test
122
+
123
+ # 本地目录(改源码时)/ local checkout while editing
124
+ dsh plugin --profile desktop add link:/abs/path/to/software-design-test
125
+ ```
126
+
127
+ | 渠道 Channel | 地址 Location |
128
+ | --- | --- |
129
+ | npm | <https://www.npmjs.com/package/software-design-test> |
130
+ | GitHub | <https://github.com/Inceptzws/software-design-test> |
131
+ | Release(附 tarball) | <https://github.com/Inceptzws/software-design-test/releases> |
132
+
133
+ **发布(维护者侧)** / Publish as a maintainer:
134
+
135
+ ```bash
136
+ npm version patch|minor|major # 改版本号并打 tag
137
+ git push --follow-tags # 触发 .github/workflows/publish.yml
138
+ ```
139
+
140
+ `publish.yml` 走 **npm Trusted Publishing(OIDC)**:不需要长期 token,并自动生成 provenance。
141
+ 一次性配置:npmjs.com → 包页面 → **Settings → Trusted Publisher → GitHub Actions**,
142
+ Organization or user `Inceptzws`、Repository `software-design-test`、Workflow filename `publish.yml`。
143
+
144
+ > Why OIDC: npm 正在收紧**绕过 2FA 的 token**(账号变更 2026-08 起、直接发布 2027-01 起),
145
+ > OIDC 是之后仍然可用的发布路径。**今天仍然可用**的备选方案是粒度访问令牌:
146
+ > Packages & scopes → Read and write → 只勾 `software-design-test`,勾选 "Bypass 2FA",
147
+ > 存为仓库 secret `NPM_TOKEN`,然后取消 `publish.yml` 里 env 段的注释。
148
+
149
+ `verify.yml` 在每次 push/PR 上跑:自检 8 项 + 29 条测试 + "包内不存在输入注入 API" 断言。
150
+
151
+ ---
152
+
153
+ ## 收录信息 / Listing information
154
+
155
+ 供 [DSH Plugin Hub](https://dsh-plugin.org/) 收录与用户评估使用 / trust signals for the Hub and for users:
156
+
157
+ | 项目 Item | 内容 Value |
158
+ | --- | --- |
159
+ | 一句话价值 Value | 让 Agent 像真实用户一样测软件:权限闸门 → 人物/场景/任务卡 → 真实操作 → 录屏截屏证据 → 可复现缺陷报告 |
160
+ | 能力分类 Category | 技能与智能体 Skills & Agents |
161
+ | 安装命令 Install | `dsh plugin --profile web add software-design-test`(npm)· `... add github:Inceptzws/software-design-test`(GitHub) |
162
+ | 兼容 Compatibility | DeepSeek Harness `0.2.0-rc.2`(本机实测);Node ≥ 20.11;capture 脚本覆盖 macOS / Windows / iOS 模拟器 / Android |
163
+ | 运行要求 Requirements | 零依赖、零构建、**不联网**;只写会话目录;无外部服务 |
164
+ | 权限 Permissions | 只读**截屏/录屏**(含屏幕录制系统权限);**不需要**辅助功能、输入监控、自动化等控制权限;包内无任何输入注入 API |
165
+ | 数据 Data | 证据只存本地会话目录;权限问卷里先定数据边界;涉密界面默认不录 |
166
+ | 许可 License | MIT · 非官方社区项目,与 DeepSeek AI 无隶属关系 |
167
+
168
+ **可见的证明 / Real output**(本仓库 CI 每次 push 都会跑):
169
+
170
+ ```text
171
+ $ node scripts/verify.mjs
172
+ PASS mount: plugin publishes every skill through ctx.skills
173
+ PASS mount: provider.get returns body without leaking rank/locator
174
+ PASS skills: frontmatter is valid and bilingual
175
+ PASS links: every relative markdown link resolves
176
+ PASS ban: shipped code contains no input-injection API
177
+ PASS content: method requirements are documented bilingually
178
+ PASS cli: session init / gate / finding / guard / report end to end
179
+ PASS cli: capture.mjs exposes no input subcommand and checks availability
180
+
181
+ 8/8 checks passed — 注入能力: 无 / capability to inject input: none
182
+
183
+ $ node --test test/*.test.mjs
184
+ ℹ tests 29 ℹ pass 29 ℹ fail 0
185
+ ```
186
+
187
+ 一次性会话演示 / a full session in one go:
188
+
189
+ ```bash
190
+ node scripts/session.mjs init ./ui-test-<app>-<date> --platform macos --app "<app>"
191
+ node scripts/session.mjs gate ./ui-test-<app>-<date> --mouse yes --keyboard L2 \
192
+ --screen-recording yes --screenshot yes --compliance yes # 未通过闸门不会开始
193
+ node scripts/report.mjs build ./ui-test-<app>-<date> # 中英对照报告 + 测试内容分布
194
+ ```
195
+
196
+ ---
197
+
98
198
  ## 三个技能 / Three skills
99
199
 
100
200
  | 技能 Skill | 用途 Purpose |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "software-design-test",
3
- "version": "1.2.0",
3
+ "version": "1.2.1",
4
4
  "description": "软件设计测试(模拟真实用户)/ Software Design Testing by simulating real users for DeepSeek Harness: build personas and scenarios, decompose them into executable task cards, run think-aloud sessions with a real mouse and keyboard in three input modes, and judge element integrity and tool usability from screen recordings and screenshots on macOS, Windows, iPhone and iPad — with zero synthetic pointer injection and a permission gate before testing starts.",
5
5
  "icon": "./icon.svg",
6
6
  "type": "module",