@rdmind/rdmind 0.0.14-alpha.0 → 0.0.14-alpha.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.
- package/dist/package.json +3 -3
- package/dist/src/generated/git-commit.d.ts +1 -1
- package/dist/src/generated/git-commit.js +1 -1
- package/dist/src/ui/commands/techDesignCommand.js +30 -3
- package/dist/src/ui/commands/techDesignCommand.js.map +1 -1
- package/dist/src/ui/commands/techDesignCommand.test.js +33 -0
- package/dist/src/ui/commands/techDesignCommand.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rdmind/rdmind",
|
|
3
|
-
"version": "0.0.14-alpha.
|
|
3
|
+
"version": "0.0.14-alpha.1",
|
|
4
4
|
"description": "RDMind",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -26,12 +26,12 @@
|
|
|
26
26
|
"access": "public"
|
|
27
27
|
},
|
|
28
28
|
"config": {
|
|
29
|
-
"sandboxImageUri": "ghcr.io/qwenlm/qwen-code:0.0.14-alpha.
|
|
29
|
+
"sandboxImageUri": "ghcr.io/qwenlm/qwen-code:0.0.14-alpha.1"
|
|
30
30
|
},
|
|
31
31
|
"dependencies": {
|
|
32
32
|
"@google/genai": "1.9.0",
|
|
33
33
|
"@iarna/toml": "^2.2.5",
|
|
34
|
-
"@rdmind/rdmind-core": "^0.0.14-alpha.
|
|
34
|
+
"@rdmind/rdmind-core": "^0.0.14-alpha.1",
|
|
35
35
|
"@modelcontextprotocol/sdk": "^1.15.1",
|
|
36
36
|
"@types/update-notifier": "^6.0.8",
|
|
37
37
|
"command-exists": "^1.2.9",
|
|
@@ -6,5 +6,5 @@
|
|
|
6
6
|
// This file is auto-generated by the build script (scripts/generate-git-commit-info.js)
|
|
7
7
|
// Do not edit this file manually.
|
|
8
8
|
export const GIT_COMMIT_INFO = 'cfac195a';
|
|
9
|
-
export const CLI_VERSION = '0.0.14-alpha.
|
|
9
|
+
export const CLI_VERSION = '0.0.14-alpha.1';
|
|
10
10
|
//# sourceMappingURL=git-commit.js.map
|
|
@@ -26,18 +26,27 @@ function isGitRepository(cwd) {
|
|
|
26
26
|
* 读取技术方案模板
|
|
27
27
|
*/
|
|
28
28
|
function readTemplate() {
|
|
29
|
+
// 尝试多个可能的模板位置
|
|
29
30
|
const possiblePaths = [
|
|
30
|
-
//
|
|
31
|
+
// 1. 开发环境:packages/cli/src/ui/commands/ -> packages/cli/templates/
|
|
31
32
|
path.join(__dirname, '..', '..', '..', 'templates', 'tech-design-template.md'),
|
|
32
|
-
// npm
|
|
33
|
+
// 2. npm 安装后:node_modules/@rdmind/rdmind/dist/src/ui/commands/ -> node_modules/@rdmind/rdmind/templates/
|
|
33
34
|
path.join(__dirname, '..', '..', '..', '..', 'templates', 'tech-design-template.md'),
|
|
35
|
+
// 3. 打包后:dist/src/ui/commands/ -> templates/
|
|
36
|
+
path.join(__dirname, '..', '..', '..', '..', '..', 'templates', 'tech-design-template.md'),
|
|
37
|
+
// 4. 相对于当前工作目录
|
|
38
|
+
path.join(process.cwd(), 'node_modules', '@rdmind', 'rdmind', 'templates', 'tech-design-template.md'),
|
|
34
39
|
];
|
|
35
40
|
for (const templatePath of possiblePaths) {
|
|
36
41
|
if (fs.existsSync(templatePath)) {
|
|
37
42
|
return fs.readFileSync(templatePath, 'utf-8');
|
|
38
43
|
}
|
|
39
44
|
}
|
|
40
|
-
|
|
45
|
+
// 如果找不到,提供详细的错误信息
|
|
46
|
+
const searchedPaths = possiblePaths
|
|
47
|
+
.map((p, i) => `${i + 1}. ${p}`)
|
|
48
|
+
.join('\n');
|
|
49
|
+
throw new Error(`技术方案模板文件未找到\n\n已搜索以下路径:\n${searchedPaths}\n\n当前工作目录:${process.cwd()}\n__dirname: ${__dirname}`);
|
|
41
50
|
}
|
|
42
51
|
/**
|
|
43
52
|
* 生成技术方案子命令
|
|
@@ -73,6 +82,15 @@ const solutionCommand = {
|
|
|
73
82
|
}, Date.now());
|
|
74
83
|
return;
|
|
75
84
|
}
|
|
85
|
+
// 验证 Redoc URL 格式
|
|
86
|
+
const redocUrlPattern = /^https:\/\/docs\.xiaohongshu\.com\/doc\/[a-f0-9]+$/;
|
|
87
|
+
if (!redocUrlPattern.test(prdUrl)) {
|
|
88
|
+
context.ui.addItem({
|
|
89
|
+
type: MessageType.ERROR,
|
|
90
|
+
text: `❌ 提供的 URL 不是有效的 Redoc 文档地址\n\nURL: ${prdUrl}\n\n✅ 正确的格式:\nhttps://docs.xiaohongshu.com/doc/{doc_id}\n\n说明:\n• doc_id 必须是 32 位十六进制字符串\n• 只支持小红书 Redoc 文档\n\n示例:\nhttps://docs.xiaohongshu.com/doc/abc123def456789012345678901234ab`,
|
|
91
|
+
}, Date.now());
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
76
94
|
// 读取模板
|
|
77
95
|
let template;
|
|
78
96
|
try {
|
|
@@ -176,6 +194,15 @@ const planCommand = {
|
|
|
176
194
|
}, Date.now());
|
|
177
195
|
return;
|
|
178
196
|
}
|
|
197
|
+
// 验证 Redoc URL 格式
|
|
198
|
+
const redocUrlPattern = /^https:\/\/docs\.xiaohongshu\.com\/doc\/[a-f0-9]+$/;
|
|
199
|
+
if (!redocUrlPattern.test(techDocUrl)) {
|
|
200
|
+
context.ui.addItem({
|
|
201
|
+
type: MessageType.ERROR,
|
|
202
|
+
text: `❌ 提供的 URL 不是有效的 Redoc 文档地址\n\nURL: ${techDocUrl}\n\n✅ 正确的格式:\nhttps://docs.xiaohongshu.com/doc/{doc_id}\n\n说明:\n• doc_id 必须是 32 位十六进制字符串\n• 只支持小红书 Redoc 文档\n\n示例:\nhttps://docs.xiaohongshu.com/doc/abc123def456789012345678901234ab`,
|
|
203
|
+
}, Date.now());
|
|
204
|
+
return;
|
|
205
|
+
}
|
|
179
206
|
context.ui.addItem({
|
|
180
207
|
type: MessageType.INFO,
|
|
181
208
|
text: `📂 工作目录: ${cwd}\n📋 技术文档 URL: ${techDocUrl}\n\n🤖 正在调用 AI 生成执行计划...\n\n💡 AI 将会:\n1. 使用 redoc_fetch 工具获取技术文档内容\n2. 分析代码仓库结构和技术栈\n3. 生成详细的任务分解和执行计划\n4. 提供 AI Coding 使用指导\n5. 将文档保存到工作目录\n\n请耐心等待,这可能需要几分钟时间...`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"techDesignCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/techDesignCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAGL,WAAW,GAEZ,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C;;GAEG;AACH,SAAS,eAAe,CAAC,GAAW;IAClC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACtC,OAAO,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,YAAY;IACnB,MAAM,aAAa,GAAG;QACpB,
|
|
1
|
+
{"version":3,"file":"techDesignCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/techDesignCommand.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,5 +49,38 @@ describe('techDesignCommand', () => {
|
|
|
49
49
|
text: expect.stringContaining('未知的子命令'),
|
|
50
50
|
}), expect.any(Number));
|
|
51
51
|
});
|
|
52
|
+
describe('solution subcommand', () => {
|
|
53
|
+
it('should validate Redoc URL format', async () => {
|
|
54
|
+
const solutionCommand = techDesignCommand.subCommands?.find((cmd) => cmd.name === 'solution');
|
|
55
|
+
// 测试无效的 URL
|
|
56
|
+
await solutionCommand?.action?.(mockContext, 'https://www.google.com/search?q=test');
|
|
57
|
+
expect(mockContext.ui.addItem).toHaveBeenCalledWith(expect.objectContaining({
|
|
58
|
+
type: MessageType.ERROR,
|
|
59
|
+
text: expect.stringContaining('不是有效的 Redoc 文档地址'),
|
|
60
|
+
}), expect.any(Number));
|
|
61
|
+
});
|
|
62
|
+
it('should accept valid Redoc URL', async () => {
|
|
63
|
+
const solutionCommand = techDesignCommand.subCommands?.find((cmd) => cmd.name === 'solution');
|
|
64
|
+
// Mock config to avoid actual execution
|
|
65
|
+
mockContext.services.config = null;
|
|
66
|
+
await solutionCommand?.action?.(mockContext, 'https://docs.xiaohongshu.com/doc/abc123def456');
|
|
67
|
+
// Should show error about config not loaded (not URL validation error)
|
|
68
|
+
expect(mockContext.ui.addItem).toHaveBeenCalledWith(expect.objectContaining({
|
|
69
|
+
type: MessageType.ERROR,
|
|
70
|
+
text: expect.stringContaining('配置未加载'),
|
|
71
|
+
}), expect.any(Number));
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
describe('plan subcommand', () => {
|
|
75
|
+
it('should validate Redoc URL format', async () => {
|
|
76
|
+
const planCommand = techDesignCommand.subCommands?.find((cmd) => cmd.name === 'plan');
|
|
77
|
+
// 测试无效的 URL
|
|
78
|
+
await planCommand?.action?.(mockContext, 'https://www.google.com/search?q=test');
|
|
79
|
+
expect(mockContext.ui.addItem).toHaveBeenCalledWith(expect.objectContaining({
|
|
80
|
+
type: MessageType.ERROR,
|
|
81
|
+
text: expect.stringContaining('不是有效的 Redoc 文档地址'),
|
|
82
|
+
}), expect.any(Number));
|
|
83
|
+
});
|
|
84
|
+
});
|
|
52
85
|
});
|
|
53
86
|
//# sourceMappingURL=techDesignCommand.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"techDesignCommand.test.js","sourceRoot":"","sources":["../../../../src/ui/commands/techDesignCommand.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAElF,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,IAAI,WAA2B,CAAC;IAEhC,UAAU,CAAC,GAAG,EAAE;QACd,WAAW,GAAG,wBAAwB,CAAC;YACrC,QAAQ,EAAE;gBACR,MAAM,EAAE,EAAE;aACX;YACD,EAAE,EAAE;gBACF,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;aACjB;SAC2B,CAAC,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;QAC3B,MAAM,CAAC,iBAAiB,CAAC,CAAC,WAAW,EAAE,CAAC;QACxC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACnD,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACjC,MAAM,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;QACpD,MAAM,CAAC,iBAAiB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEtD,MAAM,eAAe,GAAG,iBAAiB,CAAC,WAAW,EAAE,GAAG,CACxD,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAClB,CAAC;QACF,MAAM,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC9C,MAAM,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sBAAsB,EAAE,GAAG,EAAE;QAC9B,MAAM,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QAElD,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,oBAAoB,CACjD,MAAM,CAAC,gBAAgB,CAAC;YACtB,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,IAAI,EAAE,MAAM,CAAC,gBAAgB,CAAC,eAAe,CAAC;SAC/C,CAAC,EACF,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CACnB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,iBAAiB,CAAC,MAAM,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QAE7D,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,oBAAoB,CACjD,MAAM,CAAC,gBAAgB,CAAC;YACtB,IAAI,EAAE,WAAW,CAAC,KAAK;YACvB,IAAI,EAAE,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC;SACxC,CAAC,EACF,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CACnB,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"techDesignCommand.test.js","sourceRoot":"","sources":["../../../../src/ui/commands/techDesignCommand.test.ts"],"names":[],"mappings":"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"}
|