@specpow/framework 0.5.9 → 0.5.11
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/CHANGELOG.md +623 -623
- package/LICENSE +21 -21
- package/bin/specpow.js +9 -9
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +4 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/apply.d.ts.map +1 -1
- package/dist/commands/apply.js +12 -11
- package/dist/commands/apply.js.map +1 -1
- package/dist/commands/archive.d.ts.map +1 -1
- package/dist/commands/archive.js +30 -3
- package/dist/commands/archive.js.map +1 -1
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +5 -1
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +29 -10
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/execute.d.ts.map +1 -1
- package/dist/commands/execute.js +5 -2
- package/dist/commands/execute.js.map +1 -1
- package/dist/commands/explore.d.ts.map +1 -1
- package/dist/commands/explore.js +8 -10
- package/dist/commands/explore.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +6 -3
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/propose.d.ts.map +1 -1
- package/dist/commands/propose.js +4 -3
- package/dist/commands/propose.js.map +1 -1
- package/dist/commands/schema.d.ts.map +1 -1
- package/dist/commands/schema.js +5 -2
- package/dist/commands/schema.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +17 -11
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/store.d.ts.map +1 -1
- package/dist/commands/store.js +8 -6
- package/dist/commands/store.js.map +1 -1
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +3 -1
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/validate-specs.d.ts.map +1 -1
- package/dist/commands/validate-specs.js +8 -5
- package/dist/commands/validate-specs.js.map +1 -1
- package/dist/commands/verify.d.ts.map +1 -1
- package/dist/commands/verify.js +17 -19
- package/dist/commands/verify.js.map +1 -1
- package/dist/commands/workflow/index.d.ts.map +1 -1
- package/dist/commands/workflow/index.js +18 -10
- package/dist/commands/workflow/index.js.map +1 -1
- package/dist/core/archive/engine.d.ts.map +1 -1
- package/dist/core/archive/engine.js +10 -6
- package/dist/core/archive/engine.js.map +1 -1
- package/dist/core/artifact-graph/resolver.d.ts.map +1 -1
- package/dist/core/artifact-graph/resolver.js +5 -2
- package/dist/core/artifact-graph/resolver.js.map +1 -1
- package/dist/core/config/config-schema.d.ts +104 -0
- package/dist/core/config/config-schema.d.ts.map +1 -1
- package/dist/core/config/config-schema.js +15 -1
- package/dist/core/config/config-schema.js.map +1 -1
- package/dist/core/hooks/session-start-hook.d.ts.map +1 -1
- package/dist/core/hooks/session-start-hook.js +76 -45
- package/dist/core/hooks/session-start-hook.js.map +1 -1
- package/dist/core/hooks/workflow-state-hook.d.ts.map +1 -1
- package/dist/core/hooks/workflow-state-hook.js +3 -1
- package/dist/core/hooks/workflow-state-hook.js.map +1 -1
- package/dist/core/init/codegraph-step.d.ts +36 -0
- package/dist/core/init/codegraph-step.d.ts.map +1 -0
- package/dist/core/init/codegraph-step.js +109 -0
- package/dist/core/init/codegraph-step.js.map +1 -0
- package/dist/core/init/engine.d.ts +2 -2
- package/dist/core/init/engine.d.ts.map +1 -1
- package/dist/core/init/engine.js +28 -14
- package/dist/core/init/engine.js.map +1 -1
- package/dist/core/memory/adapters/sqlite-adapter.js +55 -55
- package/dist/core/migration/index.d.ts.map +1 -1
- package/dist/core/migration/index.js +128 -4
- package/dist/core/migration/index.js.map +1 -1
- package/dist/core/store/index.d.ts +4 -3
- package/dist/core/store/index.d.ts.map +1 -1
- package/dist/core/store/index.js +7 -7
- package/dist/core/store/index.js.map +1 -1
- package/dist/core/task-parser.d.ts +17 -0
- package/dist/core/task-parser.d.ts.map +1 -0
- package/dist/core/task-parser.js +59 -0
- package/dist/core/task-parser.js.map +1 -0
- package/dist/core/templates/index.d.ts +1 -1
- package/dist/core/templates/index.d.ts.map +1 -1
- package/dist/core/templates/index.js +11 -6
- package/dist/core/templates/index.js.map +1 -1
- package/dist/core/workflow-state.d.ts +1 -1
- package/dist/core/workflow-state.d.ts.map +1 -1
- package/dist/core/workflow-state.js +10 -5
- package/dist/core/workflow-state.js.map +1 -1
- package/dist/templates/claude-commands/specpow-apply.md +23 -23
- package/dist/templates/claude-commands/specpow-archive.md +22 -22
- package/dist/templates/claude-commands/specpow-propose.md +27 -27
- package/dist/templates/claude-commands/specpow-status.md +22 -22
- package/dist/templates/claude-commands/specpow-validate-specs.md +28 -28
- package/dist/templates/claude-commands/specpow-verify.md +21 -21
- package/dist/templates/claude-commands/specpow.md +34 -34
- package/package.json +121 -122
- package/.specpow/agents/controller/sdd-controller.md +0 -55
- package/.specpow/agents/execution/java-codegen-agent.md +0 -39
- package/.specpow/agents/execution/ui-codegen-agent.md +0 -32
- package/.specpow/agents/ops/deploy-agent.md +0 -181
- package/.specpow/agents/planning/db-designer-agent.md +0 -30
- package/.specpow/agents/planning/prd-agent.md +0 -31
- package/.specpow/agents/quality/review-agent.md +0 -36
- package/.specpow/agents/quality/test-agent.md +0 -33
- package/.specpow/hooks/hooks.json +0 -30
- package/.specpow/hooks/run-hook.cmd +0 -19
- package/.specpow/hooks/session-start +0 -62
- package/.specpow/hooks/workflow-state +0 -150
- package/.specpow/schemas/bug-fix/schema.yaml +0 -64
- package/.specpow/schemas/bug-fix/templates/analysis.md +0 -43
- package/.specpow/schemas/bug-fix/templates/fix-plan.md +0 -19
- package/.specpow/schemas/bug-fix/templates/proposal.md +0 -30
- package/.specpow/schemas/crud-module/schema.yaml +0 -65
- package/.specpow/schemas/crud-module/templates/design.md +0 -36
- package/.specpow/schemas/crud-module/templates/proposal.md +0 -30
- package/.specpow/schemas/crud-module/templates/spec.md +0 -38
- package/.specpow/schemas/crud-module/templates/tasks.md +0 -57
- package/.specpow/schemas/spec-driven/schema.yaml +0 -87
- package/.specpow/schemas/spec-driven/templates/design.md +0 -54
- package/.specpow/schemas/spec-driven/templates/proposal.md +0 -31
- package/.specpow/schemas/spec-driven/templates/spec.md +0 -42
- package/.specpow/schemas/spec-driven/templates/tasks.md +0 -98
- package/.specpow/skills/business-code-review/SKILL.md +0 -78
- package/.specpow/skills/business-db-design/SKILL.md +0 -74
- package/.specpow/skills/business-deploy-check/SKILL.md +0 -72
- package/.specpow/skills/business-doc-sync/SKILL.md +0 -72
- package/.specpow/skills/business-java-codegen/SKILL.md +0 -97
- package/.specpow/skills/business-menu-register/SKILL.md +0 -63
- package/.specpow/skills/business-prd-writer/SKILL.md +0 -80
- package/.specpow/skills/business-test-gen/SKILL.md +0 -82
- package/.specpow/skills/business-ui-codegen/SKILL.md +0 -104
- package/.specpow/skills/cli-router/SKILL.md +0 -108
- package/.specpow/skills/execution-finish-branch/SKILL.md +0 -58
- package/.specpow/skills/execution-git-worktrees/SKILL.md +0 -48
- package/.specpow/skills/execution-parallel-agents/SKILL.md +0 -46
- package/.specpow/skills/execution-receiving-review/SKILL.md +0 -47
- package/.specpow/skills/execution-requesting-review/SKILL.md +0 -51
- package/.specpow/skills/execution-sdd-orchestrator/SKILL.md +0 -366
- package/.specpow/skills/execution-subagent-dispatch/SKILL.md +0 -295
- package/.specpow/skills/execution-subagent-driven-dev/SKILL.md +0 -143
- package/.specpow/skills/execution-systematic-debugging/SKILL.md +0 -95
- package/.specpow/skills/execution-tdd/SKILL.md +0 -74
- package/.specpow/skills/execution-verification-before-completion/SKILL.md +0 -75
- package/.specpow/skills/meta-create-skill/SKILL.md +0 -374
- package/.specpow/skills/meta-using-skills/SKILL.md +0 -97
- package/.specpow/skills/meta-writing-skills/SKILL.md +0 -66
- package/.specpow/skills/planning-apply-change/SKILL.md +0 -194
- package/.specpow/skills/planning-archive-change/SKILL.md +0 -43
- package/.specpow/skills/planning-explore/SKILL.md +0 -103
- package/.specpow/skills/planning-onboard/SKILL.md +0 -61
- package/.specpow/skills/planning-propose/SKILL.md +0 -140
- package/.specpow/skills/planning-update-change/SKILL.md +0 -45
- package/.specpow/skills/planning-verify-change/SKILL.md +0 -58
- package/.specpow/skills/planning-write-design/SKILL.md +0 -59
- package/.specpow/skills/planning-write-plans/SKILL.md +0 -55
- package/.specpow/skills/planning-write-specs/SKILL.md +0 -91
- package/.specpow/skills/using-specpow/SKILL.md +0 -232
|
@@ -13,8 +13,10 @@
|
|
|
13
13
|
import { existsSync, readdirSync } from 'fs';
|
|
14
14
|
import { join } from 'path';
|
|
15
15
|
import { generateWorkflowStateTag, } from '../workflow-state.js';
|
|
16
|
+
import { GlobalConfigManager } from '../config/global-config.js';
|
|
16
17
|
function detectActiveChange(projectRoot) {
|
|
17
|
-
const
|
|
18
|
+
const config = new GlobalConfigManager(projectRoot).load();
|
|
19
|
+
const changesDir = join(projectRoot, config.paths.changesDir);
|
|
18
20
|
if (!existsSync(changesDir))
|
|
19
21
|
return null;
|
|
20
22
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-state-hook.js","sourceRoot":"","sources":["../../../src/core/hooks/workflow-state-hook.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,EACL,wBAAwB,GAEzB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"workflow-state-hook.js","sourceRoot":"","sources":["../../../src/core/hooks/workflow-state-hook.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CodeGraph Integration Step
|
|
3
|
+
*
|
|
4
|
+
* specpow init 流程中的 CodeGraph 集成步骤:
|
|
5
|
+
* 1. 检测/安装 codegraph CLI
|
|
6
|
+
* 2. 映射 SpecPow 检测到的 AI 工具 → codegraph target
|
|
7
|
+
* 3. 执行 codegraph install --location local
|
|
8
|
+
* 4. 提醒用户手动运行 codegraph init
|
|
9
|
+
*
|
|
10
|
+
* 所有步骤非阻塞,失败仅打印警告。
|
|
11
|
+
*/
|
|
12
|
+
import type { DetectedTool } from './engine.js';
|
|
13
|
+
export interface CodeGraphResult {
|
|
14
|
+
success: boolean;
|
|
15
|
+
targets: string[];
|
|
16
|
+
warning?: string;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* 检测 codegraph CLI 是否在 PATH 中
|
|
20
|
+
*/
|
|
21
|
+
export declare function isCodeGraphInstalled(): boolean;
|
|
22
|
+
/**
|
|
23
|
+
* 通过 npm 全局安装 codegraph CLI
|
|
24
|
+
*/
|
|
25
|
+
export declare function installCodeGraphCLI(): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* CodeGraph 集成主函数
|
|
28
|
+
*
|
|
29
|
+
* 在 specpow init 末尾调用:
|
|
30
|
+
* 1. 检测/安装 codegraph CLI
|
|
31
|
+
* 2. 映射 AI 工具 → codegraph targets
|
|
32
|
+
* 3. 执行 codegraph install --location local
|
|
33
|
+
* 4. 输出提醒信息
|
|
34
|
+
*/
|
|
35
|
+
export declare function integrateCodeGraph(projectRoot: string, detectedTools: DetectedTool[], quiet: boolean): CodeGraphResult;
|
|
36
|
+
//# sourceMappingURL=codegraph-step.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codegraph-step.d.ts","sourceRoot":"","sources":["../../../src/core/init/codegraph-step.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAMhD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAkBD;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,OAAO,CAO9C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,OAAO,CAU7C;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,YAAY,EAAE,EAC7B,KAAK,EAAE,OAAO,GACb,eAAe,CAqDjB"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CodeGraph Integration Step
|
|
3
|
+
*
|
|
4
|
+
* specpow init 流程中的 CodeGraph 集成步骤:
|
|
5
|
+
* 1. 检测/安装 codegraph CLI
|
|
6
|
+
* 2. 映射 SpecPow 检测到的 AI 工具 → codegraph target
|
|
7
|
+
* 3. 执行 codegraph install --location local
|
|
8
|
+
* 4. 提醒用户手动运行 codegraph init
|
|
9
|
+
*
|
|
10
|
+
* 所有步骤非阻塞,失败仅打印警告。
|
|
11
|
+
*/
|
|
12
|
+
import { execSync } from 'child_process';
|
|
13
|
+
// ============================================================
|
|
14
|
+
// SpecPow toolId → codegraph target 映射
|
|
15
|
+
// ============================================================
|
|
16
|
+
const CODEGRAPH_TARGET_MAP = {
|
|
17
|
+
claude: 'claude',
|
|
18
|
+
cursor: 'cursor',
|
|
19
|
+
codex: 'codex',
|
|
20
|
+
opencode: 'opencode',
|
|
21
|
+
// copilot, gemini, kimi, pi — codegraph 不支持,静默跳过
|
|
22
|
+
};
|
|
23
|
+
// ============================================================
|
|
24
|
+
// 核心函数
|
|
25
|
+
// ============================================================
|
|
26
|
+
/**
|
|
27
|
+
* 检测 codegraph CLI 是否在 PATH 中
|
|
28
|
+
*/
|
|
29
|
+
export function isCodeGraphInstalled() {
|
|
30
|
+
try {
|
|
31
|
+
execSync('codegraph --version', { stdio: 'ignore' });
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* 通过 npm 全局安装 codegraph CLI
|
|
40
|
+
*/
|
|
41
|
+
export function installCodeGraphCLI() {
|
|
42
|
+
try {
|
|
43
|
+
execSync('npm install -g @colbymchenry/codegraph', {
|
|
44
|
+
stdio: 'pipe',
|
|
45
|
+
timeout: 120_000,
|
|
46
|
+
});
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
49
|
+
catch {
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* CodeGraph 集成主函数
|
|
55
|
+
*
|
|
56
|
+
* 在 specpow init 末尾调用:
|
|
57
|
+
* 1. 检测/安装 codegraph CLI
|
|
58
|
+
* 2. 映射 AI 工具 → codegraph targets
|
|
59
|
+
* 3. 执行 codegraph install --location local
|
|
60
|
+
* 4. 输出提醒信息
|
|
61
|
+
*/
|
|
62
|
+
export function integrateCodeGraph(projectRoot, detectedTools, quiet) {
|
|
63
|
+
// Step 1: 检测/安装 codegraph CLI
|
|
64
|
+
if (!isCodeGraphInstalled()) {
|
|
65
|
+
if (!quiet) {
|
|
66
|
+
console.log('\n📦 安装 CodeGraph CLI...');
|
|
67
|
+
}
|
|
68
|
+
if (!installCodeGraphCLI()) {
|
|
69
|
+
return {
|
|
70
|
+
success: false,
|
|
71
|
+
targets: [],
|
|
72
|
+
warning: 'CodeGraph CLI 安装失败,跳过集成。请手动运行: npm install -g @colbymchenry/codegraph',
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
if (!quiet) {
|
|
76
|
+
console.log(' ✓ CodeGraph CLI 安装成功');
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
// Step 2: 映射 AI 工具 → codegraph targets
|
|
80
|
+
const availableTools = detectedTools
|
|
81
|
+
.filter(t => t.available && CODEGRAPH_TARGET_MAP[t.toolId])
|
|
82
|
+
.map(t => CODEGRAPH_TARGET_MAP[t.toolId]);
|
|
83
|
+
if (availableTools.length === 0) {
|
|
84
|
+
return {
|
|
85
|
+
success: false,
|
|
86
|
+
targets: [],
|
|
87
|
+
warning: undefined, // 无可注册 target 时静默跳过,不报警告
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
// Step 3: 执行 MCP 注册(local 级别)
|
|
91
|
+
const targetStr = availableTools.join(',');
|
|
92
|
+
try {
|
|
93
|
+
execSync(`codegraph install --target ${targetStr} --location local --yes`, { cwd: projectRoot, stdio: 'pipe', timeout: 60_000 });
|
|
94
|
+
}
|
|
95
|
+
catch {
|
|
96
|
+
return {
|
|
97
|
+
success: false,
|
|
98
|
+
targets: availableTools,
|
|
99
|
+
warning: 'CodeGraph MCP 注册失败,请手动运行: codegraph install',
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
// Step 4: 输出提醒
|
|
103
|
+
if (!quiet) {
|
|
104
|
+
console.log(`\n ✅ CodeGraph MCP 已注册到 [${availableTools.join(', ')}]`);
|
|
105
|
+
console.log(' 💡 运行 `codegraph init` 构建代码索引以提升代码搜索精准度\n');
|
|
106
|
+
}
|
|
107
|
+
return { success: true, targets: availableTools };
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=codegraph-step.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codegraph-step.js","sourceRoot":"","sources":["../../../src/core/init/codegraph-step.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,9 +49,9 @@ export declare class InitEngine {
|
|
|
49
49
|
constructor(projectRoot: string);
|
|
50
50
|
/**
|
|
51
51
|
* 执行初始化
|
|
52
|
-
*
|
|
52
|
+
* Phase 7 为 CodeGraph 集成(异步),其余为同步操作
|
|
53
53
|
*/
|
|
54
|
-
initialize(options?: InitOptions): InitResult
|
|
54
|
+
initialize(options?: InitOptions): Promise<InitResult>;
|
|
55
55
|
/**
|
|
56
56
|
* 检测项目中的 AI 工具
|
|
57
57
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/core/init/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/core/init/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAWH,MAAM,WAAW,WAAW;IAC1B,WAAW;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW;IACX,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,UAAU;IACV,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,cAAc;IACd,OAAO,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;IAC5B,WAAW;IACX,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAMD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B,CASA,CAAC;AAMF,qBAAa,UAAU;IACrB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAgB;gBAEpB,WAAW,EAAE,MAAM;IAI/B;;;OAGG;IACG,UAAU,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAgEhE;;OAEG;IACH,WAAW,IAAI,YAAY,EAAE;IAiB7B;;OAEG;IACH,cAAc,IAAI,YAAY,EAAE;IAIhC;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE;IAqBpE,OAAO,CAAC,eAAe;IAQvB,OAAO,CAAC,wBAAwB;IAiChC,OAAO,CAAC,uBAAuB;IAS/B,OAAO,CAAC,oBAAoB;CA6C7B"}
|
package/dist/core/init/engine.js
CHANGED
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
import { existsSync, mkdirSync, readdirSync, writeFileSync } from 'fs';
|
|
15
15
|
import { join } from 'path';
|
|
16
16
|
import { GlobalConfigManager } from '../config/global-config.js';
|
|
17
|
+
import { integrateCodeGraph } from './codegraph-step.js';
|
|
17
18
|
// ============================================================
|
|
18
19
|
// 已支持的工具定义
|
|
19
20
|
// ============================================================
|
|
@@ -38,9 +39,9 @@ export class InitEngine {
|
|
|
38
39
|
}
|
|
39
40
|
/**
|
|
40
41
|
* 执行初始化
|
|
41
|
-
*
|
|
42
|
+
* Phase 7 为 CodeGraph 集成(异步),其余为同步操作
|
|
42
43
|
*/
|
|
43
|
-
initialize(options = {}) {
|
|
44
|
+
async initialize(options = {}) {
|
|
44
45
|
this.warnings = [];
|
|
45
46
|
const configMgr = new GlobalConfigManager(this.projectRoot);
|
|
46
47
|
// Phase 1: 验证项目状态
|
|
@@ -75,6 +76,16 @@ export class InitEngine {
|
|
|
75
76
|
const skillsGenerated = this.generateSampleSkills();
|
|
76
77
|
// Phase 6: 创建初始 openspec 目录
|
|
77
78
|
this.createOpenSpecStructure();
|
|
79
|
+
// Phase 7: CodeGraph 集成(非阻塞,失败仅记录警告)
|
|
80
|
+
try {
|
|
81
|
+
const codegraphResult = integrateCodeGraph(this.projectRoot, detectedTools, !!options.quiet);
|
|
82
|
+
if (codegraphResult.warning) {
|
|
83
|
+
this.warnings.push(codegraphResult.warning);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
catch (err) {
|
|
87
|
+
this.warnings.push(`CodeGraph 集成失败: ${err.message}`);
|
|
88
|
+
}
|
|
78
89
|
return {
|
|
79
90
|
success: true,
|
|
80
91
|
toolsDetected: detectedTools,
|
|
@@ -134,19 +145,21 @@ export class InitEngine {
|
|
|
134
145
|
createDirectoryStructure() {
|
|
135
146
|
const dirs = [
|
|
136
147
|
join(this.projectRoot, '.specpow'),
|
|
137
|
-
join(this.projectRoot, '.specpow', '
|
|
138
|
-
join(this.projectRoot, '.specpow', '
|
|
139
|
-
join(this.projectRoot, '.specpow', '
|
|
140
|
-
join(this.projectRoot, '.specpow', '
|
|
141
|
-
join(this.projectRoot, '.specpow', 'openspec', 'changes'),
|
|
142
|
-
join(this.projectRoot, '.specpow', 'openspec', 'archive'),
|
|
143
|
-
join(this.projectRoot, '.specpow', 'openspec', 'docs'),
|
|
144
|
-
join(this.projectRoot, '.specpow', 'skills'),
|
|
145
|
-
join(this.projectRoot, '.specpow', 'workflows'),
|
|
148
|
+
join(this.projectRoot, '.specpow', 'changes'),
|
|
149
|
+
join(this.projectRoot, '.specpow', 'specs'),
|
|
150
|
+
join(this.projectRoot, '.specpow', 'archive'),
|
|
151
|
+
join(this.projectRoot, '.specpow', 'docs'),
|
|
146
152
|
join(this.projectRoot, '.specpow', 'schemas'),
|
|
147
153
|
join(this.projectRoot, '.specpow', 'schemas', 'spec-driven'),
|
|
148
154
|
join(this.projectRoot, '.specpow', 'schemas', 'spec-driven', 'templates'),
|
|
149
|
-
join(this.projectRoot, '.specpow', '
|
|
155
|
+
join(this.projectRoot, '.specpow', 'skills'),
|
|
156
|
+
join(this.projectRoot, '.specpow', 'memory'),
|
|
157
|
+
join(this.projectRoot, '.specpow', 'memory', 'sessions'),
|
|
158
|
+
join(this.projectRoot, '.specpow', 'memory', 'archives'),
|
|
159
|
+
join(this.projectRoot, '.specpow', 'sdd'),
|
|
160
|
+
join(this.projectRoot, '.specpow', 'workflow-logs'),
|
|
161
|
+
join(this.projectRoot, '.specpow', 'workflows'),
|
|
162
|
+
join(this.projectRoot, '.specpow', 'ledger'),
|
|
150
163
|
join(this.projectRoot, '.claude'),
|
|
151
164
|
join(this.projectRoot, '.claude', 'commands'),
|
|
152
165
|
];
|
|
@@ -160,7 +173,7 @@ export class InitEngine {
|
|
|
160
173
|
return created;
|
|
161
174
|
}
|
|
162
175
|
createOpenSpecStructure() {
|
|
163
|
-
const changesDir = join(this.projectRoot, '.specpow', '
|
|
176
|
+
const changesDir = join(this.projectRoot, '.specpow', 'changes');
|
|
164
177
|
if (existsSync(changesDir) && readdirSync(changesDir).length === 0) {
|
|
165
178
|
// 创建 .gitkeep
|
|
166
179
|
const gitkeep = join(changesDir, '.gitkeep');
|
|
@@ -168,7 +181,8 @@ export class InitEngine {
|
|
|
168
181
|
}
|
|
169
182
|
}
|
|
170
183
|
generateSampleSkills() {
|
|
171
|
-
const
|
|
184
|
+
const config = new GlobalConfigManager(this.projectRoot).load();
|
|
185
|
+
const skillsDir = join(this.projectRoot, config.paths.skillsDir);
|
|
172
186
|
if (!existsSync(skillsDir)) {
|
|
173
187
|
mkdirSync(skillsDir, { recursive: true });
|
|
174
188
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/core/init/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACvE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/core/init/engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,85 +40,85 @@ export class SqliteMemoryStore {
|
|
|
40
40
|
listSessionIds: null,
|
|
41
41
|
};
|
|
42
42
|
prepareStatements() {
|
|
43
|
-
this.stmts.insertEntry = this.db.prepare(`
|
|
44
|
-
INSERT OR REPLACE INTO memory_entries (id, timestamp, session_id, phase, content, keywords, relevance, metadata)
|
|
45
|
-
VALUES (?, ?, ?, ?, ?, ?, ?, ?)
|
|
43
|
+
this.stmts.insertEntry = this.db.prepare(`
|
|
44
|
+
INSERT OR REPLACE INTO memory_entries (id, timestamp, session_id, phase, content, keywords, relevance, metadata)
|
|
45
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?)
|
|
46
46
|
`);
|
|
47
|
-
this.stmts.insertKeyword = this.db.prepare(`
|
|
48
|
-
INSERT OR IGNORE INTO keyword_index (keyword, entry_id) VALUES (?, ?)
|
|
47
|
+
this.stmts.insertKeyword = this.db.prepare(`
|
|
48
|
+
INSERT OR IGNORE INTO keyword_index (keyword, entry_id) VALUES (?, ?)
|
|
49
49
|
`);
|
|
50
|
-
this.stmts.insertPhase = this.db.prepare(`
|
|
51
|
-
INSERT OR IGNORE INTO phase_index (phase, entry_id) VALUES (?, ?)
|
|
50
|
+
this.stmts.insertPhase = this.db.prepare(`
|
|
51
|
+
INSERT OR IGNORE INTO phase_index (phase, entry_id) VALUES (?, ?)
|
|
52
52
|
`);
|
|
53
|
-
this.stmts.insertSession = this.db.prepare(`
|
|
54
|
-
INSERT OR IGNORE INTO session_index (session_id, entry_id) VALUES (?, ?)
|
|
53
|
+
this.stmts.insertSession = this.db.prepare(`
|
|
54
|
+
INSERT OR IGNORE INTO session_index (session_id, entry_id) VALUES (?, ?)
|
|
55
55
|
`);
|
|
56
56
|
this.stmts.loadEntries = this.db.prepare('SELECT * FROM memory_entries ORDER BY timestamp');
|
|
57
57
|
this.stmts.loadKeywords = this.db.prepare('SELECT keyword, entry_id FROM keyword_index');
|
|
58
58
|
this.stmts.loadPhases = this.db.prepare('SELECT phase, entry_id FROM phase_index');
|
|
59
59
|
this.stmts.loadSessions = this.db.prepare('SELECT session_id, entry_id FROM session_index');
|
|
60
60
|
this.stmts.loadSessionLog = this.db.prepare('SELECT log_data FROM session_logs WHERE session_id = ?');
|
|
61
|
-
this.stmts.saveSessionLog = this.db.prepare(`
|
|
62
|
-
INSERT OR REPLACE INTO session_logs (session_id, log_data, created_at)
|
|
63
|
-
VALUES (?, ?, ?)
|
|
61
|
+
this.stmts.saveSessionLog = this.db.prepare(`
|
|
62
|
+
INSERT OR REPLACE INTO session_logs (session_id, log_data, created_at)
|
|
63
|
+
VALUES (?, ?, ?)
|
|
64
64
|
`);
|
|
65
65
|
this.stmts.listSessionIds = this.db.prepare('SELECT session_id FROM session_logs');
|
|
66
66
|
}
|
|
67
67
|
initSchema() {
|
|
68
68
|
// 创建记忆条目表
|
|
69
|
-
this.db.exec(`
|
|
70
|
-
CREATE TABLE IF NOT EXISTS memory_entries (
|
|
71
|
-
id TEXT PRIMARY KEY,
|
|
72
|
-
timestamp INTEGER NOT NULL,
|
|
73
|
-
session_id TEXT NOT NULL,
|
|
74
|
-
phase TEXT NOT NULL,
|
|
75
|
-
content TEXT NOT NULL,
|
|
76
|
-
keywords TEXT NOT NULL,
|
|
77
|
-
relevance REAL NOT NULL,
|
|
78
|
-
metadata TEXT NOT NULL
|
|
79
|
-
)
|
|
69
|
+
this.db.exec(`
|
|
70
|
+
CREATE TABLE IF NOT EXISTS memory_entries (
|
|
71
|
+
id TEXT PRIMARY KEY,
|
|
72
|
+
timestamp INTEGER NOT NULL,
|
|
73
|
+
session_id TEXT NOT NULL,
|
|
74
|
+
phase TEXT NOT NULL,
|
|
75
|
+
content TEXT NOT NULL,
|
|
76
|
+
keywords TEXT NOT NULL,
|
|
77
|
+
relevance REAL NOT NULL,
|
|
78
|
+
metadata TEXT NOT NULL
|
|
79
|
+
)
|
|
80
80
|
`);
|
|
81
81
|
// 创建关键词索引表
|
|
82
|
-
this.db.exec(`
|
|
83
|
-
CREATE TABLE IF NOT EXISTS keyword_index (
|
|
84
|
-
keyword TEXT NOT NULL,
|
|
85
|
-
entry_id TEXT NOT NULL,
|
|
86
|
-
PRIMARY KEY (keyword, entry_id),
|
|
87
|
-
FOREIGN KEY (entry_id) REFERENCES memory_entries(id) ON DELETE CASCADE
|
|
88
|
-
)
|
|
82
|
+
this.db.exec(`
|
|
83
|
+
CREATE TABLE IF NOT EXISTS keyword_index (
|
|
84
|
+
keyword TEXT NOT NULL,
|
|
85
|
+
entry_id TEXT NOT NULL,
|
|
86
|
+
PRIMARY KEY (keyword, entry_id),
|
|
87
|
+
FOREIGN KEY (entry_id) REFERENCES memory_entries(id) ON DELETE CASCADE
|
|
88
|
+
)
|
|
89
89
|
`);
|
|
90
90
|
// 创建阶段索引表
|
|
91
|
-
this.db.exec(`
|
|
92
|
-
CREATE TABLE IF NOT EXISTS phase_index (
|
|
93
|
-
phase TEXT NOT NULL,
|
|
94
|
-
entry_id TEXT NOT NULL,
|
|
95
|
-
PRIMARY KEY (phase, entry_id),
|
|
96
|
-
FOREIGN KEY (entry_id) REFERENCES memory_entries(id) ON DELETE CASCADE
|
|
97
|
-
)
|
|
91
|
+
this.db.exec(`
|
|
92
|
+
CREATE TABLE IF NOT EXISTS phase_index (
|
|
93
|
+
phase TEXT NOT NULL,
|
|
94
|
+
entry_id TEXT NOT NULL,
|
|
95
|
+
PRIMARY KEY (phase, entry_id),
|
|
96
|
+
FOREIGN KEY (entry_id) REFERENCES memory_entries(id) ON DELETE CASCADE
|
|
97
|
+
)
|
|
98
98
|
`);
|
|
99
99
|
// 创建会话索引表
|
|
100
|
-
this.db.exec(`
|
|
101
|
-
CREATE TABLE IF NOT EXISTS session_index (
|
|
102
|
-
session_id TEXT NOT NULL,
|
|
103
|
-
entry_id TEXT NOT NULL,
|
|
104
|
-
PRIMARY KEY (session_id, entry_id),
|
|
105
|
-
FOREIGN KEY (entry_id) REFERENCES memory_entries(id) ON DELETE CASCADE
|
|
106
|
-
)
|
|
100
|
+
this.db.exec(`
|
|
101
|
+
CREATE TABLE IF NOT EXISTS session_index (
|
|
102
|
+
session_id TEXT NOT NULL,
|
|
103
|
+
entry_id TEXT NOT NULL,
|
|
104
|
+
PRIMARY KEY (session_id, entry_id),
|
|
105
|
+
FOREIGN KEY (entry_id) REFERENCES memory_entries(id) ON DELETE CASCADE
|
|
106
|
+
)
|
|
107
107
|
`);
|
|
108
108
|
// 创建会话日志表
|
|
109
|
-
this.db.exec(`
|
|
110
|
-
CREATE TABLE IF NOT EXISTS session_logs (
|
|
111
|
-
session_id TEXT PRIMARY KEY,
|
|
112
|
-
log_data TEXT NOT NULL,
|
|
113
|
-
created_at INTEGER NOT NULL
|
|
114
|
-
)
|
|
109
|
+
this.db.exec(`
|
|
110
|
+
CREATE TABLE IF NOT EXISTS session_logs (
|
|
111
|
+
session_id TEXT PRIMARY KEY,
|
|
112
|
+
log_data TEXT NOT NULL,
|
|
113
|
+
created_at INTEGER NOT NULL
|
|
114
|
+
)
|
|
115
115
|
`);
|
|
116
116
|
// 创建索引以加速查询
|
|
117
|
-
this.db.exec(`
|
|
118
|
-
CREATE INDEX IF NOT EXISTS idx_entries_timestamp ON memory_entries(timestamp);
|
|
119
|
-
CREATE INDEX IF NOT EXISTS idx_entries_session ON memory_entries(session_id);
|
|
120
|
-
CREATE INDEX IF NOT EXISTS idx_entries_phase ON memory_entries(phase);
|
|
121
|
-
CREATE INDEX IF NOT EXISTS idx_keyword_keyword ON keyword_index(keyword);
|
|
117
|
+
this.db.exec(`
|
|
118
|
+
CREATE INDEX IF NOT EXISTS idx_entries_timestamp ON memory_entries(timestamp);
|
|
119
|
+
CREATE INDEX IF NOT EXISTS idx_entries_session ON memory_entries(session_id);
|
|
120
|
+
CREATE INDEX IF NOT EXISTS idx_entries_phase ON memory_entries(phase);
|
|
121
|
+
CREATE INDEX IF NOT EXISTS idx_keyword_keyword ON keyword_index(keyword);
|
|
122
122
|
`);
|
|
123
123
|
}
|
|
124
124
|
async load() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/migration/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAWH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/D;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACpG,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC9F,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;CACvB;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/migration/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAWH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC/D;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACpG,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC9F,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;CACvB;AAiUD,qBAAa,eAAe;IAC1B,OAAO,CAAC,WAAW,CAAS;gBAEhB,WAAW,EAAE,MAAM;IAI/B;;OAEG;IACH,iBAAiB,IAAI,MAAM;IAM3B;;;;OAIG;IACH,oBAAoB,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,aAAa,EAAE;IAY7D;;;;OAIG;IACH,MAAM,CAAC,aAAa,GAAE,MAAgB,GAAG,YAAY;IAqBrD;;;;OAIG;IACH,YAAY,IAAI,MAAM,GAAG,IAAI;IAyB7B;;OAEG;IACG,GAAG,CAAC,aAAa,GAAE,MAAgB,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,OAAO,CAAA;KAAO,GAAG,OAAO,CAAC,eAAe,CAAC;IA2F1H;;OAEG;IACG,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ9C;;OAEG;IACH,cAAc,IAAI,aAAa,EAAE;CAGlC"}
|