@elliotding/ai-agent-mcp 0.1.26 → 0.1.28

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 (186) hide show
  1. package/README.md +330 -30
  2. package/dist/api/cached-client.d.ts +48 -0
  3. package/dist/api/cached-client.d.ts.map +1 -0
  4. package/dist/api/cached-client.js +126 -0
  5. package/dist/api/cached-client.js.map +1 -0
  6. package/dist/api/client.d.ts +295 -0
  7. package/dist/api/client.d.ts.map +1 -0
  8. package/dist/api/client.js +385 -0
  9. package/dist/api/client.js.map +1 -0
  10. package/dist/auth/index.d.ts +8 -0
  11. package/dist/auth/index.d.ts.map +1 -0
  12. package/dist/auth/index.js +26 -0
  13. package/dist/auth/index.js.map +1 -0
  14. package/dist/auth/middleware.d.ts +36 -0
  15. package/dist/auth/middleware.d.ts.map +1 -0
  16. package/dist/auth/middleware.js +194 -0
  17. package/dist/auth/middleware.js.map +1 -0
  18. package/dist/auth/permissions.d.ts +60 -0
  19. package/dist/auth/permissions.d.ts.map +1 -0
  20. package/dist/auth/permissions.js +262 -0
  21. package/dist/auth/permissions.js.map +1 -0
  22. package/dist/auth/token-validator.d.ts +52 -0
  23. package/dist/auth/token-validator.d.ts.map +1 -0
  24. package/dist/auth/token-validator.js +215 -0
  25. package/dist/auth/token-validator.js.map +1 -0
  26. package/dist/cache/cache-manager.d.ts +49 -0
  27. package/dist/cache/cache-manager.d.ts.map +1 -0
  28. package/dist/cache/cache-manager.js +191 -0
  29. package/dist/cache/cache-manager.js.map +1 -0
  30. package/dist/cache/index.d.ts +6 -0
  31. package/dist/cache/index.d.ts.map +1 -0
  32. package/dist/cache/index.js +12 -0
  33. package/dist/cache/index.js.map +1 -0
  34. package/dist/cache/redis-client.d.ts +45 -0
  35. package/dist/cache/redis-client.d.ts.map +1 -0
  36. package/dist/cache/redis-client.js +210 -0
  37. package/dist/cache/redis-client.js.map +1 -0
  38. package/dist/config/constants.d.ts +28 -0
  39. package/dist/config/constants.d.ts.map +1 -0
  40. package/dist/config/constants.js +31 -0
  41. package/dist/config/constants.js.map +1 -0
  42. package/dist/config/index.d.ts +71 -0
  43. package/dist/config/index.d.ts.map +1 -0
  44. package/dist/config/index.js +190 -0
  45. package/dist/config/index.js.map +1 -0
  46. package/dist/filesystem/manager.d.ts +45 -0
  47. package/dist/filesystem/manager.d.ts.map +1 -0
  48. package/dist/filesystem/manager.js +246 -0
  49. package/dist/filesystem/manager.js.map +1 -0
  50. package/dist/git/multi-source-manager.d.ts +105 -0
  51. package/dist/git/multi-source-manager.d.ts.map +1 -0
  52. package/dist/git/multi-source-manager.js +677 -0
  53. package/dist/git/multi-source-manager.js.map +1 -0
  54. package/dist/git/operations.d.ts +27 -0
  55. package/dist/git/operations.d.ts.map +1 -0
  56. package/dist/git/operations.js +83 -0
  57. package/dist/git/operations.js.map +1 -0
  58. package/dist/index.d.ts +6 -0
  59. package/dist/index.d.ts.map +1 -0
  60. package/dist/index.js +122 -0
  61. package/dist/index.js.map +1 -0
  62. package/dist/monitoring/health.d.ts +35 -0
  63. package/dist/monitoring/health.d.ts.map +1 -0
  64. package/dist/monitoring/health.js +105 -0
  65. package/dist/monitoring/health.js.map +1 -0
  66. package/dist/prompts/cache.d.ts +69 -0
  67. package/dist/prompts/cache.d.ts.map +1 -0
  68. package/dist/prompts/cache.js +163 -0
  69. package/dist/prompts/cache.js.map +1 -0
  70. package/dist/prompts/generator.d.ts +49 -0
  71. package/dist/prompts/generator.d.ts.map +1 -0
  72. package/dist/prompts/generator.js +160 -0
  73. package/dist/prompts/generator.js.map +1 -0
  74. package/dist/prompts/index.d.ts +13 -0
  75. package/dist/prompts/index.d.ts.map +1 -0
  76. package/dist/prompts/index.js +24 -0
  77. package/dist/prompts/index.js.map +1 -0
  78. package/dist/prompts/manager.d.ts +213 -0
  79. package/dist/prompts/manager.d.ts.map +1 -0
  80. package/dist/prompts/manager.js +587 -0
  81. package/dist/prompts/manager.js.map +1 -0
  82. package/dist/resources/index.d.ts +6 -0
  83. package/dist/resources/index.d.ts.map +1 -0
  84. package/dist/resources/index.js +10 -0
  85. package/dist/resources/index.js.map +1 -0
  86. package/dist/resources/loader.d.ts +88 -0
  87. package/dist/resources/loader.d.ts.map +1 -0
  88. package/dist/resources/loader.js +492 -0
  89. package/dist/resources/loader.js.map +1 -0
  90. package/dist/server/http.d.ts +57 -0
  91. package/dist/server/http.d.ts.map +1 -0
  92. package/dist/server/http.js +435 -0
  93. package/dist/server/http.js.map +1 -0
  94. package/dist/server.d.ts +13 -0
  95. package/dist/server.d.ts.map +1 -0
  96. package/dist/server.js +201 -0
  97. package/dist/server.js.map +1 -0
  98. package/dist/session/manager.d.ts +91 -0
  99. package/dist/session/manager.d.ts.map +1 -0
  100. package/dist/session/manager.js +251 -0
  101. package/dist/session/manager.js.map +1 -0
  102. package/dist/telemetry/index.d.ts +3 -0
  103. package/dist/telemetry/index.d.ts.map +1 -0
  104. package/dist/telemetry/index.js +7 -0
  105. package/dist/telemetry/index.js.map +1 -0
  106. package/dist/telemetry/manager.d.ts +151 -0
  107. package/dist/telemetry/manager.d.ts.map +1 -0
  108. package/dist/telemetry/manager.js +367 -0
  109. package/dist/telemetry/manager.js.map +1 -0
  110. package/dist/tools/index.d.ts +13 -0
  111. package/dist/tools/index.d.ts.map +1 -0
  112. package/dist/tools/index.js +29 -0
  113. package/dist/tools/index.js.map +1 -0
  114. package/dist/tools/manage-subscription.d.ts +47 -0
  115. package/dist/tools/manage-subscription.d.ts.map +1 -0
  116. package/dist/tools/manage-subscription.js +317 -0
  117. package/dist/tools/manage-subscription.js.map +1 -0
  118. package/dist/tools/registry.d.ts +40 -0
  119. package/dist/tools/registry.d.ts.map +1 -0
  120. package/dist/tools/registry.js +85 -0
  121. package/dist/tools/registry.js.map +1 -0
  122. package/dist/tools/resolve-prompt-content.d.ts +35 -0
  123. package/dist/tools/resolve-prompt-content.d.ts.map +1 -0
  124. package/dist/tools/resolve-prompt-content.js +99 -0
  125. package/dist/tools/resolve-prompt-content.js.map +1 -0
  126. package/dist/tools/search-resources.d.ts +35 -0
  127. package/dist/tools/search-resources.d.ts.map +1 -0
  128. package/dist/tools/search-resources.js +159 -0
  129. package/dist/tools/search-resources.js.map +1 -0
  130. package/dist/tools/sync-resources.d.ts +54 -0
  131. package/dist/tools/sync-resources.d.ts.map +1 -0
  132. package/dist/tools/sync-resources.js +793 -0
  133. package/dist/tools/sync-resources.js.map +1 -0
  134. package/dist/tools/track-usage.d.ts +63 -0
  135. package/dist/tools/track-usage.d.ts.map +1 -0
  136. package/dist/tools/track-usage.js +90 -0
  137. package/dist/tools/track-usage.js.map +1 -0
  138. package/dist/tools/uninstall-resource.d.ts +30 -0
  139. package/dist/tools/uninstall-resource.d.ts.map +1 -0
  140. package/dist/tools/uninstall-resource.js +186 -0
  141. package/dist/tools/uninstall-resource.js.map +1 -0
  142. package/dist/tools/upload-resource.d.ts +81 -0
  143. package/dist/tools/upload-resource.d.ts.map +1 -0
  144. package/dist/tools/upload-resource.js +393 -0
  145. package/dist/tools/upload-resource.js.map +1 -0
  146. package/dist/transport/sse.d.ts +29 -0
  147. package/dist/transport/sse.d.ts.map +1 -0
  148. package/dist/transport/sse.js +271 -0
  149. package/dist/transport/sse.js.map +1 -0
  150. package/dist/types/errors.d.ts +60 -0
  151. package/dist/types/errors.d.ts.map +1 -0
  152. package/dist/types/errors.js +112 -0
  153. package/dist/types/errors.js.map +1 -0
  154. package/dist/types/index.d.ts +7 -0
  155. package/dist/types/index.d.ts.map +1 -0
  156. package/dist/types/index.js +23 -0
  157. package/dist/types/index.js.map +1 -0
  158. package/dist/types/mcp.d.ts +50 -0
  159. package/dist/types/mcp.d.ts.map +1 -0
  160. package/dist/types/mcp.js +6 -0
  161. package/dist/types/mcp.js.map +1 -0
  162. package/dist/types/resources.d.ts +109 -0
  163. package/dist/types/resources.d.ts.map +1 -0
  164. package/dist/types/resources.js +7 -0
  165. package/dist/types/resources.js.map +1 -0
  166. package/dist/types/tools.d.ts +274 -0
  167. package/dist/types/tools.d.ts.map +1 -0
  168. package/dist/types/tools.js +6 -0
  169. package/dist/types/tools.js.map +1 -0
  170. package/dist/utils/cursor-paths.d.ts +84 -0
  171. package/dist/utils/cursor-paths.d.ts.map +1 -0
  172. package/dist/utils/cursor-paths.js +166 -0
  173. package/dist/utils/cursor-paths.js.map +1 -0
  174. package/dist/utils/log-cleaner.d.ts +18 -0
  175. package/dist/utils/log-cleaner.d.ts.map +1 -0
  176. package/dist/utils/log-cleaner.js +112 -0
  177. package/dist/utils/log-cleaner.js.map +1 -0
  178. package/dist/utils/logger.d.ts +59 -0
  179. package/dist/utils/logger.d.ts.map +1 -0
  180. package/dist/utils/logger.js +292 -0
  181. package/dist/utils/logger.js.map +1 -0
  182. package/dist/utils/validation.d.ts +58 -0
  183. package/dist/utils/validation.d.ts.map +1 -0
  184. package/dist/utils/validation.js +214 -0
  185. package/dist/utils/validation.js.map +1 -0
  186. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-source-manager.js","sourceRoot":"","sources":["../../src/git/multi-source-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Git Operations Module
3
+ * Per-repo git helpers used by upload_resource to target a specific source repo.
4
+ * All repo URLs and branches come from AI-Resources/ai-resources-config.json —
5
+ * not from environment variables.
6
+ */
7
+ declare class GitOperations {
8
+ /**
9
+ * Check whether a git repository exists at an arbitrary local path
10
+ */
11
+ repositoryExistsAt(repoPath: string): Promise<boolean>;
12
+ /**
13
+ * Get current branch of an arbitrary local repo
14
+ */
15
+ getCurrentBranchAt(repoPath: string): Promise<string>;
16
+ /**
17
+ * Commit and push to a specific repo / remote url / branch.
18
+ * Creates a unique remote testing branch and returns a PR URL.
19
+ */
20
+ commitAndPushRepo(repoPath: string, remoteUrl: string, baseBranch: string, message: string, files?: string[]): Promise<{
21
+ commitHash: string;
22
+ prUrl?: string;
23
+ }>;
24
+ }
25
+ export declare const gitOperations: GitOperations;
26
+ export {};
27
+ //# sourceMappingURL=operations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/git/operations.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,cAAM,aAAa;IAGjB;;OAEG;IACG,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAU5D;;OAEG;IACG,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAU3D;;;OAGG;IACG,iBAAiB,CACrB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,EAAE,GACf,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAuCnD;AAED,eAAO,MAAM,aAAa,eAAsB,CAAC"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ /**
3
+ * Git Operations Module
4
+ * Per-repo git helpers used by upload_resource to target a specific source repo.
5
+ * All repo URLs and branches come from AI-Resources/ai-resources-config.json —
6
+ * not from environment variables.
7
+ */
8
+ var __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.gitOperations = void 0;
13
+ const simple_git_1 = __importDefault(require("simple-git"));
14
+ const config_1 = require("../config");
15
+ const logger_1 = require("../utils/logger");
16
+ const errors_1 = require("../types/errors");
17
+ class GitOperations {
18
+ // ---- Per-repo helpers (used by upload_resource to target a specific source) ----
19
+ /**
20
+ * Check whether a git repository exists at an arbitrary local path
21
+ */
22
+ async repositoryExistsAt(repoPath) {
23
+ try {
24
+ const git = (0, simple_git_1.default)({ baseDir: repoPath, binary: 'git', maxConcurrentProcesses: 6 });
25
+ await git.status();
26
+ return true;
27
+ }
28
+ catch {
29
+ return false;
30
+ }
31
+ }
32
+ /**
33
+ * Get current branch of an arbitrary local repo
34
+ */
35
+ async getCurrentBranchAt(repoPath) {
36
+ try {
37
+ const git = (0, simple_git_1.default)({ baseDir: repoPath, binary: 'git', maxConcurrentProcesses: 6 });
38
+ const branchSummary = await git.branch();
39
+ return branchSummary.current;
40
+ }
41
+ catch (error) {
42
+ throw (0, errors_1.createGitError)('get-branch', error);
43
+ }
44
+ }
45
+ /**
46
+ * Commit and push to a specific repo / remote url / branch.
47
+ * Creates a unique remote testing branch and returns a PR URL.
48
+ */
49
+ async commitAndPushRepo(repoPath, remoteUrl, baseBranch, message, files) {
50
+ try {
51
+ const git = (0, simple_git_1.default)({ baseDir: repoPath, binary: 'git', maxConcurrentProcesses: 6 });
52
+ logger_1.logger.info({ repoPath, remoteUrl, message, fileCount: files?.length }, 'Committing and pushing to source repo...');
53
+ await git.addConfig('user.name', config_1.config.git.userName);
54
+ await git.addConfig('user.email', config_1.config.git.userEmail);
55
+ const branchSummary = await git.branch();
56
+ const currentBranch = branchSummary.current;
57
+ const timestamp = Date.now();
58
+ const randomSuffix = Math.random().toString(36).substring(2, 8);
59
+ const remoteBranchName = `dev-${currentBranch}-testing-${timestamp}-${randomSuffix}`;
60
+ logger_1.logger.info({ remoteBranchName }, 'Generated remote branch name for PR');
61
+ if (files && files.length > 0) {
62
+ await git.add(files);
63
+ }
64
+ else {
65
+ await git.add('.');
66
+ }
67
+ const commitResult = await git.commit(message);
68
+ const commitHash = commitResult.commit;
69
+ logger_1.logger.info({ commitHash }, 'Git commit created');
70
+ await git.push(remoteUrl, `${currentBranch}:${remoteBranchName}`);
71
+ logger_1.logger.info({ remoteBranchName }, 'Git push completed');
72
+ const repoBaseUrl = remoteUrl.replace(/\.git$/, '');
73
+ const prUrl = `${repoBaseUrl}/compare/${baseBranch}...${remoteBranchName}`;
74
+ logger_1.logger.info({ prUrl, commitHash }, 'PR URL generated');
75
+ return { commitHash, prUrl };
76
+ }
77
+ catch (error) {
78
+ throw (0, errors_1.createGitError)('commit-push', error, remoteUrl);
79
+ }
80
+ }
81
+ }
82
+ exports.gitOperations = new GitOperations();
83
+ //# sourceMappingURL=operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.js","sourceRoot":"","sources":["../../src/git/operations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * CSP AI Agent MCP Server - Main Entry Point
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;GAEG"}
package/dist/index.js ADDED
@@ -0,0 +1,122 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ /**
4
+ * CSP AI Agent MCP Server - Main Entry Point
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ const config_1 = require("./config");
8
+ const logger_1 = require("./utils/logger");
9
+ const log_cleaner_1 = require("./utils/log-cleaner");
10
+ const server_1 = require("./server");
11
+ const token_validator_1 = require("./auth/token-validator");
12
+ const manager_1 = require("./session/manager");
13
+ const index_js_1 = require("./telemetry/index.js");
14
+ const client_js_1 = require("./api/client.js");
15
+ // Global error handlers
16
+ process.on('uncaughtException', (error) => {
17
+ // Handle EPIPE and ECONNRESET gracefully (client disconnected)
18
+ if (error.message.includes('EPIPE') || error.message.includes('ECONNRESET')) {
19
+ logger_1.logger.debug({
20
+ error: error.message,
21
+ type: 'uncaught_exception_network'
22
+ }, 'Client disconnected (EPIPE/ECONNRESET)');
23
+ return; // Don't exit for network errors
24
+ }
25
+ // For other uncaught exceptions, log and exit
26
+ logger_1.logger.error({ error, type: 'uncaught_exception' }, `Uncaught Exception: ${error.message}`);
27
+ process.exit(1);
28
+ });
29
+ process.on('unhandledRejection', (reason, _promise) => {
30
+ logger_1.logger.error({
31
+ type: 'unhandled_rejection',
32
+ reason: reason instanceof Error ? reason.message : String(reason),
33
+ stack: reason instanceof Error ? reason.stack : undefined,
34
+ }, 'Unhandled Promise Rejection');
35
+ process.exit(1);
36
+ });
37
+ async function main() {
38
+ logger_1.logger.info({
39
+ nodeEnv: config_1.config.nodeEnv,
40
+ port: config_1.config.port,
41
+ logLevel: config_1.config.logLevel,
42
+ }, 'Starting CSP AI Agent MCP Server...');
43
+ // Start log cleanup scheduler
44
+ const cleanupTimer = (0, log_cleaner_1.startLogCleanupSchedule)();
45
+ // Wire up telemetry reporting (inject API client to avoid circular import).
46
+ // Tokens are sourced exclusively from authenticated SSE connections via setUserToken().
47
+ index_js_1.telemetry.configure((payload, token) => client_js_1.apiClient.reportTelemetry(payload, token));
48
+ try {
49
+ // Start MCP Server
50
+ await (0, server_1.startServer)();
51
+ logger_1.logger.info({ port: config_1.config.port }, `✅ CSP AI Agent MCP Server started successfully`);
52
+ // Start periodic telemetry flush (every 10 seconds)
53
+ index_js_1.telemetry.startPeriodicFlush(10_000);
54
+ logger_1.logger.info('Telemetry flush scheduler started (interval: 10s)');
55
+ }
56
+ catch (error) {
57
+ logger_1.logger.error({ error }, 'Failed to start server');
58
+ (0, log_cleaner_1.stopLogCleanupSchedule)(cleanupTimer);
59
+ process.exit(1);
60
+ }
61
+ // Graceful shutdown handlers
62
+ let isShuttingDown = false;
63
+ const SHUTDOWN_TIMEOUT = Number(process.env.SHUTDOWN_TIMEOUT) || 30000; // 30 seconds default
64
+ const shutdown = async (signal) => {
65
+ // Prevent multiple shutdown attempts
66
+ if (isShuttingDown) {
67
+ logger_1.logger.warn({ signal }, 'Shutdown already in progress, ignoring signal');
68
+ return;
69
+ }
70
+ isShuttingDown = true;
71
+ logger_1.logger.info({ signal, timeout: SHUTDOWN_TIMEOUT }, `Received ${signal}, starting graceful shutdown...`);
72
+ // Set timeout for forced shutdown
73
+ const shutdownTimer = setTimeout(() => {
74
+ logger_1.logger.error({ timeout: SHUTDOWN_TIMEOUT }, `Graceful shutdown timeout (${SHUTDOWN_TIMEOUT}ms), forcing exit`);
75
+ process.exit(1);
76
+ }, SHUTDOWN_TIMEOUT);
77
+ try {
78
+ // Phase 1: Stop accepting new requests
79
+ logger_1.logger.info('Phase 1: Stopping new requests...');
80
+ // Phase 2: Wait for ongoing requests to complete
81
+ logger_1.logger.info('Phase 2: Waiting for ongoing requests to complete...');
82
+ // Stop MCP Server (this will close all active sessions and connections)
83
+ await (0, server_1.stopServer)();
84
+ // Phase 3: Stop background tasks
85
+ logger_1.logger.info('Phase 3: Stopping background tasks...');
86
+ // Stop log cleanup
87
+ (0, log_cleaner_1.stopLogCleanupSchedule)(cleanupTimer);
88
+ // Stop session cleanup
89
+ manager_1.sessionManager.stopCleanup();
90
+ logger_1.logger.info('Session cleanup stopped');
91
+ // Stop token cache cleanup
92
+ (0, token_validator_1.stopCacheCleanup)();
93
+ logger_1.logger.info('Token cache cleanup stopped');
94
+ // Stop telemetry scheduler and perform final flush
95
+ index_js_1.telemetry.stopPeriodicFlush();
96
+ logger_1.logger.info('Telemetry scheduler stopped, performing final flush...');
97
+ await index_js_1.telemetry.flush();
98
+ logger_1.logger.info('Final telemetry flush completed');
99
+ // Phase 4: Flush logs
100
+ logger_1.logger.info('Phase 4: Flushing logs...');
101
+ // Give logger time to flush
102
+ await new Promise(resolve => setTimeout(resolve, 500));
103
+ // Clear shutdown timeout
104
+ clearTimeout(shutdownTimer);
105
+ logger_1.logger.info('✅ Graceful shutdown completed successfully');
106
+ process.exit(0);
107
+ }
108
+ catch (error) {
109
+ logger_1.logger.error({ error }, 'Error during graceful shutdown');
110
+ clearTimeout(shutdownTimer);
111
+ process.exit(1);
112
+ }
113
+ };
114
+ process.on('SIGINT', () => void shutdown('SIGINT'));
115
+ process.on('SIGTERM', () => void shutdown('SIGTERM'));
116
+ }
117
+ // Start the application
118
+ void main().catch((error) => {
119
+ logger_1.logger.error({ error }, 'Fatal error during startup');
120
+ process.exit(1);
121
+ });
122
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import { CacheManager } from '../cache/cache-manager.js';
2
+ export interface HealthStatus {
3
+ status: 'healthy' | 'unhealthy';
4
+ timestamp: string;
5
+ services: {
6
+ http: 'up' | 'down';
7
+ redis: 'up' | 'down' | 'not_configured';
8
+ cache: 'healthy' | 'degraded' | 'down';
9
+ };
10
+ details?: {
11
+ redisError?: string;
12
+ cacheError?: string;
13
+ };
14
+ }
15
+ export declare class HealthChecker {
16
+ private cacheManager;
17
+ constructor(cacheManager?: CacheManager);
18
+ /**
19
+ * Check HTTP Server health
20
+ */
21
+ private checkHttpServer;
22
+ /**
23
+ * Check Redis connection health
24
+ */
25
+ private checkRedis;
26
+ /**
27
+ * Check Cache health
28
+ */
29
+ private checkCache;
30
+ /**
31
+ * Perform comprehensive health check
32
+ */
33
+ check(): Promise<HealthStatus>;
34
+ }
35
+ //# sourceMappingURL=health.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../src/monitoring/health.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,SAAS,GAAG,WAAW,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE;QACR,IAAI,EAAE,IAAI,GAAG,MAAM,CAAC;QACpB,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,gBAAgB,CAAC;QACxC,KAAK,EAAE,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;KACxC,CAAC;IACF,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;CACH;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,YAAY,CAA6B;gBAErC,YAAY,CAAC,EAAE,YAAY;IAIvC;;OAEG;IACH,OAAO,CAAC,eAAe;IAKvB;;OAEG;YACW,UAAU;IA+BxB;;OAEG;IACH,OAAO,CAAC,UAAU;IA2BlB;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,YAAY,CAAC;CAiCrC"}
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.HealthChecker = void 0;
4
+ class HealthChecker {
5
+ cacheManager = null;
6
+ constructor(cacheManager) {
7
+ this.cacheManager = cacheManager || null;
8
+ }
9
+ /**
10
+ * Check HTTP Server health
11
+ */
12
+ checkHttpServer() {
13
+ // HTTP server is up if this code is running
14
+ return 'up';
15
+ }
16
+ /**
17
+ * Check Redis connection health
18
+ */
19
+ async checkRedis() {
20
+ if (!this.cacheManager) {
21
+ return { status: 'not_configured' };
22
+ }
23
+ try {
24
+ // Try to check Redis connection via cache manager
25
+ const redisCache = this.cacheManager.l2Cache;
26
+ if (!redisCache) {
27
+ return { status: 'not_configured' };
28
+ }
29
+ // Try a simple Redis operation (check client status)
30
+ const client = redisCache.client;
31
+ if (!client || !client.isReady) {
32
+ return { status: 'down', error: 'Redis client not ready' };
33
+ }
34
+ // Try a ping operation
35
+ await client.ping();
36
+ return { status: 'up' };
37
+ }
38
+ catch (error) {
39
+ return {
40
+ status: 'down',
41
+ error: error instanceof Error ? error.message : 'Unknown error'
42
+ };
43
+ }
44
+ }
45
+ /**
46
+ * Check Cache health
47
+ */
48
+ checkCache() {
49
+ if (!this.cacheManager) {
50
+ return { status: 'down', error: 'Cache manager not initialized' };
51
+ }
52
+ try {
53
+ // Check if cache manager is functional
54
+ const stats = this.cacheManager.getStats();
55
+ // Cache is healthy if stats are available
56
+ if (stats && typeof stats.hitRate === 'number') {
57
+ // Check if hit rate is reasonable (> 0 means cache is working)
58
+ if (stats.hitRate >= 0) {
59
+ return { status: 'healthy' };
60
+ }
61
+ return { status: 'degraded', error: 'Low cache hit rate' };
62
+ }
63
+ return { status: 'degraded', error: 'Cache stats unavailable' };
64
+ }
65
+ catch (error) {
66
+ return {
67
+ status: 'down',
68
+ error: error instanceof Error ? error.message : 'Unknown error'
69
+ };
70
+ }
71
+ }
72
+ /**
73
+ * Perform comprehensive health check
74
+ */
75
+ async check() {
76
+ const httpStatus = this.checkHttpServer();
77
+ const redisResult = await this.checkRedis();
78
+ const cacheResult = this.checkCache();
79
+ const allHealthy = httpStatus === 'up' &&
80
+ (redisResult.status === 'up' || redisResult.status === 'not_configured') &&
81
+ cacheResult.status === 'healthy';
82
+ const health = {
83
+ status: allHealthy ? 'healthy' : 'unhealthy',
84
+ timestamp: new Date().toISOString(),
85
+ services: {
86
+ http: httpStatus,
87
+ redis: redisResult.status,
88
+ cache: cacheResult.status
89
+ }
90
+ };
91
+ // Add error details if any
92
+ if (redisResult.error || cacheResult.error) {
93
+ health.details = {};
94
+ if (redisResult.error) {
95
+ health.details.redisError = redisResult.error;
96
+ }
97
+ if (cacheResult.error) {
98
+ health.details.cacheError = cacheResult.error;
99
+ }
100
+ }
101
+ return health;
102
+ }
103
+ }
104
+ exports.HealthChecker = HealthChecker;
105
+ //# sourceMappingURL=health.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"health.js","sourceRoot":"","sources":["../../src/monitoring/health.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * PromptCache: manages the .prompt-cache/ directory inside the MCP Server's
3
+ * runtime working directory.
4
+ *
5
+ * Cache files hold the fully-expanded Prompt content for each Command/Skill
6
+ * resource so that the MCP Prompt handler can serve them without re-generating
7
+ * on every invocation.
8
+ *
9
+ * The cache directory is intentionally NOT committed to Git — it is regenerated
10
+ * from the canonical source files after every git pull or resource upload.
11
+ *
12
+ * File naming: {type}-{resource_id}.md
13
+ * e.g. cmd-client-sdk-generate-testcase.md
14
+ * skill-client-sdk-analyze-sdk-log.md
15
+ */
16
+ export declare class PromptCache {
17
+ private readonly cacheDir;
18
+ /**
19
+ * @param baseDir Absolute base directory (defaults to process.cwd()).
20
+ */
21
+ constructor(baseDir?: string);
22
+ /** Absolute path to the cache directory. */
23
+ get directory(): string;
24
+ /** Ensure the cache directory exists (idempotent). */
25
+ ensureDir(): void;
26
+ /**
27
+ * Derive the cache file name for a resource.
28
+ * @param resourceType 'command' | 'skill'
29
+ * @param resourceId Canonical resource ID
30
+ */
31
+ private cacheFileName;
32
+ /** Absolute path to the cache file for a given resource. */
33
+ cachePath(resourceType: string, resourceId: string): string;
34
+ /**
35
+ * Write (or overwrite) a resource's Prompt content to the cache.
36
+ * Uses atomic write-then-rename to prevent partial reads.
37
+ *
38
+ * @param resourceType 'command' | 'skill'
39
+ * @param resourceId Canonical resource ID
40
+ * @param content Fully-expanded Prompt Markdown content
41
+ */
42
+ write(resourceType: string, resourceId: string, content: string): void;
43
+ /**
44
+ * Read the cached Prompt content for a resource.
45
+ * Returns null if the cache file does not exist or cannot be read.
46
+ *
47
+ * @param resourceType 'command' | 'skill'
48
+ * @param resourceId Canonical resource ID
49
+ */
50
+ read(resourceType: string, resourceId: string): string | null;
51
+ /**
52
+ * Delete the cache file for a resource.
53
+ * Silently succeeds if the file does not exist.
54
+ *
55
+ * @param resourceType 'command' | 'skill'
56
+ * @param resourceId Canonical resource ID
57
+ */
58
+ delete(resourceType: string, resourceId: string): void;
59
+ /**
60
+ * Check whether a valid cache entry exists for a resource.
61
+ *
62
+ * @param resourceType 'command' | 'skill'
63
+ * @param resourceId Canonical resource ID
64
+ */
65
+ exists(resourceType: string, resourceId: string): boolean;
66
+ }
67
+ /** Singleton cache instance using the process CWD as the base directory. */
68
+ export declare const promptCache: PromptCache;
69
+ //# sourceMappingURL=cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["../../src/prompts/cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AASH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAElC;;OAEG;gBACS,OAAO,GAAE,MAAsB;IAI3C,4CAA4C;IAC5C,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,sDAAsD;IACtD,SAAS,IAAI,IAAI;IAIjB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAQrB,4DAA4D;IAC5D,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;IAI3D;;;;;;;OAOG;IACH,KAAK,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAoBtE;;;;;;OAMG;IACH,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAS7D;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAetD;;;;;OAKG;IACH,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO;CAG1D;AAED,4EAA4E;AAC5E,eAAO,MAAM,WAAW,aAAoB,CAAC"}