hunter-mate 0.1.4 → 0.1.6

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.
@@ -43,5 +43,5 @@
43
43
  "action": {
44
44
  "default_title": "__MSG_extActionTitle__"
45
45
  },
46
- "buildTime": "2026-08-31T15:36:31.949Z"
46
+ "buildTime": "2026-09-01T06:33:19.600Z"
47
47
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "version": "0.1.0",
3
- "buildTime": "2026-08-31T15:36:34.666Z"
3
+ "buildTime": "2026-09-01T06:33:22.303Z"
4
4
  }
@@ -153,7 +153,7 @@ let ExtractionEntityController = class ExtractionEntityController {
153
153
  const alias = type === 'job' ? 'j' : type === 'company' ? 'c' : 't';
154
154
  const qb = repo.createQueryBuilder(alias);
155
155
  if (since) {
156
- qb.andWhere(`${alias}.updatedAt > :since`, { since });
156
+ qb.andWhere(`datetime(${alias}.updatedAt) > datetime(:since)`, { since });
157
157
  }
158
158
  if (from)
159
159
  qb.andWhere(`${alias}.createdAt >= :from`, { from });
@@ -290,7 +290,7 @@ let ExtractionEntityController = class ExtractionEntityController {
290
290
  async countParseLog(since, status, q, from, to) {
291
291
  const qb = this.parseLogRepo.createQueryBuilder('p');
292
292
  if (since) {
293
- qb.andWhere('p.createdAt > :since', { since });
293
+ qb.andWhere("datetime(p.createdAt) > datetime(:since)", { since });
294
294
  }
295
295
  if (status)
296
296
  qb.andWhere('p.status = :status', { status: status });
@@ -1 +1 @@
1
- {"version":3,"file":"extraction-entity.controller.js","sourceRoot":"","sources":["../../src/extraction/extraction-entity.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extraction-entity.controller.js","sourceRoot":"","sources":["../../src/extraction/extraction-entity.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA0H;AAC1H,6CAAmD;AACnD,qCAA+C;AAC/C,6DAA0F;AAC1F,uDAAmD;AACnD,yFAA8E;AAC9E,kEAAuD;AACvD,wEAA6D;AAC7D,4EAAiE;AACjE,sEAA2D;AAC3D,8EAAmE;AAO5D,IAAM,0BAA0B,GAAhC,MAAM,0BAA0B;IAElB;IACA;IAC4B;IACG;IACE;IACH;IACI;IAPrD,YACmB,iBAAoC,EACpC,cAA8B,EACF,YAAkC,EAC/B,eAAwC,EACtC,UAAqC,EACxC,OAA+B,EAC3B,WAAuC;QANzE,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpC,mBAAc,GAAd,cAAc,CAAgB;QACF,iBAAY,GAAZ,YAAY,CAAsB;QAC/B,oBAAe,GAAf,eAAe,CAAyB;QACtC,eAAU,GAAV,UAAU,CAA2B;QACxC,YAAO,GAAP,OAAO,CAAwB;QAC3B,gBAAW,GAAX,WAAW,CAA4B;IACzF,CAAC;IAIJ,YAAY;QACV,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;IACpC,CAAC;IAIK,AAAN,KAAK,CAAC,iBAAiB,CAErB,IASC;QAED,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC1D,MAAM,IAAI,4BAAmB,CAAC,0CAA0C,CAAC,CAAC;QAC5E,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;YACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,OAAO;YAChC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,IAAI;YACrC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,EAAE;YACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC;YAC5B,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI;SAC9B,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpD,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;IAC5E,CAAC;IAOD,cAAc,CAEZ,IAAkF;QAElF,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACvC,CAAC;IAIK,AAAN,KAAK,CAAC,YAAY,CACD,OAAO,QAAQ,EACd,KAAc,EAClB,CAAU,EACP,IAAa,EACf,EAAW;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;QACtC,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;YACpD,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,CAAC,QAAQ,CACb,IAAI,kBAAQ,CAAC,CAAC,CAAM,EAAE,EAAE;oBACtB,CAAC,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;yBACpC,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;yBACzC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;yBACxC,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjD,CAAC,CAAC,CACH,CAAC;YACJ,CAAC;YACD,IAAI,IAAI;gBAAE,MAAM,CAAC,QAAQ,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5D,IAAI,EAAE;gBAAE,MAAM,CAAC,QAAQ,CAAC,oBAAoB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YACtD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YAClF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;YAC/B,MAAM,KAAK,GAAG,EAAE,CAAC;YACjB,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;gBAC5B,MAAM,GAAG,GAAG,IAAA,yCAAoB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACjD,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,SAAS;gBAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACd,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;QAC9C,CAAC;QACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;YACxD,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,CAAC,QAAQ,CACb,IAAI,kBAAQ,CAAC,CAAC,CAAM,EAAE,EAAE;oBACtB,CAAC,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;yBACnC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;yBACxC,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;gBACjD,CAAC,CAAC,CACH,CAAC;YACJ,CAAC;YACD,IAAI,IAAI;gBAAE,MAAM,CAAC,QAAQ,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5D,IAAI,EAAE;gBAAE,MAAM,CAAC,QAAQ,CAAC,oBAAoB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YACtD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;YAClF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;YAC/B,MAAM,KAAK,GAAG,EAAE,CAAC;YACjB,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;gBAC5B,MAAM,GAAG,GAAG,IAAA,yCAAoB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACjD,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,SAAS;gBAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACd,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;YACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;QAC9C,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;QACvD,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,CAAC,QAAQ,CACb,IAAI,kBAAQ,CAAC,CAAC,CAAM,EAAE,EAAE;gBACtB,CAAC,CAAC,KAAK,CAAC,gBAAgB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;qBACnC,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;qBAC1C,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;qBACxC,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;YACjD,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;QACD,IAAI,IAAI;YAAE,MAAM,CAAC,QAAQ,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,IAAI,EAAE;YAAE,MAAM,CAAC,QAAQ,CAAC,oBAAoB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;QAElF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,MAAM,KAAK,GAAG,EAAE,CAAC;QACjB,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC5B,MAAM,GAAG,GAAG,IAAA,yCAAoB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACjD,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;IACxD,CAAC;IAIK,AAAN,KAAK,CAAC,aAAa,CACF,OAAO,QAAQ,EACd,KAAc,EAClB,CAAU,EACP,IAAa,EACf,EAAW;QAExB,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;QACtC,MAAM,IAAI,GACR,IAAI,KAAK,KAAK;YACZ,CAAC,CAAC,IAAI,CAAC,OAAO;YACd,CAAC,CAAC,IAAI,KAAK,SAAS;gBAClB,CAAC,CAAC,IAAI,CAAC,WAAW;gBAClB,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;QACxB,MAAM,KAAK,GAAG,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACpE,MAAM,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC1C,IAAI,KAAK,EAAE,CAAC;YAGV,EAAE,CAAC,QAAQ,CAAC,YAAY,KAAK,gCAAgC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5E,CAAC;QACD,IAAI,IAAI;YAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,KAAK,qBAAqB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/D,IAAI,EAAE;YAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,KAAK,mBAAmB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QACzD,IAAI,IAAI,EAAE,CAAC;YACT,MAAM,UAAU,GACd,IAAI,KAAK,KAAK;gBACZ,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,CAAC;gBACrD,CAAC,CAAC,IAAI,KAAK,SAAS;oBAClB,CAAC,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,aAAa,CAAC;oBACvC,CAAC,CAAC,CAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC;YAC5D,EAAE,CAAC,QAAQ,CACT,IAAI,kBAAQ,CAAC,CAAC,CAAM,EAAE,EAAE;gBACtB,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;oBAC/B,CAAC,CAAC,OAAO,CAAC,GAAG,KAAK,UAAU,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;QAClC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACzB,CAAC;IAIK,AAAN,KAAK,CAAC,cAAc,CAAe,GAAW;QAC5C,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,4BAAmB,CAAC,cAAc,CAAC,CAAC;QACxD,MAAM,SAAS,GAAG,GAAG,CAAC;QACtB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC;YACH,MAAM,GAAG,IAAA,8BAAS,EAAC,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC;QAClD,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,4BAAmB,CAAC,aAAa,CAAC,CAAC;QAC/C,CAAC;QACD,MAAM,QAAQ,GAAG,GAAG,MAAM,IAAI,IAAA,yCAAoB,EAAC,SAAS,CAAC,EAAE,CAAC;QAGhE,MAAM,UAAU,GAA+D,EAAE,CAAC;QAClF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC1E,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;QACzE,KAAK,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,GAAG,aAAa,EAAE,GAAG,WAAW,CAAC,CAAC;YAAE,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC5G,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QACpE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;QACnE,KAAK,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,GAAG,UAAU,EAAE,GAAG,QAAQ,CAAC,CAAC;YAAE,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACnG,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC5E,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;QAC3E,KAAK,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,GAAG,cAAc,EAAE,GAAG,YAAY,CAAC,CAAC;YAAE,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QAE/G,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;QACzC,CAAC;QAED,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACvB,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3E,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3E,OAAO,EAAE,GAAG,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAEvC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;YAClD,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;YACtC,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;SAC7B,CAAC,CAAC;QAEH,IAAI,WAAW,EAAE,eAAe,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxF,MAAM,CAAC,SAAS,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,EAAE,GAAG,WAAW,CAAC,eAAe,EAAE,CAAC;QAC7E,CAAC;QACD,OAAO;YACL,KAAK,EAAE,IAAI;YACX,IAAI;YACJ,MAAM;YACN,WAAW,EAAE,WAAW,IAAI,IAAI;SACjC,CAAC;IACJ,CAAC;IAIK,AAAN,KAAK,CAAC,SAAS,CAAgB,IAAY,EAAe,EAAU;QAClE,MAAM,QAAQ,GAAG,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAClC,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,4BAAmB,CAAC,mBAAmB,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC1E,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,0BAAiB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YACnE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC1B,CAAC;QACD,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;YACvE,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,0BAAiB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;YAChE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC1B,CAAC;QACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC3E,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,0BAAiB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YACpE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QAC1B,CAAC;QACD,MAAM,IAAI,4BAAmB,CAAC,qBAAqB,CAAC,CAAC;IACvD,CAAC;IAIK,AAAN,KAAK,CAAC,gBAAgB,CAAgB,IAAY,EAAe,EAAU;QACzE,MAAM,QAAQ,GAAG,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAClC,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,4BAAmB,CAAC,mBAAmB,CAAC,CAAC;QACrD,CAAC;QACD,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QAChD,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/B,MAAM,IAAI,4BAAmB,CAAC,qBAAqB,CAAC,CAAC;QACvD,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC;YACzC,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE;YACpC,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE;SAC7B,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;IAIK,AAAN,KAAK,CAAC,YAAY,CACA,KAAc,EACb,MAAe,EACpB,CAAU,EACP,IAAa,EACf,EAAW;QAExB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;QAChD,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/F,IAAI,MAAM;YAAE,EAAE,CAAC,QAAQ,CAAC,oBAAoB,EAAE,EAAE,MAAM,EAAE,MAA4B,EAAE,CAAC,CAAC;QACxF,IAAI,CAAC,EAAE,CAAC;YACN,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC;YACtB,EAAE,CAAC,QAAQ,CACT,IAAI,kBAAQ,CAAC,CAAC,CAAM,EAAE,EAAE;gBACtB,CAAC,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;qBACxC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;qBACxC,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;YACjD,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;QACD,IAAI,IAAI;YAAE,EAAE,CAAC,QAAQ,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,IAAI,EAAE;YAAE,EAAE,CAAC,QAAQ,CAAC,oBAAoB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAC9C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY;aACrC,kBAAkB,CAAC,GAAG,CAAC;aACvB,KAAK,CAAC,kBAAkB,CAAC;aACzB,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACpC,CAAC;IAIK,AAAN,KAAK,CAAC,aAAa,CACD,KAAc,EACb,MAAe,EACpB,CAAU,EACP,IAAa,EACf,EAAW;QAExB,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,KAAK,EAAE,CAAC;YAEV,EAAE,CAAC,QAAQ,CAAC,0CAA0C,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACrE,CAAC;QACD,IAAI,MAAM;YAAE,EAAE,CAAC,QAAQ,CAAC,oBAAoB,EAAE,EAAE,MAAM,EAAE,MAA4B,EAAE,CAAC,CAAC;QACxF,IAAI,CAAC,EAAE,CAAC;YACN,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC;YACtB,EAAE,CAAC,QAAQ,CACT,IAAI,kBAAQ,CAAC,CAAC,CAAM,EAAE,EAAE;gBACtB,CAAC,CAAC,KAAK,CAAC,qBAAqB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;qBACxC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;qBACxC,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;YACjD,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;QACD,IAAI,IAAI;YAAE,EAAE,CAAC,QAAQ,CAAC,sBAAsB,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACxD,IAAI,EAAE;YAAE,EAAE,CAAC,QAAQ,CAAC,oBAAoB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;QAClD,MAAM,KAAK,GAAG,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;QAClC,OAAO,EAAE,KAAK,EAAE,CAAC;IACnB,CAAC;IAIK,AAAN,KAAK,CAAC,WAAW,CAAc,EAAU;QACvC,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,MAAM,IAAI,4BAAmB,CAAC,sBAAsB,CAAC,CAAC;QACxD,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QACzE,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,0BAAiB,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;QACpE,OAAO,IAAI,CAAC;IACd,CAAC;IAIK,AAAN,KAAK,CAAC,WAAW,CAAqB,SAAiB;QACrD,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,uCAAc,CAAC,CAAC;QAC1E,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAC3F,OAAO,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC/D,CAAC;IAID,KAAK,CAAqB,SAAiB;QACzC,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC;IAIK,AAAN,KAAK,CAAC,OAAO,CACI,IAAY,EACd,EAAU,EACf,IAAyB;QAEjC,MAAM,QAAQ,GAAG,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAClC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9H,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC1E,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;YACjD,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;YACnB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjD,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;QAClD,CAAC;QACD,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;YACvE,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;YAC9C,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;YACnB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9C,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;QAClD,CAAC;QACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC3E,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAClD,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;YACnB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAClD,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC;QAClD,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACzC,CAAC;CAEF,CAAA;AAzZY,gEAA0B;AAarC;IADC,IAAA,YAAG,EAAC,UAAU,CAAC;;;;8DAGf;AAIK;IADL,IAAA,aAAI,EAAC,UAAU,CAAC;IAEd,WAAA,IAAA,aAAI,GAAE,CAAA;;;;mEA2BR;AAOD;IADC,IAAA,aAAI,EAAC,iBAAiB,CAAC;IAErB,WAAA,IAAA,aAAI,GAAE,CAAA;;;;gEAIR;AAIK;IADL,IAAA,YAAG,EAAC,UAAU,CAAC;IAEb,WAAA,IAAA,cAAK,EAAC,MAAM,CAAC,CAAA;IACb,WAAA,IAAA,cAAK,EAAC,OAAO,CAAC,CAAA;IACd,WAAA,IAAA,cAAK,EAAC,GAAG,CAAC,CAAA;IACV,WAAA,IAAA,cAAK,EAAC,MAAM,CAAC,CAAA;IACb,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;8DA6Eb;AAIK;IADL,IAAA,YAAG,EAAC,gBAAgB,CAAC;IAEnB,WAAA,IAAA,cAAK,EAAC,MAAM,CAAC,CAAA;IACb,WAAA,IAAA,cAAK,EAAC,OAAO,CAAC,CAAA;IACd,WAAA,IAAA,cAAK,EAAC,GAAG,CAAC,CAAA;IACV,WAAA,IAAA,cAAK,EAAC,MAAM,CAAC,CAAA;IACb,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;+DAmCb;AAIK;IADL,IAAA,YAAG,EAAC,iBAAiB,CAAC;IACD,WAAA,IAAA,cAAK,EAAC,KAAK,CAAC,CAAA;;;;gEAgDjC;AAIK;IADL,IAAA,YAAG,EAAC,oBAAoB,CAAC;IACT,WAAA,IAAA,cAAK,EAAC,MAAM,CAAC,CAAA;IAAgB,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;2DAqBxD;AAIK;IADL,IAAA,YAAG,EAAC,4BAA4B,CAAC;IACV,WAAA,IAAA,cAAK,EAAC,MAAM,CAAC,CAAA;IAAgB,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;kEAc/D;AAIK;IADL,IAAA,YAAG,EAAC,WAAW,CAAC;IAEd,WAAA,IAAA,cAAK,EAAC,OAAO,CAAC,CAAA;IACd,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,cAAK,EAAC,GAAG,CAAC,CAAA;IACV,WAAA,IAAA,cAAK,EAAC,MAAM,CAAC,CAAA;IACb,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;8DAwBb;AAIK;IADL,IAAA,YAAG,EAAC,iBAAiB,CAAC;IAEpB,WAAA,IAAA,cAAK,EAAC,OAAO,CAAC,CAAA;IACd,WAAA,IAAA,cAAK,EAAC,QAAQ,CAAC,CAAA;IACf,WAAA,IAAA,cAAK,EAAC,GAAG,CAAC,CAAA;IACV,WAAA,IAAA,cAAK,EAAC,MAAM,CAAC,CAAA;IACb,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;+DAsBb;AAIK;IADL,IAAA,YAAG,EAAC,eAAe,CAAC;IACF,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;;;;6DAQ7B;AAIK;IADL,IAAA,YAAG,EAAC,mCAAmC,CAAC;IACtB,WAAA,IAAA,cAAK,EAAC,WAAW,CAAC,CAAA;;;;6DAIpC;AAID;IADC,IAAA,aAAI,EAAC,kBAAkB,CAAC;IAClB,WAAA,IAAA,cAAK,EAAC,WAAW,CAAC,CAAA;;;;uDAExB;AAIK;IADL,IAAA,cAAK,EAAC,yBAAyB,CAAC;IAE9B,WAAA,IAAA,cAAK,EAAC,MAAM,CAAC,CAAA;IACb,WAAA,IAAA,cAAK,EAAC,IAAI,CAAC,CAAA;IACX,WAAA,IAAA,aAAI,GAAE,CAAA;;;;yDA0BR;qCAvZU,0BAA0B;IADtC,IAAA,mBAAU,GAAE;IAKR,WAAA,IAAA,0BAAgB,EAAC,2BAAQ,CAAC,CAAA;IAC1B,WAAA,IAAA,0BAAgB,EAAC,iCAAW,CAAC,CAAA;IAC7B,WAAA,IAAA,0BAAgB,EAAC,qCAAa,CAAC,CAAA;IAC/B,WAAA,IAAA,0BAAgB,EAAC,+BAAU,CAAC,CAAA;IAC5B,WAAA,IAAA,0BAAgB,EAAC,uCAAc,CAAC,CAAA;qCANG,sCAAiB;QACpB,gCAAc;QACY,oBAAU;QACJ,oBAAU;QACb,oBAAU;QAChB,oBAAU;QACF,oBAAU;GARjE,0BAA0B,CAyZtC"}
@@ -4,5 +4,10 @@ export interface ConfigOptions {
4
4
  watchFolder?: string;
5
5
  lang?: string;
6
6
  }
7
- export declare function runConfig(options: ConfigOptions): import("../config.js").HunterMateConfig;
7
+ export declare function runConfig(options: ConfigOptions): {
8
+ serverUrl: string;
9
+ saasUrl: string;
10
+ lang: string;
11
+ watchFolder?: string;
12
+ };
8
13
  export declare const configCommand: Command;
@@ -52,6 +52,11 @@ export declare function runDoctor(opts: {
52
52
  healed: string[];
53
53
  actions: string[];
54
54
  data?: DoctorRunResponse | null;
55
+ nodeVersion?: string;
56
+ serverRunning?: boolean;
57
+ extensionInstalled?: boolean;
58
+ extensionConnected?: boolean;
59
+ loggedIn?: boolean;
55
60
  }>;
56
61
  export declare const doctorCommand: Command;
57
62
  export declare const repairLinkedInDupesCommand: Command;
@@ -2,7 +2,7 @@ import { Command } from 'commander';
2
2
  import axios from 'axios';
3
3
  import * as fs from 'fs';
4
4
  import * as path from 'path';
5
- import { loadConfig } from '../config.js';
5
+ import { loadConfig, saveConfig, normalizeConfig, CONFIG_FILE } from '../config.js';
6
6
  import { runInit } from './init.js';
7
7
  import { runStart } from './server.js';
8
8
  import { runInstall } from './install.js';
@@ -59,6 +59,14 @@ export async function runDoctor(opts) {
59
59
  console.log(`${B.bold}${B.cyan}│ HunterMate Doctor · 环境全链路自检与自愈 │${B.reset}`);
60
60
  console.log(`${B.bold}${B.cyan}╰─────────────────────────────────────────────╯${B.reset}\n`);
61
61
  }
62
+ // ── 0) Node 版本(Windows better-sqlite3 预构建友好度) ──
63
+ const nodeMajor = parseInt(process.versions.node.split('.')[0], 10);
64
+ const nodeVersionFriendly = [20, 22, 24].includes(nodeMajor);
65
+ checks.push({
66
+ key: 'node_version',
67
+ status: nodeVersionFriendly ? 'ok' : 'warn',
68
+ detail: `Node ${process.versions.node}${nodeVersionFriendly ? '' : ' (hunter-mate 预构建包对 Node 20/22/24 支持最好,Windows 无编译器时建议切到 Node 22 LTS)'}`,
69
+ });
62
70
  // ── 1) 目录 & token ──
63
71
  let initResult = null;
64
72
  try {
@@ -76,6 +84,31 @@ export async function runDoctor(opts) {
76
84
  }
77
85
  if (!initResult)
78
86
  initResult = runInit();
87
+ // ── 1.5) 配置 URL 兼容性(部署形态收敛自检:子路径 → 根路径等) ──
88
+ try {
89
+ if (fs.existsSync(CONFIG_FILE())) {
90
+ const rawCfg = JSON.parse(fs.readFileSync(CONFIG_FILE(), 'utf-8'));
91
+ const { changed, migrated } = normalizeConfig(rawCfg);
92
+ if (!changed) {
93
+ checks.push({ key: 'config_url_schema', status: 'ok', detail: '配置 URL 已为最新规范形态(无已知废弃路径前缀)' });
94
+ }
95
+ else {
96
+ const detail = migrated.map((m) => `${m.key}: ${m.from} → ${m.to}`).join('; ');
97
+ if (autoHeal) {
98
+ saveConfig(rawCfg); // 写入规范化结果(内部也会 normalize)
99
+ checks.push({ key: 'config_url_schema', status: 'ok', detail: `检测到已废弃路径并自动修复: ${detail}` });
100
+ healed.push('normalize_config_urls');
101
+ }
102
+ else {
103
+ checks.push({ key: 'config_url_schema', status: 'warn', detail: `配置含已废弃路径前缀: ${detail}` });
104
+ hints.push('运行 hunter-mate doctor 自动修复');
105
+ }
106
+ }
107
+ }
108
+ }
109
+ catch (e) {
110
+ checks.push({ key: 'config_url_schema', status: 'skip', detail: `跳过(读取配置失败): ${e.message}` });
111
+ }
79
112
  // ── 2) 扩展安装检测 + 自动安装 ──
80
113
  const manifestPath = path.join(initResult.extensionDir, 'manifest.json');
81
114
  let extInstalled = fs.existsSync(manifestPath);
@@ -224,9 +257,11 @@ export async function runDoctor(opts) {
224
257
  }
225
258
  }
226
259
  // ── 5) 登录态(不强制) ──
260
+ let loggedIn = false;
227
261
  try {
228
262
  const { getToken } = await import('../keychain.js');
229
263
  const token = await getToken();
264
+ loggedIn = !!token;
230
265
  checks.push({
231
266
  key: 'auth',
232
267
  status: token ? 'ok' : 'warn',
@@ -303,7 +338,14 @@ export async function runDoctor(opts) {
303
338
  console.log(`\n${B.bold}${B.red}✗ 环境未就绪, 请按上方引导完成修复后重试。${B.reset}\n`);
304
339
  }
305
340
  }
306
- return { summary, checks, hints, healed, actions, data };
341
+ return {
342
+ summary, checks, hints, healed, actions, data,
343
+ nodeVersion: process.versions.node,
344
+ serverRunning: serverUp,
345
+ extensionInstalled: extInstalled,
346
+ extensionConnected: extConnected,
347
+ loggedIn,
348
+ };
307
349
  }
308
350
  /** 友好中文引导 — 当环境不完备时给用户清晰的操作步骤 */
309
351
  function showFriendlyGuide(extInstalled, extConnected, serverUp, healed, extDir) {
package/dist/config.d.ts CHANGED
@@ -6,6 +6,41 @@ export interface HunterMateConfig {
6
6
  lang: string;
7
7
  watchFolder?: string;
8
8
  }
9
+ export declare const CONFIG_DIR: () => string;
10
+ export declare const CONFIG_FILE: () => string;
11
+ /**
12
+ * 已知废弃的 URL 路径前缀(按部署形态演进顺序追加)。
13
+ * 每当 nginx / 服务端路径收敛(如子路径 → 根路径)时,把旧前缀加到这里,
14
+ * loadConfig() / saveConfig() 会自动剥离,doctor 会自检并给出 healed 记录。
15
+ * 匹配规则:字符串中任何一段形如 `{host}{prefix}` 都会被替换为 `{host}/`,
16
+ * 且自动处理尾斜杠(例如 https://host/llm-research/foo → https://host/foo)。
17
+ */
18
+ export declare const DEPRECATED_URL_PATH_PREFIXES: string[];
19
+ /**
20
+ * 规范化 URL 字符串: 剥离所有已知废弃的子路径前缀。
21
+ * 例: normalizeUrlValue('https://dev-ops.hiredchina.com/llm-research/errors')
22
+ * → 'https://dev-ops.hiredchina.com/errors'
23
+ */
24
+ export declare function normalizeUrlValue(value: string): string;
25
+ /**
26
+ * 对 config 对象所有 string 字段应用 URL 规范化。
27
+ * 返回 { config, changed } 便于调用方决定是否持久化。
28
+ * 深度 1 层足够(配置文件是扁平 key-value)。
29
+ */
30
+ export declare function normalizeConfig<T extends Record<string, any>>(raw: T): {
31
+ config: T;
32
+ changed: boolean;
33
+ migrated: Array<{
34
+ key: string;
35
+ from: string;
36
+ to: string;
37
+ }>;
38
+ };
9
39
  export declare function ensureConfigDir(): void;
10
40
  export declare function loadConfig(): HunterMateConfig;
11
- export declare function saveConfig(config: Partial<HunterMateConfig>): HunterMateConfig;
41
+ export declare function saveConfig(config: Partial<HunterMateConfig>): {
42
+ serverUrl: string;
43
+ saasUrl: string;
44
+ lang: string;
45
+ watchFolder?: string;
46
+ };
package/dist/config.js CHANGED
@@ -2,13 +2,67 @@ import * as fs from 'fs';
2
2
  import * as path from 'path';
3
3
  import { createJsonConfigStore } from '@chromepilot/kit';
4
4
  const HOME = () => process.env.HUNTER_MATE_HOME || process.env.HOME || process.env.USERPROFILE || '.';
5
- const CONFIG_DIR = () => path.join(HOME(), '.hunter-mate');
6
- const CONFIG_FILE = () => path.join(CONFIG_DIR(), 'config.json');
5
+ export const CONFIG_DIR = () => path.join(HOME(), '.hunter-mate');
6
+ export const CONFIG_FILE = () => path.join(CONFIG_DIR(), 'config.json');
7
+ /**
8
+ * 已知废弃的 URL 路径前缀(按部署形态演进顺序追加)。
9
+ * 每当 nginx / 服务端路径收敛(如子路径 → 根路径)时,把旧前缀加到这里,
10
+ * loadConfig() / saveConfig() 会自动剥离,doctor 会自检并给出 healed 记录。
11
+ * 匹配规则:字符串中任何一段形如 `{host}{prefix}` 都会被替换为 `{host}/`,
12
+ * 且自动处理尾斜杠(例如 https://host/llm-research/foo → https://host/foo)。
13
+ */
14
+ export const DEPRECATED_URL_PATH_PREFIXES = [
15
+ '/llm-research', // 2026-08-21 dev-ops 从子路径部署收敛到根路径
16
+ ];
17
+ /**
18
+ * 规范化 URL 字符串: 剥离所有已知废弃的子路径前缀。
19
+ * 例: normalizeUrlValue('https://dev-ops.hiredchina.com/llm-research/errors')
20
+ * → 'https://dev-ops.hiredchina.com/errors'
21
+ */
22
+ export function normalizeUrlValue(value) {
23
+ if (typeof value !== 'string')
24
+ return value;
25
+ let out = value;
26
+ for (const prefix of DEPRECATED_URL_PATH_PREFIXES) {
27
+ // 匹配 host/<prefix> 形式,支持 <prefix>/... 和 <prefix> 结尾
28
+ // e.g. https://host/llm-research → https://host/
29
+ // https://host/llm-research/x → https://host/x
30
+ const re = new RegExp(`(${prefix})(/|$)`, 'g');
31
+ out = out.replace(re, '/$2');
32
+ }
33
+ // 合并多余的连续斜杠(上面的替换可能产生 "//")
34
+ // 协议里的 :// 不动,只处理 host 之后的部分
35
+ out = out.replace(/^(https?:\/\/)(.*)/, (_m, scheme, rest) => {
36
+ return scheme + rest.replace(/\/{2,}/g, '/');
37
+ });
38
+ return out;
39
+ }
40
+ /**
41
+ * 对 config 对象所有 string 字段应用 URL 规范化。
42
+ * 返回 { config, changed } 便于调用方决定是否持久化。
43
+ * 深度 1 层足够(配置文件是扁平 key-value)。
44
+ */
45
+ export function normalizeConfig(raw) {
46
+ const migrated = [];
47
+ const out = { ...raw };
48
+ for (const key of Object.keys(out)) {
49
+ const value = out[key];
50
+ // 覆盖类型定义之外的自定义字段(如用户手动添加的 apiBase 等)
51
+ if (typeof value === 'string' && (value.startsWith('http://') || value.startsWith('https://') || value.includes('/llm-research'))) {
52
+ const normalized = normalizeUrlValue(value);
53
+ if (normalized !== value) {
54
+ migrated.push({ key, from: value, to: normalized });
55
+ out[key] = normalized;
56
+ }
57
+ }
58
+ }
59
+ return { config: out, changed: migrated.length > 0, migrated };
60
+ }
7
61
  const store = createJsonConfigStore({
8
62
  configPath: CONFIG_FILE,
9
63
  defaults: {
10
64
  serverUrl: 'http://localhost:34570',
11
- saasUrl: 'https://dev-ops.hiredchina.com/llm-research',
65
+ saasUrl: 'https://dev-ops.hiredchina.com',
12
66
  lang: 'zh-CN',
13
67
  },
14
68
  });
@@ -18,8 +72,23 @@ export function ensureConfigDir() {
18
72
  }
19
73
  }
20
74
  export function loadConfig() {
21
- return store.load();
75
+ const raw = store.load();
76
+ const { config: normalized, changed } = normalizeConfig(raw);
77
+ if (changed) {
78
+ // 配置含有已废弃路径,自动静默迁移并保存,用户下次读取一定是规范形态。
79
+ try {
80
+ fs.writeFileSync(CONFIG_FILE(), JSON.stringify(normalized, null, 2));
81
+ }
82
+ catch {
83
+ /* read-only fs, ignore */
84
+ }
85
+ }
86
+ return normalized;
22
87
  }
23
88
  export function saveConfig(config) {
24
- return store.save(config);
89
+ const current = loadConfig(); // 已规范化(必要时已写回)
90
+ const { config: next } = normalizeConfig({ ...current, ...config });
91
+ ensureConfigDir();
92
+ fs.writeFileSync(CONFIG_FILE(), JSON.stringify(next, null, 2));
93
+ return next;
25
94
  }
@@ -18,6 +18,13 @@ function locateServerEntryDir() {
18
18
  const checker = createNativeChecker({
19
19
  probeDir: () => locateServerEntryDir(),
20
20
  skipDetail: "未找到 server 入口(packages/server/dist|src),跳过原生模块检查",
21
- rebuildHint: (moduleName, compiledLabel) => `二选一:① 切回 ${compiledLabel} 的 node 再运行;② 用当前 node 重编译:pnpm rebuild -r ${moduleName}(重编后重启 server)`,
21
+ rebuildHint: (moduleName, compiledLabel) => {
22
+ const isWin = process.platform === "win32";
23
+ const base = `二选一:① 切回 ${compiledLabel} 的 node 再运行;② 用当前 node 重编译:pnpm rebuild -r ${moduleName}(重编后重启 server)`;
24
+ if (isWin && moduleName === "better-sqlite3") {
25
+ return `${base}。Windows 无 C++ 编译器时,推荐直接安装 Node 22 LTS(预构建包最全),无需安装 Visual Studio Build Tools`;
26
+ }
27
+ return base;
28
+ },
22
29
  });
23
30
  export const checkNativeModules = checker.checkNativeModules;
package/dist/updater.d.ts CHANGED
@@ -6,17 +6,21 @@
6
6
  export declare function computeDevLinked(pkgRoot: string): boolean;
7
7
  export declare function isDevLinked(): boolean;
8
8
  export declare const npmLatestVersion: (pkg?: string) => string | null;
9
- export declare const npmSelfUpdate: (pkg?: string) => {
10
- ok: boolean;
11
- msg: string;
12
- };
13
9
  export declare const updateCheckIntervalMs: () => number;
14
10
  export declare const shouldCheckUpdate: (stateFile?: string, now?: number, intervalMs?: number) => boolean;
15
11
  export declare const markUpdateChecked: (stateFile?: string) => void;
12
+ export interface NpmSelfUpdateResult {
13
+ ok: boolean;
14
+ msg: string;
15
+ }
16
+ export declare function npmSelfUpdate(pkg?: string): NpmSelfUpdateResult;
16
17
  export interface CliUpdateOutcome {
17
18
  logs: string[];
18
19
  devSkipped: boolean;
19
20
  updated: boolean;
20
21
  }
21
- /** preAction 集成入口:返回日志行数组,永不 throw */
22
+ /**
23
+ * preAction 集成入口:返回日志行数组,永不 throw。
24
+ * 逻辑等价于 kit 的 autoCliUpdate,但安装命令走 --prefix。
25
+ */
22
26
  export declare function maybeCliSelfUpdate(): Promise<CliUpdateOutcome>;
package/dist/updater.js CHANGED
@@ -6,18 +6,25 @@
6
6
  * - dev 判定(hc-hw local worktree 布局 + HUNTER_MATE_DEV=1)为本仓特有安装形态
7
7
  * - 已安装版本读取走 version.ts 的 package.json SSOT 扫描
8
8
  *
9
+ * 重要: hunter-mate 使用用户级安装(--prefix ~/.hunter-mate/cli),
10
+ * 避免 Workbuddy/Trae 沙盒拦截 `npm install -g` 全局写入。
11
+ * 因此覆盖 kit 默认的 npmSelfUpdate/autoCliUpdate,统一走 --prefix。
12
+ *
9
13
  * 逃生开关(kit autoCliUpdate 内统一处理):
10
14
  * - HUNTER_MATE_NO_AUTOUPDATE=1 关闭全部自动更新(CLI + 一致性,preAction 层)
11
15
  * - HUNTER_MATE_UPDATE_CHECK_INTERVAL_MS 覆盖节流间隔(默认 3600000)
12
16
  * - HUNTER_MATE_DEV=1 强制视为 dev 模式(测试用)
13
17
  */
18
+ import * as fs from 'node:fs';
14
19
  import * as path from 'path';
20
+ import { spawnSync } from 'node:child_process';
15
21
  import { fileURLToPath } from 'node:url';
16
22
  import { createCliUpdater } from '@chromepilot/kit';
17
23
  import { readInstalledVersions } from './version.js';
18
24
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
19
25
  const HOME = () => process.env.HUNTER_MATE_HOME || process.env.HOME || process.env.USERPROFILE || '.';
20
26
  const ROOT = () => path.join(HOME(), '.hunter-mate');
27
+ const CLI_PREFIX = () => path.join(ROOT(), 'cli');
21
28
  /**
22
29
  * 判定是否开发软链模式(纯函数,便于单测):
23
30
  * 包根路径含 /worktrees/ 段(hc-hw local worktree 布局)或 HUNTER_MATE_DEV=1。
@@ -31,7 +38,7 @@ export function computeDevLinked(pkgRoot) {
31
38
  export function isDevLinked() {
32
39
  return computeDevLinked(path.join(__dirname, '..'));
33
40
  }
34
- const updater = createCliUpdater({
41
+ const kitUpdater = createCliUpdater({
35
42
  npmPackage: 'hunter-mate',
36
43
  envPrefix: 'HUNTER_MATE',
37
44
  stateDir: ROOT,
@@ -39,14 +46,73 @@ const updater = createCliUpdater({
39
46
  isDev: isDevLinked,
40
47
  });
41
48
  // ---------------------------------------------------------------------------
42
- // 兼容导出(调用方零改动)
49
+ // 复用 kit 的工具函数(版本查询、节流标记等)
43
50
  // ---------------------------------------------------------------------------
44
- export const npmLatestVersion = updater.npmLatestVersion;
45
- export const npmSelfUpdate = updater.npmSelfUpdate;
46
- export const updateCheckIntervalMs = updater.updateCheckIntervalMs;
47
- export const shouldCheckUpdate = updater.shouldCheckUpdate;
48
- export const markUpdateChecked = updater.markUpdateChecked;
49
- /** preAction 集成入口:返回日志行数组,永不 throw */
51
+ export const npmLatestVersion = kitUpdater.npmLatestVersion;
52
+ export const updateCheckIntervalMs = kitUpdater.updateCheckIntervalMs;
53
+ export const shouldCheckUpdate = kitUpdater.shouldCheckUpdate;
54
+ export const markUpdateChecked = kitUpdater.markUpdateChecked;
55
+ export function npmSelfUpdate(pkg = 'hunter-mate') {
56
+ const prefix = CLI_PREFIX();
57
+ fs.mkdirSync(prefix, { recursive: true });
58
+ // 优先使用用户通过环境变量指定的 npm 路径(沙盒内可能只有局部 npm)
59
+ const npmBin = process.env.HUNTER_MATE_NPM_BIN || 'npm';
60
+ const args = ['install', `${pkg}@latest`, '--prefix', prefix];
61
+ const r = spawnSync(npmBin, args, {
62
+ stdio: 'inherit',
63
+ timeout: 120_000,
64
+ env: {
65
+ ...process.env,
66
+ // 防止 npm 因为用户 home 不可写而失败;--prefix 已指定安装位置
67
+ npm_config_cache: path.join(prefix, '.npm-cache'),
68
+ },
69
+ });
70
+ if (r.status === 0) {
71
+ return {
72
+ ok: true,
73
+ msg: `${npmBin} install ${pkg}@latest --prefix ${prefix} 完成,下一条命令起使用新版本`,
74
+ };
75
+ }
76
+ return {
77
+ ok: false,
78
+ msg: `${npmBin} install ${pkg}@latest --prefix ${prefix} 失败 (exit=${r.status}),可手动执行`,
79
+ };
80
+ }
81
+ /**
82
+ * preAction 集成入口:返回日志行数组,永不 throw。
83
+ * 逻辑等价于 kit 的 autoCliUpdate,但安装命令走 --prefix。
84
+ */
50
85
  export async function maybeCliSelfUpdate() {
51
- return updater.autoCliUpdate();
86
+ const logs = [];
87
+ const outcome = { logs, devSkipped: false, updated: false };
88
+ try {
89
+ if (process.env.HUNTER_MATE_NO_AUTOUPDATE === '1')
90
+ return outcome;
91
+ if (isDevLinked()) {
92
+ outcome.devSkipped = true;
93
+ logs.push('dev 软链模式,跳过 CLI 自更新(改代码请 pnpm build;reload/restart 自愈不受影响)');
94
+ return outcome;
95
+ }
96
+ if (!shouldCheckUpdate())
97
+ return outcome;
98
+ markUpdateChecked();
99
+ const installed = readInstalledVersions().cli;
100
+ if (!installed || installed === '0.0.0')
101
+ return outcome;
102
+ const latest = npmLatestVersion();
103
+ if (!latest) {
104
+ logs.push(`npm registry 查询 hunter-mate 失败,本次跳过自更新`);
105
+ return outcome;
106
+ }
107
+ if (latest === installed)
108
+ return outcome;
109
+ logs.push(`CLI 自更新: ${installed} → ${latest}`);
110
+ const r = npmSelfUpdate();
111
+ logs.push(r.msg);
112
+ outcome.updated = r.ok;
113
+ }
114
+ catch (err) {
115
+ logs.push(`自动更新检测异常(不影响命令执行): ${err instanceof Error ? err.message : String(err)}`);
116
+ }
117
+ return outcome;
52
118
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hunter-mate",
3
- "version": "0.1.4",
3
+ "version": "0.1.6",
4
4
  "type": "module",
5
5
  "description": "HiredChina 猎头 Agent 数据助手 CLI:人才库/客户/职位数据访问,浏览器录制解析简历,server/扩展一致性自愈",
6
6
  "license": "MIT",
@@ -31,7 +31,7 @@
31
31
  "open": "^8.4.0",
32
32
  "uuid": "^9.0.0",
33
33
  "ws": "^8.21.3",
34
- "@hunter-mate/shared": "0.1.3"
34
+ "@hunter-mate/shared": "0.1.5"
35
35
  },
36
36
  "devDependencies": {
37
37
  "@types/better-sqlite3": "^7.6.0",