@bluefly/openstandardagents 0.2.4 → 0.2.7

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 (511) hide show
  1. package/.cursorrules +84 -0
  2. package/.devfile.yaml +87 -0
  3. package/.env.example +25 -3
  4. package/.github/ISSUE_TEMPLATE/bug_report.yml +63 -0
  5. package/.github/ISSUE_TEMPLATE/feature_request.yml +40 -0
  6. package/.github/workflows/dependabot-comment.yml +34 -0
  7. package/.github/workflows/pr-comment.yml +33 -0
  8. package/.github/workflows/release.yml +1 -1
  9. package/.husky/pre-commit +5 -0
  10. package/.kiro/config.json +21 -0
  11. package/.kiro/settings/mcp.json +61 -0
  12. package/.kiro/specs/scripts-migration-api-first/design.md +883 -0
  13. package/.kiro/specs/scripts-migration-api-first/requirements.md +165 -0
  14. package/.kiro/specs/scripts-migration-api-first/tasks.md +539 -0
  15. package/.kiro/specs/website-brand-identity/design.md +1060 -0
  16. package/.kiro/specs/website-brand-identity/requirements.md +287 -0
  17. package/.kiro/specs/website-brand-identity/tasks.md +981 -0
  18. package/.releaserc.json +5 -4
  19. package/.version.json +6 -0
  20. package/CHANGELOG.md +163 -96
  21. package/CONTRIBUTING.md +23 -5
  22. package/README.md +130 -43
  23. package/bin/ossa +24 -3
  24. package/bin/ossa-dev +42 -0
  25. package/bin/ossa-export +32 -0
  26. package/bin/ossa-generate +60 -0
  27. package/bin/ossa-health +40 -0
  28. package/bin/ossa-init +26 -0
  29. package/bin/ossa-validate-all +55 -0
  30. package/bin/ossa-version +23 -0
  31. package/bin/validate-ossa-0.2.4.ts +244 -0
  32. package/bin/validate-ossa-0.2.5-RC.ts +244 -0
  33. package/bin/validate-ossa.ts +273 -0
  34. package/dist/di-container.d.ts +1 -1
  35. package/dist/di-container.d.ts.map +1 -1
  36. package/dist/di-container.js.map +1 -1
  37. package/dist/repositories/schema.repository.d.ts +17 -2
  38. package/dist/repositories/schema.repository.d.ts.map +1 -1
  39. package/dist/repositories/schema.repository.js +102 -19
  40. package/dist/repositories/schema.repository.js.map +1 -1
  41. package/dist/services/generation.service.d.ts +7 -5
  42. package/dist/services/generation.service.d.ts.map +1 -1
  43. package/dist/services/generation.service.js +92 -44
  44. package/dist/services/generation.service.js.map +1 -1
  45. package/dist/services/github-sync/github-client.d.ts +14 -0
  46. package/dist/services/github-sync/github-client.d.ts.map +1 -0
  47. package/dist/services/github-sync/github-client.js +41 -0
  48. package/dist/services/github-sync/github-client.js.map +1 -0
  49. package/dist/services/github-sync/gitlab-client.d.ts +17 -0
  50. package/dist/services/github-sync/gitlab-client.d.ts.map +1 -0
  51. package/dist/services/github-sync/gitlab-client.js +42 -0
  52. package/dist/services/github-sync/gitlab-client.js.map +1 -0
  53. package/dist/services/github-sync/schemas.d.ts +46 -0
  54. package/dist/services/github-sync/schemas.d.ts.map +1 -0
  55. package/dist/services/github-sync/schemas.js +36 -0
  56. package/dist/services/github-sync/schemas.js.map +1 -0
  57. package/dist/services/github-sync/sync.service.d.ts +27 -0
  58. package/dist/services/github-sync/sync.service.d.ts.map +1 -0
  59. package/dist/services/github-sync/sync.service.js +99 -0
  60. package/dist/services/github-sync/sync.service.js.map +1 -0
  61. package/dist/services/gitlab-agent.service.d.ts +94 -0
  62. package/dist/services/gitlab-agent.service.d.ts.map +1 -0
  63. package/dist/services/gitlab-agent.service.js +162 -0
  64. package/dist/services/gitlab-agent.service.js.map +1 -0
  65. package/dist/services/migration.service.d.ts +3 -3
  66. package/dist/services/migration.service.d.ts.map +1 -1
  67. package/dist/services/migration.service.js +108 -61
  68. package/dist/services/migration.service.js.map +1 -1
  69. package/dist/services/release-automation/base-crud.service.d.ts +93 -0
  70. package/dist/services/release-automation/base-crud.service.d.ts.map +1 -0
  71. package/dist/services/release-automation/base-crud.service.js +68 -0
  72. package/dist/services/release-automation/base-crud.service.js.map +1 -0
  73. package/dist/services/release-automation/index.d.ts +12 -0
  74. package/dist/services/release-automation/index.d.ts.map +1 -0
  75. package/dist/services/release-automation/index.js +12 -0
  76. package/dist/services/release-automation/index.js.map +1 -0
  77. package/dist/services/release-automation/merge-request.service.d.ts +119 -0
  78. package/dist/services/release-automation/merge-request.service.d.ts.map +1 -0
  79. package/dist/services/release-automation/merge-request.service.js +212 -0
  80. package/dist/services/release-automation/merge-request.service.js.map +1 -0
  81. package/dist/services/release-automation/milestone.service.d.ts +104 -0
  82. package/dist/services/release-automation/milestone.service.d.ts.map +1 -0
  83. package/dist/services/release-automation/milestone.service.js +207 -0
  84. package/dist/services/release-automation/milestone.service.js.map +1 -0
  85. package/dist/services/release-automation/release.service.d.ts +118 -0
  86. package/dist/services/release-automation/release.service.d.ts.map +1 -0
  87. package/dist/services/release-automation/release.service.js +207 -0
  88. package/dist/services/release-automation/release.service.js.map +1 -0
  89. package/dist/services/release-automation/schemas/release.schema.d.ts +299 -0
  90. package/dist/services/release-automation/schemas/release.schema.d.ts.map +1 -0
  91. package/dist/services/release-automation/schemas/release.schema.js +269 -0
  92. package/dist/services/release-automation/schemas/release.schema.js.map +1 -0
  93. package/dist/services/release-automation/tag.service.d.ts +99 -0
  94. package/dist/services/release-automation/tag.service.d.ts.map +1 -0
  95. package/dist/services/release-automation/tag.service.js +180 -0
  96. package/dist/services/release-automation/tag.service.js.map +1 -0
  97. package/dist/services/release-automation/webhook.service.d.ts +37 -0
  98. package/dist/services/release-automation/webhook.service.d.ts.map +1 -0
  99. package/dist/services/release-automation/webhook.service.js +173 -0
  100. package/dist/services/release-automation/webhook.service.js.map +1 -0
  101. package/dist/services/runtime/claude/capability-mapper.d.ts +84 -0
  102. package/dist/services/runtime/claude/capability-mapper.d.ts.map +1 -0
  103. package/dist/services/runtime/claude/capability-mapper.js +245 -0
  104. package/dist/services/runtime/claude/capability-mapper.js.map +1 -0
  105. package/dist/services/runtime/claude/claude-adapter.d.ts +80 -0
  106. package/dist/services/runtime/claude/claude-adapter.d.ts.map +1 -0
  107. package/dist/services/runtime/claude/claude-adapter.js +287 -0
  108. package/dist/services/runtime/claude/claude-adapter.js.map +1 -0
  109. package/dist/services/runtime/claude/manifest-parser.d.ts +77 -0
  110. package/dist/services/runtime/claude/manifest-parser.d.ts.map +1 -0
  111. package/dist/services/runtime/claude/manifest-parser.js +169 -0
  112. package/dist/services/runtime/claude/manifest-parser.js.map +1 -0
  113. package/dist/services/runtime/claude/types.d.ts +115 -0
  114. package/dist/services/runtime/claude/types.d.ts.map +1 -0
  115. package/dist/services/runtime/claude/types.js +6 -0
  116. package/dist/services/runtime/claude/types.js.map +1 -0
  117. package/dist/services/runtime/openai.adapter.d.ts.map +1 -1
  118. package/dist/services/runtime/openai.adapter.js.map +1 -1
  119. package/dist/services/validation.service.d.ts.map +1 -1
  120. package/dist/services/validation.service.js +35 -11
  121. package/dist/services/validation.service.js.map +1 -1
  122. package/dist/services/validators/anthropic.validator.d.ts +2 -2
  123. package/dist/services/validators/anthropic.validator.d.ts.map +1 -1
  124. package/dist/services/validators/anthropic.validator.js +14 -9
  125. package/dist/services/validators/anthropic.validator.js.map +1 -1
  126. package/dist/services/validators/autogen.validator.d.ts +2 -2
  127. package/dist/services/validators/autogen.validator.d.ts.map +1 -1
  128. package/dist/services/validators/autogen.validator.js +18 -15
  129. package/dist/services/validators/autogen.validator.js.map +1 -1
  130. package/dist/services/validators/crewai.validator.d.ts +2 -2
  131. package/dist/services/validators/crewai.validator.d.ts.map +1 -1
  132. package/dist/services/validators/crewai.validator.js +18 -17
  133. package/dist/services/validators/crewai.validator.js.map +1 -1
  134. package/dist/services/validators/cursor.validator.d.ts +2 -2
  135. package/dist/services/validators/cursor.validator.d.ts.map +1 -1
  136. package/dist/services/validators/cursor.validator.js +15 -11
  137. package/dist/services/validators/cursor.validator.js.map +1 -1
  138. package/dist/services/validators/langchain.validator.d.ts +2 -2
  139. package/dist/services/validators/langchain.validator.d.ts.map +1 -1
  140. package/dist/services/validators/langchain.validator.js +14 -11
  141. package/dist/services/validators/langchain.validator.js.map +1 -1
  142. package/dist/services/validators/langflow.validator.d.ts +2 -2
  143. package/dist/services/validators/langflow.validator.d.ts.map +1 -1
  144. package/dist/services/validators/langflow.validator.js +14 -9
  145. package/dist/services/validators/langflow.validator.js.map +1 -1
  146. package/dist/services/validators/langgraph.validator.d.ts +2 -2
  147. package/dist/services/validators/langgraph.validator.d.ts.map +1 -1
  148. package/dist/services/validators/langgraph.validator.js +23 -18
  149. package/dist/services/validators/langgraph.validator.js.map +1 -1
  150. package/dist/services/validators/llamaindex.validator.d.ts +2 -2
  151. package/dist/services/validators/llamaindex.validator.d.ts.map +1 -1
  152. package/dist/services/validators/llamaindex.validator.js +19 -16
  153. package/dist/services/validators/llamaindex.validator.js.map +1 -1
  154. package/dist/services/validators/openai.validator.d.ts +2 -2
  155. package/dist/services/validators/openai.validator.d.ts.map +1 -1
  156. package/dist/services/validators/openai.validator.js +20 -16
  157. package/dist/services/validators/openai.validator.js.map +1 -1
  158. package/dist/services/validators/vercel-ai.validator.d.ts +2 -2
  159. package/dist/services/validators/vercel-ai.validator.d.ts.map +1 -1
  160. package/dist/services/validators/vercel-ai.validator.js +16 -15
  161. package/dist/services/validators/vercel-ai.validator.js.map +1 -1
  162. package/dist/spec/v0.2.0/ossa-0.2.0.schema.json +0 -0
  163. package/dist/spec/v0.2.1/ossa-0.2.1.schema.json +555 -0
  164. package/dist/spec/v0.2.3/CHANGELOG.md +7 -7
  165. package/dist/spec/v0.2.3/README.md +9 -9
  166. package/dist/spec/v0.2.3/migrations/v0.2.2-to-v0.2.3.md +18 -18
  167. package/{spec/v0.2.4-dev → dist/spec/v0.2.4}/CHANGELOG.md +8 -8
  168. package/dist/spec/{v0.2.4-dev → v0.2.4}/migrations/v0.2.3-to-v0.2.4.md +10 -10
  169. package/dist/spec/{v0.2.4-dev/ossa-0.2.4-dev.yaml → v0.2.4/ossa-0.2.4.yaml} +1 -1
  170. package/dist/spec/v0.2.5/CHANGELOG.md +401 -0
  171. package/dist/spec/v0.2.5/README.md +72 -0
  172. package/dist/spec/v0.2.5/migrations/v0.2.3-to-v0.2.4.md +599 -0
  173. package/dist/spec/v0.2.5/ossa-0.2.5.schema.json +1696 -0
  174. package/dist/spec/v0.2.5/ossa-0.2.5.yaml +581 -0
  175. package/dist/spec/v0.2.5-RC/CHANGELOG.md +401 -0
  176. package/dist/spec/v0.2.5-RC/README.md +72 -0
  177. package/{spec/v0.2.4-dev → dist/spec/v0.2.5-RC}/migrations/v0.2.3-to-v0.2.4.md +10 -10
  178. package/dist/spec/v0.2.5-RC/ossa-0.2.5-RC.schema.json +1696 -0
  179. package/dist/spec/v0.2.5-RC/ossa-0.2.5-RC.yaml +581 -0
  180. package/dist/spec/v0.2.6/CHANGELOG.md +401 -0
  181. package/dist/spec/v0.2.6/README.md +72 -0
  182. package/dist/spec/v0.2.6/migrations/v0.2.3-to-v0.2.4.md +599 -0
  183. package/dist/spec/v0.2.6/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  184. package/dist/spec/v0.2.6/ossa-0.2.6.schema.json +1786 -0
  185. package/dist/spec/v0.2.6/ossa-0.2.6.yaml +581 -0
  186. package/dist/spec/v0.2.6-dev/CHANGELOG.md +164 -0
  187. package/dist/spec/v0.2.6-dev/README.md +75 -0
  188. package/dist/spec/v0.2.6-dev/migrations/v0.2.2-to-v0.2.3.md +343 -0
  189. package/dist/spec/v0.2.6-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
  190. package/dist/spec/v0.2.6-dev/ossa-0.2.5.schema.json +1696 -0
  191. package/dist/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
  192. package/dist/spec/{v0.2.5-dev/ossa-0.2.5-dev.schema.json → v0.2.6-dev/ossa-0.2.6-dev.schema.json} +323 -359
  193. package/dist/spec/v0.2.6-dev/ossa-0.2.6-dev.yaml +448 -0
  194. package/dist/spec/v0.2.7/core/agentgraph.md +324 -0
  195. package/dist/spec/v0.2.7/resources/agentgraph.yaml +135 -0
  196. package/dist/types/index.d.ts +6 -1
  197. package/dist/types/index.d.ts.map +1 -1
  198. package/docs/brand-guide/01-brand-overview.md +37 -0
  199. package/docs/brand-guide/02-logo-usage.md +43 -0
  200. package/docs/brand-guide/03-color-palette.md +70 -0
  201. package/docs/brand-guide/04-typography.md +82 -0
  202. package/docs/brand-guide/05-voice-and-tone.md +108 -0
  203. package/docs/brand-guide/06-visual-elements.md +137 -0
  204. package/docs/brand-guide/07-application-examples.md +153 -0
  205. package/docs/brand-guide/OssaLogo/OssA_Logo.svg +21 -0
  206. package/docs/brand-guide/OssaLogo/brand.af +0 -0
  207. package/docs/brand-guide/README.md +107 -0
  208. package/docs/comparison.md +315 -0
  209. package/docs/operations/automation-roadmap.md +245 -0
  210. package/docs/operations/github-sync-strategy.md +357 -0
  211. package/examples/anthropic/claude-assistant.ossa.json +5 -4
  212. package/examples/autogen/multi-agent.ossa.json +6 -4
  213. package/examples/bridges/Dockerfile.production +1 -1
  214. package/examples/crewai/research-team.ossa.json +14 -5
  215. package/examples/cursor/code-review-agent.ossa.json +21 -6
  216. package/examples/enterprise/agent.yml +1 -1
  217. package/examples/getting-started/hello-world-complete.ossa.yaml +2 -2
  218. package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +4 -4
  219. package/examples/langchain/chain-agent.ossa.json +21 -5
  220. package/examples/langflow/workflow-agent.ossa.json +2 -3
  221. package/examples/langgraph/state-machine-agent.ossa.json +2 -3
  222. package/examples/llamaindex/rag-agent.ossa.json +2 -3
  223. package/examples/openai/basic-agent.ossa.yaml +61 -0
  224. package/examples/openai/multi-tool-agent.ossa.json +188 -0
  225. package/examples/openai/swarm-agent.ossa.json +18 -5
  226. package/examples/openapi-extensions/README.md +1 -1
  227. package/examples/quickstart/support-agent.ossa.yaml +1 -1
  228. package/examples/vercel/edge-agent.ossa.json +5 -4
  229. package/infrastructure/gitlab-agent/rbac.yaml +126 -0
  230. package/infrastructure/gitlab-agent/values.yaml +150 -0
  231. package/infrastructure/k8s/monitoring/00-namespace.yaml +7 -0
  232. package/infrastructure/k8s/monitoring/01-prometheus.yaml +142 -0
  233. package/infrastructure/k8s/monitoring/02-grafana.yaml +63 -0
  234. package/infrastructure/k8s/monitoring/03-lightweight.yaml +121 -0
  235. package/infrastructure/k8s/monitoring/README.md +73 -0
  236. package/infrastructure/k8s/monitoring/deploy.sh +38 -0
  237. package/openapi/CHANGELOG.md +21 -0
  238. package/openapi/README.md +46 -0
  239. package/openapi/{ossa-core-api.openapi.yaml → core/ossa-core-api.openapi.yaml} +59 -4
  240. package/openapi/{ossa-registry.openapi.yaml → core/ossa-registry.openapi.yaml} +75 -2
  241. package/openapi/{unified-agent-gateway.openapi.yaml → core/unified-agent-gateway.openapi.yaml} +3 -3
  242. package/openapi/github-sync.yaml +115 -0
  243. package/openapi/reference-implementations/aiflow-bridge-api.openapi.yaml +136 -0
  244. package/openapi/reference-implementations/compliance-agent-api.openapi.yaml +192 -0
  245. package/openapi/reference-implementations/crewai-agent-api.openapi.yaml +149 -0
  246. package/openapi/reference-implementations/critic-agent-api.openapi.yaml +151 -0
  247. package/openapi/reference-implementations/document-analyzer-api.openapi.yaml +217 -0
  248. package/openapi/reference-implementations/getting-started-hello-world-api.openapi.yaml +149 -0
  249. package/openapi/reference-implementations/gitlab-ml-recommender-api.openapi.yaml +151 -0
  250. package/openapi/reference-implementations/governor-agent-api.openapi.yaml +193 -0
  251. package/openapi/reference-implementations/integrator-agent-api.openapi.yaml +165 -0
  252. package/openapi/reference-implementations/judge-agent-api.openapi.yaml +148 -0
  253. package/openapi/reference-implementations/k8s-troubleshooter-api.openapi.yaml +167 -0
  254. package/openapi/reference-implementations/langchain-agent-api.openapi.yaml +171 -0
  255. package/openapi/reference-implementations/monitor-agent-api.openapi.yaml +171 -0
  256. package/openapi/reference-implementations/orchestrator-agent-api.openapi.yaml +242 -0
  257. package/openapi/reference-implementations/quickstart-support-agent-api.openapi.yaml +187 -0
  258. package/openapi/{self-evolving-ecosystem.openapi.yaml → reference-implementations/self-evolving-ecosystem.openapi.yaml} +2 -2
  259. package/openapi/reference-implementations/worker-agent-api.openapi.yaml +208 -0
  260. package/openapi/reference-implementations/workflow-orchestrator-api.openapi.yaml +193 -0
  261. package/package.json +53 -22
  262. package/release.config.js +20 -5
  263. package/scripts/README.md +103 -0
  264. package/scripts/auto-rebase-mrs.ts +106 -0
  265. package/scripts/batch-dependabot.sh +57 -0
  266. package/scripts/bump-version.ts +57 -0
  267. package/scripts/configure-gitlab-branch-protection.ts +95 -0
  268. package/scripts/create-issue-helper.ts +238 -0
  269. package/scripts/create-milestone-issue.ts +73 -0
  270. package/scripts/enhanced-version-manager.ts +257 -0
  271. package/scripts/fix-schema-formats.js +82 -0
  272. package/scripts/gen-types.ts +51 -0
  273. package/scripts/gen-zod.ts +51 -0
  274. package/scripts/generate-agents-catalog.ts +77 -0
  275. package/scripts/generate-api-docs.ts +218 -0
  276. package/scripts/generate-cli-docs.ts +410 -0
  277. package/scripts/generate-config-docs.ts +109 -0
  278. package/scripts/generate-errors-docs.ts +76 -0
  279. package/scripts/generate-examples-docs.ts +99 -0
  280. package/scripts/generate-schema-docs.ts +296 -0
  281. package/scripts/generate-types-docs.ts +48 -0
  282. package/scripts/lib/exec.ts +37 -0
  283. package/scripts/lib/file-ops.ts +58 -0
  284. package/scripts/lib/version.ts +83 -0
  285. package/scripts/lowercase-docs.ts +43 -0
  286. package/scripts/manage-milestone-mrs.ts +279 -0
  287. package/scripts/process-doc-templates.ts +37 -0
  288. package/scripts/rebase-all-mrs.sh +75 -0
  289. package/scripts/schemas/package.schema.ts +75 -0
  290. package/scripts/setup-branch-protection.sh +33 -0
  291. package/scripts/sync-github-pr.sh +48 -0
  292. package/scripts/sync-version.js +40 -0
  293. package/scripts/sync-version.ts +39 -0
  294. package/scripts/sync-versions.ts +488 -0
  295. package/scripts/sync-wiki.sh +50 -0
  296. package/scripts/validate-all.js +127 -0
  297. package/scripts/validate-schema.ts +49 -0
  298. package/spec/v0.2.0/ossa-0.2.0.schema.json +0 -0
  299. package/spec/v0.2.1/ossa-0.2.1.schema.json +555 -0
  300. package/spec/v0.2.3/CHANGELOG.md +7 -7
  301. package/spec/v0.2.3/README.md +9 -9
  302. package/spec/v0.2.3/migrations/v0.2.2-to-v0.2.3.md +18 -18
  303. package/{dist/spec/v0.2.4-dev → spec/v0.2.4}/CHANGELOG.md +8 -8
  304. package/spec/v0.2.4/migrations/v0.2.3-to-v0.2.4.md +599 -0
  305. package/spec/{v0.2.4-dev/ossa-0.2.4-dev.yaml → v0.2.4/ossa-0.2.4.yaml} +1 -1
  306. package/spec/v0.2.5/CHANGELOG.md +401 -0
  307. package/spec/v0.2.5/README.md +72 -0
  308. package/spec/v0.2.5/migrations/v0.2.3-to-v0.2.4.md +599 -0
  309. package/spec/v0.2.5/ossa-0.2.5.schema.json +1696 -0
  310. package/spec/v0.2.5/ossa-0.2.5.yaml +581 -0
  311. package/spec/v0.2.5-RC/CHANGELOG.md +401 -0
  312. package/spec/v0.2.5-RC/README.md +72 -0
  313. package/spec/v0.2.5-RC/migrations/v0.2.3-to-v0.2.4.md +599 -0
  314. package/spec/v0.2.5-RC/ossa-0.2.5-RC.schema.json +1696 -0
  315. package/spec/v0.2.5-RC/ossa-0.2.5-RC.yaml +581 -0
  316. package/spec/v0.2.6/CHANGELOG.md +401 -0
  317. package/spec/v0.2.6/README.md +72 -0
  318. package/spec/v0.2.6/migrations/v0.2.3-to-v0.2.4.md +599 -0
  319. package/spec/v0.2.6/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  320. package/spec/v0.2.6/ossa-0.2.6.schema.json +1786 -0
  321. package/spec/v0.2.6/ossa-0.2.6.yaml +581 -0
  322. package/spec/v0.2.6-dev/CHANGELOG.md +164 -0
  323. package/spec/v0.2.6-dev/README.md +75 -0
  324. package/spec/v0.2.6-dev/migrations/v0.2.2-to-v0.2.3.md +343 -0
  325. package/spec/v0.2.6-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
  326. package/spec/v0.2.6-dev/ossa-0.2.5.schema.json +1696 -0
  327. package/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
  328. package/spec/{v0.2.5-dev/ossa-0.2.5-dev.schema.json → v0.2.6-dev/ossa-0.2.6-dev.schema.json} +323 -359
  329. package/spec/v0.2.6-dev/ossa-0.2.6-dev.yaml +448 -0
  330. package/spec/v0.2.7/core/agentgraph.md +324 -0
  331. package/spec/v0.2.7/resources/agentgraph.yaml +135 -0
  332. package/website/{.lighthouserc.js → .lighthouserc.ts} +5 -1
  333. package/website/DESIGN_SYSTEM_IMPLEMENTATION.md +445 -0
  334. package/website/Dockerfile +18 -5
  335. package/website/app/about/page.tsx +60 -51
  336. package/website/app/blog/[slug]/page.tsx +61 -20
  337. package/website/app/blog/page.tsx +120 -33
  338. package/website/app/design-guide/page.tsx +511 -0
  339. package/website/app/docs/[[...slug]]/page.tsx +641 -143
  340. package/website/app/ecosystem/page.tsx +146 -111
  341. package/website/app/examples/page.tsx +51 -41
  342. package/website/app/globals.scss +370 -0
  343. package/website/app/layout.tsx +2 -2
  344. package/website/app/license/page.tsx +183 -0
  345. package/website/app/not-found.tsx +18 -0
  346. package/website/app/page.tsx +513 -236
  347. package/website/app/page.tsx.bak +679 -0
  348. package/website/app/page.tsx.bak2 +649 -0
  349. package/website/app/playground/page.tsx +25 -45
  350. package/website/app/schema/page.tsx +423 -392
  351. package/website/app/specification/page.tsx +245 -169
  352. package/website/components/Logo.tsx +75 -2
  353. package/website/components/docs/DocsSidebar.tsx +40 -3
  354. package/website/components/docs/MarkdownContent.tsx +265 -47
  355. package/website/components/docs/VersionSelector.tsx +64 -8
  356. package/website/components/examples/ExamplesViewer.tsx +2 -2
  357. package/website/components/layout/Footer.tsx +6 -1
  358. package/website/components/layout/Header.tsx +44 -42
  359. package/website/components/schema/SchemaComponentsAccordion.tsx +84 -0
  360. package/website/components/schema/SchemaExplorer.tsx +4 -4
  361. package/website/components/ui/Badge.tsx +82 -0
  362. package/website/components/ui/Button.tsx +116 -0
  363. package/website/components/ui/Card.tsx +167 -0
  364. package/website/components/ui/Checkbox.tsx +141 -0
  365. package/website/components/ui/Input.tsx +169 -0
  366. package/website/components/ui/Radio.tsx +141 -0
  367. package/website/components/ui/Select.tsx +182 -0
  368. package/website/components/ui/Tag.tsx +158 -0
  369. package/website/components/ui/Textarea.tsx +195 -0
  370. package/website/components/ui/index.ts +11 -0
  371. package/website/content/blog/OpenAPI-AI-Agents-Standard.md +276 -276
  372. package/website/content/blog/Why-Formal-Standards-Matter-Now.md +3 -14
  373. package/website/content/blog/gitlab-kubernetes-agent-ecosystem.md +286 -0
  374. package/website/content/blog/introducing-ossa-framework.md +1 -1
  375. package/website/content/blog/ossa-production-results.md +5 -5
  376. package/website/content/blog/welcome-to-ossa.md +2 -2
  377. package/website/content/blog/why-ai-agents-need-open-standard.md +5 -5
  378. package/website/content/docs/{00-HOME.md → 00-home.md} +18 -25
  379. package/website/content/docs/adapters/openai-adapter.md +693 -0
  380. package/website/content/docs/agents/catalog.md +28 -0
  381. package/website/content/docs/aiflow-framework-integration-with-ossa.md +107 -0
  382. package/website/content/docs/api-reference/index.md +38 -0
  383. package/website/content/docs/api-reference/ossa-core-api.md +634 -0
  384. package/website/content/docs/api-reference/ossa-registry-api.md +515 -0
  385. package/website/content/docs/api-reference/unified-agent-gateway.md +599 -0
  386. package/website/content/docs/architecture/execution-flow.md +3 -3
  387. package/website/content/docs/architecture/multi-agent-systems.md +4 -4
  388. package/website/content/docs/architecture/overview.md +4 -4
  389. package/website/content/docs/architecture/stack-integration.md +4 -4
  390. package/website/content/docs/changelog.md +4 -4
  391. package/website/content/docs/cli-reference/index.md +111 -0
  392. package/website/content/docs/cli-reference/ossa-agents.md +70 -0
  393. package/website/content/docs/cli-reference/ossa-export.md +56 -0
  394. package/website/content/docs/cli-reference/ossa-generate.md +66 -0
  395. package/website/content/docs/cli-reference/ossa-gitlab-agent.md +57 -0
  396. package/website/content/docs/cli-reference/ossa-import.md +56 -0
  397. package/website/content/docs/cli-reference/ossa-init.md +57 -0
  398. package/website/content/docs/cli-reference/ossa-migrate.md +62 -0
  399. package/website/content/docs/cli-reference/ossa-run.md +66 -0
  400. package/website/content/docs/cli-reference/ossa-schema.md +57 -0
  401. package/website/content/docs/cli-reference/ossa-setup.md +57 -0
  402. package/website/content/docs/cli-reference/ossa-validate.md +66 -0
  403. package/website/content/docs/configuration/index.md +97 -0
  404. package/website/content/docs/contributing.md +2 -2
  405. package/website/content/docs/deployment/github-mirroring.md +924 -0
  406. package/website/content/docs/documentation.md +100 -0
  407. package/website/content/docs/ecosystem/framework-support.md +551 -11
  408. package/website/content/docs/errors/index.md +10 -0
  409. package/website/content/docs/{AIFlow-Framework-Integration-with-OSSA.md → examples/aiflow-framework-integration-with-ossa.md} +2 -2
  410. package/website/content/docs/examples/catalog.md +300 -0
  411. package/website/content/docs/for-audiences/{Students-Researchers.md → students-researchers.md} +1 -1
  412. package/website/content/docs/getting-started/index.md +92 -0
  413. package/website/content/docs/getting-started/installation.md +7 -7
  414. package/website/content/docs/getting-started/running-agents.md +215 -13
  415. package/{docs → website/content/docs}/getting-started.md +10 -6
  416. package/website/content/docs/integrations/aiflow.md +2 -2
  417. package/website/content/docs/integrations/drupal.md +2 -2
  418. package/website/content/docs/migration-guides/agent-schema-comparison.md +232 -0
  419. package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +5 -5
  420. package/website/content/docs/migration-guides/crewai-to-ossa.md +3 -3
  421. package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +11 -11
  422. package/{docs/migration → website/content/docs/migration-guides}/general-agent-schema.yml +1 -9
  423. package/website/content/docs/migration-guides/index.md +1 -1
  424. package/website/content/docs/migration-guides/langchain-to-ossa.md +17 -17
  425. package/website/content/docs/migration-guides/langflow-to-ossa.md +3 -3
  426. package/website/content/docs/migration-guides/openai-to-ossa.md +10 -10
  427. package/website/content/docs/openapi-extensions/examples.md +9 -9
  428. package/website/content/docs/openapi-extensions/index.md +59 -3
  429. package/website/content/docs/openapi-extensions/operation-extensions.md +61 -2
  430. package/website/content/docs/openapi-extensions/root-extensions.md +49 -3
  431. package/{docs/OSSA-COMPLIANT-BADGE.md → website/content/docs/ossa-compliant-badge.md} +18 -15
  432. package/website/content/docs/pre-release/index.md +10 -10
  433. package/website/content/docs/readme.md +35 -0
  434. package/website/content/docs/releases/v0.2.6.md +99 -0
  435. package/website/content/docs/schema-reference/agent-capabilities.md +50 -0
  436. package/website/content/docs/schema-reference/agent-id.md +52 -0
  437. package/website/content/docs/schema-reference/agent-name.md +50 -0
  438. package/website/content/docs/schema-reference/agent-role.md +54 -0
  439. package/website/content/docs/schema-reference/agent-spec.md +2 -2
  440. package/website/content/docs/schema-reference/agent-version.md +50 -0
  441. package/website/content/docs/schema-reference/autonomy.md +5 -5
  442. package/website/content/docs/schema-reference/constraints.md +5 -5
  443. package/website/content/docs/schema-reference/index.md +26 -157
  444. package/website/content/docs/schema-reference/llm-config.md +1 -1
  445. package/website/content/docs/schema-reference/observability.md +5 -5
  446. package/website/content/docs/schema-reference/ossa-manifest.md +6 -6
  447. package/website/content/docs/schema-reference/taxonomy.md +3 -3
  448. package/website/content/docs/types-reference/index.md +105 -0
  449. package/website/content/docs/use-cases/00-index.md +1 -1
  450. package/{docs/VERSIONING.md → website/content/docs/versioning.md} +9 -5
  451. package/website/dev.sh +53 -0
  452. package/website/docker-compose.dev.yml +36 -0
  453. package/website/lib/version.ts +18 -1
  454. package/website/lib/versions.json +103 -0
  455. package/website/next.config.ts +3 -1
  456. package/website/package-lock.json +552 -18
  457. package/website/package.json +11 -5
  458. package/website/postcss.config.mjs +1 -1
  459. package/website/scripts/fetch-versions.js +166 -0
  460. package/website/scripts/generate-examples-index.js +163 -0
  461. package/website/scripts/merge-docs-to-wiki.ts +207 -0
  462. package/website/scripts/sync-version.js +28 -0
  463. package/website/scripts/sync-wiki.ts +64 -3
  464. package/website/scripts/upload-wiki.ts +199 -0
  465. package/website/styles/_spacing.scss +453 -0
  466. package/website/styles/_tokens.scss +245 -0
  467. package/website/styles/_typography.scss +361 -0
  468. package/website/styles/_variables.scss +287 -0
  469. package/website/tailwind.config.ts +127 -22
  470. package/.releaserc.json.disabled +0 -81
  471. package/dist/spec/v0.2.5-dev/CHANGELOG.md +0 -171
  472. package/dist/spec/v0.2.5-dev/examples/customer-support-graph.ossa.yaml +0 -362
  473. package/dist/spec/v0.2.5-dev/examples/parallel-processors.ossa.yaml +0 -464
  474. package/dist/spec/v0.2.5-dev/examples/research-team.ossa.yaml +0 -440
  475. package/dist/spec/v0.2.5-dev/migrations/v0.2.4-to-v0.2.5.md +0 -317
  476. package/dist/spec/v0.2.5-dev/ossa-0.2.5-dev.yaml +0 -409
  477. package/docs/README.md +0 -31
  478. package/docs/agent-openapi-spec.yml +0 -942
  479. package/docs/openapi-extensions.md +0 -930
  480. package/docs/schemas/openapi-extensions.schema.json +0 -486
  481. package/openapi/gitlab-orchestrator.openapi.yaml +0 -330
  482. package/ossa-website-swarm-tasks.json +0 -105
  483. package/spec/v0.2.5-dev/CHANGELOG.md +0 -171
  484. package/spec/v0.2.5-dev/examples/customer-support-graph.ossa.yaml +0 -362
  485. package/spec/v0.2.5-dev/examples/parallel-processors.ossa.yaml +0 -464
  486. package/spec/v0.2.5-dev/examples/research-team.ossa.yaml +0 -440
  487. package/spec/v0.2.5-dev/migrations/v0.2.4-to-v0.2.5.md +0 -317
  488. package/spec/v0.2.5-dev/ossa-0.2.5-dev.yaml +0 -409
  489. package/website/app/api/validate/route.ts +0 -88
  490. package/website/app/globals.css +0 -108
  491. package/website/content/docs/OpenAPI-Extensions.md +0 -498
  492. package/website/content/docs/core-concepts/project-structure.md +0 -348
  493. package/website/content/docs/examples/Migration-Guides.md +0 -214
  494. package/website/content/docs/examples.md +0 -71
  495. package/website/content/docs/for-audiences/Enterprises.md +0 -256
  496. package/website/content/docs/for-audiences/architects.md +0 -224
  497. package/website/content/docs/for-audiences/developers.md +0 -220
  498. package/website/content/docs/getting-started/5-minute-overview.md +0 -85
  499. package/website/content/docs/getting-started/Hello-World.md +0 -184
  500. package/website/content/docs/getting-started/first-agent.md +0 -196
  501. package/website/content/docs/migration-guides/00-index.md +0 -76
  502. package/website/content/docs/migration-guides/README.md +0 -133
  503. package/website/next.config.js +0 -17
  504. package/website/postcss.config.js +0 -7
  505. package/website/tailwind.config.js +0 -58
  506. /package/dist/spec/{v0.2.4-dev/ossa-0.2.4-dev.schema.json → v0.2.4/ossa-0.2.4.schema.json} +0 -0
  507. /package/openapi/{ossa-registry-api.openapi.yaml → core/ossa-registry-api.openapi.yaml} +0 -0
  508. /package/openapi/{drupal-agent-api.openapi.yaml → reference-implementations/drupal-agent-api.openapi.yaml} +0 -0
  509. /package/openapi/{helm-generator.openapi.yaml → reference-implementations/helm-generator.openapi.yaml} +0 -0
  510. /package/spec/{v0.2.4-dev/ossa-0.2.4-dev.schema.json → v0.2.4/ossa-0.2.4.schema.json} +0 -0
  511. /package/{docs/migration → website/content/docs/migration-guides}/migration-manifest.json +0 -0
@@ -0,0 +1,1696 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://openstandardagents.org/schemas/v0.2.5-RC/agent.json",
4
+ "title": "OSSA v0.2.5-RC Agent Manifest Schema",
5
+ "description": "Open Standard for Scalable AI Agents (OSSA) - The OpenAPI for AI Agents. Specification for declarative agent definition with framework-agnostic portability.",
6
+ "type": "object",
7
+ "required": [
8
+ "apiVersion",
9
+ "kind",
10
+ "metadata",
11
+ "spec"
12
+ ],
13
+ "properties": {
14
+ "apiVersion": {
15
+ "type": "string",
16
+ "pattern": "^ossa/v(0\\.2\\.[2-5](-dev)?|1)(\\.[0-9]+)?(-[a-zA-Z0-9]+)?$",
17
+ "description": "OSSA API version (supports ossa/v0.2.2, ossa/v0.2.3, ossa/v0.2.5, or ossa/v1 for compatibility)",
18
+ "examples": [
19
+ "ossa/v1",
20
+ "ossa/v0.2.5",
21
+ "ossa/v0.2.3",
22
+ "ossa/v0.2.2",
23
+ "ossa/v1.0"
24
+ ]
25
+ },
26
+ "kind": {
27
+ "type": "string",
28
+ "enum": [
29
+ "Agent"
30
+ ],
31
+ "description": "Resource type - currently only 'Agent' is supported"
32
+ },
33
+ "metadata": {
34
+ "$ref": "#/definitions/Metadata"
35
+ },
36
+ "spec": {
37
+ "$ref": "#/definitions/AgentSpec"
38
+ },
39
+ "extensions": {
40
+ "type": "object",
41
+ "description": "Framework-specific extensions for integration with kagent, buildkit, drupal, librechat, mcp, langchain, crewai, openai_agents, cursor, langflow, autogen, vercel_ai, llamaindex, langgraph, anthropic, and other frameworks",
42
+ "properties": {
43
+ "kagent": {
44
+ "$ref": "#/definitions/KAgentExtension"
45
+ },
46
+ "buildkit": {
47
+ "$ref": "#/definitions/BuildKitExtension"
48
+ },
49
+ "drupal": {
50
+ "$ref": "#/definitions/DrupalExtension"
51
+ },
52
+ "librechat": {
53
+ "$ref": "#/definitions/LibreChatExtension"
54
+ },
55
+ "mcp": {
56
+ "$ref": "#/definitions/MCPExtension"
57
+ },
58
+ "langchain": {
59
+ "$ref": "#/definitions/LangChainExtension"
60
+ },
61
+ "crewai": {
62
+ "$ref": "#/definitions/CrewAIExtension"
63
+ },
64
+ "openai_agents": {
65
+ "$ref": "#/definitions/OpenAIAgentsExtension"
66
+ },
67
+ "cursor": {
68
+ "$ref": "#/definitions/CursorExtension"
69
+ },
70
+ "langflow": {
71
+ "$ref": "#/definitions/LangflowExtension"
72
+ },
73
+ "autogen": {
74
+ "$ref": "#/definitions/AutoGenExtension"
75
+ },
76
+ "vercel_ai": {
77
+ "$ref": "#/definitions/VercelAIExtension"
78
+ },
79
+ "llamaindex": {
80
+ "$ref": "#/definitions/LlamaIndexExtension"
81
+ },
82
+ "langgraph": {
83
+ "$ref": "#/definitions/LangGraphExtension"
84
+ },
85
+ "anthropic": {
86
+ "$ref": "#/definitions/AnthropicExtension"
87
+ },
88
+ "google_adk": {
89
+ "$ref": "#/definitions/GoogleADKExtension"
90
+ }
91
+ },
92
+ "additionalProperties": true
93
+ }
94
+ },
95
+ "additionalProperties": false,
96
+ "definitions": {
97
+ "Metadata": {
98
+ "type": "object",
99
+ "required": [
100
+ "name"
101
+ ],
102
+ "properties": {
103
+ "name": {
104
+ "type": "string",
105
+ "pattern": "^[a-z0-9]([-a-z0-9]*[a-z0-9])?$",
106
+ "maxLength": 253,
107
+ "description": "Agent identifier (DNS-1123 subdomain format for Kubernetes compatibility)"
108
+ },
109
+ "version": {
110
+ "type": "string",
111
+ "pattern": "^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$",
112
+ "description": "Semantic version (semver 2.0.0)"
113
+ },
114
+ "description": {
115
+ "type": "string",
116
+ "maxLength": 2000,
117
+ "description": "Human-readable description of agent purpose and capabilities"
118
+ },
119
+ "labels": {
120
+ "type": "object",
121
+ "additionalProperties": {
122
+ "type": "string",
123
+ "maxLength": 63
124
+ },
125
+ "description": "Key-value labels for organization and filtering"
126
+ },
127
+ "annotations": {
128
+ "type": "object",
129
+ "additionalProperties": {
130
+ "type": "string"
131
+ },
132
+ "description": "Arbitrary metadata for tooling (not used for filtering)"
133
+ }
134
+ },
135
+ "additionalProperties": false
136
+ },
137
+ "AgentSpec": {
138
+ "type": "object",
139
+ "required": [
140
+ "role"
141
+ ],
142
+ "properties": {
143
+ "taxonomy": {
144
+ "$ref": "#/definitions/Taxonomy"
145
+ },
146
+ "role": {
147
+ "type": "string",
148
+ "minLength": 1,
149
+ "description": "Agent role/system prompt describing behavior and capabilities"
150
+ },
151
+ "llm": {
152
+ "$ref": "#/definitions/LLMConfig"
153
+ },
154
+ "tools": {
155
+ "type": "array",
156
+ "items": {
157
+ "$ref": "#/definitions/Tool"
158
+ },
159
+ "description": "Available tools/capabilities for the agent"
160
+ },
161
+ "autonomy": {
162
+ "$ref": "#/definitions/Autonomy"
163
+ },
164
+ "constraints": {
165
+ "$ref": "#/definitions/Constraints"
166
+ },
167
+ "observability": {
168
+ "$ref": "#/definitions/Observability"
169
+ },
170
+ "state": {
171
+ "$ref": "#/definitions/State"
172
+ }
173
+ },
174
+ "additionalProperties": true
175
+ },
176
+ "Taxonomy": {
177
+ "type": "object",
178
+ "required": [
179
+ "domain"
180
+ ],
181
+ "properties": {
182
+ "domain": {
183
+ "type": "string",
184
+ "description": "Primary domain classification",
185
+ "examples": [
186
+ "infrastructure",
187
+ "security",
188
+ "compliance",
189
+ "documentation"
190
+ ]
191
+ },
192
+ "subdomain": {
193
+ "type": "string",
194
+ "description": "Secondary classification within domain",
195
+ "examples": [
196
+ "kubernetes",
197
+ "vulnerability",
198
+ "generation"
199
+ ]
200
+ },
201
+ "capability": {
202
+ "type": "string",
203
+ "description": "Specific capability or function",
204
+ "examples": [
205
+ "troubleshooting",
206
+ "scanning",
207
+ "optimization"
208
+ ]
209
+ }
210
+ },
211
+ "additionalProperties": false
212
+ },
213
+ "LLMConfig": {
214
+ "type": "object",
215
+ "required": [
216
+ "provider",
217
+ "model"
218
+ ],
219
+ "properties": {
220
+ "provider": {
221
+ "type": "string",
222
+ "enum": [
223
+ "openai",
224
+ "anthropic",
225
+ "google",
226
+ "azure",
227
+ "ollama",
228
+ "custom"
229
+ ],
230
+ "description": "LLM provider"
231
+ },
232
+ "model": {
233
+ "type": "string",
234
+ "description": "Model identifier",
235
+ "examples": [
236
+ "gpt-4",
237
+ "claude-3-sonnet-20240229",
238
+ "gemini-pro"
239
+ ]
240
+ },
241
+ "temperature": {
242
+ "type": "number",
243
+ "minimum": 0,
244
+ "maximum": 2,
245
+ "description": "Sampling temperature for response generation"
246
+ },
247
+ "maxTokens": {
248
+ "type": "integer",
249
+ "minimum": 1,
250
+ "description": "Maximum tokens per request"
251
+ },
252
+ "topP": {
253
+ "type": "number",
254
+ "minimum": 0,
255
+ "maximum": 1,
256
+ "description": "Nucleus sampling parameter"
257
+ },
258
+ "frequencyPenalty": {
259
+ "type": "number",
260
+ "minimum": -2,
261
+ "maximum": 2,
262
+ "description": "Frequency penalty for token generation"
263
+ },
264
+ "presencePenalty": {
265
+ "type": "number",
266
+ "minimum": -2,
267
+ "maximum": 2,
268
+ "description": "Presence penalty for token generation"
269
+ }
270
+ },
271
+ "additionalProperties": false
272
+ },
273
+ "Tool": {
274
+ "type": "object",
275
+ "required": [
276
+ "type"
277
+ ],
278
+ "properties": {
279
+ "type": {
280
+ "type": "string",
281
+ "enum": [
282
+ "mcp",
283
+ "kubernetes",
284
+ "http",
285
+ "grpc",
286
+ "function",
287
+ "a2a",
288
+ "custom"
289
+ ],
290
+ "description": "Tool integration type"
291
+ },
292
+ "name": {
293
+ "type": "string",
294
+ "description": "Tool name/identifier"
295
+ },
296
+ "server": {
297
+ "type": "string",
298
+ "description": "MCP server name (for type=mcp)"
299
+ },
300
+ "namespace": {
301
+ "type": "string",
302
+ "description": "Kubernetes namespace (for type=kubernetes or mcp)"
303
+ },
304
+ "endpoint": {
305
+ "type": "string",
306
+ "format": "uri",
307
+ "description": "HTTP/gRPC endpoint (for type=http/grpc)"
308
+ },
309
+ "capabilities": {
310
+ "type": "array",
311
+ "items": {
312
+ "$ref": "#/definitions/Capability"
313
+ },
314
+ "description": "Specific capabilities/operations from this tool"
315
+ },
316
+ "config": {
317
+ "type": "object",
318
+ "description": "Tool-specific configuration",
319
+ "additionalProperties": true
320
+ },
321
+ "auth": {
322
+ "type": "object",
323
+ "properties": {
324
+ "type": {
325
+ "type": "string",
326
+ "enum": [
327
+ "bearer",
328
+ "oauth2",
329
+ "mtls",
330
+ "apikey",
331
+ "none"
332
+ ]
333
+ },
334
+ "credentials": {
335
+ "type": "string",
336
+ "description": "Reference to secret/credential (not the actual secret)"
337
+ },
338
+ "scopes": {
339
+ "type": "array",
340
+ "items": {
341
+ "type": "string"
342
+ },
343
+ "description": "OAuth2 scopes or permission scopes required"
344
+ }
345
+ }
346
+ },
347
+ "transport": {
348
+ "$ref": "#/definitions/Transport"
349
+ },
350
+ "compliance_tags": {
351
+ "type": "array",
352
+ "items": {
353
+ "type": "string"
354
+ },
355
+ "description": "Compliance framework tags (e.g., 'pii', 'hipaa', 'gdpr', 'fedramp')"
356
+ }
357
+ },
358
+ "additionalProperties": false
359
+ },
360
+ "Capability": {
361
+ "type": "object",
362
+ "properties": {
363
+ "name": {
364
+ "type": "string",
365
+ "description": "Capability name/identifier"
366
+ },
367
+ "description": {
368
+ "type": "string",
369
+ "description": "Human-readable description of the capability"
370
+ },
371
+ "version": {
372
+ "type": "string",
373
+ "pattern": "^[0-9]+\\.[0-9]+$",
374
+ "description": "Capability version (major.minor format)"
375
+ },
376
+ "deprecated": {
377
+ "type": "boolean",
378
+ "default": false,
379
+ "description": "Whether this capability is deprecated"
380
+ },
381
+ "deprecation_message": {
382
+ "type": "string",
383
+ "description": "Message explaining deprecation and migration path"
384
+ },
385
+ "input_schema": {
386
+ "type": "object",
387
+ "description": "JSON Schema for capability input"
388
+ },
389
+ "output_schema": {
390
+ "type": "object",
391
+ "description": "JSON Schema for capability output"
392
+ },
393
+ "transport": {
394
+ "$ref": "#/definitions/Transport"
395
+ },
396
+ "scopes": {
397
+ "type": "array",
398
+ "items": {
399
+ "type": "string"
400
+ },
401
+ "description": "Required permission scopes for this capability"
402
+ },
403
+ "compliance_tags": {
404
+ "type": "array",
405
+ "items": {
406
+ "type": "string"
407
+ },
408
+ "description": "Compliance framework tags for this capability"
409
+ }
410
+ },
411
+ "additionalProperties": false
412
+ },
413
+ "Transport": {
414
+ "type": "object",
415
+ "description": "Transport metadata for protocol-specific configuration (v0.2.5)",
416
+ "properties": {
417
+ "protocol": {
418
+ "type": "string",
419
+ "enum": [
420
+ "http",
421
+ "grpc",
422
+ "a2a",
423
+ "mcp",
424
+ "websocket",
425
+ "custom"
426
+ ],
427
+ "description": "Transport protocol"
428
+ },
429
+ "streaming": {
430
+ "type": "string",
431
+ "enum": [
432
+ "none",
433
+ "request",
434
+ "response",
435
+ "bidirectional"
436
+ ],
437
+ "default": "none",
438
+ "description": "Streaming mode for the transport"
439
+ },
440
+ "binding": {
441
+ "type": "string",
442
+ "description": "Path or endpoint binding (e.g., '/api/v1/chat', 'myservice.MyMethod')"
443
+ },
444
+ "content_type": {
445
+ "type": "string",
446
+ "description": "Content type for HTTP transports",
447
+ "examples": [
448
+ "application/json",
449
+ "application/x-ndjson",
450
+ "text/event-stream"
451
+ ]
452
+ }
453
+ },
454
+ "additionalProperties": false
455
+ },
456
+ "State": {
457
+ "type": "object",
458
+ "description": "Agent state and memory configuration (v0.2.5)",
459
+ "properties": {
460
+ "mode": {
461
+ "type": "string",
462
+ "enum": [
463
+ "stateless",
464
+ "session",
465
+ "long_running"
466
+ ],
467
+ "default": "stateless",
468
+ "description": "State management mode"
469
+ },
470
+ "storage": {
471
+ "type": "object",
472
+ "properties": {
473
+ "type": {
474
+ "type": "string",
475
+ "enum": [
476
+ "memory",
477
+ "vector-db",
478
+ "kv",
479
+ "rdbms",
480
+ "custom"
481
+ ],
482
+ "default": "memory",
483
+ "description": "Storage backend type"
484
+ },
485
+ "retention": {
486
+ "type": "string",
487
+ "description": "Retention period (e.g., '30d', '1y', 'forever')",
488
+ "examples": [
489
+ "24h",
490
+ "7d",
491
+ "30d",
492
+ "1y",
493
+ "forever"
494
+ ]
495
+ },
496
+ "config": {
497
+ "type": "object",
498
+ "description": "Storage-specific configuration",
499
+ "additionalProperties": true
500
+ }
501
+ },
502
+ "additionalProperties": false
503
+ },
504
+ "context_window": {
505
+ "type": "object",
506
+ "properties": {
507
+ "max_messages": {
508
+ "type": "integer",
509
+ "minimum": 1,
510
+ "description": "Maximum messages to retain in context"
511
+ },
512
+ "max_tokens": {
513
+ "type": "integer",
514
+ "minimum": 1,
515
+ "description": "Maximum tokens to retain in context"
516
+ },
517
+ "strategy": {
518
+ "type": "string",
519
+ "enum": [
520
+ "sliding_window",
521
+ "summarization",
522
+ "importance_weighted"
523
+ ],
524
+ "default": "sliding_window",
525
+ "description": "Context management strategy"
526
+ }
527
+ },
528
+ "additionalProperties": false
529
+ }
530
+ },
531
+ "additionalProperties": false
532
+ },
533
+ "Autonomy": {
534
+ "type": "object",
535
+ "properties": {
536
+ "level": {
537
+ "type": "string",
538
+ "enum": [
539
+ "supervised",
540
+ "autonomous",
541
+ "fully_autonomous"
542
+ ],
543
+ "description": "Level of autonomy for agent decision-making"
544
+ },
545
+ "approval_required": {
546
+ "type": "boolean",
547
+ "description": "Whether human approval is required for actions"
548
+ },
549
+ "allowed_actions": {
550
+ "type": "array",
551
+ "items": {
552
+ "type": "string"
553
+ },
554
+ "description": "Whitelist of permitted actions"
555
+ },
556
+ "blocked_actions": {
557
+ "type": "array",
558
+ "items": {
559
+ "type": "string"
560
+ },
561
+ "description": "Blacklist of forbidden actions"
562
+ },
563
+ "escalation_policy": {
564
+ "type": "object",
565
+ "description": "Rules for escalating to human oversight"
566
+ }
567
+ },
568
+ "additionalProperties": false
569
+ },
570
+ "Constraints": {
571
+ "type": "object",
572
+ "properties": {
573
+ "cost": {
574
+ "type": "object",
575
+ "properties": {
576
+ "maxTokensPerDay": {
577
+ "type": "integer",
578
+ "minimum": 0
579
+ },
580
+ "maxTokensPerRequest": {
581
+ "type": "integer",
582
+ "minimum": 0
583
+ },
584
+ "maxCostPerDay": {
585
+ "type": "number",
586
+ "minimum": 0
587
+ },
588
+ "currency": {
589
+ "type": "string",
590
+ "pattern": "^[A-Z]{3}$",
591
+ "default": "USD"
592
+ }
593
+ }
594
+ },
595
+ "performance": {
596
+ "type": "object",
597
+ "properties": {
598
+ "maxLatencySeconds": {
599
+ "type": "number",
600
+ "minimum": 0
601
+ },
602
+ "maxConcurrentRequests": {
603
+ "type": "integer",
604
+ "minimum": 1
605
+ },
606
+ "timeoutSeconds": {
607
+ "type": "number",
608
+ "minimum": 0
609
+ }
610
+ }
611
+ },
612
+ "resources": {
613
+ "type": "object",
614
+ "properties": {
615
+ "cpu": {
616
+ "type": "string",
617
+ "description": "CPU limit (Kubernetes format: 100m, 1, 2.5)"
618
+ },
619
+ "memory": {
620
+ "type": "string",
621
+ "description": "Memory limit (Kubernetes format: 128Mi, 1Gi)"
622
+ },
623
+ "gpu": {
624
+ "type": "string",
625
+ "description": "GPU requirement"
626
+ }
627
+ }
628
+ }
629
+ },
630
+ "additionalProperties": false
631
+ },
632
+ "Observability": {
633
+ "type": "object",
634
+ "properties": {
635
+ "tracing": {
636
+ "type": "object",
637
+ "properties": {
638
+ "enabled": {
639
+ "type": "boolean",
640
+ "default": true
641
+ },
642
+ "exporter": {
643
+ "type": "string",
644
+ "enum": [
645
+ "otlp",
646
+ "jaeger",
647
+ "zipkin",
648
+ "custom"
649
+ ]
650
+ },
651
+ "endpoint": {
652
+ "type": "string",
653
+ "format": "uri"
654
+ }
655
+ }
656
+ },
657
+ "metrics": {
658
+ "type": "object",
659
+ "properties": {
660
+ "enabled": {
661
+ "type": "boolean",
662
+ "default": true
663
+ },
664
+ "exporter": {
665
+ "type": "string",
666
+ "enum": [
667
+ "prometheus",
668
+ "otlp",
669
+ "custom"
670
+ ]
671
+ },
672
+ "endpoint": {
673
+ "type": "string",
674
+ "format": "uri"
675
+ }
676
+ }
677
+ },
678
+ "logging": {
679
+ "type": "object",
680
+ "properties": {
681
+ "level": {
682
+ "type": "string",
683
+ "enum": [
684
+ "debug",
685
+ "info",
686
+ "warn",
687
+ "error"
688
+ ],
689
+ "default": "info"
690
+ },
691
+ "format": {
692
+ "type": "string",
693
+ "enum": [
694
+ "json",
695
+ "text"
696
+ ],
697
+ "default": "json"
698
+ }
699
+ }
700
+ }
701
+ },
702
+ "additionalProperties": false
703
+ },
704
+ "KAgentExtension": {
705
+ "type": "object",
706
+ "description": "kagent.dev Kubernetes-native agent deployment extension",
707
+ "properties": {
708
+ "kubernetes": {
709
+ "type": "object",
710
+ "properties": {
711
+ "namespace": {
712
+ "type": "string",
713
+ "default": "default",
714
+ "description": "Target Kubernetes namespace"
715
+ },
716
+ "labels": {
717
+ "type": "object",
718
+ "additionalProperties": {
719
+ "type": "string"
720
+ },
721
+ "description": "Kubernetes labels for agent CRD"
722
+ },
723
+ "annotations": {
724
+ "type": "object",
725
+ "additionalProperties": {
726
+ "type": "string"
727
+ },
728
+ "description": "Kubernetes annotations"
729
+ }
730
+ }
731
+ },
732
+ "deployment": {
733
+ "type": "object",
734
+ "properties": {
735
+ "replicas": {
736
+ "type": "integer",
737
+ "minimum": 1,
738
+ "default": 1
739
+ },
740
+ "strategy": {
741
+ "type": "string",
742
+ "enum": ["rolling-update", "recreate"],
743
+ "default": "rolling-update"
744
+ }
745
+ }
746
+ },
747
+ "api_version": {
748
+ "type": "string",
749
+ "description": "kagent.dev API version (e.g., kagent.dev/v1alpha2)",
750
+ "default": "kagent.dev/v1alpha2"
751
+ }
752
+ },
753
+ "additionalProperties": true
754
+ },
755
+ "BuildKitExtension": {
756
+ "type": "object",
757
+ "description": "Agent BuildKit deployment and orchestration extension",
758
+ "properties": {
759
+ "deployment": {
760
+ "type": "object",
761
+ "properties": {
762
+ "replicas": {
763
+ "type": "object",
764
+ "properties": {
765
+ "min": {
766
+ "type": "integer",
767
+ "default": 1
768
+ },
769
+ "max": {
770
+ "type": "integer",
771
+ "default": 4
772
+ }
773
+ }
774
+ }
775
+ }
776
+ },
777
+ "container": {
778
+ "type": "object",
779
+ "properties": {
780
+ "image": {
781
+ "type": "string",
782
+ "description": "Container image"
783
+ },
784
+ "runtime": {
785
+ "type": "string",
786
+ "enum": ["docker", "podman", "containerd"],
787
+ "default": "docker"
788
+ },
789
+ "resources": {
790
+ "type": "object",
791
+ "description": "Container resource limits"
792
+ }
793
+ }
794
+ }
795
+ },
796
+ "additionalProperties": true
797
+ },
798
+ "DrupalExtension": {
799
+ "type": "object",
800
+ "description": "Drupal LLM Platform integration extension",
801
+ "properties": {
802
+ "module": {
803
+ "type": "string",
804
+ "pattern": "^[a-z][a-z0-9_]*$",
805
+ "description": "Drupal module that owns this agent"
806
+ },
807
+ "service": {
808
+ "type": "string",
809
+ "pattern": "^[a-z][a-z0-9_]*\\.[a-z][a-z0-9_]*$",
810
+ "description": "Drupal service ID (module.service format)"
811
+ },
812
+ "dependencies": {
813
+ "type": "array",
814
+ "items": {
815
+ "type": "string",
816
+ "pattern": "^[a-z][a-z0-9_]*$"
817
+ },
818
+ "description": "Required Drupal modules"
819
+ },
820
+ "database": {
821
+ "type": "object",
822
+ "properties": {
823
+ "tables": {
824
+ "type": "array",
825
+ "items": {
826
+ "type": "string"
827
+ }
828
+ },
829
+ "migrations": {
830
+ "type": "array",
831
+ "items": {
832
+ "type": "string"
833
+ }
834
+ }
835
+ }
836
+ }
837
+ },
838
+ "additionalProperties": true
839
+ },
840
+ "LibreChatExtension": {
841
+ "type": "object",
842
+ "description": "LibreChat integration extension",
843
+ "properties": {
844
+ "enabled": {
845
+ "type": "boolean",
846
+ "default": true
847
+ },
848
+ "agent_id": {
849
+ "type": "string",
850
+ "description": "LibreChat agent identifier"
851
+ },
852
+ "endpoint": {
853
+ "type": "string",
854
+ "format": "uri",
855
+ "description": "LibreChat API endpoint"
856
+ },
857
+ "authentication": {
858
+ "type": "object",
859
+ "description": "LibreChat authentication configuration"
860
+ }
861
+ },
862
+ "additionalProperties": true
863
+ },
864
+ "MCPExtension": {
865
+ "type": "object",
866
+ "description": "Model Context Protocol (MCP) extension",
867
+ "properties": {
868
+ "enabled": {
869
+ "type": "boolean",
870
+ "default": true
871
+ },
872
+ "server_type": {
873
+ "type": "string",
874
+ "enum": ["stdio", "sse", "websocket"],
875
+ "default": "stdio"
876
+ },
877
+ "server_name": {
878
+ "type": "string",
879
+ "description": "MCP server name"
880
+ },
881
+ "config": {
882
+ "type": "object",
883
+ "description": "MCP server configuration"
884
+ }
885
+ },
886
+ "additionalProperties": true
887
+ },
888
+ "LangChainExtension": {
889
+ "type": "object",
890
+ "description": "LangChain framework integration extension",
891
+ "properties": {
892
+ "enabled": {
893
+ "type": "boolean",
894
+ "default": false
895
+ },
896
+ "tool_class": {
897
+ "type": "string",
898
+ "description": "LangChain tool class name"
899
+ },
900
+ "chain_type": {
901
+ "type": "string",
902
+ "enum": ["llm", "retrieval", "agent", "sequential", "custom"]
903
+ },
904
+ "memory": {
905
+ "type": "object",
906
+ "properties": {
907
+ "type": {
908
+ "type": "string",
909
+ "enum": ["buffer", "summary", "conversation", "vector"]
910
+ },
911
+ "max_tokens": {
912
+ "type": "integer"
913
+ }
914
+ }
915
+ }
916
+ },
917
+ "additionalProperties": true
918
+ },
919
+ "CrewAIExtension": {
920
+ "type": "object",
921
+ "description": "CrewAI framework integration extension",
922
+ "properties": {
923
+ "enabled": {
924
+ "type": "boolean",
925
+ "default": false
926
+ },
927
+ "agent_type": {
928
+ "type": "string",
929
+ "enum": ["worker", "manager", "researcher", "analyst", "custom"]
930
+ },
931
+ "role": {
932
+ "type": "string",
933
+ "description": "CrewAI agent role"
934
+ },
935
+ "goal": {
936
+ "type": "string",
937
+ "description": "CrewAI agent goal"
938
+ },
939
+ "backstory": {
940
+ "type": "string",
941
+ "description": "CrewAI agent backstory"
942
+ },
943
+ "tools": {
944
+ "type": "array",
945
+ "items": {
946
+ "type": "string"
947
+ },
948
+ "description": "CrewAI tool names"
949
+ }
950
+ },
951
+ "additionalProperties": true
952
+ },
953
+ "OpenAIAgentsExtension": {
954
+ "type": "object",
955
+ "description": "OpenAI Agents SDK integration extension",
956
+ "properties": {
957
+ "enabled": {
958
+ "type": "boolean",
959
+ "default": false,
960
+ "description": "Enable OpenAI Agents SDK bridge"
961
+ },
962
+ "agent_id": {
963
+ "type": "string",
964
+ "description": "OpenAI agent ID (optional, auto-generated if not provided)"
965
+ },
966
+ "instructions": {
967
+ "type": "string",
968
+ "description": "Agent instructions/prompt (overrides spec.role if provided)"
969
+ },
970
+ "model": {
971
+ "type": "string",
972
+ "enum": [
973
+ "gpt-4o",
974
+ "gpt-4o-mini",
975
+ "gpt-4-turbo",
976
+ "gpt-3.5-turbo"
977
+ ],
978
+ "default": "gpt-4o-mini",
979
+ "description": "OpenAI model to use for the agent"
980
+ },
981
+ "tools_mapping": {
982
+ "type": "array",
983
+ "description": "Map OSSA capabilities to OpenAI tools",
984
+ "items": {
985
+ "type": "object",
986
+ "required": [
987
+ "ossa_capability"
988
+ ],
989
+ "properties": {
990
+ "ossa_capability": {
991
+ "type": "string",
992
+ "description": "OSSA capability name to map"
993
+ },
994
+ "openai_tool_name": {
995
+ "type": "string",
996
+ "description": "OpenAI tool name (defaults to ossa_capability if not provided)"
997
+ },
998
+ "description": {
999
+ "type": "string",
1000
+ "description": "Tool description (defaults to OSSA capability description)"
1001
+ },
1002
+ "parameters": {
1003
+ "type": "object",
1004
+ "description": "OpenAI tool parameter schema (auto-generated from OSSA input_schema if not provided)"
1005
+ }
1006
+ },
1007
+ "additionalProperties": false
1008
+ }
1009
+ },
1010
+ "sub_agents": {
1011
+ "type": "array",
1012
+ "description": "Sub-agent handoffs configuration",
1013
+ "items": {
1014
+ "type": "object",
1015
+ "required": [
1016
+ "agent_id",
1017
+ "ossa_agent_ref"
1018
+ ],
1019
+ "properties": {
1020
+ "agent_id": {
1021
+ "type": "string",
1022
+ "description": "OpenAI sub-agent identifier"
1023
+ },
1024
+ "ossa_agent_ref": {
1025
+ "type": "string",
1026
+ "description": "Reference to OSSA agent (metadata.name or agent ID)"
1027
+ },
1028
+ "handoff_conditions": {
1029
+ "type": "array",
1030
+ "items": {
1031
+ "type": "string"
1032
+ },
1033
+ "description": "Conditions that trigger handoff to this sub-agent"
1034
+ },
1035
+ "instructions": {
1036
+ "type": "string",
1037
+ "description": "Sub-agent specific instructions"
1038
+ }
1039
+ },
1040
+ "additionalProperties": false
1041
+ }
1042
+ },
1043
+ "guardrails": {
1044
+ "type": "object",
1045
+ "description": "Safety guardrails configuration",
1046
+ "properties": {
1047
+ "enabled": {
1048
+ "type": "boolean",
1049
+ "default": true
1050
+ },
1051
+ "policies": {
1052
+ "type": "array",
1053
+ "items": {
1054
+ "type": "string"
1055
+ },
1056
+ "description": "Guardrail policy names (maps to OSSA compliance frameworks)"
1057
+ },
1058
+ "max_tool_calls": {
1059
+ "type": "integer",
1060
+ "minimum": 1,
1061
+ "description": "Maximum tool calls per agent execution"
1062
+ },
1063
+ "timeout_seconds": {
1064
+ "type": "integer",
1065
+ "minimum": 1,
1066
+ "description": "Maximum execution time in seconds"
1067
+ }
1068
+ },
1069
+ "additionalProperties": false
1070
+ },
1071
+ "memory": {
1072
+ "type": "object",
1073
+ "description": "Session memory configuration",
1074
+ "properties": {
1075
+ "enabled": {
1076
+ "type": "boolean",
1077
+ "default": false
1078
+ },
1079
+ "type": {
1080
+ "type": "string",
1081
+ "enum": [
1082
+ "session",
1083
+ "persistent"
1084
+ ],
1085
+ "default": "session",
1086
+ "description": "Memory storage type"
1087
+ },
1088
+ "max_messages": {
1089
+ "type": "integer",
1090
+ "minimum": 1,
1091
+ "description": "Maximum messages to retain in memory"
1092
+ }
1093
+ },
1094
+ "additionalProperties": false
1095
+ },
1096
+ "tracing": {
1097
+ "type": "object",
1098
+ "description": "Observability and tracing configuration",
1099
+ "properties": {
1100
+ "enabled": {
1101
+ "type": "boolean",
1102
+ "default": true
1103
+ },
1104
+ "provider": {
1105
+ "type": "string",
1106
+ "enum": [
1107
+ "langfuse",
1108
+ "langsmith",
1109
+ "custom"
1110
+ ],
1111
+ "default": "langfuse",
1112
+ "description": "Tracing provider"
1113
+ },
1114
+ "endpoint": {
1115
+ "type": "string",
1116
+ "format": "uri",
1117
+ "description": "Custom tracing endpoint (for provider=custom)"
1118
+ }
1119
+ },
1120
+ "additionalProperties": false
1121
+ }
1122
+ },
1123
+ "additionalProperties": true
1124
+ },
1125
+ "CursorExtension": {
1126
+ "type": "object",
1127
+ "description": "Cursor IDE agent integration extension",
1128
+ "properties": {
1129
+ "enabled": {
1130
+ "type": "boolean",
1131
+ "default": true,
1132
+ "description": "Enable Cursor IDE integration"
1133
+ },
1134
+ "agent_type": {
1135
+ "type": "string",
1136
+ "enum": ["composer", "chat", "background", "cloud"],
1137
+ "default": "composer",
1138
+ "description": "Cursor agent type (composer, chat, background, or cloud)"
1139
+ },
1140
+ "workspace_config": {
1141
+ "type": "object",
1142
+ "properties": {
1143
+ "rules_file": {
1144
+ "type": "string",
1145
+ "description": "Path to .cursorrules file (default: .cursor/.cursorrules)"
1146
+ },
1147
+ "context_files": {
1148
+ "type": "array",
1149
+ "items": {
1150
+ "type": "string"
1151
+ },
1152
+ "description": "Files to include in agent context"
1153
+ },
1154
+ "ignore_patterns": {
1155
+ "type": "array",
1156
+ "items": {
1157
+ "type": "string"
1158
+ },
1159
+ "description": "Glob patterns to exclude from context"
1160
+ }
1161
+ }
1162
+ },
1163
+ "capabilities": {
1164
+ "type": "object",
1165
+ "properties": {
1166
+ "code_generation": {
1167
+ "type": "boolean",
1168
+ "default": true
1169
+ },
1170
+ "code_review": {
1171
+ "type": "boolean",
1172
+ "default": false
1173
+ },
1174
+ "refactoring": {
1175
+ "type": "boolean",
1176
+ "default": false
1177
+ },
1178
+ "testing": {
1179
+ "type": "boolean",
1180
+ "default": false
1181
+ }
1182
+ }
1183
+ },
1184
+ "model": {
1185
+ "type": "object",
1186
+ "properties": {
1187
+ "provider": {
1188
+ "type": "string",
1189
+ "enum": ["openai", "anthropic", "custom"],
1190
+ "default": "openai"
1191
+ },
1192
+ "name": {
1193
+ "type": "string",
1194
+ "description": "Model name (e.g., gpt-4, claude-3-opus)"
1195
+ }
1196
+ }
1197
+ }
1198
+ },
1199
+ "additionalProperties": true
1200
+ },
1201
+ "LangflowExtension": {
1202
+ "type": "object",
1203
+ "description": "Langflow workflow orchestration extension",
1204
+ "properties": {
1205
+ "enabled": {
1206
+ "type": "boolean",
1207
+ "default": false,
1208
+ "description": "Enable Langflow integration"
1209
+ },
1210
+ "flow_id": {
1211
+ "type": "string",
1212
+ "description": "Langflow flow identifier"
1213
+ },
1214
+ "flow_name": {
1215
+ "type": "string",
1216
+ "description": "Human-readable flow name"
1217
+ },
1218
+ "endpoint": {
1219
+ "type": "string",
1220
+ "format": "uri",
1221
+ "description": "Langflow API endpoint"
1222
+ },
1223
+ "api_key": {
1224
+ "type": "string",
1225
+ "description": "Langflow API key (reference to secret)"
1226
+ },
1227
+ "components": {
1228
+ "type": "array",
1229
+ "description": "Langflow components used in this agent",
1230
+ "items": {
1231
+ "type": "object",
1232
+ "properties": {
1233
+ "id": {
1234
+ "type": "string"
1235
+ },
1236
+ "type": {
1237
+ "type": "string"
1238
+ },
1239
+ "name": {
1240
+ "type": "string"
1241
+ }
1242
+ }
1243
+ }
1244
+ },
1245
+ "dataflow": {
1246
+ "type": "object",
1247
+ "description": "Data flow configuration between components"
1248
+ }
1249
+ },
1250
+ "additionalProperties": true
1251
+ },
1252
+ "AutoGenExtension": {
1253
+ "type": "object",
1254
+ "description": "AutoGen multi-agent framework extension",
1255
+ "properties": {
1256
+ "enabled": {
1257
+ "type": "boolean",
1258
+ "default": false,
1259
+ "description": "Enable AutoGen integration"
1260
+ },
1261
+ "agent_type": {
1262
+ "type": "string",
1263
+ "enum": ["assistant", "user_proxy", "groupchat", "custom"],
1264
+ "description": "AutoGen agent type"
1265
+ },
1266
+ "system_message": {
1267
+ "type": "string",
1268
+ "description": "System message for AutoGen agent (overrides spec.role if provided)"
1269
+ },
1270
+ "human_input_mode": {
1271
+ "type": "string",
1272
+ "enum": ["ALWAYS", "NEVER", "TERMINATE"],
1273
+ "default": "NEVER",
1274
+ "description": "When to request human input"
1275
+ },
1276
+ "code_execution": {
1277
+ "type": "object",
1278
+ "properties": {
1279
+ "enabled": {
1280
+ "type": "boolean",
1281
+ "default": false
1282
+ },
1283
+ "work_dir": {
1284
+ "type": "string",
1285
+ "description": "Working directory for code execution"
1286
+ },
1287
+ "use_docker": {
1288
+ "type": "boolean",
1289
+ "default": false,
1290
+ "description": "Execute code in Docker container"
1291
+ }
1292
+ }
1293
+ },
1294
+ "max_consecutive_auto_reply": {
1295
+ "type": "integer",
1296
+ "minimum": 1,
1297
+ "default": 10,
1298
+ "description": "Maximum consecutive auto-replies before human input"
1299
+ },
1300
+ "groupchat": {
1301
+ "type": "object",
1302
+ "description": "Group chat configuration (for agent_type=groupchat)",
1303
+ "properties": {
1304
+ "agents": {
1305
+ "type": "array",
1306
+ "items": {
1307
+ "type": "string"
1308
+ },
1309
+ "description": "Other agent IDs in the group"
1310
+ },
1311
+ "max_round": {
1312
+ "type": "integer",
1313
+ "minimum": 1,
1314
+ "description": "Maximum rounds in group chat"
1315
+ }
1316
+ }
1317
+ }
1318
+ },
1319
+ "additionalProperties": true
1320
+ },
1321
+ "VercelAIExtension": {
1322
+ "type": "object",
1323
+ "description": "Vercel AI SDK integration extension",
1324
+ "properties": {
1325
+ "enabled": {
1326
+ "type": "boolean",
1327
+ "default": false,
1328
+ "description": "Enable Vercel AI SDK integration"
1329
+ },
1330
+ "runtime": {
1331
+ "type": "string",
1332
+ "enum": ["edge", "nodejs"],
1333
+ "default": "edge",
1334
+ "description": "Runtime environment (edge or nodejs)"
1335
+ },
1336
+ "stream": {
1337
+ "type": "boolean",
1338
+ "default": true,
1339
+ "description": "Enable streaming responses"
1340
+ },
1341
+ "route": {
1342
+ "type": "string",
1343
+ "description": "API route path (e.g., /api/chat)"
1344
+ },
1345
+ "tools": {
1346
+ "type": "array",
1347
+ "description": "Vercel AI SDK tools configuration",
1348
+ "items": {
1349
+ "type": "object",
1350
+ "properties": {
1351
+ "name": {
1352
+ "type": "string"
1353
+ },
1354
+ "description": {
1355
+ "type": "string"
1356
+ },
1357
+ "parameters": {
1358
+ "type": "object",
1359
+ "description": "Tool parameters schema (JSON Schema)"
1360
+ }
1361
+ }
1362
+ }
1363
+ },
1364
+ "experimental": {
1365
+ "type": "object",
1366
+ "description": "Experimental Vercel AI SDK features",
1367
+ "additionalProperties": true
1368
+ }
1369
+ },
1370
+ "additionalProperties": true
1371
+ },
1372
+ "LlamaIndexExtension": {
1373
+ "type": "object",
1374
+ "description": "LlamaIndex framework integration extension",
1375
+ "properties": {
1376
+ "enabled": {
1377
+ "type": "boolean",
1378
+ "default": false,
1379
+ "description": "Enable LlamaIndex integration"
1380
+ },
1381
+ "agent_type": {
1382
+ "type": "string",
1383
+ "enum": ["query_engine", "chat_engine", "retriever", "custom"],
1384
+ "description": "LlamaIndex agent/engine type"
1385
+ },
1386
+ "llm": {
1387
+ "type": "object",
1388
+ "properties": {
1389
+ "provider": {
1390
+ "type": "string",
1391
+ "enum": ["openai", "anthropic", "local", "custom"]
1392
+ },
1393
+ "model": {
1394
+ "type": "string"
1395
+ },
1396
+ "temperature": {
1397
+ "type": "number",
1398
+ "minimum": 0,
1399
+ "maximum": 2
1400
+ }
1401
+ }
1402
+ },
1403
+ "vector_store": {
1404
+ "type": "object",
1405
+ "description": "Vector store configuration for RAG",
1406
+ "properties": {
1407
+ "type": {
1408
+ "type": "string",
1409
+ "enum": ["pinecone", "weaviate", "chroma", "qdrant", "milvus", "custom"]
1410
+ },
1411
+ "config": {
1412
+ "type": "object",
1413
+ "additionalProperties": true
1414
+ }
1415
+ }
1416
+ },
1417
+ "retrieval": {
1418
+ "type": "object",
1419
+ "description": "Retrieval configuration",
1420
+ "properties": {
1421
+ "top_k": {
1422
+ "type": "integer",
1423
+ "minimum": 1,
1424
+ "default": 5,
1425
+ "description": "Number of documents to retrieve"
1426
+ },
1427
+ "similarity_top_k": {
1428
+ "type": "integer",
1429
+ "minimum": 1
1430
+ }
1431
+ }
1432
+ },
1433
+ "tools": {
1434
+ "type": "array",
1435
+ "description": "LlamaIndex tools/query modules",
1436
+ "items": {
1437
+ "type": "object",
1438
+ "properties": {
1439
+ "name": {
1440
+ "type": "string"
1441
+ },
1442
+ "type": {
1443
+ "type": "string"
1444
+ }
1445
+ }
1446
+ }
1447
+ }
1448
+ },
1449
+ "additionalProperties": true
1450
+ },
1451
+ "LangGraphExtension": {
1452
+ "type": "object",
1453
+ "description": "LangGraph state machine agent extension",
1454
+ "properties": {
1455
+ "enabled": {
1456
+ "type": "boolean",
1457
+ "default": false,
1458
+ "description": "Enable LangGraph integration"
1459
+ },
1460
+ "graph_name": {
1461
+ "type": "string",
1462
+ "description": "LangGraph graph/state machine name"
1463
+ },
1464
+ "state_schema": {
1465
+ "type": "object",
1466
+ "description": "State schema definition (TypedDict structure)"
1467
+ },
1468
+ "nodes": {
1469
+ "type": "array",
1470
+ "description": "Graph nodes configuration",
1471
+ "items": {
1472
+ "type": "object",
1473
+ "properties": {
1474
+ "name": {
1475
+ "type": "string"
1476
+ },
1477
+ "function": {
1478
+ "type": "string",
1479
+ "description": "Node function name"
1480
+ }
1481
+ }
1482
+ }
1483
+ },
1484
+ "edges": {
1485
+ "type": "array",
1486
+ "description": "Graph edges/transitions",
1487
+ "items": {
1488
+ "type": "object",
1489
+ "properties": {
1490
+ "from": {
1491
+ "type": "string"
1492
+ },
1493
+ "to": {
1494
+ "type": "string"
1495
+ },
1496
+ "condition": {
1497
+ "type": "string",
1498
+ "description": "Condition function name (optional)"
1499
+ }
1500
+ }
1501
+ }
1502
+ },
1503
+ "checkpoint": {
1504
+ "type": "object",
1505
+ "description": "Checkpoint configuration for state persistence",
1506
+ "properties": {
1507
+ "enabled": {
1508
+ "type": "boolean",
1509
+ "default": false
1510
+ },
1511
+ "type": {
1512
+ "type": "string",
1513
+ "enum": ["memory", "sqlite", "postgres", "custom"]
1514
+ }
1515
+ }
1516
+ }
1517
+ },
1518
+ "additionalProperties": true
1519
+ },
1520
+ "AnthropicExtension": {
1521
+ "type": "object",
1522
+ "description": "Anthropic Claude API integration extension",
1523
+ "properties": {
1524
+ "enabled": {
1525
+ "type": "boolean",
1526
+ "default": false,
1527
+ "description": "Enable Anthropic Claude integration"
1528
+ },
1529
+ "model": {
1530
+ "type": "string",
1531
+ "enum": [
1532
+ "claude-3-5-sonnet-20241022",
1533
+ "claude-3-5-haiku-20241022",
1534
+ "claude-3-opus-20240229",
1535
+ "claude-3-sonnet-20240229",
1536
+ "claude-3-haiku-20240307"
1537
+ ],
1538
+ "default": "claude-3-5-sonnet-20241022",
1539
+ "description": "Claude model version"
1540
+ },
1541
+ "system": {
1542
+ "type": "string",
1543
+ "description": "System prompt (overrides spec.role if provided)"
1544
+ },
1545
+ "max_tokens": {
1546
+ "type": "integer",
1547
+ "minimum": 1,
1548
+ "maximum": 4096,
1549
+ "default": 4096,
1550
+ "description": "Maximum tokens in response"
1551
+ },
1552
+ "temperature": {
1553
+ "type": "number",
1554
+ "minimum": 0,
1555
+ "maximum": 1,
1556
+ "default": 1,
1557
+ "description": "Sampling temperature"
1558
+ },
1559
+ "tools": {
1560
+ "type": "array",
1561
+ "description": "Claude tools/capabilities",
1562
+ "items": {
1563
+ "type": "object",
1564
+ "properties": {
1565
+ "name": {
1566
+ "type": "string"
1567
+ },
1568
+ "description": {
1569
+ "type": "string"
1570
+ },
1571
+ "input_schema": {
1572
+ "type": "object",
1573
+ "description": "Tool input schema (JSON Schema)"
1574
+ }
1575
+ },
1576
+ "required": ["name", "description", "input_schema"]
1577
+ }
1578
+ },
1579
+ "streaming": {
1580
+ "type": "boolean",
1581
+ "default": false,
1582
+ "description": "Enable streaming responses"
1583
+ },
1584
+ "stop_sequences": {
1585
+ "type": "array",
1586
+ "items": {
1587
+ "type": "string"
1588
+ },
1589
+ "description": "Stop sequences for response generation"
1590
+ }
1591
+ },
1592
+ "additionalProperties": true
1593
+ },
1594
+ "GoogleADKExtension": {
1595
+ "type": "object",
1596
+ "description": "Google Agent Development Kit (ADK) integration extension (v0.2.5)",
1597
+ "properties": {
1598
+ "enabled": {
1599
+ "type": "boolean",
1600
+ "default": false,
1601
+ "description": "Enable Google ADK integration"
1602
+ },
1603
+ "agent_type": {
1604
+ "type": "string",
1605
+ "enum": ["llm_agent", "sequential_agent", "parallel_agent", "loop_agent", "custom"],
1606
+ "default": "llm_agent",
1607
+ "description": "ADK agent type"
1608
+ },
1609
+ "model": {
1610
+ "type": "string",
1611
+ "description": "Gemini model to use",
1612
+ "examples": ["gemini-2.0-flash-exp", "gemini-1.5-pro"]
1613
+ },
1614
+ "instruction": {
1615
+ "type": "string",
1616
+ "description": "Agent instruction (overrides spec.role if provided)"
1617
+ },
1618
+ "tools": {
1619
+ "type": "array",
1620
+ "description": "ADK tools configuration",
1621
+ "items": {
1622
+ "type": "object",
1623
+ "properties": {
1624
+ "name": {
1625
+ "type": "string"
1626
+ },
1627
+ "type": {
1628
+ "type": "string",
1629
+ "enum": ["function", "agent", "mcp_server"]
1630
+ },
1631
+ "config": {
1632
+ "type": "object",
1633
+ "additionalProperties": true
1634
+ }
1635
+ }
1636
+ }
1637
+ },
1638
+ "sub_agents": {
1639
+ "type": "array",
1640
+ "description": "Sub-agent references for orchestration",
1641
+ "items": {
1642
+ "type": "string"
1643
+ }
1644
+ },
1645
+ "session": {
1646
+ "type": "object",
1647
+ "description": "Session management configuration",
1648
+ "properties": {
1649
+ "service": {
1650
+ "type": "string",
1651
+ "enum": ["in_memory", "database", "vertex_ai"],
1652
+ "default": "in_memory"
1653
+ },
1654
+ "state_schema": {
1655
+ "type": "object",
1656
+ "description": "Session state schema"
1657
+ }
1658
+ }
1659
+ },
1660
+ "memory": {
1661
+ "type": "object",
1662
+ "description": "Memory service configuration",
1663
+ "properties": {
1664
+ "enabled": {
1665
+ "type": "boolean",
1666
+ "default": false
1667
+ },
1668
+ "service": {
1669
+ "type": "string",
1670
+ "enum": ["in_memory", "vertex_ai_rag"]
1671
+ }
1672
+ }
1673
+ },
1674
+ "callbacks": {
1675
+ "type": "object",
1676
+ "description": "Lifecycle callbacks",
1677
+ "properties": {
1678
+ "before_agent_callback": {
1679
+ "type": "string"
1680
+ },
1681
+ "after_agent_callback": {
1682
+ "type": "string"
1683
+ },
1684
+ "before_model_callback": {
1685
+ "type": "string"
1686
+ },
1687
+ "after_model_callback": {
1688
+ "type": "string"
1689
+ }
1690
+ }
1691
+ }
1692
+ },
1693
+ "additionalProperties": true
1694
+ }
1695
+ }
1696
+ }