@bluefly/openstandardagents 0.4.9 → 0.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.
Files changed (125) hide show
  1. package/.version.json +3 -3
  2. package/CHANGELOG.md +8 -8
  3. package/README.md +68 -58
  4. package/bin/postinstall +0 -0
  5. package/dist/.version.json +3 -3
  6. package/dist/adapters/claude-code/adapter.js +2 -2
  7. package/dist/adapters/docker/generators.js +19 -19
  8. package/dist/adapters/drupal/generator.js +76 -76
  9. package/dist/adapters/openai-agents/adapter.js +2 -2
  10. package/dist/cli/schema-driven/schema-loader.js +5 -5
  11. package/dist/mcp-server/__tests__/mcp-server.spec.js +20 -11
  12. package/dist/mcp-server/index.js +0 -0
  13. package/dist/package.json +24 -11
  14. package/dist/services/export/langchain/langchain-exporter.js +2 -2
  15. package/dist/services/export/langchain/memory-generator.js +2 -2
  16. package/dist/services/export/testing/test-generator.js +1 -1
  17. package/dist/services/taxonomy-service.d.ts +3 -3
  18. package/dist/skills/test-skill/package.json +1 -1
  19. package/dist/spec/extensions/role-manifest.md +188 -0
  20. package/dist/spec/v0.4/extensions/mcp/README.md +1 -1
  21. package/dist/spec/v0.5/agent.schema.json +2 -1
  22. package/dist/spec/v0.5/extensions/mcp/README.md +1 -1
  23. package/dist/spec/v0.5/role.schema.json +268 -0
  24. package/dist/types/index.d.ts +2 -0
  25. package/dist/types/index.js +2 -0
  26. package/dist/types/role.d.ts +126 -0
  27. package/dist/types/role.js +38 -0
  28. package/dist/validation/validator.js +1 -1
  29. package/examples/agents/01-customer-support-bot/agent.ossa.yaml +24 -31
  30. package/examples/agents/05-sales-assistant/agent.ossa.yaml +35 -23
  31. package/examples/agents/07-research-assistant/agent.ossa.yaml +27 -21
  32. package/examples/agents/10-meeting-assistant/agent.ossa.yaml +27 -35
  33. package/examples/agents/security-audit-agent.ossa.yaml +234 -0
  34. package/examples/agentscope/react-assistant/agent.ossa.yaml +36 -32
  35. package/examples/drupal/content-moderator.ossa.yaml +2 -2
  36. package/examples/drupal/drupal-contributor.ossa.yaml +247 -0
  37. package/examples/export/langchain/production-agent-with-memory/README.md +1 -1
  38. package/examples/export/langchain/production-agent-with-memory/agent.ossa.yaml +13 -23
  39. package/examples/export/langchain/production-agent-with-streaming/agent.ossa.yaml +1 -15
  40. package/examples/export/langchain/production-agent-with-tools/agent.ossa.yaml +28 -29
  41. package/examples/getting-started/01-minimal-agent.ossa.yaml +1 -1
  42. package/examples/getting-started/02-agent-with-tools.ossa.yaml +1 -1
  43. package/examples/getting-started/03-agent-with-safety.ossa.yaml +1 -1
  44. package/examples/getting-started/04-agent-with-messaging.ossa.yaml +1 -1
  45. package/examples/getting-started/05-workflow-composition.ossa.yaml +1 -1
  46. package/examples/getting-started/README.md +3 -3
  47. package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
  48. package/examples/gitlab-agents/gitlab-ci-agent.ossa.yaml +221 -0
  49. package/examples/hierarchical-agent.ossa.yaml +10 -53
  50. package/examples/kagent/ossa-kagent-anthropic.ossa.yaml +2 -25
  51. package/examples/kagent/ossa-kagent-mcp-tools.ossa.yaml +2 -30
  52. package/examples/kagent/ossa-kagent-multi-tool.ossa.yaml +2 -18
  53. package/examples/kagent/ossa-kagent-poc.ossa.yaml +2 -16
  54. package/examples/pipeline-agent.ossa.yaml +3 -3
  55. package/examples/platform-specific/claude-code-subagent.yaml +1 -1
  56. package/examples/platform-specific/cursor-coding-agent.yaml +1 -1
  57. package/examples/platform-specific/warp-terminal-agent.yaml +1 -1
  58. package/examples/production-ready/01-customer-support-bot/agent.ossa.yaml +24 -31
  59. package/examples/production-ready/05-sales-assistant/agent.ossa.yaml +35 -23
  60. package/examples/production-ready/07-research-assistant/agent.ossa.yaml +27 -19
  61. package/examples/production-ready/10-meeting-assistant/agent.ossa.yaml +27 -35
  62. package/examples/reference-implementations/python-client/examples/basic_usage.py +0 -0
  63. package/examples/reference-implementations/python-client/examples/publish_agent.py +0 -0
  64. package/examples/roles/drupal-developer.role.yaml +37 -0
  65. package/examples/roles/platform-operator.role.yaml +28 -0
  66. package/examples/roles/security-auditor.role.yaml +27 -0
  67. package/examples/swarm-agent.ossa.yaml +13 -51
  68. package/examples/team-agent.ossa.yaml +12 -61
  69. package/examples/team-lead-teammate.ossa.yaml +12 -17
  70. package/openapi/agent-communication.yaml +260 -212
  71. package/openapi/agent-crud.yaml +217 -187
  72. package/openapi/agent-discovery.yaml +119 -81
  73. package/openapi/agent-identity.yaml +219 -187
  74. package/openapi/agent-taxonomy.yaml +95 -38
  75. package/openapi/agents-md-service.yaml +103 -30
  76. package/openapi/cli/openapi.yaml +147 -40
  77. package/openapi/core/ossa-core-api.openapi.yaml +327 -271
  78. package/openapi/core/ossa-registry-api.openapi.yaml +298 -235
  79. package/openapi/core/ossa-registry.openapi.yaml +299 -159
  80. package/openapi/core/unified-agent-gateway.openapi.yaml +234 -170
  81. package/openapi/daemon-api.openapi.yaml +323 -181
  82. package/openapi/dev-cli/openapi.yaml +137 -113
  83. package/openapi/github-sync.yaml +62 -19
  84. package/openapi/marketplace-plugin.openapi.yaml +539 -466
  85. package/openapi/ossa-api.openapi.yaml +354 -213
  86. package/openapi/ossa-cli-enhancements.openapi.yaml +108 -89
  87. package/openapi/ossa-cli.yaml +260 -184
  88. package/openapi/protocols/sse-streams.yaml +66 -74
  89. package/openapi/protocols/websocket-events.yaml +61 -54
  90. package/openapi/reference-implementations/aiflow-bridge-api.openapi.yaml +37 -20
  91. package/openapi/reference-implementations/compliance-agent-api.openapi.yaml +35 -23
  92. package/openapi/reference-implementations/crewai-agent-api.openapi.yaml +29 -18
  93. package/openapi/reference-implementations/critic-agent-api.openapi.yaml +45 -19
  94. package/openapi/reference-implementations/document-analyzer-api.openapi.yaml +30 -24
  95. package/openapi/reference-implementations/drupal-agent-api.openapi.yaml +101 -50
  96. package/openapi/reference-implementations/getting-started-hello-world-api.openapi.yaml +33 -22
  97. package/openapi/reference-implementations/gitlab-ml-recommender-api.openapi.yaml +20 -16
  98. package/openapi/reference-implementations/governor-agent-api.openapi.yaml +41 -23
  99. package/openapi/reference-implementations/helm-generator.openapi.yaml +88 -46
  100. package/openapi/reference-implementations/integrator-agent-api.openapi.yaml +30 -20
  101. package/openapi/reference-implementations/judge-agent-api.openapi.yaml +22 -16
  102. package/openapi/reference-implementations/k8s-troubleshooter-api.openapi.yaml +32 -18
  103. package/openapi/reference-implementations/langchain-agent-api.openapi.yaml +32 -21
  104. package/openapi/reference-implementations/monitor-agent-api.openapi.yaml +34 -21
  105. package/openapi/reference-implementations/orchestrator-agent-api.openapi.yaml +49 -27
  106. package/openapi/reference-implementations/quickstart-support-agent-api.openapi.yaml +27 -19
  107. package/openapi/reference-implementations/self-evolving-ecosystem.openapi.yaml +427 -293
  108. package/openapi/reference-implementations/worker-agent-api.openapi.yaml +34 -23
  109. package/openapi/reference-implementations/workflow-orchestrator-api.openapi.yaml +35 -21
  110. package/openapi/release-automation.openapi.yaml +47 -13
  111. package/openapi/schemas/common/agent.yaml +30 -29
  112. package/openapi/schemas/common/errors.yaml +13 -3
  113. package/openapi/schemas/common/metadata.yaml +22 -7
  114. package/openapi/schemas/common/pagination.yaml +18 -6
  115. package/openapi/schemas/common/security.yaml +13 -5
  116. package/openapi/schemas/index.yaml +49 -42
  117. package/openapi/uadp-asyncapi.yaml +4 -2
  118. package/openapi/uadp-openapi.yaml +243 -165
  119. package/openapi/version-management.openapi.yaml +142 -135
  120. package/package.json +114 -103
  121. package/spec/extensions/role-manifest.md +188 -0
  122. package/spec/v0.4/extensions/mcp/README.md +1 -1
  123. package/spec/v0.5/agent.schema.json +2 -1
  124. package/spec/v0.5/extensions/mcp/README.md +1 -1
  125. package/spec/v0.5/role.schema.json +268 -0
@@ -4,27 +4,29 @@ info:
4
4
  version: 0.3.3
5
5
  description: |
6
6
  **Drupal llm-platform API for Agent Integration**
7
-
7
+
8
8
  Single source of truth for all agent data:
9
9
  - Content management (nodes, taxonomy, media)
10
10
  - User management (users, roles, permissions)
11
11
  - Site building (modules, config, deployments)
12
12
  - Data aggregation (reports, analytics, tracking)
13
13
  - Workflow orchestration (agent tasks, CI/CD jobs)
14
-
14
+
15
15
  All agents write/read data through this API.
16
16
  Drupal becomes the central data store and management platform.
17
-
17
+ contact:
18
+ name: Bluefly OSSA Team
19
+ url: https://gitlab.com/blueflyio/ossa/openstandardagents
18
20
  servers:
19
21
  - url: https://platform.orb.local/api/v1
20
22
  description: Production
21
23
  - url: http://drupal-platform.default.svc.cluster.local/api/v1
22
24
  description: Kubernetes internal
23
-
24
25
  security:
25
- - OAuth2: [read, write]
26
+ - OAuth2:
27
+ - read
28
+ - write
26
29
  - ApiKeyAuth: []
27
-
28
30
  tags:
29
31
  - name: content
30
32
  description: Content node operations
@@ -36,12 +38,11 @@ tags:
36
38
  description: Agent session/task tracking
37
39
  - name: workflows
38
40
  description: Workflow orchestration
39
-
40
41
  paths:
41
- # Content CRUD
42
42
  /content:
43
43
  post:
44
- tags: [content]
44
+ tags:
45
+ - content
45
46
  summary: Create content node
46
47
  operationId: createContent
47
48
  requestBody:
@@ -49,17 +50,22 @@ paths:
49
50
  content:
50
51
  application/json:
51
52
  schema:
52
- $ref: '#/components/schemas/ContentCreateRequest'
53
+ $ref: "#/components/schemas/ContentCreateRequest"
53
54
  responses:
54
- '201':
55
+ "201":
55
56
  description: Content created
56
57
  content:
57
58
  application/json:
58
59
  schema:
59
- $ref: '#/components/schemas/ContentResponse'
60
-
60
+ $ref: "#/components/schemas/ContentResponse"
61
+ x-ossa-capability: reference-create-content
62
+ x-ossa-autonomy:
63
+ level: supervised
64
+ approval_required: true
65
+ description: Create content node
61
66
  get:
62
- tags: [content]
67
+ tags:
68
+ - content
63
69
  summary: Query content
64
70
  operationId: queryContent
65
71
  parameters:
@@ -77,18 +83,20 @@ paths:
77
83
  type: integer
78
84
  default: 50
79
85
  responses:
80
- '200':
86
+ "200":
81
87
  description: Content list
82
88
  content:
83
89
  application/json:
84
90
  schema:
85
91
  type: array
86
92
  items:
87
- $ref: '#/components/schemas/ContentResponse'
88
-
93
+ $ref: "#/components/schemas/ContentResponse"
94
+ x-ossa-capability: reference-query-content
95
+ description: Query content
89
96
  /content/{nid}:
90
97
  get:
91
- tags: [content]
98
+ tags:
99
+ - content
92
100
  summary: Get content by ID
93
101
  operationId: getContent
94
102
  parameters:
@@ -98,15 +106,17 @@ paths:
98
106
  schema:
99
107
  type: integer
100
108
  responses:
101
- '200':
109
+ "200":
102
110
  description: Content node
103
111
  content:
104
112
  application/json:
105
113
  schema:
106
- $ref: '#/components/schemas/ContentResponse'
107
-
114
+ $ref: "#/components/schemas/ContentResponse"
115
+ x-ossa-capability: reference-get-content
116
+ description: Get content by ID
108
117
  put:
109
- tags: [content]
118
+ tags:
119
+ - content
110
120
  summary: Update content
111
121
  operationId: updateContent
112
122
  parameters:
@@ -120,13 +130,18 @@ paths:
120
130
  content:
121
131
  application/json:
122
132
  schema:
123
- $ref: '#/components/schemas/ContentUpdateRequest'
133
+ $ref: "#/components/schemas/ContentUpdateRequest"
124
134
  responses:
125
- '200':
135
+ "200":
126
136
  description: Content updated
127
-
137
+ x-ossa-capability: reference-update-content
138
+ x-ossa-autonomy:
139
+ level: supervised
140
+ approval_required: true
141
+ description: Update content
128
142
  delete:
129
- tags: [content]
143
+ tags:
144
+ - content
130
145
  summary: Delete content
131
146
  operationId: deleteContent
132
147
  parameters:
@@ -136,13 +151,17 @@ paths:
136
151
  schema:
137
152
  type: integer
138
153
  responses:
139
- '204':
154
+ "204":
140
155
  description: Content deleted
141
-
142
- # Agent Tracking
156
+ x-ossa-capability: reference-delete-content
157
+ x-ossa-autonomy:
158
+ level: supervised
159
+ approval_required: true
160
+ description: Delete content
143
161
  /agents/sessions:
144
162
  post:
145
- tags: [agents]
163
+ tags:
164
+ - agents
146
165
  summary: Create agent session
147
166
  description: Track agent activity in Drupal
148
167
  operationId: createAgentSession
@@ -160,11 +179,15 @@ paths:
160
179
  type: string
161
180
  session_type:
162
181
  type: string
163
- enum: [coding, chat, workflow, deployment]
182
+ enum:
183
+ - coding
184
+ - chat
185
+ - workflow
186
+ - deployment
164
187
  metadata:
165
188
  type: object
166
189
  responses:
167
- '201':
190
+ "201":
168
191
  description: Session created
169
192
  content:
170
193
  application/json:
@@ -175,10 +198,14 @@ paths:
175
198
  type: string
176
199
  drupal_nid:
177
200
  type: integer
178
-
201
+ x-ossa-capability: reference-create-agent-session
202
+ x-ossa-autonomy:
203
+ level: supervised
204
+ approval_required: true
179
205
  /agents/tasks:
180
206
  post:
181
- tags: [agents]
207
+ tags:
208
+ - agents
182
209
  summary: Log agent task
183
210
  description: Store agent task execution in Drupal for tracking/reporting
184
211
  operationId: logAgentTask
@@ -199,7 +226,11 @@ paths:
199
226
  type: string
200
227
  status:
201
228
  type: string
202
- enum: [queued, running, completed, failed]
229
+ enum:
230
+ - queued
231
+ - running
232
+ - completed
233
+ - failed
203
234
  input:
204
235
  type: object
205
236
  output:
@@ -209,13 +240,16 @@ paths:
209
240
  error:
210
241
  type: string
211
242
  responses:
212
- '201':
243
+ "201":
213
244
  description: Task logged
214
-
215
- # Site Building
245
+ x-ossa-capability: reference-log-agent-task
246
+ x-ossa-autonomy:
247
+ level: supervised
248
+ approval_required: true
216
249
  /sites/create:
217
250
  post:
218
- tags: [sites]
251
+ tags:
252
+ - sites
219
253
  summary: Build new Drupal site
220
254
  description: Agent orchestrates complete site build via GitLab CI
221
255
  operationId: createSite
@@ -235,17 +269,20 @@ paths:
235
269
  type: array
236
270
  items:
237
271
  type: string
238
- example: ["ai_agents", "ai_provider_langchain", "mcp_registry"]
272
+ example:
273
+ - ai_agents
274
+ - ai_provider_langchain
275
+ - mcp_registry
239
276
  theme:
240
277
  type: string
241
- default: "llm_platform_enterprise"
278
+ default: llm_platform_enterprise
242
279
  config:
243
280
  type: object
244
281
  agent_id:
245
282
  type: string
246
283
  description: Agent responsible for build
247
284
  responses:
248
- '202':
285
+ "202":
249
286
  description: Site build started
250
287
  content:
251
288
  application/json:
@@ -260,7 +297,10 @@ paths:
260
297
  status_url:
261
298
  type: string
262
299
  format: uri
263
-
300
+ x-ossa-capability: reference-create-site
301
+ x-ossa-autonomy:
302
+ level: supervised
303
+ approval_required: true
264
304
  components:
265
305
  securitySchemes:
266
306
  OAuth2:
@@ -273,12 +313,10 @@ components:
273
313
  read: Read access
274
314
  write: Write access
275
315
  admin: Admin access
276
-
277
316
  ApiKeyAuth:
278
317
  type: apiKey
279
318
  in: header
280
319
  name: X-API-Key
281
-
282
320
  schemas:
283
321
  ContentCreateRequest:
284
322
  type: object
@@ -298,7 +336,7 @@ components:
298
336
  type: string
299
337
  format:
300
338
  type: string
301
- default: "markdown"
339
+ default: markdown
302
340
  fields:
303
341
  type: object
304
342
  additionalProperties: true
@@ -309,7 +347,6 @@ components:
309
347
  type: string
310
348
  session_id:
311
349
  type: string
312
-
313
350
  ContentResponse:
314
351
  type: object
315
352
  properties:
@@ -332,7 +369,6 @@ components:
332
369
  changed:
333
370
  type: string
334
371
  format: date-time
335
-
336
372
  ContentUpdateRequest:
337
373
  type: object
338
374
  properties:
@@ -344,5 +380,20 @@ components:
344
380
  type: object
345
381
  status:
346
382
  type: string
347
- enum: [published, draft, archived]
348
-
383
+ enum:
384
+ - published
385
+ - draft
386
+ - archived
387
+ x-ossa-metadata:
388
+ version: 0.3.3
389
+ compliance:
390
+ level: standard
391
+ observability:
392
+ tracing: true
393
+ metrics: true
394
+ logging: true
395
+ x-ossa:
396
+ version: 0.5.0
397
+ agent:
398
+ id: reference-implementations-drupal-agent-api
399
+ type: specialist
@@ -6,7 +6,9 @@ info:
6
6
  Minimal OSSA-compliant agent API demonstrating basic capabilities.
7
7
  This agent can greet users, echo messages, and report its status.
8
8
  Perfect for learning OSSA fundamentals and testing deployments.
9
-
9
+ contact:
10
+ name: Bluefly OSSA Team
11
+ url: https://gitlab.com/blueflyio/ossa/openstandardagents
10
12
  x-ossa-metadata:
11
13
  version: 0.2.5-RC
12
14
  compliance:
@@ -14,22 +16,23 @@ x-ossa-metadata:
14
16
  frameworks:
15
17
  - OSSA
16
18
  - OpenAPI 3.1
17
-
19
+ observability:
20
+ tracing: true
21
+ metrics: true
22
+ logging: true
18
23
  x-ossa:
19
24
  version: 0.2.5-RC
20
25
  agent:
21
- id: hello-world-agent
22
- type: worker
26
+ id: reference-implementations-getting-started-hello-world-api
27
+ type: specialist
23
28
  compliance:
24
29
  standards:
25
30
  - openapi-first
26
31
  validated: true
27
- validatedAt: "2024-01-15T10:00:00Z"
28
-
32
+ validatedAt: 2024-01-15T10:00:00Z
29
33
  servers:
30
34
  - url: http://localhost:3000
31
35
  description: Local development server
32
-
33
36
  tags:
34
37
  - name: greeting
35
38
  description: Greeting operations
@@ -37,14 +40,14 @@ tags:
37
40
  description: Echo operations
38
41
  - name: status
39
42
  description: Status operations
40
-
41
43
  paths:
42
44
  /greet:
43
45
  post:
44
46
  summary: Generate greeting
45
47
  description: Generates a personalized greeting message for a user
46
48
  operationId: greet
47
- tags: [greeting]
49
+ tags:
50
+ - greeting
48
51
  x-ossa-capability: greeting
49
52
  x-ossa-autonomy:
50
53
  level: autonomous
@@ -59,19 +62,24 @@ paths:
59
62
  application/json:
60
63
  schema:
61
64
  type: object
62
- required: [name]
65
+ required:
66
+ - name
63
67
  properties:
64
68
  name:
65
69
  type: string
66
70
  description: Name to greet
67
- example: "Alice"
71
+ example: Alice
68
72
  language:
69
73
  type: string
70
- enum: [en, es, fr, de]
74
+ enum:
75
+ - en
76
+ - es
77
+ - fr
78
+ - de
71
79
  default: en
72
80
  description: Language for greeting
73
81
  responses:
74
- '200':
82
+ "200":
75
83
  description: Greeting generated successfully
76
84
  content:
77
85
  application/json:
@@ -84,13 +92,13 @@ paths:
84
92
  timestamp:
85
93
  type: string
86
94
  format: date-time
87
-
88
95
  /echo:
89
96
  post:
90
97
  summary: Echo input
91
98
  description: Echo back a message sent to the agent
92
99
  operationId: echo
93
- tags: [echo]
100
+ tags:
101
+ - echo
94
102
  x-ossa-capability: echo_message
95
103
  x-ossa-autonomy:
96
104
  level: autonomous
@@ -101,13 +109,14 @@ paths:
101
109
  application/json:
102
110
  schema:
103
111
  type: object
104
- required: [message]
112
+ required:
113
+ - message
105
114
  properties:
106
115
  message:
107
116
  type: string
108
117
  description: Message to echo
109
118
  responses:
110
- '200':
119
+ "200":
111
120
  description: Message echoed
112
121
  content:
113
122
  application/json:
@@ -119,19 +128,19 @@ paths:
119
128
  received_at:
120
129
  type: string
121
130
  format: date-time
122
-
123
131
  /status:
124
132
  get:
125
133
  summary: Get agent status
126
134
  description: Returns the current status of the agent
127
135
  operationId: getStatus
128
- tags: [status]
136
+ tags:
137
+ - status
129
138
  x-ossa-capability: get_status
130
139
  x-ossa-autonomy:
131
140
  level: autonomous
132
141
  approval_required: false
133
142
  responses:
134
- '200':
143
+ "200":
135
144
  description: Agent status
136
145
  content:
137
146
  application/json:
@@ -140,10 +149,12 @@ paths:
140
149
  properties:
141
150
  status:
142
151
  type: string
143
- enum: [online, offline, maintenance]
152
+ enum:
153
+ - online
154
+ - offline
155
+ - maintenance
144
156
  version:
145
157
  type: string
146
158
  uptime:
147
159
  type: integer
148
160
  description: Uptime in seconds
149
-
@@ -5,7 +5,9 @@ info:
5
5
  description: |
6
6
  AI-powered customer success recommendation agent using RAG (Retrieval-Augmented Generation).
7
7
  Provides data-driven recommendations for proactive customer engagement.
8
-
8
+ contact:
9
+ name: Bluefly OSSA Team
10
+ url: https://gitlab.com/blueflyio/ossa/openstandardagents
9
11
  x-ossa-metadata:
10
12
  version: 0.2.5-RC
11
13
  compliance:
@@ -13,29 +15,29 @@ x-ossa-metadata:
13
15
  frameworks:
14
16
  - OSSA
15
17
  - OpenAPI 3.1
16
-
18
+ observability:
19
+ tracing: true
20
+ metrics: true
21
+ logging: true
17
22
  x-ossa:
18
23
  version: 0.3.3
19
24
  agent:
20
- id: gitlab-ml-recommender
21
- type: integrator
25
+ id: reference-implementations-gitlab-ml-recommender-api
26
+ type: specialist
22
27
  compliance:
23
28
  standards:
24
29
  - openapi-first
25
30
  - type-safe
26
31
  validated: true
27
- validatedAt: "2024-01-15T10:00:00Z"
28
-
32
+ validatedAt: 2024-01-15T10:00:00Z
29
33
  servers:
30
34
  - url: https://ml-recommender.platform.com/api/v1
31
35
  description: Production
32
-
33
36
  tags:
34
37
  - name: recommendations
35
38
  description: Recommendation operations
36
39
  - name: search
37
40
  description: Semantic search operations
38
-
39
41
  paths:
40
42
  /recommendations/generate:
41
43
  post:
@@ -44,7 +46,8 @@ paths:
44
46
  Generate AI-powered recommendations using RAG pipeline.
45
47
  Performs semantic search in Qdrant and generates recommendations with GPT-4.
46
48
  operationId: generateRecommendations
47
- tags: [recommendations]
49
+ tags:
50
+ - recommendations
48
51
  x-ossa-capability: generate-recommendations
49
52
  x-ossa-autonomy:
50
53
  level: autonomous
@@ -59,7 +62,8 @@ paths:
59
62
  application/json:
60
63
  schema:
61
64
  type: object
62
- required: [customer_id]
65
+ required:
66
+ - customer_id
63
67
  properties:
64
68
  customer_id:
65
69
  type: string
@@ -72,7 +76,7 @@ paths:
72
76
  default: 10
73
77
  description: Maximum number of recommendations
74
78
  responses:
75
- '200':
79
+ "200":
76
80
  description: Recommendations generated
77
81
  content:
78
82
  application/json:
@@ -98,13 +102,13 @@ paths:
98
102
  type: string
99
103
  customer_health_score:
100
104
  type: number
101
-
102
105
  /search/semantic:
103
106
  post:
104
107
  summary: Semantic search
105
108
  description: Perform semantic search in Qdrant vector database
106
109
  operationId: semanticSearch
107
- tags: [search]
110
+ tags:
111
+ - search
108
112
  x-ossa-capability: semantic-search
109
113
  x-ossa-autonomy:
110
114
  level: autonomous
@@ -115,7 +119,8 @@ paths:
115
119
  application/json:
116
120
  schema:
117
121
  type: object
118
- required: [query]
122
+ required:
123
+ - query
119
124
  properties:
120
125
  query:
121
126
  type: string
@@ -128,7 +133,7 @@ paths:
128
133
  type: object
129
134
  description: Additional filters for search
130
135
  responses:
131
- '200':
136
+ "200":
132
137
  description: Search results
133
138
  content:
134
139
  application/json:
@@ -148,4 +153,3 @@ paths:
148
153
  type: number
149
154
  metadata:
150
155
  type: object
151
-