@winspan/claude-forge 0.1.3 → 0.1.4

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 (66) hide show
  1. package/dist/autopilot/intent-engine.d.ts +2 -1
  2. package/dist/autopilot/intent-engine.d.ts.map +1 -1
  3. package/dist/autopilot/intent-engine.js +8 -4
  4. package/dist/autopilot/intent-engine.js.map +1 -1
  5. package/dist/claudemd/index.d.ts +1 -1
  6. package/dist/claudemd/index.d.ts.map +1 -1
  7. package/dist/claudemd/index.js +30 -4
  8. package/dist/claudemd/index.js.map +1 -1
  9. package/dist/claudemd/prompts.d.ts +4 -1
  10. package/dist/claudemd/prompts.d.ts.map +1 -1
  11. package/dist/claudemd/prompts.js +41 -5
  12. package/dist/claudemd/prompts.js.map +1 -1
  13. package/dist/cli/commands/init.d.ts +12 -0
  14. package/dist/cli/commands/init.d.ts.map +1 -1
  15. package/dist/cli/commands/init.js +305 -0
  16. package/dist/cli/commands/init.js.map +1 -1
  17. package/dist/cli/index.js +2 -1
  18. package/dist/cli/index.js.map +1 -1
  19. package/dist/cli/tui.d.ts.map +1 -1
  20. package/dist/cli/tui.js +2 -0
  21. package/dist/cli/tui.js.map +1 -1
  22. package/dist/convention/official-sync.d.ts +21 -0
  23. package/dist/convention/official-sync.d.ts.map +1 -0
  24. package/dist/convention/official-sync.js +196 -0
  25. package/dist/convention/official-sync.js.map +1 -0
  26. package/dist/daemon/engine-registry.d.ts.map +1 -1
  27. package/dist/daemon/engine-registry.js +3 -0
  28. package/dist/daemon/engine-registry.js.map +1 -1
  29. package/dist/daemon/handlers/pre-tool-use-handler.d.ts.map +1 -1
  30. package/dist/daemon/handlers/pre-tool-use-handler.js +3 -2
  31. package/dist/daemon/handlers/pre-tool-use-handler.js.map +1 -1
  32. package/dist/daemon/handlers/stop-handler.d.ts.map +1 -1
  33. package/dist/daemon/handlers/stop-handler.js +3 -2
  34. package/dist/daemon/handlers/stop-handler.js.map +1 -1
  35. package/dist/daemon/handlers/user-prompt-handler.d.ts +5 -0
  36. package/dist/daemon/handlers/user-prompt-handler.d.ts.map +1 -1
  37. package/dist/daemon/handlers/user-prompt-handler.js +61 -4
  38. package/dist/daemon/handlers/user-prompt-handler.js.map +1 -1
  39. package/dist/daemon/index.d.ts.map +1 -1
  40. package/dist/daemon/index.js +19 -3
  41. package/dist/daemon/index.js.map +1 -1
  42. package/dist/daemon/lifecycle.d.ts +6 -0
  43. package/dist/daemon/lifecycle.d.ts.map +1 -1
  44. package/dist/daemon/lifecycle.js +28 -0
  45. package/dist/daemon/lifecycle.js.map +1 -1
  46. package/dist/daemon/server.d.ts +2 -1
  47. package/dist/daemon/server.d.ts.map +1 -1
  48. package/dist/daemon/server.js +20 -1
  49. package/dist/daemon/server.js.map +1 -1
  50. package/dist/distill/index.d.ts.map +1 -1
  51. package/dist/distill/index.js +4 -0
  52. package/dist/distill/index.js.map +1 -1
  53. package/dist/distill/writer.d.ts +22 -0
  54. package/dist/distill/writer.d.ts.map +1 -1
  55. package/dist/distill/writer.js +77 -0
  56. package/dist/distill/writer.js.map +1 -1
  57. package/dist/hooks/notification.sh +3 -1
  58. package/dist/hooks/post-tool-use.sh +3 -1
  59. package/dist/hooks/pre-tool-use.sh +3 -1
  60. package/dist/hooks/stop.sh +3 -1
  61. package/dist/hooks/user-prompt-submit.sh +3 -1
  62. package/dist/pipeline/phase-manager.d.ts +4 -0
  63. package/dist/pipeline/phase-manager.d.ts.map +1 -1
  64. package/dist/pipeline/phase-manager.js +52 -10
  65. package/dist/pipeline/phase-manager.js.map +1 -1
  66. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/daemon/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/daemon/index.ts"],"names":[],"mappings":"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"}
@@ -6,4 +6,10 @@ export declare function getSocketPath(): string;
6
6
  export declare function cleanSocket(): void;
7
7
  /** 判断项目是否已被 Forge 初始化管理(存在 .claude-forge/ 目录) */
8
8
  export declare function isForgeManaged(projectPath: string): boolean;
9
+ /** daemon 启动时生成随机 auth token,写入 chmod 600 文件 */
10
+ export declare function writeAuthToken(): string;
11
+ /** 读取当前 auth token */
12
+ export declare function readAuthToken(): string | null;
13
+ /** daemon 关闭时清理 token 文件 */
14
+ export declare function removeAuthToken(): void;
9
15
  //# sourceMappingURL=lifecycle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/daemon/lifecycle.ts"],"names":[],"mappings":"AAOA,wBAAgB,YAAY,IAAI,IAAI,CAKnC;AAED,wBAAgB,aAAa,IAAI,IAAI,CAIpC;AAED,wBAAgB,OAAO,IAAI,MAAM,GAAG,IAAI,CAoBvC;AAED,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,wBAAgB,WAAW,IAAI,IAAI,CAKlC;AAED,iDAAiD;AACjD,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAG3D"}
1
+ {"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/daemon/lifecycle.ts"],"names":[],"mappings":"AASA,wBAAgB,YAAY,IAAI,IAAI,CAKnC;AAED,wBAAgB,aAAa,IAAI,IAAI,CAIpC;AAED,wBAAgB,OAAO,IAAI,MAAM,GAAG,IAAI,CAoBvC;AAED,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,wBAAgB,WAAW,IAAI,IAAI,CAKlC;AAED,iDAAiD;AACjD,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAG3D;AAED,gDAAgD;AAChD,wBAAgB,cAAc,IAAI,MAAM,CAOvC;AAED,sBAAsB;AACtB,wBAAgB,aAAa,IAAI,MAAM,GAAG,IAAI,CAO7C;AAED,4BAA4B;AAC5B,wBAAgB,eAAe,IAAI,IAAI,CAItC"}
@@ -1,7 +1,9 @@
1
1
  import fs from 'fs';
2
2
  import path from 'path';
3
3
  import os from 'os';
4
+ import crypto from 'crypto';
4
5
  const FORGE_HOME = path.join(os.homedir(), '.claude-forge');
6
+ const TOKEN_FILE = path.join(FORGE_HOME, 'daemon.token');
5
7
  const PID_FILE = path.join(FORGE_HOME, 'daemon.pid');
6
8
  export function writePidFile() {
7
9
  if (!fs.existsSync(FORGE_HOME)) {
@@ -53,4 +55,30 @@ export function isForgeManaged(projectPath) {
53
55
  return false;
54
56
  return fs.existsSync(path.join(projectPath, '.claude-forge'));
55
57
  }
58
+ /** daemon 启动时生成随机 auth token,写入 chmod 600 文件 */
59
+ export function writeAuthToken() {
60
+ const token = crypto.randomBytes(32).toString('hex');
61
+ if (!fs.existsSync(FORGE_HOME)) {
62
+ fs.mkdirSync(FORGE_HOME, { recursive: true });
63
+ }
64
+ fs.writeFileSync(TOKEN_FILE, token, { mode: 0o600 });
65
+ return token;
66
+ }
67
+ /** 读取当前 auth token */
68
+ export function readAuthToken() {
69
+ if (!fs.existsSync(TOKEN_FILE))
70
+ return null;
71
+ try {
72
+ return fs.readFileSync(TOKEN_FILE, 'utf-8').trim();
73
+ }
74
+ catch {
75
+ return null;
76
+ }
77
+ }
78
+ /** daemon 关闭时清理 token 文件 */
79
+ export function removeAuthToken() {
80
+ if (fs.existsSync(TOKEN_FILE)) {
81
+ fs.unlinkSync(TOKEN_FILE);
82
+ }
83
+ }
56
84
  //# sourceMappingURL=lifecycle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/daemon/lifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,eAAe,CAAC,CAAC;AAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;AAErD,MAAM,UAAU,YAAY;IAC1B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,OAAO;IACrB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,QAAQ,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAEpE,WAAW;QACX,IAAI,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACrB,OAAO,GAAG,CAAC;QACb,CAAC;QAAC,MAAM,CAAC;YACP,oBAAoB;YACpB,aAAa,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,OAAO,EAAE,KAAK,IAAI,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC;AACH,CAAC;AAED,iDAAiD;AACjD,MAAM,UAAU,cAAc,CAAC,WAAmB;IAChD,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAC;IAC/B,OAAO,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC,CAAC;AAChE,CAAC"}
1
+ {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/daemon/lifecycle.ts"],"names":[],"mappings":"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"}
@@ -9,8 +9,9 @@ export declare class SocketServer {
9
9
  private server;
10
10
  private parser;
11
11
  private handler;
12
+ private authToken;
12
13
  private static readonly MAX_BUFFER_SIZE;
13
- constructor(socketPath: string, handler: EventHandler);
14
+ constructor(socketPath: string, handler: EventHandler, authToken?: string);
14
15
  private handleConnection;
15
16
  /**
16
17
  * 简单检查 JSON 是否完整(启发式方法)
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/daemon/server.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,YAAY,GAAG,CACzB,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAU,KAC1C,YAAY,GAAG,IAAI,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;AAExD,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAc;gBAEzC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY;IAoBrD,OAAO,CAAC,gBAAgB;IAqExB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAmCtB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAQvB"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/daemon/server.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,MAAM,YAAY,GAAG,CACzB,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAU,KAC1C,YAAY,GAAG,IAAI,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;AAExD,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,MAAM,CAAc;IAC5B,OAAO,CAAC,OAAO,CAAe;IAC9B,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAc;gBAEzC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,MAAM;IAqBzE,OAAO,CAAC,gBAAgB;IAqFxB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAmCtB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAQvB"}
@@ -6,10 +6,12 @@ export class SocketServer {
6
6
  server;
7
7
  parser;
8
8
  handler;
9
+ authToken;
9
10
  static MAX_BUFFER_SIZE = 100 * 1024; // 100KB
10
- constructor(socketPath, handler) {
11
+ constructor(socketPath, handler, authToken) {
11
12
  this.parser = new EventParser();
12
13
  this.handler = handler;
14
+ this.authToken = authToken ?? null;
13
15
  this.server = net.createServer(this.handleConnection.bind(this));
14
16
  this.server.listen(socketPath, () => {
15
17
  // 限制 socket 文件仅当前用户可读写,防止同机其他用户注入伪造事件
@@ -47,6 +49,23 @@ export class SocketServer {
47
49
  return;
48
50
  }
49
51
  try {
52
+ // 认证检查:在 EventParser 之前提取 _auth 字段(zod 会剥离未知字段)
53
+ if (this.authToken) {
54
+ try {
55
+ const raw = JSON.parse(buffer);
56
+ if (raw._auth !== this.authToken) {
57
+ logger.warn('[Socket] 认证失败,关闭连接');
58
+ buffer = '';
59
+ if (connectionTimeout)
60
+ clearTimeout(connectionTimeout);
61
+ socket.destroy();
62
+ return;
63
+ }
64
+ }
65
+ catch {
66
+ // JSON 解析失败,交给下面的 EventParser 处理
67
+ }
68
+ }
50
69
  const event = this.parser.parse(buffer);
51
70
  buffer = '';
52
71
  if (connectionTimeout)
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/daemon/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/daemon/server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/distill/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAInD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,cAAc,CAAS;gBAG7B,OAAO,EAAE,aAAa,EACtB,GAAG,EAAE,SAAS,EACd,cAAc,CAAC,EAAE,cAAc,EAC/B,cAAc,GAAE,MAAU;IAStB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyDzE,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAqB1D,OAAO,CAAC,aAAa;CAgCtB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/distill/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAInD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,GAAG,CAAY;IACvB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,YAAY,CAAa;IACjC,OAAO,CAAC,cAAc,CAAS;gBAG7B,OAAO,EAAE,aAAa,EACtB,GAAG,EAAE,SAAS,EACd,cAAc,CAAC,EAAE,cAAc,EAC/B,cAAc,GAAE,MAAU;IAStB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA8DzE,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAqB1D,OAAO,CAAC,aAAa;CAgCtB"}
@@ -40,6 +40,10 @@ export class DistillEngine {
40
40
  // 4. 标记事件为已蒸馏
41
41
  const eventIds = events.map((e) => e.event_id);
42
42
  this.storage.markEventsDistilled(eventIds);
43
+ // 4b. 更新 refine 状态中的蒸馏计数
44
+ if (resolvedProjectPath) {
45
+ this.writer.incrementDistillCount(resolvedProjectPath);
46
+ }
43
47
  logger.info(`蒸馏完成:已处理 ${eventIds.length} 条事件`);
44
48
  // 5. 蒸馏后尝试细化 CLAUDE.md(每 N 次触发一次)
45
49
  this.distillCount++;
@@ -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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"}
@@ -1,3 +1,11 @@
1
+ export interface RefineState {
2
+ /** 上次 refine 时 decisions.md 的内容 hash */
3
+ lastRefineHash: string;
4
+ /** 自上次 refine 以来的蒸馏次数 */
5
+ distillCountSinceRefine: number;
6
+ /** 上次 refine 的时间 */
7
+ lastRefineAt: string;
8
+ }
1
9
  export declare class DistillWriter {
2
10
  private ensureDir;
3
11
  writeDecisions(projectPath: string, content: string): void;
@@ -11,5 +19,19 @@ export declare class DistillWriter {
11
19
  * 将溢出的旧条目追加到归档文件
12
20
  */
13
21
  private archiveEntries;
22
+ /** 计算文件内容的 SHA-256 hash(前 16 字符) */
23
+ getContentHash(projectPath: string): string;
24
+ /** 读取 refine 状态 */
25
+ readRefineState(projectPath: string): RefineState | null;
26
+ /** 写入 refine 状态 */
27
+ writeRefineState(projectPath: string, state: RefineState): void;
28
+ /** 递增蒸馏计数 */
29
+ incrementDistillCount(projectPath: string): void;
30
+ /**
31
+ * 读取自上次 refine 以来新增的蒸馏内容。
32
+ * 通过比较当前 hash 与 refine-state 中记录的 hash,
33
+ * 返回 hash 变化后新增的条目。
34
+ */
35
+ readDecisionsSince(projectPath: string): string;
14
36
  }
15
37
  //# sourceMappingURL=writer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/distill/writer.ts"],"names":[],"mappings":"AAQA,qBAAa,aAAa;IACxB,OAAO,CAAC,SAAS;IAQjB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAU1D,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAUzD,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,MAAM;IAQlE;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA4B1B;;OAEG;IACH,OAAO,CAAC,cAAc;CAYvB"}
1
+ {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../src/distill/writer.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,WAAW;IAC1B,wCAAwC;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,yBAAyB;IACzB,uBAAuB,EAAE,MAAM,CAAC;IAChC,oBAAoB;IACpB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,SAAS;IAQjB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAU1D,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAUzD,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,MAAM;IAQlE;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA4B1B;;OAEG;IACH,OAAO,CAAC,cAAc;IAatB,oCAAoC;IACpC,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAO3C,mBAAmB;IACnB,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAUxD,mBAAmB;IACnB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI;IAK/D,aAAa;IACb,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAUhD;;;;OAIG;IACH,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;CAqChD"}
@@ -1,9 +1,12 @@
1
1
  import fs from 'fs';
2
2
  import path from 'path';
3
+ import crypto from 'crypto';
3
4
  /** 每个文件保留的最大条目数 */
4
5
  const MAX_ENTRIES = 20;
5
6
  /** 条目分隔符 */
6
7
  const ENTRY_SEPARATOR = '\n---\n';
8
+ /** Refine 状态文件名 */
9
+ const REFINE_STATE_FILE = 'refine-state.json';
7
10
  export class DistillWriter {
8
11
  ensureDir(projectPath) {
9
12
  const forgeDir = path.join(projectPath, '.claude-forge');
@@ -69,5 +72,79 @@ export class DistillWriter {
69
72
  const archiveContent = entries.join(ENTRY_SEPARATOR) + ENTRY_SEPARATOR;
70
73
  fs.appendFileSync(archivePath, archiveContent, 'utf-8');
71
74
  }
75
+ /** 计算文件内容的 SHA-256 hash(前 16 字符) */
76
+ getContentHash(projectPath) {
77
+ const filePath = path.join(projectPath, '.claude-forge', 'decisions.md');
78
+ if (!fs.existsSync(filePath))
79
+ return '';
80
+ const content = fs.readFileSync(filePath, 'utf-8');
81
+ return crypto.createHash('sha256').update(content).digest('hex').slice(0, 16);
82
+ }
83
+ /** 读取 refine 状态 */
84
+ readRefineState(projectPath) {
85
+ const statePath = path.join(projectPath, '.claude-forge', REFINE_STATE_FILE);
86
+ if (!fs.existsSync(statePath))
87
+ return null;
88
+ try {
89
+ return JSON.parse(fs.readFileSync(statePath, 'utf-8'));
90
+ }
91
+ catch {
92
+ return null;
93
+ }
94
+ }
95
+ /** 写入 refine 状态 */
96
+ writeRefineState(projectPath, state) {
97
+ const dir = this.ensureDir(projectPath);
98
+ fs.writeFileSync(path.join(dir, REFINE_STATE_FILE), JSON.stringify(state, null, 2), 'utf-8');
99
+ }
100
+ /** 递增蒸馏计数 */
101
+ incrementDistillCount(projectPath) {
102
+ const state = this.readRefineState(projectPath) ?? {
103
+ lastRefineHash: '',
104
+ distillCountSinceRefine: 0,
105
+ lastRefineAt: '',
106
+ };
107
+ state.distillCountSinceRefine++;
108
+ this.writeRefineState(projectPath, state);
109
+ }
110
+ /**
111
+ * 读取自上次 refine 以来新增的蒸馏内容。
112
+ * 通过比较当前 hash 与 refine-state 中记录的 hash,
113
+ * 返回 hash 变化后新增的条目。
114
+ */
115
+ readDecisionsSince(projectPath) {
116
+ const state = this.readRefineState(projectPath);
117
+ const filePath = path.join(projectPath, '.claude-forge', 'decisions.md');
118
+ if (!fs.existsSync(filePath))
119
+ return '';
120
+ const content = fs.readFileSync(filePath, 'utf-8');
121
+ if (!state?.lastRefineHash) {
122
+ // 从未 refine 过,返回全部内容(最后 30 行)
123
+ return content.split('\n').slice(-30).join('\n');
124
+ }
125
+ // 解析条目,找到 hash 变化点
126
+ const body = content.replace(/^#[^\n]*\n+/, '');
127
+ const entries = body.split(ENTRY_SEPARATOR).filter(e => e.trim().length > 0);
128
+ // 逐步累加条目重建 hash,找到上次 refine 时的位置
129
+ let accumulated = '';
130
+ let matchIdx = -1;
131
+ for (let i = 0; i < entries.length; i++) {
132
+ const partial = '# 决策日志\n\n' + entries.slice(0, i + 1).join(ENTRY_SEPARATOR) + ENTRY_SEPARATOR;
133
+ const hash = crypto.createHash('sha256').update(partial).digest('hex').slice(0, 16);
134
+ if (hash === state.lastRefineHash) {
135
+ matchIdx = i;
136
+ break;
137
+ }
138
+ }
139
+ if (matchIdx === -1) {
140
+ // hash 不匹配(可能归档导致),返回最近条目
141
+ return entries.slice(-5).join(ENTRY_SEPARATOR);
142
+ }
143
+ // 返回 matchIdx 之后的新增条目
144
+ const newEntries = entries.slice(matchIdx + 1);
145
+ if (newEntries.length === 0)
146
+ return '';
147
+ return newEntries.join(ENTRY_SEPARATOR);
148
+ }
72
149
  }
73
150
  //# sourceMappingURL=writer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"writer.js","sourceRoot":"","sources":["../../src/distill/writer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writer.js","sourceRoot":"","sources":["../../src/distill/writer.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  # Claude Forge - Notification Hook
3
3
 
4
4
  SOCKET_PATH="${CLAUDE_FORGE_SOCKET:-$HOME/.claude-forge/daemon.sock}"
5
+ AUTH_TOKEN=$(cat "$HOME/.claude-forge/daemon.token" 2>/dev/null || echo '')
5
6
 
6
7
  # 读取 stdin
7
8
  INPUT=$(cat)
@@ -11,7 +12,7 @@ PROJECT_PATH=$(echo "$INPUT" | python3 -c 'import sys,json; d=json.load(sys.stdi
11
12
  PROJECT_PATH="${PROJECT_PATH:-${PWD}}"
12
13
 
13
14
  # 构造事件 JSON(通过环境变量传参,避免 shell 注入)
14
- EVENT=$(FORGE_PROJECT_PATH="$PROJECT_PATH" FORGE_INPUT="$INPUT" \
15
+ EVENT=$(FORGE_PROJECT_PATH="$PROJECT_PATH" FORGE_INPUT="$INPUT" FORGE_AUTH_TOKEN="$AUTH_TOKEN" \
15
16
  python3 -c "
16
17
  import json, os
17
18
  from datetime import datetime
@@ -26,6 +27,7 @@ print(json.dumps({
26
27
  'project_path': os.environ.get('FORGE_PROJECT_PATH', ''),
27
28
  'tool_name': 'notification',
28
29
  'tool_input': tool_input,
30
+ '_auth': os.environ.get('FORGE_AUTH_TOKEN', ''),
29
31
  }))
30
32
  " 2>/dev/null)
31
33
 
@@ -2,6 +2,7 @@
2
2
  # Claude Forge - PostToolUse Hook
3
3
 
4
4
  SOCKET_PATH="${CLAUDE_FORGE_SOCKET:-$HOME/.claude-forge/daemon.sock}"
5
+ AUTH_TOKEN=$(cat "$HOME/.claude-forge/daemon.token" 2>/dev/null || echo '')
5
6
 
6
7
  # 读取 stdin
7
8
  INPUT=$(cat)
@@ -15,7 +16,7 @@ PROJECT_PATH=$(echo "$INPUT" | python3 -c 'import sys,json; d=json.load(sys.stdi
15
16
  PROJECT_PATH="${PROJECT_PATH:-${PWD}}"
16
17
 
17
18
  # 构造事件 JSON(通过环境变量传参,避免 shell 注入)
18
- EVENT=$(FORGE_TOOL_NAME="$TOOL_NAME" FORGE_TOOL_INPUT="$TOOL_INPUT" FORGE_TOOL_OUTPUT="$TOOL_OUTPUT" FORGE_PROJECT_PATH="$PROJECT_PATH" \
19
+ EVENT=$(FORGE_TOOL_NAME="$TOOL_NAME" FORGE_TOOL_INPUT="$TOOL_INPUT" FORGE_TOOL_OUTPUT="$TOOL_OUTPUT" FORGE_PROJECT_PATH="$PROJECT_PATH" FORGE_AUTH_TOKEN="$AUTH_TOKEN" \
19
20
  python3 -c "
20
21
  import json, os
21
22
  from datetime import datetime
@@ -35,6 +36,7 @@ print(json.dumps({
35
36
  'tool_name': os.environ.get('FORGE_TOOL_NAME', ''),
36
37
  'tool_input': tool_input,
37
38
  'tool_output': tool_output,
39
+ '_auth': os.environ.get('FORGE_AUTH_TOKEN', ''),
38
40
  }))
39
41
  " 2>/dev/null)
40
42
 
@@ -2,6 +2,7 @@
2
2
  # Claude Forge - PreToolUse Hook(双向通信)
3
3
 
4
4
  SOCKET_PATH="${CLAUDE_FORGE_SOCKET:-$HOME/.claude-forge/daemon.sock}"
5
+ AUTH_TOKEN=$(cat "$HOME/.claude-forge/daemon.token" 2>/dev/null || echo '')
5
6
 
6
7
  # 读取 stdin(Claude Code 传入的 JSON)
7
8
  INPUT=$(cat)
@@ -13,7 +14,7 @@ PROJECT_PATH=$(echo "$INPUT" | python3 -c 'import sys,json; d=json.load(sys.stdi
13
14
  PROJECT_PATH="${PROJECT_PATH:-${PWD}}"
14
15
 
15
16
  # 构造事件 JSON(通过环境变量传参,避免 shell 注入)
16
- EVENT=$(FORGE_TOOL_NAME="$TOOL_NAME" FORGE_TOOL_INPUT="$TOOL_INPUT" FORGE_PROJECT_PATH="$PROJECT_PATH" \
17
+ EVENT=$(FORGE_TOOL_NAME="$TOOL_NAME" FORGE_TOOL_INPUT="$TOOL_INPUT" FORGE_PROJECT_PATH="$PROJECT_PATH" FORGE_AUTH_TOKEN="$AUTH_TOKEN" \
17
18
  python3 -c "
18
19
  import json, os
19
20
  from datetime import datetime
@@ -29,6 +30,7 @@ print(json.dumps({
29
30
  'project_path': os.environ.get('FORGE_PROJECT_PATH', ''),
30
31
  'tool_name': os.environ.get('FORGE_TOOL_NAME', ''),
31
32
  'tool_input': tool_input,
33
+ '_auth': os.environ.get('FORGE_AUTH_TOKEN', ''),
32
34
  }))
33
35
  " 2>/dev/null)
34
36
 
@@ -2,6 +2,7 @@
2
2
  # Claude Forge - Stop Hook
3
3
 
4
4
  SOCKET_PATH="${CLAUDE_FORGE_SOCKET:-$HOME/.claude-forge/daemon.sock}"
5
+ AUTH_TOKEN=$(cat "$HOME/.claude-forge/daemon.token" 2>/dev/null || echo '')
5
6
 
6
7
  # 读取 stdin
7
8
  INPUT=$(cat 2>/dev/null || echo '{}')
@@ -11,7 +12,7 @@ PROJECT_PATH=$(echo "$INPUT" | python3 -c 'import sys,json; d=json.load(sys.stdi
11
12
  PROJECT_PATH="${PROJECT_PATH:-${PWD}}"
12
13
 
13
14
  # 构造事件 JSON(通过环境变量传参,避免 shell 注入)
14
- EVENT=$(FORGE_PROJECT_PATH="$PROJECT_PATH" \
15
+ EVENT=$(FORGE_PROJECT_PATH="$PROJECT_PATH" FORGE_AUTH_TOKEN="$AUTH_TOKEN" \
15
16
  python3 -c "
16
17
  import json, os
17
18
  from datetime import datetime
@@ -22,6 +23,7 @@ print(json.dumps({
22
23
  'project_path': os.environ.get('FORGE_PROJECT_PATH', ''),
23
24
  'tool_name': 'stop',
24
25
  'tool_input': {},
26
+ '_auth': os.environ.get('FORGE_AUTH_TOKEN', ''),
25
27
  }))
26
28
  " 2>/dev/null)
27
29
 
@@ -3,6 +3,7 @@
3
3
  # 拦截用户输入,触发意图分析和自动 Pipeline 编排
4
4
 
5
5
  SOCKET_PATH="${CLAUDE_FORGE_SOCKET:-$HOME/.claude-forge/daemon.sock}"
6
+ AUTH_TOKEN=$(cat "$HOME/.claude-forge/daemon.token" 2>/dev/null || echo '')
6
7
 
7
8
  # daemon 未运行,快速跳过
8
9
  if [ ! -S "$SOCKET_PATH" ]; then
@@ -23,7 +24,7 @@ if [ -z "$USER_PROMPT" ]; then
23
24
  fi
24
25
 
25
26
  # 安全地构造事件 JSON(通过环境变量传参,避免 shell 注入)
26
- EVENT=$(FORGE_USER_PROMPT="$USER_PROMPT" FORGE_PROJECT_PATH="$PROJECT_PATH" \
27
+ EVENT=$(FORGE_USER_PROMPT="$USER_PROMPT" FORGE_PROJECT_PATH="$PROJECT_PATH" FORGE_AUTH_TOKEN="$AUTH_TOKEN" \
27
28
  python3 -c "
28
29
  import json, os
29
30
  from datetime import datetime
@@ -34,6 +35,7 @@ print(json.dumps({
34
35
  'project_path': os.environ.get('FORGE_PROJECT_PATH', ''),
35
36
  'tool_name': 'UserPrompt',
36
37
  'tool_input': {'user_prompt': os.environ.get('FORGE_USER_PROMPT', '')},
38
+ '_auth': os.environ.get('FORGE_AUTH_TOKEN', ''),
37
39
  }))
38
40
  " 2>/dev/null)
39
41
 
@@ -28,5 +28,9 @@ export declare class PhaseManager {
28
28
  * 检测任务是否完成(基于工具调用模式)
29
29
  */
30
30
  private detectTaskCompletion;
31
+ /**
32
+ * 从工具调用中提取成果摘要(文件路径、命令、操作类型)
33
+ */
34
+ private summarizeArtifact;
31
35
  }
32
36
  //# sourceMappingURL=phase-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"phase-manager.d.ts","sourceRoot":"","sources":["../../src/pipeline/phase-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAgB,MAAM,YAAY,CAAC;AAExE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAG3C,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,gBAAgB,CAAkC;IAC1D,OAAO,CAAC,eAAe,CAAkC;gBAE7C,KAAK,EAAE,aAAa;IAIhC;;OAEG;IACH,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAIhE;;OAEG;IACH,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM;IAyE/C;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,GAAG;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,aAAa,CAAA;KAAE;IA8CvG,0BAA0B;IAC1B,OAAO,CAAC,yBAAyB;IAWjC,OAAO,CAAC,iBAAiB;IAiCzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;CAyC7B"}
1
+ {"version":3,"file":"phase-manager.d.ts","sourceRoot":"","sources":["../../src/pipeline/phase-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAgB,MAAM,YAAY,CAAC;AAExE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAG3C,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,gBAAgB,CAAkC;IAC1D,OAAO,CAAC,eAAe,CAAkC;gBAE7C,KAAK,EAAE,aAAa;IAIhC;;OAEG;IACH,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAIhE;;OAEG;IACH,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM;IAyE/C;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,GAAG;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,aAAa,CAAA;KAAE;IAyDvG,0BAA0B;IAC1B,OAAO,CAAC,yBAAyB;IAWjC,OAAO,CAAC,iBAAiB;IAiCzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA0C5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;CA+B1B"}