@@ -8,35 +8,35 @@ import Neo from '../src/Neo.mjs';
88import * as core from '../src/core/_export.mjs' ;
99import InstanceManager from '../src/manager/Instance.mjs' ;
1010
11- // --- App Worker Services ---
12- import AppWorker_BridgeService from './mcp/server/app-worker/services/BridgeService.mjs' ;
11+ // --- GitHub Workflow Services ---
12+ import GH_Config from './mcp/server/github-workflow/config.mjs' ;
13+ import GH_HealthService from './mcp/server/github-workflow/services/HealthService.mjs' ;
14+ import GH_IssueService from './mcp/server/github-workflow/services/IssueService.mjs' ;
15+ import GH_LocalFileService from './mcp/server/github-workflow/services/LocalFileService.mjs' ;
16+ import GH_PullRequestService from './mcp/server/github-workflow/services/PullRequestService.mjs' ;
17+ import GH_RepositoryService from './mcp/server/github-workflow/services/RepositoryService.mjs' ;
1318
1419// --- Knowledge Base Services ---
15- import KB_DatabaseService from './mcp/server/knowledge-base/services/DatabaseService.mjs' ;
16- import KB_LifecycleService from './mcp/server/knowledge-base/services/DatabaseLifecycleService.mjs' ;
17- import KB_DocumentService from './mcp/server/knowledge-base/services/DocumentService.mjs' ;
18- import KB_HealthService from './mcp/server/knowledge-base/services/HealthService.mjs' ;
19- import KB_QueryService from './mcp/server/knowledge-base/services/QueryService.mjs' ;
20- import KB_ChromaManager from './mcp/server/knowledge-base/services/ChromaManager.mjs' ;
21- import KB_Config from './mcp/server/knowledge-base/config.mjs' ;
20+ import KB_DatabaseService from './mcp/server/knowledge-base/services/DatabaseService.mjs' ;
21+ import KB_LifecycleService from './mcp/server/knowledge-base/services/DatabaseLifecycleService.mjs' ;
22+ import KB_DocumentService from './mcp/server/knowledge-base/services/DocumentService.mjs' ;
23+ import KB_HealthService from './mcp/server/knowledge-base/services/HealthService.mjs' ;
24+ import KB_QueryService from './mcp/server/knowledge-base/services/QueryService.mjs' ;
25+ import KB_ChromaManager from './mcp/server/knowledge-base/services/ChromaManager.mjs' ;
26+ import KB_Config from './mcp/server/knowledge-base/config.mjs' ;
2227
2328// --- Memory Core Services ---
24- import Memory_Service from './mcp/server/memory-core/services/MemoryService.mjs' ;
25- import Memory_DatabaseService from './mcp/server/memory-core/services/DatabaseService.mjs' ;
26- import Memory_SessionService from './mcp/server/memory-core/services/SessionService.mjs' ;
27- import Memory_LifecycleService from './mcp/server/memory-core/services/DatabaseLifecycleService.mjs' ;
28- import Memory_HealthService from './mcp/server/memory-core/services/HealthService.mjs' ;
29- import Memory_SummaryService from './mcp/server/memory-core/services/SummaryService.mjs' ;
30- import Memory_ChromaManager from './mcp/server/memory-core/services/ChromaManager.mjs' ;
31- import Memory_Config from './mcp/server/memory-core/config.mjs' ;
32-
33- // --- GitHub Workflow Services ---
34- import GH_Config from './mcp/server/github-workflow/config.mjs' ;
35- import GH_HealthService from './mcp/server/github-workflow/services/HealthService.mjs' ;
36- import GH_IssueService from './mcp/server/github-workflow/services/IssueService.mjs' ;
37- import GH_LocalFileService from './mcp/server/github-workflow/services/LocalFileService.mjs' ;
38- import GH_PullRequestService from './mcp/server/github-workflow/services/PullRequestService.mjs' ;
39- import GH_RepositoryService from './mcp/server/github-workflow/services/RepositoryService.mjs' ;
29+ import Memory_Service from './mcp/server/memory-core/services/MemoryService.mjs' ;
30+ import Memory_DatabaseService from './mcp/server/memory-core/services/DatabaseService.mjs' ;
31+ import Memory_SessionService from './mcp/server/memory-core/services/SessionService.mjs' ;
32+ import Memory_LifecycleService from './mcp/server/memory-core/services/DatabaseLifecycleService.mjs' ;
33+ import Memory_HealthService from './mcp/server/memory-core/services/HealthService.mjs' ;
34+ import Memory_SummaryService from './mcp/server/memory-core/services/SummaryService.mjs' ;
35+ import Memory_ChromaManager from './mcp/server/memory-core/services/ChromaManager.mjs' ;
36+ import Memory_Config from './mcp/server/memory-core/config.mjs' ;
37+
38+ // --- Neural Link Services ---
39+ import NeuralLink_ConnectionService from './mcp/server/neural-link/services/ConnectionService.mjs' ;
4040
4141const __filename = fileURLToPath ( import . meta. url ) ;
4242const __dirname = path . dirname ( __filename ) ;
@@ -91,29 +91,29 @@ function makeSafe(service, spec) {
9191 // Some services expect (args), others expect (arg1, arg2).
9292 // The 'x-pass-as-object' annotation in OpenAPI tells us which.
9393 if ( operation [ 'x-pass-as-object' ] ) {
94- return originalMethod ( parsedArgs ) ;
94+ return originalMethod ( parsedArgs ) ;
9595 } else {
9696 // Map object args to positional args based on parameter order
9797 const paramNames = ( operation . parameters || [ ] ) . map ( p => p . name ) ;
9898 if ( operation . requestBody ?. content ?. [ 'application/json' ] ?. schema ) {
99- // This logic mimics toolService.mjs but simplifies since we know the schema structure
100- // For complex bodies, we usually rely on x-pass-as-object.
101- // If not pass-as-object, we assume specific named args.
102- // Simplification: If not pass-as-object, just pass the values in order of keys?
103- // No, that's risky.
104- // Fallback: if not pass-as-object, we pass the individual properties as args
105- // in the order defined in the schema? That's hard to guess.
106- // Let's assume for the SDK, we primarily support object-based signatures
107- // OR we rely on the fact that our internal services mostly align with toolService logic.
108-
109- // Actually, the easiest way is to check the function signature length? No.
110- // Let's check the Zod schema keys and pass them spread?
111- // For now, most complex tools are x-pass-as-object.
112- // Simple tools (like get(id)) are positional.
113-
114- // Heuristic:
115- const argValues = paramNames . map ( name => parsedArgs [ name ] ) ;
116- return originalMethod ( ...argValues ) ;
99+ // This logic mimics toolService.mjs but simplifies since we know the schema structure
100+ // For complex bodies, we usually rely on x-pass-as-object.
101+ // If not pass-as-object, we assume specific named args.
102+ // Simplification: If not pass-as-object, just pass the values in order of keys?
103+ // No, that's risky.
104+ // Fallback: if not pass-as-object, we pass the individual properties as args
105+ // in the order defined in the schema? That's hard to guess.
106+ // Let's assume for the SDK, we primarily support object-based signatures
107+ // OR we rely on the fact that our internal services mostly align with toolService logic.
108+
109+ // Actually, the easiest way is to check the function signature length? No.
110+ // Let's check the Zod schema keys and pass them spread?
111+ // For now, most complex tools are x-pass-as-object.
112+ // Simple tools (like get(id)) are positional.
113+
114+ // Heuristic:
115+ const argValues = paramNames . map ( name => parsedArgs [ name ] ) ;
116+ return originalMethod ( ...argValues ) ;
117117 }
118118
119119 const argValues = paramNames . map ( name => parsedArgs [ name ] ) ;
@@ -127,15 +127,19 @@ function makeSafe(service, spec) {
127127}
128128
129129// --- Load Specs ---
130- const kbSpec = yaml . load ( fs . readFileSync ( path . join ( __dirname , 'mcp/server/knowledge-base/openapi.yaml' ) , 'utf8' ) ) ;
131- const memSpec = yaml . load ( fs . readFileSync ( path . join ( __dirname , 'mcp/server/memory-core/openapi.yaml' ) , 'utf8' ) ) ;
132130const ghSpec = yaml . load ( fs . readFileSync ( path . join ( __dirname , 'mcp/server/github-workflow/openapi.yaml' ) , 'utf8' ) ) ;
131+ const kbSpec = yaml . load ( fs . readFileSync ( path . join ( __dirname , 'mcp/server/knowledge-base/openapi.yaml' ) , 'utf8' ) ) ;
132+ const memSpec = yaml . load ( fs . readFileSync ( path . join ( __dirname , 'mcp/server/memory-core/openapi.yaml' ) , 'utf8' ) ) ;
133+ const nlSpec = yaml . load ( fs . readFileSync ( path . join ( __dirname , 'mcp/server/neural-link/openapi.yaml' ) , 'utf8' ) ) ;
133134
134135// --- Apply Safety Wrappers ---
135136
136- // App Worker
137- // todo
138- // makeSafe(AppWorker_BridgeService, kbSpec);
137+ // GitHub
138+ makeSafe ( GH_HealthService , ghSpec ) ;
139+ makeSafe ( GH_IssueService , ghSpec ) ;
140+ makeSafe ( GH_LocalFileService , ghSpec ) ;
141+ makeSafe ( GH_PullRequestService , ghSpec ) ;
142+ makeSafe ( GH_RepositoryService , ghSpec ) ;
139143
140144// Knowledge Base
141145makeSafe ( KB_DatabaseService , kbSpec ) ;
@@ -152,12 +156,8 @@ makeSafe(Memory_LifecycleService, memSpec);
152156makeSafe ( Memory_HealthService , memSpec ) ;
153157makeSafe ( Memory_SummaryService , memSpec ) ;
154158
155- // GitHub
156- makeSafe ( GH_HealthService , ghSpec ) ;
157- makeSafe ( GH_IssueService , ghSpec ) ;
158- makeSafe ( GH_LocalFileService , ghSpec ) ;
159- makeSafe ( GH_PullRequestService , ghSpec ) ;
160- makeSafe ( GH_RepositoryService , ghSpec ) ;
159+ // Neural Link
160+ makeSafe ( NeuralLink_ConnectionService , nlSpec ) ;
161161
162162
163163/**
@@ -180,8 +180,13 @@ makeSafe(GH_RepositoryService, ghSpec);
180180 */
181181
182182export {
183- // App Worker
184- AppWorker_BridgeService ,
183+ // GitHub Workflow
184+ GH_Config ,
185+ GH_HealthService ,
186+ GH_IssueService ,
187+ GH_LocalFileService ,
188+ GH_PullRequestService ,
189+ GH_RepositoryService ,
185190
186191 // Knowledge Base
187192 KB_Config ,
@@ -202,11 +207,6 @@ export {
202207 Memory_HealthService ,
203208 Memory_SummaryService ,
204209
205- // GitHub Workflow
206- GH_Config ,
207- GH_HealthService ,
208- GH_IssueService ,
209- GH_LocalFileService ,
210- GH_PullRequestService ,
211- GH_RepositoryService
210+ // Neural Link
211+ NeuralLink_ConnectionService
212212} ;
0 commit comments