snow-flow 1.1.67 → 1.1.69
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/dist/cli.js +45 -480
- package/dist/cli.js.map +1 -1
- package/dist/mcp/servicenow-intelligent-mcp.js +102 -49
- package/dist/mcp/servicenow-intelligent-mcp.js.map +1 -1
- package/dist/mcp/servicenow-operations-mcp.js +556 -0
- package/dist/mcp/servicenow-operations-mcp.js.map +1 -1
- package/dist/orchestrator/flow-composer.d.ts +6 -0
- package/dist/orchestrator/flow-composer.d.ts.map +1 -1
- package/dist/orchestrator/flow-composer.js +106 -9
- package/dist/orchestrator/flow-composer.js.map +1 -1
- package/dist/strategies/global-scope-strategy.d.ts.map +1 -1
- package/dist/strategies/global-scope-strategy.js +8 -1
- package/dist/strategies/global-scope-strategy.js.map +1 -1
- package/dist/version.d.ts +11 -1
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +52 -1
- package/dist/version.js.map +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -443,100 +443,16 @@ ${hasIntelligentFeatures ? `
|
|
|
443
443
|
- **Agent Requirements**: ${taskAnalysis.primaryAgent} (lead) + ${taskAnalysis.supportingAgents.join(', ')} (support)
|
|
444
444
|
- **Complexity Assessment**: ${taskAnalysis.complexity} task requiring ${taskAnalysis.estimatedAgentCount} agents
|
|
445
445
|
|
|
446
|
-
## ServiceNow Integration
|
|
447
|
-
${isAuthenticated ? '✅ **Live ServiceNow
|
|
446
|
+
## 🔧 ServiceNow Integration
|
|
447
|
+
${isAuthenticated ? '✅ **Live ServiceNow Access: ENABLED**' : '❌ **ServiceNow Access: DISABLED** - Run \`snow-flow auth login\` to enable'}
|
|
448
448
|
|
|
449
449
|
${isAuthenticated ? `
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
🚨 **CRITICAL: You have ServiceNow MCP tools available for direct deployment:**
|
|
453
|
-
|
|
454
|
-
Available ServiceNow MCP Tools:
|
|
455
|
-
- **ServiceNowClient**: Create widgets, workflows, and applications directly
|
|
456
|
-
- **ServiceNowOAuth**: Authenticated access to ServiceNow APIs
|
|
457
|
-
- **Direct API Access**: Use REST APIs to create and deploy artifacts immediately
|
|
458
|
-
|
|
459
|
-
**MANDATORY: Use ServiceNow API calls to deploy widgets directly:**
|
|
460
|
-
1. **Create artifacts in ServiceNow using ServiceNowClient.createWidget()**
|
|
461
|
-
2. **Test functionality immediately in the live ServiceNow instance**
|
|
462
|
-
3. **Generate update sets for deployment**
|
|
463
|
-
4. **Provide direct links to created artifacts**
|
|
464
|
-
|
|
465
|
-
⚠️ **DO NOT say you cannot deploy to ServiceNow** - you CAN and SHOULD deploy directly using the available ServiceNow API tools!
|
|
466
|
-
|
|
467
|
-
**Example ServiceNow Widget Creation:**
|
|
468
|
-
\`\`\`typescript
|
|
469
|
-
import { ServiceNowClient } from '../utils/servicenow-client.js';
|
|
470
|
-
|
|
471
|
-
const client = new ServiceNowClient();
|
|
472
|
-
const widget = await client.createWidget({
|
|
473
|
-
name: 'incident_management_widget',
|
|
474
|
-
title: 'Incident Management Widget',
|
|
475
|
-
description: 'Enhanced incident management with visual features',
|
|
476
|
-
template: '<!-- Your HTML template -->',
|
|
477
|
-
css: '/* Your CSS styles */',
|
|
478
|
-
client_script: '/* Your client-side JavaScript */',
|
|
479
|
-
server_script: '/* Your server-side script */',
|
|
480
|
-
category: 'incident'
|
|
481
|
-
});
|
|
482
|
-
\`\`\`
|
|
450
|
+
You have access to comprehensive ServiceNow MCP tools for development:
|
|
483
451
|
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
// Deploy widget using MCP deployment tool
|
|
487
|
-
await snow_deploy_widget({
|
|
488
|
-
name: 'incident_management_widget',
|
|
489
|
-
title: 'Incident Management Widget',
|
|
490
|
-
description: 'Enhanced incident management with visual features',
|
|
491
|
-
template: widgetHTML,
|
|
492
|
-
css: widgetCSS,
|
|
493
|
-
client_script: clientScript,
|
|
494
|
-
server_script: serverScript,
|
|
495
|
-
category: 'incident'
|
|
496
|
-
});
|
|
497
|
-
|
|
498
|
-
// Deploy Flow Designer flow using MCP deployment tool
|
|
499
|
-
await snow_deploy_flow({
|
|
500
|
-
name: 'approval_flow',
|
|
501
|
-
description: 'Approval flow for purchases',
|
|
502
|
-
table: 'sc_request',
|
|
503
|
-
trigger_type: 'record_created',
|
|
504
|
-
condition: 'category=hardware^item=iphone',
|
|
505
|
-
flow_definition: flowJSON,
|
|
506
|
-
category: 'approval'
|
|
507
|
-
});
|
|
508
|
-
\`\`\`
|
|
509
|
-
|
|
510
|
-
**ALTERNATIVE: Use Direct Widget Creator for pre-built widgets:**
|
|
511
|
-
\`\`\`typescript
|
|
512
|
-
import { DirectWidgetCreator } from '../cli/direct-widget-creator.js';
|
|
513
|
-
|
|
514
|
-
const creator = new DirectWidgetCreator();
|
|
515
|
-
await creator.createIncidentManagementWidget();
|
|
516
|
-
\`\`\`
|
|
452
|
+
### 📦 ServiceNow MCP Tools Available:
|
|
453
|
+
You have access to comprehensive MCP tools for ServiceNow development including deployment, discovery, testing, and operations capabilities.
|
|
517
454
|
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
📦 **Available Deployment MCP Tools:**
|
|
521
|
-
- snow_deploy_widget - Deploy widgets with full configuration
|
|
522
|
-
- snow_deploy_flow - Deploy Flow Designer flows
|
|
523
|
-
- snow_deploy_application - Deploy scoped applications
|
|
524
|
-
- snow_deploy_update_set - Create update sets
|
|
525
|
-
- snow_validate_deployment - Validate before deploying
|
|
526
|
-
- snow_rollback_deployment - Rollback if needed
|
|
527
|
-
|
|
528
|
-
🧠 **Intelligent Flow Composition Tools:**
|
|
529
|
-
- snow_create_complex_flow - Create complete flows with automatic artifact orchestration
|
|
530
|
-
- snow_analyze_flow_instruction - Analyze natural language flow instructions
|
|
531
|
-
- snow_discover_flow_artifacts - Discover artifacts needed for complex flows
|
|
532
|
-
- snow_preview_flow_structure - Preview flow structure before deployment
|
|
533
|
-
|
|
534
|
-
🎯 **Flow Composition Capabilities:**
|
|
535
|
-
- Automatic discovery of existing ServiceNow artifacts (script includes, business rules, tables)
|
|
536
|
-
- Intelligent artifact orchestration in flows
|
|
537
|
-
- Natural language processing for complex flow instructions
|
|
538
|
-
- Fallback creation for missing artifacts
|
|
539
|
-
- Multi-artifact coordination and deployment
|
|
455
|
+
💡 **Refer to CLAUDE.md for complete MCP tool documentation and examples**
|
|
540
456
|
` : `
|
|
541
457
|
📝 **File-based development mode**
|
|
542
458
|
|
|
@@ -549,245 +465,45 @@ Since ServiceNow integration is not enabled, create artifacts as files in the se
|
|
|
549
465
|
💡 Run "snow-flow auth login" to enable live ServiceNow integration!
|
|
550
466
|
`}
|
|
551
467
|
|
|
552
|
-
##
|
|
553
|
-
|
|
554
|
-
⚠️ **MANDATORY EXECUTION PATTERN**: You MUST execute ALL of these tools in a SINGLE MESSAGE for parallel agent coordination:
|
|
468
|
+
## 🚀 Development Approach
|
|
555
469
|
|
|
556
470
|
${hasIntelligentFeatures && isAuthenticated ? `
|
|
557
|
-
### 🧠
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
live_testing: ${options.liveTesting},
|
|
568
|
-
auto_deploy: ${options.autoDeploy},
|
|
569
|
-
auto_rollback: ${options.autoRollback},
|
|
570
|
-
shared_memory: ${options.sharedMemory},
|
|
571
|
-
progress_monitoring: ${options.progressMonitoring},
|
|
572
|
-
max_agents: ${options.maxAgents},
|
|
573
|
-
strategy: "${options.strategy}",
|
|
574
|
-
mode: "${options.mode}",
|
|
575
|
-
task_analysis: ${JSON.stringify(taskAnalysis, null, 2)}
|
|
576
|
-
});
|
|
577
|
-
\`\`\`
|
|
578
|
-
|
|
579
|
-
This unified command will:
|
|
580
|
-
- ✅ Automatically analyze requirements with snow_analyze_requirements
|
|
581
|
-
- ✅ Escalate permissions when needed with snow_escalate_permissions
|
|
582
|
-
- ✅ Discover and reuse existing artifacts
|
|
583
|
-
- ✅ Create missing components automatically
|
|
584
|
-
- ✅ Test in real-time with snow_comprehensive_flow_test
|
|
585
|
-
- ✅ Deploy with snow_resilient_deployment
|
|
586
|
-
- ✅ Rollback on failures automatically
|
|
587
|
-
- ✅ Track everything in update sets with snow_smart_update_set
|
|
588
|
-
- ✅ Share context across all agents via memory
|
|
589
|
-
|
|
590
|
-
### Additional Intelligent Tools Available:
|
|
591
|
-
|
|
592
|
-
**For Permission Issues:**
|
|
593
|
-
\`\`\`typescript
|
|
594
|
-
await snow_escalate_permissions({
|
|
595
|
-
required_role: "admin",
|
|
596
|
-
reason: "Need to create global scope artifacts"
|
|
597
|
-
});
|
|
598
|
-
\`\`\`
|
|
599
|
-
|
|
600
|
-
**For Smart Discovery:**
|
|
601
|
-
\`\`\`typescript
|
|
602
|
-
const requirements = await snow_analyze_requirements({
|
|
603
|
-
objective: "${objective}",
|
|
604
|
-
include_dependencies: true,
|
|
605
|
-
suggest_reusable: true
|
|
606
|
-
});
|
|
607
|
-
\`\`\`
|
|
608
|
-
|
|
609
|
-
**For Automatic Testing:**
|
|
610
|
-
\`\`\`typescript
|
|
611
|
-
const testResults = await snow_comprehensive_flow_test({
|
|
612
|
-
flow_name: "approval_flow",
|
|
613
|
-
test_scenarios: ["happy_path", "edge_cases", "error_handling"],
|
|
614
|
-
auto_fix: true
|
|
615
|
-
});
|
|
616
|
-
\`\`\`
|
|
617
|
-
|
|
618
|
-
**For Resilient Deployment:**
|
|
619
|
-
\`\`\`typescript
|
|
620
|
-
await snow_resilient_deployment({
|
|
621
|
-
artifacts: ["widget_123", "flow_456"],
|
|
622
|
-
validation_level: "comprehensive",
|
|
623
|
-
rollback_on_failure: true,
|
|
624
|
-
deployment_strategy: "blue_green"
|
|
625
|
-
});
|
|
626
|
-
\`\`\`
|
|
627
|
-
|
|
471
|
+
### 🧠 Intelligent Mode Available
|
|
472
|
+
With intelligent features enabled, you can use automated orchestration tools that handle:
|
|
473
|
+
- Requirements analysis and discovery
|
|
474
|
+
- Permission escalation when needed
|
|
475
|
+
- Existing artifact reuse
|
|
476
|
+
- Real-time testing and validation
|
|
477
|
+
- Automatic rollback on failures
|
|
478
|
+
- Update Set management
|
|
479
|
+
|
|
480
|
+
Use \`snow_orchestrate_development\` for complete automation.
|
|
628
481
|
` : `
|
|
629
|
-
###
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
\`\`\`typescript
|
|
638
|
-
// Tool 1: TodoWrite (5-10 todos in one call)
|
|
639
|
-
TodoWrite([
|
|
640
|
-
{
|
|
641
|
-
id: "task_analysis",
|
|
642
|
-
content: "Analyze ${objective} requirements and constraints",
|
|
643
|
-
status: "pending",
|
|
644
|
-
priority: "high"
|
|
645
|
-
},
|
|
646
|
-
{
|
|
647
|
-
id: "architecture_design",
|
|
648
|
-
content: "Design ServiceNow architecture and component structure",
|
|
649
|
-
status: "pending",
|
|
650
|
-
priority: "high"
|
|
651
|
-
},
|
|
652
|
-
${taskAnalysis.requiresUpdateSet ? `{
|
|
653
|
-
id: "update_set_creation",
|
|
654
|
-
content: "Create Update Set for change management",
|
|
655
|
-
status: "pending",
|
|
656
|
-
priority: "high"
|
|
657
|
-
},` : ''}
|
|
658
|
-
${taskAnalysis.requiresApplication ? `{
|
|
659
|
-
id: "application_creation",
|
|
660
|
-
content: "Create new ServiceNow Application",
|
|
661
|
-
status: "pending",
|
|
662
|
-
priority: "high"
|
|
663
|
-
},` : ''}
|
|
664
|
-
{
|
|
665
|
-
id: "implementation",
|
|
666
|
-
content: "Implement ${objective}${isAuthenticated ? ' directly in ServiceNow' : ' as files'}",
|
|
667
|
-
status: "pending",
|
|
668
|
-
priority: "high"
|
|
669
|
-
},
|
|
670
|
-
{
|
|
671
|
-
id: "testing",
|
|
672
|
-
content: "Test and validate ${objective}${isAuthenticated ? ' in ServiceNow instance' : ' via file validation'}",
|
|
673
|
-
status: "pending",
|
|
674
|
-
priority: "medium"
|
|
675
|
-
},
|
|
676
|
-
{
|
|
677
|
-
id: "documentation",
|
|
678
|
-
content: "Document ${objective}${isAuthenticated ? ' with ServiceNow links' : ' with file references'}",
|
|
679
|
-
status: "pending",
|
|
680
|
-
priority: "medium"
|
|
681
|
-
},
|
|
682
|
-
{
|
|
683
|
-
id: "deployment",
|
|
684
|
-
content: "Prepare deployment artifacts and instructions",
|
|
685
|
-
status: "pending",
|
|
686
|
-
priority: "low"
|
|
687
|
-
}
|
|
688
|
-
]);
|
|
689
|
-
|
|
690
|
-
// Tool 2-N: Task agents (ALL launched in same message) - Respecting user's --max-agents flag
|
|
691
|
-
Task("${taskAnalysis.primaryAgent}", "${agent_detector_js_1.AgentDetector.generateAgentPrompt(taskAnalysis.primaryAgent, objective, taskAnalysis)}");
|
|
692
|
-
${(() => {
|
|
693
|
-
const userMaxAgents = parseInt(options.maxAgents);
|
|
694
|
-
const requiredAgents = [
|
|
695
|
-
...(taskAnalysis.requiresUpdateSet ? ['Update Set Manager'] : []),
|
|
696
|
-
...(taskAnalysis.requiresApplication ? ['Application Manager'] : [])
|
|
697
|
-
];
|
|
698
|
-
// Calculate available slots for supporting agents (user max - 1 primary - required agents)
|
|
699
|
-
const availableSlotsForSupporting = Math.max(0, userMaxAgents - 1 - requiredAgents.length);
|
|
700
|
-
// Take only the supporting agents that fit within user's limit
|
|
701
|
-
const adjustedSupportingAgents = taskAnalysis.supportingAgents.slice(0, availableSlotsForSupporting);
|
|
702
|
-
return adjustedSupportingAgents.map(agent => `Task("${agent}", "${agent_detector_js_1.AgentDetector.generateAgentPrompt(agent, objective, taskAnalysis)}");`).join('\n');
|
|
703
|
-
})()}
|
|
704
|
-
${taskAnalysis.requiresUpdateSet ? `Task("Update Set Manager", "Create and manage Update Set for change management. Use snow_update_set_create to create Update Set automatically.");` : ''}
|
|
705
|
-
${taskAnalysis.requiresApplication ? `Task("Application Manager", "Create new ServiceNow Application. Use snow_deploy_application to create new application scope.");` : ''}
|
|
706
|
-
|
|
707
|
-
// Tool 7: Memory coordination data
|
|
708
|
-
Memory.store("snow_flow_session", {
|
|
709
|
-
objective: "${objective}",
|
|
710
|
-
task_type: "${taskAnalysis.taskType}",
|
|
711
|
-
primary_agent: "${taskAnalysis.primaryAgent}",
|
|
712
|
-
supporting_agents: ${JSON.stringify((() => {
|
|
713
|
-
const userMaxAgents = parseInt(options.maxAgents);
|
|
714
|
-
const requiredAgents = [
|
|
715
|
-
...(taskAnalysis.requiresUpdateSet ? ['Update Set Manager'] : []),
|
|
716
|
-
...(taskAnalysis.requiresApplication ? ['Application Manager'] : [])
|
|
717
|
-
];
|
|
718
|
-
const availableSlotsForSupporting = Math.max(0, userMaxAgents - 1 - requiredAgents.length);
|
|
719
|
-
return taskAnalysis.supportingAgents.slice(0, availableSlotsForSupporting);
|
|
720
|
-
})())},
|
|
721
|
-
complexity: "${taskAnalysis.complexity}",
|
|
722
|
-
servicenow_artifacts: ${JSON.stringify(taskAnalysis.serviceNowArtifacts)},
|
|
723
|
-
requires_update_set: ${taskAnalysis.requiresUpdateSet},
|
|
724
|
-
requires_application: ${taskAnalysis.requiresApplication},
|
|
725
|
-
strategy: "${options.strategy}",
|
|
726
|
-
mode: "${options.mode}",
|
|
727
|
-
started_at: new Date().toISOString(),
|
|
728
|
-
user_requested_max_agents: ${parseInt(options.maxAgents)},
|
|
729
|
-
actual_agents_spawned: ${(() => {
|
|
730
|
-
const userMaxAgents = parseInt(options.maxAgents);
|
|
731
|
-
const requiredAgents = [
|
|
732
|
-
...(taskAnalysis.requiresUpdateSet ? ['Update Set Manager'] : []),
|
|
733
|
-
...(taskAnalysis.requiresApplication ? ['Application Manager'] : [])
|
|
734
|
-
];
|
|
735
|
-
const availableSlotsForSupporting = Math.max(0, userMaxAgents - 1 - requiredAgents.length);
|
|
736
|
-
const adjustedSupportingAgents = taskAnalysis.supportingAgents.slice(0, availableSlotsForSupporting);
|
|
737
|
-
return 1 + adjustedSupportingAgents.length + requiredAgents.length; // primary + supporting + required
|
|
738
|
-
})()},
|
|
739
|
-
estimated_agents: ${taskAnalysis.estimatedAgentCount},
|
|
740
|
-
parallel: ${options.parallel},
|
|
741
|
-
authenticated: ${isAuthenticated}
|
|
742
|
-
});
|
|
743
|
-
|
|
744
|
-
Memory.store("task_analysis", ${JSON.stringify(taskAnalysis, null, 2)});
|
|
745
|
-
\`\`\`
|
|
482
|
+
### 📋 Standard Development Mode
|
|
483
|
+
Execute these steps for ServiceNow development:
|
|
484
|
+
1. Use TodoWrite to track all tasks
|
|
485
|
+
2. Use Task tool for parallel agent coordination
|
|
486
|
+
3. Use Memory for shared context between agents
|
|
487
|
+
4. Follow the team-based SPARC approach shown above
|
|
488
|
+
`}
|
|
746
489
|
|
|
747
|
-
###
|
|
490
|
+
### 🎯 Development Process
|
|
748
491
|
${getServiceNowInstructions(taskAnalysis.taskType)}
|
|
749
492
|
|
|
750
|
-
|
|
751
|
-
- **BATCH EXECUTION**: All tools must be called in ONE message
|
|
752
|
-
- **PARALLEL AGENTS**: Launch multiple Task agents simultaneously
|
|
753
|
-
- **MEMORY SHARING**: All agents use Memory for coordination
|
|
754
|
-
- **REAL-TIME UPDATES**: Update TodoWrite status as tasks complete
|
|
755
|
-
${isAuthenticated ? '- **MANDATORY DEPLOYMENT**: You MUST deploy directly to ServiceNow using ServiceNowClient.createWidget()' : '- **FILE MODE**: Create artifacts in servicenow/ directory'}
|
|
756
|
-
- **COMPREHENSIVE TESTING**: ${isAuthenticated ? 'Test functionality immediately in the live ServiceNow instance' : 'Validate file structure and syntax'}
|
|
757
|
-
${isAuthenticated ? '- **NO EXCUSES**: Do NOT say you cannot deploy - you CAN and MUST deploy to ServiceNow!' : ''}
|
|
758
|
-
|
|
759
|
-
## Expected Deliverables
|
|
493
|
+
## 📊 Expected Deliverables
|
|
760
494
|
${getExpectedDeliverables(taskAnalysis.taskType, isAuthenticated)}
|
|
761
495
|
|
|
762
|
-
##
|
|
496
|
+
## 📚 Development Guidelines
|
|
763
497
|
|
|
764
|
-
|
|
765
|
-
**CRITICAL**: For user groups, use \`sys_user_group\` table directly:
|
|
766
|
-
|
|
767
|
-
\`\`\`typescript
|
|
768
|
-
// ✅ CORRECT: Create user group record
|
|
769
|
-
await snow_operations_create_record({
|
|
770
|
-
table: 'sys_user_group',
|
|
771
|
-
data: {
|
|
772
|
-
name: 'need_approval',
|
|
773
|
-
description: 'Users pending admin approval',
|
|
774
|
-
type: 'custom'
|
|
775
|
-
}
|
|
776
|
-
});
|
|
777
|
-
|
|
778
|
-
// ❌ WRONG: Don't use CMDB search for groups
|
|
779
|
-
// snow_cmdb_search() is for Configuration Items only!
|
|
780
|
-
// snow_discover_platform_tables() is for development tables only!
|
|
781
|
-
\`\`\`
|
|
498
|
+
${isAuthenticated ? `✅ **ServiceNow integration is enabled** - You can deploy directly to ServiceNow.` : '❌ **ServiceNow integration is disabled** - Files will be created locally.'}
|
|
782
499
|
|
|
783
|
-
|
|
784
|
-
-
|
|
785
|
-
-
|
|
786
|
-
-
|
|
500
|
+
📚 **Refer to CLAUDE.md for:**
|
|
501
|
+
- Complete command reference and examples
|
|
502
|
+
- Team-based SPARC architecture details
|
|
503
|
+
- MCP tool documentation
|
|
504
|
+
- Best practices and workflows
|
|
787
505
|
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
🎯 **EXECUTION INSTRUCTION**: Use team-based SPARC commands for best results!`;
|
|
506
|
+
🎯 **RECOMMENDATION**: Use the team-based SPARC commands shown above for optimal results!`;
|
|
791
507
|
return prompt;
|
|
792
508
|
}
|
|
793
509
|
function getTeamRecommendation(taskType) {
|
|
@@ -809,173 +525,22 @@ function getTeamRecommendation(taskType) {
|
|
|
809
525
|
}
|
|
810
526
|
}
|
|
811
527
|
function getServiceNowInstructions(taskType) {
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
- Implement CSS styling following ServiceNow design patterns
|
|
817
|
-
- Write AngularJS client controller
|
|
818
|
-
- Create server-side data processing script
|
|
819
|
-
- Define widget options and configuration
|
|
820
|
-
- Test widget in Service Portal`;
|
|
821
|
-
case 'application_development':
|
|
822
|
-
return `**Application Development Process:**
|
|
823
|
-
- Design database schema and tables
|
|
824
|
-
- Create business rules and validation
|
|
825
|
-
- Build user interface forms and lists
|
|
826
|
-
- Implement workflows and approvals
|
|
827
|
-
- Configure security and access controls
|
|
828
|
-
- Set up integration points`;
|
|
829
|
-
case 'flow_development':
|
|
830
|
-
return `**Flow Development Process:**
|
|
831
|
-
- Analyze flow requirements and triggers
|
|
832
|
-
- Design process flow and approval steps
|
|
833
|
-
- Create Flow Designer workflow using sys_hub_flow
|
|
834
|
-
- Set up notifications and communications
|
|
835
|
-
- Configure conditional logic and routing
|
|
836
|
-
- Test flow execution and error handling`;
|
|
837
|
-
case 'script_development':
|
|
838
|
-
return `**Script Development Process:**
|
|
839
|
-
- Analyze business requirements
|
|
840
|
-
- Design script architecture and data flow
|
|
841
|
-
- Implement business rules and script includes
|
|
842
|
-
- Create appropriate error handling
|
|
843
|
-
- Test script functionality
|
|
844
|
-
- Document script behavior`;
|
|
845
|
-
case 'integration_development':
|
|
846
|
-
return `**Integration Development Process:**
|
|
847
|
-
- Analyze integration requirements
|
|
848
|
-
- Design API endpoints and data mappings
|
|
849
|
-
- Implement REST/SOAP integrations
|
|
850
|
-
- Create authentication and security
|
|
851
|
-
- Test integration functionality
|
|
852
|
-
- Document API specifications`;
|
|
853
|
-
case 'database_development':
|
|
854
|
-
return `**Database Development Process:**
|
|
855
|
-
- Design table structures and relationships
|
|
856
|
-
- Create custom fields and configurations
|
|
857
|
-
- Implement data validation rules
|
|
858
|
-
- Set up reporting and analytics
|
|
859
|
-
- Test data integrity
|
|
860
|
-
- Document database schema`;
|
|
861
|
-
case 'reporting_development':
|
|
862
|
-
return `**Reporting Development Process:**
|
|
863
|
-
- Analyze reporting requirements
|
|
864
|
-
- Design report layouts and data sources
|
|
865
|
-
- Create dashboards and visualizations
|
|
866
|
-
- Implement filters and drill-downs
|
|
867
|
-
- Test report performance
|
|
868
|
-
- Document report usage`;
|
|
869
|
-
case 'research_task':
|
|
870
|
-
return `**Research Process:**
|
|
871
|
-
- Analyze current state and requirements
|
|
872
|
-
- Research ServiceNow best practices
|
|
873
|
-
- Evaluate available solutions
|
|
874
|
-
- Document findings and recommendations
|
|
875
|
-
- Create implementation roadmap
|
|
876
|
-
- Present research conclusions`;
|
|
877
|
-
default:
|
|
878
|
-
return `**ServiceNow Development Process:**
|
|
879
|
-
- Analyze requirements and specifications
|
|
880
|
-
- Design appropriate ServiceNow solution
|
|
881
|
-
- Implement using ServiceNow best practices
|
|
882
|
-
- Create necessary scripts and configurations
|
|
883
|
-
- Test functionality and integration
|
|
884
|
-
- Document implementation`;
|
|
885
|
-
}
|
|
528
|
+
const taskTitle = taskType.split('_').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join(' ');
|
|
529
|
+
return `**${taskTitle} Process:**
|
|
530
|
+
The team-based SPARC architecture will handle the complete development process.
|
|
531
|
+
Refer to CLAUDE.md for detailed instructions and best practices specific to ${taskType}.`;
|
|
886
532
|
}
|
|
887
533
|
function getExpectedDeliverables(taskType, isAuthenticated = false) {
|
|
888
|
-
const
|
|
889
|
-
'widget_development': [
|
|
890
|
-
'Widget HTML template',
|
|
891
|
-
'CSS styling files',
|
|
892
|
-
'AngularJS client script',
|
|
893
|
-
'Server-side script',
|
|
894
|
-
'Widget configuration options',
|
|
895
|
-
'Installation instructions'
|
|
896
|
-
],
|
|
897
|
-
'application_development': [
|
|
898
|
-
'Database schema definition',
|
|
899
|
-
'Business rules and validations',
|
|
900
|
-
'User interface components',
|
|
901
|
-
'Workflow definitions',
|
|
902
|
-
'Security configuration',
|
|
903
|
-
'Update set for deployment'
|
|
904
|
-
],
|
|
905
|
-
'flow_development': [
|
|
906
|
-
'Flow Designer workflow',
|
|
907
|
-
'Process documentation',
|
|
908
|
-
'Approval configurations',
|
|
909
|
-
'Notification templates',
|
|
910
|
-
'Test scenarios',
|
|
911
|
-
'Implementation guide'
|
|
912
|
-
],
|
|
913
|
-
'script_development': [
|
|
914
|
-
'Business rules and script includes',
|
|
915
|
-
'Error handling logic',
|
|
916
|
-
'Test cases and validation',
|
|
917
|
-
'Documentation and comments',
|
|
918
|
-
'Performance optimization',
|
|
919
|
-
'Security considerations'
|
|
920
|
-
],
|
|
921
|
-
'integration_development': [
|
|
922
|
-
'REST/SOAP API endpoints',
|
|
923
|
-
'Authentication configuration',
|
|
924
|
-
'Data mapping and transformation',
|
|
925
|
-
'Error handling and logging',
|
|
926
|
-
'API documentation',
|
|
927
|
-
'Integration testing'
|
|
928
|
-
],
|
|
929
|
-
'database_development': [
|
|
930
|
-
'Table structures and relationships',
|
|
931
|
-
'Custom fields and configurations',
|
|
932
|
-
'Data validation rules',
|
|
933
|
-
'Indexes and performance optimization',
|
|
934
|
-
'Reporting and analytics',
|
|
935
|
-
'Data migration scripts'
|
|
936
|
-
],
|
|
937
|
-
'reporting_development': [
|
|
938
|
-
'Report definitions and layouts',
|
|
939
|
-
'Dashboard configurations',
|
|
940
|
-
'Data source connections',
|
|
941
|
-
'Filters and drill-downs',
|
|
942
|
-
'Performance optimization',
|
|
943
|
-
'User access controls'
|
|
944
|
-
],
|
|
945
|
-
'research_task': [
|
|
946
|
-
'Research findings and analysis',
|
|
947
|
-
'Best practices documentation',
|
|
948
|
-
'Solution recommendations',
|
|
949
|
-
'Implementation roadmap',
|
|
950
|
-
'Risk assessment',
|
|
951
|
-
'Feasibility analysis'
|
|
952
|
-
],
|
|
953
|
-
'default': [
|
|
954
|
-
'ServiceNow implementation',
|
|
955
|
-
'Supporting scripts',
|
|
956
|
-
'Configuration files',
|
|
957
|
-
'Documentation',
|
|
958
|
-
'Test cases',
|
|
959
|
-
'Deployment instructions'
|
|
960
|
-
]
|
|
961
|
-
};
|
|
962
|
-
const deliverables = baseDeliverables[taskType] || baseDeliverables['default'];
|
|
534
|
+
const taskTitle = taskType.split('_').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join(' ');
|
|
963
535
|
if (isAuthenticated) {
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
serviceNowDeliverables.push('- Direct links to ServiceNow artifacts');
|
|
968
|
-
serviceNowDeliverables.push('- Update set for deployment');
|
|
969
|
-
serviceNowDeliverables.push('- Test results from live instance');
|
|
970
|
-
serviceNowDeliverables.push('- **CRITICAL: Widget must be deployed, not just created as files**');
|
|
971
|
-
return serviceNowDeliverables.join('\n');
|
|
536
|
+
return `The team will deliver a complete ${taskTitle.toLowerCase()} solution directly to ServiceNow.
|
|
537
|
+
All artifacts will be created in your ServiceNow instance with proper Update Set tracking.
|
|
538
|
+
Refer to CLAUDE.md for specific deliverables based on your task type.`;
|
|
972
539
|
}
|
|
973
540
|
else {
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
fileDeliverables.push('- Import instructions for ServiceNow');
|
|
978
|
-
return fileDeliverables.join('\n');
|
|
541
|
+
return `The team will create ${taskTitle.toLowerCase()} artifacts as local files.
|
|
542
|
+
Files will be organized in the servicenow/ directory for easy import.
|
|
543
|
+
Refer to CLAUDE.md for specific deliverables based on your task type.`;
|
|
979
544
|
}
|
|
980
545
|
}
|
|
981
546
|
// Helper function to analyze objectives using intelligent agent detection
|