snow-flow 1.1.0

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.
Files changed (240) hide show
  1. package/.env.example +49 -0
  2. package/.mcp.json +106 -0
  3. package/.mcp.json.template +106 -0
  4. package/LICENSE +21 -0
  5. package/README.md +236 -0
  6. package/bin/snow-flow +4 -0
  7. package/bin/snow-flow.js +3 -0
  8. package/claude-flow +79 -0
  9. package/claude-flow.bat +18 -0
  10. package/claude-flow.config.json +20 -0
  11. package/claude-flow.ps1 +24 -0
  12. package/dist/agents/app-creator.agent.d.ts +55 -0
  13. package/dist/agents/app-creator.agent.d.ts.map +1 -0
  14. package/dist/agents/app-creator.agent.js +1292 -0
  15. package/dist/agents/app-creator.agent.js.map +1 -0
  16. package/dist/agents/base-snow-agent.d.ts +63 -0
  17. package/dist/agents/base-snow-agent.d.ts.map +1 -0
  18. package/dist/agents/base-snow-agent.js +296 -0
  19. package/dist/agents/base-snow-agent.js.map +1 -0
  20. package/dist/agents/script-generator.agent.d.ts +32 -0
  21. package/dist/agents/script-generator.agent.d.ts.map +1 -0
  22. package/dist/agents/script-generator.agent.js +772 -0
  23. package/dist/agents/script-generator.agent.js.map +1 -0
  24. package/dist/agents/ui-builder.agent.d.ts +50 -0
  25. package/dist/agents/ui-builder.agent.d.ts.map +1 -0
  26. package/dist/agents/ui-builder.agent.js +1539 -0
  27. package/dist/agents/ui-builder.agent.js.map +1 -0
  28. package/dist/agents/widget-builder.agent.d.ts +32 -0
  29. package/dist/agents/widget-builder.agent.d.ts.map +1 -0
  30. package/dist/agents/widget-builder.agent.js +439 -0
  31. package/dist/agents/widget-builder.agent.js.map +1 -0
  32. package/dist/agents/workflow-designer.agent.d.ts +31 -0
  33. package/dist/agents/workflow-designer.agent.d.ts.map +1 -0
  34. package/dist/agents/workflow-designer.agent.js +583 -0
  35. package/dist/agents/workflow-designer.agent.js.map +1 -0
  36. package/dist/api/error-handling.d.ts +214 -0
  37. package/dist/api/error-handling.d.ts.map +1 -0
  38. package/dist/api/error-handling.js +594 -0
  39. package/dist/api/error-handling.js.map +1 -0
  40. package/dist/api/flow-designer-api.d.ts +167 -0
  41. package/dist/api/flow-designer-api.d.ts.map +1 -0
  42. package/dist/api/flow-designer-api.js +555 -0
  43. package/dist/api/flow-designer-api.js.map +1 -0
  44. package/dist/api/natural-language-mapper.d.ts +126 -0
  45. package/dist/api/natural-language-mapper.d.ts.map +1 -0
  46. package/dist/api/natural-language-mapper.js +498 -0
  47. package/dist/api/natural-language-mapper.js.map +1 -0
  48. package/dist/api/performance-optimizer.d.ts +240 -0
  49. package/dist/api/performance-optimizer.d.ts.map +1 -0
  50. package/dist/api/performance-optimizer.js +701 -0
  51. package/dist/api/performance-optimizer.js.map +1 -0
  52. package/dist/api/transaction-manager.d.ts +189 -0
  53. package/dist/api/transaction-manager.d.ts.map +1 -0
  54. package/dist/api/transaction-manager.js +576 -0
  55. package/dist/api/transaction-manager.js.map +1 -0
  56. package/dist/cli/deploy-artifact.d.ts +7 -0
  57. package/dist/cli/deploy-artifact.d.ts.map +1 -0
  58. package/dist/cli/deploy-artifact.js +279 -0
  59. package/dist/cli/deploy-artifact.js.map +1 -0
  60. package/dist/cli.d.ts +6 -0
  61. package/dist/cli.d.ts.map +1 -0
  62. package/dist/cli.js +2057 -0
  63. package/dist/cli.js.map +1 -0
  64. package/dist/index.d.ts +10 -0
  65. package/dist/index.d.ts.map +1 -0
  66. package/dist/index.js +35 -0
  67. package/dist/index.js.map +1 -0
  68. package/dist/managers/scope-manager.d.ts +75 -0
  69. package/dist/managers/scope-manager.d.ts.map +1 -0
  70. package/dist/managers/scope-manager.js +448 -0
  71. package/dist/managers/scope-manager.js.map +1 -0
  72. package/dist/mcp/mcp-wrapper.d.ts +8 -0
  73. package/dist/mcp/mcp-wrapper.d.ts.map +1 -0
  74. package/dist/mcp/mcp-wrapper.js +77 -0
  75. package/dist/mcp/mcp-wrapper.js.map +1 -0
  76. package/dist/mcp/servicenow-automation-mcp.d.ts +8 -0
  77. package/dist/mcp/servicenow-automation-mcp.d.ts.map +1 -0
  78. package/dist/mcp/servicenow-automation-mcp.js +683 -0
  79. package/dist/mcp/servicenow-automation-mcp.js.map +1 -0
  80. package/dist/mcp/servicenow-deployment-mcp.d.ts +7 -0
  81. package/dist/mcp/servicenow-deployment-mcp.d.ts.map +1 -0
  82. package/dist/mcp/servicenow-deployment-mcp.js +972 -0
  83. package/dist/mcp/servicenow-deployment-mcp.js.map +1 -0
  84. package/dist/mcp/servicenow-flow-composer-mcp.d.ts +7 -0
  85. package/dist/mcp/servicenow-flow-composer-mcp.d.ts.map +1 -0
  86. package/dist/mcp/servicenow-flow-composer-mcp.js +1121 -0
  87. package/dist/mcp/servicenow-flow-composer-mcp.js.map +1 -0
  88. package/dist/mcp/servicenow-graph-memory-mcp.d.ts +7 -0
  89. package/dist/mcp/servicenow-graph-memory-mcp.d.ts.map +1 -0
  90. package/dist/mcp/servicenow-graph-memory-mcp.js +703 -0
  91. package/dist/mcp/servicenow-graph-memory-mcp.js.map +1 -0
  92. package/dist/mcp/servicenow-integration-mcp.d.ts +8 -0
  93. package/dist/mcp/servicenow-integration-mcp.d.ts.map +1 -0
  94. package/dist/mcp/servicenow-integration-mcp.js +689 -0
  95. package/dist/mcp/servicenow-integration-mcp.js.map +1 -0
  96. package/dist/mcp/servicenow-intelligent-mcp.d.ts +7 -0
  97. package/dist/mcp/servicenow-intelligent-mcp.d.ts.map +1 -0
  98. package/dist/mcp/servicenow-intelligent-mcp.js +1138 -0
  99. package/dist/mcp/servicenow-intelligent-mcp.js.map +1 -0
  100. package/dist/mcp/servicenow-mcp-server.d.ts +37 -0
  101. package/dist/mcp/servicenow-mcp-server.d.ts.map +1 -0
  102. package/dist/mcp/servicenow-mcp-server.js +648 -0
  103. package/dist/mcp/servicenow-mcp-server.js.map +1 -0
  104. package/dist/mcp/servicenow-operations-mcp.d.ts +15 -0
  105. package/dist/mcp/servicenow-operations-mcp.d.ts.map +1 -0
  106. package/dist/mcp/servicenow-operations-mcp.js +1287 -0
  107. package/dist/mcp/servicenow-operations-mcp.js.map +1 -0
  108. package/dist/mcp/servicenow-platform-development-mcp.d.ts +8 -0
  109. package/dist/mcp/servicenow-platform-development-mcp.d.ts.map +1 -0
  110. package/dist/mcp/servicenow-platform-development-mcp.js +557 -0
  111. package/dist/mcp/servicenow-platform-development-mcp.js.map +1 -0
  112. package/dist/mcp/servicenow-progressive-indexer.d.ts +79 -0
  113. package/dist/mcp/servicenow-progressive-indexer.d.ts.map +1 -0
  114. package/dist/mcp/servicenow-progressive-indexer.js +320 -0
  115. package/dist/mcp/servicenow-progressive-indexer.js.map +1 -0
  116. package/dist/mcp/servicenow-reporting-analytics-mcp.d.ts +8 -0
  117. package/dist/mcp/servicenow-reporting-analytics-mcp.d.ts.map +1 -0
  118. package/dist/mcp/servicenow-reporting-analytics-mcp.js +888 -0
  119. package/dist/mcp/servicenow-reporting-analytics-mcp.js.map +1 -0
  120. package/dist/mcp/servicenow-security-compliance-mcp.d.ts +8 -0
  121. package/dist/mcp/servicenow-security-compliance-mcp.d.ts.map +1 -0
  122. package/dist/mcp/servicenow-security-compliance-mcp.js +812 -0
  123. package/dist/mcp/servicenow-security-compliance-mcp.js.map +1 -0
  124. package/dist/mcp/servicenow-update-set-mcp.d.ts +7 -0
  125. package/dist/mcp/servicenow-update-set-mcp.d.ts.map +1 -0
  126. package/dist/mcp/servicenow-update-set-mcp.js +599 -0
  127. package/dist/mcp/servicenow-update-set-mcp.js.map +1 -0
  128. package/dist/mcp/start-all-mcp-servers.d.ts +6 -0
  129. package/dist/mcp/start-all-mcp-servers.d.ts.map +1 -0
  130. package/dist/mcp/start-all-mcp-servers.js +65 -0
  131. package/dist/mcp/start-all-mcp-servers.js.map +1 -0
  132. package/dist/mcp/start-servicenow-mcp.d.ts +7 -0
  133. package/dist/mcp/start-servicenow-mcp.d.ts.map +1 -0
  134. package/dist/mcp/start-servicenow-mcp.js +64 -0
  135. package/dist/mcp/start-servicenow-mcp.js.map +1 -0
  136. package/dist/mcp/test-simple-mcp.d.ts +6 -0
  137. package/dist/mcp/test-simple-mcp.d.ts.map +1 -0
  138. package/dist/mcp/test-simple-mcp.js +64 -0
  139. package/dist/mcp/test-simple-mcp.js.map +1 -0
  140. package/dist/orchestrator/flow-composer.d.ts +269 -0
  141. package/dist/orchestrator/flow-composer.d.ts.map +1 -0
  142. package/dist/orchestrator/flow-composer.js +2221 -0
  143. package/dist/orchestrator/flow-composer.js.map +1 -0
  144. package/dist/orchestrator/flow-pattern-templates.d.ts +260 -0
  145. package/dist/orchestrator/flow-pattern-templates.d.ts.map +1 -0
  146. package/dist/orchestrator/flow-pattern-templates.js +906 -0
  147. package/dist/orchestrator/flow-pattern-templates.js.map +1 -0
  148. package/dist/orchestrator/flow-subflow-decision-engine.d.ts +202 -0
  149. package/dist/orchestrator/flow-subflow-decision-engine.d.ts.map +1 -0
  150. package/dist/orchestrator/flow-subflow-decision-engine.js +769 -0
  151. package/dist/orchestrator/flow-subflow-decision-engine.js.map +1 -0
  152. package/dist/orchestrator/flow-validation-engine.d.ts +145 -0
  153. package/dist/orchestrator/flow-validation-engine.d.ts.map +1 -0
  154. package/dist/orchestrator/flow-validation-engine.js +663 -0
  155. package/dist/orchestrator/flow-validation-engine.js.map +1 -0
  156. package/dist/orchestrator/snow-orchestrator.d.ts +49 -0
  157. package/dist/orchestrator/snow-orchestrator.d.ts.map +1 -0
  158. package/dist/orchestrator/snow-orchestrator.js +235 -0
  159. package/dist/orchestrator/snow-orchestrator.js.map +1 -0
  160. package/dist/orchestrator/subflow-creation-handler.d.ts +230 -0
  161. package/dist/orchestrator/subflow-creation-handler.d.ts.map +1 -0
  162. package/dist/orchestrator/subflow-creation-handler.js +791 -0
  163. package/dist/orchestrator/subflow-creation-handler.js.map +1 -0
  164. package/dist/strategies/global-scope-strategy.d.ts +123 -0
  165. package/dist/strategies/global-scope-strategy.d.ts.map +1 -0
  166. package/dist/strategies/global-scope-strategy.js +585 -0
  167. package/dist/strategies/global-scope-strategy.js.map +1 -0
  168. package/dist/types/index.d.ts +138 -0
  169. package/dist/types/index.d.ts.map +1 -0
  170. package/dist/types/index.js +4 -0
  171. package/dist/types/index.js.map +1 -0
  172. package/dist/types/servicenow.types.d.ts +260 -0
  173. package/dist/types/servicenow.types.d.ts.map +1 -0
  174. package/dist/types/servicenow.types.js +3 -0
  175. package/dist/types/servicenow.types.js.map +1 -0
  176. package/dist/types/snow-flow.types.d.ts +114 -0
  177. package/dist/types/snow-flow.types.d.ts.map +1 -0
  178. package/dist/types/snow-flow.types.js +3 -0
  179. package/dist/types/snow-flow.types.js.map +1 -0
  180. package/dist/utils/action-type-cache.d.ts +66 -0
  181. package/dist/utils/action-type-cache.d.ts.map +1 -0
  182. package/dist/utils/action-type-cache.js +237 -0
  183. package/dist/utils/action-type-cache.js.map +1 -0
  184. package/dist/utils/agent-detector.d.ts +35 -0
  185. package/dist/utils/agent-detector.d.ts.map +1 -0
  186. package/dist/utils/agent-detector.js +353 -0
  187. package/dist/utils/agent-detector.js.map +1 -0
  188. package/dist/utils/flow-api-discovery.d.ts +151 -0
  189. package/dist/utils/flow-api-discovery.d.ts.map +1 -0
  190. package/dist/utils/flow-api-discovery.js +440 -0
  191. package/dist/utils/flow-api-discovery.js.map +1 -0
  192. package/dist/utils/flow-xml-generator.d.ts +41 -0
  193. package/dist/utils/flow-xml-generator.d.ts.map +1 -0
  194. package/dist/utils/flow-xml-generator.js +258 -0
  195. package/dist/utils/flow-xml-generator.js.map +1 -0
  196. package/dist/utils/logger.d.ts +13 -0
  197. package/dist/utils/logger.d.ts.map +1 -0
  198. package/dist/utils/logger.js +51 -0
  199. package/dist/utils/logger.js.map +1 -0
  200. package/dist/utils/mcp-auth-middleware.d.ts +58 -0
  201. package/dist/utils/mcp-auth-middleware.d.ts.map +1 -0
  202. package/dist/utils/mcp-auth-middleware.js +227 -0
  203. package/dist/utils/mcp-auth-middleware.js.map +1 -0
  204. package/dist/utils/mcp-config-manager.d.ts +126 -0
  205. package/dist/utils/mcp-config-manager.d.ts.map +1 -0
  206. package/dist/utils/mcp-config-manager.js +209 -0
  207. package/dist/utils/mcp-config-manager.js.map +1 -0
  208. package/dist/utils/mcp-server-manager.d.ts +91 -0
  209. package/dist/utils/mcp-server-manager.d.ts.map +1 -0
  210. package/dist/utils/mcp-server-manager.js +338 -0
  211. package/dist/utils/mcp-server-manager.js.map +1 -0
  212. package/dist/utils/scope-utils.d.ts +72 -0
  213. package/dist/utils/scope-utils.d.ts.map +1 -0
  214. package/dist/utils/scope-utils.js +386 -0
  215. package/dist/utils/scope-utils.js.map +1 -0
  216. package/dist/utils/servicenow-client.d.ts +233 -0
  217. package/dist/utils/servicenow-client.d.ts.map +1 -0
  218. package/dist/utils/servicenow-client.js +1465 -0
  219. package/dist/utils/servicenow-client.js.map +1 -0
  220. package/dist/utils/snow-oauth-old.d.ts +65 -0
  221. package/dist/utils/snow-oauth-old.d.ts.map +1 -0
  222. package/dist/utils/snow-oauth-old.js +345 -0
  223. package/dist/utils/snow-oauth-old.js.map +1 -0
  224. package/dist/utils/snow-oauth.d.ts +85 -0
  225. package/dist/utils/snow-oauth.d.ts.map +1 -0
  226. package/dist/utils/snow-oauth.js +512 -0
  227. package/dist/utils/snow-oauth.js.map +1 -0
  228. package/dist/utils/template-engine.d.ts +76 -0
  229. package/dist/utils/template-engine.d.ts.map +1 -0
  230. package/dist/utils/template-engine.js +391 -0
  231. package/dist/utils/template-engine.js.map +1 -0
  232. package/dist/version.d.ts +35 -0
  233. package/dist/version.d.ts.map +1 -0
  234. package/dist/version.js +72 -0
  235. package/dist/version.js.map +1 -0
  236. package/mcp-wrapper.sh +12 -0
  237. package/package.json +77 -0
  238. package/reports/swarm-auto-centralized-1752649029776.json +13 -0
  239. package/scripts/postinstall.js +30 -0
  240. package/scripts/setup-mcp.js +89 -0
@@ -0,0 +1,279 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ /**
4
+ * Generic Artifact Deployer
5
+ * Deploy any ServiceNow artifact type dynamically
6
+ */
7
+ var __importDefault = (this && this.__importDefault) || function (mod) {
8
+ return (mod && mod.__esModule) ? mod : { "default": mod };
9
+ };
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ const commander_1 = require("commander");
12
+ const servicenow_client_js_1 = require("../utils/servicenow-client.js");
13
+ const snow_oauth_js_1 = require("../utils/snow-oauth.js");
14
+ const logger_js_1 = require("../utils/logger.js");
15
+ const fs_1 = require("fs");
16
+ const chalk_1 = __importDefault(require("chalk"));
17
+ const logger = new logger_js_1.Logger('DeployArtifact');
18
+ async function deployArtifact(type, configPath) {
19
+ try {
20
+ logger.info(`Deploying ${type} artifact from ${configPath}`);
21
+ // Load configuration
22
+ const configContent = await fs_1.promises.readFile(configPath, 'utf-8');
23
+ const config = JSON.parse(configContent);
24
+ // Validate configuration
25
+ if (!config.name) {
26
+ throw new Error('Artifact name is required in configuration');
27
+ }
28
+ // Check authentication
29
+ const oauth = new snow_oauth_js_1.ServiceNowOAuth();
30
+ const isAuth = await oauth.isAuthenticated();
31
+ if (!isAuth) {
32
+ throw new Error('Not authenticated. Run "snow-flow auth login" first.');
33
+ }
34
+ // Create client
35
+ const client = new servicenow_client_js_1.ServiceNowClient();
36
+ // Deploy based on type
37
+ let result;
38
+ switch (type) {
39
+ case 'widget':
40
+ result = await deployWidget(client, config);
41
+ break;
42
+ case 'flow':
43
+ result = await deployFlow(client, config);
44
+ break;
45
+ case 'script_include':
46
+ result = await deployScriptInclude(client, config);
47
+ break;
48
+ case 'business_rule':
49
+ result = await deployBusinessRule(client, config);
50
+ break;
51
+ case 'application':
52
+ result = await deployApplication(client, config);
53
+ break;
54
+ case 'table':
55
+ result = await deployTable(client, config);
56
+ break;
57
+ default:
58
+ throw new Error(`Unsupported artifact type: ${type}`);
59
+ }
60
+ // Display result
61
+ if (result.success) {
62
+ console.log(chalk_1.default.green('\n✅ Deployment successful!'));
63
+ console.log(chalk_1.default.blue(`\n📋 Artifact Details:`));
64
+ console.log(` Name: ${config.name}`);
65
+ console.log(` Type: ${type}`);
66
+ console.log(` Sys ID: ${result.data?.sys_id}`);
67
+ const credentials = await oauth.loadCredentials();
68
+ console.log(chalk_1.default.yellow(`\n🔗 View in ServiceNow:`));
69
+ console.log(` ${getArtifactUrl(credentials?.instance || '', type, result.data?.sys_id)}`);
70
+ }
71
+ else {
72
+ throw new Error(result.error || 'Deployment failed');
73
+ }
74
+ }
75
+ catch (error) {
76
+ logger.error('Deployment failed', error);
77
+ console.error(chalk_1.default.red(`\n❌ Error: ${error instanceof Error ? error.message : String(error)}`));
78
+ process.exit(1);
79
+ }
80
+ }
81
+ async function deployWidget(client, config) {
82
+ return await client.createWidget({
83
+ name: config.name,
84
+ id: config.config.id || config.name.toLowerCase().replace(/\s+/g, '_'),
85
+ title: config.config.title || config.name,
86
+ description: config.description || '',
87
+ template: config.config.template || '',
88
+ css: config.config.css || '',
89
+ client_script: config.config.client_script || '',
90
+ server_script: config.config.server_script || '',
91
+ option_schema: config.config.option_schema || '[]',
92
+ demo_data: config.config.demo_data || '{}',
93
+ has_preview: config.config.has_preview || false,
94
+ category: config.config.category || 'custom'
95
+ });
96
+ }
97
+ async function deployFlow(client, config) {
98
+ return await client.createFlow({
99
+ name: config.name,
100
+ description: config.description || '',
101
+ active: config.config.active !== false,
102
+ table: config.config.table || '',
103
+ trigger_type: config.config.trigger_type || 'manual',
104
+ condition: config.config.condition || '',
105
+ flow_definition: JSON.stringify(config.config.flow_definition || {}),
106
+ category: config.config.category || 'automation'
107
+ });
108
+ }
109
+ async function deployScriptInclude(client, config) {
110
+ return await client.createScriptInclude({
111
+ name: config.name,
112
+ api_name: config.config.api_name || config.name,
113
+ description: config.description || '',
114
+ script: config.config.script || '',
115
+ active: config.config.active !== false,
116
+ access: config.config.access || 'public'
117
+ });
118
+ }
119
+ async function deployBusinessRule(client, config) {
120
+ return await client.createBusinessRule({
121
+ name: config.name,
122
+ table: config.config.table || 'incident',
123
+ when: config.config.when || 'after',
124
+ condition: config.config.condition || '',
125
+ script: config.config.script || '',
126
+ description: config.description || '',
127
+ active: config.config.active !== false,
128
+ order: config.config.order || 100
129
+ });
130
+ }
131
+ async function deployApplication(client, config) {
132
+ return await client.createApplication({
133
+ name: config.name,
134
+ scope: config.config.scope || 'x_' + config.name.toLowerCase().replace(/\s+/g, '_'),
135
+ version: config.config.version || '1.0.0',
136
+ short_description: config.config.short_description || config.description || '',
137
+ description: config.description || '',
138
+ vendor: config.config.vendor || 'Custom',
139
+ vendor_prefix: config.config.vendor_prefix || 'x',
140
+ active: config.config.active !== false
141
+ });
142
+ }
143
+ async function deployTable(client, config) {
144
+ return await client.createTable({
145
+ name: config.name,
146
+ label: config.config.label || config.name,
147
+ extends_table: config.config.extends_table || 'sys_metadata',
148
+ is_extendable: config.config.is_extendable !== false,
149
+ access: config.config.access || 'public',
150
+ create_access_controls: config.config.create_access_controls !== false
151
+ });
152
+ }
153
+ function getArtifactUrl(instance, type, sysId) {
154
+ const baseUrl = `https://${instance}`;
155
+ switch (type) {
156
+ case 'widget':
157
+ return `${baseUrl}/sp_config?id=widget_editor&sys_id=${sysId}`;
158
+ case 'flow':
159
+ return `${baseUrl}/flow-designer/flow/${sysId}`;
160
+ case 'script_include':
161
+ return `${baseUrl}/sys_script_include.do?sys_id=${sysId}`;
162
+ case 'business_rule':
163
+ return `${baseUrl}/sys_script.do?sys_id=${sysId}`;
164
+ case 'application':
165
+ return `${baseUrl}/sys_app.do?sys_id=${sysId}`;
166
+ case 'table':
167
+ return `${baseUrl}/sys_db_object.do?sys_id=${sysId}`;
168
+ default:
169
+ return baseUrl;
170
+ }
171
+ }
172
+ // CLI setup
173
+ const program = new commander_1.Command();
174
+ program
175
+ .name('deploy-artifact')
176
+ .description('Deploy any ServiceNow artifact type dynamically')
177
+ .version('1.0.0');
178
+ program
179
+ .command('deploy')
180
+ .description('Deploy an artifact from configuration file')
181
+ .requiredOption('-t, --type <type>', 'Artifact type (widget, flow, script_include, business_rule, application, table)')
182
+ .requiredOption('-c, --config <path>', 'Path to artifact configuration file (JSON)')
183
+ .action(async (options) => {
184
+ await deployArtifact(options.type, options.config);
185
+ });
186
+ program
187
+ .command('template')
188
+ .description('Generate a template configuration file')
189
+ .requiredOption('-t, --type <type>', 'Artifact type')
190
+ .requiredOption('-o, --output <path>', 'Output file path')
191
+ .action(async (options) => {
192
+ const template = getTemplate(options.type);
193
+ await fs_1.promises.writeFile(options.output, JSON.stringify(template, null, 2));
194
+ console.log(chalk_1.default.green(`✅ Template created: ${options.output}`));
195
+ });
196
+ function getTemplate(type) {
197
+ const templates = {
198
+ widget: {
199
+ type: 'widget',
200
+ name: 'My Custom Widget',
201
+ description: 'A custom ServiceNow widget',
202
+ config: {
203
+ title: 'My Widget',
204
+ category: 'custom',
205
+ template: '<div>{{c.data.message}}</div>',
206
+ css: '.my-widget { padding: 20px; }',
207
+ client_script: 'function() { var c = this; c.data.message = "Hello World"; }',
208
+ server_script: '(function() { data.message = "Server message"; })()',
209
+ option_schema: '[]',
210
+ demo_data: '{}'
211
+ }
212
+ },
213
+ flow: {
214
+ type: 'flow',
215
+ name: 'My Custom Flow',
216
+ description: 'A custom ServiceNow flow',
217
+ config: {
218
+ table: 'incident',
219
+ trigger_type: 'record_created',
220
+ condition: 'active=true',
221
+ category: 'automation',
222
+ flow_definition: {
223
+ activities: [],
224
+ variables: []
225
+ }
226
+ }
227
+ },
228
+ script_include: {
229
+ type: 'script_include',
230
+ name: 'MyUtilityClass',
231
+ description: 'Utility functions',
232
+ config: {
233
+ api_name: 'MyUtilityClass',
234
+ script: 'var MyUtilityClass = Class.create();\nMyUtilityClass.prototype = {\n initialize: function() {},\n type: "MyUtilityClass"\n};',
235
+ access: 'public'
236
+ }
237
+ },
238
+ business_rule: {
239
+ type: 'business_rule',
240
+ name: 'My Business Rule',
241
+ description: 'A custom business rule',
242
+ config: {
243
+ table: 'incident',
244
+ when: 'before',
245
+ condition: '',
246
+ script: '(function executeRule(current, previous) {\n // Business rule logic here\n})(current, previous);',
247
+ active: true,
248
+ order: 100
249
+ }
250
+ },
251
+ application: {
252
+ type: 'application',
253
+ name: 'My Custom Application',
254
+ description: 'A custom ServiceNow application',
255
+ config: {
256
+ scope: 'x_custom',
257
+ version: '1.0.0',
258
+ vendor: 'Custom',
259
+ vendor_prefix: 'x',
260
+ active: true
261
+ }
262
+ },
263
+ table: {
264
+ type: 'table',
265
+ name: 'u_custom_table',
266
+ description: 'A custom ServiceNow table',
267
+ config: {
268
+ label: 'Custom Table',
269
+ extends_table: 'task',
270
+ is_extendable: true,
271
+ access: 'public',
272
+ create_access_controls: true
273
+ }
274
+ }
275
+ };
276
+ return templates[type] || { type, name: 'New Artifact', config: {} };
277
+ }
278
+ program.parse(process.argv);
279
+ //# sourceMappingURL=deploy-artifact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploy-artifact.js","sourceRoot":"","sources":["../../src/cli/deploy-artifact.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts ADDED
@@ -0,0 +1,6 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Minimal CLI for snow-flow - ServiceNow Multi-Agent Framework
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;GAEG"}