mycontext-cli 4.2.1 → 4.2.3

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 (51) hide show
  1. package/README.md +22 -0
  2. package/dist/README.md +22 -0
  3. package/dist/cli.js +4 -0
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/doctor.d.ts +18 -0
  6. package/dist/commands/doctor.d.ts.map +1 -0
  7. package/dist/commands/doctor.js +53 -0
  8. package/dist/commands/doctor.js.map +1 -0
  9. package/dist/commands/generate.d.ts.map +1 -1
  10. package/dist/commands/generate.js +39 -3
  11. package/dist/commands/generate.js.map +1 -1
  12. package/dist/commands/init.d.ts.map +1 -1
  13. package/dist/commands/init.js +129 -0
  14. package/dist/commands/init.js.map +1 -1
  15. package/dist/doctor/DoctorEngine.d.ts +5 -0
  16. package/dist/doctor/DoctorEngine.d.ts.map +1 -0
  17. package/dist/doctor/DoctorEngine.js +491 -0
  18. package/dist/doctor/DoctorEngine.js.map +1 -0
  19. package/dist/doctor/api.d.ts +4 -0
  20. package/dist/doctor/api.d.ts.map +1 -0
  21. package/dist/doctor/api.js +19 -0
  22. package/dist/doctor/api.js.map +1 -0
  23. package/dist/doctor/rules/dead-code-rules.d.ts +3 -0
  24. package/dist/doctor/rules/dead-code-rules.d.ts.map +1 -0
  25. package/dist/doctor/rules/dead-code-rules.js +269 -0
  26. package/dist/doctor/rules/dead-code-rules.js.map +1 -0
  27. package/dist/doctor/rules/index.d.ts +11 -0
  28. package/dist/doctor/rules/index.d.ts.map +1 -0
  29. package/dist/doctor/rules/index.js +21 -0
  30. package/dist/doctor/rules/index.js.map +1 -0
  31. package/dist/doctor/rules/nextjs-rules.d.ts +3 -0
  32. package/dist/doctor/rules/nextjs-rules.d.ts.map +1 -0
  33. package/dist/doctor/rules/nextjs-rules.js +357 -0
  34. package/dist/doctor/rules/nextjs-rules.js.map +1 -0
  35. package/dist/doctor/rules/node-rules.d.ts +3 -0
  36. package/dist/doctor/rules/node-rules.d.ts.map +1 -0
  37. package/dist/doctor/rules/node-rules.js +290 -0
  38. package/dist/doctor/rules/node-rules.js.map +1 -0
  39. package/dist/doctor/rules/turbo-rules.d.ts +3 -0
  40. package/dist/doctor/rules/turbo-rules.d.ts.map +1 -0
  41. package/dist/doctor/rules/turbo-rules.js +215 -0
  42. package/dist/doctor/rules/turbo-rules.js.map +1 -0
  43. package/dist/doctor/types.d.ts +87 -0
  44. package/dist/doctor/types.d.ts.map +1 -0
  45. package/dist/doctor/types.js +6 -0
  46. package/dist/doctor/types.js.map +1 -0
  47. package/dist/package.json +2 -2
  48. package/dist/services/ProjectScanner.d.ts.map +1 -1
  49. package/dist/services/ProjectScanner.js +1 -0
  50. package/dist/services/ProjectScanner.js.map +1 -1
  51. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAA0B;AAC1B,sDAA8B;AAC9B,oDAA4B;AAC5B,sEAAuC;AACvC,8CAAmD;AACnD,oDAAwD;AAExD,iDAAyC;AACzC,6CAA+B;AAC/B,2CAA6B;AAE7B,2CAAyD;AACzD,wDAAqD;AAerD,MAAa,WAAW;IAAxB;QACU,OAAE,GAAG,IAAI,8BAAiB,EAAE,CAAC;QAC7B,oBAAe,GAAG,IAAI,4BAAqB,EAAE,CAAC;IAmkBxD,CAAC;IAjkBC,KAAK,CAAC,OAAO,CAAC,WAA+B,EAAE,OAAoB;QACjE,MAAM,OAAO,GAAG,IAAI,yBAAe,CAAC,yBAAyB,CAAC,CAAC;QAE/D,IAAI,CAAC;YACH,6BAA6B;YAC7B,IAAI,CAAC,eAAe,EAAE,CAAC;YAEvB,yCAAyC;YACzC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;YACjC,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;YAClF,wEAAwE;YACxE,MAAM,cAAc,GAAG,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;YAClF,MAAM,aAAa,GAAG,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;YAEnD,IAAI,aAAa,IAAI,cAAc,IAAI,cAAc,EAAE,CAAC;gBACtD,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;oBAClC,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,aAAa;oBACnB,OAAO,EAAE,eAAK,CAAC,MAAM,CAAC,2EAA2E,CAAC;oBAClG,OAAO,EAAE,IAAI;iBAChB,CAAC,CAAC;gBAEH,IAAI,WAAW,EAAE,CAAC;oBACd,gCAAgC;oBAChC,IAAI,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;oBACrC,IAAI,cAAc,GAAG,EAAE,CAAC;oBACxB,IAAI,CAAC;wBACD,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC,CAAC;wBACrE,IAAI,GAAG,CAAC,IAAI;4BAAE,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC;wBAC9B,IAAI,GAAG,CAAC,WAAW;4BAAE,cAAc,GAAG,GAAG,CAAC,WAAW,CAAC;oBAC1D,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACT,SAAS;oBACb,CAAC;oBAED,6BAA6B;oBAC7B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;wBAC/B,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,UAAU;wBAChB,OAAO,EAAE,2CAA2C;wBACpD,OAAO,EAAE;4BACL,EAAE,KAAK,EAAE,4BAA4B,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,iDAAiD,EAAE;4BACtH,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE;4BAC5F,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE;yBAChG;wBACD,OAAO,EAAE,CAAC;qBACb,CAAC,CAAC;oBAEH,OAAO,CAAC,KAAK,EAAE,CAAC;oBAChB,IAAI,WAAW,GAAG,cAAc,IAAI,GAAG,IAAI,mBAAmB,CAAC;oBAE/D,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;wBACtB,OAAO,CAAC,UAAU,CAAC,+BAA+B,CAAC,CAAC;wBACpD,IAAI,CAAC;4BACD,MAAM,EAAE,cAAc,EAAE,GAAG,wDAAa,4BAA4B,GAAC,CAAC;4BACtE,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,UAAU,CAAC,CAAC;4BAC/C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC;4BAEtC,6CAA6C;4BAC7C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;4BAC7B,MAAM,SAAS,GAAG,EAAE,CAAC;4BACrB,4DAA4D;4BAC5D,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,gBAAgB,IAAI,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAC;gCAAE,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;4BACxH,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gCAAE,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;4BACjH,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,oBAAoB,IAAI,CAAC,CAAC,IAAI,KAAK,oBAAoB,CAAC;gCAAE,SAAS,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;4BAEpI,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ;iCACjC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;iCACtD,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;iCAChB,IAAI,CAAC,IAAI,CAAC,CAAC;4BAEhB,mCAAmC;4BACnC,IAAI,aAAa,GAAG,EAAE,CAAC;4BACvB,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,WAAW,CAAC,CAAC;4BACrF,IAAI,UAAU,EAAE,CAAC;gCACb,aAAa,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;4BACtD,CAAC;4BAED,WAAW,GAAG,YAAY,IAAI;eACnC,cAAc;cACf,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;SACzB,KAAK,CAAC,UAAU,WAAW,KAAK,CAAC,cAAc,gBAAgB,KAAK,CAAC,UAAU;aAC3E,YAAY;;EAEvB,aAAa;CACd,CAAC;4BACkB,OAAO,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;wBACrD,CAAC;wBAAC,OAAO,CAAC,EAAE,CAAC;4BACT,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,6CAA6C,EAAE,CAAC,CAAC;wBAC1E,CAAC;oBACL,CAAC;yBAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;wBAC/B,wBAAwB;wBACvB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;wBACtD,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;4BAClC,OAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC,CAAC;4BAC3C,MAAM,aAAa,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;4BAE7D,kCAAkC;4BAClC,MAAM,MAAM,GAAG,IAAI,2BAAY,EAAE,CAAC;4BAClC,IAAI,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC;gCACrB,OAAO,CAAC,UAAU,CAAC,6CAA6C,CAAC,CAAC;gCAClE,IAAI,CAAC;oCACF,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,YAAY,CACtC,8JAA8J,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,CAC/L,CAAC;oCACF,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;wCACnB,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;oCAC1C,CAAC;gCACJ,CAAC;gCAAC,OAAO,CAAC,EAAE,CAAC;oCACT,oBAAoB;gCACxB,CAAC;4BACL,CAAC;wBACL,CAAC;oBACN,CAAC;yBAAM,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;wBAC/B,OAAO,CAAC,IAAI,EAAE,CAAC;wBACf,MAAM,QAAQ,GAAG,MAAM,IAAA,iBAAO,EAAC;4BAC3B,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,MAAM;4BACZ,OAAO,EAAE,4BAA4B;4BACrC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,yBAAyB;yBACzE,CAAC,CAAC;wBACH,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC;wBAC5B,OAAO,CAAC,KAAK,EAAE,CAAC;oBACpB,CAAC;oBAEA,gBAAgB;oBAChB,OAAO,CAAC,UAAU,CAAC,oCAAoC,CAAC,CAAC;oBAEzD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAC1C,IAAI,EACJ,WAAW,EAAE,+BAA+B;oBAC5C,UAAU,EACV,IAAI,CAAC,gBAAgB;qBACxB,CAAC;oBAEF,MAAM,IAAI,CAAC,qBAAqB,CAC5B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EACxB,IAAI,EACJ,WAAW,CACd,CAAC;oBAEF,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,YAAY,IAAI,6BAA6B,EAAE,CAAC,CAAC;oBAEzE,kFAAkF;oBAClF,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC;oBAC/F,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gBAAgB,WAAW,IAAI,CAAC,CAAC,CAAC;oBAEzD,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;oBAC5C,OAAO;gBACZ,CAAC;YACH,CAAC;YAED,eAAe;YACf,0EAA0E;YAC1E,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;gBAC5E,MAAM,EAAE,SAAS,EAAE,GAAG,wDAAa,kBAAkB,GAAC,CAAC;gBACvD,MAAM,GAAG,GAAG,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;gBAEzC,4CAA4C;gBAC5C,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,iBAAiB,EAAE,CAAC;gBAElD,sDAAsD;gBACtD,sEAAsE;gBACtE,MAAM,gBAAgB,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;gBAClD,MAAM,aAAa,GAAG,gBAAgB,KAAK,GAAG,CAAC;gBAC/C,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;gBACjC,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;gBAE5F,gDAAgD;gBAChD,OAAO,CAAC,KAAK,EAAE,CAAC;gBAEhB,MAAM,EAAE,aAAa,EAAE,GAAG,wDAAa,2BAA2B,GAAC,CAAC;gBACpE,MAAM,UAAU,GAAG,IAAI,aAAa,EAAE,CAAC;gBAEvC,IAAI,CAAC;oBACF,MAAM,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;gBAC1C,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACV,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC;oBAC/C,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACjB,OAAO;gBACV,CAAC;gBAED,+DAA+D;gBAC/D,sEAAsE;gBACtE,OAAO,CAAC,UAAU,CAAC,oCAAoC,CAAC,CAAC;gBACzD,MAAM,kBAAkB,GAAG,WAAW,CAAC,OAAO,CAAC,WAAW,IAAI,GAAG,gBAAgB,mBAAmB,CAAC;gBAErG,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAC3C,gBAAgB,EAChB,kBAAkB,EAClB,UAAU,EACV,aAAa,CACf,CAAC;gBACF,MAAM,IAAI,CAAC,qBAAqB,CAC7B,WAAW,EACX,gBAAgB,EAChB,kBAAkB,CACpB,CAAC;gBAEF,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,kCAAkC,EAAE,CAAC,CAAC;gBAC9D,OAAO;YACV,CAAC;YAED,uEAAuE;YACvE,sBAAsB;YACtB,IAAI,gBAAgB,GAAG,WAAW,CAAC;YACnC,IAAI,aAAa,GAAG,WAAW,KAAK,GAAG,CAAC;YAExC,IAAI,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;gBACtC,MAAM,SAAS,GAAG,MAAM,IAAA,iBAAO,EAAC;oBAC9B;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,MAAM;wBACZ,OAAO,EAAE,eAAe;wBACxB,OAAO,EAAE,QAAQ;wBACjB,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE,CAC1B,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,0BAA0B;qBACjD;iBACF,CAAC,CAAC;gBACH,gBAAgB,GAAG,SAAS,CAAC,IAAI,IAAI,QAAQ,CAAC;gBAC9C,aAAa,GAAG,gBAAgB,KAAK,GAAG,CAAC;YAC3C,CAAC;YAED,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,gBAAgB,GAAG,QAAQ,CAAC;YAC9B,CAAC;YAED,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;YACjC,MAAM,WAAW,GAAG,aAAa;gBAC/B,CAAC,CAAC,UAAU;gBACZ,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;YAE/C,kDAAkD;YAClD,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YAC3D,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;gBACzE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;oBACzC,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,kBAAkB;oBACxB,OAAO,EAAE,eAAK,CAAC,MAAM,CAAC,2CAA2C,WAAW,IAAI,GAAG,cAAc,CAAC;oBAClG,OAAO,EAAE,KAAK;iBACf,CAAC,CAAC;gBAEH,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACtB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,4FAA4F,CAAC,CAAC,CAAC;oBACtH,OAAO;gBACT,CAAC;YACH,CAAC;YAED,OAAO,CAAC,KAAK,EAAE,CAAC;YAEhB,wEAAwE;YACxE,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,WAAW,CAAC;YAEnD,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;gBAC9B,qBAAqB;gBACrB,MAAM,IAAI,CAAC,oBAAoB,CAC7B,OAAO,EACP,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,OAAO,EACP,aAAa,CACd,CAAC;YACJ,CAAC;iBAAM,IAAI,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;gBAC1D,6CAA6C;gBAC7C,MAAM,IAAI,CAAC,iBAAiB,CAC1B,OAAO,EACP,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,OAAO,EACP,aAAa,CACd,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,0BAA0B;gBAC1B,MAAM,IAAI,CAAC,gBAAgB,CACzB,OAAO,EACP,WAAW,EACX,gBAAgB,EAChB,OAAO,EACP,aAAa,CACd,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,8BAA8B,EAAE,CAAC,CAAC;YACxD,OAAO,CAAC,KAAK,CACX,eAAK,CAAC,GAAG,CACP,UAAU,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACnE,CACF,CAAC;YACF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,oBAAoB,CAChC,OAAwB,EACxB,UAAkB,EAClB,WAAmB,EACnB,WAAmB,EACnB,OAAoB,EACpB,aAAsB;QAEtB,sDAAsD;QACtD,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;QACrE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;YAC7C,IAAA,wBAAQ,EAAC,6BAA6B,EAAE;gBACtC,GAAG,EAAE,UAAU;gBACf,KAAK,EAAE,SAAS;aACjB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC,CAAC;QAC5E,CAAC;QAED,sCAAsC;QACtC,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;YACvC,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,qDAAqD;YAC9D,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,CAAC,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,UAAU,CAAC,6BAA6B,CAAC,CAAC;YAClD,IAAA,wBAAQ,EAAC,sBAAsB,EAAE;gBAC/B,GAAG,EAAE,WAAW;gBAChB,KAAK,EAAE,SAAS;aACjB,CAAC,CAAC;YAEH,8BAA8B;YAC9B,OAAO,CAAC,IAAI,EAAE,CAAC;YACf,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,IAAA,iBAAO,EAAC;gBACpC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,aAAa;gBACnB,OAAO,EACL,6EAA6E;gBAC/E,OAAO,EAAE,KAAK;aACf,CAAC,CAAC;YAEH,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChB,OAAO,CAAC,UAAU,CAAC,iCAAiC,CAAC,CAAC;gBACtD,IAAA,wBAAQ,EAAC,sBAAsB,EAAE;oBAC/B,GAAG,EAAE,WAAW;oBAChB,KAAK,EAAE,SAAS;iBACjB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,mDAAmD;QACnD,OAAO,CAAC,KAAK,EAAE,CAAC;QAChB,OAAO,CAAC,UAAU,CAAC,kCAAkC,CAAC,CAAC;QACvD,IAAA,wBAAQ,EAAC,4CAA4C,EAAE;YACrD,GAAG,EAAE,WAAW;YAChB,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,oCAAoC;QACpC,OAAO,CAAC,UAAU,CAAC,iCAAiC,CAAC,CAAC;QACtD,IAAA,wBAAQ,EAAC,yDAAyD,EAAE;YAClE,GAAG,EAAE,WAAW;YAChB,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QAEH,4CAA4C;QAC5C,OAAO,CAAC,UAAU,CAAC,qCAAqC,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,EAAE,CAAC,sBAAsB,CAAC,WAAW,CAAC,CAAC;QAElD,0DAA0D;QAC1D,OAAO,CAAC,UAAU,CAAC,yCAAyC,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAC5C,WAAW,EACX,OAAO,CAAC,WAAW,IAAI,GAAG,WAAW,mBAAmB,EACxD,UAAU,EACV,aAAa,CACd,CAAC;QACF,MAAM,IAAI,CAAC,qBAAqB,CAC9B,WAAW,EACX,WAAW,EACX,OAAO,CAAC,WAAW,IAAI,GAAG,WAAW,mBAAmB,CACzD,CAAC;QAEF,OAAO,CAAC,OAAO,CAAC;YACd,IAAI,EAAE,YAAY,WAAW,4CAA4C;SAC1E,CAAC,CAAC;QAEH,kBAAkB;QAClB,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,iBAAiB,CAC7B,OAAwB,EACxB,UAAkB,EAClB,WAAmB,EACnB,WAAmB,EACnB,OAAoB,EACpB,aAAsB;QAEtB,sDAAsD;QACtD,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;QACrE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC;YAC7C,IAAA,wBAAQ,EAAC,6BAA6B,EAAE;gBACtC,GAAG,EAAE,UAAU;gBACf,KAAK,EAAE,SAAS;aACjB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC,CAAC;QAC5E,CAAC;QAED,0DAA0D;QAC1D,OAAO,CAAC,UAAU,CAAC,yCAAyC,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAC5C,WAAW,EACX,OAAO,CAAC,WAAW,IAAI,GAAG,WAAW,gBAAgB,EACrD,UAAU,EACV,aAAa,CACd,CAAC;QACF,MAAM,IAAI,CAAC,qBAAqB,CAC9B,WAAW,EACX,WAAW,EACX,OAAO,CAAC,WAAW,IAAI,GAAG,WAAW,gBAAgB,CACtD,CAAC;QAEF,OAAO,CAAC,OAAO,CAAC;YACd,IAAI,EAAE,YAAY,WAAW,0CAA0C;SACxE,CAAC,CAAC;QAEH,kBAAkB;QAClB,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;IACtD,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,gBAAgB,CAC5B,OAAwB,EACxB,WAAmB,EACnB,WAAmB,EACnB,OAAoB,EACpB,aAAsB;QAEtB,OAAO,CAAC,UAAU,CAAC,yCAAyC,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,iBAAiB,CAC5C,WAAW,EACX,OAAO,CAAC,WAAW,IAAI,GAAG,WAAW,mBAAmB,EACxD,OAAO,CAAC,GAAG,EAAE,EACb,aAAa,CACd,CAAC;QACF,MAAM,IAAI,CAAC,qBAAqB,CAC9B,WAAW,EACX,WAAW,EACX,OAAO,CAAC,WAAW,IAAI,GAAG,WAAW,mBAAmB,CACzD,CAAC;QAEF,OAAO,CAAC,OAAO,CAAC;YACd,IAAI,EAAE,YAAY,WAAW,6BAA6B;SAC3D,CAAC,CAAC;QAEH,kBAAkB;QAClB,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;IACvD,CAAC;IAEO,kBAAkB,CAAC,IAAY;QACrC,+CAA+C;QAC/C,OAAO,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAEO,aAAa,CACnB,MAAW,EACX,SAAkB,EAClB,aAAuB;QAEvB,MAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QAEtD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAE/C,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC,CAAC;YAC1D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,SAAS,WAAW,IAAI,CAAC,CAAC,CAAC;QACpD,CAAC;QAED,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC,CAAC;YACrD,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAC5D,CAAC;YACF,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAC1D,CAAC;YACF,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAChE,CAAC;YACF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC,CAAC;YACjE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,CAAC;YAC/D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC,CAAC;QAC1E,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,gDAAgD,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC,CAAC;QACxE,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,2DAA2D,CAAC,CACxE,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC,CAAC;QAC/E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC,CAAC;QACtF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC,CAAC;QACrF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC,CAAC;QAC7E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC,CAAC;QACjF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC,CAAC;QACrF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,CAAC;QAElE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,CAAC;QAElE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QAEzC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC,CAAC;QACvE,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,4DAA4D,CAAC,CACzE,CAAC;YACF,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAC9D,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC,CAAC;QAEhF,qDAAqD;IACvD,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,qBAAqB,CACjC,WAAmB,EACnB,WAAmB,EACnB,WAAmB;QAEnB,MAAM,OAAO,GAAG,IAAI,4BAAqB,CAAC,WAAW,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,OAAO,CAAC,qBAAqB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACzE,MAAM,OAAO,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAEO,eAAe;QACrB,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,gBAAM,CAAC,QAAQ,CAAC,WAAW,EAAE;gBACxC,IAAI,EAAE,UAAU;gBAChB,gBAAgB,EAAE,SAAS;gBAC3B,cAAc,EAAE,SAAS;aAC1B,CAAC,CAAC;YAEH,6BAA6B;YAC7B,OAAO,CAAC,GAAG,CAAC,yBAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;YAC7C,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,IAAI,CAAC,IAAI,CACb,iEAAiE,CAClE,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,0CAA0C;YAC1C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;CACF;AArkBD,kCAqkBC"}
@@ -0,0 +1,5 @@
1
+ import { type ProjectInfo, type DoctorResult, type DoctorOptions } from "./types";
2
+ export declare function detectProject(root: string): Promise<ProjectInfo>;
3
+ export declare function runDoctor(directory: string, options?: DoctorOptions): Promise<DoctorResult>;
4
+ export declare function displayResult(result: DoctorResult, options?: DoctorOptions): void;
5
+ //# sourceMappingURL=DoctorEngine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DoctorEngine.d.ts","sourceRoot":"","sources":["../../src/doctor/DoctorEngine.ts"],"names":[],"mappings":"AAYA,OAAO,EACL,KAAK,WAAW,EAIhB,KAAK,YAAY,EAIjB,KAAK,aAAa,EAEnB,MAAM,SAAS,CAAC;AAKjB,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAmDtE;AAyJD,wBAAsB,SAAS,CAC7B,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,YAAY,CAAC,CAmIvB;AAID,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,GAAE,aAAkB,GAAG,IAAI,CAoFrF"}
@@ -0,0 +1,491 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.detectProject = detectProject;
40
+ exports.runDoctor = runDoctor;
41
+ exports.displayResult = displayResult;
42
+ /**
43
+ * DoctorEngine — Main orchestrator for mycontext doctor
44
+ *
45
+ * 1. Detects project type (Next.js / Turborepo / Node.js)
46
+ * 2. Loads applicable rules
47
+ * 3. Runs checks, collects diagnostics
48
+ * 4. Computes score and grade
49
+ * 5. Optionally auto-fixes
50
+ */
51
+ const fs = __importStar(require("fs-extra"));
52
+ const path = __importStar(require("path"));
53
+ const chalk_1 = __importDefault(require("chalk"));
54
+ const index_1 = require("./rules/index");
55
+ // ─── Project Detection ────────────────────────────────────────────
56
+ async function detectProject(root) {
57
+ const absRoot = path.resolve(root);
58
+ const pkgPath = path.join(absRoot, "package.json");
59
+ let pkg = {};
60
+ if (await fs.pathExists(pkgPath)) {
61
+ try {
62
+ pkg = await fs.readJson(pkgPath);
63
+ }
64
+ catch { /* ignore */ }
65
+ }
66
+ // Detect package manager
67
+ const packageManager = await detectPackageManager(absRoot);
68
+ // Detect monorepo / Turborepo
69
+ const turboJson = path.join(absRoot, "turbo.json");
70
+ const hasTurbo = await fs.pathExists(turboJson);
71
+ const isMonorepo = hasTurbo || !!pkg.workspaces || await fs.pathExists(path.join(absRoot, "pnpm-workspace.yaml"));
72
+ // Detect Next.js
73
+ const deps = { ...pkg.dependencies, ...pkg.devDependencies };
74
+ const hasNext = !!deps?.next;
75
+ // Detect TypeScript
76
+ const hasTs = await fs.pathExists(path.join(absRoot, "tsconfig.json"));
77
+ // Determine project type
78
+ let type = "node";
79
+ if (hasTurbo || (isMonorepo && hasTurbo)) {
80
+ type = "turbo";
81
+ }
82
+ else if (hasNext) {
83
+ type = "nextjs";
84
+ }
85
+ // Detect workspaces
86
+ let workspaces;
87
+ if (isMonorepo) {
88
+ workspaces = await detectWorkspaces(absRoot, pkg);
89
+ }
90
+ return {
91
+ type,
92
+ name: pkg.name || path.basename(absRoot),
93
+ root: absRoot,
94
+ version: pkg.version,
95
+ packageManager,
96
+ isMonorepo,
97
+ workspaces,
98
+ typescript: hasTs,
99
+ nextVersion: deps?.next,
100
+ reactVersion: deps?.react,
101
+ turboVersion: deps?.turbo,
102
+ };
103
+ }
104
+ async function detectPackageManager(root) {
105
+ if (await fs.pathExists(path.join(root, "pnpm-lock.yaml")))
106
+ return "pnpm";
107
+ if (await fs.pathExists(path.join(root, "yarn.lock")))
108
+ return "yarn";
109
+ if (await fs.pathExists(path.join(root, "bun.lockb")))
110
+ return "bun";
111
+ if (await fs.pathExists(path.join(root, "package-lock.json")))
112
+ return "npm";
113
+ return "unknown";
114
+ }
115
+ async function detectWorkspaces(root, pkg) {
116
+ const workspaces = [];
117
+ // Get workspace patterns from package.json or pnpm-workspace.yaml
118
+ let patterns = [];
119
+ if (pkg.workspaces) {
120
+ patterns = Array.isArray(pkg.workspaces) ? pkg.workspaces : pkg.workspaces.packages || [];
121
+ }
122
+ else {
123
+ const pnpmWs = path.join(root, "pnpm-workspace.yaml");
124
+ if (await fs.pathExists(pnpmWs)) {
125
+ const content = await fs.readFile(pnpmWs, "utf8");
126
+ const match = content.match(/packages:\s*\n((?:\s+-\s+.+\n?)*)/);
127
+ if (match && match[1]) {
128
+ patterns = match[1].split("\n").map(l => l.replace(/^\s*-\s*['"]?/, "").replace(/['"]?\s*$/, "")).filter(Boolean);
129
+ }
130
+ }
131
+ }
132
+ // Resolve workspace directories
133
+ for (const pattern of patterns) {
134
+ const baseDir = pattern.replace(/\/?\*$/, "");
135
+ const wsDir = path.join(root, baseDir);
136
+ if (await fs.pathExists(wsDir)) {
137
+ try {
138
+ const entries = await fs.readdir(wsDir, { withFileTypes: true });
139
+ for (const entry of entries) {
140
+ if (!entry.isDirectory())
141
+ continue;
142
+ const wsPath = path.join(baseDir, entry.name);
143
+ const absPath = path.join(root, wsPath);
144
+ const wsPkgPath = path.join(absPath, "package.json");
145
+ const hasPackageJson = await fs.pathExists(wsPkgPath);
146
+ let wsType = "node";
147
+ if (hasPackageJson) {
148
+ try {
149
+ const wsPkg = await fs.readJson(wsPkgPath);
150
+ const wsDeps = { ...wsPkg.dependencies, ...wsPkg.devDependencies };
151
+ if (wsDeps?.next)
152
+ wsType = "nextjs";
153
+ }
154
+ catch { /* ignore */ }
155
+ }
156
+ let name = entry.name;
157
+ if (hasPackageJson) {
158
+ try {
159
+ const wsPkg = await fs.readJson(wsPkgPath);
160
+ name = wsPkg.name || entry.name;
161
+ }
162
+ catch { /* ignore */ }
163
+ }
164
+ workspaces.push({
165
+ name,
166
+ path: wsPath,
167
+ absolutePath: absPath,
168
+ type: wsType,
169
+ hasPackageJson,
170
+ });
171
+ }
172
+ }
173
+ catch { /* ignore */ }
174
+ }
175
+ }
176
+ return workspaces;
177
+ }
178
+ // ─── Rule Context Factory ─────────────────────────────────────────
179
+ const IGNORE_DIRS = new Set([
180
+ "node_modules", ".next", ".git", "dist", "build", ".turbo",
181
+ ".pnpm-store", "coverage", ".cache", ".vercel", "__pycache__",
182
+ ]);
183
+ function createRuleContext(root, project, isWorkspace = false) {
184
+ return {
185
+ root,
186
+ project,
187
+ isWorkspace,
188
+ async readFile(relativePath) {
189
+ try {
190
+ const abs = path.join(root, relativePath);
191
+ return await fs.readFile(abs, "utf8");
192
+ }
193
+ catch {
194
+ return null;
195
+ }
196
+ },
197
+ async fileExists(relativePath) {
198
+ return fs.pathExists(path.join(root, relativePath));
199
+ },
200
+ async findFiles(pattern, maxDepth = 6) {
201
+ const results = [];
202
+ async function walk(dir, depth) {
203
+ if (depth > maxDepth)
204
+ return;
205
+ try {
206
+ const entries = await fs.readdir(dir, { withFileTypes: true });
207
+ for (const entry of entries) {
208
+ if (IGNORE_DIRS.has(entry.name))
209
+ continue;
210
+ const rel = path.relative(root, path.join(dir, entry.name));
211
+ if (entry.isDirectory()) {
212
+ await walk(path.join(dir, entry.name), depth + 1);
213
+ }
214
+ else if (pattern.test(rel)) {
215
+ results.push(rel);
216
+ }
217
+ }
218
+ }
219
+ catch { /* ignore permission errors */ }
220
+ }
221
+ await walk(root, 0);
222
+ return results;
223
+ },
224
+ async readJson(relativePath) {
225
+ try {
226
+ return await fs.readJson(path.join(root, relativePath));
227
+ }
228
+ catch {
229
+ return null;
230
+ }
231
+ },
232
+ };
233
+ }
234
+ // ─── Score Calculation ─────────────────────────────────────────────
235
+ function calculateScore(diagnostics, totalRules) {
236
+ if (totalRules === 0)
237
+ return { score: 100, grade: "A+" };
238
+ const errors = diagnostics.filter(d => d.severity === "error").length;
239
+ const warnings = diagnostics.filter(d => d.severity === "warning").length;
240
+ // Each error costs 5 points, each warning costs 2 points, min 0
241
+ const deductions = (errors * 5) + (warnings * 2);
242
+ const score = Math.max(0, Math.min(100, 100 - deductions));
243
+ let grade;
244
+ if (score >= 95)
245
+ grade = "A+";
246
+ else if (score >= 90)
247
+ grade = "A";
248
+ else if (score >= 85)
249
+ grade = "A-";
250
+ else if (score >= 80)
251
+ grade = "B+";
252
+ else if (score >= 75)
253
+ grade = "B";
254
+ else if (score >= 70)
255
+ grade = "B-";
256
+ else if (score >= 65)
257
+ grade = "C+";
258
+ else if (score >= 60)
259
+ grade = "C";
260
+ else if (score >= 55)
261
+ grade = "C-";
262
+ else if (score >= 50)
263
+ grade = "D";
264
+ else
265
+ grade = "F";
266
+ return { score, grade };
267
+ }
268
+ // ─── Main Doctor Engine ───────────────────────────────────────────
269
+ async function runDoctor(directory, options = {}) {
270
+ const start = Date.now();
271
+ const project = await detectProject(directory);
272
+ // Determine which roots to scan
273
+ const scanRoots = [];
274
+ if (project.isMonorepo && project.workspaces) {
275
+ // Filter by --project if specified
276
+ const workspaces = options.project
277
+ ? project.workspaces.filter(ws => ws.name === options.project ||
278
+ ws.path.endsWith(options.project) ||
279
+ ws.name.includes(options.project))
280
+ : project.workspaces;
281
+ // Scan root for turbo rules
282
+ scanRoots.push({ root: project.root, project });
283
+ // Scan each workspace
284
+ for (const ws of workspaces) {
285
+ const wsProject = {
286
+ ...project,
287
+ type: ws.type,
288
+ name: ws.name,
289
+ root: ws.absolutePath,
290
+ isMonorepo: false,
291
+ workspaces: undefined,
292
+ };
293
+ // Re-detect deps for this workspace
294
+ const wsPkg = await fs.readJson(path.join(ws.absolutePath, "package.json")).catch(() => ({}));
295
+ const wsDeps = { ...wsPkg.dependencies, ...wsPkg.devDependencies };
296
+ wsProject.nextVersion = wsDeps?.next;
297
+ wsProject.reactVersion = wsDeps?.react;
298
+ scanRoots.push({ root: ws.absolutePath, project: wsProject });
299
+ }
300
+ }
301
+ else {
302
+ scanRoots.push({ root: project.root, project });
303
+ }
304
+ // Filter rules by category and project type
305
+ const applicableRules = index_1.allRules.filter(rule => {
306
+ if (options.category && rule.category !== options.category)
307
+ return false;
308
+ return true;
309
+ });
310
+ // Run rules across all scan roots
311
+ const allDiagnostics = [];
312
+ const ruleResults = [];
313
+ const diagnosticsByRoot = new Map();
314
+ for (const { root, project: scanProject } of scanRoots) {
315
+ const isWorkspace = project.isMonorepo && root !== project.root;
316
+ const ctx = createRuleContext(root, scanProject, isWorkspace);
317
+ const rootDiagnostics = [];
318
+ // Only run rules that apply to this project type
319
+ const rules = applicableRules.filter((rule) => rule.appliesTo.includes(scanProject.type) ||
320
+ (scanProject.type === "turbo" && rule.appliesTo.includes("turbo")));
321
+ for (const rule of rules) {
322
+ try {
323
+ const diagnostics = await rule.check(ctx);
324
+ // Prefix file paths with workspace path for monorepos
325
+ const prefixedDiags = diagnostics.map((d) => ({
326
+ ...d,
327
+ filePath: project.isMonorepo && root !== project.root
328
+ ? path.relative(project.root, path.join(root, d.filePath))
329
+ : d.filePath,
330
+ }));
331
+ const existing = ruleResults.find((r) => r.ruleId === rule.id);
332
+ if (existing) {
333
+ existing.diagnostics.push(...prefixedDiags);
334
+ existing.passed = existing.passed && prefixedDiags.length === 0;
335
+ }
336
+ else {
337
+ ruleResults.push({
338
+ ruleId: rule.id,
339
+ ruleName: rule.name,
340
+ category: rule.category,
341
+ passed: prefixedDiags.length === 0,
342
+ diagnostics: prefixedDiags,
343
+ });
344
+ }
345
+ allDiagnostics.push(...prefixedDiags);
346
+ rootDiagnostics.push(...prefixedDiags);
347
+ }
348
+ catch (err) {
349
+ // Rule threw — treat as a pass (we don't want engine bugs to fail the scan)
350
+ }
351
+ }
352
+ diagnosticsByRoot.set(root, rootDiagnostics);
353
+ }
354
+ // Auto-fix if requested
355
+ let fixedCount = 0;
356
+ if (options.fix && !options.dryRun) {
357
+ for (const { root, project: scanProject } of scanRoots) {
358
+ const isWorkspace = project.isMonorepo && root !== project.root;
359
+ const ctx = createRuleContext(root, scanProject, isWorkspace);
360
+ const rules = applicableRules.filter((r) => r.appliesTo.includes(scanProject.type));
361
+ const rootDiags = diagnosticsByRoot.get(root) || [];
362
+ for (const rule of rules) {
363
+ if (!rule.fix)
364
+ continue;
365
+ const ruleDiags = rootDiags.filter(d => d.ruleId === rule.id && d.autoFixable);
366
+ for (const diag of ruleDiags) {
367
+ try {
368
+ const fixed = await rule.fix(ctx, diag);
369
+ if (fixed)
370
+ fixedCount++;
371
+ }
372
+ catch { /* ignore fix errors */ }
373
+ }
374
+ }
375
+ }
376
+ }
377
+ const { score, grade } = calculateScore(allDiagnostics, ruleResults.length);
378
+ return {
379
+ score,
380
+ grade,
381
+ diagnostics: allDiagnostics,
382
+ project,
383
+ ruleResults,
384
+ fixedCount: options.fix ? fixedCount : undefined,
385
+ duration: Date.now() - start,
386
+ };
387
+ }
388
+ // ─── Display ──────────────────────────────────────────────────────
389
+ function displayResult(result, options = {}) {
390
+ const { score, grade, diagnostics, project, ruleResults } = result;
391
+ // Score-only mode
392
+ if (options.score) {
393
+ if (options.json) {
394
+ console.log(JSON.stringify({ score, grade }));
395
+ }
396
+ else {
397
+ console.log(`${score}`);
398
+ }
399
+ return;
400
+ }
401
+ // JSON mode
402
+ if (options.json) {
403
+ console.log(JSON.stringify(result, null, 2));
404
+ return;
405
+ }
406
+ // Header
407
+ console.log();
408
+ console.log(chalk_1.default.bold("🩺 MyContext Doctor"));
409
+ console.log();
410
+ console.log(`${chalk_1.default.dim("📂 Project:")} ${project.name}`);
411
+ console.log(`${chalk_1.default.dim("🔍 Type:")} ${formatProjectType(project)}`);
412
+ if (project.isMonorepo && project.workspaces) {
413
+ console.log(`${chalk_1.default.dim("📦 Workspaces:")} ${project.workspaces.length} detected`);
414
+ }
415
+ console.log();
416
+ // Group diagnostics by category
417
+ const categories = ["nextjs", "turbo", "node", "dead"];
418
+ for (const cat of categories) {
419
+ const catResults = ruleResults.filter(r => r.category === cat);
420
+ if (catResults.length === 0)
421
+ continue;
422
+ console.log(chalk_1.default.bold(formatCategory(cat)));
423
+ console.log(chalk_1.default.dim("─".repeat(50)));
424
+ for (const rr of catResults) {
425
+ if (rr.passed) {
426
+ console.log(` ${chalk_1.default.green("✓")} ${chalk_1.default.dim(rr.ruleId.padEnd(35))} ${chalk_1.default.green("pass")}`);
427
+ }
428
+ else {
429
+ for (const diag of rr.diagnostics) {
430
+ const icon = diag.severity === "error" ? chalk_1.default.red("✗") : chalk_1.default.yellow("⚠");
431
+ const loc = diag.line ? chalk_1.default.dim(`:${diag.line}`) : "";
432
+ console.log(` ${icon} ${chalk_1.default.dim(diag.ruleId.padEnd(35))} ${diag.message}`);
433
+ if (options.verbose && diag.filePath) {
434
+ console.log(` ${chalk_1.default.dim("→")} ${chalk_1.default.cyan(diag.filePath)}${loc}`);
435
+ }
436
+ if (options.verbose && diag.help) {
437
+ console.log(` ${chalk_1.default.dim("💡")} ${chalk_1.default.dim(diag.help)}`);
438
+ }
439
+ }
440
+ }
441
+ }
442
+ console.log();
443
+ }
444
+ // Score
445
+ const errors = diagnostics.filter(d => d.severity === "error").length;
446
+ const warnings = diagnostics.filter(d => d.severity === "warning").length;
447
+ const passed = ruleResults.filter(r => r.passed).length;
448
+ console.log(chalk_1.default.bold("Score: ") + gradeColor(grade, `${score}/100 (${grade})`));
449
+ console.log(`${chalk_1.default.red(`Errors: ${errors}`)} | ` +
450
+ `${chalk_1.default.yellow(`Warnings: ${warnings}`)} | ` +
451
+ `${chalk_1.default.green(`Passed: ${passed}/${ruleResults.length}`)}`);
452
+ console.log(chalk_1.default.dim(`Completed in ${result.duration}ms`));
453
+ // Fix summary
454
+ if (result.fixedCount !== undefined) {
455
+ console.log();
456
+ console.log(chalk_1.default.green(`🔧 Fixed ${result.fixedCount} issues`));
457
+ }
458
+ else {
459
+ const fixable = diagnostics.filter(d => d.autoFixable).length;
460
+ if (fixable > 0) {
461
+ console.log();
462
+ console.log(chalk_1.default.dim(`Run ${chalk_1.default.cyan("mycontext doctor --fix")} to auto-fix ${fixable} issues`));
463
+ }
464
+ }
465
+ console.log();
466
+ }
467
+ function formatProjectType(project) {
468
+ if (project.type === "turbo")
469
+ return `Turborepo monorepo`;
470
+ if (project.type === "nextjs")
471
+ return `Next.js ${project.nextVersion || ""}`.trim();
472
+ return "Node.js";
473
+ }
474
+ function formatCategory(cat) {
475
+ switch (cat) {
476
+ case "nextjs": return "⚡ Next.js";
477
+ case "turbo": return "🌀 Turborepo";
478
+ case "node": return "📦 Node.js / Structure";
479
+ case "dead": return "💀 Dead Code";
480
+ }
481
+ }
482
+ function gradeColor(grade, text) {
483
+ if (grade.startsWith("A"))
484
+ return chalk_1.default.green(text);
485
+ if (grade.startsWith("B"))
486
+ return chalk_1.default.cyan(text);
487
+ if (grade.startsWith("C"))
488
+ return chalk_1.default.yellow(text);
489
+ return chalk_1.default.red(text);
490
+ }
491
+ //# sourceMappingURL=DoctorEngine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DoctorEngine.js","sourceRoot":"","sources":["../../src/doctor/DoctorEngine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { DoctorResult, DiagnoseOptions } from "./types";
2
+ export declare function diagnose(directory: string, options?: DiagnoseOptions): Promise<DoctorResult>;
3
+ export { type DoctorResult, type DiagnoseOptions } from "./types";
4
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/doctor/api.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAkB,MAAM,SAAS,CAAC;AAE7E,wBAAsB,QAAQ,CAC5B,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,YAAY,CAAC,CAKvB;AAED,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.diagnose = diagnose;
4
+ /**
5
+ * Programmatic API for mycontext doctor
6
+ *
7
+ * Usage:
8
+ * import { diagnose } from "./doctor/api";
9
+ * const result = await diagnose("./path/to/project");
10
+ * console.log(result.score);
11
+ */
12
+ const DoctorEngine_1 = require("./DoctorEngine");
13
+ async function diagnose(directory, options = {}) {
14
+ return (0, DoctorEngine_1.runDoctor)(directory, {
15
+ category: options.category,
16
+ project: options.project,
17
+ });
18
+ }
19
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/doctor/api.ts"],"names":[],"mappings":";;AAWA,4BAQC;AAnBD;;;;;;;GAOG;AACH,iDAA2C;AAGpC,KAAK,UAAU,QAAQ,CAC5B,SAAiB,EACjB,UAA2B,EAAE;IAE7B,OAAO,IAAA,wBAAS,EAAC,SAAS,EAAE;QAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { DoctorRule } from "../types";
2
+ export declare const deadCodeRules: DoctorRule[];
3
+ //# sourceMappingURL=dead-code-rules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dead-code-rules.d.ts","sourceRoot":"","sources":["../../../src/doctor/rules/dead-code-rules.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAA2B,MAAM,UAAU,CAAC;AA6PpE,eAAO,MAAM,aAAa,EAAE,UAAU,EAIrC,CAAC"}