@winspan/claude-forge 1.16.5 → 1.16.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.
package/README.md CHANGED
@@ -24,18 +24,18 @@ Claude Forge 是一个为 Claude Code 设计的智能编排引擎,通过透明
24
24
 
25
25
  | 功能 | 说明 |
26
26
  |------|------|
27
- | 意图识别 | 自动分析任务复杂度(simple/moderate/complex),决定执行策略,支持规则库和 AI 推理 [x] 2025-01-18 |
28
- | Pipeline 编排 | 复杂任务自动拆分为多阶段流程,支持 AI 智能规划、质量门禁、阶段产物生成 [x] 2025-01-18 |
29
- | 质量门禁 | 每个阶段自动 AI 审查(需求规格、安全性、代码质量、测试、性能),不合格则阻止推进 [x] 2025-01-18 |
30
- | 技能编排 | 根据意图自动匹配并注入最佳实践,支持关键词映射和命中率统计 [x] 2025-01-18 |
31
- | 知识蒸馏 | 自动提炼决策日志、时间线、项目规范,支持树索引和语义检索 [x] 2025-01-18 |
32
- | 会话续接 | 中断后自动恢复上次工作状态 [x] 2025-01-18 |
33
- | 用户画像 | 根据行为自适应调整干预深度 [x] 2025-01-18 |
34
- | 多 AI 提供商 | 支持 Claude、OpenAI、Ollama,统一网关层 [x] 2025-01-18 |
35
- | Web 管理后台 | 实时监控、项目管理、Pipeline 控制、质量追踪、自定义规范管理、CLAUDE.md 管理 [x] 2025-01-18 |
36
- | 阶段产物 | 每个阶段自动生成结构化文档 [x] 2025-01-18 |
37
- | 模式学习 | 从历史失败中提炼预防建议,支持 Thompson Sampling 策略选择 [x] 2025-01-18 |
38
- | 项目规范 | 根据技术栈自动蒸馏项目级规范,支持自动初始化和 AI 自进化 [x] 2025-01-18 |
27
+ | 意图识别 | 自动分析任务复杂度(simple/moderate/complex),决定执行策略,支持规则库和 AI 推理 [x] 2026-04-18 |
28
+ | Pipeline 编排 | 复杂任务自动拆分为多阶段流程,支持 AI 智能规划、质量门禁、阶段产物生成 [x] 2026-04-18 |
29
+ | 质量门禁 | 每个阶段自动 AI 审查(需求规格、安全性、代码质量、测试、性能),不合格则阻止推进 [x] 2026-04-18 |
30
+ | 技能编排 | 根据意图自动匹配并注入最佳实践,支持关键词映射和命中率统计 [x] 2026-04-18 |
31
+ | 知识蒸馏 | 自动提炼决策日志、时间线、项目规范,支持树索引和语义检索 [x] 2026-04-18 |
32
+ | 会话续接 | 中断后自动恢复上次工作状态 [x] 2026-04-18 |
33
+ | 用户画像 | 根据行为自适应调整干预深度 [x] 2026-04-18 |
34
+ | 多 AI 提供商 | 支持 Claude、OpenAI、Ollama,统一网关层 [x] 2026-04-18 |
35
+ | Web 管理后台 | 实时监控、项目管理、Pipeline 控制、质量追踪、自定义规范管理、CLAUDE.md 管理 [x] 2026-04-18 |
36
+ | 阶段产物 | 每个阶段自动生成结构化文档 [x] 2026-04-18 |
37
+ | 模式学习 | 从历史失败中提炼预防建议,支持 Thompson Sampling 策略选择 [x] 2026-04-18 |
38
+ | 项目规范 | 根据技术栈自动蒸馏项目级规范,支持自动初始化和 AI 自进化 [x] 2026-04-18 |
39
39
 
40
40
  ---
41
41
 
@@ -1 +1 @@
1
- {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/claudemd/writer.ts"],"names":[],"mappings":"AAqBA;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAmCtE;AAED,qBAAa,cAAc;IACzB,uCAAuC;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmC;IAE7D,OAAO,CAAC,eAAe;IAIvB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAMhD;;OAEG;IACH,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIrD,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAM5C;;;;;OAKG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAmB3C;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA2BzB;;OAEG;IACG,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB5E;;OAEG;IACG,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAInF;;;OAGG;IACG,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BpF;;;;OAIG;IACG,WAAW,CACf,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM,GACjD,OAAO,CAAC,IAAI,CAAC;CAQjB"}
1
+ {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/claudemd/writer.ts"],"names":[],"mappings":"AAsBA;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAmCtE;AAED,qBAAa,cAAc;IACzB,uCAAuC;IACvC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAmC;IAE7D,OAAO,CAAC,eAAe;IAMvB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAMhD;;OAEG;IACH,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIrD,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAM5C;;;;;OAKG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAmB3C;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA2BzB;;OAEG;IACG,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB5E;;OAEG;IACG,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAInF;;;OAGG;IACG,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BpF;;;;OAIG;IACG,WAAW,CACf,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM,GACjD,OAAO,CAAC,IAAI,CAAC;CAQjB"}
@@ -2,6 +2,7 @@ import fs from 'fs';
2
2
  import path from 'path';
3
3
  import { FILE_MARKER, CONTENT_LIMIT } from '../constants.js';
4
4
  import { MutexLock } from '../utils/mutex-lock.js';
5
+ import { findProjectRoot } from '../utils/project-root.js';
5
6
  const AUTO_START = FILE_MARKER.CLAUDEMD_AUTO_START;
6
7
  const AUTO_END = FILE_MARKER.CLAUDEMD_AUTO_END;
7
8
  /** 续接块标记(由 daemon 写入,writer 负责清理) */
@@ -52,7 +53,9 @@ export class ClaudeMdWriter {
52
53
  /** 全局写锁:防止多个模块并发写入 CLAUDE.md 导致文件损坏 */
53
54
  writeLock = new MutexLock('ClaudeMdWriter');
54
55
  getClaudeMdPath(projectPath) {
55
- return path.join(projectPath, 'CLAUDE.md');
56
+ // 规范化为项目根目录,防止在子目录触发时写入错误位置
57
+ const rootPath = findProjectRoot(projectPath);
58
+ return path.join(rootPath, 'CLAUDE.md');
56
59
  }
57
60
  readClaudeMd(projectPath) {
58
61
  const filePath = this.getClaudeMdPath(projectPath);
@@ -1 +1 @@
1
- {"version":3,"file":"writer.js","sourceRoot":"","sources":["../../src/claudemd/writer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writer.js","sourceRoot":"","sources":["../../src/claudemd/writer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"09-pipeline-active.d.ts","sourceRoot":"","sources":["../../../../src/daemon/handlers/stages/09-pipeline-active.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAIxE,sDAAsD;AACtD,qBAAa,mBAAoB,YAAW,KAAK;IAC/C,QAAQ,CAAC,IAAI,sCAAkB;IAC/B,QAAQ,CAAC,YAAY,WAAuB;IAEtC,OAAO,CAAC,GAAG,EAAE,oBAAoB,GAAG,OAAO,CAAC,WAAW,CAAC;CAiD/D"}
1
+ {"version":3,"file":"09-pipeline-active.d.ts","sourceRoot":"","sources":["../../../../src/daemon/handlers/stages/09-pipeline-active.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAIxE,sDAAsD;AACtD,qBAAa,mBAAoB,YAAW,KAAK;IAC/C,QAAQ,CAAC,IAAI,sCAAkB;IAC/B,QAAQ,CAAC,YAAY,WAAuB;IAEtC,OAAO,CAAC,GAAG,EAAE,oBAAoB,GAAG,OAAO,CAAC,WAAW,CAAC;CAuD/D"}
@@ -32,13 +32,18 @@ export class PipelineActiveStage {
32
32
  if (taskProgress) {
33
33
  parts.push(`[Forge Pipeline 任务进度]\n${taskProgress}`);
34
34
  }
35
- if (parts.length === 0)
36
- return { shouldTerminate: true, response: undefined };
35
+ if (parts.length === 0) {
36
+ // Pipeline 活跃但无上下文时,注入明确的继续指令
37
+ const continueDirective = '[Forge Pipeline] 继续当前阶段的工作。';
38
+ logger.info('[Forge:Pipeline] 无上下文可注入,注入继续指令');
39
+ return { shouldTerminate: true, response: { allow: true, additionalContext: continueDirective } };
40
+ }
37
41
  const merged = parts.join('\n\n');
38
42
  // 防御性检查:避免注入空内容或单个特殊字符
39
43
  if (!merged || merged.trim().length === 0 || merged.trim() === '-') {
40
- logger.warn('[Forge:Pipeline] 合并后的上下文为空或无效,跳过注入');
41
- return { shouldTerminate: true, response: undefined };
44
+ logger.warn('[Forge:Pipeline] 合并后的上下文为空或无效,注入继续指令');
45
+ const continueDirective = '[Forge Pipeline] 继续当前阶段的工作。';
46
+ return { shouldTerminate: true, response: { allow: true, additionalContext: continueDirective } };
42
47
  }
43
48
  return {
44
49
  shouldTerminate: true,
@@ -1 +1 @@
1
- {"version":3,"file":"09-pipeline-active.js","sourceRoot":"","sources":["../../../../src/daemon/handlers/stages/09-pipeline-active.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,sDAAsD;AACtD,MAAM,OAAO,mBAAmB;IACrB,IAAI,GAAG,cAAc,CAAC;IACtB,YAAY,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAE5C,KAAK,CAAC,OAAO,CAAC,GAAyB;QACrC,MAAM,EAAE,cAAc,EAAE,iBAAiB,EAAE,GAAG,GAAG,CAAC,UAAU,CAAC;QAC7D,IAAI,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;YAC/D,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;QACpC,CAAC;QAED,8BAA8B;QAC9B,IAAI,GAAG,CAAC,QAAQ,EAAE,gBAAgB,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;YACxD,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACrD,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;QACpC,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QAExD,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,UAAU;QACV,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACnF,IAAI,gBAAgB,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC3D,CAAC;QAED,YAAY;QACZ,MAAM,cAAc,GAAG,cAAc,CAAC,wBAAwB,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACvF,IAAI,cAAc,EAAE,CAAC;YACnB,KAAK,CAAC,IAAI,CAAC,4BAA4B,cAAc,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,UAAU;QACV,MAAM,YAAY,GAAG,cAAc,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC5E,IAAI,YAAY,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,0BAA0B,YAAY,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;QAE9E,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,uBAAuB;QACvB,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACnE,MAAM,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;YAClD,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;QACxD,CAAC;QAED,OAAO;YACL,eAAe,EAAE,IAAI;YACrB,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE;SACrD,CAAC;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"09-pipeline-active.js","sourceRoot":"","sources":["../../../../src/daemon/handlers/stages/09-pipeline-active.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAElD,sDAAsD;AACtD,MAAM,OAAO,mBAAmB;IACrB,IAAI,GAAG,cAAc,CAAC;IACtB,YAAY,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAE5C,KAAK,CAAC,OAAO,CAAC,GAAyB;QACrC,MAAM,EAAE,cAAc,EAAE,iBAAiB,EAAE,GAAG,GAAG,CAAC,UAAU,CAAC;QAC7D,IAAI,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;YAC/D,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;QACpC,CAAC;QAED,8BAA8B;QAC9B,IAAI,GAAG,CAAC,QAAQ,EAAE,gBAAgB,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;YACxD,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACrD,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC;QACpC,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QAExD,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,UAAU;QACV,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACnF,IAAI,gBAAgB,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC3D,CAAC;QAED,YAAY;QACZ,MAAM,cAAc,GAAG,cAAc,CAAC,wBAAwB,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACvF,IAAI,cAAc,EAAE,CAAC;YACnB,KAAK,CAAC,IAAI,CAAC,4BAA4B,cAAc,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,UAAU;QACV,MAAM,YAAY,GAAG,cAAc,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC5E,IAAI,YAAY,EAAE,CAAC;YACjB,KAAK,CAAC,IAAI,CAAC,0BAA0B,YAAY,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,8BAA8B;YAC9B,MAAM,iBAAiB,GAAG,6BAA6B,CAAC;YACxD,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;YAC/C,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,EAAE,CAAC;QACpG,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,uBAAuB;QACvB,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YACnE,MAAM,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;YACpD,MAAM,iBAAiB,GAAG,6BAA6B,CAAC;YACxD,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,EAAE,CAAC;QACpG,CAAC;QAED,OAAO;YACL,eAAe,EAAE,IAAI;YACrB,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,EAAE;SACrD,CAAC;IACJ,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"17-simple-task.d.ts","sourceRoot":"","sources":["../../../../src/daemon/handlers/stages/17-simple-task.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAMxE,wCAAwC;AACxC,qBAAa,eAAgB,YAAW,KAAK;IAC3C,QAAQ,CAAC,IAAI,0CAAY;IACzB,QAAQ,CAAC,YAAY,WAAoD;IAEnE,OAAO,CAAC,GAAG,EAAE,oBAAoB,GAAG,OAAO,CAAC,WAAW,CAAC;CA4C/D"}
1
+ {"version":3,"file":"17-simple-task.d.ts","sourceRoot":"","sources":["../../../../src/daemon/handlers/stages/17-simple-task.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAMxE,wCAAwC;AACxC,qBAAa,eAAgB,YAAW,KAAK;IAC3C,QAAQ,CAAC,IAAI,0CAAY;IACzB,QAAQ,CAAC,YAAY,WAAoD;IAEnE,OAAO,CAAC,GAAG,EAAE,oBAAoB,GAAG,OAAO,CAAC,WAAW,CAAC;CAiD/D"}
@@ -38,8 +38,12 @@ export class SimpleTaskStage {
38
38
  if (conventionPrompt)
39
39
  injected.push(`规范(${activeConventions.map(c => c.id).join(',')})`);
40
40
  logger.info(`处理完成:轻量注入 | 复杂度=simple | 注入=[${injected.join(', ') || '无'}]`);
41
- if (!body)
42
- return { shouldTerminate: true, response: undefined };
41
+ // 当无任何上下文可注入时,注入明确的"继续"指令,避免 Claude 自由发挥产生"误触"响应
42
+ if (!body) {
43
+ const continueDirective = '用户输入较短,可能是确认或继续当前任务的信号。请继续当前工作,无需解释此输入。';
44
+ logger.info('[简单任务] 无上下文可注入,注入继续指令');
45
+ return { shouldTerminate: true, response: { allow: true, additionalContext: ForgeFormatter.wrapInQuote(continueDirective) } };
46
+ }
43
47
  return { shouldTerminate: true, response: { allow: true, additionalContext: ForgeFormatter.wrapInQuote(body) } };
44
48
  }
45
49
  }
@@ -1 +1 @@
1
- {"version":3,"file":"17-simple-task.js","sourceRoot":"","sources":["../../../../src/daemon/handlers/stages/17-simple-task.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"17-simple-task.js","sourceRoot":"","sources":["../../../../src/daemon/handlers/stages/17-simple-task.ts"],"names":[],"mappings":"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"}
@@ -90,9 +90,9 @@ ${eventSummary}
90
90
  - **未解决的问题**:[如有]
91
91
 
92
92
  **重要约束**:
93
- - 只总结用户的意图和工作进度,不要引用或复述 assistant 的回复原文
94
- - 不要包含任何形如"你发了一个..."、"是有什么想说的吗"等对话性内容
93
+ - 只总结用户的意图和工作进度
95
94
  - 专注于客观的工作状态和技术决策
95
+ - 不要以元对话开头敷衍
96
96
 
97
97
  注意:用中文输出,保持精炼。`;
98
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context-gen.d.ts","sourceRoot":"","sources":["../../src/resume/context-gen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAO1D,qBAAa,sBAAsB;IACjC,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,GAAG,CAAa;IACxB,OAAO,CAAC,MAAM,CAAgB;gBAElB,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,UAAU;IAMnD;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAqBjD;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA0E5B,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,kBAAkB;CAS3B"}
1
+ {"version":3,"file":"context-gen.d.ts","sourceRoot":"","sources":["../../src/resume/context-gen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAO1D,qBAAa,sBAAsB;IACjC,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,GAAG,CAAa;IACxB,OAAO,CAAC,MAAM,CAAgB;gBAElB,OAAO,EAAE,aAAa,EAAE,GAAG,EAAE,UAAU;IAMnD;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAqBjD;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAqE5B,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,kBAAkB;CAS3B"}
@@ -51,12 +51,7 @@ export class ResumeContextGenerator {
51
51
  editedFiles.add(fp);
52
52
  }
53
53
  if (e.user_prompt && userPrompts.length < 3) {
54
- // 过滤掉可能包含 assistant 回复的注入内容
55
- const prompt = e.user_prompt;
56
- // 检测是否包含典型的 assistant 回复模式
57
- if (!/你发了一个|是有什么想说的|我来帮你|让我|我正在|我已经/i.test(prompt)) {
58
- userPrompts.push(prompt.substring(0, 100));
59
- }
54
+ userPrompts.push(e.user_prompt.substring(0, 100));
60
55
  }
61
56
  }
62
57
  // 检测项目类型
@@ -1 +1 @@
1
- {"version":3,"file":"context-gen.js","sourceRoot":"","sources":["../../src/resume/context-gen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context-gen.js","sourceRoot":"","sources":["../../src/resume/context-gen.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resume/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAK1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAO5D,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,UAAU,CAAyB;IAC3C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,cAAc,CAAiB;gBAGrC,OAAO,EAAE,aAAa,EACtB,GAAG,EAAE,UAAU,EACf,cAAc,EAAE,cAAc,EAC9B,cAAc,GAAE,MAAW,EAC3B,UAAU,GAAE,MAAU;IASxB;;OAEG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAavE;;;OAGG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB5E;;;OAGG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAoC3D;;OAEG;IACG,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAW5C,gBAAgB;CAyB/B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/resume/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAK1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAO5D,qBAAa,YAAY;IACvB,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,UAAU,CAAyB;IAC3C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,cAAc,CAAiB;gBAGrC,OAAO,EAAE,aAAa,EACtB,GAAG,EAAE,UAAU,EACf,cAAc,EAAE,cAAc,EAC9B,cAAc,GAAE,MAAW,EAC3B,UAAU,GAAE,MAAU;IASxB;;OAEG;IACG,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAavE;;;OAGG;IACG,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmB5E;;;OAGG;IACG,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAoC3D;;OAEG;IACG,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAW5C,gBAAgB;CAc/B"}
@@ -99,21 +99,11 @@ export class ResumeEngine {
99
99
  });
100
100
  }
101
101
  async injectToClaudeMd(projectPath, context) {
102
- // 过滤掉明显的 assistant 回复模式,防止污染 CLAUDE.md
103
- const filteredContext = context
104
- .split('\n')
105
- .filter(line => {
106
- const lower = line.toLowerCase();
107
- // 过滤掉典型的 assistant 对话性回复
108
- return !/看起来是误触|是有什么想说的|有什么需要帮忙|让我帮你|我来帮你|我正在|我已经/.test(lower);
109
- })
110
- .join('\n')
111
- .trim();
112
- if (!filteredContext) {
113
- logger.info('[Resume] 过滤后内容为空,跳过注入');
102
+ if (!context.trim()) {
103
+ logger.info('[Resume] 内容为空,跳过注入');
114
104
  return;
115
105
  }
116
- const innerMd = `## 上次工作续接\n\n${filteredContext}`;
106
+ const innerMd = `## 上次工作续接\n\n${context.trim()}`;
117
107
  const resumeBlock = buildForgeResumeEnvelope(innerMd);
118
108
  await this.claudeMdWriter.atomicWrite(projectPath, (content) => {
119
109
  const base = stripForgeResumeBlocks(content);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resume/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resume/index.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  /**
2
- * 构造续接信封:外层用 UUID 配对注释定界,正文 UTF-8 经 base64url 放入专用 fence,
3
- * 正文中任意 `<!--`、`-->`、`forge:*` 均不可能破坏块边界解析。
2
+ * 构造续接信封:外层用 UUID 配对注释定界,正文直接使用明文 markdown
4
3
  */
5
4
  export declare function buildForgeResumeEnvelope(innerUtf8Markdown: string): string;
6
5
  /** 是否包含旧版或新版续接块 */
@@ -9,8 +8,4 @@ export declare function hasForgeResumeBlock(content: string): boolean;
9
8
  * 移除全部续接块(新版 UUID 信封 + 旧版裸正文),并压缩多余空行。
10
9
  */
11
10
  export declare function stripForgeResumeBlocks(content: string): string;
12
- /**
13
- * 从 CLAUDE.md 文本中解码第一处新版续接正文(供测试或工具链;失败返回 null)。
14
- */
15
- export declare function decodeForgeResumeInnerFromClaudeMd(content: string): string | null;
16
11
  //# sourceMappingURL=forge-resume-block.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"forge-resume-block.d.ts","sourceRoot":"","sources":["../../src/utils/forge-resume-block.ts"],"names":[],"mappings":"AA0BA;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAiB1E;AAED,mBAAmB;AACnB,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAK5D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAK9D;AAED;;GAEG;AACH,wBAAgB,kCAAkC,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAcjF"}
1
+ {"version":3,"file":"forge-resume-block.d.ts","sourceRoot":"","sources":["../../src/utils/forge-resume-block.ts"],"names":[],"mappings":"AAsBA;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAW1E;AAED,mBAAmB;AACnB,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAK5D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAK9D"}
@@ -4,7 +4,6 @@
4
4
  * - 写入:`buildForgeResumeEnvelope`(ResumeEngine、PipelineEngine.persistPipelineStateToClaude)
5
5
  * - 剥离:`stripForgeResumeBlocks`(注入前清理、clearResumeBlock)
6
6
  * - 检测:`hasForgeResumeBlock`(含旧版 `<!-- forge:resume -->` 与新版 begin 标记)
7
- * - 解码:`decodeForgeResumeInnerFromClaudeMd`(测试 / 工具;模型阅读时按块内说明自行解码)
8
7
  */
9
8
  import { randomUUID } from 'crypto';
10
9
  /** 旧版续接块(正文裸放,易被 HTML 注释子串破坏) */
@@ -14,26 +13,17 @@ const RESUME_UUID = '[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12
14
13
  function scopedResumeBlockRe() {
15
14
  return new RegExp(`\\n*<!-- forge:resume-begin:(${RESUME_UUID}) -->[\\s\\S]*?<!-- forge:resume-end:\\1 -->\\s*`, 'gi');
16
15
  }
17
- const FENCE_OPEN = '```forge-resume-body';
18
- const FENCE_CLOSE = '```';
19
16
  /**
20
- * 构造续接信封:外层用 UUID 配对注释定界,正文 UTF-8 经 base64url 放入专用 fence,
21
- * 正文中任意 `<!--`、`-->`、`forge:*` 均不可能破坏块边界解析。
17
+ * 构造续接信封:外层用 UUID 配对注释定界,正文直接使用明文 markdown
22
18
  */
23
19
  export function buildForgeResumeEnvelope(innerUtf8Markdown) {
24
20
  const id = randomUUID();
25
- const b64 = Buffer.from(innerUtf8Markdown, 'utf8').toString('base64url');
26
- const lines = b64.length > 0 ? b64.match(/.{1,80}/g) ?? [b64] : [''];
27
21
  const iso = new Date().toISOString();
28
22
  return [
29
23
  `<!-- forge:resume-begin:${id} -->`,
30
- '_续接正文在下方 `forge-resume-body` 代码块中以 Base64(UTF-8、base64url)编码,避免与 HTML 注释冲突;阅读时请解码。_',
24
+ innerUtf8Markdown.trim(),
31
25
  '',
32
- FENCE_OPEN,
33
- ...lines,
34
- FENCE_CLOSE,
35
- '',
36
- `forge_generated_at: ${iso}`,
26
+ `_生成时间: ${iso}_`,
37
27
  `<!-- forge:resume-end:${id} -->`,
38
28
  ].join('\n');
39
29
  }
@@ -51,22 +41,4 @@ export function stripForgeResumeBlocks(content) {
51
41
  s = s.replace(/\n{4,}/g, '\n\n\n');
52
42
  return s.trimEnd();
53
43
  }
54
- /**
55
- * 从 CLAUDE.md 文本中解码第一处新版续接正文(供测试或工具链;失败返回 null)。
56
- */
57
- export function decodeForgeResumeInnerFromClaudeMd(content) {
58
- const re = new RegExp(`<!-- forge:resume-begin:${RESUME_UUID} -->[\\s\\S]*?${FENCE_OPEN}\\n([\\s\\S]*?)\\n${FENCE_CLOSE}`, 'i');
59
- const m = content.match(re);
60
- if (!m)
61
- return null;
62
- const compact = m[1].replace(/\s+/g, '');
63
- if (!compact)
64
- return '';
65
- try {
66
- return Buffer.from(compact, 'base64url').toString('utf8');
67
- }
68
- catch {
69
- return null;
70
- }
71
- }
72
44
  //# sourceMappingURL=forge-resume-block.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"forge-resume-block.js","sourceRoot":"","sources":["../../src/utils/forge-resume-block.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,iCAAiC;AACjC,MAAM,sBAAsB,GAAG,+DAA+D,CAAC;AAE/F,uDAAuD;AACvD,MAAM,WAAW,GAAG,8DAA8D,CAAC;AAEnF,SAAS,mBAAmB;IAC1B,OAAO,IAAI,MAAM,CACf,gCAAgC,WAAW,kDAAkD,EAC7F,IAAI,CACL,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,GAAG,sBAAsB,CAAC;AAC1C,MAAM,WAAW,GAAG,KAAK,CAAC;AAE1B;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,iBAAyB;IAChE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;IACxB,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACzE,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACrE,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAErC,OAAO;QACL,2BAA2B,EAAE,MAAM;QACnC,qFAAqF;QACrF,EAAE;QACF,UAAU;QACV,GAAG,KAAK;QACR,WAAW;QACX,EAAE;QACF,uBAAuB,GAAG,EAAE;QAC5B,yBAAyB,EAAE,MAAM;KAClC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,mBAAmB;AACnB,MAAM,UAAU,mBAAmB,CAAC,OAAe;IACjD,OAAO,CACL,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QACzC,IAAI,MAAM,CAAC,2BAA2B,WAAW,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CACvE,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAe;IACpD,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACnC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kCAAkC,CAAC,OAAe;IAChE,MAAM,EAAE,GAAG,IAAI,MAAM,CACnB,2BAA2B,WAAW,iBAAiB,UAAU,qBAAqB,WAAW,EAAE,EACnG,GAAG,CACJ,CAAC;IACF,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC5B,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpB,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACzC,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,CAAC;IACxB,IAAI,CAAC;QACH,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC5D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"forge-resume-block.js","sourceRoot":"","sources":["../../src/utils/forge-resume-block.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,iCAAiC;AACjC,MAAM,sBAAsB,GAAG,+DAA+D,CAAC;AAE/F,uDAAuD;AACvD,MAAM,WAAW,GAAG,8DAA8D,CAAC;AAEnF,SAAS,mBAAmB;IAC1B,OAAO,IAAI,MAAM,CACf,gCAAgC,WAAW,kDAAkD,EAC7F,IAAI,CACL,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,iBAAyB;IAChE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC;IACxB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAErC,OAAO;QACL,2BAA2B,EAAE,MAAM;QACnC,iBAAiB,CAAC,IAAI,EAAE;QACxB,EAAE;QACF,UAAU,GAAG,GAAG;QAChB,yBAAyB,EAAE,MAAM;KAClC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,mBAAmB;AACnB,MAAM,UAAU,mBAAmB,CAAC,OAAe;IACjD,OAAO,CACL,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QACzC,IAAI,MAAM,CAAC,2BAA2B,WAAW,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CACvE,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAe;IACpD,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,sBAAsB,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACnC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC;AACrB,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * 从给定路径向上查找项目根目录
3
+ * 判断标准:包含 .git 目录或 package.json 文件
4
+ *
5
+ * @param startPath 起始路径(可能是子目录)
6
+ * @returns 项目根目录的绝对路径,如果找不到则返回 startPath
7
+ */
8
+ export declare function findProjectRoot(startPath: string): string;
9
+ /**
10
+ * 检查给定路径是否是项目根目录
11
+ */
12
+ export declare function isProjectRoot(dirPath: string): boolean;
13
+ //# sourceMappingURL=project-root.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-root.d.ts","sourceRoot":"","sources":["../../src/utils/project-root.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CA4BzD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAItD"}
@@ -0,0 +1,43 @@
1
+ import fs from 'fs';
2
+ import path from 'path';
3
+ /**
4
+ * 从给定路径向上查找项目根目录
5
+ * 判断标准:包含 .git 目录或 package.json 文件
6
+ *
7
+ * @param startPath 起始路径(可能是子目录)
8
+ * @returns 项目根目录的绝对路径,如果找不到则返回 startPath
9
+ */
10
+ export function findProjectRoot(startPath) {
11
+ let currentPath = path.resolve(startPath);
12
+ const root = path.parse(currentPath).root;
13
+ while (currentPath !== root) {
14
+ // 检查是否存在 .git 目录
15
+ const gitPath = path.join(currentPath, '.git');
16
+ if (fs.existsSync(gitPath)) {
17
+ return currentPath;
18
+ }
19
+ // 检查是否存在 package.json
20
+ const packageJsonPath = path.join(currentPath, 'package.json');
21
+ if (fs.existsSync(packageJsonPath)) {
22
+ return currentPath;
23
+ }
24
+ // 向上一级目录
25
+ const parentPath = path.dirname(currentPath);
26
+ if (parentPath === currentPath) {
27
+ // 已经到达根目录,无法再向上
28
+ break;
29
+ }
30
+ currentPath = parentPath;
31
+ }
32
+ // 找不到项目根目录,返回原路径
33
+ return path.resolve(startPath);
34
+ }
35
+ /**
36
+ * 检查给定路径是否是项目根目录
37
+ */
38
+ export function isProjectRoot(dirPath) {
39
+ const gitPath = path.join(dirPath, '.git');
40
+ const packageJsonPath = path.join(dirPath, 'package.json');
41
+ return fs.existsSync(gitPath) || fs.existsSync(packageJsonPath);
42
+ }
43
+ //# sourceMappingURL=project-root.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-root.js","sourceRoot":"","sources":["../../src/utils/project-root.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,SAAiB;IAC/C,IAAI,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC;IAE1C,OAAO,WAAW,KAAK,IAAI,EAAE,CAAC;QAC5B,iBAAiB;QACjB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC/C,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,sBAAsB;QACtB,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAC/D,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACnC,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,SAAS;QACT,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;YAC/B,gBAAgB;YAChB,MAAM;QACR,CAAC;QACD,WAAW,GAAG,UAAU,CAAC;IAC3B,CAAC;IAED,iBAAiB;IACjB,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,OAAe;IAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAC3D,OAAO,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;AAClE,CAAC"}