nowaikit 2.5.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.

Potentially problematic release.


This version of nowaikit might be problematic. Click here for more details.

Files changed (209) hide show
  1. package/.env.example +96 -0
  2. package/LICENSE +21 -0
  3. package/README.md +1253 -0
  4. package/desktop/renderer/dist/apple-touch-icon.png +0 -0
  5. package/desktop/renderer/dist/assets/index-Bb0ncZQl.css +1 -0
  6. package/desktop/renderer/dist/assets/index-MlBBSUMZ.js +49 -0
  7. package/desktop/renderer/dist/favicon-32.png +0 -0
  8. package/desktop/renderer/dist/favicon.svg +18 -0
  9. package/desktop/renderer/dist/index.html +18 -0
  10. package/desktop/serve.js +449 -0
  11. package/dist/cli/auth.d.ts +14 -0
  12. package/dist/cli/auth.d.ts.map +1 -0
  13. package/dist/cli/auth.js +179 -0
  14. package/dist/cli/auth.js.map +1 -0
  15. package/dist/cli/config-store.d.ts +28 -0
  16. package/dist/cli/config-store.d.ts.map +1 -0
  17. package/dist/cli/config-store.js +64 -0
  18. package/dist/cli/config-store.js.map +1 -0
  19. package/dist/cli/detect-clients.d.ts +16 -0
  20. package/dist/cli/detect-clients.d.ts.map +1 -0
  21. package/dist/cli/detect-clients.js +151 -0
  22. package/dist/cli/detect-clients.js.map +1 -0
  23. package/dist/cli/index.d.ts +3 -0
  24. package/dist/cli/index.d.ts.map +1 -0
  25. package/dist/cli/index.js +193 -0
  26. package/dist/cli/index.js.map +1 -0
  27. package/dist/cli/setup.d.ts +4 -0
  28. package/dist/cli/setup.d.ts.map +1 -0
  29. package/dist/cli/setup.js +575 -0
  30. package/dist/cli/setup.js.map +1 -0
  31. package/dist/cli/writers/index.d.ts +9 -0
  32. package/dist/cli/writers/index.d.ts.map +1 -0
  33. package/dist/cli/writers/index.js +140 -0
  34. package/dist/cli/writers/index.js.map +1 -0
  35. package/dist/prompts/index.d.ts +25 -0
  36. package/dist/prompts/index.d.ts.map +1 -0
  37. package/dist/prompts/index.js +38 -0
  38. package/dist/prompts/index.js.map +1 -0
  39. package/dist/prompts/itsm.d.ts +20 -0
  40. package/dist/prompts/itsm.d.ts.map +1 -0
  41. package/dist/prompts/itsm.js +110 -0
  42. package/dist/prompts/itsm.js.map +1 -0
  43. package/dist/prompts/user-prompts.d.ts +3 -0
  44. package/dist/prompts/user-prompts.d.ts.map +1 -0
  45. package/dist/prompts/user-prompts.js +35 -0
  46. package/dist/prompts/user-prompts.js.map +1 -0
  47. package/dist/resources/index.d.ts +26 -0
  48. package/dist/resources/index.d.ts.map +1 -0
  49. package/dist/resources/index.js +99 -0
  50. package/dist/resources/index.js.map +1 -0
  51. package/dist/server.d.ts +3 -0
  52. package/dist/server.d.ts.map +1 -0
  53. package/dist/server.js +129 -0
  54. package/dist/server.js.map +1 -0
  55. package/dist/servicenow/client.d.ts +135 -0
  56. package/dist/servicenow/client.d.ts.map +1 -0
  57. package/dist/servicenow/client.js +803 -0
  58. package/dist/servicenow/client.js.map +1 -0
  59. package/dist/servicenow/instances.d.ts +28 -0
  60. package/dist/servicenow/instances.d.ts.map +1 -0
  61. package/dist/servicenow/instances.js +204 -0
  62. package/dist/servicenow/instances.js.map +1 -0
  63. package/dist/servicenow/types.d.ts +574 -0
  64. package/dist/servicenow/types.d.ts.map +1 -0
  65. package/dist/servicenow/types.js +3 -0
  66. package/dist/servicenow/types.js.map +1 -0
  67. package/dist/tools/agile.d.ts +225 -0
  68. package/dist/tools/agile.d.ts.map +1 -0
  69. package/dist/tools/agile.js +205 -0
  70. package/dist/tools/agile.js.map +1 -0
  71. package/dist/tools/app-studio.d.ts +139 -0
  72. package/dist/tools/app-studio.d.ts.map +1 -0
  73. package/dist/tools/app-studio.js +139 -0
  74. package/dist/tools/app-studio.js.map +1 -0
  75. package/dist/tools/atf.d.ts +144 -0
  76. package/dist/tools/atf.d.ts.map +1 -0
  77. package/dist/tools/atf.js +186 -0
  78. package/dist/tools/atf.js.map +1 -0
  79. package/dist/tools/catalog.d.ts +628 -0
  80. package/dist/tools/catalog.d.ts.map +1 -0
  81. package/dist/tools/catalog.js +397 -0
  82. package/dist/tools/catalog.js.map +1 -0
  83. package/dist/tools/change.d.ts +347 -0
  84. package/dist/tools/change.d.ts.map +1 -0
  85. package/dist/tools/change.js +213 -0
  86. package/dist/tools/change.js.map +1 -0
  87. package/dist/tools/core.d.ts +540 -0
  88. package/dist/tools/core.d.ts.map +1 -0
  89. package/dist/tools/core.js +373 -0
  90. package/dist/tools/core.js.map +1 -0
  91. package/dist/tools/csm.d.ts +401 -0
  92. package/dist/tools/csm.d.ts.map +1 -0
  93. package/dist/tools/csm.js +255 -0
  94. package/dist/tools/csm.js.map +1 -0
  95. package/dist/tools/deployment.d.ts +366 -0
  96. package/dist/tools/deployment.d.ts.map +1 -0
  97. package/dist/tools/deployment.js +181 -0
  98. package/dist/tools/deployment.js.map +1 -0
  99. package/dist/tools/devops.d.ts +236 -0
  100. package/dist/tools/devops.d.ts.map +1 -0
  101. package/dist/tools/devops.js +207 -0
  102. package/dist/tools/devops.js.map +1 -0
  103. package/dist/tools/flow.d.ts +496 -0
  104. package/dist/tools/flow.d.ts.map +1 -0
  105. package/dist/tools/flow.js +348 -0
  106. package/dist/tools/flow.js.map +1 -0
  107. package/dist/tools/hrsd.d.ts +789 -0
  108. package/dist/tools/hrsd.d.ts.map +1 -0
  109. package/dist/tools/hrsd.js +377 -0
  110. package/dist/tools/hrsd.js.map +1 -0
  111. package/dist/tools/incident.d.ts +256 -0
  112. package/dist/tools/incident.d.ts.map +1 -0
  113. package/dist/tools/incident.js +163 -0
  114. package/dist/tools/incident.js.map +1 -0
  115. package/dist/tools/index.d.ts +11514 -0
  116. package/dist/tools/index.d.ts.map +1 -0
  117. package/dist/tools/index.js +276 -0
  118. package/dist/tools/index.js.map +1 -0
  119. package/dist/tools/integration.d.ts +603 -0
  120. package/dist/tools/integration.d.ts.map +1 -0
  121. package/dist/tools/integration.js +510 -0
  122. package/dist/tools/integration.js.map +1 -0
  123. package/dist/tools/itam.d.ts +462 -0
  124. package/dist/tools/itam.d.ts.map +1 -0
  125. package/dist/tools/itam.js +306 -0
  126. package/dist/tools/itam.js.map +1 -0
  127. package/dist/tools/knowledge.d.ts +187 -0
  128. package/dist/tools/knowledge.d.ts.map +1 -0
  129. package/dist/tools/knowledge.js +161 -0
  130. package/dist/tools/knowledge.js.map +1 -0
  131. package/dist/tools/ml.d.ts +263 -0
  132. package/dist/tools/ml.d.ts.map +1 -0
  133. package/dist/tools/ml.js +251 -0
  134. package/dist/tools/ml.js.map +1 -0
  135. package/dist/tools/mobile.d.ts +352 -0
  136. package/dist/tools/mobile.d.ts.map +1 -0
  137. package/dist/tools/mobile.js +122 -0
  138. package/dist/tools/mobile.js.map +1 -0
  139. package/dist/tools/notification.d.ts +590 -0
  140. package/dist/tools/notification.d.ts.map +1 -0
  141. package/dist/tools/notification.js +382 -0
  142. package/dist/tools/notification.js.map +1 -0
  143. package/dist/tools/now-assist.d.ts +300 -0
  144. package/dist/tools/now-assist.d.ts.map +1 -0
  145. package/dist/tools/now-assist.js +227 -0
  146. package/dist/tools/now-assist.js.map +1 -0
  147. package/dist/tools/performance.d.ts +447 -0
  148. package/dist/tools/performance.d.ts.map +1 -0
  149. package/dist/tools/performance.js +473 -0
  150. package/dist/tools/performance.js.map +1 -0
  151. package/dist/tools/portal.d.ts +530 -0
  152. package/dist/tools/portal.d.ts.map +1 -0
  153. package/dist/tools/portal.js +425 -0
  154. package/dist/tools/portal.js.map +1 -0
  155. package/dist/tools/problem.d.ts +110 -0
  156. package/dist/tools/problem.d.ts.map +1 -0
  157. package/dist/tools/problem.js +100 -0
  158. package/dist/tools/problem.js.map +1 -0
  159. package/dist/tools/reporting.d.ts +825 -0
  160. package/dist/tools/reporting.d.ts.map +1 -0
  161. package/dist/tools/reporting.js +460 -0
  162. package/dist/tools/reporting.js.map +1 -0
  163. package/dist/tools/script.d.ts +714 -0
  164. package/dist/tools/script.d.ts.map +1 -0
  165. package/dist/tools/script.js +629 -0
  166. package/dist/tools/script.js.map +1 -0
  167. package/dist/tools/security.d.ts +794 -0
  168. package/dist/tools/security.d.ts.map +1 -0
  169. package/dist/tools/security.js +425 -0
  170. package/dist/tools/security.js.map +1 -0
  171. package/dist/tools/sys-properties.d.ts +315 -0
  172. package/dist/tools/sys-properties.d.ts.map +1 -0
  173. package/dist/tools/sys-properties.js +372 -0
  174. package/dist/tools/sys-properties.js.map +1 -0
  175. package/dist/tools/task.d.ts +82 -0
  176. package/dist/tools/task.d.ts.map +1 -0
  177. package/dist/tools/task.js +96 -0
  178. package/dist/tools/task.js.map +1 -0
  179. package/dist/tools/updateset.d.ts +159 -0
  180. package/dist/tools/updateset.d.ts.map +1 -0
  181. package/dist/tools/updateset.js +212 -0
  182. package/dist/tools/updateset.js.map +1 -0
  183. package/dist/tools/user.d.ts +206 -0
  184. package/dist/tools/user.d.ts.map +1 -0
  185. package/dist/tools/user.js +163 -0
  186. package/dist/tools/user.js.map +1 -0
  187. package/dist/tools/va.d.ts +217 -0
  188. package/dist/tools/va.d.ts.map +1 -0
  189. package/dist/tools/va.js +178 -0
  190. package/dist/tools/va.js.map +1 -0
  191. package/dist/tools/workspace.d.ts +565 -0
  192. package/dist/tools/workspace.d.ts.map +1 -0
  193. package/dist/tools/workspace.js +201 -0
  194. package/dist/tools/workspace.js.map +1 -0
  195. package/dist/tools-manifest.json +7852 -0
  196. package/dist/utils/errors.d.ts +6 -0
  197. package/dist/utils/errors.d.ts.map +1 -0
  198. package/dist/utils/errors.js +11 -0
  199. package/dist/utils/errors.js.map +1 -0
  200. package/dist/utils/logging.d.ts +7 -0
  201. package/dist/utils/logging.d.ts.map +1 -0
  202. package/dist/utils/logging.js +15 -0
  203. package/dist/utils/logging.js.map +1 -0
  204. package/dist/utils/permissions.d.ts +21 -0
  205. package/dist/utils/permissions.d.ts.map +1 -0
  206. package/dist/utils/permissions.js +54 -0
  207. package/dist/utils/permissions.js.map +1 -0
  208. package/instances.example.json +71 -0
  209. package/package.json +110 -0
@@ -0,0 +1,161 @@
1
+ import { ServiceNowError } from '../utils/errors.js';
2
+ import { requireWrite } from '../utils/permissions.js';
3
+ export function getKnowledgeToolDefinitions() {
4
+ return [
5
+ {
6
+ name: 'list_knowledge_bases',
7
+ description: 'List all knowledge bases available in the instance',
8
+ inputSchema: {
9
+ type: 'object',
10
+ properties: {
11
+ limit: { type: 'number', description: 'Max results (default: 20)' },
12
+ },
13
+ required: [],
14
+ },
15
+ },
16
+ {
17
+ name: 'search_knowledge',
18
+ description: 'Search knowledge base articles by keyword',
19
+ inputSchema: {
20
+ type: 'object',
21
+ properties: {
22
+ query: { type: 'string', description: 'Search keywords or phrase' },
23
+ limit: { type: 'number', description: 'Max articles (default: 10)' },
24
+ knowledge_base: { type: 'string', description: 'Optional: filter by knowledge base sys_id or name' },
25
+ },
26
+ required: ['query'],
27
+ },
28
+ },
29
+ {
30
+ name: 'get_knowledge_article',
31
+ description: 'Get the full content of a knowledge article by number (KB...) or sys_id',
32
+ inputSchema: {
33
+ type: 'object',
34
+ properties: {
35
+ number_or_sysid: { type: 'string', description: 'Article number (KB...) or sys_id' },
36
+ },
37
+ required: ['number_or_sysid'],
38
+ },
39
+ },
40
+ {
41
+ name: 'create_knowledge_article',
42
+ description: 'Create a new knowledge article (requires WRITE_ENABLED=true)',
43
+ inputSchema: {
44
+ type: 'object',
45
+ properties: {
46
+ short_description: { type: 'string', description: 'Article title' },
47
+ text: { type: 'string', description: 'Article body (HTML or plain text)' },
48
+ knowledge_base_sys_id: { type: 'string', description: 'sys_id of the target knowledge base' },
49
+ category: { type: 'string', description: 'Article category' },
50
+ },
51
+ required: ['short_description', 'text', 'knowledge_base_sys_id'],
52
+ },
53
+ },
54
+ {
55
+ name: 'update_knowledge_article',
56
+ description: 'Update a knowledge article (requires WRITE_ENABLED=true)',
57
+ inputSchema: {
58
+ type: 'object',
59
+ properties: {
60
+ sys_id: { type: 'string', description: 'System ID of the article' },
61
+ fields: { type: 'object', description: 'Key-value pairs to update (e.g., {"text": "...updated content..."})' },
62
+ },
63
+ required: ['sys_id', 'fields'],
64
+ },
65
+ },
66
+ {
67
+ name: 'publish_knowledge_article',
68
+ description: 'Publish a draft knowledge article (requires WRITE_ENABLED=true)',
69
+ inputSchema: {
70
+ type: 'object',
71
+ properties: {
72
+ sys_id: { type: 'string', description: 'System ID of the article to publish' },
73
+ },
74
+ required: ['sys_id'],
75
+ },
76
+ },
77
+ {
78
+ name: 'retire_knowledge_article',
79
+ description: '[Write] Retire a knowledge article (mark as outdated)',
80
+ inputSchema: {
81
+ type: 'object',
82
+ properties: {
83
+ article_id: { type: 'string', description: 'Article number (KB...) or sys_id' },
84
+ },
85
+ required: ['article_id'],
86
+ },
87
+ },
88
+ ];
89
+ }
90
+ export async function executeKnowledgeToolCall(client, name, args) {
91
+ switch (name) {
92
+ case 'list_knowledge_bases': {
93
+ const resp = await client.queryRecords({ table: 'kb_knowledge_base', query: 'active=true', limit: args.limit || 20, fields: 'sys_id,title,description,owner,workflow_state' });
94
+ return { count: resp.count, knowledge_bases: resp.records };
95
+ }
96
+ case 'search_knowledge': {
97
+ if (!args.query)
98
+ throw new ServiceNowError('query is required', 'INVALID_REQUEST');
99
+ let query = `short_descriptionLIKE${args.query}^ORtextLIKE${args.query}^workflow_state=published`;
100
+ if (args.knowledge_base)
101
+ query += `^kb_knowledge_base.title=${args.knowledge_base}^ORkb_knowledge_base=${args.knowledge_base}`;
102
+ const resp = await client.queryRecords({ table: 'kb_knowledge', query, limit: args.limit || 10, fields: 'sys_id,number,short_description,workflow_state,kb_knowledge_base,view_count' });
103
+ return { count: resp.count, articles: resp.records };
104
+ }
105
+ case 'get_knowledge_article': {
106
+ if (!args.number_or_sysid)
107
+ throw new ServiceNowError('number_or_sysid is required', 'INVALID_REQUEST');
108
+ if (/^[0-9a-f]{32}$/i.test(args.number_or_sysid)) {
109
+ return await client.getRecord('kb_knowledge', args.number_or_sysid);
110
+ }
111
+ const resp = await client.queryRecords({ table: 'kb_knowledge', query: `number=${args.number_or_sysid}^ORsys_id=${args.number_or_sysid}`, limit: 1 });
112
+ if (resp.count === 0)
113
+ throw new ServiceNowError(`Article not found: ${args.number_or_sysid}`, 'NOT_FOUND');
114
+ return resp.records[0];
115
+ }
116
+ case 'create_knowledge_article': {
117
+ requireWrite();
118
+ if (!args.short_description || !args.text || !args.knowledge_base_sys_id)
119
+ throw new ServiceNowError('short_description, text, and knowledge_base_sys_id are required', 'INVALID_REQUEST');
120
+ const result = await client.createRecord('kb_knowledge', {
121
+ short_description: args.short_description,
122
+ text: args.text,
123
+ kb_knowledge_base: args.knowledge_base_sys_id,
124
+ category: args.category,
125
+ workflow_state: 'draft',
126
+ });
127
+ return { ...result, summary: `Created knowledge article ${result.number || result.sys_id}` };
128
+ }
129
+ case 'update_knowledge_article': {
130
+ requireWrite();
131
+ if (!args.sys_id || !args.fields)
132
+ throw new ServiceNowError('sys_id and fields are required', 'INVALID_REQUEST');
133
+ const result = await client.updateRecord('kb_knowledge', args.sys_id, args.fields);
134
+ return { ...result, summary: `Updated knowledge article ${args.sys_id}` };
135
+ }
136
+ case 'publish_knowledge_article': {
137
+ requireWrite();
138
+ if (!args.sys_id)
139
+ throw new ServiceNowError('sys_id is required', 'INVALID_REQUEST');
140
+ const result = await client.updateRecord('kb_knowledge', args.sys_id, { workflow_state: 'published' });
141
+ return { ...result, summary: `Published knowledge article ${args.sys_id}` };
142
+ }
143
+ case 'retire_knowledge_article': {
144
+ requireWrite();
145
+ if (!args.article_id)
146
+ throw new ServiceNowError('article_id is required', 'INVALID_REQUEST');
147
+ let sysId = args.article_id;
148
+ if (!/^[0-9a-f]{32}$/i.test(args.article_id)) {
149
+ const resp = await client.queryRecords({ table: 'kb_knowledge', query: `number=${args.article_id}^ORsys_id=${args.article_id}`, limit: 1 });
150
+ if (resp.count === 0)
151
+ throw new ServiceNowError(`Article not found: ${args.article_id}`, 'NOT_FOUND');
152
+ sysId = resp.records[0].sys_id;
153
+ }
154
+ const result = await client.updateRecord('kb_knowledge', sysId, { workflow_state: 'retired' });
155
+ return { ...result, summary: `Retired knowledge article ${args.article_id}` };
156
+ }
157
+ default:
158
+ return null;
159
+ }
160
+ }
161
+ //# sourceMappingURL=knowledge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"knowledge.js","sourceRoot":"","sources":["../../src/tools/knowledge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,263 @@
1
+ /**
2
+ * Machine Learning tools — anomaly detection, change risk prediction,
3
+ * incident forecasting, model training, NLU analysis, process optimization.
4
+ *
5
+ * NOTE: Does NOT duplicate existing Now Assist tools (categorize_incident,
6
+ * suggest_resolution, ai_search, get_pi_models). These ML tools focus on
7
+ * ServiceNow Predictive Intelligence and ML Workbench capabilities.
8
+ *
9
+ * ServiceNow tables: ml_solution, ml_solution_version, sys_cs_conversation
10
+ */
11
+ import type { ServiceNowClient } from '../servicenow/client.js';
12
+ export declare function getMlToolDefinitions(): ({
13
+ name: string;
14
+ description: string;
15
+ inputSchema: {
16
+ type: string;
17
+ properties: {
18
+ change_sys_id: {
19
+ type: string;
20
+ description: string;
21
+ };
22
+ type: {
23
+ type: string;
24
+ description: string;
25
+ };
26
+ category: {
27
+ type: string;
28
+ description: string;
29
+ };
30
+ table?: undefined;
31
+ field?: undefined;
32
+ days?: undefined;
33
+ threshold?: undefined;
34
+ days_ahead?: undefined;
35
+ priority?: undefined;
36
+ solution_name?: undefined;
37
+ model_sys_id?: undefined;
38
+ topic_sys_id?: undefined;
39
+ };
40
+ required: never[];
41
+ };
42
+ } | {
43
+ name: string;
44
+ description: string;
45
+ inputSchema: {
46
+ type: string;
47
+ properties: {
48
+ table: {
49
+ type: string;
50
+ description: string;
51
+ };
52
+ field: {
53
+ type: string;
54
+ description: string;
55
+ };
56
+ days: {
57
+ type: string;
58
+ description: string;
59
+ };
60
+ threshold: {
61
+ type: string;
62
+ description: string;
63
+ };
64
+ change_sys_id?: undefined;
65
+ type?: undefined;
66
+ category?: undefined;
67
+ days_ahead?: undefined;
68
+ priority?: undefined;
69
+ solution_name?: undefined;
70
+ model_sys_id?: undefined;
71
+ topic_sys_id?: undefined;
72
+ };
73
+ required: string[];
74
+ };
75
+ } | {
76
+ name: string;
77
+ description: string;
78
+ inputSchema: {
79
+ type: string;
80
+ properties: {
81
+ days_ahead: {
82
+ type: string;
83
+ description: string;
84
+ };
85
+ category: {
86
+ type: string;
87
+ description: string;
88
+ };
89
+ priority: {
90
+ type: string;
91
+ description: string;
92
+ };
93
+ change_sys_id?: undefined;
94
+ type?: undefined;
95
+ table?: undefined;
96
+ field?: undefined;
97
+ days?: undefined;
98
+ threshold?: undefined;
99
+ solution_name?: undefined;
100
+ model_sys_id?: undefined;
101
+ topic_sys_id?: undefined;
102
+ };
103
+ required: never[];
104
+ };
105
+ } | {
106
+ name: string;
107
+ description: string;
108
+ inputSchema: {
109
+ type: string;
110
+ properties: {
111
+ solution_name: {
112
+ type: string;
113
+ description: string;
114
+ };
115
+ change_sys_id?: undefined;
116
+ type?: undefined;
117
+ category?: undefined;
118
+ table?: undefined;
119
+ field?: undefined;
120
+ days?: undefined;
121
+ threshold?: undefined;
122
+ days_ahead?: undefined;
123
+ priority?: undefined;
124
+ model_sys_id?: undefined;
125
+ topic_sys_id?: undefined;
126
+ };
127
+ required: never[];
128
+ };
129
+ } | {
130
+ name: string;
131
+ description: string;
132
+ inputSchema: {
133
+ type: string;
134
+ properties: {
135
+ table: {
136
+ type: string;
137
+ description: string;
138
+ };
139
+ field: {
140
+ type: string;
141
+ description: string;
142
+ };
143
+ change_sys_id?: undefined;
144
+ type?: undefined;
145
+ category?: undefined;
146
+ days?: undefined;
147
+ threshold?: undefined;
148
+ days_ahead?: undefined;
149
+ priority?: undefined;
150
+ solution_name?: undefined;
151
+ model_sys_id?: undefined;
152
+ topic_sys_id?: undefined;
153
+ };
154
+ required: string[];
155
+ };
156
+ } | {
157
+ name: string;
158
+ description: string;
159
+ inputSchema: {
160
+ type: string;
161
+ properties: {
162
+ model_sys_id: {
163
+ type: string;
164
+ description: string;
165
+ };
166
+ change_sys_id?: undefined;
167
+ type?: undefined;
168
+ category?: undefined;
169
+ table?: undefined;
170
+ field?: undefined;
171
+ days?: undefined;
172
+ threshold?: undefined;
173
+ days_ahead?: undefined;
174
+ priority?: undefined;
175
+ solution_name?: undefined;
176
+ topic_sys_id?: undefined;
177
+ };
178
+ required: string[];
179
+ };
180
+ } | {
181
+ name: string;
182
+ description: string;
183
+ inputSchema: {
184
+ type: string;
185
+ properties: {
186
+ model_sys_id: {
187
+ type: string;
188
+ description: string;
189
+ };
190
+ days: {
191
+ type: string;
192
+ description: string;
193
+ };
194
+ change_sys_id?: undefined;
195
+ type?: undefined;
196
+ category?: undefined;
197
+ table?: undefined;
198
+ field?: undefined;
199
+ threshold?: undefined;
200
+ days_ahead?: undefined;
201
+ priority?: undefined;
202
+ solution_name?: undefined;
203
+ topic_sys_id?: undefined;
204
+ };
205
+ required: string[];
206
+ };
207
+ } | {
208
+ name: string;
209
+ description: string;
210
+ inputSchema: {
211
+ type: string;
212
+ properties: {
213
+ topic_sys_id: {
214
+ type: string;
215
+ description: string;
216
+ };
217
+ days: {
218
+ type: string;
219
+ description: string;
220
+ };
221
+ change_sys_id?: undefined;
222
+ type?: undefined;
223
+ category?: undefined;
224
+ table?: undefined;
225
+ field?: undefined;
226
+ threshold?: undefined;
227
+ days_ahead?: undefined;
228
+ priority?: undefined;
229
+ solution_name?: undefined;
230
+ model_sys_id?: undefined;
231
+ };
232
+ required: never[];
233
+ };
234
+ } | {
235
+ name: string;
236
+ description: string;
237
+ inputSchema: {
238
+ type: string;
239
+ properties: {
240
+ table: {
241
+ type: string;
242
+ description: string;
243
+ };
244
+ days: {
245
+ type: string;
246
+ description: string;
247
+ };
248
+ change_sys_id?: undefined;
249
+ type?: undefined;
250
+ category?: undefined;
251
+ field?: undefined;
252
+ threshold?: undefined;
253
+ days_ahead?: undefined;
254
+ priority?: undefined;
255
+ solution_name?: undefined;
256
+ model_sys_id?: undefined;
257
+ topic_sys_id?: undefined;
258
+ };
259
+ required: string[];
260
+ };
261
+ })[];
262
+ export declare function executeMlToolCall(client: ServiceNowClient, name: string, args: Record<string, any>): Promise<any>;
263
+ //# sourceMappingURL=ml.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ml.d.ts","sourceRoot":"","sources":["../../src/tools/ml.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAIhE,wBAAgB,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;KA4HnC;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,gBAAgB,EACxB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACxB,OAAO,CAAC,GAAG,CAAC,CAoHd"}