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.
- package/.env.example +21 -0
- package/LICENSE +21 -0
- package/README.md +175 -0
- package/dist/mcp.d.ts +21 -0
- package/dist/mcp.d.ts.map +1 -0
- package/dist/mcp.js +404 -0
- package/dist/mcp.js.map +1 -0
- package/dist/pipeline.d.ts +39 -0
- package/dist/pipeline.d.ts.map +1 -0
- package/dist/pipeline.js +355 -0
- package/dist/pipeline.js.map +1 -0
- package/dist/providers/index.d.ts +14 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +13 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/llm-provider.d.ts +71 -0
- package/dist/providers/llm-provider.d.ts.map +1 -0
- package/dist/providers/llm-provider.js +357 -0
- package/dist/providers/llm-provider.js.map +1 -0
- package/dist/server.d.ts +27 -0
- package/dist/server.d.ts.map +1 -0
- package/dist/server.js +312 -0
- package/dist/server.js.map +1 -0
- package/dist/tools/context.d.ts +23 -0
- package/dist/tools/context.d.ts.map +1 -0
- package/dist/tools/context.js +363 -0
- package/dist/tools/context.js.map +1 -0
- package/dist/tools/critique.d.ts +40 -0
- package/dist/tools/critique.d.ts.map +1 -0
- package/dist/tools/critique.js +315 -0
- package/dist/tools/critique.js.map +1 -0
- package/dist/tools/decompose.d.ts +34 -0
- package/dist/tools/decompose.d.ts.map +1 -0
- package/dist/tools/decompose.js +328 -0
- package/dist/tools/decompose.js.map +1 -0
- package/dist/tools/git.d.ts +66 -0
- package/dist/tools/git.d.ts.map +1 -0
- package/dist/tools/git.js +333 -0
- package/dist/tools/git.js.map +1 -0
- package/dist/tools/intent.d.ts +24 -0
- package/dist/tools/intent.d.ts.map +1 -0
- package/dist/tools/intent.js +245 -0
- package/dist/tools/intent.js.map +1 -0
- package/dist/tools/ollama.d.ts +104 -0
- package/dist/tools/ollama.d.ts.map +1 -0
- package/dist/tools/ollama.js +299 -0
- package/dist/tools/ollama.js.map +1 -0
- package/dist/tools/optimize.d.ts +64 -0
- package/dist/tools/optimize.d.ts.map +1 -0
- package/dist/tools/optimize.js +302 -0
- package/dist/tools/optimize.js.map +1 -0
- package/dist/tools/variants.d.ts +49 -0
- package/dist/tools/variants.d.ts.map +1 -0
- package/dist/tools/variants.js +252 -0
- package/dist/tools/variants.js.map +1 -0
- package/dist/types.d.ts +447 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +25 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +117 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +279 -0
- package/dist/utils.js.map +1 -0
- 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"}
|