nowaikit 2.6.0 → 3.0.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 (129) hide show
  1. package/dist/cli/index.js +89 -1
  2. package/dist/cli/index.js.map +1 -1
  3. package/dist/direct/executor.d.ts +28 -0
  4. package/dist/direct/executor.d.ts.map +1 -0
  5. package/dist/direct/executor.js +228 -0
  6. package/dist/direct/executor.js.map +1 -0
  7. package/dist/direct/llm-client.d.ts +32 -0
  8. package/dist/direct/llm-client.d.ts.map +1 -0
  9. package/dist/direct/llm-client.js +122 -0
  10. package/dist/direct/llm-client.js.map +1 -0
  11. package/dist/prompts/capabilities/build-app.d.ts +4 -0
  12. package/dist/prompts/capabilities/build-app.d.ts.map +1 -0
  13. package/dist/prompts/capabilities/build-app.js +238 -0
  14. package/dist/prompts/capabilities/build-app.js.map +1 -0
  15. package/dist/prompts/capabilities/build-business-rule.d.ts +4 -0
  16. package/dist/prompts/capabilities/build-business-rule.d.ts.map +1 -0
  17. package/dist/prompts/capabilities/build-business-rule.js +93 -0
  18. package/dist/prompts/capabilities/build-business-rule.js.map +1 -0
  19. package/dist/prompts/capabilities/build-catalog.d.ts +4 -0
  20. package/dist/prompts/capabilities/build-catalog.d.ts.map +1 -0
  21. package/dist/prompts/capabilities/build-catalog.js +350 -0
  22. package/dist/prompts/capabilities/build-catalog.js.map +1 -0
  23. package/dist/prompts/capabilities/build-client-script.d.ts +4 -0
  24. package/dist/prompts/capabilities/build-client-script.d.ts.map +1 -0
  25. package/dist/prompts/capabilities/build-client-script.js +157 -0
  26. package/dist/prompts/capabilities/build-client-script.js.map +1 -0
  27. package/dist/prompts/capabilities/build-flow.d.ts +4 -0
  28. package/dist/prompts/capabilities/build-flow.d.ts.map +1 -0
  29. package/dist/prompts/capabilities/build-flow.js +243 -0
  30. package/dist/prompts/capabilities/build-flow.js.map +1 -0
  31. package/dist/prompts/capabilities/build-portal.d.ts +4 -0
  32. package/dist/prompts/capabilities/build-portal.d.ts.map +1 -0
  33. package/dist/prompts/capabilities/build-portal.js +250 -0
  34. package/dist/prompts/capabilities/build-portal.js.map +1 -0
  35. package/dist/prompts/capabilities/build-rest-api.d.ts +4 -0
  36. package/dist/prompts/capabilities/build-rest-api.d.ts.map +1 -0
  37. package/dist/prompts/capabilities/build-rest-api.js +293 -0
  38. package/dist/prompts/capabilities/build-rest-api.js.map +1 -0
  39. package/dist/prompts/capabilities/build-test-plan.d.ts +4 -0
  40. package/dist/prompts/capabilities/build-test-plan.d.ts.map +1 -0
  41. package/dist/prompts/capabilities/build-test-plan.js +162 -0
  42. package/dist/prompts/capabilities/build-test-plan.js.map +1 -0
  43. package/dist/prompts/capabilities/build-uib.d.ts +4 -0
  44. package/dist/prompts/capabilities/build-uib.d.ts.map +1 -0
  45. package/dist/prompts/capabilities/build-uib.js +309 -0
  46. package/dist/prompts/capabilities/build-uib.js.map +1 -0
  47. package/dist/prompts/capabilities/docs-app.d.ts +4 -0
  48. package/dist/prompts/capabilities/docs-app.d.ts.map +1 -0
  49. package/dist/prompts/capabilities/docs-app.js +234 -0
  50. package/dist/prompts/capabilities/docs-app.js.map +1 -0
  51. package/dist/prompts/capabilities/docs-release.d.ts +4 -0
  52. package/dist/prompts/capabilities/docs-release.d.ts.map +1 -0
  53. package/dist/prompts/capabilities/docs-release.js +197 -0
  54. package/dist/prompts/capabilities/docs-release.js.map +1 -0
  55. package/dist/prompts/capabilities/docs-runbook.d.ts +4 -0
  56. package/dist/prompts/capabilities/docs-runbook.d.ts.map +1 -0
  57. package/dist/prompts/capabilities/docs-runbook.js +223 -0
  58. package/dist/prompts/capabilities/docs-runbook.js.map +1 -0
  59. package/dist/prompts/capabilities/docs-script.d.ts +4 -0
  60. package/dist/prompts/capabilities/docs-script.d.ts.map +1 -0
  61. package/dist/prompts/capabilities/docs-script.js +242 -0
  62. package/dist/prompts/capabilities/docs-script.js.map +1 -0
  63. package/dist/prompts/capabilities/ops-deploy.d.ts +4 -0
  64. package/dist/prompts/capabilities/ops-deploy.d.ts.map +1 -0
  65. package/dist/prompts/capabilities/ops-deploy.js +193 -0
  66. package/dist/prompts/capabilities/ops-deploy.js.map +1 -0
  67. package/dist/prompts/capabilities/ops-risk.d.ts +4 -0
  68. package/dist/prompts/capabilities/ops-risk.d.ts.map +1 -0
  69. package/dist/prompts/capabilities/ops-risk.js +227 -0
  70. package/dist/prompts/capabilities/ops-risk.js.map +1 -0
  71. package/dist/prompts/capabilities/ops-triage.d.ts +4 -0
  72. package/dist/prompts/capabilities/ops-triage.d.ts.map +1 -0
  73. package/dist/prompts/capabilities/ops-triage.js +183 -0
  74. package/dist/prompts/capabilities/ops-triage.js.map +1 -0
  75. package/dist/prompts/capabilities/review-acls.d.ts +4 -0
  76. package/dist/prompts/capabilities/review-acls.d.ts.map +1 -0
  77. package/dist/prompts/capabilities/review-acls.js +142 -0
  78. package/dist/prompts/capabilities/review-acls.js.map +1 -0
  79. package/dist/prompts/capabilities/review-code.d.ts +4 -0
  80. package/dist/prompts/capabilities/review-code.d.ts.map +1 -0
  81. package/dist/prompts/capabilities/review-code.js +155 -0
  82. package/dist/prompts/capabilities/review-code.js.map +1 -0
  83. package/dist/prompts/capabilities/review-flows.d.ts +4 -0
  84. package/dist/prompts/capabilities/review-flows.d.ts.map +1 -0
  85. package/dist/prompts/capabilities/review-flows.js +413 -0
  86. package/dist/prompts/capabilities/review-flows.js.map +1 -0
  87. package/dist/prompts/capabilities/review-scripts.d.ts +4 -0
  88. package/dist/prompts/capabilities/review-scripts.d.ts.map +1 -0
  89. package/dist/prompts/capabilities/review-scripts.js +160 -0
  90. package/dist/prompts/capabilities/review-scripts.js.map +1 -0
  91. package/dist/prompts/capabilities/scan-automation.d.ts +4 -0
  92. package/dist/prompts/capabilities/scan-automation.d.ts.map +1 -0
  93. package/dist/prompts/capabilities/scan-automation.js +449 -0
  94. package/dist/prompts/capabilities/scan-automation.js.map +1 -0
  95. package/dist/prompts/capabilities/scan-cmdb.d.ts +4 -0
  96. package/dist/prompts/capabilities/scan-cmdb.d.ts.map +1 -0
  97. package/dist/prompts/capabilities/scan-cmdb.js +450 -0
  98. package/dist/prompts/capabilities/scan-cmdb.js.map +1 -0
  99. package/dist/prompts/capabilities/scan-debt.d.ts +4 -0
  100. package/dist/prompts/capabilities/scan-debt.d.ts.map +1 -0
  101. package/dist/prompts/capabilities/scan-debt.js +287 -0
  102. package/dist/prompts/capabilities/scan-debt.js.map +1 -0
  103. package/dist/prompts/capabilities/scan-health.d.ts +4 -0
  104. package/dist/prompts/capabilities/scan-health.d.ts.map +1 -0
  105. package/dist/prompts/capabilities/scan-health.js +235 -0
  106. package/dist/prompts/capabilities/scan-health.js.map +1 -0
  107. package/dist/prompts/capabilities/scan-security.d.ts +4 -0
  108. package/dist/prompts/capabilities/scan-security.d.ts.map +1 -0
  109. package/dist/prompts/capabilities/scan-security.js +370 -0
  110. package/dist/prompts/capabilities/scan-security.js.map +1 -0
  111. package/dist/prompts/capabilities/scan-upgrade.d.ts +4 -0
  112. package/dist/prompts/capabilities/scan-upgrade.d.ts.map +1 -0
  113. package/dist/prompts/capabilities/scan-upgrade.js +327 -0
  114. package/dist/prompts/capabilities/scan-upgrade.js.map +1 -0
  115. package/dist/prompts/index.d.ts +24 -2
  116. package/dist/prompts/index.d.ts.map +1 -1
  117. package/dist/prompts/index.js +160 -14
  118. package/dist/prompts/index.js.map +1 -1
  119. package/dist/prompts/knowledge.d.ts +10 -0
  120. package/dist/prompts/knowledge.d.ts.map +1 -0
  121. package/dist/prompts/knowledge.js +604 -0
  122. package/dist/prompts/knowledge.js.map +1 -0
  123. package/dist/prompts/types.d.ts +38 -0
  124. package/dist/prompts/types.d.ts.map +1 -0
  125. package/dist/prompts/types.js +8 -0
  126. package/dist/prompts/types.js.map +1 -0
  127. package/dist/server.js +3 -3
  128. package/dist/server.js.map +1 -1
  129. package/package.json +11 -3
@@ -0,0 +1,309 @@
1
+ const capability = {
2
+ name: 'build-uib',
3
+ title: 'Build UI Builder Component',
4
+ description: 'Guided UI Builder component creation — macroponents, data sources, responsive layouts, Next Experience',
5
+ category: 'build',
6
+ arguments: [
7
+ {
8
+ name: 'description',
9
+ description: 'what the component should do in plain language',
10
+ required: true,
11
+ },
12
+ {
13
+ name: 'component_type',
14
+ description: 'page, macroponent, data_resource. Default: macroponent',
15
+ required: false,
16
+ },
17
+ ],
18
+ recommendedTools: [
19
+ 'query_records',
20
+ 'list_uib_pages',
21
+ 'get_uib_page',
22
+ 'create_uib_page',
23
+ 'create_uib_component',
24
+ 'list_uib_components',
25
+ 'list_uib_data_brokers',
26
+ 'create_uib_data_broker',
27
+ ],
28
+ buildPrompt(args = {}) {
29
+ const desc = args.description ?? '<not provided>';
30
+ const componentType = args.component_type ?? 'macroponent';
31
+ return [
32
+ {
33
+ role: 'assistant',
34
+ content: {
35
+ type: 'text',
36
+ text: [
37
+ '# Capability: Build UI Builder Component (Next Experience)',
38
+ '',
39
+ '## UI Builder Architecture — Platform Knowledge',
40
+ '',
41
+ '### Core Concepts',
42
+ '- **UI Builder (UIB):** the declarative page builder for Next Experience (workspace, configurable workspace, app shell). Replaces Service Portal for new development.',
43
+ '- **Next Experience:** ServiceNow\'s modern UI framework built on web components (not AngularJS). Uses the Seismic framework (`@seismic/core`).',
44
+ '- **Now Experience Design System (NEDS):** ServiceNow\'s component library providing consistent, accessible, themeable components (now-button, now-input, now-heading, now-card, now-modal, etc.).',
45
+ '',
46
+ '### Component Hierarchy',
47
+ '- **UX Application:** top-level container that defines a workspace or portal experience. Contains pages and navigation.',
48
+ '- **Page:** a routable view within a UX Application. Composed of layout containers, macroponents, and components.',
49
+ '- **Macroponent:** a composite component that bundles child components, data resources, event handlers, and layout. The primary reusable building block.',
50
+ '- **Component:** a single Now Experience web component (NEDS component or custom). The atomic UI unit.',
51
+ '- **Data Resource:** provides data to components. Types: REST, GraphQL, Script, Transform.',
52
+ '',
53
+ '### Macroponent Architecture',
54
+ '- **Composition:** a macroponent arranges child components in a layout tree. Each child is a reference to a base component (NEDS or custom) with configured properties.',
55
+ '- **Properties:** typed inputs that page designers configure. Types: string, number, boolean, object, array, json, choice, reference, glide_object.',
56
+ '- **Internal state:** managed via `updateState` and `state` in component actions. State is private to the macroponent instance.',
57
+ '- **Data Resources:** bound to properties via data binding expressions. When data changes, bound properties update automatically.',
58
+ '- **Event Handlers:** respond to events dispatched by child components. Can trigger component actions, data resource refreshes, or dispatch events upward.',
59
+ '- **Component Actions:** JavaScript functions that execute logic, update state, or interact with data resources.',
60
+ '',
61
+ '### @seismic/core Framework',
62
+ '- **`createCustomElement`:** defines a custom web component with lifecycle hooks.',
63
+ '- **`dispatch`:** emit custom events from a component to its parent macroponent or page.',
64
+ '- **`updateState`:** update internal component state, triggering a re-render.',
65
+ '- **`actionHandlers`:** define named actions that can be triggered by event handlers in the macroponent.',
66
+ '- **Lifecycle hooks:** `connected` (element added to DOM), `disconnected` (removed from DOM), `propertyChanged` (a property value changed).',
67
+ '- **`state` and `properties`:** state is internal/mutable; properties are external/immutable (set by parent).',
68
+ '',
69
+ '### Data Resources',
70
+ '- **REST:** call a ServiceNow REST API (Table API, Import Set API, custom Scripted REST) or external API. Configure URL, method, headers, query params, body. Supports pagination.',
71
+ '- **GraphQL:** query the ServiceNow GraphQL API for efficient, typed data retrieval. Define query, variables, and field mappings.',
72
+ '- **Script:** server-side GlideRecord/GlideQuery script that returns data. Most flexible, but less cacheable. Runs in a scoped script environment.',
73
+ '- **Transform:** take output from another data resource and transform/filter/map it client-side.',
74
+ '- **Binding:** data resource outputs bind to component properties via `@data.resourceName.output.fieldName`.',
75
+ '- **Refresh triggers:** data resources can be configured to refresh on events, intervals, or page parameter changes.',
76
+ '',
77
+ '### Layout System',
78
+ '- UIB uses a **responsive grid** system with configurable breakpoints.',
79
+ '- Layout containers: `now-container`, `now-row`, `now-col` for grid-based layouts.',
80
+ '- **CSS Grid and Flexbox** are supported via custom CSS on macroponents.',
81
+ '- **Breakpoint-aware properties:** set different property values per breakpoint (mobile, tablet, desktop) for responsive behavior.',
82
+ '- Use **layout variants** to define different compositions for different screen sizes.',
83
+ '',
84
+ '### Theming',
85
+ '- UIB supports **theme inheritance** — components inherit theme variables from the UX Application.',
86
+ '- Use NEDS CSS custom properties (e.g., `--now-color--primary-1`, `--now-font-size--md`) for consistent theming.',
87
+ '- Custom CSS should reference theme variables, not hardcoded values.',
88
+ '- Dark mode support is built-in when using NEDS variables.',
89
+ '',
90
+ '### Accessibility (A11y)',
91
+ '- NEDS components are **WCAG 2.1 AA compliant** out of the box.',
92
+ '- Custom macroponents must maintain accessibility: ARIA roles, labels, live regions, keyboard navigation.',
93
+ '- Use `role`, `aria-label`, `aria-labelledby`, `aria-describedby`, `aria-live` on custom containers.',
94
+ '- Ensure keyboard focus management: `tabindex`, focus trapping in modals, skip navigation links.',
95
+ '- Use semantic HTML structure (headings hierarchy, landmarks).',
96
+ '- Screen reader testing: verify all dynamic content changes are announced.',
97
+ '',
98
+ '### Event System',
99
+ '- Components dispatch events via `dispatch(eventName, payload)`.',
100
+ '- Macroponents handle events via event handler mappings: `event → action`.',
101
+ '- Events can propagate upward: component → macroponent → page → UX App.',
102
+ '- Standard events: `NOW_RECORD#SELECTED`, `NOW_MODAL#OPENED`, `NOW_BUTTON#CLICKED`, etc.',
103
+ '- Custom events: define with clear naming convention `[SCOPE]_[COMPONENT]#[ACTION]`.',
104
+ '',
105
+ '### Performance Considerations',
106
+ '- Minimize data resource calls — use GraphQL for efficient field selection.',
107
+ '- Avoid unnecessary re-renders — use `shouldComponentUpdate` logic in action handlers.',
108
+ '- Lazy-load macroponents that are not immediately visible.',
109
+ '- Use data resource caching (TTL) for infrequently changing data.',
110
+ '- Keep component tree depth shallow for faster rendering.',
111
+ '',
112
+ '---',
113
+ '',
114
+ `Starting UIB component build for: **${desc}**`,
115
+ `Component type: **${componentType}**`,
116
+ ].join('\n'),
117
+ },
118
+ },
119
+ {
120
+ role: 'user',
121
+ content: {
122
+ type: 'text',
123
+ text: [
124
+ `Build a UI Builder component for the following requirement:`,
125
+ `**Requirement:** ${desc}`,
126
+ `**Component type:** ${componentType}`,
127
+ '',
128
+ 'Follow these steps exactly:',
129
+ '',
130
+ '### Step 1 — Understand the Requirement',
131
+ 'Parse the requirement and determine:',
132
+ `- **Component type:** ${componentType}. Validate this is appropriate:`,
133
+ ' - **Page:** a full routable view (list page, record page, dashboard). Use when building a complete screen.',
134
+ ' - **Macroponent:** a reusable composite component (data table with filters, form section, card collection). Use for reusable building blocks.',
135
+ ' - **Data Resource:** a data-fetching component (REST, GraphQL, Script). Use when the primary need is data access logic.',
136
+ ' If the chosen type is not appropriate, recommend the correct type and explain why.',
137
+ '- **Data needs:** what tables/APIs provide the data. Identify data sources and their output shape.',
138
+ '- **User interaction:** what actions the user performs (select, filter, create, edit, navigate, approve).',
139
+ '- **Responsive requirements:** how the component behaves on desktop vs tablet vs mobile.',
140
+ '',
141
+ '### Step 2 — Check Existing UIB Components for Reuse',
142
+ 'Use **list_uib_pages** and **list_uib_components** to find existing components with similar functionality:',
143
+ '- Check NEDS components first — many common patterns (tables, forms, cards, modals) already exist.',
144
+ '- Check custom macroponents in the instance for domain-specific components.',
145
+ '- If a suitable component exists, recommend composing with it rather than building from scratch.',
146
+ '',
147
+ '### Step 3 — Design Component Architecture',
148
+ 'Plan the full component structure before building:',
149
+ '',
150
+ '```',
151
+ `COMPONENT: [Name] (${componentType})`,
152
+ ' PROPERTIES (configurable inputs):',
153
+ ' - propertyName: type — description (default value)',
154
+ ' ',
155
+ ' DATA RESOURCES:',
156
+ ' - resourceName: [REST|GraphQL|Script]',
157
+ ' Source: [API/table/script details]',
158
+ ' Output shape: { field: type, ... }',
159
+ ' Refresh: [event|interval|manual]',
160
+ ' ',
161
+ ' CHILD COMPONENTS:',
162
+ ' - now-heading: bound to data.title',
163
+ ' - now-card (repeated): bound to data.items[]',
164
+ ' - now-button: dispatches CUSTOM#ACTION',
165
+ ' ',
166
+ ' EVENT HANDLERS:',
167
+ ' - CHILD_EVENT → actionName → [update state | refresh data | dispatch parent event]',
168
+ ' ',
169
+ ' COMPONENT ACTIONS:',
170
+ ' - actionName(payload): [logic description]',
171
+ ' ',
172
+ ' LAYOUT:',
173
+ ' - Desktop: [grid/flex description]',
174
+ ' - Tablet: [adaptations]',
175
+ ' - Mobile: [adaptations]',
176
+ '```',
177
+ '',
178
+ '### Step 4 — Define Data Sources',
179
+ 'For each data resource the component needs:',
180
+ '',
181
+ '**REST Data Resource:**',
182
+ '- API endpoint (Table API path, Scripted REST endpoint, or external URL).',
183
+ '- HTTP method, headers, query parameters.',
184
+ '- Request body template (for POST/PUT).',
185
+ '- Response mapping: which fields from the response map to output properties.',
186
+ '- Pagination configuration (limit, offset parameters).',
187
+ '',
188
+ '**GraphQL Data Resource:**',
189
+ '- GraphQL query string with variables.',
190
+ '- Variable bindings from component properties.',
191
+ '- Field selection (only request what the template needs).',
192
+ '',
193
+ '**Script Data Resource:**',
194
+ '- Server-side script using GlideRecord/GlideQuery.',
195
+ '- Input parameters from component properties.',
196
+ '- Output object shape.',
197
+ '- Error handling and fallback data.',
198
+ '',
199
+ 'Use **create_uib_data_broker** for each data resource. Bind outputs to component properties using `@data.resourceName.output.fieldName`.',
200
+ '',
201
+ '### Step 5 — Build Responsive Layout',
202
+ 'Design the layout for all breakpoints:',
203
+ '',
204
+ '**Desktop (>= 1200px):**',
205
+ '- Full layout with sidebars, multi-column grids.',
206
+ '- All interactive elements visible.',
207
+ '',
208
+ '**Tablet (768px - 1199px):**',
209
+ '- Reduce columns (3-col → 2-col).',
210
+ '- Collapse secondary sidebars into expandable panels.',
211
+ '',
212
+ '**Mobile (< 768px):**',
213
+ '- Single-column stacked layout.',
214
+ '- Collapse complex tables into card lists.',
215
+ '- Touch-friendly tap targets (min 44x44px).',
216
+ '',
217
+ 'Use NEDS layout components (`now-container`, `now-row`, `now-col`) with breakpoint-aware properties. Set different values per breakpoint for properties like `columns`, `gap`, `visibility`.',
218
+ '',
219
+ '### Step 6 — Implement Client-Side Logic',
220
+ 'Write component actions using @seismic/core patterns:',
221
+ '',
222
+ '**Action Handlers:**',
223
+ '```javascript',
224
+ 'actionHandlers: {',
225
+ ' HANDLE_ITEM_CLICK: ({ action, state, updateState, dispatch }) => {',
226
+ ' const { payload } = action;',
227
+ ' updateState({ selectedItem: payload.item });',
228
+ ' dispatch("ITEM_SELECTED", { sys_id: payload.item.sys_id });',
229
+ ' },',
230
+ ' HANDLE_FILTER_CHANGE: ({ action, state, updateState }) => {',
231
+ ' updateState({ filterValue: action.payload.value, page: 1 });',
232
+ ' // Data resource bound to state.filterValue will auto-refresh',
233
+ ' },',
234
+ ' HANDLE_DATA_LOADED: ({ action, updateState }) => {',
235
+ ' updateState({ items: action.payload.result, loading: false });',
236
+ ' },',
237
+ ' HANDLE_ERROR: ({ action, updateState }) => {',
238
+ ' updateState({ error: action.payload.message, loading: false });',
239
+ ' },',
240
+ '}',
241
+ '```',
242
+ '',
243
+ '**Event Handler Mappings (macroponent config):**',
244
+ '- Map child component events to action handlers.',
245
+ '- Map data resource events (success, error) to action handlers.',
246
+ '- Map page-level events (parameter changes, navigation) to action handlers.',
247
+ '',
248
+ '**State Management:**',
249
+ '- Keep state minimal — derive computed values in actions, not state.',
250
+ '- Use `updateState` for batched state updates (single re-render).',
251
+ '- Avoid storing data resource output in state unless transformation is needed.',
252
+ '',
253
+ '### Step 7 — Accessibility Review',
254
+ 'Verify the component meets WCAG 2.1 AA:',
255
+ '- **ARIA roles:** containers have appropriate landmark roles (`main`, `navigation`, `region`, `complementary`).',
256
+ '- **ARIA labels:** all interactive elements have `aria-label` or `aria-labelledby`.',
257
+ '- **Keyboard navigation:** all interactive elements are reachable via Tab. Enter/Space activate buttons. Escape closes modals.',
258
+ '- **Focus management:** after data loads or view changes, focus moves to the appropriate element. Modals trap focus.',
259
+ '- **Screen reader:** dynamic content changes use `aria-live="polite"` regions. Loading states are announced.',
260
+ '- **Color contrast:** text meets 4.5:1 contrast ratio against background (NEDS handles this when using theme variables).',
261
+ '- **Heading hierarchy:** use proper heading levels (h1 → h2 → h3) without skipping.',
262
+ '',
263
+ '### Step 8 — Create the Component',
264
+ `Use the appropriate tool to create the ${componentType}:`,
265
+ '',
266
+ componentType === 'page'
267
+ ? [
268
+ '- Use **create_uib_page** with:',
269
+ ' - Page title and route path.',
270
+ ' - Layout definition with containers, rows, columns.',
271
+ ' - Macroponent/component instances in each layout slot.',
272
+ ' - Data resource bindings.',
273
+ ' - Page-level event handlers.',
274
+ ].join('\n')
275
+ : componentType === 'data_resource'
276
+ ? [
277
+ '- Use **create_uib_data_broker** with:',
278
+ ' - Resource type (REST, GraphQL, Script).',
279
+ ' - Configuration (endpoint, query, script).',
280
+ ' - Input parameter definitions.',
281
+ ' - Output schema.',
282
+ ' - Caching and refresh configuration.',
283
+ ].join('\n')
284
+ : [
285
+ '- Use **create_uib_component** with:',
286
+ ' - Macroponent name and description.',
287
+ ' - Property definitions (name, type, default, description).',
288
+ ' - Child component composition tree.',
289
+ ' - Data resource definitions and bindings.',
290
+ ' - Event handler mappings.',
291
+ ' - Component actions (JavaScript).',
292
+ ' - CSS/SCSS for layout and styling.',
293
+ ].join('\n'),
294
+ '',
295
+ 'Report the sys_id of the created component.',
296
+ '',
297
+ 'Provide deployment guidance:',
298
+ '1. How to add the component to a UIB page.',
299
+ '2. Which properties need to be configured by the page designer.',
300
+ '3. Which data resources need to be connected.',
301
+ '4. Any workspace or UX App configuration needed.',
302
+ ].join('\n'),
303
+ },
304
+ },
305
+ ];
306
+ },
307
+ };
308
+ export default capability;
309
+ //# sourceMappingURL=build-uib.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"build-uib.js","sourceRoot":"","sources":["../../../src/prompts/capabilities/build-uib.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { CapabilityDefinition } from '../types.js';
2
+ declare const capability: CapabilityDefinition;
3
+ export default capability;
4
+ //# sourceMappingURL=docs-app.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docs-app.d.ts","sourceRoot":"","sources":["../../../src/prompts/capabilities/docs-app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD,QAAA,MAAM,UAAU,EAAE,oBA4OjB,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,234 @@
1
+ const capability = {
2
+ name: 'docs-app',
3
+ title: 'Document Application',
4
+ description: 'Auto-generate comprehensive documentation for a scoped application — tables, scripts, flows, ACLs, catalog items, and architecture',
5
+ category: 'docs',
6
+ arguments: [
7
+ {
8
+ name: 'app',
9
+ description: 'scoped app name or scope prefix e.g. x_myco_app',
10
+ required: true,
11
+ },
12
+ ],
13
+ recommendedTools: [
14
+ 'get_scoped_app',
15
+ 'query_records',
16
+ 'get_table_schema',
17
+ 'list_business_rules',
18
+ 'list_script_includes',
19
+ 'list_client_scripts',
20
+ 'list_ui_policies',
21
+ 'list_ui_actions',
22
+ 'list_acls',
23
+ 'list_flows',
24
+ 'list_catalog_items',
25
+ ],
26
+ buildPrompt(args) {
27
+ const app = args?.app ?? 'Document the application';
28
+ return [
29
+ {
30
+ role: 'assistant',
31
+ content: {
32
+ type: 'text',
33
+ text: [
34
+ '# Capability: Document Application',
35
+ '',
36
+ 'I am a **ServiceNow application documentation specialist**. I generate comprehensive',
37
+ 'documentation for a scoped application by discovering and documenting every artifact type.',
38
+ '',
39
+ '## Documentation Sections',
40
+ '',
41
+ '### 1. Application Overview',
42
+ '',
43
+ 'Use `get_scoped_app` and `query_records` on `sys_scope` to gather:',
44
+ '- Application name, scope (e.g. `x_myco_app`)',
45
+ '- Version, vendor, description',
46
+ '- License model and entitlements',
47
+ '- Dependencies on other apps/plugins',
48
+ '- Application menus and modules',
49
+ '',
50
+ '### 2. Data Model',
51
+ '',
52
+ 'Use `get_table_schema` and `query_records` on `sys_db_object`, `sys_dictionary`, `sys_relationship`:',
53
+ '',
54
+ 'For each table in the app scope:',
55
+ '- **Table definition** — name, label, extends, access controls',
56
+ '- **Fields** — name, type, max length, mandatory, default value, reference target',
57
+ '- **Relationships** — parent-child, reference, many-to-many',
58
+ '- **Indexes** — indexed fields and composite indexes',
59
+ '- **Number prefix** — auto-number configuration',
60
+ '- **Table hierarchy** — inheritance chain and extended tables',
61
+ '',
62
+ 'Output: ER diagram description and field-level detail tables',
63
+ '',
64
+ '### 3. Server-Side Logic',
65
+ '',
66
+ '#### Business Rules',
67
+ 'Use `list_business_rules` filtered by app scope:',
68
+ '- Table, when (before/after/async/display), order',
69
+ '- Filter conditions and role conditions',
70
+ '- Insert/update/delete/query operations',
71
+ '- Script summary — what it does in plain language',
72
+ '- Active/inactive status',
73
+ '',
74
+ '#### Script Includes',
75
+ 'Use `list_script_includes` filtered by app scope:',
76
+ '- Name, API name (scope.ClassName)',
77
+ '- Client callable (true/false)',
78
+ '- Methods and their purposes',
79
+ '- Dependencies on other script includes',
80
+ '- Extends/implements relationships',
81
+ '',
82
+ '#### Fix Scripts',
83
+ 'Use `query_records` on `sys_script_fix`:',
84
+ '- Name, description, run count',
85
+ '- What data it modifies',
86
+ '- When it should be run (install, upgrade, manual)',
87
+ '',
88
+ '#### Scheduled Jobs',
89
+ 'Use `query_records` on `sysauto_script`:',
90
+ '- Name, schedule/frequency, run-as user',
91
+ '- What it does, tables affected',
92
+ '- Active/inactive, last run status',
93
+ '',
94
+ '### 4. Client-Side Logic',
95
+ '',
96
+ '#### Client Scripts',
97
+ 'Use `list_client_scripts` filtered by app scope:',
98
+ '- Type (onChange, onLoad, onSubmit, onCellEdit)',
99
+ '- Table and field (for onChange)',
100
+ '- What it does — UI behavior, validations, field manipulation',
101
+ '- Global vs. scoped',
102
+ '',
103
+ '#### UI Policies',
104
+ 'Use `list_ui_policies` filtered by app scope:',
105
+ '- Table, order, conditions',
106
+ '- Actions: mandatory, visible, read-only (for which fields)',
107
+ '- Script actions (if any)',
108
+ '- Reverse if false behavior',
109
+ '',
110
+ '#### UI Actions',
111
+ 'Use `list_ui_actions` filtered by app scope:',
112
+ '- Table, name, label, action type (form button, list button, link)',
113
+ '- Client/server script behavior',
114
+ '- Conditions and role requirements',
115
+ '',
116
+ '### 5. Security Model',
117
+ '',
118
+ '#### Roles',
119
+ 'Use `query_records` on `sys_user_role`:',
120
+ '- Role names and descriptions',
121
+ '- Role hierarchy (contains/contained by)',
122
+ '- Application-specific roles vs. inherited platform roles',
123
+ '',
124
+ '#### ACLs',
125
+ 'Use `list_acls` filtered by app scope:',
126
+ '- **Table-level ACLs** — read, write, create, delete per role',
127
+ '- **Field-level ACLs** — restricted fields and who can access them',
128
+ '- **Row-level ACLs** — conditional access based on record values',
129
+ '- Advanced scripts in ACLs',
130
+ '- ACL evaluation order',
131
+ '',
132
+ '#### Data Policies',
133
+ 'Use `query_records` on `sys_data_policy2`:',
134
+ '- Read-only fields, mandatory fields (enforced at database level)',
135
+ '- Conditions under which policies apply',
136
+ '',
137
+ '### 6. Flows & Automation',
138
+ '',
139
+ 'Use `list_flows` and `query_records` on flow-related tables:',
140
+ '- **Flows** — trigger type, trigger conditions, actions, subflow calls',
141
+ '- **Subflows** — inputs/outputs, reusable logic',
142
+ '- **Actions** — custom flow actions in the app scope',
143
+ '- **Workflows (legacy)** — if any classic workflows exist',
144
+ '',
145
+ '### 7. Service Catalog',
146
+ '',
147
+ 'Use `list_catalog_items` and `query_records`:',
148
+ '- **Catalog items** — name, category, description, price',
149
+ '- **Variables** — variable sets, types, mandatory, reference qualifiers',
150
+ '- **Variable sets** — reusable variable groups',
151
+ '- **Approval rules** — who approves, conditions, stages',
152
+ '- **Fulfillment** — workflow/flow that processes the request',
153
+ '- **Order guides** — multi-item ordering configurations',
154
+ '',
155
+ '### 8. Integrations',
156
+ '',
157
+ '#### REST Messages',
158
+ 'Use `query_records` on `sys_rest_message`, `sys_rest_message_fn`:',
159
+ '- Outbound REST endpoints, methods, authentication',
160
+ '- Request/response format, headers',
161
+ '',
162
+ '#### Scripted REST APIs',
163
+ 'Use `query_records` on `sys_ws_definition`, `sys_ws_operation`:',
164
+ '- Inbound API resources, methods, ACLs',
165
+ '- Request/response format',
166
+ '',
167
+ '#### Transform Maps',
168
+ 'Use `query_records` on `sys_transform_map`, `sys_transform_entry`:',
169
+ '- Source-to-target field mappings',
170
+ '- Transform scripts and conditions',
171
+ '',
172
+ '#### Import Sets',
173
+ 'Use `query_records` on `sys_data_source`:',
174
+ '- Data sources, type (file, JDBC, REST, etc.)',
175
+ '- Scheduled imports and frequency',
176
+ '',
177
+ '### 9. Portal',
178
+ '',
179
+ 'Use `query_records` on portal-related tables:',
180
+ '- **Widgets** — name, template (HTML), client script, server script, CSS',
181
+ '- **Pages** — URL, layout, widget instances',
182
+ '- **Angular providers** — services, factories',
183
+ '- **Portal themes** — branding, CSS variables',
184
+ '',
185
+ '### 10. Notifications',
186
+ '',
187
+ 'Use `query_records` on `sysevent_email_action`, `sysevent_email_template`:',
188
+ '- **Email notifications** — event/condition, recipients, template',
189
+ '- **Email templates** — subject, body (with variable replacements)',
190
+ '- **SMS/push notifications** — if configured',
191
+ '',
192
+ '## Output Format',
193
+ '',
194
+ 'Generate the complete documentation in clean markdown format:',
195
+ '',
196
+ '```',
197
+ '# [Application Name] — Technical Documentation',
198
+ '## Version: [version] | Scope: [scope]',
199
+ '',
200
+ '### Table of Contents',
201
+ '1. Application Overview',
202
+ '2. Data Model',
203
+ '3. Server-Side Logic',
204
+ '4. Client-Side Logic',
205
+ '5. Security Model',
206
+ '6. Flows & Automation',
207
+ '7. Service Catalog',
208
+ '8. Integrations',
209
+ '9. Portal',
210
+ '10. Notifications',
211
+ '',
212
+ '[Each section with tables, descriptions, and cross-references]',
213
+ '```',
214
+ '',
215
+ 'The documentation should be ready for direct use in a wiki, Confluence, or markdown repository.',
216
+ '',
217
+ '---',
218
+ '',
219
+ 'Starting application documentation.',
220
+ ].join('\n'),
221
+ },
222
+ },
223
+ {
224
+ role: 'user',
225
+ content: {
226
+ type: 'text',
227
+ text: app,
228
+ },
229
+ },
230
+ ];
231
+ },
232
+ };
233
+ export default capability;
234
+ //# sourceMappingURL=docs-app.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docs-app.js","sourceRoot":"","sources":["../../../src/prompts/capabilities/docs-app.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { CapabilityDefinition } from '../types.js';
2
+ declare const capability: CapabilityDefinition;
3
+ export default capability;
4
+ //# sourceMappingURL=docs-release.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docs-release.d.ts","sourceRoot":"","sources":["../../../src/prompts/capabilities/docs-release.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD,QAAA,MAAM,UAAU,EAAE,oBAuMjB,CAAC;AAEF,eAAe,UAAU,CAAC"}