maxsimcli 4.6.0 → 4.7.0

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 (221) hide show
  1. package/dist/assets/CHANGELOG.md +16 -0
  2. package/dist/backend-server.cjs +2739 -41
  3. package/dist/backend-server.cjs.map +1 -1
  4. package/dist/cli.cjs +3 -3
  5. package/dist/{lifecycle-DxCru7rk.cjs → lifecycle-D8mcsEjy.cjs} +2 -2
  6. package/dist/{lifecycle-DxCru7rk.cjs.map → lifecycle-D8mcsEjy.cjs.map} +1 -1
  7. package/dist/mcp-server.cjs +2715 -16
  8. package/dist/mcp-server.cjs.map +1 -1
  9. package/dist/{server-By0TN-nC.cjs → server-BAHfh_vw.cjs} +2716 -17
  10. package/dist/server-BAHfh_vw.cjs.map +1 -0
  11. package/package.json +1 -1
  12. package/dist/.tsbuildinfo +0 -1
  13. package/dist/backend/index.d.ts +0 -4
  14. package/dist/backend/index.d.ts.map +0 -1
  15. package/dist/backend/index.js +0 -12
  16. package/dist/backend/index.js.map +0 -1
  17. package/dist/backend/lifecycle.d.ts +0 -13
  18. package/dist/backend/lifecycle.d.ts.map +0 -1
  19. package/dist/backend/lifecycle.js +0 -168
  20. package/dist/backend/lifecycle.js.map +0 -1
  21. package/dist/backend/server.d.ts +0 -13
  22. package/dist/backend/server.d.ts.map +0 -1
  23. package/dist/backend/server.js +0 -1013
  24. package/dist/backend/server.js.map +0 -1
  25. package/dist/backend/terminal.d.ts +0 -49
  26. package/dist/backend/terminal.d.ts.map +0 -1
  27. package/dist/backend/terminal.js +0 -209
  28. package/dist/backend/terminal.js.map +0 -1
  29. package/dist/backend/types.d.ts +0 -77
  30. package/dist/backend/types.d.ts.map +0 -1
  31. package/dist/backend/types.js +0 -6
  32. package/dist/backend/types.js.map +0 -1
  33. package/dist/backend-server.d.cts +0 -2
  34. package/dist/backend-server.d.ts +0 -11
  35. package/dist/backend-server.d.ts.map +0 -1
  36. package/dist/backend-server.js +0 -43
  37. package/dist/backend-server.js.map +0 -1
  38. package/dist/cli.d.cts +0 -2
  39. package/dist/cli.d.ts +0 -7
  40. package/dist/cli.d.ts.map +0 -1
  41. package/dist/cli.js +0 -510
  42. package/dist/cli.js.map +0 -1
  43. package/dist/core/artefakte.d.ts +0 -12
  44. package/dist/core/artefakte.d.ts.map +0 -1
  45. package/dist/core/artefakte.js +0 -152
  46. package/dist/core/artefakte.js.map +0 -1
  47. package/dist/core/commands.d.ts +0 -26
  48. package/dist/core/commands.d.ts.map +0 -1
  49. package/dist/core/commands.js +0 -550
  50. package/dist/core/commands.js.map +0 -1
  51. package/dist/core/config.d.ts +0 -10
  52. package/dist/core/config.d.ts.map +0 -1
  53. package/dist/core/config.js +0 -143
  54. package/dist/core/config.js.map +0 -1
  55. package/dist/core/context-loader.d.ts +0 -21
  56. package/dist/core/context-loader.d.ts.map +0 -1
  57. package/dist/core/context-loader.js +0 -212
  58. package/dist/core/context-loader.js.map +0 -1
  59. package/dist/core/core.d.ts +0 -91
  60. package/dist/core/core.d.ts.map +0 -1
  61. package/dist/core/core.js +0 -823
  62. package/dist/core/core.js.map +0 -1
  63. package/dist/core/dashboard-launcher.d.ts +0 -56
  64. package/dist/core/dashboard-launcher.d.ts.map +0 -1
  65. package/dist/core/dashboard-launcher.js +0 -246
  66. package/dist/core/dashboard-launcher.js.map +0 -1
  67. package/dist/core/drift.d.ts +0 -37
  68. package/dist/core/drift.d.ts.map +0 -1
  69. package/dist/core/drift.js +0 -213
  70. package/dist/core/drift.js.map +0 -1
  71. package/dist/core/frontmatter.d.ts +0 -33
  72. package/dist/core/frontmatter.d.ts.map +0 -1
  73. package/dist/core/frontmatter.js +0 -193
  74. package/dist/core/frontmatter.js.map +0 -1
  75. package/dist/core/index.d.ts +0 -28
  76. package/dist/core/index.d.ts.map +0 -1
  77. package/dist/core/index.js +0 -189
  78. package/dist/core/index.js.map +0 -1
  79. package/dist/core/init.d.ts +0 -287
  80. package/dist/core/init.d.ts.map +0 -1
  81. package/dist/core/init.js +0 -816
  82. package/dist/core/init.js.map +0 -1
  83. package/dist/core/milestone.d.ts +0 -9
  84. package/dist/core/milestone.d.ts.map +0 -1
  85. package/dist/core/milestone.js +0 -230
  86. package/dist/core/milestone.js.map +0 -1
  87. package/dist/core/phase.d.ts +0 -53
  88. package/dist/core/phase.d.ts.map +0 -1
  89. package/dist/core/phase.js +0 -891
  90. package/dist/core/phase.js.map +0 -1
  91. package/dist/core/roadmap.d.ts +0 -10
  92. package/dist/core/roadmap.d.ts.map +0 -1
  93. package/dist/core/roadmap.js +0 -165
  94. package/dist/core/roadmap.js.map +0 -1
  95. package/dist/core/skills.d.ts +0 -20
  96. package/dist/core/skills.d.ts.map +0 -1
  97. package/dist/core/skills.js +0 -144
  98. package/dist/core/skills.js.map +0 -1
  99. package/dist/core/start.d.ts +0 -15
  100. package/dist/core/start.d.ts.map +0 -1
  101. package/dist/core/start.js +0 -80
  102. package/dist/core/start.js.map +0 -1
  103. package/dist/core/state.d.ts +0 -32
  104. package/dist/core/state.d.ts.map +0 -1
  105. package/dist/core/state.js +0 -582
  106. package/dist/core/state.js.map +0 -1
  107. package/dist/core/template.d.ts +0 -30
  108. package/dist/core/template.d.ts.map +0 -1
  109. package/dist/core/template.js +0 -223
  110. package/dist/core/template.js.map +0 -1
  111. package/dist/core/types.d.ts +0 -519
  112. package/dist/core/types.d.ts.map +0 -1
  113. package/dist/core/types.js +0 -60
  114. package/dist/core/types.js.map +0 -1
  115. package/dist/core/verify.d.ts +0 -128
  116. package/dist/core/verify.d.ts.map +0 -1
  117. package/dist/core/verify.js +0 -754
  118. package/dist/core/verify.js.map +0 -1
  119. package/dist/hooks/index.d.ts +0 -11
  120. package/dist/hooks/index.d.ts.map +0 -1
  121. package/dist/hooks/index.js +0 -18
  122. package/dist/hooks/index.js.map +0 -1
  123. package/dist/hooks/maxsim-check-update.d.ts +0 -17
  124. package/dist/hooks/maxsim-check-update.d.ts.map +0 -1
  125. package/dist/hooks/maxsim-check-update.js +0 -101
  126. package/dist/hooks/maxsim-check-update.js.map +0 -1
  127. package/dist/hooks/maxsim-context-monitor.d.ts +0 -21
  128. package/dist/hooks/maxsim-context-monitor.d.ts.map +0 -1
  129. package/dist/hooks/maxsim-context-monitor.js +0 -131
  130. package/dist/hooks/maxsim-context-monitor.js.map +0 -1
  131. package/dist/hooks/maxsim-statusline.d.ts +0 -19
  132. package/dist/hooks/maxsim-statusline.d.ts.map +0 -1
  133. package/dist/hooks/maxsim-statusline.js +0 -146
  134. package/dist/hooks/maxsim-statusline.js.map +0 -1
  135. package/dist/hooks/shared.d.ts +0 -11
  136. package/dist/hooks/shared.d.ts.map +0 -1
  137. package/dist/hooks/shared.js +0 -29
  138. package/dist/hooks/shared.js.map +0 -1
  139. package/dist/index.d.ts +0 -2
  140. package/dist/index.d.ts.map +0 -1
  141. package/dist/index.js +0 -3
  142. package/dist/index.js.map +0 -1
  143. package/dist/install/adapters.d.ts +0 -6
  144. package/dist/install/adapters.d.ts.map +0 -1
  145. package/dist/install/adapters.js +0 -65
  146. package/dist/install/adapters.js.map +0 -1
  147. package/dist/install/copy.d.ts +0 -6
  148. package/dist/install/copy.d.ts.map +0 -1
  149. package/dist/install/copy.js +0 -71
  150. package/dist/install/copy.js.map +0 -1
  151. package/dist/install/dashboard.d.ts +0 -16
  152. package/dist/install/dashboard.d.ts.map +0 -1
  153. package/dist/install/dashboard.js +0 -273
  154. package/dist/install/dashboard.js.map +0 -1
  155. package/dist/install/hooks.d.ts +0 -31
  156. package/dist/install/hooks.d.ts.map +0 -1
  157. package/dist/install/hooks.js +0 -260
  158. package/dist/install/hooks.js.map +0 -1
  159. package/dist/install/index.d.ts +0 -2
  160. package/dist/install/index.d.ts.map +0 -1
  161. package/dist/install/index.js +0 -534
  162. package/dist/install/index.js.map +0 -1
  163. package/dist/install/manifest.d.ts +0 -23
  164. package/dist/install/manifest.d.ts.map +0 -1
  165. package/dist/install/manifest.js +0 -133
  166. package/dist/install/manifest.js.map +0 -1
  167. package/dist/install/patches.d.ts +0 -10
  168. package/dist/install/patches.d.ts.map +0 -1
  169. package/dist/install/patches.js +0 -124
  170. package/dist/install/patches.js.map +0 -1
  171. package/dist/install/shared.d.ts +0 -56
  172. package/dist/install/shared.d.ts.map +0 -1
  173. package/dist/install/shared.js +0 -181
  174. package/dist/install/shared.js.map +0 -1
  175. package/dist/install/uninstall.d.ts +0 -5
  176. package/dist/install/uninstall.d.ts.map +0 -1
  177. package/dist/install/uninstall.js +0 -222
  178. package/dist/install/uninstall.js.map +0 -1
  179. package/dist/install/utils.d.ts +0 -27
  180. package/dist/install/utils.d.ts.map +0 -1
  181. package/dist/install/utils.js +0 -99
  182. package/dist/install/utils.js.map +0 -1
  183. package/dist/install.d.cts +0 -2
  184. package/dist/mcp/config-tools.d.ts +0 -13
  185. package/dist/mcp/config-tools.d.ts.map +0 -1
  186. package/dist/mcp/config-tools.js +0 -66
  187. package/dist/mcp/config-tools.js.map +0 -1
  188. package/dist/mcp/context-tools.d.ts +0 -13
  189. package/dist/mcp/context-tools.d.ts.map +0 -1
  190. package/dist/mcp/context-tools.js +0 -176
  191. package/dist/mcp/context-tools.js.map +0 -1
  192. package/dist/mcp/index.d.ts +0 -11
  193. package/dist/mcp/index.d.ts.map +0 -1
  194. package/dist/mcp/index.js +0 -26
  195. package/dist/mcp/index.js.map +0 -1
  196. package/dist/mcp/phase-tools.d.ts +0 -13
  197. package/dist/mcp/phase-tools.d.ts.map +0 -1
  198. package/dist/mcp/phase-tools.js +0 -177
  199. package/dist/mcp/phase-tools.js.map +0 -1
  200. package/dist/mcp/roadmap-tools.d.ts +0 -13
  201. package/dist/mcp/roadmap-tools.d.ts.map +0 -1
  202. package/dist/mcp/roadmap-tools.js +0 -79
  203. package/dist/mcp/roadmap-tools.js.map +0 -1
  204. package/dist/mcp/state-tools.d.ts +0 -13
  205. package/dist/mcp/state-tools.d.ts.map +0 -1
  206. package/dist/mcp/state-tools.js +0 -185
  207. package/dist/mcp/state-tools.js.map +0 -1
  208. package/dist/mcp/todo-tools.d.ts +0 -13
  209. package/dist/mcp/todo-tools.d.ts.map +0 -1
  210. package/dist/mcp/todo-tools.js +0 -143
  211. package/dist/mcp/todo-tools.js.map +0 -1
  212. package/dist/mcp/utils.d.ts +0 -27
  213. package/dist/mcp/utils.d.ts.map +0 -1
  214. package/dist/mcp/utils.js +0 -82
  215. package/dist/mcp/utils.js.map +0 -1
  216. package/dist/mcp-server.d.cts +0 -2
  217. package/dist/mcp-server.d.ts +0 -12
  218. package/dist/mcp-server.d.ts.map +0 -1
  219. package/dist/mcp-server.js +0 -31
  220. package/dist/mcp-server.js.map +0 -1
  221. package/dist/server-By0TN-nC.cjs.map +0 -1
package/dist/index.js DELETED
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
@@ -1,6 +0,0 @@
1
- /**
2
- * Get commit attribution setting for Claude Code
3
- * @returns null = remove, undefined = keep default, string = custom
4
- */
5
- export declare function getCommitAttribution(explicitConfigDir: string | null): null | undefined | string;
6
- //# sourceMappingURL=adapters.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"adapters.d.ts","sourceRoot":"","sources":["../../src/install/adapters.ts"],"names":[],"mappings":"AAWA;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAmBhG"}
@@ -1,65 +0,0 @@
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
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.getCommitAttribution = getCommitAttribution;
37
- const path = __importStar(require("node:path"));
38
- const utils_js_1 = require("./utils.js");
39
- const shared_js_1 = require("./shared.js");
40
- // Cache for attribution settings (populated once during install)
41
- let attributionCached = false;
42
- let attributionValue;
43
- /**
44
- * Get commit attribution setting for Claude Code
45
- * @returns null = remove, undefined = keep default, string = custom
46
- */
47
- function getCommitAttribution(explicitConfigDir) {
48
- if (attributionCached) {
49
- return attributionValue;
50
- }
51
- const settings = (0, utils_js_1.readSettings)(path.join((0, shared_js_1.getGlobalDir)(explicitConfigDir), 'settings.json'));
52
- const attr = settings.attribution;
53
- if (!attr || attr.commit === undefined) {
54
- attributionValue = undefined;
55
- }
56
- else if (attr.commit === '') {
57
- attributionValue = null;
58
- }
59
- else {
60
- attributionValue = attr.commit;
61
- }
62
- attributionCached = true;
63
- return attributionValue;
64
- }
65
- //# sourceMappingURL=adapters.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"adapters.js","sourceRoot":"","sources":["../../src/install/adapters.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAeA,oDAmBC;AAlCD,gDAAkC;AAElC,yCAEoB;AACpB,2CAA2C;AAE3C,iEAAiE;AACjE,IAAI,iBAAiB,GAAG,KAAK,CAAC;AAC9B,IAAI,gBAA2C,CAAC;AAEhD;;;GAGG;AACH,SAAgB,oBAAoB,CAAC,iBAAgC;IACnE,IAAI,iBAAiB,EAAE,CAAC;QACtB,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED,MAAM,QAAQ,GAAG,IAAA,uBAAY,EAC3B,IAAI,CAAC,IAAI,CAAC,IAAA,wBAAY,EAAC,iBAAiB,CAAC,EAAE,eAAe,CAAC,CACjC,CAAC;IAC7B,MAAM,IAAI,GAAG,QAAQ,CAAC,WAA8C,CAAC;IACrE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACvC,gBAAgB,GAAG,SAAS,CAAC;IAC/B,CAAC;SAAM,IAAI,IAAI,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QAC9B,gBAAgB,GAAG,IAAI,CAAC;IAC1B,CAAC;SAAM,CAAC;QACN,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC;IACjC,CAAC;IAED,iBAAiB,GAAG,IAAI,CAAC;IACzB,OAAO,gBAAgB,CAAC;AAC1B,CAAC"}
@@ -1,6 +0,0 @@
1
- /**
2
- * Recursively copy directory, replacing paths in .md files
3
- * Deletes existing destDir first to remove orphaned files from previous versions
4
- */
5
- export declare function copyWithPathReplacement(srcDir: string, destDir: string, pathPrefix: string, explicitConfigDir: string | null, isCommand?: boolean): void;
6
- //# sourceMappingURL=copy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"copy.d.ts","sourceRoot":"","sources":["../../src/install/copy.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,iBAAiB,EAAE,MAAM,GAAG,IAAI,EAChC,SAAS,GAAE,OAAe,GACzB,IAAI,CA0BN"}
@@ -1,71 +0,0 @@
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
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.copyWithPathReplacement = copyWithPathReplacement;
37
- const fs = __importStar(require("node:fs"));
38
- const path = __importStar(require("node:path"));
39
- const utils_js_1 = require("./utils.js");
40
- const adapters_js_1 = require("./adapters.js");
41
- /**
42
- * Recursively copy directory, replacing paths in .md files
43
- * Deletes existing destDir first to remove orphaned files from previous versions
44
- */
45
- function copyWithPathReplacement(srcDir, destDir, pathPrefix, explicitConfigDir, isCommand = false) {
46
- if (fs.existsSync(destDir)) {
47
- fs.rmSync(destDir, { recursive: true });
48
- }
49
- fs.mkdirSync(destDir, { recursive: true });
50
- const entries = fs.readdirSync(srcDir, { withFileTypes: true });
51
- for (const entry of entries) {
52
- const srcPath = path.join(srcDir, entry.name);
53
- const destPath = path.join(destDir, entry.name);
54
- if (entry.isDirectory()) {
55
- copyWithPathReplacement(srcPath, destPath, pathPrefix, explicitConfigDir, isCommand);
56
- }
57
- else if (entry.name.endsWith('.md')) {
58
- let content = fs.readFileSync(srcPath, 'utf8');
59
- const globalClaudeRegex = /~\/\.claude\//g;
60
- const localClaudeRegex = /\.\/\.claude\//g;
61
- content = content.replace(globalClaudeRegex, pathPrefix);
62
- content = content.replace(localClaudeRegex, './.claude/');
63
- content = (0, utils_js_1.processAttribution)(content, (0, adapters_js_1.getCommitAttribution)(explicitConfigDir));
64
- fs.writeFileSync(destPath, content);
65
- }
66
- else {
67
- fs.copyFileSync(srcPath, destPath);
68
- }
69
- }
70
- }
71
- //# sourceMappingURL=copy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"copy.js","sourceRoot":"","sources":["../../src/install/copy.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,0DAgCC;AA5CD,4CAA8B;AAC9B,gDAAkC;AAElC,yCAEoB;AACpB,+CAAqD;AAErD;;;GAGG;AACH,SAAgB,uBAAuB,CACrC,MAAc,EACd,OAAe,EACf,UAAkB,EAClB,iBAAgC,EAChC,YAAqB,KAAK;IAE1B,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,CAAC;IACD,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE3C,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAEhD,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,uBAAuB,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE,SAAS,CAAC,CAAC;QACvF,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACtC,IAAI,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YAC/C,MAAM,iBAAiB,GAAG,gBAAgB,CAAC;YAC3C,MAAM,gBAAgB,GAAG,iBAAiB,CAAC;YAC3C,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;YACzD,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAAC;YAC1D,OAAO,GAAG,IAAA,6BAAkB,EAAC,OAAO,EAAE,IAAA,kCAAoB,EAAC,iBAAiB,CAAC,CAAC,CAAC;YAC/E,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -1,16 +0,0 @@
1
- /** Check whether the current process is running with admin/root privileges. */
2
- export declare function isElevated(): boolean;
3
- /**
4
- * Add a firewall rule to allow inbound traffic on the given port.
5
- * Handles Windows (netsh), Linux (ufw / iptables), and macOS (no rule needed).
6
- */
7
- export declare function applyFirewallRule(port: number): void;
8
- /**
9
- * Walk up from cwd to find the MAXSIM monorepo root (has packages/dashboard/src/server.ts)
10
- */
11
- export declare function findMonorepoRoot(startDir: string): string | null;
12
- /**
13
- * Handle the `dashboard` subcommand — refresh assets, install node-pty, launch server
14
- */
15
- export declare function runDashboardSubcommand(argv: Record<string, unknown>): Promise<void>;
16
- //# sourceMappingURL=dashboard.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/install/dashboard.ts"],"names":[],"mappings":"AASA,+EAA+E;AAC/E,wBAAgB,UAAU,IAAI,OAAO,CAWpC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAoCpD;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAWhE;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAyJzF"}
@@ -1,273 +0,0 @@
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.isElevated = isElevated;
40
- exports.applyFirewallRule = applyFirewallRule;
41
- exports.findMonorepoRoot = findMonorepoRoot;
42
- exports.runDashboardSubcommand = runDashboardSubcommand;
43
- const fs = __importStar(require("node:fs"));
44
- const path = __importStar(require("node:path"));
45
- const os = __importStar(require("node:os"));
46
- const node_child_process_1 = require("node:child_process");
47
- const chalk_1 = __importDefault(require("chalk"));
48
- const shared_js_1 = require("./shared.js");
49
- /** Check whether the current process is running with admin/root privileges. */
50
- function isElevated() {
51
- if (process.platform === 'win32') {
52
- try {
53
- (0, node_child_process_1.execSync)('net session', { stdio: 'pipe' });
54
- return true;
55
- }
56
- catch {
57
- return false;
58
- }
59
- }
60
- // Linux / macOS: check if uid is 0
61
- return process.getuid?.() === 0;
62
- }
63
- /**
64
- * Add a firewall rule to allow inbound traffic on the given port.
65
- * Handles Windows (netsh), Linux (ufw / iptables), and macOS (no rule needed).
66
- */
67
- function applyFirewallRule(port) {
68
- const platform = process.platform;
69
- try {
70
- if (platform === 'win32') {
71
- const cmd = `netsh advfirewall firewall add rule name="MAXSIM Dashboard" dir=in action=allow protocol=TCP localport=${port}`;
72
- if (isElevated()) {
73
- (0, node_child_process_1.execSync)(cmd, { stdio: 'pipe' });
74
- console.log(chalk_1.default.green(' \u2713 Windows Firewall rule added for port ' + port));
75
- }
76
- else {
77
- // Trigger UAC elevation via PowerShell — this opens the Windows UAC dialog
78
- console.log(chalk_1.default.gray(' Requesting administrator privileges for firewall rule...'));
79
- const psCmd = `Start-Process cmd -ArgumentList '/c ${cmd}' -Verb RunAs -Wait`;
80
- (0, node_child_process_1.execSync)(`powershell -NoProfile -Command "${psCmd}"`, { stdio: 'pipe' });
81
- console.log(chalk_1.default.green(' \u2713 Windows Firewall rule added for port ' + port));
82
- }
83
- }
84
- else if (platform === 'linux') {
85
- const sudoPrefix = isElevated() ? '' : 'sudo ';
86
- try {
87
- (0, node_child_process_1.execSync)(`${sudoPrefix}ufw allow ${port}/tcp`, { stdio: 'pipe' });
88
- console.log(chalk_1.default.green(' \u2713 UFW rule added for port ' + port));
89
- }
90
- catch {
91
- try {
92
- (0, node_child_process_1.execSync)(`${sudoPrefix}iptables -A INPUT -p tcp --dport ${port} -j ACCEPT`, { stdio: 'pipe' });
93
- console.log(chalk_1.default.green(' \u2713 iptables rule added for port ' + port));
94
- }
95
- catch {
96
- console.log(chalk_1.default.yellow(` \u26a0 Could not add firewall rule automatically. Run: sudo ufw allow ${port}/tcp`));
97
- }
98
- }
99
- }
100
- else if (platform === 'darwin') {
101
- // macOS does not block inbound connections by default — no rule needed
102
- console.log(chalk_1.default.gray(' macOS: No firewall rule needed (inbound connections are allowed by default)'));
103
- }
104
- }
105
- catch (err) {
106
- console.warn(chalk_1.default.yellow(` \u26a0 Firewall rule failed: ${err.message}`));
107
- console.warn(chalk_1.default.gray(` You may need to manually allow port ${port} through your firewall.`));
108
- }
109
- }
110
- /**
111
- * Walk up from cwd to find the MAXSIM monorepo root (has packages/dashboard/src/server.ts)
112
- */
113
- function findMonorepoRoot(startDir) {
114
- let dir = startDir;
115
- for (let i = 0; i < 10; i++) {
116
- if (fs.existsSync(path.join(dir, 'packages', 'dashboard', 'src', 'server.ts'))) {
117
- return dir;
118
- }
119
- const parent = path.dirname(dir);
120
- if (parent === dir)
121
- break;
122
- dir = parent;
123
- }
124
- return null;
125
- }
126
- /**
127
- * Handle the `dashboard` subcommand — refresh assets, install node-pty, launch server
128
- */
129
- async function runDashboardSubcommand(argv) {
130
- const { spawn: spawnDash, execSync: execSyncDash } = await import('node:child_process');
131
- // Always refresh dashboard from bundled assets before launching.
132
- const dashboardAssetSrc = path.resolve(__dirname, 'assets', 'dashboard');
133
- const installDir = path.join(process.cwd(), '.claude');
134
- const installDashDir = path.join(installDir, 'dashboard');
135
- if (fs.existsSync(dashboardAssetSrc)) {
136
- // Preserve node_modules (contains native addons like node-pty) across refreshes
137
- const nodeModulesDir = path.join(installDashDir, 'node_modules');
138
- const nodeModulesTmp = path.join(installDir, '_dashboard_node_modules_tmp');
139
- const hadNodeModules = fs.existsSync(nodeModulesDir);
140
- if (hadNodeModules) {
141
- fs.renameSync(nodeModulesDir, nodeModulesTmp);
142
- }
143
- // Clean existing dashboard dir to prevent stale files from old installs
144
- (0, shared_js_1.safeRmDir)(installDashDir);
145
- fs.mkdirSync(installDashDir, { recursive: true });
146
- // Dashboard is now Vite+Express: server.js (self-contained) + client/ (static)
147
- (0, shared_js_1.copyDirRecursive)(dashboardAssetSrc, installDashDir);
148
- // Restore node_modules if it was preserved
149
- if (hadNodeModules && fs.existsSync(nodeModulesTmp)) {
150
- fs.renameSync(nodeModulesTmp, nodeModulesDir);
151
- }
152
- // Write/update dashboard.json
153
- const dashConfigPath = path.join(installDir, 'dashboard.json');
154
- if (!fs.existsSync(dashConfigPath)) {
155
- fs.writeFileSync(dashConfigPath, JSON.stringify({ projectCwd: process.cwd() }, null, 2) + '\n');
156
- }
157
- }
158
- // Resolve server path: local project first, then global
159
- const localDashboard = path.join(process.cwd(), '.claude', 'dashboard', 'server.js');
160
- const globalDashboard = path.join(os.homedir(), '.claude', 'dashboard', 'server.js');
161
- let serverPath = null;
162
- if (fs.existsSync(localDashboard)) {
163
- serverPath = localDashboard;
164
- }
165
- else if (fs.existsSync(globalDashboard)) {
166
- serverPath = globalDashboard;
167
- }
168
- if (!serverPath) {
169
- console.log(chalk_1.default.yellow('\n Dashboard not available.\n'));
170
- console.log(' Install MAXSIM first: ' + chalk_1.default.cyan('npx maxsimcli@latest') + '\n');
171
- process.exit(0);
172
- }
173
- // --network flag overrides stored config (lets users enable network mode ad-hoc)
174
- const forceNetwork = !!argv['network'];
175
- // Read projectCwd from dashboard.json (one level up from dashboard/ dir)
176
- const dashboardDir = path.dirname(serverPath);
177
- const dashboardConfigPath = path.join(path.dirname(dashboardDir), 'dashboard.json');
178
- let projectCwd = process.cwd();
179
- let networkMode = forceNetwork;
180
- if (fs.existsSync(dashboardConfigPath)) {
181
- try {
182
- const config = JSON.parse(fs.readFileSync(dashboardConfigPath, 'utf8'));
183
- if (config.projectCwd) {
184
- projectCwd = config.projectCwd;
185
- }
186
- if (!forceNetwork) {
187
- networkMode = config.networkMode ?? false;
188
- }
189
- }
190
- catch {
191
- // Use default cwd
192
- }
193
- }
194
- // node-pty is a native addon that cannot be bundled — auto-install if missing
195
- const dashDirForPty = path.dirname(serverPath);
196
- const ptyModulePath = path.join(dashDirForPty, 'node_modules', 'node-pty');
197
- if (!fs.existsSync(ptyModulePath)) {
198
- console.log(chalk_1.default.gray(' Installing node-pty for terminal support...'));
199
- try {
200
- // Ensure a package.json exists so npm install works in the dashboard dir
201
- const dashPkgPath = path.join(dashDirForPty, 'package.json');
202
- if (!fs.existsSync(dashPkgPath)) {
203
- fs.writeFileSync(dashPkgPath, '{"private":true}\n');
204
- }
205
- execSyncDash('npm install node-pty --save-optional --no-audit --no-fund --loglevel=error', {
206
- cwd: dashDirForPty,
207
- stdio: 'inherit',
208
- timeout: 120_000,
209
- });
210
- }
211
- catch {
212
- console.warn(chalk_1.default.yellow(' node-pty installation failed — terminal will be unavailable.'));
213
- }
214
- }
215
- console.log(chalk_1.default.blue('Starting dashboard...'));
216
- console.log(chalk_1.default.gray(` Project: ${projectCwd}`));
217
- console.log(chalk_1.default.gray(` Server: ${serverPath}`));
218
- if (networkMode) {
219
- console.log(chalk_1.default.gray(' Network: enabled (local network access + QR code)'));
220
- }
221
- console.log('');
222
- // Use stdio: 'ignore' (fully detached) — a piped stderr causes the server to crash on
223
- // Windows when the read-end is closed after the parent reads the ready message (EPIPE).
224
- const child = spawnDash(process.execPath, [serverPath], {
225
- cwd: dashboardDir,
226
- detached: true,
227
- stdio: 'ignore',
228
- env: {
229
- ...process.env,
230
- MAXSIM_PROJECT_CWD: projectCwd,
231
- MAXSIM_NETWORK_MODE: networkMode ? '1' : '0',
232
- NODE_ENV: 'production',
233
- },
234
- });
235
- child.unref();
236
- // Poll /api/health until the server is ready (or 20s timeout).
237
- const POLL_INTERVAL_MS = 500;
238
- const POLL_TIMEOUT_MS = 20000;
239
- const HEALTH_TIMEOUT_MS = 1000;
240
- const DEFAULT_PORT = 3333;
241
- const PORT_RANGE_END = 3343;
242
- let foundUrl = null;
243
- const deadline = Date.now() + POLL_TIMEOUT_MS;
244
- while (Date.now() < deadline) {
245
- await new Promise(r => setTimeout(r, POLL_INTERVAL_MS));
246
- for (let p = DEFAULT_PORT; p <= PORT_RANGE_END; p++) {
247
- try {
248
- const controller = new AbortController();
249
- const timer = setTimeout(() => controller.abort(), HEALTH_TIMEOUT_MS);
250
- const res = await fetch(`http://localhost:${p}/api/health`, { signal: controller.signal });
251
- clearTimeout(timer);
252
- if (res.ok) {
253
- const data = await res.json();
254
- if (data.status === 'ok') {
255
- foundUrl = `http://localhost:${p}`;
256
- break;
257
- }
258
- }
259
- }
260
- catch { /* not ready yet */ }
261
- }
262
- if (foundUrl)
263
- break;
264
- }
265
- if (foundUrl) {
266
- console.log(chalk_1.default.green(` Dashboard ready at ${foundUrl}`));
267
- }
268
- else {
269
- console.log(chalk_1.default.yellow('\n Dashboard did not respond after 20s. The server may still be starting — check http://localhost:3333'));
270
- }
271
- process.exit(0);
272
- }
273
- //# sourceMappingURL=dashboard.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dashboard.js","sourceRoot":"","sources":["../../src/install/dashboard.ts"],"names":[],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- /**
2
- * Clean up orphaned files from previous MAXSIM versions
3
- */
4
- export declare function cleanupOrphanedFiles(configDir: string): void;
5
- /**
6
- * Clean up orphaned hook registrations from settings.json
7
- */
8
- export declare function cleanupOrphanedHooks(settings: Record<string, unknown>): Record<string, unknown>;
9
- /**
10
- * Install hook files and configure settings.json
11
- */
12
- export declare function installHookFiles(targetDir: string, isGlobal: boolean, failures: string[]): void;
13
- /**
14
- * Configure hooks and statusline in settings.json
15
- */
16
- export declare function configureSettingsHooks(targetDir: string, isGlobal: boolean): {
17
- settingsPath: string;
18
- settings: Record<string, unknown>;
19
- statuslineCommand: string;
20
- updateCheckCommand: string;
21
- contextMonitorCommand: string;
22
- };
23
- /**
24
- * Handle statusline configuration — returns true if MAXSIM statusline should be installed
25
- */
26
- export declare function handleStatusline(settings: Record<string, unknown>, isInteractive: boolean, forceStatusline: boolean): Promise<boolean>;
27
- /**
28
- * Apply statusline config, then print completion message
29
- */
30
- export declare function finishInstall(settingsPath: string | null, settings: Record<string, unknown> | null, statuslineCommand: string | null, shouldInstallStatusline: boolean, isGlobal?: boolean): void;
31
- //# sourceMappingURL=hooks.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/install/hooks.ts"],"names":[],"mappings":"AAcA;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAa5D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAgEzB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,OAAO,EACjB,QAAQ,EAAE,MAAM,EAAE,GACjB,IAAI,CAiCN;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,OAAO,GAChB;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,iBAAiB,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAC;IAAC,qBAAqB,EAAE,MAAM,CAAA;CAAE,CA8EnJ;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,aAAa,EAAE,OAAO,EACtB,eAAe,EAAE,OAAO,GACvB,OAAO,CAAC,OAAO,CAAC,CAqClB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAC3B,YAAY,EAAE,MAAM,GAAG,IAAI,EAC3B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EACxC,iBAAiB,EAAE,MAAM,GAAG,IAAI,EAChC,uBAAuB,EAAE,OAAO,EAChC,QAAQ,GAAE,OAAc,GACvB,IAAI,CAkBN"}