atlas-pipeline-mcp 1.0.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 (64) hide show
  1. package/.env.example +21 -0
  2. package/LICENSE +21 -0
  3. package/README.md +175 -0
  4. package/dist/mcp.d.ts +21 -0
  5. package/dist/mcp.d.ts.map +1 -0
  6. package/dist/mcp.js +404 -0
  7. package/dist/mcp.js.map +1 -0
  8. package/dist/pipeline.d.ts +39 -0
  9. package/dist/pipeline.d.ts.map +1 -0
  10. package/dist/pipeline.js +355 -0
  11. package/dist/pipeline.js.map +1 -0
  12. package/dist/providers/index.d.ts +14 -0
  13. package/dist/providers/index.d.ts.map +1 -0
  14. package/dist/providers/index.js +13 -0
  15. package/dist/providers/index.js.map +1 -0
  16. package/dist/providers/llm-provider.d.ts +71 -0
  17. package/dist/providers/llm-provider.d.ts.map +1 -0
  18. package/dist/providers/llm-provider.js +357 -0
  19. package/dist/providers/llm-provider.js.map +1 -0
  20. package/dist/server.d.ts +27 -0
  21. package/dist/server.d.ts.map +1 -0
  22. package/dist/server.js +312 -0
  23. package/dist/server.js.map +1 -0
  24. package/dist/tools/context.d.ts +23 -0
  25. package/dist/tools/context.d.ts.map +1 -0
  26. package/dist/tools/context.js +363 -0
  27. package/dist/tools/context.js.map +1 -0
  28. package/dist/tools/critique.d.ts +40 -0
  29. package/dist/tools/critique.d.ts.map +1 -0
  30. package/dist/tools/critique.js +315 -0
  31. package/dist/tools/critique.js.map +1 -0
  32. package/dist/tools/decompose.d.ts +34 -0
  33. package/dist/tools/decompose.d.ts.map +1 -0
  34. package/dist/tools/decompose.js +328 -0
  35. package/dist/tools/decompose.js.map +1 -0
  36. package/dist/tools/git.d.ts +66 -0
  37. package/dist/tools/git.d.ts.map +1 -0
  38. package/dist/tools/git.js +333 -0
  39. package/dist/tools/git.js.map +1 -0
  40. package/dist/tools/intent.d.ts +24 -0
  41. package/dist/tools/intent.d.ts.map +1 -0
  42. package/dist/tools/intent.js +245 -0
  43. package/dist/tools/intent.js.map +1 -0
  44. package/dist/tools/ollama.d.ts +104 -0
  45. package/dist/tools/ollama.d.ts.map +1 -0
  46. package/dist/tools/ollama.js +299 -0
  47. package/dist/tools/ollama.js.map +1 -0
  48. package/dist/tools/optimize.d.ts +64 -0
  49. package/dist/tools/optimize.d.ts.map +1 -0
  50. package/dist/tools/optimize.js +302 -0
  51. package/dist/tools/optimize.js.map +1 -0
  52. package/dist/tools/variants.d.ts +49 -0
  53. package/dist/tools/variants.d.ts.map +1 -0
  54. package/dist/tools/variants.js +252 -0
  55. package/dist/tools/variants.js.map +1 -0
  56. package/dist/types.d.ts +447 -0
  57. package/dist/types.d.ts.map +1 -0
  58. package/dist/types.js +25 -0
  59. package/dist/types.js.map +1 -0
  60. package/dist/utils.d.ts +117 -0
  61. package/dist/utils.d.ts.map +1 -0
  62. package/dist/utils.js +279 -0
  63. package/dist/utils.js.map +1 -0
  64. package/package.json +77 -0
package/dist/server.js ADDED
@@ -0,0 +1,312 @@
1
+ /**
2
+ * Atlas Server - Fastify HTTP Server
3
+ *
4
+ * Production-ready HTTP server with:
5
+ * - Pipeline execution endpoints
6
+ * - Health checks
7
+ * - Request validation
8
+ * - Error handling
9
+ * - CORS support
10
+ * - Structured logging
11
+ */
12
+ import 'dotenv/config';
13
+ import Fastify from 'fastify';
14
+ import cors from '@fastify/cors';
15
+ import { PipelineRequestSchema } from './types.js';
16
+ import { executePipeline, executeLightPipeline, getPipelineStatus } from './pipeline.js';
17
+ import { getOllamaClient } from './tools/ollama.js';
18
+ import { logger, generateId, nowISO } from './utils.js';
19
+ // ============================================================================
20
+ // Configuration
21
+ // ============================================================================
22
+ const DEFAULT_CONFIG = {
23
+ port: parseInt(process.env['PORT'] ?? '3000', 10),
24
+ host: process.env['HOST'] ?? '0.0.0.0',
25
+ logLevel: (process.env['LOG_LEVEL'] ?? 'info'),
26
+ corsEnabled: process.env['CORS_ENABLED'] !== 'false',
27
+ ollama: {
28
+ baseUrl: process.env['OLLAMA_BASE_URL'] ?? 'http://localhost:11434',
29
+ model: process.env['OLLAMA_MODEL'] ?? 'llama3.2',
30
+ timeoutMs: parseInt(process.env['OLLAMA_TIMEOUT_MS'] ?? '120000', 10),
31
+ maxRetries: parseInt(process.env['OLLAMA_MAX_RETRIES'] ?? '3', 10),
32
+ },
33
+ };
34
+ // ============================================================================
35
+ // Server Factory
36
+ // ============================================================================
37
+ /**
38
+ * Create and configure the Fastify server
39
+ */
40
+ export async function createServer(config = {}) {
41
+ const serverConfig = { ...DEFAULT_CONFIG, ...config };
42
+ const server = Fastify({
43
+ logger: {
44
+ level: serverConfig.logLevel,
45
+ transport: {
46
+ target: 'pino-pretty',
47
+ options: {
48
+ colorize: true,
49
+ translateTime: 'SYS:standard',
50
+ ignore: 'pid,hostname',
51
+ },
52
+ },
53
+ },
54
+ requestIdHeader: 'x-request-id',
55
+ genReqId: () => generateId(),
56
+ });
57
+ // Register plugins
58
+ if (serverConfig.corsEnabled) {
59
+ await server.register(cors, {
60
+ origin: true,
61
+ methods: ['GET', 'POST', 'OPTIONS'],
62
+ allowedHeaders: ['Content-Type', 'Authorization', 'X-Request-ID'],
63
+ });
64
+ }
65
+ // Register routes
66
+ registerRoutes(server);
67
+ // Register error handler
68
+ server.setErrorHandler((error, request, reply) => {
69
+ server.log.error({ error, requestId: request.id }, 'Request error');
70
+ reply.status(error.statusCode ?? 500).send({
71
+ success: false,
72
+ error: {
73
+ code: 'SERVER_ERROR',
74
+ message: error.message,
75
+ requestId: request.id,
76
+ },
77
+ });
78
+ });
79
+ // Register not found handler
80
+ server.setNotFoundHandler((request, reply) => {
81
+ reply.status(404).send({
82
+ success: false,
83
+ error: {
84
+ code: 'NOT_FOUND',
85
+ message: `Route ${request.method} ${request.url} not found`,
86
+ },
87
+ });
88
+ });
89
+ return server;
90
+ }
91
+ // ============================================================================
92
+ // Routes
93
+ // ============================================================================
94
+ /**
95
+ * Register all API routes
96
+ */
97
+ function registerRoutes(server) {
98
+ // Health check endpoint
99
+ server.get('/health', healthHandler);
100
+ // Pipeline endpoints
101
+ server.post('/api/pipeline', pipelineHandler);
102
+ server.post('/api/pipeline/light', lightPipelineHandler);
103
+ // Info endpoints
104
+ server.get('/api/models', modelsHandler);
105
+ server.get('/api/info', infoHandler);
106
+ }
107
+ // ============================================================================
108
+ // Route Handlers
109
+ // ============================================================================
110
+ /**
111
+ * Health check handler
112
+ */
113
+ async function healthHandler(request, reply) {
114
+ const ollamaClient = getOllamaClient();
115
+ const ollamaHealthy = await ollamaClient.healthCheck();
116
+ const status = ollamaHealthy ? 'healthy' : 'degraded';
117
+ reply.status(ollamaHealthy ? 200 : 503).send({
118
+ status,
119
+ version: '1.0.0',
120
+ timestamp: nowISO(),
121
+ services: {
122
+ ollama: ollamaHealthy,
123
+ },
124
+ });
125
+ }
126
+ /**
127
+ * Main pipeline execution handler
128
+ */
129
+ async function pipelineHandler(request, reply) {
130
+ const startTime = performance.now();
131
+ // Validate request
132
+ const parseResult = PipelineRequestSchema.safeParse(request.body);
133
+ if (!parseResult.success) {
134
+ reply.status(400).send({
135
+ success: false,
136
+ error: {
137
+ code: 'VALIDATION_ERROR',
138
+ message: 'Invalid request body',
139
+ details: parseResult.error.errors,
140
+ },
141
+ });
142
+ return;
143
+ }
144
+ const pipelineRequest = {
145
+ ...parseResult.data,
146
+ sessionId: request.id,
147
+ };
148
+ request.log.info({
149
+ queryLength: pipelineRequest.query.length,
150
+ hasRepoPath: !!pipelineRequest.repoPath,
151
+ }, 'Pipeline request received');
152
+ // Execute pipeline
153
+ const response = await executePipeline(pipelineRequest);
154
+ // Log completion
155
+ const status = getPipelineStatus(response);
156
+ request.log.info({
157
+ success: response.success,
158
+ status: status.status,
159
+ executionTimeMs: response.metadata.executionTimeMs,
160
+ completedStages: status.completedStages,
161
+ }, 'Pipeline request completed');
162
+ // Send response
163
+ reply.status(response.success ? 200 : 500).send(response);
164
+ }
165
+ /**
166
+ * Light pipeline execution handler (faster, less thorough)
167
+ */
168
+ async function lightPipelineHandler(request, reply) {
169
+ // Validate request
170
+ const parseResult = PipelineRequestSchema.safeParse(request.body);
171
+ if (!parseResult.success) {
172
+ reply.status(400).send({
173
+ success: false,
174
+ error: {
175
+ code: 'VALIDATION_ERROR',
176
+ message: 'Invalid request body',
177
+ details: parseResult.error.errors,
178
+ },
179
+ });
180
+ return;
181
+ }
182
+ const pipelineRequest = {
183
+ ...parseResult.data,
184
+ sessionId: request.id,
185
+ };
186
+ request.log.info({ mode: 'light' }, 'Light pipeline request received');
187
+ // Execute light pipeline
188
+ const response = await executeLightPipeline(pipelineRequest);
189
+ reply.status(response.success ? 200 : 500).send(response);
190
+ }
191
+ /**
192
+ * List available models handler
193
+ */
194
+ async function modelsHandler(request, reply) {
195
+ try {
196
+ const ollamaClient = getOllamaClient();
197
+ const models = await ollamaClient.listModels();
198
+ reply.send({
199
+ success: true,
200
+ models,
201
+ currentModel: ollamaClient.model,
202
+ });
203
+ }
204
+ catch (error) {
205
+ reply.status(500).send({
206
+ success: false,
207
+ error: {
208
+ code: 'MODELS_FETCH_ERROR',
209
+ message: 'Failed to fetch models from Ollama',
210
+ },
211
+ });
212
+ }
213
+ }
214
+ /**
215
+ * Server info handler
216
+ */
217
+ async function infoHandler(request, reply) {
218
+ const ollamaClient = getOllamaClient();
219
+ reply.send({
220
+ name: 'atlas-server',
221
+ version: '1.0.0',
222
+ description: 'Multi-stage AI pipeline server with Ollama integration',
223
+ endpoints: {
224
+ health: 'GET /health',
225
+ pipeline: 'POST /api/pipeline',
226
+ lightPipeline: 'POST /api/pipeline/light',
227
+ models: 'GET /api/models',
228
+ info: 'GET /api/info',
229
+ },
230
+ configuration: {
231
+ model: ollamaClient.model,
232
+ },
233
+ stages: [
234
+ 'intent - Analyze user intent',
235
+ 'context - Gather relevant context',
236
+ 'git - Analyze git repository state',
237
+ 'decompose - Break down into subtasks',
238
+ 'variants - Generate solution variants',
239
+ 'critique - Review and score variants',
240
+ 'optimize - Refine the best solution',
241
+ ],
242
+ });
243
+ }
244
+ // ============================================================================
245
+ // Server Startup
246
+ // ============================================================================
247
+ /**
248
+ * Start the server
249
+ */
250
+ export async function startServer(config = {}) {
251
+ const serverConfig = { ...DEFAULT_CONFIG, ...config };
252
+ const server = await createServer(serverConfig);
253
+ try {
254
+ // Initialize Ollama client
255
+ const ollamaClient = getOllamaClient(serverConfig.ollama);
256
+ const ollamaHealthy = await ollamaClient.healthCheck();
257
+ if (!ollamaHealthy) {
258
+ logger.warn('Ollama service is not available. Some features may not work.');
259
+ }
260
+ // Start listening
261
+ await server.listen({
262
+ port: serverConfig.port,
263
+ host: serverConfig.host,
264
+ });
265
+ logger.info({
266
+ port: serverConfig.port,
267
+ host: serverConfig.host,
268
+ ollamaModel: serverConfig.ollama.model,
269
+ ollamaConnected: ollamaHealthy,
270
+ }, 'Atlas server started');
271
+ return server;
272
+ }
273
+ catch (error) {
274
+ logger.error({ error }, 'Failed to start server');
275
+ throw error;
276
+ }
277
+ }
278
+ /**
279
+ * Graceful shutdown handler
280
+ */
281
+ export async function shutdown(server) {
282
+ logger.info('Shutting down server...');
283
+ try {
284
+ await server.close();
285
+ logger.info('Server shut down successfully');
286
+ }
287
+ catch (error) {
288
+ logger.error({ error }, 'Error during shutdown');
289
+ throw error;
290
+ }
291
+ }
292
+ // ============================================================================
293
+ // Main Entry Point
294
+ // ============================================================================
295
+ // Start the server when this file is executed directly
296
+ startServer()
297
+ .then((server) => {
298
+ // Handle shutdown signals
299
+ const signals = ['SIGINT', 'SIGTERM'];
300
+ for (const signal of signals) {
301
+ process.on(signal, async () => {
302
+ logger.info({ signal }, 'Received shutdown signal');
303
+ await shutdown(server);
304
+ process.exit(0);
305
+ });
306
+ }
307
+ })
308
+ .catch((error) => {
309
+ logger.error({ error }, 'Fatal error during startup');
310
+ process.exit(1);
311
+ });
312
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Atlas Server - Context Aggregation Tool
3
+ *
4
+ * Gathers and aggregates context from multiple sources:
5
+ * - Project structure analysis
6
+ * - Relevant code snippets
7
+ * - Configuration files
8
+ * - Dependencies information
9
+ */
10
+ import type { PipelineContext, IntentAnalysis, ProjectInfo, GitContext } from '../types.js';
11
+ declare const CODE_EXTENSIONS: Set<string>;
12
+ declare const CONFIG_FILES: string[];
13
+ declare const IGNORE_DIRS: Set<string>;
14
+ /**
15
+ * Build comprehensive context for the pipeline
16
+ */
17
+ export declare function buildContext(intent: IntentAnalysis, repoPath?: string, gitContext?: GitContext): Promise<PipelineContext>;
18
+ /**
19
+ * Analyze project structure and configuration
20
+ */
21
+ export declare function analyzeProject(rootPath: string): Promise<ProjectInfo>;
22
+ export { CODE_EXTENSIONS, CONFIG_FILES, IGNORE_DIRS };
23
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EACV,eAAe,EACf,cAAc,EAEd,WAAW,EACX,UAAU,EACX,MAAM,aAAa,CAAC;AAWrB,QAAA,MAAM,eAAe,aAanB,CAAC;AAEH,QAAA,MAAM,YAAY,UAajB,CAAC;AAEF,QAAA,MAAM,WAAW,aAcf,CAAC;AAMH;;GAEG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,cAAc,EACtB,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,UAAU,GACtB,OAAO,CAAC,eAAe,CAAC,CAoC1B;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAyE3E;AAwOD,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC"}