snow-flow 4.5.23 → 4.5.25
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.md
CHANGED
|
@@ -655,11 +655,15 @@ Snow-Flow now automatically sets its Update Set as the user's current Update Set
|
|
|
655
655
|
- `snow_import_flow_from_xml` - Import flows from XML (only programmatic creation method)
|
|
656
656
|
|
|
657
657
|
**Agent Workspace Tools:**
|
|
658
|
-
- `snow_create_workspace` - Create agent workspace configurations
|
|
659
|
-
- `snow_create_workspace_tab` -
|
|
660
|
-
- `snow_create_contextual_panel` -
|
|
658
|
+
- `snow_create_workspace` - Create agent workspace configurations (uses sys_aw_master_config)
|
|
659
|
+
- `snow_create_workspace_tab` - **DEPRECATED:** Modern workspaces use UX pages
|
|
660
|
+
- `snow_create_contextual_panel` - **DEPRECATED:** Modern workspaces use UX components
|
|
661
661
|
- `snow_discover_workspaces` - Find all workspace configurations
|
|
662
662
|
|
|
663
|
+
**⚠️ IMPORTANT:** Modern ServiceNow Agent Workspaces use **UX Pages (sys_ux_*)** for configuration, not legacy sys_aw_* tables. Use UI Builder tools instead:
|
|
664
|
+
- **Workspace tabs** → Use `snow_add_uib_page_element` with UX page components
|
|
665
|
+
- **Contextual panels** → Use UI Builder component library with data brokers
|
|
666
|
+
|
|
663
667
|
**Mobile App Tools:**
|
|
664
668
|
- `snow_configure_mobile_app` - Configure mobile applications
|
|
665
669
|
- `snow_send_push_notification` - Send push notifications
|
|
@@ -165,7 +165,7 @@ class ServiceNowFlowWorkspaceMobileMCPEnhanced extends enhanced_base_mcp_server_
|
|
|
165
165
|
},
|
|
166
166
|
{
|
|
167
167
|
name: 'snow_create_workspace_form',
|
|
168
|
-
description: '
|
|
168
|
+
description: '⚠️ DEPRECATED: sys_aw_form table does not exist in modern ServiceNow. Use UI Builder form components instead.',
|
|
169
169
|
inputSchema: {
|
|
170
170
|
type: 'object',
|
|
171
171
|
properties: {
|
|
@@ -194,7 +194,7 @@ class ServiceNowFlowWorkspaceMobileMCPEnhanced extends enhanced_base_mcp_server_
|
|
|
194
194
|
},
|
|
195
195
|
{
|
|
196
196
|
name: 'snow_deploy_workspace',
|
|
197
|
-
description: '
|
|
197
|
+
description: '⚠️ DEPRECATED: sys_aw_workspace table incorrect. Use sys_aw_master_config for workspace deployment.',
|
|
198
198
|
inputSchema: {
|
|
199
199
|
type: 'object',
|
|
200
200
|
properties: {
|
|
@@ -548,7 +548,7 @@ Check execution details for results.`);
|
|
|
548
548
|
active: false
|
|
549
549
|
};
|
|
550
550
|
this.logger.progress('Creating workspace...');
|
|
551
|
-
const response = await this.createRecord('
|
|
551
|
+
const response = await this.createRecord('sys_aw_master_config', workspaceData);
|
|
552
552
|
if (!response.success) {
|
|
553
553
|
return this.createResponse(`❌ Failed to create workspace: ${response.error}`);
|
|
554
554
|
}
|
|
@@ -575,7 +575,26 @@ Check execution details for results.`);
|
|
|
575
575
|
icon: args.icon || ''
|
|
576
576
|
};
|
|
577
577
|
this.logger.progress('Adding tab...');
|
|
578
|
-
|
|
578
|
+
// DEPRECATED: Return proper MCP response for non-existent table
|
|
579
|
+
return {
|
|
580
|
+
content: [{
|
|
581
|
+
type: 'text',
|
|
582
|
+
text: `⚠️ DEPRECATED: sys_aw_tab table does not exist in modern ServiceNow
|
|
583
|
+
|
|
584
|
+
🚨 **Modern Approach Required:**
|
|
585
|
+
Modern Agent Workspaces use UX Pages (sys_ux_*) for tab configuration.
|
|
586
|
+
|
|
587
|
+
💡 **Use Instead:**
|
|
588
|
+
- snow_add_uib_page_element: Add components to UX pages
|
|
589
|
+
- snow_create_uib_page: Create custom workspace pages
|
|
590
|
+
- snow_create_uib_data_broker: Connect data sources
|
|
591
|
+
|
|
592
|
+
📋 **Migration Path:**
|
|
593
|
+
1. Use snow_create_uib_page for workspace layout
|
|
594
|
+
2. Use snow_add_uib_page_element to add table components
|
|
595
|
+
3. Configure through UI Builder instead of legacy tables`
|
|
596
|
+
}]
|
|
597
|
+
};
|
|
579
598
|
if (!response.success) {
|
|
580
599
|
return this.createResponse(`❌ Failed to add tab: ${response.error}`);
|
|
581
600
|
}
|
|
@@ -599,7 +618,21 @@ Check execution details for results.`);
|
|
|
599
618
|
order_by: args.order_by || ''
|
|
600
619
|
};
|
|
601
620
|
this.logger.progress('Adding list...');
|
|
602
|
-
|
|
621
|
+
// DEPRECATED: Return proper MCP response for non-existent table
|
|
622
|
+
return {
|
|
623
|
+
content: [{
|
|
624
|
+
type: 'text',
|
|
625
|
+
text: `⚠️ DEPRECATED: sys_aw_list table does not exist in modern ServiceNow
|
|
626
|
+
|
|
627
|
+
💡 **Modern Alternative:**
|
|
628
|
+
Use UI Builder list components for workspace lists.
|
|
629
|
+
|
|
630
|
+
🛠️ **Recommended Tools:**
|
|
631
|
+
- snow_create_uib_component: Create custom list component
|
|
632
|
+
- snow_create_uib_data_broker: Connect list to data source
|
|
633
|
+
- snow_add_uib_page_element: Add list to workspace page`
|
|
634
|
+
}]
|
|
635
|
+
};
|
|
603
636
|
if (!response.success) {
|
|
604
637
|
return this.createResponse(`❌ Failed to add list: ${response.error}`);
|
|
605
638
|
}
|
|
@@ -622,7 +655,21 @@ Check execution details for results.`);
|
|
|
622
655
|
fields: args.fields?.join(',') || ''
|
|
623
656
|
};
|
|
624
657
|
this.logger.progress('Creating form...');
|
|
625
|
-
|
|
658
|
+
// DEPRECATED: Return proper MCP response for non-existent table
|
|
659
|
+
return {
|
|
660
|
+
content: [{
|
|
661
|
+
type: 'text',
|
|
662
|
+
text: `⚠️ DEPRECATED: sys_aw_form table does not exist in modern ServiceNow
|
|
663
|
+
|
|
664
|
+
💡 **Modern Alternative:**
|
|
665
|
+
Use UI Builder form components for workspace forms.
|
|
666
|
+
|
|
667
|
+
🛠️ **Recommended Tools:**
|
|
668
|
+
- snow_create_uib_component: Create custom form component
|
|
669
|
+
- snow_create_uib_page: Create form pages
|
|
670
|
+
- Standard ServiceNow form designer for record forms`
|
|
671
|
+
}]
|
|
672
|
+
};
|
|
626
673
|
if (!response.success) {
|
|
627
674
|
return this.createResponse(`❌ Failed to create form: ${response.error}`);
|
|
628
675
|
}
|
|
@@ -646,7 +693,21 @@ Check execution details for results.`);
|
|
|
646
693
|
condition: args.condition || ''
|
|
647
694
|
};
|
|
648
695
|
this.logger.progress('Adding UI action...');
|
|
649
|
-
|
|
696
|
+
// DEPRECATED: Return proper MCP response for non-existent table
|
|
697
|
+
return {
|
|
698
|
+
content: [{
|
|
699
|
+
type: 'text',
|
|
700
|
+
text: `⚠️ DEPRECATED: sys_aw_ui_action table does not exist in modern ServiceNow
|
|
701
|
+
|
|
702
|
+
💡 **Modern Alternative:**
|
|
703
|
+
Use UI Builder action components for workspace actions.
|
|
704
|
+
|
|
705
|
+
🛠️ **Recommended Tools:**
|
|
706
|
+
- snow_create_uib_component: Create custom action components
|
|
707
|
+
- Standard ServiceNow UI Actions for record actions
|
|
708
|
+
- UI Builder event system for custom interactions`
|
|
709
|
+
}]
|
|
710
|
+
};
|
|
650
711
|
if (!response.success) {
|
|
651
712
|
return this.createResponse(`❌ Failed to add UI action: ${response.error}`);
|
|
652
713
|
}
|
|
@@ -664,7 +725,7 @@ Check execution details for results.`);
|
|
|
664
725
|
roles: args.roles?.join(',') || ''
|
|
665
726
|
};
|
|
666
727
|
this.logger.progress('Deploying workspace...');
|
|
667
|
-
const response = await this.updateRecord('
|
|
728
|
+
const response = await this.updateRecord('sys_aw_master_config', args.workspace_id, updateData);
|
|
668
729
|
if (!response.success) {
|
|
669
730
|
return this.createResponse(`❌ Failed to deploy workspace: ${response.error}`);
|
|
670
731
|
}
|
|
@@ -1345,25 +1345,16 @@ ${executionList}
|
|
|
1345
1345
|
catch (searchError) {
|
|
1346
1346
|
this.logger.warn('Could not create search config, workspace created without search:', searchError);
|
|
1347
1347
|
}
|
|
1348
|
-
//
|
|
1348
|
+
// UPDATED: Modern workspace tab creation guidance
|
|
1349
|
+
let tabsCreated = 0;
|
|
1350
|
+
let modernWorkspaceNote = '';
|
|
1349
1351
|
if (args.tables && args.tables.length > 0) {
|
|
1350
|
-
|
|
1351
|
-
|
|
1352
|
+
modernWorkspaceNote = `\n\n📋 **Tab Configuration Required:**\nModern Agent Workspaces use UX Pages for tabs. Configure tabs through:\n`;
|
|
1353
|
+
for (const table of args.tables) {
|
|
1352
1354
|
const tabLabel = table.replace(/_/g, ' ').replace(/\b\w/g, (l) => l.toUpperCase());
|
|
1353
|
-
|
|
1354
|
-
await this.client.createRecord('sys_aw_tab', {
|
|
1355
|
-
workspace: workspaceId,
|
|
1356
|
-
table: table,
|
|
1357
|
-
label: tabLabel,
|
|
1358
|
-
name: `${table}_tab`,
|
|
1359
|
-
order: (i + 1) * 100,
|
|
1360
|
-
active: true
|
|
1361
|
-
});
|
|
1362
|
-
}
|
|
1363
|
-
catch (tabError) {
|
|
1364
|
-
this.logger.warn(`Could not create tab for table ${table}:`, tabError);
|
|
1365
|
-
}
|
|
1355
|
+
modernWorkspaceNote += `\n• **${tabLabel}**: Use snow_add_uib_page_element to add ${table} components`;
|
|
1366
1356
|
}
|
|
1357
|
+
modernWorkspaceNote += `\n\n💡 **Modern Approach:**\n1. Use snow_create_uib_page for custom workspace pages\n2. Use snow_add_uib_page_element to add table components\n3. Use snow_create_uib_data_broker for data connections`;
|
|
1367
1358
|
}
|
|
1368
1359
|
return {
|
|
1369
1360
|
content: [{
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "snow-flow",
|
|
3
|
-
"version": "4.5.
|
|
3
|
+
"version": "4.5.25",
|
|
4
4
|
"description": "Conversational ServiceNow development platform using Claude Code. Multi-agent orchestration with 20+ MCP servers providing 200+ ServiceNow tools for comprehensive platform development.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"type": "commonjs",
|