@deepstorm/cli 0.7.2 → 0.8.0
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.
- package/dist/cli.js +1 -17
- package/dist/mcp-skills/deepstorm-mcp-figma-read/SKILL.md +1 -1
- package/dist/mcp-skills/deepstorm-mcp-jira-read/SKILL.md +1 -1
- package/dist/mcp-skills/deepstorm-mcp-playwright-read/SKILL.md +1 -1
- package/dist/skills/sweep-init/SKILL.md +3 -3
- package/dist/skills/sweep-run/SKILL.md +3 -3
- package/dist/skills/sweep-run/scripts/env-manager.mjs +7 -9
- package/dist/skills/tide-discuss/references/publish-flow.md +1 -1
- package/package.json +2 -2
package/dist/cli.js
CHANGED
|
@@ -6042,22 +6042,6 @@ function readDeepStormConfig(targetDir) {
|
|
|
6042
6042
|
if (fs.existsSync(settingsPath)) {
|
|
6043
6043
|
return readAndMigrate(settingsPath);
|
|
6044
6044
|
}
|
|
6045
|
-
const oldPath = path.join(targetDir, ".claude", "settings.json");
|
|
6046
|
-
if (fs.existsSync(oldPath)) {
|
|
6047
|
-
try {
|
|
6048
|
-
const raw = fs.readFileSync(oldPath, "utf-8");
|
|
6049
|
-
const settings = JSON.parse(raw);
|
|
6050
|
-
const config = settings.deepstorm;
|
|
6051
|
-
if (config && Object.keys(config).length > 0) {
|
|
6052
|
-
const migrated = migrateConfig(config);
|
|
6053
|
-
writeDeepStormConfig(targetDir, migrated);
|
|
6054
|
-
delete settings.deepstorm;
|
|
6055
|
-
fs.writeFileSync(oldPath, JSON.stringify(settings, null, 2) + "\n", "utf-8");
|
|
6056
|
-
return migrated;
|
|
6057
|
-
}
|
|
6058
|
-
} catch {
|
|
6059
|
-
}
|
|
6060
|
-
}
|
|
6061
6045
|
return null;
|
|
6062
6046
|
}
|
|
6063
6047
|
function readAndMigrate(settingsPath) {
|
|
@@ -8074,7 +8058,7 @@ function printMcpEnvStatus(mcpTools, installedMcpServices, examplesDir, targetDi
|
|
|
8074
8058
|
async function printGuide(options) {
|
|
8075
8059
|
const { installedSkills, config, targetDir, mcpTools, mcpEnvStubs } = options;
|
|
8076
8060
|
console.log("");
|
|
8077
|
-
console.log(" \u2714 \u914D\u7F6E\u5DF2\u4FDD\u5B58\
|
|
8061
|
+
console.log(" \u2714 \u914D\u7F6E\u5DF2\u4FDD\u5B58\uFF08DeepStorm \u2192 .deepstorm/settings.json\uFF0CClaude Code \u2192 .claude/settings.json\uFF09");
|
|
8078
8062
|
if (mcpTools && mcpTools.length > 0) {
|
|
8079
8063
|
console.log("");
|
|
8080
8064
|
console.log(` \u2714 \u5DF2\u5B89\u88C5 ${mcpTools.length} \u4E2A\u5916\u90E8\u670D\u52A1`);
|
|
@@ -24,7 +24,7 @@ description: Use when you need to read Figma design data — get file info, read
|
|
|
24
24
|
操作前先确认 Figma MCP 是否可用:
|
|
25
25
|
|
|
26
26
|
```
|
|
27
|
-
检查 `.
|
|
27
|
+
检查 `.deepstorm/settings.json` → `mcpCapabilities` 中 design_tools.available === true
|
|
28
28
|
```
|
|
29
29
|
|
|
30
30
|
---
|
|
@@ -24,7 +24,7 @@ description: Use when you need to read Jira Issue data — get issue details, se
|
|
|
24
24
|
操作前先确认 Jira MCP 是否可用:
|
|
25
25
|
|
|
26
26
|
```
|
|
27
|
-
检查 `.
|
|
27
|
+
检查 `.deepstorm/settings.json` → `mcpCapabilities` 中 issue_tracker.available === true(providers 包含 jira)
|
|
28
28
|
```
|
|
29
29
|
|
|
30
30
|
---
|
|
@@ -24,7 +24,7 @@ description: Use when you need to perform browser automation — navigate pages,
|
|
|
24
24
|
操作前先确认 Playwright MCP 是否可用:
|
|
25
25
|
|
|
26
26
|
```
|
|
27
|
-
检查 `.
|
|
27
|
+
检查 `.deepstorm/settings.json` → `mcpCapabilities` 中 browser-automation.available === true(providers 包含 playwright)
|
|
28
28
|
```
|
|
29
29
|
|
|
30
30
|
---
|
|
@@ -28,10 +28,10 @@ deepstorm:
|
|
|
28
28
|
|
|
29
29
|
### 步骤 0:读取框架配置
|
|
30
30
|
|
|
31
|
-
在执行初始化前,先读取 `.
|
|
31
|
+
在执行初始化前,先读取 `.deepstorm/settings.json` 中的 `sweep.e2eFramework` 配置,确定当前项目使用的 E2E 框架。
|
|
32
32
|
|
|
33
33
|
```bash
|
|
34
|
-
cat .
|
|
34
|
+
cat .deepstorm/settings.json 2>/dev/null | grep -o '"e2eFramework"[^,]*' | head -1 | cut -d'"' -f4
|
|
35
35
|
```
|
|
36
36
|
|
|
37
37
|
如果配置不存在或为空,使用默认值 `playwright` 并输出提示。
|
|
@@ -230,7 +230,7 @@ cat .mcp.json 2>/dev/null | grep -c "deepstorm-playwright"
|
|
|
230
230
|
- **THEN** 输出提示:"⚠️ Playwright MCP 未配置。建议运行 `deepstorm setup` 并选择 Playwright MCP 服务以启用浏览器自动化。"
|
|
231
231
|
- **THEN** 不阻塞初始化流程,继续执行
|
|
232
232
|
|
|
233
|
-
> **注意:** Playwright MCP 配置由 CLI setup wizard 统一管理,不再由本 skill
|
|
233
|
+
> **注意:** Playwright MCP 配置由 CLI setup wizard 统一管理,不再由本 skill 单独配置。
|
|
234
234
|
|
|
235
235
|
---
|
|
236
236
|
|
|
@@ -43,14 +43,14 @@ deepstorm:
|
|
|
43
43
|
|
|
44
44
|
### 前置检查:读取框架配置
|
|
45
45
|
|
|
46
|
-
在执行前,先读取 `.
|
|
46
|
+
在执行前,先读取 `.deepstorm/settings.json` → `sweep.e2eFramework` 配置,确定当前项目使用的 E2E 框架。
|
|
47
47
|
|
|
48
48
|
```bash
|
|
49
49
|
node scripts/env-manager.mjs --framework
|
|
50
50
|
```
|
|
51
51
|
|
|
52
52
|
```json
|
|
53
|
-
{"framework":"playwright","source":"settings"}
|
|
53
|
+
{"framework":"playwright","source":"deepstorm-settings"}
|
|
54
54
|
```
|
|
55
55
|
|
|
56
56
|
- **playwright** → 通过 Playwright MCP(`deepstorm-playwright`)执行浏览器操作
|
|
@@ -425,7 +425,7 @@ Flow: L01 - 正常登录成功
|
|
|
425
425
|
|
|
426
426
|
## 检查清单
|
|
427
427
|
|
|
428
|
-
- [ ]
|
|
428
|
+
- [ ] 前置检查:框架配置已读取(`.deepstorm/settings.json` → `sweep.e2eFramework`)
|
|
429
429
|
- [ ] 项目已初始化(`.sweep-init` 存在)
|
|
430
430
|
- [ ] 执行范围已确定(--all / --path / 交互选择)
|
|
431
431
|
- [ ] 执行模式已选择(hybrid / native / no-parallel / browser)
|
|
@@ -24,9 +24,6 @@ import { resolve } from 'node:path';
|
|
|
24
24
|
function getEnvPath() {
|
|
25
25
|
return resolve(process.cwd(), '.env');
|
|
26
26
|
}
|
|
27
|
-
function getSettingsPath() {
|
|
28
|
-
return resolve(process.cwd(), '.claude/settings.json');
|
|
29
|
-
}
|
|
30
27
|
function getMcpPath() {
|
|
31
28
|
return resolve(process.cwd(), '.mcp.json');
|
|
32
29
|
}
|
|
@@ -119,22 +116,23 @@ export function resolveEnv(envName) {
|
|
|
119
116
|
// ── Framework config ──────────────────────────────────────────────
|
|
120
117
|
|
|
121
118
|
/**
|
|
122
|
-
* Read E2E framework config from .
|
|
119
|
+
* Read E2E framework config from .deepstorm/settings.json → sweep.e2eFramework.
|
|
123
120
|
*
|
|
124
121
|
* @returns {{ framework: string|null, source: string }}
|
|
125
122
|
* framework: 'playwright' | 'cypress' | null
|
|
126
|
-
* source: 'settings' | '
|
|
123
|
+
* source: 'deepstorm-settings' | 'missing-file' | 'not-configured' | 'parse-error'
|
|
127
124
|
*/
|
|
128
125
|
export function readFramework() {
|
|
129
|
-
|
|
126
|
+
const deepstormPath = resolve(process.cwd(), '.deepstorm', 'settings.json');
|
|
127
|
+
if (!existsSync(deepstormPath)) {
|
|
130
128
|
return { framework: null, source: 'missing-file' };
|
|
131
129
|
}
|
|
132
130
|
|
|
133
131
|
try {
|
|
134
|
-
const content = readFileSync(
|
|
132
|
+
const content = readFileSync(deepstormPath, 'utf-8');
|
|
135
133
|
const config = JSON.parse(content);
|
|
136
|
-
const framework = config.
|
|
137
|
-
return { framework, source: framework ? 'settings' : '
|
|
134
|
+
const framework = config.sweep?.e2eFramework || null;
|
|
135
|
+
return { framework, source: framework ? 'deepstorm-settings' : 'not-configured' };
|
|
138
136
|
} catch {
|
|
139
137
|
return { framework: null, source: 'parse-error' };
|
|
140
138
|
}
|
|
@@ -4,7 +4,7 @@ PRD 生成后(`status: prd_ready`),分三步完成发布流程。每步根
|
|
|
4
4
|
|
|
5
5
|
## MCP 能力发现
|
|
6
6
|
|
|
7
|
-
进入 Step 4 时,AI 先读取 `.
|
|
7
|
+
进入 Step 4 时,AI 先读取 `.deepstorm/settings.json` → `mcpCapabilities` 确定可用的 provider。
|
|
8
8
|
|
|
9
9
|
能力映射结构示例(安装时渲染):
|
|
10
10
|
```json
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@deepstorm/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"description": "DeepStorm CLI — 一键配置项目开发环境",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "billkang",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"dotenv": "^17.4.2",
|
|
17
17
|
"handlebars": "^4.7.8",
|
|
18
18
|
"js-yaml": "^4.1.0",
|
|
19
|
-
"@deepstorm/pilot": "^0.
|
|
19
|
+
"@deepstorm/pilot": "^0.8.0"
|
|
20
20
|
},
|
|
21
21
|
"devDependencies": {
|
|
22
22
|
"@types/node": "^22.0.0",
|