snow-flow 1.1.74 → 1.1.76
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/.claude-flow/queen/queen-memory.db +0 -0
- package/.claude-flow/queen-test/test-memory.db +0 -0
- package/.claude-flow/queen-test/test-memory.db-agents +0 -0
- package/.claude-flow/queen-test/test-memory.db-import +0 -0
- package/.claude-flow/queen-test/test-memory.db-memory +0 -0
- package/.claude-flow/queen-test/test-memory.db-neural +0 -0
- package/CLAUDE.md +111 -8
- package/README.md +117 -50
- package/deploy.sh +366 -0
- package/dist/cli.js +226 -0
- package/dist/cli.js.map +1 -1
- package/dist/mcp/http-transport-wrapper.d.ts +29 -0
- package/dist/mcp/http-transport-wrapper.d.ts.map +1 -0
- package/dist/mcp/http-transport-wrapper.js +318 -0
- package/dist/mcp/http-transport-wrapper.js.map +1 -0
- package/dist/mcp/service-discovery-client.d.ts +83 -0
- package/dist/mcp/service-discovery-client.d.ts.map +1 -0
- package/dist/mcp/service-discovery-client.js +211 -0
- package/dist/mcp/service-discovery-client.js.map +1 -0
- package/dist/mcp/servicenow-deployment-mcp.js +262 -29
- package/dist/mcp/servicenow-deployment-mcp.js.map +1 -1
- package/dist/mcp/servicenow-intelligent-mcp.js +252 -18
- package/dist/mcp/servicenow-intelligent-mcp.js.map +1 -1
- package/dist/mcp/servicenow-operations-mcp.js +274 -46
- package/dist/mcp/servicenow-operations-mcp.js.map +1 -1
- package/dist/orchestration/discovery/service-discovery.d.ts +81 -0
- package/dist/orchestration/discovery/service-discovery.d.ts.map +1 -0
- package/dist/orchestration/discovery/service-discovery.js +808 -0
- package/dist/orchestration/discovery/service-discovery.js.map +1 -0
- package/dist/orchestration/distributed-orchestrator.d.ts +131 -0
- package/dist/orchestration/distributed-orchestrator.d.ts.map +1 -0
- package/dist/orchestration/distributed-orchestrator.js +712 -0
- package/dist/orchestration/distributed-orchestrator.js.map +1 -0
- package/dist/orchestration/distribution/task-distribution-engine.d.ts +53 -0
- package/dist/orchestration/distribution/task-distribution-engine.d.ts.map +1 -0
- package/dist/orchestration/distribution/task-distribution-engine.js +586 -0
- package/dist/orchestration/distribution/task-distribution-engine.js.map +1 -0
- package/dist/orchestration/interfaces/distributed-orchestration.interface.d.ts +606 -0
- package/dist/orchestration/interfaces/distributed-orchestration.interface.d.ts.map +1 -0
- package/dist/orchestration/interfaces/distributed-orchestration.interface.js +65 -0
- package/dist/orchestration/interfaces/distributed-orchestration.interface.js.map +1 -0
- package/dist/orchestration/protocols/mcpx-protocol.d.ts +71 -0
- package/dist/orchestration/protocols/mcpx-protocol.d.ts.map +1 -0
- package/dist/orchestration/protocols/mcpx-protocol.js +668 -0
- package/dist/orchestration/protocols/mcpx-protocol.js.map +1 -0
- package/dist/orchestration/state/distributed-state-manager.d.ts +89 -0
- package/dist/orchestration/state/distributed-state-manager.d.ts.map +1 -0
- package/dist/orchestration/state/distributed-state-manager.js +716 -0
- package/dist/orchestration/state/distributed-state-manager.js.map +1 -0
- package/dist/queen/advanced-integration-test.d.ts +48 -0
- package/dist/queen/advanced-integration-test.d.ts.map +1 -0
- package/dist/queen/advanced-integration-test.js +474 -0
- package/dist/queen/advanced-integration-test.js.map +1 -0
- package/dist/queen/agent-factory.d.ts +40 -0
- package/dist/queen/agent-factory.d.ts.map +1 -0
- package/dist/queen/agent-factory.js +433 -0
- package/dist/queen/agent-factory.js.map +1 -0
- package/dist/queen/index.d.ts +58 -0
- package/dist/queen/index.d.ts.map +1 -0
- package/dist/queen/index.js +79 -0
- package/dist/queen/index.js.map +1 -0
- package/dist/queen/integration-example.d.ts +82 -0
- package/dist/queen/integration-example.d.ts.map +1 -0
- package/dist/queen/integration-example.js +220 -0
- package/dist/queen/integration-example.js.map +1 -0
- package/dist/queen/integration-test.d.ts +72 -0
- package/dist/queen/integration-test.d.ts.map +1 -0
- package/dist/queen/integration-test.js +564 -0
- package/dist/queen/integration-test.js.map +1 -0
- package/dist/queen/mock-mcp-client.d.ts +66 -0
- package/dist/queen/mock-mcp-client.d.ts.map +1 -0
- package/dist/queen/mock-mcp-client.js +297 -0
- package/dist/queen/mock-mcp-client.js.map +1 -0
- package/dist/queen/neural-learning.d.ts +28 -0
- package/dist/queen/neural-learning.d.ts.map +1 -0
- package/dist/queen/neural-learning.js +244 -0
- package/dist/queen/neural-learning.js.map +1 -0
- package/dist/queen/queen-memory.d.ts +25 -0
- package/dist/queen/queen-memory.d.ts.map +1 -0
- package/dist/queen/queen-memory.js +273 -0
- package/dist/queen/queen-memory.js.map +1 -0
- package/dist/queen/run-integration-tests.d.ts +9 -0
- package/dist/queen/run-integration-tests.d.ts.map +1 -0
- package/dist/queen/run-integration-tests.js +28 -0
- package/dist/queen/run-integration-tests.js.map +1 -0
- package/dist/queen/servicenow-queen.d.ts +56 -0
- package/dist/queen/servicenow-queen.d.ts.map +1 -0
- package/dist/queen/servicenow-queen.js +659 -0
- package/dist/queen/servicenow-queen.js.map +1 -0
- package/dist/queen/types.d.ts +58 -0
- package/dist/queen/types.d.ts.map +1 -0
- package/dist/queen/types.js +7 -0
- package/dist/queen/types.js.map +1 -0
- package/dist/version.d.ts +3 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +27 -2
- package/dist/version.js.map +1 -1
- package/docker/base/Dockerfile.base +45 -0
- package/docker/generate-services.js +244 -0
- package/docker/nginx/Dockerfile +71 -0
- package/docker/nginx/consul-template.hcl +64 -0
- package/docker/nginx/healthcheck.sh +178 -0
- package/docker/nginx/nginx.conf +210 -0
- package/docker/nginx/supervisord.conf +57 -0
- package/docker/nginx/templates/upstreams.conf.tpl +48 -0
- package/docker/services/automation-mcp/Dockerfile +32 -0
- package/docker/services/automation-mcp/config/service.json +28 -0
- package/docker/services/automation-mcp/entrypoint.js +51 -0
- package/docker/services/deployment-mcp/Dockerfile +32 -0
- package/docker/services/deployment-mcp/entrypoint.js +51 -0
- package/docker/services/flow-composer-mcp/Dockerfile +32 -0
- package/docker/services/flow-composer-mcp/config/service.json +28 -0
- package/docker/services/flow-composer-mcp/entrypoint.js +51 -0
- package/docker/services/graph-memory-mcp/Dockerfile +32 -0
- package/docker/services/graph-memory-mcp/config/service.json +28 -0
- package/docker/services/graph-memory-mcp/entrypoint.js +51 -0
- package/docker/services/integration-mcp/Dockerfile +32 -0
- package/docker/services/integration-mcp/config/service.json +28 -0
- package/docker/services/integration-mcp/entrypoint.js +51 -0
- package/docker/services/intelligent-mcp/Dockerfile +32 -0
- package/docker/services/intelligent-mcp/config/service.json +28 -0
- package/docker/services/intelligent-mcp/entrypoint.js +51 -0
- package/docker/services/operations-mcp/Dockerfile +32 -0
- package/docker/services/operations-mcp/config/service.json +28 -0
- package/docker/services/operations-mcp/entrypoint.js +51 -0
- package/docker/services/platform-development-mcp/Dockerfile +32 -0
- package/docker/services/platform-development-mcp/config/service.json +28 -0
- package/docker/services/platform-development-mcp/entrypoint.js +51 -0
- package/docker/services/reporting-analytics-mcp/Dockerfile +32 -0
- package/docker/services/reporting-analytics-mcp/config/service.json +28 -0
- package/docker/services/reporting-analytics-mcp/entrypoint.js +51 -0
- package/docker/services/security-compliance-mcp/Dockerfile +32 -0
- package/docker/services/security-compliance-mcp/config/service.json +28 -0
- package/docker/services/security-compliance-mcp/entrypoint.js +51 -0
- package/docker/services/update-set-mcp/Dockerfile +32 -0
- package/docker/services/update-set-mcp/config/service.json +28 -0
- package/docker/services/update-set-mcp/entrypoint.js +51 -0
- package/docker-compose.override.yml +132 -0
- package/docker-compose.prod.yml +340 -0
- package/docker-compose.yml +579 -0
- package/k8s/automation-mcp.yaml +232 -0
- package/k8s/configmap.yaml +237 -0
- package/k8s/deployment-mcp.yaml +232 -0
- package/k8s/flow-composer-mcp.yaml +232 -0
- package/k8s/generate-k8s-manifests.js +453 -0
- package/k8s/graph-memory-mcp.yaml +232 -0
- package/k8s/infrastructure.yaml +456 -0
- package/k8s/ingress.yaml +361 -0
- package/k8s/integration-mcp.yaml +232 -0
- package/k8s/intelligent-mcp.yaml +232 -0
- package/k8s/kustomization.yaml +111 -0
- package/k8s/mcp-services.yaml +2552 -0
- package/k8s/monitoring.yaml +515 -0
- package/k8s/namespace.yaml +80 -0
- package/k8s/operations-mcp.yaml +232 -0
- package/k8s/platform-development-mcp.yaml +232 -0
- package/k8s/rbac.yaml +140 -0
- package/k8s/reporting-analytics-mcp.yaml +232 -0
- package/k8s/security-compliance-mcp.yaml +232 -0
- package/k8s/update-set-mcp.yaml +232 -0
- package/package.json +2 -2
|
@@ -0,0 +1,433 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ServiceNow Agent Factory
|
|
4
|
+
* Dynamic agent spawning based on task analysis
|
|
5
|
+
*/
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
9
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
10
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(o, k2, desc);
|
|
13
|
+
}) : (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
o[k2] = m[k];
|
|
16
|
+
}));
|
|
17
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
18
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
19
|
+
}) : function(o, v) {
|
|
20
|
+
o["default"] = v;
|
|
21
|
+
});
|
|
22
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
23
|
+
var ownKeys = function(o) {
|
|
24
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
25
|
+
var ar = [];
|
|
26
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
27
|
+
return ar;
|
|
28
|
+
};
|
|
29
|
+
return ownKeys(o);
|
|
30
|
+
};
|
|
31
|
+
return function (mod) {
|
|
32
|
+
if (mod && mod.__esModule) return mod;
|
|
33
|
+
var result = {};
|
|
34
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
35
|
+
__setModuleDefault(result, mod);
|
|
36
|
+
return result;
|
|
37
|
+
};
|
|
38
|
+
})();
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
exports.AgentFactory = void 0;
|
|
41
|
+
const crypto = __importStar(require("crypto"));
|
|
42
|
+
class AgentFactory {
|
|
43
|
+
constructor(memory) {
|
|
44
|
+
this.memory = memory;
|
|
45
|
+
this.activeAgents = new Map();
|
|
46
|
+
this.messageQueue = [];
|
|
47
|
+
this.agentBlueprints = new Map();
|
|
48
|
+
this.initializeBlueprints();
|
|
49
|
+
}
|
|
50
|
+
initializeBlueprints() {
|
|
51
|
+
// Widget Creator Agent - Simple but effective
|
|
52
|
+
this.agentBlueprints.set('widget-creator', {
|
|
53
|
+
type: 'widget-creator',
|
|
54
|
+
capabilities: [
|
|
55
|
+
'HTML template creation',
|
|
56
|
+
'CSS styling and responsive design',
|
|
57
|
+
'Client-side JavaScript',
|
|
58
|
+
'Server-side data processing',
|
|
59
|
+
'Chart.js integration',
|
|
60
|
+
'ServiceNow widget deployment'
|
|
61
|
+
],
|
|
62
|
+
mcpTools: [
|
|
63
|
+
'snow_deploy',
|
|
64
|
+
'snow_preview_widget',
|
|
65
|
+
'snow_widget_test',
|
|
66
|
+
'snow_catalog_item_search'
|
|
67
|
+
],
|
|
68
|
+
personality: 'Focused, detail-oriented, user experience focused',
|
|
69
|
+
coordination: 'collaborative'
|
|
70
|
+
});
|
|
71
|
+
// Flow Builder Agent - Process automation specialist
|
|
72
|
+
this.agentBlueprints.set('flow-builder', {
|
|
73
|
+
type: 'flow-builder',
|
|
74
|
+
capabilities: [
|
|
75
|
+
'Business process design',
|
|
76
|
+
'Flow Designer expertise',
|
|
77
|
+
'Approval workflow creation',
|
|
78
|
+
'Integration flow building',
|
|
79
|
+
'Condition and trigger logic'
|
|
80
|
+
],
|
|
81
|
+
mcpTools: [
|
|
82
|
+
'snow_create_flow',
|
|
83
|
+
'snow_test_flow_with_mock',
|
|
84
|
+
'snow_link_catalog_to_flow',
|
|
85
|
+
'snow_comprehensive_flow_test'
|
|
86
|
+
],
|
|
87
|
+
personality: 'Process-oriented, logical, systematic',
|
|
88
|
+
coordination: 'dependent'
|
|
89
|
+
});
|
|
90
|
+
// Script Writer Agent - Backend logic specialist
|
|
91
|
+
this.agentBlueprints.set('script-writer', {
|
|
92
|
+
type: 'script-writer',
|
|
93
|
+
capabilities: [
|
|
94
|
+
'Business rule creation',
|
|
95
|
+
'Script include development',
|
|
96
|
+
'Client script implementation',
|
|
97
|
+
'Data transformation scripts',
|
|
98
|
+
'Performance optimization'
|
|
99
|
+
],
|
|
100
|
+
mcpTools: [
|
|
101
|
+
'snow_create_script_include',
|
|
102
|
+
'snow_create_business_rule',
|
|
103
|
+
'snow_create_client_script'
|
|
104
|
+
],
|
|
105
|
+
personality: 'Technical, efficient, security-conscious',
|
|
106
|
+
coordination: 'independent'
|
|
107
|
+
});
|
|
108
|
+
// Application Architect Agent - System design specialist
|
|
109
|
+
this.agentBlueprints.set('app-architect', {
|
|
110
|
+
type: 'app-architect',
|
|
111
|
+
capabilities: [
|
|
112
|
+
'System architecture design',
|
|
113
|
+
'Table structure planning',
|
|
114
|
+
'Module organization',
|
|
115
|
+
'Security model design',
|
|
116
|
+
'Performance architecture'
|
|
117
|
+
],
|
|
118
|
+
mcpTools: [
|
|
119
|
+
'snow_deploy',
|
|
120
|
+
'snow_discover_platform_tables',
|
|
121
|
+
'snow_table_schema_discovery',
|
|
122
|
+
'snow_create_ui_policy'
|
|
123
|
+
],
|
|
124
|
+
personality: 'Strategic, thorough, architecture-focused',
|
|
125
|
+
coordination: 'collaborative'
|
|
126
|
+
});
|
|
127
|
+
// Integration Specialist Agent - API and integration expert
|
|
128
|
+
this.agentBlueprints.set('integration-specialist', {
|
|
129
|
+
type: 'integration-specialist',
|
|
130
|
+
capabilities: [
|
|
131
|
+
'REST API integration',
|
|
132
|
+
'Data transformation',
|
|
133
|
+
'External system connectivity',
|
|
134
|
+
'Import/export processes',
|
|
135
|
+
'Authentication handling'
|
|
136
|
+
],
|
|
137
|
+
mcpTools: [
|
|
138
|
+
'snow_create_rest_message',
|
|
139
|
+
'snow_create_transform_map',
|
|
140
|
+
'snow_test_integration',
|
|
141
|
+
'snow_discover_data_sources'
|
|
142
|
+
],
|
|
143
|
+
personality: 'Integration-focused, problem-solving, connectivity expert',
|
|
144
|
+
coordination: 'independent'
|
|
145
|
+
});
|
|
146
|
+
// Catalog Manager Agent - Service catalog specialist
|
|
147
|
+
this.agentBlueprints.set('catalog-manager', {
|
|
148
|
+
type: 'catalog-manager',
|
|
149
|
+
capabilities: [
|
|
150
|
+
'Catalog item creation',
|
|
151
|
+
'Variable set design',
|
|
152
|
+
'Workflow integration',
|
|
153
|
+
'Fulfillment automation',
|
|
154
|
+
'User experience optimization'
|
|
155
|
+
],
|
|
156
|
+
mcpTools: [
|
|
157
|
+
'snow_catalog_item_manager',
|
|
158
|
+
'snow_catalog_item_search',
|
|
159
|
+
'snow_link_catalog_to_flow'
|
|
160
|
+
],
|
|
161
|
+
personality: 'User-focused, service-oriented, detail-oriented',
|
|
162
|
+
coordination: 'collaborative'
|
|
163
|
+
});
|
|
164
|
+
// Researcher Agent - Discovery and analysis specialist
|
|
165
|
+
this.agentBlueprints.set('researcher', {
|
|
166
|
+
type: 'researcher',
|
|
167
|
+
capabilities: [
|
|
168
|
+
'Requirement analysis',
|
|
169
|
+
'Best practice research',
|
|
170
|
+
'Existing artifact discovery',
|
|
171
|
+
'Dependency identification',
|
|
172
|
+
'Solution architecture'
|
|
173
|
+
],
|
|
174
|
+
mcpTools: [
|
|
175
|
+
'snow_find_artifact',
|
|
176
|
+
'snow_comprehensive_search',
|
|
177
|
+
'snow_analyze_requirements',
|
|
178
|
+
'snow_discover_existing_flows'
|
|
179
|
+
],
|
|
180
|
+
personality: 'Analytical, thorough, knowledge-gathering',
|
|
181
|
+
coordination: 'independent'
|
|
182
|
+
});
|
|
183
|
+
// Tester Agent - Quality assurance specialist
|
|
184
|
+
this.agentBlueprints.set('tester', {
|
|
185
|
+
type: 'tester',
|
|
186
|
+
capabilities: [
|
|
187
|
+
'Test scenario creation',
|
|
188
|
+
'Mock data generation',
|
|
189
|
+
'Integration testing',
|
|
190
|
+
'Performance validation',
|
|
191
|
+
'Quality assurance'
|
|
192
|
+
],
|
|
193
|
+
mcpTools: [
|
|
194
|
+
'snow_test_flow_with_mock',
|
|
195
|
+
'snow_widget_test',
|
|
196
|
+
'snow_comprehensive_flow_test',
|
|
197
|
+
'snow_cleanup_test_artifacts'
|
|
198
|
+
],
|
|
199
|
+
personality: 'Quality-focused, systematic, thorough',
|
|
200
|
+
coordination: 'dependent'
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
// Spawn agent based on type and task requirements
|
|
204
|
+
spawnAgent(type, taskId) {
|
|
205
|
+
const blueprint = this.agentBlueprints.get(type);
|
|
206
|
+
if (!blueprint) {
|
|
207
|
+
throw new Error(`Unknown agent type: ${type}`);
|
|
208
|
+
}
|
|
209
|
+
const agent = {
|
|
210
|
+
id: this.generateAgentId(type),
|
|
211
|
+
type,
|
|
212
|
+
status: 'idle',
|
|
213
|
+
task: taskId,
|
|
214
|
+
capabilities: [...blueprint.capabilities],
|
|
215
|
+
mcpTools: [...blueprint.mcpTools]
|
|
216
|
+
};
|
|
217
|
+
this.activeAgents.set(agent.id, agent);
|
|
218
|
+
// Store agent creation in memory for learning
|
|
219
|
+
this.memory.storeLearning(`agent_spawn_${type}`, `Spawned ${type} agent for task: ${taskId || 'general'}`, 0.8);
|
|
220
|
+
return agent;
|
|
221
|
+
}
|
|
222
|
+
// Spawn multiple agents for complex task
|
|
223
|
+
spawnAgentSwarm(agentTypes, taskId) {
|
|
224
|
+
const agents = [];
|
|
225
|
+
for (const type of agentTypes) {
|
|
226
|
+
const agent = this.spawnAgent(type, taskId);
|
|
227
|
+
agents.push(agent);
|
|
228
|
+
}
|
|
229
|
+
// Create coordination channels between collaborative agents
|
|
230
|
+
this.setupAgentCoordination(agents);
|
|
231
|
+
return agents;
|
|
232
|
+
}
|
|
233
|
+
setupAgentCoordination(agents) {
|
|
234
|
+
const collaborativeAgents = agents.filter(agent => {
|
|
235
|
+
const blueprint = this.agentBlueprints.get(agent.type);
|
|
236
|
+
return blueprint?.coordination === 'collaborative';
|
|
237
|
+
});
|
|
238
|
+
// Enable message passing between collaborative agents
|
|
239
|
+
for (let i = 0; i < collaborativeAgents.length; i++) {
|
|
240
|
+
for (let j = i + 1; j < collaborativeAgents.length; j++) {
|
|
241
|
+
this.memory.storeLearning(`coordination_${collaborativeAgents[i].type}_${collaborativeAgents[j].type}`, 'Enabled collaborative coordination channel', 0.9);
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
// Get optimal agent sequence for task
|
|
246
|
+
getOptimalAgentSequence(taskType, complexity) {
|
|
247
|
+
// Check memory for successful patterns first
|
|
248
|
+
const bestPattern = this.memory.getBestPattern(taskType);
|
|
249
|
+
if (bestPattern && bestPattern.successRate > 0.7) {
|
|
250
|
+
return bestPattern.agentSequence;
|
|
251
|
+
}
|
|
252
|
+
// Default sequences based on task type and complexity
|
|
253
|
+
const sequences = {
|
|
254
|
+
widget: complexity > 0.7
|
|
255
|
+
? ['researcher', 'widget-creator', 'tester']
|
|
256
|
+
: ['widget-creator', 'tester'],
|
|
257
|
+
flow: complexity > 0.6
|
|
258
|
+
? ['researcher', 'flow-builder', 'catalog-manager', 'tester']
|
|
259
|
+
: ['flow-builder', 'tester'],
|
|
260
|
+
script: complexity > 0.5
|
|
261
|
+
? ['researcher', 'script-writer', 'tester']
|
|
262
|
+
: ['script-writer'],
|
|
263
|
+
application: complexity > 0.8
|
|
264
|
+
? ['researcher', 'app-architect', 'script-writer', 'widget-creator', 'tester']
|
|
265
|
+
: ['app-architect', 'script-writer', 'tester'],
|
|
266
|
+
integration: ['researcher', 'integration-specialist', 'tester'],
|
|
267
|
+
unknown: ['researcher', 'widget-creator'] // Safe default
|
|
268
|
+
};
|
|
269
|
+
return sequences[taskType] || ['researcher'];
|
|
270
|
+
}
|
|
271
|
+
// Execute agent task with specific MCP tools
|
|
272
|
+
async executeAgentTask(agentId, instruction) {
|
|
273
|
+
const agent = this.activeAgents.get(agentId);
|
|
274
|
+
if (!agent) {
|
|
275
|
+
throw new Error(`Agent not found: ${agentId}`);
|
|
276
|
+
}
|
|
277
|
+
agent.status = 'working';
|
|
278
|
+
try {
|
|
279
|
+
// Get agent blueprint for MCP tool selection
|
|
280
|
+
const blueprint = this.agentBlueprints.get(agent.type);
|
|
281
|
+
if (!blueprint) {
|
|
282
|
+
throw new Error(`No blueprint for agent type: ${agent.type}`);
|
|
283
|
+
}
|
|
284
|
+
// Execute with appropriate MCP tools based on agent type
|
|
285
|
+
const result = await this.executeWithMcpTools(agent, instruction, blueprint.mcpTools);
|
|
286
|
+
agent.status = 'completed';
|
|
287
|
+
return result;
|
|
288
|
+
}
|
|
289
|
+
catch (error) {
|
|
290
|
+
agent.status = 'failed';
|
|
291
|
+
throw error;
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
async executeWithMcpTools(agent, instruction, mcpTools) {
|
|
295
|
+
// This is where the agent would use specific MCP tools
|
|
296
|
+
// The Queen will orchestrate the actual MCP calls based on agent recommendations
|
|
297
|
+
return {
|
|
298
|
+
agentId: agent.id,
|
|
299
|
+
agentType: agent.type,
|
|
300
|
+
instruction,
|
|
301
|
+
recommendedMcpTools: mcpTools,
|
|
302
|
+
executionPlan: this.generateExecutionPlan(agent.type, instruction)
|
|
303
|
+
};
|
|
304
|
+
}
|
|
305
|
+
generateExecutionPlan(agentType, instruction) {
|
|
306
|
+
const plans = {
|
|
307
|
+
'widget-creator': (instr) => [
|
|
308
|
+
'Analyze widget requirements from instruction',
|
|
309
|
+
'Create HTML template with proper structure',
|
|
310
|
+
'Develop CSS for responsive design',
|
|
311
|
+
'Implement client-side JavaScript functionality',
|
|
312
|
+
'Create server-side data processing script',
|
|
313
|
+
'Deploy widget using snow_deploy',
|
|
314
|
+
'Test widget functionality'
|
|
315
|
+
],
|
|
316
|
+
'flow-builder': (instr) => [
|
|
317
|
+
'Analyze process requirements from instruction',
|
|
318
|
+
'Design flow structure and decision points',
|
|
319
|
+
'Create flow using snow_create_flow',
|
|
320
|
+
'Configure triggers and conditions',
|
|
321
|
+
'Test flow with mock data using snow_test_flow_with_mock',
|
|
322
|
+
'Link to catalog if needed using snow_link_catalog_to_flow'
|
|
323
|
+
],
|
|
324
|
+
'script-writer': (instr) => [
|
|
325
|
+
'Analyze scripting requirements',
|
|
326
|
+
'Determine script type (business rule, script include, etc.)',
|
|
327
|
+
'Implement script logic with error handling',
|
|
328
|
+
'Deploy script using appropriate MCP tool',
|
|
329
|
+
'Validate script functionality'
|
|
330
|
+
],
|
|
331
|
+
'catalog-manager': (instr) => [
|
|
332
|
+
'Search for existing catalog items using snow_catalog_item_search',
|
|
333
|
+
'Design catalog item structure and variables',
|
|
334
|
+
'Create catalog item using snow_catalog_item_manager',
|
|
335
|
+
'Configure fulfillment process',
|
|
336
|
+
'Test catalog request flow'
|
|
337
|
+
],
|
|
338
|
+
'researcher': (instr) => [
|
|
339
|
+
'Search existing artifacts using snow_find_artifact',
|
|
340
|
+
'Analyze system requirements using snow_analyze_requirements',
|
|
341
|
+
'Discover dependencies and constraints',
|
|
342
|
+
'Provide recommendations and insights'
|
|
343
|
+
],
|
|
344
|
+
'tester': (instr) => [
|
|
345
|
+
'Create test scenarios based on requirements',
|
|
346
|
+
'Generate mock test data',
|
|
347
|
+
'Execute tests using appropriate snow_test tools',
|
|
348
|
+
'Validate results and report issues',
|
|
349
|
+
'Clean up test artifacts using snow_cleanup_test_artifacts'
|
|
350
|
+
],
|
|
351
|
+
// Default plans for other agent types
|
|
352
|
+
'app-architect': (instr) => ['Analyze architecture requirements', 'Design system structure', 'Create deployment plan'],
|
|
353
|
+
'integration-specialist': (instr) => ['Analyze integration requirements', 'Design data flow', 'Implement integration']
|
|
354
|
+
};
|
|
355
|
+
return plans[agentType]?.(instruction) || ['Execute general task based on instruction'];
|
|
356
|
+
}
|
|
357
|
+
// Send message between agents
|
|
358
|
+
sendAgentMessage(from, to, type, content) {
|
|
359
|
+
const message = {
|
|
360
|
+
from,
|
|
361
|
+
to,
|
|
362
|
+
type,
|
|
363
|
+
content,
|
|
364
|
+
timestamp: new Date()
|
|
365
|
+
};
|
|
366
|
+
this.messageQueue.push(message);
|
|
367
|
+
// Store coordination pattern for learning
|
|
368
|
+
this.memory.storeLearning(`agent_coordination_${from}_${to}`, `Message of type ${type}`, 0.7);
|
|
369
|
+
}
|
|
370
|
+
// Get pending messages for agent
|
|
371
|
+
getAgentMessages(agentId) {
|
|
372
|
+
return this.messageQueue.filter(msg => msg.to === agentId);
|
|
373
|
+
}
|
|
374
|
+
// Mark agent messages as processed
|
|
375
|
+
markMessagesProcessed(agentId) {
|
|
376
|
+
this.messageQueue = this.messageQueue.filter(msg => msg.to !== agentId);
|
|
377
|
+
}
|
|
378
|
+
// Get agent status
|
|
379
|
+
getAgentStatus(agentId) {
|
|
380
|
+
return this.activeAgents.get(agentId) || null;
|
|
381
|
+
}
|
|
382
|
+
// Terminate agent
|
|
383
|
+
terminateAgent(agentId) {
|
|
384
|
+
const agent = this.activeAgents.get(agentId);
|
|
385
|
+
if (agent) {
|
|
386
|
+
// Store agent performance data for learning
|
|
387
|
+
this.memory.storeLearning(`agent_performance_${agent.type}`, `Agent ${agentId} terminated with status: ${agent.status}`, agent.status === 'completed' ? 0.9 : 0.3);
|
|
388
|
+
this.activeAgents.delete(agentId);
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
// Get all active agents
|
|
392
|
+
getActiveAgents() {
|
|
393
|
+
return Array.from(this.activeAgents.values());
|
|
394
|
+
}
|
|
395
|
+
// Clean up completed agents
|
|
396
|
+
cleanupCompletedAgents() {
|
|
397
|
+
let cleaned = 0;
|
|
398
|
+
for (const [id, agent] of Array.from(this.activeAgents.entries())) {
|
|
399
|
+
if (agent.status === 'completed' || agent.status === 'failed') {
|
|
400
|
+
this.terminateAgent(id);
|
|
401
|
+
cleaned++;
|
|
402
|
+
}
|
|
403
|
+
}
|
|
404
|
+
return cleaned;
|
|
405
|
+
}
|
|
406
|
+
generateAgentId(type) {
|
|
407
|
+
const timestamp = Date.now().toString(36);
|
|
408
|
+
const random = crypto.randomBytes(4).toString('hex');
|
|
409
|
+
return `${type}_${timestamp}_${random}`;
|
|
410
|
+
}
|
|
411
|
+
// Get agent blueprint for inspection
|
|
412
|
+
getAgentBlueprint(type) {
|
|
413
|
+
return this.agentBlueprints.get(type) || null;
|
|
414
|
+
}
|
|
415
|
+
// Get factory statistics
|
|
416
|
+
getStatistics() {
|
|
417
|
+
const agentTypeCounts = {};
|
|
418
|
+
const agentStatusCounts = {};
|
|
419
|
+
for (const agent of Array.from(this.activeAgents.values())) {
|
|
420
|
+
agentTypeCounts[agent.type] = (agentTypeCounts[agent.type] || 0) + 1;
|
|
421
|
+
agentStatusCounts[agent.status] = (agentStatusCounts[agent.status] || 0) + 1;
|
|
422
|
+
}
|
|
423
|
+
return {
|
|
424
|
+
totalActiveAgents: this.activeAgents.size,
|
|
425
|
+
agentTypeCounts,
|
|
426
|
+
agentStatusCounts,
|
|
427
|
+
pendingMessages: this.messageQueue.length,
|
|
428
|
+
availableAgentTypes: Array.from(this.agentBlueprints.keys())
|
|
429
|
+
};
|
|
430
|
+
}
|
|
431
|
+
}
|
|
432
|
+
exports.AgentFactory = AgentFactory;
|
|
433
|
+
//# sourceMappingURL=agent-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-factory.js","sourceRoot":"","sources":["../../src/queen/agent-factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* ServiceNow Queen Agent - Hive-Mind Intelligence System
|
|
3
|
+
*
|
|
4
|
+
* Simple, elegant coordination system following claude-flow philosophy
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```typescript
|
|
8
|
+
* import { ServiceNowQueen } from './queen';
|
|
9
|
+
*
|
|
10
|
+
* const queen = new ServiceNowQueen({
|
|
11
|
+
* debugMode: true,
|
|
12
|
+
* maxConcurrentAgents: 5
|
|
13
|
+
* });
|
|
14
|
+
*
|
|
15
|
+
* // Execute any ServiceNow objective
|
|
16
|
+
* const result = await queen.executeObjective("create incident dashboard with charts");
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export { ServiceNowQueen, QueenConfig } from './servicenow-queen';
|
|
20
|
+
export { QueenMemorySystem } from './queen-memory';
|
|
21
|
+
export { NeuralLearning } from './neural-learning';
|
|
22
|
+
export { AgentFactory } from './agent-factory';
|
|
23
|
+
export { ServiceNowTask, Agent, AgentType, TaskAnalysis, DeploymentPattern, QueenMemory, AgentMessage, ServiceNowArtifact } from './types';
|
|
24
|
+
import { ServiceNowQueen } from './servicenow-queen';
|
|
25
|
+
/**
|
|
26
|
+
* Quick start factory function
|
|
27
|
+
*/
|
|
28
|
+
export declare function createServiceNowQueen(options?: {
|
|
29
|
+
memoryPath?: string;
|
|
30
|
+
debugMode?: boolean;
|
|
31
|
+
maxConcurrentAgents?: number;
|
|
32
|
+
}): ServiceNowQueen;
|
|
33
|
+
/**
|
|
34
|
+
* Available agent types for dynamic spawning
|
|
35
|
+
*/
|
|
36
|
+
export declare const AVAILABLE_AGENT_TYPES: readonly ["widget-creator", "flow-builder", "script-writer", "app-architect", "integration-specialist", "catalog-manager", "researcher", "tester"];
|
|
37
|
+
/**
|
|
38
|
+
* Common ServiceNow task patterns
|
|
39
|
+
*/
|
|
40
|
+
export declare const TASK_PATTERNS: {
|
|
41
|
+
readonly WIDGET: {
|
|
42
|
+
readonly keywords: readonly ["widget", "dashboard", "chart", "display", "portal"];
|
|
43
|
+
readonly complexity_factors: readonly ["chart", "responsive", "data_sources", "real_time"];
|
|
44
|
+
};
|
|
45
|
+
readonly FLOW: {
|
|
46
|
+
readonly keywords: readonly ["flow", "workflow", "process", "approval", "automation"];
|
|
47
|
+
readonly complexity_factors: readonly ["approval_steps", "integration", "conditions", "notifications"];
|
|
48
|
+
};
|
|
49
|
+
readonly APPLICATION: {
|
|
50
|
+
readonly keywords: readonly ["application", "app", "system", "module", "solution"];
|
|
51
|
+
readonly complexity_factors: readonly ["tables", "business_rules", "ui_policies", "integrations"];
|
|
52
|
+
};
|
|
53
|
+
readonly INTEGRATION: {
|
|
54
|
+
readonly keywords: readonly ["integration", "api", "connect", "sync", "import", "export"];
|
|
55
|
+
readonly complexity_factors: readonly ["external_apis", "data_transformation", "authentication", "error_handling"];
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/queen/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAGH,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGlE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,OAAO,EACL,cAAc,EACd,KAAK,EACL,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,YAAY,EACZ,kBAAkB,EACnB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,GAAE;IAC7C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CACzB,mBAML;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,oJASxB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;CAiBhB,CAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* ServiceNow Queen Agent - Hive-Mind Intelligence System
|
|
4
|
+
*
|
|
5
|
+
* Simple, elegant coordination system following claude-flow philosophy
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* import { ServiceNowQueen } from './queen';
|
|
10
|
+
*
|
|
11
|
+
* const queen = new ServiceNowQueen({
|
|
12
|
+
* debugMode: true,
|
|
13
|
+
* maxConcurrentAgents: 5
|
|
14
|
+
* });
|
|
15
|
+
*
|
|
16
|
+
* // Execute any ServiceNow objective
|
|
17
|
+
* const result = await queen.executeObjective("create incident dashboard with charts");
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
+
exports.TASK_PATTERNS = exports.AVAILABLE_AGENT_TYPES = exports.AgentFactory = exports.NeuralLearning = exports.QueenMemorySystem = exports.ServiceNowQueen = void 0;
|
|
22
|
+
exports.createServiceNowQueen = createServiceNowQueen;
|
|
23
|
+
// Main Queen Agent
|
|
24
|
+
var servicenow_queen_1 = require("./servicenow-queen");
|
|
25
|
+
Object.defineProperty(exports, "ServiceNowQueen", { enumerable: true, get: function () { return servicenow_queen_1.ServiceNowQueen; } });
|
|
26
|
+
// Core components
|
|
27
|
+
var queen_memory_1 = require("./queen-memory");
|
|
28
|
+
Object.defineProperty(exports, "QueenMemorySystem", { enumerable: true, get: function () { return queen_memory_1.QueenMemorySystem; } });
|
|
29
|
+
var neural_learning_1 = require("./neural-learning");
|
|
30
|
+
Object.defineProperty(exports, "NeuralLearning", { enumerable: true, get: function () { return neural_learning_1.NeuralLearning; } });
|
|
31
|
+
var agent_factory_1 = require("./agent-factory");
|
|
32
|
+
Object.defineProperty(exports, "AgentFactory", { enumerable: true, get: function () { return agent_factory_1.AgentFactory; } });
|
|
33
|
+
// Import for internal use
|
|
34
|
+
const servicenow_queen_2 = require("./servicenow-queen");
|
|
35
|
+
/**
|
|
36
|
+
* Quick start factory function
|
|
37
|
+
*/
|
|
38
|
+
function createServiceNowQueen(options = {}) {
|
|
39
|
+
return new servicenow_queen_2.ServiceNowQueen({
|
|
40
|
+
debugMode: options.debugMode ?? process.env.NODE_ENV === 'development',
|
|
41
|
+
memoryPath: options.memoryPath,
|
|
42
|
+
maxConcurrentAgents: options.maxConcurrentAgents ?? 5
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Available agent types for dynamic spawning
|
|
47
|
+
*/
|
|
48
|
+
exports.AVAILABLE_AGENT_TYPES = [
|
|
49
|
+
'widget-creator',
|
|
50
|
+
'flow-builder',
|
|
51
|
+
'script-writer',
|
|
52
|
+
'app-architect',
|
|
53
|
+
'integration-specialist',
|
|
54
|
+
'catalog-manager',
|
|
55
|
+
'researcher',
|
|
56
|
+
'tester'
|
|
57
|
+
];
|
|
58
|
+
/**
|
|
59
|
+
* Common ServiceNow task patterns
|
|
60
|
+
*/
|
|
61
|
+
exports.TASK_PATTERNS = {
|
|
62
|
+
WIDGET: {
|
|
63
|
+
keywords: ['widget', 'dashboard', 'chart', 'display', 'portal'],
|
|
64
|
+
complexity_factors: ['chart', 'responsive', 'data_sources', 'real_time']
|
|
65
|
+
},
|
|
66
|
+
FLOW: {
|
|
67
|
+
keywords: ['flow', 'workflow', 'process', 'approval', 'automation'],
|
|
68
|
+
complexity_factors: ['approval_steps', 'integration', 'conditions', 'notifications']
|
|
69
|
+
},
|
|
70
|
+
APPLICATION: {
|
|
71
|
+
keywords: ['application', 'app', 'system', 'module', 'solution'],
|
|
72
|
+
complexity_factors: ['tables', 'business_rules', 'ui_policies', 'integrations']
|
|
73
|
+
},
|
|
74
|
+
INTEGRATION: {
|
|
75
|
+
keywords: ['integration', 'api', 'connect', 'sync', 'import', 'export'],
|
|
76
|
+
complexity_factors: ['external_apis', 'data_transformation', 'authentication', 'error_handling']
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/queen/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;AA4BH,sDAUC;AApCD,mBAAmB;AACnB,uDAAkE;AAAzD,mHAAA,eAAe,OAAA;AAExB,kBAAkB;AAClB,+CAAmD;AAA1C,iHAAA,iBAAiB,OAAA;AAC1B,qDAAmD;AAA1C,iHAAA,cAAc,OAAA;AACvB,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AAcrB,0BAA0B;AAC1B,yDAAqD;AAErD;;GAEG;AACH,SAAgB,qBAAqB,CAAC,UAIlC,EAAE;IACJ,OAAO,IAAI,kCAAe,CAAC;QACzB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa;QACtE,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,IAAI,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACU,QAAA,qBAAqB,GAAG;IACnC,gBAAgB;IAChB,cAAc;IACd,eAAe;IACf,eAAe;IACf,wBAAwB;IACxB,iBAAiB;IACjB,YAAY;IACZ,QAAQ;CACA,CAAC;AAEX;;GAEG;AACU,QAAA,aAAa,GAAG;IAC3B,MAAM,EAAE;QACN,QAAQ,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,CAAC;QAC/D,kBAAkB,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,WAAW,CAAC;KACzE;IACD,IAAI,EAAE;QACJ,QAAQ,EAAE,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC;QACnE,kBAAkB,EAAE,CAAC,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,eAAe,CAAC;KACrF;IACD,WAAW,EAAE;QACX,QAAQ,EAAE,CAAC,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC;QAChE,kBAAkB,EAAE,CAAC,QAAQ,EAAE,gBAAgB,EAAE,aAAa,EAAE,cAAc,CAAC;KAChF;IACD,WAAW,EAAE;QACX,QAAQ,EAAE,CAAC,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC;QACvE,kBAAkB,EAAE,CAAC,eAAe,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,gBAAgB,CAAC;KACjG;CACO,CAAC"}
|