@winspan/claude-forge 0.3.7 → 0.3.9

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 (61) hide show
  1. package/README.md +2 -2
  2. package/dist/autopilot/intent-engine.d.ts +7 -1
  3. package/dist/autopilot/intent-engine.d.ts.map +1 -1
  4. package/dist/autopilot/intent-engine.js +30 -3
  5. package/dist/autopilot/intent-engine.js.map +1 -1
  6. package/dist/autopilot/quality-gate.d.ts +6 -0
  7. package/dist/autopilot/quality-gate.d.ts.map +1 -1
  8. package/dist/autopilot/quality-gate.js +74 -2
  9. package/dist/autopilot/quality-gate.js.map +1 -1
  10. package/dist/cli/commands/config.d.ts.map +1 -1
  11. package/dist/cli/commands/config.js +4 -1
  12. package/dist/cli/commands/config.js.map +1 -1
  13. package/dist/cli/commands/init/project-doctor.d.ts.map +1 -1
  14. package/dist/cli/commands/init/project-doctor.js +41 -3
  15. package/dist/cli/commands/init/project-doctor.js.map +1 -1
  16. package/dist/cli/commands/pipeline.d.ts.map +1 -1
  17. package/dist/cli/commands/pipeline.js +6 -3
  18. package/dist/cli/commands/pipeline.js.map +1 -1
  19. package/dist/cli/tui.d.ts.map +1 -1
  20. package/dist/cli/tui.js +110 -85
  21. package/dist/cli/tui.js.map +1 -1
  22. package/dist/config/defaults.d.ts.map +1 -1
  23. package/dist/config/defaults.js +5 -0
  24. package/dist/config/defaults.js.map +1 -1
  25. package/dist/config/index.d.ts.map +1 -1
  26. package/dist/config/index.js +1 -0
  27. package/dist/config/index.js.map +1 -1
  28. package/dist/config/schema.d.ts +5 -0
  29. package/dist/config/schema.d.ts.map +1 -1
  30. package/dist/config/schema.js +12 -0
  31. package/dist/config/schema.js.map +1 -1
  32. package/dist/daemon/context-injector.js +1 -1
  33. package/dist/daemon/handlers/post-tool-use-handler.d.ts.map +1 -1
  34. package/dist/daemon/handlers/post-tool-use-handler.js +6 -0
  35. package/dist/daemon/handlers/post-tool-use-handler.js.map +1 -1
  36. package/dist/daemon/handlers/user-prompt-handler.d.ts +10 -3
  37. package/dist/daemon/handlers/user-prompt-handler.d.ts.map +1 -1
  38. package/dist/daemon/handlers/user-prompt-handler.js +120 -44
  39. package/dist/daemon/handlers/user-prompt-handler.js.map +1 -1
  40. package/dist/distill/index.js +1 -1
  41. package/dist/distill/index.js.map +1 -1
  42. package/dist/distill/tree-index.d.ts +40 -0
  43. package/dist/distill/tree-index.d.ts.map +1 -0
  44. package/dist/distill/tree-index.js +237 -0
  45. package/dist/distill/tree-index.js.map +1 -0
  46. package/dist/distill/writer.d.ts +3 -0
  47. package/dist/distill/writer.d.ts.map +1 -1
  48. package/dist/distill/writer.js +13 -0
  49. package/dist/distill/writer.js.map +1 -1
  50. package/dist/pipeline/index.d.ts +1 -0
  51. package/dist/pipeline/index.d.ts.map +1 -1
  52. package/dist/pipeline/index.js +1 -1
  53. package/dist/pipeline/index.js.map +1 -1
  54. package/dist/pipeline/phase-manager.d.ts +3 -0
  55. package/dist/pipeline/phase-manager.d.ts.map +1 -1
  56. package/dist/pipeline/phase-manager.js +65 -44
  57. package/dist/pipeline/phase-manager.js.map +1 -1
  58. package/dist/skill-registry/evolver/keyword-evolver.d.ts.map +1 -1
  59. package/dist/skill-registry/evolver/keyword-evolver.js +5 -1
  60. package/dist/skill-registry/evolver/keyword-evolver.js.map +1 -1
  61. package/package.json +1 -1
@@ -5,6 +5,7 @@ import { ForgeFormatter } from '../../utils/formatter.js';
5
5
  import { parsePipelineChoice, PIPELINE_OPTIONS } from '../../pipeline/pipeline-options.js';
6
6
  import { readPlanFile, getPlanFilePath, buildSessionStartPlanContext } from '../../utils/plan-reader.js';
7
7
  import { ContextInjector, INJECT_PRIORITY } from '../context-injector.js';
8
+ import { TreeIndexEngine } from '../../distill/tree-index.js';
8
9
  import fs from 'fs';
9
10
  import path from 'path';
10
11
  import os from 'os';
@@ -78,6 +79,18 @@ export class UserPromptHandler extends BaseHookHandler {
78
79
  const pipelineReply = await this.handlePipelineReply(userPrompt, event);
79
80
  if (pipelineReply !== undefined)
80
81
  return pipelineReply;
82
+ // 1.5 Pipeline 活跃时短路:只注入规范,跳过意图分析和 profile/decisions 注入
83
+ // Pipeline 运行中已通过 PreToolUse 注入阶段指令,UserPrompt 侧无需重复注入
84
+ if (this.ctx.pipelineEngine?.hasActivePipeline(event.project_path)) {
85
+ const conventionPrompt = this.ctx.conventionManager.getActivePrompt(event.project_path) ?? undefined;
86
+ logger.info('[Forge:Pipeline] Pipeline 活跃,跳过意图分析和低优先级上下文注入');
87
+ if (!conventionPrompt)
88
+ return;
89
+ return {
90
+ allow: true,
91
+ additionalContext: ForgeFormatter.wrapInQuote(conventionPrompt),
92
+ };
93
+ }
81
94
  // 2. 冷却检查
82
95
  if (!this.checkCooldown(event.project_path))
83
96
  return;
@@ -336,7 +349,7 @@ export class UserPromptHandler extends BaseHookHandler {
336
349
  return /implement|add|fix|refactor|create|write|edit|update|build|删除|修复|实现|新增|添加|编写|创建|重构|开发/i.test(requirement);
337
350
  }
338
351
  /**
339
- * 计划强制检查:检测到代码变更意图但今日无活跃计划时,注入"先写计划"指令。
352
+ * 计划强制检查:检测到代码变更意图但今日无活跃计划时,自动启动 plan mode。
340
353
  */
341
354
  checkPlanEnforcement(requirement, projectPath) {
342
355
  if (!this.isCodeChangeIntent(requirement))
@@ -345,9 +358,23 @@ export class UserPromptHandler extends BaseHookHandler {
345
358
  if (planFile?.hasInProgress || planFile?.hasIncomplete)
346
359
  return undefined;
347
360
  const planPath = getPlanFilePath(projectPath);
348
- const msg = `[Forge 计划优先]\n检测到代码变更意图,但项目 docs/ 下没有含待处理任务的计划文件。\n请先在计划文件(${planPath})中写入本次任务条目(格式:- [ ] 任务描述),再开始编码。`;
349
- logger.info(`[Forge:计划] 强制要求先写计划:${planPath}`);
350
- return { allow: true, additionalContext: msg };
361
+ const msg = `[Forge 计划优先] 检测到代码变更意图,但项目 docs/ 下没有含待处理任务的计划文件。
362
+
363
+ 正在自动启动 Plan Mode,请先规划任务步骤...`;
364
+ logger.info(`[Forge:计划] 自动启动 Plan Mode:${planPath}`);
365
+ return {
366
+ allow: true,
367
+ systemMessage: `You are now in PLAN MODE. The user wants to: "${requirement}"
368
+
369
+ Before implementing, you must:
370
+ 1. Use EnterPlanMode tool to start planning
371
+ 2. Create a detailed implementation plan in ${planPath}
372
+ 3. Break down the work into discrete tasks with clear acceptance criteria
373
+ 4. Use ExitPlanMode when the plan is complete
374
+
375
+ Do NOT write any code until the plan is approved. Start by calling EnterPlanMode.`,
376
+ additionalContext: msg
377
+ };
351
378
  }
352
379
  logAnalysis(analysis) {
353
380
  const pipelineStr = analysis.requiresPipeline ? '需要多步骤编排' : '直接执行';
@@ -436,7 +463,8 @@ export class UserPromptHandler extends BaseHookHandler {
436
463
  if (activeConventions.length > 0) {
437
464
  logger.info(`已加载项目规范:${ForgeFormatter.formatConventionSummary(activeConventions)}`);
438
465
  }
439
- const context = ForgeFormatter.wrapInQuote(ContextInjector.build({ content: this.buildPlanStartContext(event.project_path), priority: INJECT_PRIORITY.PLAN, topic: 'plan' }, { content: this.buildProfileContext(event.project_path), priority: INJECT_PRIORITY.PROFILE, topic: 'profile' }, { content: conventionPrompt, priority: INJECT_PRIORITY.CONVENTION, topic: 'convention' }, { content: autoMsg, priority: INJECT_PRIORITY.PIPELINE, topic: 'pipeline' }, { content: this.readDecisionsContext(analysis.requirement, event.project_path), priority: INJECT_PRIORITY.DECISIONS, topic: 'decisions' }));
466
+ const decisionsCtx = await this.readDecisionsContext(analysis.requirement, event.project_path);
467
+ const context = ForgeFormatter.wrapInQuote(ContextInjector.build({ content: this.buildPlanStartContext(event.project_path), priority: INJECT_PRIORITY.PLAN, topic: 'plan' }, { content: this.buildProfileContext(event.project_path), priority: INJECT_PRIORITY.PROFILE, topic: 'profile' }, { content: conventionPrompt, priority: INJECT_PRIORITY.CONVENTION, topic: 'convention' }, { content: autoMsg, priority: INJECT_PRIORITY.PIPELINE, topic: 'pipeline' }, { content: decisionsCtx, priority: INJECT_PRIORITY.DECISIONS, topic: 'decisions' }));
440
468
  if (analysis.clarifyQuestions?.length) {
441
469
  logger.info(`[Forge:Pipeline] 自动启动 + 注入澄清问题 ${analysis.clarifyQuestions.length} 个`);
442
470
  const clarify = ForgeFormatter.formatClarifyRequest(analysis.clarifyQuestions);
@@ -490,7 +518,7 @@ export class UserPromptHandler extends BaseHookHandler {
490
518
  }
491
519
  async buildSimpleResponse(analysis, card, projectPath) {
492
520
  const directive = this.ctx.intentEngine.generateDirective(analysis);
493
- const decisionsContext = this.readDecisionsContext(analysis.requirement, projectPath);
521
+ const decisionsContext = await this.readDecisionsContext(analysis.requirement, projectPath);
494
522
  const similarSessionCtx = analysis.searchKeywords?.length
495
523
  ? this.buildSimilarSessionContext(analysis.searchKeywords, projectPath)
496
524
  : undefined;
@@ -615,11 +643,10 @@ export class UserPromptHandler extends BaseHookHandler {
615
643
  }
616
644
  }
617
645
  /**
618
- * 读取项目决策历史,按当前 requirement 关键词过滤相关决策块注入。
646
+ * 读取项目决策历史,优先使用树索引推理检索,失败时降级到关键词切片。
619
647
  * 方案 A:同一 session 内 decisions.md 内容不变则直接复用缓存,不重复注入。
620
- * 过滤策略:将 decisions.md 按 "## " 分块,只注入包含关键词的块,上限 600 字符。
621
648
  */
622
- readDecisionsContext(requirement, projectPath) {
649
+ async readDecisionsContext(requirement, projectPath) {
623
650
  // 只在涉及架构/设计/重构时注入,避免噪音
624
651
  const needsContext = /架构|设计|重构|优化|改造|迁移|升级|architecture|design|refactor/i.test(requirement);
625
652
  if (!needsContext)
@@ -628,53 +655,102 @@ export class UserPromptHandler extends BaseHookHandler {
628
655
  const decisionsPath = path.join(projectPath, '.claude-forge', 'decisions.md');
629
656
  if (!fs.existsSync(decisionsPath))
630
657
  return undefined;
631
- // 用 stat 指纹(size:mtimeMs)判断缓存有效性,无需读文件内容
658
+ // 用 stat 指纹(size:mtimeMs)判断缓存有效性
632
659
  const stat = fs.statSync(decisionsPath);
633
660
  const fingerprint = `${stat.size}:${stat.mtimeMs}`;
634
661
  const cache = this.injectionCache.get(projectPath);
635
662
  if (cache?.decisionsKey === fingerprint) {
636
- logger.info('决策历史内容未变,复用缓存');
663
+ logger.info('[Forge:决策] 内容未变,复用缓存');
637
664
  return cache.decisionsResult || undefined;
638
665
  }
639
- // 缓存未命中:增量读取末尾内容
640
- const fileData = this.readDecisionsFile(projectPath);
641
- if (!fileData)
642
- return undefined;
643
- const { tail } = fileData;
644
- if (!tail.trim())
645
- return undefined;
646
- // 按关键词过滤相关决策块
647
- const keywords = requirement
648
- .split(/[\s,,、。.!!??]+/)
649
- .map(w => w.trim())
650
- .filter(w => w.length >= 2);
651
- const blocks = tail.split(/(?=^## )/m).filter(b => b.trim());
652
- let relevant;
653
- if (keywords.length > 0) {
654
- relevant = blocks.filter(block => keywords.some(kw => block.toLowerCase().includes(kw.toLowerCase())));
655
- if (relevant.length === 0)
656
- relevant = blocks.slice(-2);
657
- }
658
- else {
659
- relevant = blocks.slice(-2);
666
+ // 尝试树索引推理检索
667
+ const treeResult = await this.readDecisionsViaTreeIndex(requirement, decisionsPath);
668
+ if (treeResult) {
669
+ const result = ForgeFormatter.formatModuleNotification('decisions', `项目决策历史(推理检索):\n${treeResult}`);
670
+ this.injectionCache.set(projectPath, {
671
+ ...(cache ?? { decisionsKey: '', decisionsResult: '', decisionsRawTail: '', profileInjected: false, planContextInjected: false, skillSuggestionsInjected: false }),
672
+ decisionsKey: fingerprint,
673
+ decisionsResult: result,
674
+ decisionsRawTail: '',
675
+ });
676
+ return result;
660
677
  }
661
- let snippet = relevant.join('\n').trim();
662
- if (snippet.length > 600)
663
- snippet = '...\n' + snippet.slice(-600);
664
- const result = ForgeFormatter.formatModuleNotification('decisions', `项目决策历史(相关片段):\n\`\`\`\n${snippet}\n\`\`\``);
665
- this.injectionCache.set(projectPath, {
666
- ...(cache ?? { decisionsKey: '', decisionsResult: '', decisionsRawTail: '', profileInjected: false, planContextInjected: false, skillSuggestionsInjected: false }),
667
- decisionsKey: fingerprint,
668
- decisionsResult: result,
669
- decisionsRawTail: tail,
670
- });
671
- logger.info(`[Forge:决策] 注入 ${relevant.length} 个相关决策块(${snippet.length} 字符)`);
672
- return result;
678
+ // 降级:关键词切片
679
+ logger.info('[Forge:决策] 树索引不可用,降级到关键词切片');
680
+ return this.readDecisionsContextFallback(requirement, projectPath, fingerprint);
673
681
  }
674
682
  catch {
675
683
  return undefined;
676
684
  }
677
685
  }
686
+ /**
687
+ * 树索引推理检索(新方法)
688
+ */
689
+ async readDecisionsViaTreeIndex(requirement, decisionsPath) {
690
+ try {
691
+ // 检查树索引是否存在且最新
692
+ if (TreeIndexEngine.isStale(decisionsPath)) {
693
+ logger.info('[TreeIndex] 索引过期或不存在,跳过推理检索');
694
+ return null;
695
+ }
696
+ const index = TreeIndexEngine.loadFromFile(decisionsPath);
697
+ if (!index || index.structure.length === 0)
698
+ return null;
699
+ const api = this.ctx.intentEngine?.getProvider();
700
+ if (!api)
701
+ return null;
702
+ const engine = new TreeIndexEngine(api);
703
+ const result = await engine.search(index, requirement);
704
+ if (result && result.length > 50) {
705
+ logger.info(`[TreeIndex] 推理检索成功,返回 ${result.length} 字符`);
706
+ return result;
707
+ }
708
+ return null;
709
+ }
710
+ catch (err) {
711
+ logger.warn(`[TreeIndex] 推理检索失败:${err}`);
712
+ return null;
713
+ }
714
+ }
715
+ /**
716
+ * 降级方案:关键词切片(原有逻辑)
717
+ */
718
+ readDecisionsContextFallback(requirement, projectPath, fingerprint) {
719
+ const cache = this.injectionCache.get(projectPath);
720
+ const fileData = this.readDecisionsFile(projectPath);
721
+ if (!fileData)
722
+ return undefined;
723
+ const { tail } = fileData;
724
+ if (!tail.trim())
725
+ return undefined;
726
+ // 按关键词过滤相关决策块
727
+ const keywords = requirement
728
+ .split(/[\s,,、。.!!??]+/)
729
+ .map(w => w.trim())
730
+ .filter(w => w.length >= 2);
731
+ const blocks = tail.split(/(?=^## )/m).filter(b => b.trim());
732
+ let relevant;
733
+ if (keywords.length > 0) {
734
+ relevant = blocks.filter(block => keywords.some(kw => block.toLowerCase().includes(kw.toLowerCase())));
735
+ if (relevant.length === 0)
736
+ relevant = blocks.slice(-2);
737
+ }
738
+ else {
739
+ relevant = blocks.slice(-2);
740
+ }
741
+ let snippet = relevant.join('\n').trim();
742
+ if (snippet.length > 600)
743
+ snippet = '...\n' + snippet.slice(-600);
744
+ const result = ForgeFormatter.formatModuleNotification('decisions', `项目决策历史(关键词匹配):\n\`\`\`\n${snippet}\n\`\`\``);
745
+ this.injectionCache.set(projectPath, {
746
+ ...(cache ?? { decisionsKey: '', decisionsResult: '', decisionsRawTail: '', profileInjected: false, planContextInjected: false, skillSuggestionsInjected: false }),
747
+ decisionsKey: fingerprint,
748
+ decisionsResult: result,
749
+ decisionsRawTail: tail,
750
+ });
751
+ logger.info(`[Forge:决策] 关键词匹配注入 ${relevant.length} 个块(${snippet.length} 字符)`);
752
+ return result;
753
+ }
678
754
  /**
679
755
  * 处理用户对 Pipeline 选择的回复(A/B/C)
680
756
  */
@@ -1 +1 @@
1
- {"version":3,"file":"user-prompt-handler.js","sourceRoot":"","sources":["../../../src/daemon/handlers/user-prompt-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user-prompt-handler.js","sourceRoot":"","sources":["../../../src/daemon/handlers/user-prompt-handler.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ export class DistillEngine {
11
11
  constructor(storage, api, options) {
12
12
  this.storage = storage;
13
13
  this.api = api;
14
- this.writer = new DistillWriter();
14
+ this.writer = new DistillWriter(api);
15
15
  this.onDistillComplete = options?.onDistillComplete || null;
16
16
  this.refineInterval = options?.refineInterval ?? 3;
17
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/distill/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/distill/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import type { AIProvider } from '../ai-provider/types.js';
2
+ export interface TreeNode {
3
+ title: string;
4
+ node_id: string;
5
+ text: string;
6
+ line_num: number;
7
+ summary?: string;
8
+ nodes: TreeNode[];
9
+ }
10
+ export interface TreeIndex {
11
+ doc_name: string;
12
+ line_count: number;
13
+ built_at: string;
14
+ structure: TreeNode[];
15
+ }
16
+ export declare class TreeIndexEngine {
17
+ private api;
18
+ constructor(api: AIProvider);
19
+ /**
20
+ * 从 Markdown 内容构建树索引(含 AI 摘要生成)
21
+ */
22
+ buildFromMarkdown(content: string, docName: string): Promise<TreeIndex>;
23
+ /**
24
+ * 从文件构建树索引并持久化
25
+ */
26
+ buildFromFile(mdPath: string): Promise<TreeIndex>;
27
+ /**
28
+ * 推理检索:根据 query 从树索引中找到最相关的节点内容
29
+ */
30
+ search(index: TreeIndex, query: string): Promise<string | null>;
31
+ /**
32
+ * 从持久化文件加载树索引
33
+ */
34
+ static loadFromFile(mdPath: string): TreeIndex | null;
35
+ /**
36
+ * 判断树索引是否需要重建(decisions.md 比 tree.json 更新)
37
+ */
38
+ static isStale(mdPath: string): boolean;
39
+ }
40
+ //# sourceMappingURL=tree-index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree-index.d.ts","sourceRoot":"","sources":["../../src/distill/tree-index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAK1D,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,QAAQ,EAAE,CAAC;CACvB;AAqKD,qBAAa,eAAe;IACd,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,UAAU;IAEnC;;OAEG;IACG,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAsB7E;;OAEG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAYvD;;OAEG;IACG,MAAM,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAkCrE;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAYrD;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;CAYxC"}