snow-flow 3.0.9 ā 3.0.13
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.bat +0 -0
- package/claude-flow.ps1 +0 -0
- package/dist/mcp/intelligent-reporting-mcp.d.ts +7 -0
- package/dist/mcp/intelligent-reporting-mcp.js +379 -0
- package/dist/mcp/servicenow-automation-mcp.js +0 -0
- package/dist/mcp/servicenow-deployment-mcp.js +0 -0
- package/dist/mcp/servicenow-integration-mcp.js +0 -0
- package/dist/mcp/servicenow-mcp-server.js +0 -0
- package/dist/mcp/servicenow-operations-mcp.js +0 -0
- package/dist/mcp/servicenow-platform-development-mcp.js +0 -0
- package/dist/mcp/servicenow-progressive-indexer.js +0 -0
- package/dist/mcp/servicenow-reporting-analytics-mcp.js +280 -29
- package/dist/mcp/servicenow-security-compliance-mcp.js +0 -0
- package/dist/mcp/servicenow-update-set-mcp.js +0 -0
- package/dist/mcp/start-all-mcp-servers.js +0 -0
- package/dist/mcp/start-servicenow-mcp.js +0 -0
- package/dist/services/widget-deployment-service.d.ts +2 -1
- package/dist/services/widget-deployment-service.js +17 -16
- package/dist/utils/anti-mock-data-validator.d.ts +66 -0
- package/dist/utils/anti-mock-data-validator.js +316 -0
- package/dist/utils/servicenow-eventual-consistency.d.ts +120 -0
- package/dist/utils/servicenow-eventual-consistency.js +220 -0
- package/memory/agents/README.md +1 -1
- package/memory/claude-flow-data.json +1 -1
- package/memory/sessions/README.md +1 -1
- package/package.json +4 -3
- package/.mcp.json +0 -22
- package/claude-flow.config.json +0 -20
- package/dist/agents/app-creator.agent.d.ts +0 -55
- package/dist/agents/app-creator.agent.js +0 -1292
- package/dist/agents/base/base-snow-agent.d.ts +0 -75
- package/dist/agents/base/base-snow-agent.js +0 -169
- package/dist/agents/base-snow-agent.d.ts +0 -63
- package/dist/agents/base-snow-agent.js +0 -296
- package/dist/agents/coordinator.d.ts +0 -200
- package/dist/agents/coordinator.js +0 -777
- package/dist/agents/flow-builder-agent.d.ts +0 -18
- package/dist/agents/flow-builder-agent.js +0 -197
- package/dist/agents/queen-403-handler.d.ts +0 -47
- package/dist/agents/queen-403-handler.js +0 -175
- package/dist/agents/queen-agent-example.d.ts +0 -23
- package/dist/agents/queen-agent-example.js +0 -240
- package/dist/agents/queen-agent.test.d.ts +0 -6
- package/dist/agents/script-generator.agent.d.ts +0 -32
- package/dist/agents/script-generator.agent.js +0 -772
- package/dist/agents/script-writer-agent.d.ts +0 -22
- package/dist/agents/script-writer-agent.js +0 -695
- package/dist/agents/security-agent.d.ts +0 -23
- package/dist/agents/security-agent.js +0 -619
- package/dist/agents/specialists/automation-specialist.agent.d.ts +0 -44
- package/dist/agents/specialists/automation-specialist.agent.js +0 -204
- package/dist/agents/specialists/data-specialist.agent.d.ts +0 -165
- package/dist/agents/specialists/data-specialist.agent.js +0 -484
- package/dist/agents/specialists/integration-specialist.agent.d.ts +0 -227
- package/dist/agents/specialists/integration-specialist.agent.js +0 -725
- package/dist/agents/specialists/reporting-specialist.agent.d.ts +0 -54
- package/dist/agents/specialists/reporting-specialist.agent.js +0 -193
- package/dist/agents/specialists/security-specialist.agent.d.ts +0 -85
- package/dist/agents/specialists/security-specialist.agent.js +0 -309
- package/dist/agents/teams/adaptive/adaptive-coordinator.agent.d.ts +0 -111
- package/dist/agents/teams/adaptive/adaptive-coordinator.agent.js +0 -383
- package/dist/agents/teams/base-team.d.ts +0 -72
- package/dist/agents/teams/base-team.js +0 -253
- package/dist/agents/teams/team-types.d.ts +0 -265
- package/dist/agents/teams/team-types.js +0 -3
- package/dist/agents/teams/widget/widget-architect.agent.d.ts +0 -61
- package/dist/agents/teams/widget/widget-architect.agent.js +0 -436
- package/dist/agents/teams/widget/widget-backend.agent.d.ts +0 -74
- package/dist/agents/teams/widget/widget-backend.agent.js +0 -1531
- package/dist/agents/teams/widget/widget-frontend.agent.d.ts +0 -67
- package/dist/agents/teams/widget/widget-frontend.agent.js +0 -1014
- package/dist/agents/teams/widget/widget-platform.agent.d.ts +0 -90
- package/dist/agents/teams/widget/widget-platform.agent.js +0 -1190
- package/dist/agents/teams/widget/widget-uiux.agent.d.ts +0 -107
- package/dist/agents/teams/widget/widget-uiux.agent.js +0 -1033
- package/dist/agents/test-agent.d.ts +0 -26
- package/dist/agents/test-agent.js +0 -734
- package/dist/agents/test-agents.d.ts +0 -7
- package/dist/agents/test-agents.js +0 -64
- package/dist/agents/ui-builder.agent.d.ts +0 -50
- package/dist/agents/ui-builder.agent.js +0 -1539
- package/dist/agents/widget-builder.agent.d.ts +0 -32
- package/dist/agents/widget-builder.agent.js +0 -439
- package/dist/agents/widget-creator-agent.d.ts +0 -18
- package/dist/agents/widget-creator-agent.js +0 -498
- package/dist/agents/workflow-designer.agent.d.ts +0 -31
- package/dist/agents/workflow-designer.agent.js +0 -583
- package/dist/api/error-handling.d.ts +0 -325
- package/dist/api/error-handling.js +0 -1488
- package/dist/api/flow-designer-api.d.ts +0 -167
- package/dist/api/flow-designer-api.js +0 -554
- package/dist/api/natural-language-mapper.d.ts +0 -124
- package/dist/api/natural-language-mapper.js +0 -501
- package/dist/api/performance-optimizer.d.ts +0 -240
- package/dist/api/performance-optimizer.js +0 -706
- package/dist/api/transaction-manager.d.ts +0 -189
- package/dist/api/transaction-manager.js +0 -576
- package/dist/assembly/team-assembler.d.ts +0 -140
- package/dist/assembly/team-assembler.js +0 -502
- package/dist/benchmark-performance.d.ts +0 -41
- package/dist/benchmark-performance.js +0 -230
- package/dist/cli/snow-flow-cli-integration.d.ts +0 -30
- package/dist/cli/snow-flow-cli-integration.js +0 -396
- package/dist/coordination/coordination-engine.d.ts +0 -41
- package/dist/coordination/coordination-engine.js +0 -324
- package/dist/coordination/coordination.test.d.ts +0 -6
- package/dist/coordination/example.d.ts +0 -31
- package/dist/coordination/example.js +0 -394
- package/dist/coordination/execution-patterns.d.ts +0 -43
- package/dist/coordination/execution-patterns.js +0 -507
- package/dist/coordination/factory.d.ts +0 -94
- package/dist/coordination/factory.js +0 -433
- package/dist/coordination/index.d.ts +0 -71
- package/dist/coordination/index.js +0 -135
- package/dist/coordination/progress-monitor.d.ts +0 -71
- package/dist/coordination/progress-monitor.js +0 -505
- package/dist/coordination/quality-gates.d.ts +0 -124
- package/dist/coordination/quality-gates.js +0 -577
- package/dist/coordination/shared-memory.d.ts +0 -39
- package/dist/coordination/shared-memory.js +0 -289
- package/dist/coordination/task-dependencies.d.ts +0 -50
- package/dist/coordination/task-dependencies.js +0 -407
- package/dist/coordination/team-coordinator.d.ts +0 -59
- package/dist/coordination/team-coordinator.js +0 -550
- package/dist/coordination/types.d.ts +0 -152
- package/dist/coordination/types.js +0 -3
- package/dist/mcp/mcp-wrapper.d.ts +0 -8
- package/dist/mcp/mcp-wrapper.js +0 -77
- package/dist/mcp/servicenow-flow-composer-enhanced.js +0 -396
- package/dist/mcp/servicenow-flow-composer-mcp.d.ts +0 -7
- package/dist/mcp/servicenow-flow-composer-mcp.js +0 -3103
- package/dist/mcp/servicenow-graph-memory-mcp.d.ts +0 -7
- package/dist/mcp/servicenow-intelligent-mcp.d.ts +0 -143
- package/dist/mcp/servicenow-intelligent-mcp.js +0 -4156
- package/dist/mcp/servicenow-xml-flow-mcp.d.ts +0 -53
- package/dist/mcp/servicenow-xml-flow-mcp.js +0 -1704
- package/dist/mcp/singleton-check.js +0 -31
- package/dist/mcp/test-simple-mcp.d.ts +0 -6
- package/dist/mcp/test-simple-mcp.js +0 -63
- package/dist/memory/hierarchical-memory-system.d.ts +0 -90
- package/dist/memory/hierarchical-memory-system.js +0 -400
- package/dist/memory/index.d.ts +0 -9
- package/dist/memory/index.js +0 -20
- package/dist/memory/mcp-integration-example.d.ts +0 -6
- package/dist/memory/mcp-integration-example.js +0 -281
- package/dist/memory/memory-client.d.ts +0 -199
- package/dist/memory/memory-client.js +0 -364
- package/dist/memory/memory-manager.d.ts +0 -29
- package/dist/memory/memory-manager.js +0 -280
- package/dist/memory/memory-operations.d.ts +0 -179
- package/dist/memory/memory-operations.js +0 -691
- package/dist/memory/memory-system.d.ts +0 -153
- package/dist/memory/memory-system.js +0 -651
- package/dist/memory/memory-test.d.ts +0 -6
- package/dist/memory/memory-test.js +0 -161
- package/dist/memory/snow-flow-memory-patterns.d.ts +0 -213
- package/dist/memory/snow-flow-memory-patterns.js +0 -200
- package/dist/memory/snow-memory.d.ts +0 -54
- package/dist/memory/snow-memory.js +0 -301
- package/dist/memory/swarm-memory.d.ts +0 -135
- package/dist/memory/swarm-memory.js +0 -378
- package/dist/optimization/flow-performance-optimizer.js +0 -723
- package/dist/orchestration/discovery/service-discovery.d.ts +0 -81
- package/dist/orchestration/discovery/service-discovery.js +0 -808
- package/dist/orchestration/distributed-orchestrator.d.ts +0 -131
- package/dist/orchestration/distributed-orchestrator.js +0 -712
- package/dist/orchestration/distribution/task-distribution-engine.d.ts +0 -53
- package/dist/orchestration/distribution/task-distribution-engine.js +0 -586
- package/dist/orchestration/flow-update-orchestrator.js +0 -648
- package/dist/orchestration/interfaces/distributed-orchestration.interface.d.ts +0 -606
- package/dist/orchestration/interfaces/distributed-orchestration.interface.js +0 -65
- package/dist/orchestration/protocols/mcpx-protocol.d.ts +0 -71
- package/dist/orchestration/protocols/mcpx-protocol.js +0 -668
- package/dist/orchestration/state/distributed-state-manager.d.ts +0 -89
- package/dist/orchestration/state/distributed-state-manager.js +0 -716
- package/dist/orchestrator/flow-composer.d.ts +0 -105
- package/dist/orchestrator/flow-composer.js +0 -404
- package/dist/orchestrator/flow-pattern-templates.d.ts +0 -260
- package/dist/orchestrator/flow-pattern-templates.js +0 -908
- package/dist/orchestrator/flow-subflow-decision-engine.d.ts +0 -202
- package/dist/orchestrator/flow-subflow-decision-engine.js +0 -769
- package/dist/orchestrator/flow-validation-engine.d.ts +0 -169
- package/dist/orchestrator/flow-validation-engine.js +0 -913
- package/dist/orchestrator/snow-orchestrator.d.ts +0 -49
- package/dist/orchestrator/snow-orchestrator.js +0 -235
- package/dist/orchestrator/subflow-creation-handler.d.ts +0 -230
- package/dist/orchestrator/subflow-creation-handler.js +0 -791
- package/dist/patterns/adaptive-patterns.d.ts +0 -140
- package/dist/patterns/adaptive-patterns.js +0 -549
- package/dist/queen/advanced-integration-test.d.ts +0 -48
- package/dist/queen/advanced-integration-test.js +0 -473
- package/dist/queen/integration-example.d.ts +0 -82
- package/dist/queen/integration-example.js +0 -219
- package/dist/queen/integration-test.d.ts +0 -72
- package/dist/queen/integration-test.js +0 -563
- package/dist/queen/mock-mcp-client.d.ts +0 -71
- package/dist/queen/mock-mcp-client.js +0 -317
- package/dist/queen/run-integration-tests.d.ts +0 -9
- package/dist/queen/run-integration-tests.js +0 -27
- package/dist/sparc/coordinators/adaptive-coordinator.d.ts +0 -54
- package/dist/sparc/coordinators/adaptive-coordinator.js +0 -367
- package/dist/sparc/coordinators/team-coordinator.d.ts +0 -66
- package/dist/sparc/coordinators/team-coordinator.js +0 -402
- package/dist/sparc/modes/team-modes.d.ts +0 -33
- package/dist/sparc/modes/team-modes.js +0 -399
- package/dist/sparc/teams/application-team.d.ts +0 -73
- package/dist/sparc/teams/application-team.js +0 -463
- package/dist/sparc/teams/flow-team.d.ts +0 -67
- package/dist/sparc/teams/flow-team.js +0 -373
- package/dist/sparc/teams/widget-team.d.ts +0 -61
- package/dist/sparc/teams/widget-team.js +0 -280
- package/dist/specialists/app-specialists.d.ts +0 -93
- package/dist/specialists/app-specialists.js +0 -1639
- package/dist/specialists/base-specialist.d.ts +0 -19
- package/dist/specialists/base-specialist.js +0 -54
- package/dist/specialists/flow-specialists.d.ts +0 -113
- package/dist/specialists/flow-specialists.js +0 -1787
- package/dist/specialists/individual-specialists.d.ts +0 -67
- package/dist/specialists/individual-specialists.js +0 -632
- package/dist/specialists/widget-specialists.d.ts +0 -70
- package/dist/specialists/widget-specialists.js +0 -1264
- package/dist/src/utils/agent-detector.js +0 -655
- package/dist/teams/adaptive-team.d.ts +0 -81
- package/dist/teams/adaptive-team.js +0 -1153
- package/dist/teams/application-team.d.ts +0 -30
- package/dist/teams/application-team.js +0 -547
- package/dist/teams/base-team.d.ts +0 -55
- package/dist/teams/base-team.js +0 -243
- package/dist/teams/flow-team.d.ts +0 -28
- package/dist/teams/flow-team.js +0 -525
- package/dist/teams/widget-team.d.ts +0 -26
- package/dist/teams/widget-team.js +0 -459
- package/dist/templates/flow-template-system.js +0 -625
- package/dist/test-fetch-incidents.d.ts +0 -2
- package/dist/test-fetch-incidents.js +0 -84
- package/dist/test-incident-access.d.ts +0 -2
- package/dist/test-incident-access.js +0 -72
- package/dist/test-iphone-flow.js +0 -189
- package/dist/test-limit-problem.d.ts +0 -2
- package/dist/test-limit-problem.js +0 -60
- package/dist/test-ml-batch-fix.d.ts +0 -2
- package/dist/test-ml-batch-fix.js +0 -104
- package/dist/test-ml-batch.d.ts +0 -2
- package/dist/test-ml-batch.js +0 -87
- package/dist/test-ml-query.d.ts +0 -2
- package/dist/test-ml-query.js +0 -100
- package/dist/test-ml-training-fix.d.ts +0 -12
- package/dist/test-ml-training-fix.js +0 -113
- package/dist/test-ml-training.d.ts +0 -2
- package/dist/test-ml-training.js +0 -32
- package/dist/test-operations-query.d.ts +0 -2
- package/dist/test-operations-query.js +0 -84
- package/dist/test-performance-query.d.ts +0 -2
- package/dist/test-performance-query.js +0 -52
- package/dist/test-singleton-protection.d.ts +0 -8
- package/dist/test-singleton-protection.js +0 -110
- package/dist/test-smart-limits.d.ts +0 -13
- package/dist/test-smart-limits.js +0 -100
- package/dist/test-snow-query-incidents.d.ts +0 -2
- package/dist/test-snow-query-incidents.js +0 -66
- package/dist/test-universal-query.d.ts +0 -2
- package/dist/test-universal-query.js +0 -106
- package/dist/testing/flow-testing-automation.js +0 -641
- package/dist/utils/complete-flow-xml-generator.js +0 -1285
- package/dist/utils/file-storage-fallback.d.ts +0 -62
- package/dist/utils/file-storage-fallback.js +0 -289
- package/dist/utils/flow-api-discovery.d.ts +0 -151
- package/dist/utils/flow-api-discovery.js +0 -439
- package/dist/utils/flow-examples.js +0 -720
- package/dist/utils/flow-structure-builder.js +0 -677
- package/dist/utils/flow-xml-generator.d.ts +0 -41
- package/dist/utils/flow-xml-generator.js +0 -258
- package/dist/utils/improved-flow-xml-generator.js +0 -820
- package/dist/utils/mcp-process-manager.backup.d.ts +0 -58
- package/dist/utils/mcp-process-manager.backup.js +0 -220
- package/dist/utils/mcp-singleton-enforcer.d.ts +0 -36
- package/dist/utils/mcp-singleton-enforcer.js +0 -201
- package/dist/utils/mcp-timeout-fix.d.ts +0 -53
- package/dist/utils/mcp-timeout-fix.js +0 -221
- package/dist/utils/migrate-claude-flow.d.ts +0 -22
- package/dist/utils/migrate-claude-flow.js +0 -120
- package/dist/utils/scope-utils.d.ts +0 -72
- package/dist/utils/scope-utils.js +0 -386
- package/dist/utils/snow-oauth-old.d.ts +0 -65
- package/dist/utils/snow-oauth-old.js +0 -345
- package/dist/utils/xml-first-flow-generator.js +0 -513
- package/memory/servicenow_artifacts/000d9224c895221055906c7518aa2d3d.json +0 -30
- package/memory/servicenow_artifacts/0196b66173303010e46b4a2214f6a7a2.json +0 -36
- package/memory/servicenow_artifacts/125e5d1d837e2a102a7ea130ceaad397.json +0 -30
- package/memory/servicenow_artifacts/7637c1f2b7112210a5e5911cde11a972.json +0 -30
- package/memory/servicenow_artifacts/default_documentation_tables_1754056582292.json +0 -55
- package/memory/servicenow_artifacts/default_documentation_tables_1754057477189.json +0 -55
- package/memory/update-set-sessions/01f82af583faea102a7ea130ceaad3d4.json +0 -9
- package/memory/update-set-sessions/27718fb983faea102a7ea130ceaad34b.json +0 -9
- package/memory/update-set-sessions/412e9bf6833e22502a7ea130ceaad30a.json +0 -8
- package/memory/update-set-sessions/66fc5a79837aea102a7ea130ceaad3ab.json +0 -9
- package/memory/update-set-sessions/71a30ff5837eea102a7ea130ceaad37f.json +0 -9
- package/memory/update-set-sessions/74fba27983faea102a7ea130ceaad3bd.json +0 -9
- package/memory/update-set-sessions/a0b147b5837eea102a7ea130ceaad344.json +0 -58
- package/memory/update-set-sessions/b13f5eb983baea102a7ea130ceaad33e.json +0 -9
- package/reports/swarm-auto-centralized-1752649029776.json +0 -13
- package/src/memory/README.md +0 -240
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Flow Builder Agent
|
|
3
|
-
* Specializes in creating ServiceNow Flow Designer workflows
|
|
4
|
-
*/
|
|
5
|
-
import { BaseAgent, AgentConfig, AgentResult } from './base-agent';
|
|
6
|
-
export declare class FlowBuilderAgent extends BaseAgent {
|
|
7
|
-
constructor(config?: Partial<AgentConfig>);
|
|
8
|
-
execute(instruction: string, context?: Record<string, any>): Promise<AgentResult>;
|
|
9
|
-
private analyzeFlowRequirements;
|
|
10
|
-
private checkExistingFlows;
|
|
11
|
-
private designFlowStructure;
|
|
12
|
-
private createFlowDefinition;
|
|
13
|
-
private configureTriggers;
|
|
14
|
-
private setupActions;
|
|
15
|
-
private createAction;
|
|
16
|
-
private prepareDeploymentInstructions;
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=flow-builder-agent.d.ts.map
|
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Flow Builder Agent
|
|
4
|
-
* Specializes in creating ServiceNow Flow Designer workflows
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.FlowBuilderAgent = void 0;
|
|
8
|
-
const base_agent_1 = require("./base-agent");
|
|
9
|
-
const mcp_execution_bridge_1 = require("../queen/mcp-execution-bridge");
|
|
10
|
-
class FlowBuilderAgent extends base_agent_1.BaseAgent {
|
|
11
|
-
constructor(config, mcpBridge) {
|
|
12
|
-
super({
|
|
13
|
-
type: 'flow-builder',
|
|
14
|
-
capabilities: [
|
|
15
|
-
'Business process design',
|
|
16
|
-
'Flow Designer expertise',
|
|
17
|
-
'Approval workflow creation',
|
|
18
|
-
'Integration flow building',
|
|
19
|
-
'Condition and trigger logic',
|
|
20
|
-
'Action step configuration',
|
|
21
|
-
'Subflow creation',
|
|
22
|
-
'Error handling design',
|
|
23
|
-
'Decision table creation'
|
|
24
|
-
],
|
|
25
|
-
mcpTools: [
|
|
26
|
-
'snow_create_flow',
|
|
27
|
-
'snow_test_flow_with_mock',
|
|
28
|
-
'snow_link_catalog_to_flow',
|
|
29
|
-
'snow_comprehensive_flow_test',
|
|
30
|
-
'snow_validate_flow_definition',
|
|
31
|
-
'snow_discover_existing_flows',
|
|
32
|
-
'snow_flow_wizard'
|
|
33
|
-
],
|
|
34
|
-
...config
|
|
35
|
-
});
|
|
36
|
-
// Initialize MCP bridge for real ServiceNow deployment
|
|
37
|
-
this.mcpBridge = mcpBridge || new mcp_execution_bridge_1.MCPExecutionBridge(this.memory);
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Create MCP recommendation for tool execution
|
|
41
|
-
*/
|
|
42
|
-
createMCPRecommendation(tool, params, action) {
|
|
43
|
-
return {
|
|
44
|
-
agentId: this.id,
|
|
45
|
-
agentType: this.type,
|
|
46
|
-
action: action,
|
|
47
|
-
tool: tool,
|
|
48
|
-
server: this.getServerForTool(tool),
|
|
49
|
-
params: params,
|
|
50
|
-
reasoning: `Flow builder executing ${action}`,
|
|
51
|
-
confidence: 0.9,
|
|
52
|
-
dependencies: []
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* Map MCP tools to their respective servers
|
|
57
|
-
*/
|
|
58
|
-
getServerForTool(tool) {
|
|
59
|
-
const toolServerMap = {
|
|
60
|
-
'snow_create_flow': 'flow-composer',
|
|
61
|
-
'snow_test_flow_with_mock': 'operations',
|
|
62
|
-
'snow_comprehensive_flow_test': 'intelligent',
|
|
63
|
-
'snow_validate_flow_definition': 'deployment',
|
|
64
|
-
'snow_discover_existing_flows': 'intelligent',
|
|
65
|
-
'snow_link_catalog_to_flow': 'operations'
|
|
66
|
-
};
|
|
67
|
-
return toolServerMap[tool] || 'deployment';
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Execute MCP tool with error handling and fallbacks
|
|
71
|
-
*/
|
|
72
|
-
async executeWithFallback(tool, params, action) {
|
|
73
|
-
const recommendation = this.createMCPRecommendation(tool, params, action);
|
|
74
|
-
try {
|
|
75
|
-
const result = await this.mcpBridge.executeAgentRecommendation({ id: this.id, type: this.type }, recommendation);
|
|
76
|
-
if (!result.success) {
|
|
77
|
-
return {
|
|
78
|
-
success: false,
|
|
79
|
-
error: result.error || `MCP tool ${tool} execution failed`
|
|
80
|
-
};
|
|
81
|
-
}
|
|
82
|
-
if (result.fallbackUsed) {
|
|
83
|
-
console.warn(`ā ļø MCP tool ${tool} used fallback strategy`);
|
|
84
|
-
}
|
|
85
|
-
return {
|
|
86
|
-
success: true,
|
|
87
|
-
result: result.toolResult
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
|
-
catch (error) {
|
|
91
|
-
return {
|
|
92
|
-
success: false,
|
|
93
|
-
error: error instanceof Error ? error.message : String(error)
|
|
94
|
-
};
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
async execute(instruction, context) {
|
|
98
|
-
try {
|
|
99
|
-
this.setStatus('working');
|
|
100
|
-
await this.reportProgress('š Starting MCP-powered flow creation', 0);
|
|
101
|
-
// š STEP 1: Check for existing flows to avoid duplication
|
|
102
|
-
await this.reportProgress('š Discovering existing flows', 10);
|
|
103
|
-
const discoveryResult = await this.executeWithFallback('snow_discover_existing_flows', { flow_purpose: instruction }, 'discover-existing-flows');
|
|
104
|
-
let existingFlowsCount = 0;
|
|
105
|
-
if (discoveryResult.success && discoveryResult.result?.found) {
|
|
106
|
-
existingFlowsCount = discoveryResult.result.found.length;
|
|
107
|
-
if (existingFlowsCount > 0) {
|
|
108
|
-
await this.reportProgress(`š Found ${existingFlowsCount} similar flows for reference`, 20);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
// š§ STEP 2: CREATE FLOW VIA MCP TOOL (This is the key fix!)
|
|
112
|
-
await this.reportProgress('š§ Creating flow via intelligent MCP system', 30);
|
|
113
|
-
const createResult = await this.executeWithFallback('snow_create_flow', {
|
|
114
|
-
instruction: instruction,
|
|
115
|
-
deploy_immediately: true,
|
|
116
|
-
enable_intelligent_analysis: true,
|
|
117
|
-
create_missing_artifacts: true,
|
|
118
|
-
validation_level: 'standard'
|
|
119
|
-
}, 'create-flow');
|
|
120
|
-
if (!createResult.success) {
|
|
121
|
-
throw new Error(`ā Flow creation via MCP failed: ${createResult.error}`);
|
|
122
|
-
}
|
|
123
|
-
await this.reportProgress('ā
Flow created and deployed to ServiceNow!', 60);
|
|
124
|
-
// š§Ŗ STEP 3: Test the created flow with mock data
|
|
125
|
-
await this.reportProgress('š§Ŗ Testing flow with mock data', 70);
|
|
126
|
-
const testResult = await this.executeWithFallback('snow_test_flow_with_mock', {
|
|
127
|
-
flow_id: createResult.result.sys_id || createResult.result.flow_sys_id,
|
|
128
|
-
create_test_user: true,
|
|
129
|
-
cleanup_after_test: true,
|
|
130
|
-
simulate_approvals: true
|
|
131
|
-
}, 'test-flow');
|
|
132
|
-
let testStatus = 'ā Test status unknown';
|
|
133
|
-
if (testResult.success) {
|
|
134
|
-
testStatus = 'ā
Flow tested successfully';
|
|
135
|
-
}
|
|
136
|
-
else {
|
|
137
|
-
testStatus = `ā ļø Flow test failed: ${testResult.error}`;
|
|
138
|
-
}
|
|
139
|
-
// šÆ STEP 4: Create artifact with REAL ServiceNow data
|
|
140
|
-
const realFlowData = createResult.result;
|
|
141
|
-
const artifact = {
|
|
142
|
-
type: 'flow',
|
|
143
|
-
name: realFlowData.name || realFlowData.flow_name || 'created_flow',
|
|
144
|
-
sys_id: realFlowData.sys_id || realFlowData.flow_sys_id, // ā
REAL sys_id from ServiceNow!
|
|
145
|
-
config: {
|
|
146
|
-
// Store the actual flow definition returned from ServiceNow
|
|
147
|
-
definition: realFlowData.definition || realFlowData,
|
|
148
|
-
deployed: true,
|
|
149
|
-
tested: testResult.success,
|
|
150
|
-
created_via: 'snow_create_flow_mcp',
|
|
151
|
-
metadata: {
|
|
152
|
-
description: instruction,
|
|
153
|
-
type: realFlowData.type || 'flow',
|
|
154
|
-
active: realFlowData.active || true
|
|
155
|
-
}
|
|
156
|
-
},
|
|
157
|
-
dependencies: realFlowData.dependencies || []
|
|
158
|
-
};
|
|
159
|
-
// Store artifact for other agents
|
|
160
|
-
await this.storeArtifact(artifact);
|
|
161
|
-
await this.reportProgress('š¦ Flow artifact stored with real ServiceNow data', 90);
|
|
162
|
-
await this.reportProgress('š MCP-powered flow creation completed!', 100);
|
|
163
|
-
this.setStatus('completed');
|
|
164
|
-
await this.logActivity('flow_creation_mcp', true, {
|
|
165
|
-
flowName: artifact.name,
|
|
166
|
-
sys_id: artifact.sys_id,
|
|
167
|
-
tested: testResult.success,
|
|
168
|
-
deployedToServiceNow: true,
|
|
169
|
-
discoveredSimilar: existingFlowsCount
|
|
170
|
-
});
|
|
171
|
-
return {
|
|
172
|
-
success: true,
|
|
173
|
-
artifacts: [artifact],
|
|
174
|
-
message: `ā
Flow "${artifact.name}" created and deployed to ServiceNow successfully! ${testStatus}`,
|
|
175
|
-
metadata: {
|
|
176
|
-
sys_id: artifact.sys_id, // ā
Real ServiceNow sys_id!
|
|
177
|
-
deployed_to_servicenow: true,
|
|
178
|
-
tested: testResult.success,
|
|
179
|
-
test_details: testResult.result,
|
|
180
|
-
discovered_similar_flows: existingFlowsCount,
|
|
181
|
-
mcp_powered: true,
|
|
182
|
-
has_content: true // ā
No more empty flows!
|
|
183
|
-
}
|
|
184
|
-
};
|
|
185
|
-
}
|
|
186
|
-
catch (error) {
|
|
187
|
-
this.setStatus('failed');
|
|
188
|
-
await this.logActivity('flow_creation_mcp', false, { error: error.message });
|
|
189
|
-
return {
|
|
190
|
-
success: false,
|
|
191
|
-
error: error,
|
|
192
|
-
message: `ā MCP-powered flow creation failed: ${error.message}`
|
|
193
|
-
};
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
exports.FlowBuilderAgent = FlowBuilderAgent;
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Queen Agent 403 Error Handler
|
|
3
|
-
* Automatically analyzes and resolves ServiceNow permission issues using Gap Analysis Engine
|
|
4
|
-
*/
|
|
5
|
-
import { Logger } from '../utils/logger';
|
|
6
|
-
export interface Permission403Context {
|
|
7
|
-
error: any;
|
|
8
|
-
operation: string;
|
|
9
|
-
tableName?: string;
|
|
10
|
-
artifactType?: string;
|
|
11
|
-
objective: string;
|
|
12
|
-
}
|
|
13
|
-
export declare class Queen403Handler {
|
|
14
|
-
private logger;
|
|
15
|
-
private mcpTools;
|
|
16
|
-
constructor(logger: Logger, mcpTools: any);
|
|
17
|
-
/**
|
|
18
|
-
* Handle 403 permission errors with intelligent _analysis and resolution
|
|
19
|
-
*/
|
|
20
|
-
handle403Error(context: Permission403Context): Promise<{
|
|
21
|
-
resolved: boolean;
|
|
22
|
-
_analysis: any;
|
|
23
|
-
nextSteps: string[];
|
|
24
|
-
manualActions?: string[];
|
|
25
|
-
}>;
|
|
26
|
-
/**
|
|
27
|
-
* Create specific objective for ACL analysis
|
|
28
|
-
*/
|
|
29
|
-
private createACLObjective;
|
|
30
|
-
/**
|
|
31
|
-
* Generate next steps based on analysis
|
|
32
|
-
*/
|
|
33
|
-
private generateNextSteps;
|
|
34
|
-
/**
|
|
35
|
-
* Extract manual actions from gap analysis
|
|
36
|
-
*/
|
|
37
|
-
private extractManualActions;
|
|
38
|
-
/**
|
|
39
|
-
* Log findings for Queen Agent awareness
|
|
40
|
-
*/
|
|
41
|
-
private logFindings;
|
|
42
|
-
/**
|
|
43
|
-
* Generate fallback deployment configuration
|
|
44
|
-
*/
|
|
45
|
-
generateFallbackConfig(context: Permission403Context): any;
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=queen-403-handler.d.ts.map
|
|
@@ -1,175 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Queen Agent 403 Error Handler
|
|
4
|
-
* Automatically analyzes and resolves ServiceNow permission issues using Gap Analysis Engine
|
|
5
|
-
*/
|
|
6
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.Queen403Handler = void 0;
|
|
8
|
-
const gap_analysis_engine_1 = require("../intelligence/gap-analysis-engine");
|
|
9
|
-
class Queen403Handler {
|
|
10
|
-
constructor(logger, mcpTools) {
|
|
11
|
-
this.logger = logger;
|
|
12
|
-
this.mcpTools = mcpTools;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Handle 403 permission errors with intelligent _analysis and resolution
|
|
16
|
-
*/
|
|
17
|
-
async handle403Error(context) {
|
|
18
|
-
this.logger.info('šØ Queen Agent: 403 Permission Error detected - activating Gap Analysis');
|
|
19
|
-
// 1. Create specific objective for ACL analysis
|
|
20
|
-
const aclObjective = this.createACLObjective(context);
|
|
21
|
-
// 2. Run Gap Analysis specifically for permission issues
|
|
22
|
-
const gapAnalysis = await (0, gap_analysis_engine_1.analyzeGaps)(aclObjective, this.mcpTools, this.logger, {
|
|
23
|
-
autoPermissions: true,
|
|
24
|
-
environment: 'development',
|
|
25
|
-
enableAutomation: true,
|
|
26
|
-
includeManualGuides: true
|
|
27
|
-
});
|
|
28
|
-
// 3. Extract ACL-specific findings
|
|
29
|
-
const aclRequirements = gapAnalysis.requirements.filter(req => req.type === 'acl_rule' ||
|
|
30
|
-
req.type === 'user_role' ||
|
|
31
|
-
req.type === 'oauth_provider' ||
|
|
32
|
-
req.type === 'security_policy' ||
|
|
33
|
-
req.type === 'sys_property');
|
|
34
|
-
// 4. Check if any automatic fixes were applied
|
|
35
|
-
const autoFixed = gapAnalysis.automationResults.successful.filter(result => result.requirement.type === 'sys_property' &&
|
|
36
|
-
result.requirement.name?.includes('service_portal'));
|
|
37
|
-
// 5. Prepare next steps based on analysis
|
|
38
|
-
const nextSteps = this.generateNextSteps(context, gapAnalysis, aclRequirements);
|
|
39
|
-
// 6. Log findings for Queen Agent decision making
|
|
40
|
-
this.logFindings(aclRequirements, gapAnalysis);
|
|
41
|
-
return {
|
|
42
|
-
resolved: autoFixed.length > 0,
|
|
43
|
-
_analysis: {
|
|
44
|
-
totalPermissionIssues: aclRequirements.length,
|
|
45
|
-
automaticallyFixed: autoFixed.length,
|
|
46
|
-
requiresManualWork: aclRequirements.filter(r => !r.automatable).length,
|
|
47
|
-
gapAnalysis: gapAnalysis
|
|
48
|
-
},
|
|
49
|
-
nextSteps,
|
|
50
|
-
manualActions: this.extractManualActions(gapAnalysis)
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Create specific objective for ACL analysis
|
|
55
|
-
*/
|
|
56
|
-
createACLObjective(context) {
|
|
57
|
-
const { tableName, artifactType, operation, objective } = context;
|
|
58
|
-
let aclObjective = `Fix 403 permission error for ${operation} on `;
|
|
59
|
-
if (tableName) {
|
|
60
|
-
aclObjective += `${tableName} table `;
|
|
61
|
-
}
|
|
62
|
-
else if (artifactType) {
|
|
63
|
-
aclObjective += `${artifactType} `;
|
|
64
|
-
}
|
|
65
|
-
aclObjective += `to complete: ${objective}`;
|
|
66
|
-
// Add specific context for sp_widget
|
|
67
|
-
if (tableName === 'sp_widget' || artifactType === 'widget') {
|
|
68
|
-
aclObjective += ' including Service Portal API access, OAuth scopes, and cross-scope permissions';
|
|
69
|
-
}
|
|
70
|
-
return aclObjective;
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* Generate next steps based on analysis
|
|
74
|
-
*/
|
|
75
|
-
generateNextSteps(context, gapAnalysis, aclRequirements) {
|
|
76
|
-
const steps = [];
|
|
77
|
-
// 1. If automatic fixes were applied, suggest retry
|
|
78
|
-
if (gapAnalysis.automationResults.successful.length > 0) {
|
|
79
|
-
steps.push('š Retry the deployment - automatic fixes have been applied');
|
|
80
|
-
}
|
|
81
|
-
// 2. For sp_widget specific issues
|
|
82
|
-
if (context.tableName === 'sp_widget') {
|
|
83
|
-
steps.push('š Try deployment with global scope: scope_preference: "global"');
|
|
84
|
-
steps.push('š Ensure active Update Set: snow_ensure_active_update_set()');
|
|
85
|
-
}
|
|
86
|
-
// 3. For OAuth issues
|
|
87
|
-
const oauthIssues = aclRequirements.filter(r => r.type === 'oauth_provider');
|
|
88
|
-
if (oauthIssues.length > 0) {
|
|
89
|
-
steps.push('š Check OAuth application settings in ServiceNow');
|
|
90
|
-
steps.push('š§ Re-authenticate: snow-flow auth login');
|
|
91
|
-
}
|
|
92
|
-
// 4. For role issues
|
|
93
|
-
const roleIssues = aclRequirements.filter(r => r.type === 'user_role');
|
|
94
|
-
if (roleIssues.length > 0) {
|
|
95
|
-
const missingRoles = roleIssues.map(r => r.name).join(', ');
|
|
96
|
-
steps.push(`š¤ Add missing roles: ${missingRoles}`);
|
|
97
|
-
}
|
|
98
|
-
// 5. For ACL rule issues
|
|
99
|
-
const aclRuleIssues = aclRequirements.filter(r => r.type === 'acl_rule');
|
|
100
|
-
if (aclRuleIssues.length > 0) {
|
|
101
|
-
steps.push('š”ļø Review ACL rules on the target table');
|
|
102
|
-
steps.push('š Check for custom ACLs blocking API access');
|
|
103
|
-
}
|
|
104
|
-
return steps;
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Extract manual actions from gap analysis
|
|
108
|
-
*/
|
|
109
|
-
extractManualActions(gapAnalysis) {
|
|
110
|
-
const actions = [];
|
|
111
|
-
if (gapAnalysis.manualGuides && gapAnalysis.manualGuides.guides) {
|
|
112
|
-
gapAnalysis.manualGuides.guides.forEach((guide) => {
|
|
113
|
-
if (guide.category === 'security_permissions' ||
|
|
114
|
-
guide.title.includes('ACL') ||
|
|
115
|
-
guide.title.includes('Permission')) {
|
|
116
|
-
actions.push(`š ${guide.title} (${guide.totalEstimatedTime})`);
|
|
117
|
-
// Add first few steps as preview
|
|
118
|
-
if (guide.instructions && guide.instructions.length > 0) {
|
|
119
|
-
guide.instructions.slice(0, 2).forEach((instruction) => {
|
|
120
|
-
actions.push(` ⢠${instruction.title}`);
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
});
|
|
125
|
-
}
|
|
126
|
-
return actions;
|
|
127
|
-
}
|
|
128
|
-
/**
|
|
129
|
-
* Log findings for Queen Agent awareness
|
|
130
|
-
*/
|
|
131
|
-
logFindings(aclRequirements, gapAnalysis) {
|
|
132
|
-
console.log('\nš§ Queen Agent Permission Analysis Results:');
|
|
133
|
-
console.log('ā'.repeat(50));
|
|
134
|
-
console.log(`\nš Permission Requirements Found: ${aclRequirements.length}`);
|
|
135
|
-
aclRequirements.forEach(req => {
|
|
136
|
-
const icon = req.automatable ? 'š¤' : 'š¤';
|
|
137
|
-
console.log(` ${icon} ${req.type}: ${req.name || req.description}`);
|
|
138
|
-
});
|
|
139
|
-
console.log(`\nā
Automatic Fixes Applied: ${gapAnalysis.automationResults.successful.length}`);
|
|
140
|
-
gapAnalysis.automationResults.successful.forEach((result) => {
|
|
141
|
-
console.log(` ⢠${result.requirement.name}: ${result.message}`);
|
|
142
|
-
});
|
|
143
|
-
console.log(`\nš Manual Actions Required: ${gapAnalysis.summary.requiresManualWork}`);
|
|
144
|
-
console.log('\nš” Recommendations:');
|
|
145
|
-
gapAnalysis.nextSteps.recommendations.forEach((rec) => {
|
|
146
|
-
console.log(` ⢠${rec}`);
|
|
147
|
-
});
|
|
148
|
-
}
|
|
149
|
-
/**
|
|
150
|
-
* Generate fallback deployment configuration
|
|
151
|
-
*/
|
|
152
|
-
generateFallbackConfig(context) {
|
|
153
|
-
const fallbackConfig = {
|
|
154
|
-
retry_with_global_scope: true,
|
|
155
|
-
force_update_set: true,
|
|
156
|
-
permission_escalation: 'request'
|
|
157
|
-
};
|
|
158
|
-
// For widget deployments
|
|
159
|
-
if (context.tableName === 'sp_widget' || context.artifactType === 'widget') {
|
|
160
|
-
fallbackConfig.alternative_deployment = {
|
|
161
|
-
method: 'manual_steps',
|
|
162
|
-
generate_script: true,
|
|
163
|
-
instructions: [
|
|
164
|
-
'1. Switch to Global application scope',
|
|
165
|
-
'2. Navigate to Service Portal > Widgets',
|
|
166
|
-
'3. Click New and paste the generated code',
|
|
167
|
-
'4. Ensure you have an active Update Set'
|
|
168
|
-
]
|
|
169
|
-
};
|
|
170
|
-
}
|
|
171
|
-
return fallbackConfig;
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
exports.Queen403Handler = Queen403Handler;
|
|
175
|
-
//# sourceMappingURL=queen-403-handler.js.map
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Queen Agent Example Implementation
|
|
3
|
-
* Shows how to use the Queen Agent with Claude Code interface
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Example of how the Queen Agent integrates with Claude Code
|
|
7
|
-
* This would be called by the Snow-Flow CLI when launching a swarm
|
|
8
|
-
*/
|
|
9
|
-
export declare function launchQueenAgentSwarm(objective: string): Promise<void>;
|
|
10
|
-
/**
|
|
11
|
-
* Example of how Claude Code would interact with the Queen Agent
|
|
12
|
-
* This demonstrates the TodoWrite integration pattern
|
|
13
|
-
*/
|
|
14
|
-
export declare function claudeCodeIntegration(): void;
|
|
15
|
-
/**
|
|
16
|
-
* Example of complex objective handling
|
|
17
|
-
*/
|
|
18
|
-
export declare function handleComplexObjective(): Promise<void>;
|
|
19
|
-
/**
|
|
20
|
-
* Example of error recovery and fallback
|
|
21
|
-
*/
|
|
22
|
-
export declare function demonstrateErrorRecovery(): Promise<void>;
|
|
23
|
-
//# sourceMappingURL=queen-agent-example.d.ts.map
|