@bluefly/openstandardagents 0.3.0 → 0.3.2

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 (406) hide show
  1. package/.devfile.yaml +87 -0
  2. package/.gitlab-ci-trigger +1 -0
  3. package/.wiki-config.json +24 -0
  4. package/CHANGELOG.md +212 -1
  5. package/README.md +8 -193
  6. package/dist/adapters/anthropic/runtime.js +2 -2
  7. package/dist/adapters/anthropic/runtime.js.map +1 -1
  8. package/dist/bot/architecture-validator-bot.d.ts +8 -0
  9. package/dist/bot/architecture-validator-bot.d.ts.map +1 -0
  10. package/dist/bot/architecture-validator-bot.js +15 -0
  11. package/dist/bot/architecture-validator-bot.js.map +1 -0
  12. package/dist/bot/ci-pipeline-bot.d.ts +7 -0
  13. package/dist/bot/ci-pipeline-bot.d.ts.map +1 -0
  14. package/dist/bot/ci-pipeline-bot.js +7 -0
  15. package/dist/bot/ci-pipeline-bot.js.map +1 -0
  16. package/dist/bot/compliance-bot.d.ts +56 -0
  17. package/dist/bot/compliance-bot.d.ts.map +1 -0
  18. package/dist/bot/compliance-bot.js +203 -0
  19. package/dist/bot/compliance-bot.js.map +1 -0
  20. package/dist/bot/dependency-updater-bot.d.ts +9 -0
  21. package/dist/bot/dependency-updater-bot.d.ts.map +1 -0
  22. package/dist/bot/dependency-updater-bot.js +9 -0
  23. package/dist/bot/dependency-updater-bot.js.map +1 -0
  24. package/dist/bot/security-scanner-bot.d.ts +11 -0
  25. package/dist/bot/security-scanner-bot.d.ts.map +1 -0
  26. package/dist/bot/security-scanner-bot.js +21 -0
  27. package/dist/bot/security-scanner-bot.js.map +1 -0
  28. package/dist/cli/commands/agent-card.command.d.ts +11 -0
  29. package/dist/cli/commands/agent-card.command.d.ts.map +1 -0
  30. package/dist/cli/commands/agent-card.command.js +285 -0
  31. package/dist/cli/commands/agent-card.command.js.map +1 -0
  32. package/dist/cli/commands/agents.command.d.ts +11 -0
  33. package/dist/cli/commands/agents.command.d.ts.map +1 -0
  34. package/dist/cli/commands/agents.command.js +326 -0
  35. package/dist/cli/commands/agents.command.js.map +1 -0
  36. package/dist/cli/commands/diff.command.d.ts +7 -0
  37. package/dist/cli/commands/diff.command.d.ts.map +1 -0
  38. package/dist/cli/commands/diff.command.js +181 -0
  39. package/dist/cli/commands/diff.command.js.map +1 -0
  40. package/dist/cli/commands/docs.command.d.ts +7 -0
  41. package/dist/cli/commands/docs.command.d.ts.map +1 -0
  42. package/dist/cli/commands/docs.command.js +274 -0
  43. package/dist/cli/commands/docs.command.js.map +1 -0
  44. package/dist/cli/commands/generate.command.d.ts +13 -2
  45. package/dist/cli/commands/generate.command.d.ts.map +1 -1
  46. package/dist/cli/commands/generate.command.js +204 -29
  47. package/dist/cli/commands/generate.command.js.map +1 -1
  48. package/dist/cli/commands/lint.command.d.ts +7 -0
  49. package/dist/cli/commands/lint.command.d.ts.map +1 -0
  50. package/dist/cli/commands/lint.command.js +342 -0
  51. package/dist/cli/commands/lint.command.js.map +1 -0
  52. package/dist/cli/commands/registry.command.d.ts +14 -0
  53. package/dist/cli/commands/registry.command.d.ts.map +1 -0
  54. package/dist/cli/commands/registry.command.js +428 -0
  55. package/dist/cli/commands/registry.command.js.map +1 -0
  56. package/dist/cli/commands/serve.command.d.ts +7 -0
  57. package/dist/cli/commands/serve.command.d.ts.map +1 -0
  58. package/dist/cli/commands/serve.command.js +232 -0
  59. package/dist/cli/commands/serve.command.js.map +1 -0
  60. package/dist/cli/commands/workspace.command.d.ts +14 -0
  61. package/dist/cli/commands/workspace.command.d.ts.map +1 -0
  62. package/dist/cli/commands/workspace.command.js +467 -0
  63. package/dist/cli/commands/workspace.command.js.map +1 -0
  64. package/dist/cli/index.js +13 -0
  65. package/dist/cli/index.js.map +1 -1
  66. package/dist/di-container.d.ts.map +1 -1
  67. package/dist/di-container.js +23 -0
  68. package/dist/di-container.js.map +1 -1
  69. package/dist/services/codegen/codegen.service.d.ts +75 -0
  70. package/dist/services/codegen/codegen.service.d.ts.map +1 -0
  71. package/dist/services/codegen/codegen.service.js +136 -0
  72. package/dist/services/codegen/codegen.service.js.map +1 -0
  73. package/dist/services/codegen/generators/manifest.generator.d.ts +41 -0
  74. package/dist/services/codegen/generators/manifest.generator.d.ts.map +1 -0
  75. package/dist/services/codegen/generators/manifest.generator.js +178 -0
  76. package/dist/services/codegen/generators/manifest.generator.js.map +1 -0
  77. package/dist/services/codegen/generators/openapi.generator.d.ts +46 -0
  78. package/dist/services/codegen/generators/openapi.generator.d.ts.map +1 -0
  79. package/dist/services/codegen/generators/openapi.generator.js +157 -0
  80. package/dist/services/codegen/generators/openapi.generator.js.map +1 -0
  81. package/dist/services/codegen/generators/types.generator.d.ts +27 -0
  82. package/dist/services/codegen/generators/types.generator.d.ts.map +1 -0
  83. package/dist/services/codegen/generators/types.generator.js +97 -0
  84. package/dist/services/codegen/generators/types.generator.js.map +1 -0
  85. package/dist/services/codegen/generators/vscode.generator.d.ts +43 -0
  86. package/dist/services/codegen/generators/vscode.generator.d.ts.map +1 -0
  87. package/dist/services/codegen/generators/vscode.generator.js +163 -0
  88. package/dist/services/codegen/generators/vscode.generator.js.map +1 -0
  89. package/dist/services/codegen/generators/zod.generator.d.ts +31 -0
  90. package/dist/services/codegen/generators/zod.generator.d.ts.map +1 -0
  91. package/dist/services/codegen/generators/zod.generator.js +134 -0
  92. package/dist/services/codegen/generators/zod.generator.js.map +1 -0
  93. package/dist/services/codegen/index.d.ts +33 -0
  94. package/dist/services/codegen/index.d.ts.map +1 -0
  95. package/dist/services/codegen/index.js +36 -0
  96. package/dist/services/codegen/index.js.map +1 -0
  97. package/dist/services/git.service.d.ts +40 -0
  98. package/dist/services/git.service.d.ts.map +1 -0
  99. package/dist/services/git.service.js +122 -0
  100. package/dist/services/git.service.js.map +1 -0
  101. package/dist/spec/extensions/openapi/ossa-openapi-extensions.schema.json +804 -0
  102. package/dist/spec/v0.3.0/examples/drupal-content-writer.ossa.yaml +1 -1
  103. package/dist/spec/v0.3.0/examples/drupal-moderation-assistant.ossa.yaml +1 -1
  104. package/dist/spec/v0.3.0/examples/quick-wins/complete-agent-with-quick-wins.ossa.yaml +1 -1
  105. package/dist/spec/v0.3.0/runtime-bindings/anthropic.yaml +209 -0
  106. package/dist/spec/v0.3.1/UNIFIED-SCHEMA.md +120 -0
  107. package/dist/spec/v0.3.1/adapters/drupal.md +541 -0
  108. package/dist/spec/v0.3.1/adapters/symfony.md +659 -0
  109. package/dist/spec/v0.3.1/agent-test.schema.json +75 -0
  110. package/dist/spec/v0.3.1/examples/agent-with-identity.ossa.yaml +68 -0
  111. package/dist/spec/v0.3.1/examples/drupal-content-writer.ossa.yaml +110 -0
  112. package/dist/spec/v0.3.1/examples/drupal-moderation-assistant.ossa.yaml +96 -0
  113. package/dist/spec/v0.3.1/examples/multi-provider-identity.ossa.yaml +236 -0
  114. package/dist/spec/v0.3.1/examples/quick-wins/complete-agent-with-quick-wins.ossa.yaml +144 -0
  115. package/dist/spec/v0.3.1/extensions/agent-identity.yaml +594 -0
  116. package/dist/spec/v0.3.1/extensions/drupal.md +417 -0
  117. package/dist/spec/v0.3.1/ossa-0.3.1.schema.json +3085 -0
  118. package/dist/spec/v0.3.1/protocols/sse.md +494 -0
  119. package/dist/spec/v0.3.1/protocols/webrtc.md +600 -0
  120. package/dist/spec/v0.3.1/protocols/websocket.md +362 -0
  121. package/dist/spec/v0.3.1/schemas/agent-unified.yaml +165 -0
  122. package/dist/spec/v0.3.1/schemas/capabilities.yaml +102 -0
  123. package/dist/spec/v0.3.1/schemas/functions.yaml +75 -0
  124. package/dist/spec/v0.3.1/schemas/messaging/channel.schema.json +245 -0
  125. package/dist/spec/v0.3.1/schemas/messaging/delivery-receipt.schema.json +192 -0
  126. package/dist/spec/v0.3.1/schemas/messaging/message.schema.json +205 -0
  127. package/dist/spec/v0.3.1/schemas/messaging/subscription.schema.json +214 -0
  128. package/dist/spec/v0.3.1/schemas/runtime.yaml +102 -0
  129. package/dist/spec/v0.3.1/schemas/taxonomy.yaml +533 -0
  130. package/dist/spec/v0.3.1/schemas/unified-llm.yaml +91 -0
  131. package/dist/spec/v0.3.1/taxonomy.yaml +256 -0
  132. package/dist/spec/v0.3.2/MIGRATION-v0.3.1-to-v0.3.2.md +293 -0
  133. package/dist/spec/v0.3.2/UNIFIED-SCHEMA.md +120 -0
  134. package/dist/spec/v0.3.2/access_tiers.yaml +375 -0
  135. package/dist/spec/v0.3.2/adapters/drupal.md +541 -0
  136. package/dist/spec/v0.3.2/adapters/symfony.md +659 -0
  137. package/dist/spec/v0.3.2/agent-test.schema.json +75 -0
  138. package/dist/spec/v0.3.2/examples/access-tiers/README.md +106 -0
  139. package/dist/spec/v0.3.2/examples/access-tiers/code-critic.ossa.yaml +119 -0
  140. package/dist/spec/v0.3.2/examples/access-tiers/compliance-governor.ossa.yaml +234 -0
  141. package/dist/spec/v0.3.2/examples/access-tiers/deployment-operator.ossa.yaml +201 -0
  142. package/dist/spec/v0.3.2/examples/access-tiers/doc-generator.ossa.yaml +117 -0
  143. package/dist/spec/v0.3.2/examples/access-tiers/security-scanner.ossa.yaml +133 -0
  144. package/dist/spec/v0.3.2/examples/agent-with-identity.ossa.yaml +68 -0
  145. package/dist/spec/v0.3.2/examples/drupal-content-writer.ossa.yaml +110 -0
  146. package/dist/spec/v0.3.2/examples/drupal-moderation-assistant.ossa.yaml +96 -0
  147. package/dist/spec/v0.3.2/examples/multi-provider-identity.ossa.yaml +236 -0
  148. package/dist/spec/v0.3.2/examples/quick-wins/complete-agent-with-quick-wins.ossa.yaml +144 -0
  149. package/dist/spec/v0.3.2/examples/tasks/data-transform.ossa.yaml +147 -0
  150. package/dist/spec/v0.3.2/examples/tasks/publish-content.ossa.yaml +125 -0
  151. package/dist/spec/v0.3.2/examples/workflows/content-publishing.ossa.yaml +190 -0
  152. package/dist/spec/v0.3.2/examples/workflows/deployment-pipeline.ossa.yaml +247 -0
  153. package/dist/spec/v0.3.2/extensions/agent-identity.yaml +594 -0
  154. package/dist/spec/v0.3.2/extensions/drupal.md +417 -0
  155. package/dist/spec/v0.3.2/infrastructure/service-ports.yaml +324 -0
  156. package/dist/spec/v0.3.2/ossa-0.3.2.schema.json +3316 -0
  157. package/dist/spec/v0.3.2/protocols/delegation.yaml +239 -0
  158. package/dist/spec/v0.3.2/protocols/sse.md +494 -0
  159. package/dist/spec/v0.3.2/protocols/webrtc.md +600 -0
  160. package/dist/spec/v0.3.2/protocols/websocket.md +362 -0
  161. package/dist/spec/v0.3.2/runtime/RUNTIME.md +457 -0
  162. package/dist/spec/v0.3.2/runtime/memory-model.yaml +871 -0
  163. package/dist/spec/v0.3.2/runtime/runtime.yaml +926 -0
  164. package/dist/spec/v0.3.2/schemas/agent-unified.yaml +165 -0
  165. package/dist/spec/v0.3.2/schemas/capabilities.yaml +102 -0
  166. package/dist/spec/v0.3.2/schemas/functions.yaml +75 -0
  167. package/dist/spec/v0.3.2/schemas/messaging/channel.schema.json +245 -0
  168. package/dist/spec/v0.3.2/schemas/messaging/delivery-receipt.schema.json +192 -0
  169. package/dist/spec/v0.3.2/schemas/messaging/message.schema.json +205 -0
  170. package/dist/spec/v0.3.2/schemas/messaging/subscription.schema.json +214 -0
  171. package/dist/spec/v0.3.2/schemas/runtime.yaml +102 -0
  172. package/dist/spec/v0.3.2/schemas/taxonomy.yaml +533 -0
  173. package/dist/spec/v0.3.2/schemas/unified-llm.yaml +91 -0
  174. package/dist/spec/v0.3.2/taxonomy.yaml +363 -0
  175. package/dist/testing/fixtures.d.ts.map +1 -1
  176. package/dist/testing/fixtures.js +3 -2
  177. package/dist/testing/fixtures.js.map +1 -1
  178. package/dist/types/generated/{ossa-0.3.0.types.d.ts → ossa-0.3.2.types.d.ts} +58 -7
  179. package/dist/types/generated/ossa-0.3.2.types.d.ts.map +1 -0
  180. package/dist/types/generated/ossa-0.3.2.types.js +10 -0
  181. package/dist/types/generated/ossa-0.3.2.types.js.map +1 -0
  182. package/dist/types/generated/ossa-0.3.2.zod.d.ts +36 -0
  183. package/dist/types/generated/ossa-0.3.2.zod.d.ts.map +1 -0
  184. package/dist/types/generated/ossa-0.3.2.zod.js +25 -0
  185. package/dist/types/generated/ossa-0.3.2.zod.js.map +1 -0
  186. package/examples/adapters/drupal-eca-mapping.yaml +1 -1
  187. package/examples/adapters/drupal-eca-task.yaml +1 -1
  188. package/examples/adapters/drupal-flowdrop-mapping.yaml +1 -1
  189. package/examples/adapters/drupal-maestro-mapping.yaml +1 -1
  190. package/examples/adapters/mistral-agent.yaml +1 -1
  191. package/examples/adapters/symfony-messenger-task.yaml +1 -1
  192. package/examples/adapters/symfony-messenger-workflow.yaml +1 -1
  193. package/examples/adk-integration/code-review-workflow.yml +1 -1
  194. package/examples/adk-integration/customer-support.yml +1 -1
  195. package/examples/adk-integration/data-pipeline.yml +1 -1
  196. package/examples/advanced/reasoning-agent.yaml +1 -1
  197. package/examples/advanced/workflows/hybrid-model-strategy.yaml +1 -1
  198. package/examples/agent-manifests/critics/critic-agent.yaml +1 -1
  199. package/examples/agent-manifests/governors/governor-agent.yaml +1 -1
  200. package/examples/agent-manifests/integrators/integrator-agent.yaml +1 -1
  201. package/examples/agent-manifests/judges/judge-agent.yaml +1 -1
  202. package/examples/agent-manifests/monitors/monitor-agent.yaml +1 -1
  203. package/examples/agent-manifests/orchestrators/orchestrator-agent.yaml +1 -1
  204. package/examples/agent-manifests/sample-compliant-agent.yaml +1 -1
  205. package/examples/agent-manifests/workers/worker-agent.yaml +1 -1
  206. package/examples/agents/architecture-healer-enterprise.yaml +1 -1
  207. package/examples/agents/dependency-healer-npm.yaml +1 -1
  208. package/examples/agents/spec-healer-openapi.yaml +1 -1
  209. package/examples/agents/wiki-healer-production.yaml +1 -1
  210. package/examples/agents-md/code-agent.ossa.json +36 -11
  211. package/examples/agents-md/monorepo-agent.ossa.yaml +1 -1
  212. package/examples/anthropic/claude-assistant.ossa.json +4 -4
  213. package/examples/autogen/multi-agent.ossa.json +2 -2
  214. package/examples/autonomous-evolution/self-evolving-agent.ossa.yaml +1 -1
  215. package/examples/claude-code/code-reviewer.ossa.yaml +1 -1
  216. package/examples/claude-code/ossa-validator.ossa.yaml +1 -1
  217. package/examples/common_npm/agent-router.ossa.yaml +1 -1
  218. package/examples/contracts/data-consumer.ossa.yaml +1 -1
  219. package/examples/contracts/data-producer-v2.ossa.yaml +1 -1
  220. package/examples/contracts/data-producer.ossa.yaml +1 -1
  221. package/examples/crewai/research-team.ossa.json +2 -2
  222. package/examples/cursor/code-review-agent.ossa.json +2 -2
  223. package/examples/drupal/ai_agents_ossa-module/.agents/example-agent/agent.ossa.yaml +1 -1
  224. package/examples/drupal/gitlab-ml-recommender.ossa.yaml +1 -1
  225. package/examples/extensions/agents-md-advanced.yml +1 -1
  226. package/examples/extensions/agents-md-basic.yml +1 -1
  227. package/examples/extensions/agents-md-sync.yml +1 -1
  228. package/examples/extensions/agents-md-v1.yml +1 -1
  229. package/examples/extensions/drupal-v1.yml +1 -1
  230. package/examples/extensions/encryption-multi-provider.yaml +4 -4
  231. package/examples/extensions/kagent-v1.yml +1 -1
  232. package/examples/extensions/knowledge-sources.yaml +1 -1
  233. package/examples/extensions/mcp-full-featured.yaml +1 -1
  234. package/examples/getting-started/01-minimal-agent.ossa.yaml +3 -3
  235. package/examples/getting-started/02-agent-with-tools.ossa.yaml +1 -1
  236. package/examples/getting-started/03-agent-with-safety.ossa.yaml +1 -1
  237. package/examples/getting-started/04-agent-with-messaging.ossa.yaml +2 -2
  238. package/examples/getting-started/05-workflow-composition.ossa.yaml +1 -1
  239. package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
  240. package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +4 -4
  241. package/examples/kagent/compliance-validator.ossa.yaml +1 -1
  242. package/examples/kagent/cost-optimizer.ossa.yaml +1 -1
  243. package/examples/kagent/documentation-agent.ossa.yaml +1 -1
  244. package/examples/kagent/k8s-troubleshooter-v1.ossa.yaml +1 -1
  245. package/examples/kagent/k8s-troubleshooter.ossa.yaml +1 -1
  246. package/examples/kagent/security-scanner.ossa.yaml +1 -1
  247. package/examples/langchain/chain-agent.ossa.json +2 -2
  248. package/examples/langflow/workflow-agent.ossa.json +2 -2
  249. package/examples/langgraph/state-machine-agent.ossa.json +2 -2
  250. package/examples/llamaindex/rag-agent.ossa.json +2 -2
  251. package/examples/messaging/dependency-healer.ossa.yaml +1 -1
  252. package/examples/messaging/incident-responder.ossa.yaml +1 -1
  253. package/examples/messaging/routing-rules.ossa.yaml +3 -3
  254. package/examples/messaging/security-scanner.ossa.yaml +1 -1
  255. package/examples/migration-guides/from-langchain-to-ossa.yaml +4 -4
  256. package/examples/multi-agent/conditional-router.ossa.yaml +1 -1
  257. package/examples/multi-agent/parallel-execution.ossa.yaml +1 -1
  258. package/examples/multi-agent/sequential-pipeline.ossa.yaml +1 -1
  259. package/examples/observability/activity-stream-full.yaml +1 -1
  260. package/examples/openai/basic-agent.ossa.yaml +1 -1
  261. package/examples/openai/multi-tool-agent.ossa.json +2 -2
  262. package/examples/openai/swarm-agent.ossa.json +2 -2
  263. package/examples/production/document-analyzer-openai.yml +1 -1
  264. package/examples/quickstart/support-agent.ossa.yaml +1 -1
  265. package/examples/real-world/gitlab-cicd-optimizer.ossa.yaml +1 -1
  266. package/examples/real-world/rag-documentation-assistant.ossa.yaml +1 -1
  267. package/examples/runtime-adapters/bedrock-claude-example.ossa.yaml +1 -1
  268. package/examples/schema/reusable-components.yaml +1 -1
  269. package/examples/showcase/ci-pipeline.ossa.yaml +59 -0
  270. package/examples/showcase/code-assistant.ossa.yaml +118 -0
  271. package/examples/showcase/code-reviewer.ossa.yaml +61 -0
  272. package/examples/showcase/compliance-validator.ossa.yaml +62 -0
  273. package/examples/showcase/content-writer.ossa.yaml +67 -0
  274. package/examples/showcase/data-transformer.ossa.yaml +78 -0
  275. package/examples/showcase/doc-generator.ossa.yaml +68 -0
  276. package/examples/showcase/security-scanner.ossa.yaml +65 -0
  277. package/examples/showcase/test-generator.ossa.yaml +63 -0
  278. package/examples/showcase/workflow-orchestrator.ossa.yaml +129 -0
  279. package/examples/tasks/batch-email-sender.yaml +1 -1
  280. package/examples/tasks/data-transform.yaml +1 -1
  281. package/examples/tasks/publish-content.yaml +1 -1
  282. package/examples/templates/ossa-compliance.yaml +1 -1
  283. package/examples/unified/security-scanner.ossa.yaml +1 -1
  284. package/examples/vercel/edge-agent.ossa.json +2 -2
  285. package/examples/workflows/batch-email-campaign.yaml +1 -1
  286. package/examples/workflows/content-review-publish.yaml +1 -1
  287. package/examples/workflows/simple-etl.yaml +1 -1
  288. package/llms-ctx-full.txt +39 -0
  289. package/llms-ctx.txt +39 -0
  290. package/openapi/agent-communication.yaml +1 -1
  291. package/openapi/agent-crud.yaml +8 -8
  292. package/openapi/agent-discovery.yaml +2 -2
  293. package/openapi/agent-identity.yaml +8 -8
  294. package/openapi/cli-commands.openapi.yaml +231 -0
  295. package/openapi/core/ossa-core-api.openapi.yaml +1 -1
  296. package/openapi/core/ossa-registry-api.openapi.yaml +1 -1
  297. package/openapi/core/ossa-registry.openapi.yaml +1 -1
  298. package/openapi/core/unified-agent-gateway.openapi.yaml +1 -1
  299. package/openapi/github-sync.yaml +1 -1
  300. package/openapi/protocols/sse-streams.yaml +1 -1
  301. package/openapi/protocols/websocket-events.yaml +2 -2
  302. package/openapi/reference-implementations/aiflow-bridge-api.openapi.yaml +2 -2
  303. package/openapi/reference-implementations/compliance-agent-api.openapi.yaml +1 -1
  304. package/openapi/reference-implementations/crewai-agent-api.openapi.yaml +1 -1
  305. package/openapi/reference-implementations/critic-agent-api.openapi.yaml +2 -2
  306. package/openapi/reference-implementations/document-analyzer-api.openapi.yaml +2 -2
  307. package/openapi/reference-implementations/drupal-agent-api.openapi.yaml +1 -1
  308. package/openapi/reference-implementations/getting-started-hello-world-api.openapi.yaml +1 -1
  309. package/openapi/reference-implementations/gitlab-ml-recommender-api.openapi.yaml +2 -2
  310. package/openapi/reference-implementations/governor-agent-api.openapi.yaml +1 -1
  311. package/openapi/reference-implementations/helm-generator.openapi.yaml +1 -1
  312. package/openapi/reference-implementations/integrator-agent-api.openapi.yaml +1 -1
  313. package/openapi/reference-implementations/judge-agent-api.openapi.yaml +1 -1
  314. package/openapi/reference-implementations/k8s-troubleshooter-api.openapi.yaml +2 -2
  315. package/openapi/reference-implementations/langchain-agent-api.openapi.yaml +1 -1
  316. package/openapi/reference-implementations/monitor-agent-api.openapi.yaml +2 -2
  317. package/openapi/reference-implementations/orchestrator-agent-api.openapi.yaml +1 -1
  318. package/openapi/reference-implementations/quickstart-support-agent-api.openapi.yaml +2 -2
  319. package/openapi/reference-implementations/self-evolving-ecosystem.openapi.yaml +1 -1
  320. package/openapi/reference-implementations/worker-agent-api.openapi.yaml +2 -2
  321. package/openapi/reference-implementations/workflow-orchestrator-api.openapi.yaml +1 -1
  322. package/package.json +14 -32
  323. package/spec/extensions/openapi/ossa-openapi-extensions.schema.json +804 -0
  324. package/spec/v0.3.0/examples/drupal-content-writer.ossa.yaml +1 -1
  325. package/spec/v0.3.0/examples/drupal-moderation-assistant.ossa.yaml +1 -1
  326. package/spec/v0.3.0/examples/quick-wins/complete-agent-with-quick-wins.ossa.yaml +1 -1
  327. package/spec/v0.3.0/runtime-bindings/anthropic.yaml +209 -0
  328. package/spec/v0.3.1/UNIFIED-SCHEMA.md +120 -0
  329. package/spec/v0.3.1/adapters/drupal.md +541 -0
  330. package/spec/v0.3.1/adapters/symfony.md +659 -0
  331. package/spec/v0.3.1/agent-test.schema.json +75 -0
  332. package/spec/v0.3.1/examples/agent-with-identity.ossa.yaml +68 -0
  333. package/spec/v0.3.1/examples/drupal-content-writer.ossa.yaml +110 -0
  334. package/spec/v0.3.1/examples/drupal-moderation-assistant.ossa.yaml +96 -0
  335. package/spec/v0.3.1/examples/multi-provider-identity.ossa.yaml +236 -0
  336. package/spec/v0.3.1/examples/quick-wins/complete-agent-with-quick-wins.ossa.yaml +144 -0
  337. package/spec/v0.3.1/extensions/agent-identity.yaml +594 -0
  338. package/spec/v0.3.1/extensions/drupal.md +417 -0
  339. package/spec/v0.3.1/ossa-0.3.1.schema.json +3085 -0
  340. package/spec/v0.3.1/protocols/sse.md +494 -0
  341. package/spec/v0.3.1/protocols/webrtc.md +600 -0
  342. package/spec/v0.3.1/protocols/websocket.md +362 -0
  343. package/spec/v0.3.1/schemas/agent-unified.yaml +165 -0
  344. package/spec/v0.3.1/schemas/capabilities.yaml +102 -0
  345. package/spec/v0.3.1/schemas/functions.yaml +75 -0
  346. package/spec/v0.3.1/schemas/messaging/channel.schema.json +245 -0
  347. package/spec/v0.3.1/schemas/messaging/delivery-receipt.schema.json +192 -0
  348. package/spec/v0.3.1/schemas/messaging/message.schema.json +205 -0
  349. package/spec/v0.3.1/schemas/messaging/subscription.schema.json +214 -0
  350. package/spec/v0.3.1/schemas/runtime.yaml +102 -0
  351. package/spec/v0.3.1/schemas/taxonomy.yaml +533 -0
  352. package/spec/v0.3.1/schemas/unified-llm.yaml +91 -0
  353. package/spec/v0.3.1/taxonomy.yaml +256 -0
  354. package/spec/v0.3.2/MIGRATION-v0.3.1-to-v0.3.2.md +293 -0
  355. package/spec/v0.3.2/UNIFIED-SCHEMA.md +120 -0
  356. package/spec/v0.3.2/access_tiers.yaml +375 -0
  357. package/spec/v0.3.2/adapters/drupal.md +541 -0
  358. package/spec/v0.3.2/adapters/symfony.md +659 -0
  359. package/spec/v0.3.2/agent-test.schema.json +75 -0
  360. package/spec/v0.3.2/examples/access-tiers/README.md +106 -0
  361. package/spec/v0.3.2/examples/access-tiers/code-critic.ossa.yaml +119 -0
  362. package/spec/v0.3.2/examples/access-tiers/compliance-governor.ossa.yaml +234 -0
  363. package/spec/v0.3.2/examples/access-tiers/deployment-operator.ossa.yaml +201 -0
  364. package/spec/v0.3.2/examples/access-tiers/doc-generator.ossa.yaml +117 -0
  365. package/spec/v0.3.2/examples/access-tiers/security-scanner.ossa.yaml +133 -0
  366. package/spec/v0.3.2/examples/agent-with-identity.ossa.yaml +68 -0
  367. package/spec/v0.3.2/examples/drupal-content-writer.ossa.yaml +110 -0
  368. package/spec/v0.3.2/examples/drupal-moderation-assistant.ossa.yaml +96 -0
  369. package/spec/v0.3.2/examples/multi-provider-identity.ossa.yaml +236 -0
  370. package/spec/v0.3.2/examples/quick-wins/complete-agent-with-quick-wins.ossa.yaml +144 -0
  371. package/spec/v0.3.2/examples/tasks/data-transform.ossa.yaml +147 -0
  372. package/spec/v0.3.2/examples/tasks/publish-content.ossa.yaml +125 -0
  373. package/spec/v0.3.2/examples/workflows/content-publishing.ossa.yaml +190 -0
  374. package/spec/v0.3.2/examples/workflows/deployment-pipeline.ossa.yaml +247 -0
  375. package/spec/v0.3.2/extensions/agent-identity.yaml +594 -0
  376. package/spec/v0.3.2/extensions/drupal.md +417 -0
  377. package/spec/v0.3.2/infrastructure/service-ports.yaml +324 -0
  378. package/spec/v0.3.2/ossa-0.3.2.schema.json +3316 -0
  379. package/spec/v0.3.2/protocols/delegation.yaml +239 -0
  380. package/spec/v0.3.2/protocols/sse.md +494 -0
  381. package/spec/v0.3.2/protocols/webrtc.md +600 -0
  382. package/spec/v0.3.2/protocols/websocket.md +362 -0
  383. package/spec/v0.3.2/runtime/RUNTIME.md +457 -0
  384. package/spec/v0.3.2/runtime/memory-model.yaml +871 -0
  385. package/spec/v0.3.2/runtime/runtime.yaml +926 -0
  386. package/spec/v0.3.2/schemas/agent-unified.yaml +165 -0
  387. package/spec/v0.3.2/schemas/capabilities.yaml +102 -0
  388. package/spec/v0.3.2/schemas/functions.yaml +75 -0
  389. package/spec/v0.3.2/schemas/messaging/channel.schema.json +245 -0
  390. package/spec/v0.3.2/schemas/messaging/delivery-receipt.schema.json +192 -0
  391. package/spec/v0.3.2/schemas/messaging/message.schema.json +205 -0
  392. package/spec/v0.3.2/schemas/messaging/subscription.schema.json +214 -0
  393. package/spec/v0.3.2/schemas/runtime.yaml +102 -0
  394. package/spec/v0.3.2/schemas/taxonomy.yaml +533 -0
  395. package/spec/v0.3.2/schemas/unified-llm.yaml +91 -0
  396. package/spec/v0.3.2/taxonomy.yaml +363 -0
  397. package/dist/types/generated/ossa-0.3.0.types.d.ts.map +0 -1
  398. package/dist/types/generated/ossa-0.3.0.types.js +0 -8
  399. package/dist/types/generated/ossa-0.3.0.types.js.map +0 -1
  400. package/dist/types/generated/ossa-0.3.0.zod.d.ts +0 -17
  401. package/dist/types/generated/ossa-0.3.0.zod.d.ts.map +0 -1
  402. package/dist/types/generated/ossa-0.3.0.zod.js +0 -3
  403. package/dist/types/generated/ossa-0.3.0.zod.js.map +0 -1
  404. package/examples/common_npm/agent-router.v0.2.2.ossa.yaml +0 -60
  405. package/examples/drupal/gitlab-ml-recommender.v0.2.2.ossa.yaml +0 -68
  406. package/examples/kagent/k8s-troubleshooter-v1.v0.2.2.ossa.yaml +0 -106
@@ -0,0 +1,39 @@
1
+ <project title="Open Standard for Scalable Agents (OSSA)" summary="OSSA is a vendor-neutral, open specification for defining, deploying, and orchestrating AI agents across platforms. It provides a standardized schema for agent capabilities, triggers, outputs, and lifecycle management integrated with GitLab Ultimate and Duo Platform.">Key features:
2
+ - Vendor-neutral agent definitions using YAML schemas
3
+ - GitLab Duo Platform integration with 12 specialized agents
4
+ - Kubernetes-native deployment with GitOps
5
+ - Multi-agent orchestration with meta-orchestrator
6
+ - Self-healing automation across 8 healing agents
7
+ - AgentFlow lifecycle with custom fields
8
+ - Semantic versioning and milestone-driven releases<core specification><doc title="OSSA Schema v0.2.8" desc="Complete agent definition schema with capabilities, triggers, and outputs"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="AgentFlow Lifecycle" desc="9-state workflow (Triage → To Do → In Progress → Done/Canceled)"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Custom Fields" desc="8 fields for agent coordination (agent_assigned, agent_status, commit_type, priority, release_type)"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Bot Waves" desc="5-wave orchestration model for parallel agent execution"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc></core specification><agents><doc title="12 OSSA Agents Registry" desc="Canonical list (wiki-aggregator, ts-prod, ts-local, ossa-local, native-local, ml-prod, ml-local, infra-prod, gitlab-lib-ci, gitlab-lib-local, drupal-prod, drupal-local)"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Meta-Orchestrator" desc="Agent that manages all other agents with routing logic and wave coordination"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Wiki Healer" desc="Autonomous documentation agent with continuous wiki sync"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Security Healer" desc="Vulnerability scanning with SAST, DAST, dependency, secret, and container scanning"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Test Generator" desc="Coverage-driven test generation with property-based testing"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc></agents><integration><doc title="GitLab Duo Platform" desc="Complete integration with Issue-to-MR flow, Software Development flow, and Security Analyst"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="AutoDevOps" desc="Auto Build, Test, Deploy, Security scanning, Review Apps, and Release Evidence"><!doctype html><html lang=en-us dir=ltr><head><script src=https://cdn.cookielaw.org/consent/7f944245-c5cd-4eed-a90e-dd955adfdd08/OtAutoBlock.js></script><script src=https://cdn.cookielaw.org/scripttemplates/otSDKStub.js data-domain-script=7f944245-c5cd-4eed-a90e-dd955adfdd08></script><script type=text/javascript>function OptanonWrapper(){}</script><script>const callback=(e)=>{for(const t of e)t.type==="childList"&&t.addedNodes.forEach(e=>{e.nodeName==="IMG"&&document.querySelectorAll('img:not([src^="http"]):not([data-ot-ignore])').forEach(e=>{e.setAttribute("data-ot-ignore","")})})},config={attributes:!0,childList:!0,subtree:!0,attributeFilter:["src"]},observer=new MutationObserver(callback);observer.observe(document.documentElement,config)</script><script>window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments)}gtag("js",new Date),gtag("config","GTM-NJXWQL"),gtag("consent","default",{analytics_storage:"granted",ad_storage:"granted",functionality_storage:"granted",wait_for_update:500}),gtag("consent","default",{analytics_storage:"denied",ad_storage:"denied",functionality_storage:"denied",region:["AT","BE","BG","HR","CY","CZ","DK","EE","FI","FR","DE","GR","HU","IE","IT","LV","LT","LU","MT","NL","PL","PT","RO","SK","SI","ES","SE","IS","LI","NO","GB","PE","RU"],wait_for_update:500}),window.geofeed=e=>{dataLayer.push({event:"OneTrustCountryLoad",oneTrustCountryId:e.country.toString()})};const json=document.createElement("script");json.setAttribute("src","https://geolocation.onetrust.com/cookieconsentpub/v1/geo/location/geofeed"),document.head.appendChild(json)</script><meta charset=utf-8><meta name=viewport content="width=device-width"><title>Auto DevOps | GitLab Docs</title><link rel=icon href=/favicon.ico sizes=any><link rel=icon href=/favicon.svg type=image/svg+xml><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/manifests/manifest.webmanifest><meta name=theme-color content="#FC6D26"><link rel=canonical href=https://docs.gitlab.com/topics/autodevops/><link rel=alternate hreflang=en-us href=https://docs.gitlab.com/topics/autodevops/><link rel=alternate hreflang=x-default href=https://docs.gitlab.com/topics/autodevops/><meta name=description content="Automated DevOps, language detection, deployment, and customization."><script type=application/ld+json>{"@context":"https://schema.org","@type":"WebSite","name":"GitLab Docs","url":"https://docs.gitlab.com/"}</script><link rel=preload href=/gitlab_ui/fonts/GitLabSans.woff2 type=font/woff2 as=font crossorigin><link rel=prefetch href=/gitlab_ui/fonts/GitLabSans-Italic.woff2 crossorigin><link rel=prefetch href=/gitlab_ui/fonts/GitLabMono.woff2 crossorigin><link rel=stylesheet href=/gitlab_ui/ui/index.css><link rel=stylesheet href=/vite/main.css><link rel=stylesheet href=/css/syntax-dark.min.css id=syntax-dark-theme><link rel=stylesheet href=/css/syntax-light.min.css id=syntax-light-theme><script>(function(){const p="gitlab-docs-theme",g="gitlab-docs-layout",e={LIGHT:"light",DARK:"dark",AUTO:"auto"},i={FIXED:"fixed",FLUID:"fluid"},d="light",f="fixed";let r=!1;const t=localStorage?.getItem(p),m=localStorage?.getItem(g),l=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?e.DARK:e.LIGHT;function h(){return t&&(t===e.LIGHT||t===e.DARK)?t:(t===e.AUTO&&(r=!0),l||d)}function u(){return m===i.FLUID?i.FLUID:f}const s=h(),c=u(),n=document.documentElement;n.classList.remove("gl-dark","gl-light"),n.classList.add(s===e.DARK?"gl-dark":"gl-light"),c===i.FLUID&&(n.classList.add("fluid"),n.classList.remove("fixed"));const a=document.getElementById("syntax-dark-theme"),o=document.getElementById("syntax-light-theme");a&&o&&(s===e.DARK?(a.disabled=!1,o.disabled=!0):(a.disabled=!0,o.disabled=!1)),window.__initialTheme=r?e.AUTO:s,window.__initialLayout=c})()</script><meta name=gitlab_docs_base_url content="/"><meta name=gitlab_docs_page_owner data-stage=Verify data-group="Runner Core"><meta class=elastic name=gitlab_docs_version content="18.7"><meta class=elastic name=gitlab_docs_section content="use_gitlab"><meta class=elastic name=gitlab_docs_breadcrumbs content="Use GitLab › Use CI/CD to build your application"><script>window.pageMetadata={trail:[{path:"user/",title:"Use GitLab"},{path:"topics/build_your_application/",title:"Use CI/CD to build your application"},{path:"topics/autodevops/",title:"Auto DevOps"}]}</script><meta name=gitlab_docs_legacy_path content="/ee/topics/autodevops/index.html"><meta name=gitlab_docs_hugo_launch_version content="17.9"><script>const ELASTIC_CLOUD_ID="gitlab-docs-website:dXMtY2VudHJhbDEuZ2NwLmNsb3VkLmVzLmlvJDQwZTQyYTQzMTJiZjQyMzNiMzBiZTg0MTU5YjlkNmE1JGMxODg4Y2U5OTY0YzQzZjc5ZjQ1YTk5NDZmMjI0ODg0",ELASTIC_KEY="cDFpLWJaSUJXVHBqWWI4VGZKN3M6eENBSjl4WDRSRnlCUW94ajRQazhLQQ==",ELASTIC_INDEX="search-gitlab-docs-hugo"</script><script type=module src=/vite/elastic_search.js></script><script type=module src=/vite/history.js></script><script>const FS_IDENTIFIER="AIzaSyCLdi3jHHjkmLji9D8uj_RNPMHcdrYoIW4",RECAPTCHA_PUBLIC_KEY="6Le4R3UrAAAAALsIlK_siq0_UhPD-0rD-ImF1gfO"</script><meta name=google-site-verification content="AcGSBNaKDWnLgcYotlVibGy6STm2Y6_KJSaRxrA90xY"><meta name=google-site-verification content="6eFQOFLxYAer08ROqc3I-SAi44F9NmvH7PrUUBR3oCI"><meta name=google-site-verification content="xAUTWp3CDg-tU1LVVwsM9OrVhLR7L3SmiyKzkOuPNos"><meta name=google-site-verification content="F0zzwaMpiyWFcPQ1Lqu18qN3EnuQsqFXbySl_29yvHs"><meta name=google-site-verification content="nwo1bVaU0t9TZxZyM-aOI6-CofaH9GRL-uBPbdREWgc"><meta name=google-site-verification content="rWoHrtHEmIX0t28oOb1ZEDMYZb_EZA6rr6ZOl5otEPI"><meta name=google-site-verification content="fSxr8-uslxcuFL0N-oECp3Tm0RPNEGX97wbdayKOEL8"><meta name=google-site-verification content="ISxyLVnZqU8oY3jwrK7EO9o-2DOTvLJwPse7bZz6yhs"><meta name=google-site-verification content="x1WspIvz3ZHqS0gezfX_P-qiRDOeP2Oyrd68zrU2ErI"><meta name=google-site-verification content="DfXB2Za52GT3zs_vuLIAL4Mi3M3K4qxXcg7MAs0CUqo"><meta name=google-site-verification content="BCEBC2LC7A1NzO9Com1oBrWK88tV_QXfUL0i9mwXPL0"><meta name=google-site-verification content="a2lNcHMorfS43aoISjZt5_BBPo-H1UaTKMQdBgZO9iY"><meta name=google-site-verification content="0s16pP9MelY6wDHRf-izXb5pwLU01IogP-Uc_e8f3GU"><meta name=google-site-verification content="H474RNof35Xp8fLg02fZbg9Dzxdtfch6vtcjzpmUraU"><meta name=google-site-verification content="E0FlhpgBGeE7d1pQ6amdcIWPMDLDeu15-HLQVoDTguE"><meta name=google-site-verification content="opQd7_rXtPy-pX5CO_XZiztzeQEsXnB3j6Y1_dZAizA"><meta name=google-site-verification content="06Kq4AoXdmBOjOAkbPvnYGtSxnn4Q9QBqEO55PLlw5c"><meta name=google-site-verification content="djBBokRFSWV_VRlSE51V5TZSPzMC6hml5l-Sb22WglE"><meta name=google-site-verification content="UOW6nOsvbyMeIySuamzbws4kNC_WqehamWfoxxtKjZ8"><meta name=google-site-verification content="hXU1Gsdba74DUbvbdUHRl9o0cQeiwXIhAdIllOG6p8E"><meta name=google-site-verification content="YFeHIAPk9lE76ubVMeq4P0sQVnzo2-a4k1oU_bPY8yE"><meta name=google-site-verification content="h8ICI4eDkvXmYaGDuLTLoWuXnLn-KUkChqYB-roMRsw"><meta name=google-site-verification content="9QW7feFNlCpMLPm7vAWEU-v14vdzb0Bb3RAk-8e_a18"><meta name=google-site-verification content="26kXLBOjaYRb2UwzWTDl1I1nzA2NxMunhp7SUtxGV6E"><meta name=google-site-verification content="jr3C8t6vKGPyN9GV3esdHY_xGYyQaUNznIl-Un2RObA"><meta name=google-site-verification content="WdlBpRU0ec1ieKqrTY_772OhG23FY45VQ4Lv9DyLJ_Y"><meta name=google-site-verification content="n9i6B9q4Xjr_etK2nQGZH1msoo7vIv9SXV8SQLOUA7c"><meta name=zd-site-verification content="ony3w7hk1vs6tfyrc51mld"><meta name=zd-site-verification content="gtuq65qdzt6n31viazi6hj"></head><body data-elastic-exclude><nav data-ga-section=header data-elastic-exclude><div class="header-wrapper gl-w-full gl-fixed gl-z-4"><div class=header><div class="header-top gl-flex gl-items-center"><a href=#skipTarget class="gl-sr-only skip-link">Skip to main content</a>
9
+ <a class=navbar-logo href=/><span class=gl-sr-only>Go to GitLab Docs homepage</span></a><div class="mobile-header gl-w-full gl-text-base"><div class=mobile-header-overlay></div><div class="header-right collapse gl-z-4 gl-border-t lg:gl-border-0"><div class="search-wrapper lg:gl-ml-4 lg:gl-grow"><div class="js-elastic-search-form gl-spinner-container"><span role=status aria-label=Loading class="gl-ml-3 gl-align-text-bottom! gl-spinner gl-spinner gl-spinner-sm"></span></div></div><div class="gl-flex gl-flex-col gl-gap-3 gl-mt-5 lg:gl-mt-0 lg:gl-flex-row lg:gl-items-center gl-ml-auto"><a class="whats-new gl-button btn-default btn-default-tertiary gl-hidden lg:gl-block" href=https://about.gitlab.com/releases/categories/releases/ target=_blank rel="noopener noreferrer">What's new?</a><div data-vue-app=versions-menu></div><div data-vue-app=appearance-toggle></div><div class="gl-flex gl-justify-evenly lg:gl-justify-normal gl-items-center gl-gap-5"><a class="whats-new gl-button btn-default btn-default-tertiary gl-w-full lg:gl-hidden hover:gl-no-underline" href=https://about.gitlab.com/releases/categories/releases/ target=_blank rel="noopener noreferrer">What's new?</a>
10
+ <a class="free-trial-btn cta-button gl-button btn-confirm gl-w-full hover:gl-no-underline" href="https://gitlab.com/-/trial_registrations/new?glm_source=docs.gitlab.com&amp;amp;glm_content=navigation-cta-docs" target=_blank rel="noopener noreferrer" role=button>Get free trial</a></div></div></div></div><button class="navbar-toggle gl-button btn-default lg:gl-hidden" data-toggle=collapse data-target=.header-right>
11
+ <span class=navbar-toggle-icon></span>
12
+ <span class=gl-sr-only>Toggle menu</span></button></div><div class="header-bottom gl-border-t lg:gl-border-b"><ul class="subheader-menu gl-hidden lg:gl-flex gl-list-none gl-text-base gl-space-x-5 gl-py-4 gl-pl-0 gl-mb-0"><li><a href=/user/ class=active>Use GitLab</a></li><li><a href=/user/gitlab_duo/>GitLab Duo</a></li><li><a href=/api/>Extend</a></li><li><a href=/install/>Install</a></li><li><a href=/administration/>Administer</a></li><li><a href=/subscriptions/>Subscribe</a></li><li><a href=/development/>Contribute</a></li><li><a href=/solutions/>Solutions</a></li></ul></div></div></div></nav><main data-ga-section=content-body><div data-vue-app=version-banner class="vue-loading gl-sticky gl-z-2 archive-banner"></div><div class="template-single gl-flex gl-h-full"><div data-vue-app=sidebar-menu data-ga-section=side-nav class=sidebar-container></div><div data-pagefind-body class=main-content><div class=docs-content><div class="gl-flex gl-h-5 gl-items-center gl-my-6"><div data-vue-app=open-sidebar></div><div data-vue-app=breadcrumb-nav></div></div><hr class="gl-border-t gl-px-5 lg:gl-hidden"><div class="gl-pt-4 gl-mt-4 lg:gl-pt-0 lg:gl-mt-0 lg:gl-border-t-0"><h1 id=skipTarget class=gl-mb-6>Auto DevOps</h1></div><div data-elastic-include><div class="availability gl-pl-4 gl-mb-5"><ul class="gl-list-none gl-p-0 gl-m-0"><li><span class=gl-font-bold>Tier</span>: Free, Premium, Ultimate</li><li><span class=gl-font-bold>Offering</span>: GitLab.com, GitLab Self-Managed, GitLab Dedicated</li></ul></div><p>Auto DevOps turns your code into production-ready applications without the usual configuration overhead.
13
+ The entire DevOps lifecycle is pre-configured using industry best practices. Start with the defaults
14
+ to ship quickly, then customize when you need more control. No complex configuration files or deep
15
+ DevOps expertise is required.</p><p>With Auto DevOps you get:</p><ul><li>CI/CD pipelines that automatically detect your language and framework</li><li>Built-in security scanning to find vulnerabilities before they reach production</li><li>Code quality and performance testing on every commit</li><li>Ready-to-use review apps for previewing changes in a live environment</li><li>Quick deployments to Kubernetes clusters</li><li>Progressive deployment strategies that reduce risk and downtime</li></ul><p><i class="fa fa-youtube-play youtube" aria-hidden=true></i>
16
+ For an introduction to Auto DevOps, watch <a href=https://youtu.be/0Tc0YYBxqi4>Auto DevOps</a>.</p><h2 id=auto-devops-features>Auto DevOps features</h2><p>Auto DevOps supports development during each of the <a href=/topics/autodevops/stages/>DevOps stages</a>.</p><table><thead><tr><th>Stage</th><th>Auto DevOps feature</th></tr></thead><tbody><tr><td>Build</td><td><a href=/topics/autodevops/stages/#auto-build>Auto Build</a></td></tr><tr><td>Build</td><td><a href=/topics/autodevops/stages/#auto-dependency-scanning>Auto Dependency Scanning</a></td></tr><tr><td>Test</td><td><a href=/topics/autodevops/stages/#auto-test>Auto Test</a></td></tr><tr><td>Test</td><td><a href=/topics/autodevops/stages/#auto-browser-performance-testing>Auto Browser Performance Testing</a></td></tr><tr><td>Test</td><td><a href=/topics/autodevops/stages/#auto-code-intelligence>Auto Code Intelligence</a></td></tr><tr><td>Test</td><td><a href=/topics/autodevops/stages/#auto-code-quality>Auto Code Quality</a></td></tr><tr><td>Test</td><td><a href=/topics/autodevops/stages/#auto-container-scanning>Auto container scanning</a></td></tr><tr><td>Deploy</td><td><a href=/topics/autodevops/stages/#auto-review-apps>Auto Review Apps</a></td></tr><tr><td>Deploy</td><td><a href=/topics/autodevops/stages/#auto-deploy>Auto Deploy</a></td></tr><tr><td>Secure</td><td><a href=/topics/autodevops/stages/#auto-dast>Auto Dynamic Application Security Testing (DAST)</a></td></tr><tr><td>Secure</td><td><a href=/topics/autodevops/stages/#auto-sast>Auto static application security testing (SAST)</a></td></tr><tr><td>Secure</td><td><a href=/topics/autodevops/stages/#auto-secret-detection>Auto Secret Detection</a></td></tr></tbody></table><h3 id=comparison-to-application-platforms-and-paas>Comparison to application platforms and PaaS</h3><p>Auto DevOps provides features often included in an application
17
+ platform or in a Platform as a Service (PaaS).</p><p>Inspired by <a href=https://www.heroku.com/>Heroku</a>, Auto DevOps goes beyond it
18
+ in multiple ways:</p><ul><li>Auto DevOps works with any Kubernetes cluster.</li><li>There is no additional cost.</li><li>You can use a cluster hosted by yourself or on any public cloud.</li><li>Auto DevOps offers an incremental graduation path. If you need to <a href=/topics/autodevops/customize/>customize</a>, start by changing the templates and evolve from there.</li></ul><h2 id=get-started-with-auto-devops>Get started with Auto DevOps</h2><p>To get started, you only need to <a href=/topics/autodevops/#enable-or-disable-auto-devops>enable Auto DevOps</a>.
19
+ This is enough to run an Auto DevOps pipeline to build and
20
+ test your application.</p><p>If you want to build, test, and deploy your app:</p><ol><li>View the <a href=/topics/autodevops/requirements/>requirements for deployment</a>.</li><li><a href=/topics/autodevops/#enable-or-disable-auto-devops>Enable Auto DevOps</a>.</li><li><a href=/topics/autodevops/#deploy-your-app-to-a-cloud-provider>Deploy your app to a cloud provider</a>.</li></ol><h3 id=enable-or-disable-auto-devops>Enable or disable Auto DevOps</h3><p>Auto DevOps runs pipelines automatically only if a <a href=/topics/autodevops/stages/#auto-build><code>Dockerfile</code> or matching buildpack</a> exists.</p><p>You can enable or disable Auto DevOps for a project or an entire group. Instance administrators
21
+ can also <a href=/administration/settings/continuous_integration/#configure-auto-devops-for-all-projects>set Auto DevOps as the default</a>
22
+ for all projects in an instance.</p><p>Before enabling Auto DevOps, consider <a href=/topics/autodevops/requirements/>preparing it for deployment</a>.
23
+ If you don&rsquo;t, Auto DevOps can build and test your app, but cannot deploy it.</p><h4 id=per-project>Per project</h4><p>To use Auto DevOps for individual projects, you can enable it in a
24
+ project-by-project basis. If you intend to use it for more projects,
25
+ you can enable it for a <a href=/topics/autodevops/#per-group>group</a> or an
26
+ <a href=/administration/settings/continuous_integration/#configure-auto-devops-for-all-projects>instance</a>.
27
+ This can save you the time of enabling it in each project.</p><p>Prerequisites:</p><ul><li>You must have at least the Maintainer role for the project.</li><li>Ensure your project does not have a <code>.gitlab-ci.yml</code> present. If present, your CI/CD configuration takes
28
+ precedence over the Auto DevOps pipeline.</li></ul><p>To enable Auto DevOps for a project:</p><ol><li>On the left sidebar, select <strong>Search or go to</strong> and find your project. If you&rsquo;ve <a href=/user/interface_redesign/#turn-new-navigation-on-or-off>turned on the new navigation</a>, this field is on the top bar.</li><li>Select <strong>Settings</strong> > <strong>CI/CD</strong>.</li><li>Expand <strong>Auto DevOps</strong>.</li><li>Select the <strong>Default to Auto DevOps pipeline</strong> checkbox.</li><li>Optional but recommended. Add the <a href=/topics/autodevops/requirements/#auto-devops-base-domain>base domain</a>.</li><li>Optional but recommended. Choose the <a href=/topics/autodevops/requirements/#auto-devops-deployment-strategy>deployment strategy</a>.</li><li>Select <strong>Save changes</strong>.</li></ol><p>GitLab triggers the Auto DevOps pipeline on the default branch.</p><p>To disable it, follow the same process and clear the
29
+ <strong>Default to Auto DevOps pipeline</strong> checkbox.</p><h4 id=per-group>Per group</h4><p>When you enable Auto DevOps for a group, the subgroups and
30
+ projects in that group inherit the configuration. You can save time by
31
+ enabling Auto DevOps for a group instead of enabling it for each
32
+ subgroup or project.</p><p>When enabled for a group, you can still disable Auto DevOps
33
+ for the subgroups and projects where you don&rsquo;t want to use it.</p><p>Prerequisites:</p><ul><li>You must have the Owner role for the group.</li></ul><p>To enable Auto DevOps for a group:</p><ol><li>On the left sidebar, select <strong>Search or go to</strong> and find your group. If you&rsquo;ve <a href=/user/interface_redesign/#turn-new-navigation-on-or-off>turned on the new navigation</a>, this field is on the top bar.</li><li>Select <strong>Settings</strong> > <strong>CI/CD</strong>.</li><li>Expand <strong>Auto DevOps</strong>.</li><li>Select the <strong>Default to Auto DevOps pipeline</strong> checkbox.</li><li>Select <strong>Save changes</strong>.</li></ol><p>To disable Auto DevOps for a group, follow the same process and
34
+ clear the <strong>Default to Auto DevOps pipeline</strong> checkbox.</p><p>After enabling Auto DevOps for a group, you can trigger the
35
+ Auto DevOps pipeline for any project that belongs to that group:</p><ol><li>On the left sidebar, select <strong>Search or go to</strong> and find your project. If you&rsquo;ve <a href=/user/interface_redesign/#turn-new-navigation-on-or-off>turned on the new navigation</a>, this field is on the top bar.</li><li>Make sure the project doesn&rsquo;t contain a <code>.gitlab-ci.yml</code> file.</li><li>Select <strong>Build</strong> > <strong>Pipelines</strong>.</li><li>To trigger the Auto DevOps pipeline, select <strong>New pipeline</strong>.</li></ol><h3 id=deploy-your-app-to-a-cloud-provider>Deploy your app to a cloud provider</h3><ul><li><a href=/topics/autodevops/cloud_deployments/auto_devops_with_gke/>Use Auto DevOps to deploy to a Kubernetes cluster on Google Kubernetes Engine (GKE)</a></li><li><a href=/topics/autodevops/cloud_deployments/auto_devops_with_eks/>Use Auto DevOps to deploy to a Kubernetes cluster on Amazon Elastic Kubernetes Service (EKS)</a></li><li><a href=/topics/autodevops/cloud_deployments/auto_devops_with_ec2/>Use Auto DevOps to deploy to EC2</a></li><li><a href=/topics/autodevops/cloud_deployments/auto_devops_with_ecs/>Use Auto DevOps to deploy to ECS</a></li></ul><h2 id=upgrade-auto-devops-dependencies-when-updating-gitlab>Upgrade Auto DevOps dependencies when updating GitLab</h2><p>When updating GitLab, you might need to upgrade Auto DevOps dependencies to
36
+ match your new GitLab version:</p><ul><li><a href=/topics/autodevops/upgrading_auto_deploy_dependencies/>Upgrading Auto DevOps resources</a>:<ul><li>Auto DevOps template.</li><li>Auto Deploy template.</li><li>Auto Deploy image.</li><li>Helm.</li><li>Kubernetes.</li><li>Environment variables.</li></ul></li><li><a href=/topics/autodevops/upgrading_postgresql/>Upgrading PostgreSQL</a>.</li></ul><h2 id=private-registry-support>Private registry support</h2><p>There is no guarantee that you can use a private container registry with Auto DevOps.</p><p>Instead, use the <a href=/user/packages/container_registry/>GitLab container registry</a> with Auto DevOps to
37
+ simplify configuration and prevent any unforeseen issues.</p><h2 id=install-applications-behind-a-proxy>Install applications behind a proxy</h2><p>The GitLab integration with Helm does not support installing applications when
38
+ behind a proxy.</p><p>If you want to do so, you must inject proxy settings into the
39
+ installation pods at runtime.</p><h2 id=related-topics>Related topics</h2><ul><li><a href=/ci/>Continuous methodologies</a></li><li><a href=https://docs.docker.com>Docker</a></li><li><a href=https://docs.gitlab.com/runner/>GitLab Runner</a></li><li><a href=https://helm.sh/docs/>Helm</a></li><li><a href=https://kubernetes.io/docs/home/>Kubernetes</a></li><li><a href=https://prometheus.io/docs/introduction/overview/>Prometheus</a></li></ul><h2 id=troubleshooting>Troubleshooting</h2><p>See <a href=/topics/autodevops/troubleshooting/>troubleshooting Auto DevOps</a>.</p></div><div data-vue-app=back-to-top-button></div></div><div class="feedback gl-min-h-8" data-ga-section=feedback data-elastic-exclude><div data-component=docs-feedback></div></div></div><aside class=sidebar-right><div data-ga-section=toc data-vue-app=toc></div></aside></div></main><footer data-ga-section=footer><section data-ga-section=footer><div id=footer class="footer-section container gl-grid gl-grid-cols-2 gl-grid-rows-3 gl-grid-rows-auto gl-gap-8 lg:gl-grid-cols-5 lg:gl-grid-rows-1 lg:gl-justify-items-center gl-px-8 gl-py-8 lg:gl-py-10"><div class="gl-col-span-2 lg:gl-col-span-1 gl-row-start-1"><div class="docs-title gl-flex gl-items-center"><a href=/><img src=/gitlab-logo-footer.svg alt="GitLab Docs logo" class=logo width=176 height=24></a></div><ul class="docs-social gl-list-none gl-flex"><li><a href=https://www.facebook.com/gitlab class=facebook><span class=gl-sr-only>Facebook</span></a></li><li><a href=https://www.linkedin.com/company/gitlab-com class=linkedin><span class=gl-sr-only>LinkedIn</span></a></li><li><a href=https://twitter.com/gitlab class=twitter><span class=gl-sr-only>Twitter</span></a></li><li><a href=https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg class=youtube><span class=gl-sr-only>YouTube</span></a></li></ul><a href=https://creativecommons.org/licenses/by-sa/4.0/ target=_blank rel="license noopener noreferrer" class=gl-mt-0><img src=/by-sa.svg alt="Creative Commons License" width=80 height=15></a></div><div class="gl-col-span-1 gl-row-start-2 lg:gl-row-start-1"><div class="footer-section-title gl-heading-3">Company</div><ul class="gl-list-none gl-p-0"><li><a href=https://about.gitlab.com/company/>About GitLab</a></li><li><a href=https://about.gitlab.com/pricing/>View pricing</a></li><li><a href=https://about.gitlab.com/free-trial/>Try GitLab for free</a></li></ul></div><div class="gl-col-span-1 gl-row-start-2 lg:gl-row-start-1"><div class="footer-section-title gl-heading-3">Feedback</div><ul class="gl-list-none gl-p-0"><li><a href=https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/topics/autodevops/_index.md>View page source</a></li><li><a href=https://gitlab.com/-/ide/project/gitlab-org/gitlab/edit/master/-/doc/topics/autodevops/_index.md>Edit in web IDE</a></li><li><a href=https://about.gitlab.com/community/contribute/>Contribute to GitLab</a></li><li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/new?issuable_template=Documentation">Suggest updates</a></li></ul></div><div class="gl-col-span-1 gl-row-start-3 lg:gl-row-start-1"><div class="footer-section-title gl-heading-3">Help & Community</div><ul class="gl-list-none gl-p-0"><li><a href=https://university.gitlab.com/pages/certifications>Get certified</a></li><li><a href=https://about.gitlab.com/support/>Get support</a></li><li><a href="https://forum.gitlab.com/new-topic?title=topic%20title&amp;body=topic%20body&amp;tags=docs-feedback">Post on the GitLab forum</a></li></ul></div><div class="gl-col-span-1 gl-row-start-3 lg:gl-row-start-1"><div class="footer-section-title gl-heading-3">Resources</div><ul class="gl-list-none gl-p-0"><li><a href=https://about.gitlab.com/terms/>Terms</a></li><li><a href=https://about.gitlab.com/privacy/>Privacy statement</a></li><li><a href=/legal/use_generative_ai/>Use of generative AI</a></li><li><a href=/legal/licensing_policy/>Acceptable use of user licenses</a></li><li><button id=ot-sdk-btn class=ot-sdk-show-settings></button></li></ul></div></div></section></footer><script type=module src=/vite/main.js></script><script async>(function(e,t,n,s,o){e[s]=e[s]||[],e[s].push({"gtm.start":(new Date).getTime(),event:"gtm.js"});var a=t.getElementsByTagName(n)[0],i=t.createElement(n),r=s!="dataLayer"?"&l="+s:"";i.async=!0,i.src="https://www.googletagmanager.com/gtm.js?id="+o+r,a.parentNode.insertBefore(i,a)})(window,document,"script","dataLayer","GTM-NJXWQL")</script><noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-NJXWQL" height=0 width=0 style=display:none;visibility:hidden></iframe></noscript><script async>(function(){var e,t=!1;function n(){t===!1&&(t=!0,Munchkin.init("194-VVC-221",{useBeaconAPI:!0}))}e=document.createElement("script"),e.type="text/javascript",e.async=!0,e.src="https://munchkin.marketo.net/munchkin.js",e.onreadystatechange=function(){(this.readyState=="complete"||this.readyState=="loaded")&&n()},e.onload=n,document.getElementsByTagName("head")[0].appendChild(e)})()</script><script async src=https://cdn.bizible.com/scripts/bizible.js></script><script async>_linkedin_partner_id="30694",window._linkedin_data_partner_ids=window._linkedin_data_partner_ids||[],window._linkedin_data_partner_ids.push(_linkedin_partner_id),function(){var t=document.getElementsByTagName("script")[0],e=document.createElement("script");e.type="text/javascript",e.async=!0,e.src="https://snap.licdn.com/li.lms-analytics/insight.min.js",t.parentNode.insertBefore(e,t)}()</script><noscript><img height=1 width=1 style=display:none alt src="https://dc.ads.linkedin.com/collect/?pid=30694&fmt=gif"></noscript></body></html></doc><doc title="Release Automation" desc="Milestone-driven releases with semantic versioning and changelog generation"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Repository Audit" desc="Automated compliance checks across 10 categories"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc></integration><examples><doc title="OSSA Schema Examples" desc="35+ example agent definitions"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Healing Agents" desc="8 self-healing agent schemas (wiki, architecture, spec, infra, dependency, service-discovery, test, security)"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="GitLab Components" desc="Reusable CI/CD components for agent workflows"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc></examples><optional><doc title="Buildkit Integration" desc="Task queue orchestration with claim, heartbeat, and release commands"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Compliance Profiles" desc="FedRAMP, SOC2, ISO42001 compliance specifications"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Type System" desc="Formal OSSA type system specification"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Testing Framework" desc="AgentTest resource for agent validation"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc></optional></project>
package/llms-ctx.txt ADDED
@@ -0,0 +1,39 @@
1
+ <project title="Open Standard for Scalable Agents (OSSA)" summary="OSSA is a vendor-neutral, open specification for defining, deploying, and orchestrating AI agents across platforms. It provides a standardized schema for agent capabilities, triggers, outputs, and lifecycle management integrated with GitLab Ultimate and Duo Platform.">Key features:
2
+ - Vendor-neutral agent definitions using YAML schemas
3
+ - GitLab Duo Platform integration with 12 specialized agents
4
+ - Kubernetes-native deployment with GitOps
5
+ - Multi-agent orchestration with meta-orchestrator
6
+ - Self-healing automation across 8 healing agents
7
+ - AgentFlow lifecycle with custom fields
8
+ - Semantic versioning and milestone-driven releases<core specification><doc title="OSSA Schema v0.2.8" desc="Complete agent definition schema with capabilities, triggers, and outputs"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="AgentFlow Lifecycle" desc="9-state workflow (Triage → To Do → In Progress → Done/Canceled)"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Custom Fields" desc="8 fields for agent coordination (agent_assigned, agent_status, commit_type, priority, release_type)"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Bot Waves" desc="5-wave orchestration model for parallel agent execution"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc></core specification><agents><doc title="12 OSSA Agents Registry" desc="Canonical list (wiki-aggregator, ts-prod, ts-local, ossa-local, native-local, ml-prod, ml-local, infra-prod, gitlab-lib-ci, gitlab-lib-local, drupal-prod, drupal-local)"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Meta-Orchestrator" desc="Agent that manages all other agents with routing logic and wave coordination"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Wiki Healer" desc="Autonomous documentation agent with continuous wiki sync"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Security Healer" desc="Vulnerability scanning with SAST, DAST, dependency, secret, and container scanning"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Test Generator" desc="Coverage-driven test generation with property-based testing"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc></agents><integration><doc title="GitLab Duo Platform" desc="Complete integration with Issue-to-MR flow, Software Development flow, and Security Analyst"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="AutoDevOps" desc="Auto Build, Test, Deploy, Security scanning, Review Apps, and Release Evidence"><!doctype html><html lang=en-us dir=ltr><head><script src=https://cdn.cookielaw.org/consent/7f944245-c5cd-4eed-a90e-dd955adfdd08/OtAutoBlock.js></script><script src=https://cdn.cookielaw.org/scripttemplates/otSDKStub.js data-domain-script=7f944245-c5cd-4eed-a90e-dd955adfdd08></script><script type=text/javascript>function OptanonWrapper(){}</script><script>const callback=(e)=>{for(const t of e)t.type==="childList"&&t.addedNodes.forEach(e=>{e.nodeName==="IMG"&&document.querySelectorAll('img:not([src^="http"]):not([data-ot-ignore])').forEach(e=>{e.setAttribute("data-ot-ignore","")})})},config={attributes:!0,childList:!0,subtree:!0,attributeFilter:["src"]},observer=new MutationObserver(callback);observer.observe(document.documentElement,config)</script><script>window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments)}gtag("js",new Date),gtag("config","GTM-NJXWQL"),gtag("consent","default",{analytics_storage:"granted",ad_storage:"granted",functionality_storage:"granted",wait_for_update:500}),gtag("consent","default",{analytics_storage:"denied",ad_storage:"denied",functionality_storage:"denied",region:["AT","BE","BG","HR","CY","CZ","DK","EE","FI","FR","DE","GR","HU","IE","IT","LV","LT","LU","MT","NL","PL","PT","RO","SK","SI","ES","SE","IS","LI","NO","GB","PE","RU"],wait_for_update:500}),window.geofeed=e=>{dataLayer.push({event:"OneTrustCountryLoad",oneTrustCountryId:e.country.toString()})};const json=document.createElement("script");json.setAttribute("src","https://geolocation.onetrust.com/cookieconsentpub/v1/geo/location/geofeed"),document.head.appendChild(json)</script><meta charset=utf-8><meta name=viewport content="width=device-width"><title>Auto DevOps | GitLab Docs</title><link rel=icon href=/favicon.ico sizes=any><link rel=icon href=/favicon.svg type=image/svg+xml><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/manifests/manifest.webmanifest><meta name=theme-color content="#FC6D26"><link rel=canonical href=https://docs.gitlab.com/topics/autodevops/><link rel=alternate hreflang=en-us href=https://docs.gitlab.com/topics/autodevops/><link rel=alternate hreflang=x-default href=https://docs.gitlab.com/topics/autodevops/><meta name=description content="Automated DevOps, language detection, deployment, and customization."><script type=application/ld+json>{"@context":"https://schema.org","@type":"WebSite","name":"GitLab Docs","url":"https://docs.gitlab.com/"}</script><link rel=preload href=/gitlab_ui/fonts/GitLabSans.woff2 type=font/woff2 as=font crossorigin><link rel=prefetch href=/gitlab_ui/fonts/GitLabSans-Italic.woff2 crossorigin><link rel=prefetch href=/gitlab_ui/fonts/GitLabMono.woff2 crossorigin><link rel=stylesheet href=/gitlab_ui/ui/index.css><link rel=stylesheet href=/vite/main.css><link rel=stylesheet href=/css/syntax-dark.min.css id=syntax-dark-theme><link rel=stylesheet href=/css/syntax-light.min.css id=syntax-light-theme><script>(function(){const p="gitlab-docs-theme",g="gitlab-docs-layout",e={LIGHT:"light",DARK:"dark",AUTO:"auto"},i={FIXED:"fixed",FLUID:"fluid"},d="light",f="fixed";let r=!1;const t=localStorage?.getItem(p),m=localStorage?.getItem(g),l=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches?e.DARK:e.LIGHT;function h(){return t&&(t===e.LIGHT||t===e.DARK)?t:(t===e.AUTO&&(r=!0),l||d)}function u(){return m===i.FLUID?i.FLUID:f}const s=h(),c=u(),n=document.documentElement;n.classList.remove("gl-dark","gl-light"),n.classList.add(s===e.DARK?"gl-dark":"gl-light"),c===i.FLUID&&(n.classList.add("fluid"),n.classList.remove("fixed"));const a=document.getElementById("syntax-dark-theme"),o=document.getElementById("syntax-light-theme");a&&o&&(s===e.DARK?(a.disabled=!1,o.disabled=!0):(a.disabled=!0,o.disabled=!1)),window.__initialTheme=r?e.AUTO:s,window.__initialLayout=c})()</script><meta name=gitlab_docs_base_url content="/"><meta name=gitlab_docs_page_owner data-stage=Verify data-group="Runner Core"><meta class=elastic name=gitlab_docs_version content="18.7"><meta class=elastic name=gitlab_docs_section content="use_gitlab"><meta class=elastic name=gitlab_docs_breadcrumbs content="Use GitLab › Use CI/CD to build your application"><script>window.pageMetadata={trail:[{path:"user/",title:"Use GitLab"},{path:"topics/build_your_application/",title:"Use CI/CD to build your application"},{path:"topics/autodevops/",title:"Auto DevOps"}]}</script><meta name=gitlab_docs_legacy_path content="/ee/topics/autodevops/index.html"><meta name=gitlab_docs_hugo_launch_version content="17.9"><script>const ELASTIC_CLOUD_ID="gitlab-docs-website:dXMtY2VudHJhbDEuZ2NwLmNsb3VkLmVzLmlvJDQwZTQyYTQzMTJiZjQyMzNiMzBiZTg0MTU5YjlkNmE1JGMxODg4Y2U5OTY0YzQzZjc5ZjQ1YTk5NDZmMjI0ODg0",ELASTIC_KEY="cDFpLWJaSUJXVHBqWWI4VGZKN3M6eENBSjl4WDRSRnlCUW94ajRQazhLQQ==",ELASTIC_INDEX="search-gitlab-docs-hugo"</script><script type=module src=/vite/elastic_search.js></script><script type=module src=/vite/history.js></script><script>const FS_IDENTIFIER="AIzaSyCLdi3jHHjkmLji9D8uj_RNPMHcdrYoIW4",RECAPTCHA_PUBLIC_KEY="6Le4R3UrAAAAALsIlK_siq0_UhPD-0rD-ImF1gfO"</script><meta name=google-site-verification content="AcGSBNaKDWnLgcYotlVibGy6STm2Y6_KJSaRxrA90xY"><meta name=google-site-verification content="6eFQOFLxYAer08ROqc3I-SAi44F9NmvH7PrUUBR3oCI"><meta name=google-site-verification content="xAUTWp3CDg-tU1LVVwsM9OrVhLR7L3SmiyKzkOuPNos"><meta name=google-site-verification content="F0zzwaMpiyWFcPQ1Lqu18qN3EnuQsqFXbySl_29yvHs"><meta name=google-site-verification content="nwo1bVaU0t9TZxZyM-aOI6-CofaH9GRL-uBPbdREWgc"><meta name=google-site-verification content="rWoHrtHEmIX0t28oOb1ZEDMYZb_EZA6rr6ZOl5otEPI"><meta name=google-site-verification content="fSxr8-uslxcuFL0N-oECp3Tm0RPNEGX97wbdayKOEL8"><meta name=google-site-verification content="ISxyLVnZqU8oY3jwrK7EO9o-2DOTvLJwPse7bZz6yhs"><meta name=google-site-verification content="x1WspIvz3ZHqS0gezfX_P-qiRDOeP2Oyrd68zrU2ErI"><meta name=google-site-verification content="DfXB2Za52GT3zs_vuLIAL4Mi3M3K4qxXcg7MAs0CUqo"><meta name=google-site-verification content="BCEBC2LC7A1NzO9Com1oBrWK88tV_QXfUL0i9mwXPL0"><meta name=google-site-verification content="a2lNcHMorfS43aoISjZt5_BBPo-H1UaTKMQdBgZO9iY"><meta name=google-site-verification content="0s16pP9MelY6wDHRf-izXb5pwLU01IogP-Uc_e8f3GU"><meta name=google-site-verification content="H474RNof35Xp8fLg02fZbg9Dzxdtfch6vtcjzpmUraU"><meta name=google-site-verification content="E0FlhpgBGeE7d1pQ6amdcIWPMDLDeu15-HLQVoDTguE"><meta name=google-site-verification content="opQd7_rXtPy-pX5CO_XZiztzeQEsXnB3j6Y1_dZAizA"><meta name=google-site-verification content="06Kq4AoXdmBOjOAkbPvnYGtSxnn4Q9QBqEO55PLlw5c"><meta name=google-site-verification content="djBBokRFSWV_VRlSE51V5TZSPzMC6hml5l-Sb22WglE"><meta name=google-site-verification content="UOW6nOsvbyMeIySuamzbws4kNC_WqehamWfoxxtKjZ8"><meta name=google-site-verification content="hXU1Gsdba74DUbvbdUHRl9o0cQeiwXIhAdIllOG6p8E"><meta name=google-site-verification content="YFeHIAPk9lE76ubVMeq4P0sQVnzo2-a4k1oU_bPY8yE"><meta name=google-site-verification content="h8ICI4eDkvXmYaGDuLTLoWuXnLn-KUkChqYB-roMRsw"><meta name=google-site-verification content="9QW7feFNlCpMLPm7vAWEU-v14vdzb0Bb3RAk-8e_a18"><meta name=google-site-verification content="26kXLBOjaYRb2UwzWTDl1I1nzA2NxMunhp7SUtxGV6E"><meta name=google-site-verification content="jr3C8t6vKGPyN9GV3esdHY_xGYyQaUNznIl-Un2RObA"><meta name=google-site-verification content="WdlBpRU0ec1ieKqrTY_772OhG23FY45VQ4Lv9DyLJ_Y"><meta name=google-site-verification content="n9i6B9q4Xjr_etK2nQGZH1msoo7vIv9SXV8SQLOUA7c"><meta name=zd-site-verification content="ony3w7hk1vs6tfyrc51mld"><meta name=zd-site-verification content="gtuq65qdzt6n31viazi6hj"></head><body data-elastic-exclude><nav data-ga-section=header data-elastic-exclude><div class="header-wrapper gl-w-full gl-fixed gl-z-4"><div class=header><div class="header-top gl-flex gl-items-center"><a href=#skipTarget class="gl-sr-only skip-link">Skip to main content</a>
9
+ <a class=navbar-logo href=/><span class=gl-sr-only>Go to GitLab Docs homepage</span></a><div class="mobile-header gl-w-full gl-text-base"><div class=mobile-header-overlay></div><div class="header-right collapse gl-z-4 gl-border-t lg:gl-border-0"><div class="search-wrapper lg:gl-ml-4 lg:gl-grow"><div class="js-elastic-search-form gl-spinner-container"><span role=status aria-label=Loading class="gl-ml-3 gl-align-text-bottom! gl-spinner gl-spinner gl-spinner-sm"></span></div></div><div class="gl-flex gl-flex-col gl-gap-3 gl-mt-5 lg:gl-mt-0 lg:gl-flex-row lg:gl-items-center gl-ml-auto"><a class="whats-new gl-button btn-default btn-default-tertiary gl-hidden lg:gl-block" href=https://about.gitlab.com/releases/categories/releases/ target=_blank rel="noopener noreferrer">What's new?</a><div data-vue-app=versions-menu></div><div data-vue-app=appearance-toggle></div><div class="gl-flex gl-justify-evenly lg:gl-justify-normal gl-items-center gl-gap-5"><a class="whats-new gl-button btn-default btn-default-tertiary gl-w-full lg:gl-hidden hover:gl-no-underline" href=https://about.gitlab.com/releases/categories/releases/ target=_blank rel="noopener noreferrer">What's new?</a>
10
+ <a class="free-trial-btn cta-button gl-button btn-confirm gl-w-full hover:gl-no-underline" href="https://gitlab.com/-/trial_registrations/new?glm_source=docs.gitlab.com&amp;amp;glm_content=navigation-cta-docs" target=_blank rel="noopener noreferrer" role=button>Get free trial</a></div></div></div></div><button class="navbar-toggle gl-button btn-default lg:gl-hidden" data-toggle=collapse data-target=.header-right>
11
+ <span class=navbar-toggle-icon></span>
12
+ <span class=gl-sr-only>Toggle menu</span></button></div><div class="header-bottom gl-border-t lg:gl-border-b"><ul class="subheader-menu gl-hidden lg:gl-flex gl-list-none gl-text-base gl-space-x-5 gl-py-4 gl-pl-0 gl-mb-0"><li><a href=/user/ class=active>Use GitLab</a></li><li><a href=/user/gitlab_duo/>GitLab Duo</a></li><li><a href=/api/>Extend</a></li><li><a href=/install/>Install</a></li><li><a href=/administration/>Administer</a></li><li><a href=/subscriptions/>Subscribe</a></li><li><a href=/development/>Contribute</a></li><li><a href=/solutions/>Solutions</a></li></ul></div></div></div></nav><main data-ga-section=content-body><div data-vue-app=version-banner class="vue-loading gl-sticky gl-z-2 archive-banner"></div><div class="template-single gl-flex gl-h-full"><div data-vue-app=sidebar-menu data-ga-section=side-nav class=sidebar-container></div><div data-pagefind-body class=main-content><div class=docs-content><div class="gl-flex gl-h-5 gl-items-center gl-my-6"><div data-vue-app=open-sidebar></div><div data-vue-app=breadcrumb-nav></div></div><hr class="gl-border-t gl-px-5 lg:gl-hidden"><div class="gl-pt-4 gl-mt-4 lg:gl-pt-0 lg:gl-mt-0 lg:gl-border-t-0"><h1 id=skipTarget class=gl-mb-6>Auto DevOps</h1></div><div data-elastic-include><div class="availability gl-pl-4 gl-mb-5"><ul class="gl-list-none gl-p-0 gl-m-0"><li><span class=gl-font-bold>Tier</span>: Free, Premium, Ultimate</li><li><span class=gl-font-bold>Offering</span>: GitLab.com, GitLab Self-Managed, GitLab Dedicated</li></ul></div><p>Auto DevOps turns your code into production-ready applications without the usual configuration overhead.
13
+ The entire DevOps lifecycle is pre-configured using industry best practices. Start with the defaults
14
+ to ship quickly, then customize when you need more control. No complex configuration files or deep
15
+ DevOps expertise is required.</p><p>With Auto DevOps you get:</p><ul><li>CI/CD pipelines that automatically detect your language and framework</li><li>Built-in security scanning to find vulnerabilities before they reach production</li><li>Code quality and performance testing on every commit</li><li>Ready-to-use review apps for previewing changes in a live environment</li><li>Quick deployments to Kubernetes clusters</li><li>Progressive deployment strategies that reduce risk and downtime</li></ul><p><i class="fa fa-youtube-play youtube" aria-hidden=true></i>
16
+ For an introduction to Auto DevOps, watch <a href=https://youtu.be/0Tc0YYBxqi4>Auto DevOps</a>.</p><h2 id=auto-devops-features>Auto DevOps features</h2><p>Auto DevOps supports development during each of the <a href=/topics/autodevops/stages/>DevOps stages</a>.</p><table><thead><tr><th>Stage</th><th>Auto DevOps feature</th></tr></thead><tbody><tr><td>Build</td><td><a href=/topics/autodevops/stages/#auto-build>Auto Build</a></td></tr><tr><td>Build</td><td><a href=/topics/autodevops/stages/#auto-dependency-scanning>Auto Dependency Scanning</a></td></tr><tr><td>Test</td><td><a href=/topics/autodevops/stages/#auto-test>Auto Test</a></td></tr><tr><td>Test</td><td><a href=/topics/autodevops/stages/#auto-browser-performance-testing>Auto Browser Performance Testing</a></td></tr><tr><td>Test</td><td><a href=/topics/autodevops/stages/#auto-code-intelligence>Auto Code Intelligence</a></td></tr><tr><td>Test</td><td><a href=/topics/autodevops/stages/#auto-code-quality>Auto Code Quality</a></td></tr><tr><td>Test</td><td><a href=/topics/autodevops/stages/#auto-container-scanning>Auto container scanning</a></td></tr><tr><td>Deploy</td><td><a href=/topics/autodevops/stages/#auto-review-apps>Auto Review Apps</a></td></tr><tr><td>Deploy</td><td><a href=/topics/autodevops/stages/#auto-deploy>Auto Deploy</a></td></tr><tr><td>Secure</td><td><a href=/topics/autodevops/stages/#auto-dast>Auto Dynamic Application Security Testing (DAST)</a></td></tr><tr><td>Secure</td><td><a href=/topics/autodevops/stages/#auto-sast>Auto static application security testing (SAST)</a></td></tr><tr><td>Secure</td><td><a href=/topics/autodevops/stages/#auto-secret-detection>Auto Secret Detection</a></td></tr></tbody></table><h3 id=comparison-to-application-platforms-and-paas>Comparison to application platforms and PaaS</h3><p>Auto DevOps provides features often included in an application
17
+ platform or in a Platform as a Service (PaaS).</p><p>Inspired by <a href=https://www.heroku.com/>Heroku</a>, Auto DevOps goes beyond it
18
+ in multiple ways:</p><ul><li>Auto DevOps works with any Kubernetes cluster.</li><li>There is no additional cost.</li><li>You can use a cluster hosted by yourself or on any public cloud.</li><li>Auto DevOps offers an incremental graduation path. If you need to <a href=/topics/autodevops/customize/>customize</a>, start by changing the templates and evolve from there.</li></ul><h2 id=get-started-with-auto-devops>Get started with Auto DevOps</h2><p>To get started, you only need to <a href=/topics/autodevops/#enable-or-disable-auto-devops>enable Auto DevOps</a>.
19
+ This is enough to run an Auto DevOps pipeline to build and
20
+ test your application.</p><p>If you want to build, test, and deploy your app:</p><ol><li>View the <a href=/topics/autodevops/requirements/>requirements for deployment</a>.</li><li><a href=/topics/autodevops/#enable-or-disable-auto-devops>Enable Auto DevOps</a>.</li><li><a href=/topics/autodevops/#deploy-your-app-to-a-cloud-provider>Deploy your app to a cloud provider</a>.</li></ol><h3 id=enable-or-disable-auto-devops>Enable or disable Auto DevOps</h3><p>Auto DevOps runs pipelines automatically only if a <a href=/topics/autodevops/stages/#auto-build><code>Dockerfile</code> or matching buildpack</a> exists.</p><p>You can enable or disable Auto DevOps for a project or an entire group. Instance administrators
21
+ can also <a href=/administration/settings/continuous_integration/#configure-auto-devops-for-all-projects>set Auto DevOps as the default</a>
22
+ for all projects in an instance.</p><p>Before enabling Auto DevOps, consider <a href=/topics/autodevops/requirements/>preparing it for deployment</a>.
23
+ If you don&rsquo;t, Auto DevOps can build and test your app, but cannot deploy it.</p><h4 id=per-project>Per project</h4><p>To use Auto DevOps for individual projects, you can enable it in a
24
+ project-by-project basis. If you intend to use it for more projects,
25
+ you can enable it for a <a href=/topics/autodevops/#per-group>group</a> or an
26
+ <a href=/administration/settings/continuous_integration/#configure-auto-devops-for-all-projects>instance</a>.
27
+ This can save you the time of enabling it in each project.</p><p>Prerequisites:</p><ul><li>You must have at least the Maintainer role for the project.</li><li>Ensure your project does not have a <code>.gitlab-ci.yml</code> present. If present, your CI/CD configuration takes
28
+ precedence over the Auto DevOps pipeline.</li></ul><p>To enable Auto DevOps for a project:</p><ol><li>On the left sidebar, select <strong>Search or go to</strong> and find your project. If you&rsquo;ve <a href=/user/interface_redesign/#turn-new-navigation-on-or-off>turned on the new navigation</a>, this field is on the top bar.</li><li>Select <strong>Settings</strong> > <strong>CI/CD</strong>.</li><li>Expand <strong>Auto DevOps</strong>.</li><li>Select the <strong>Default to Auto DevOps pipeline</strong> checkbox.</li><li>Optional but recommended. Add the <a href=/topics/autodevops/requirements/#auto-devops-base-domain>base domain</a>.</li><li>Optional but recommended. Choose the <a href=/topics/autodevops/requirements/#auto-devops-deployment-strategy>deployment strategy</a>.</li><li>Select <strong>Save changes</strong>.</li></ol><p>GitLab triggers the Auto DevOps pipeline on the default branch.</p><p>To disable it, follow the same process and clear the
29
+ <strong>Default to Auto DevOps pipeline</strong> checkbox.</p><h4 id=per-group>Per group</h4><p>When you enable Auto DevOps for a group, the subgroups and
30
+ projects in that group inherit the configuration. You can save time by
31
+ enabling Auto DevOps for a group instead of enabling it for each
32
+ subgroup or project.</p><p>When enabled for a group, you can still disable Auto DevOps
33
+ for the subgroups and projects where you don&rsquo;t want to use it.</p><p>Prerequisites:</p><ul><li>You must have the Owner role for the group.</li></ul><p>To enable Auto DevOps for a group:</p><ol><li>On the left sidebar, select <strong>Search or go to</strong> and find your group. If you&rsquo;ve <a href=/user/interface_redesign/#turn-new-navigation-on-or-off>turned on the new navigation</a>, this field is on the top bar.</li><li>Select <strong>Settings</strong> > <strong>CI/CD</strong>.</li><li>Expand <strong>Auto DevOps</strong>.</li><li>Select the <strong>Default to Auto DevOps pipeline</strong> checkbox.</li><li>Select <strong>Save changes</strong>.</li></ol><p>To disable Auto DevOps for a group, follow the same process and
34
+ clear the <strong>Default to Auto DevOps pipeline</strong> checkbox.</p><p>After enabling Auto DevOps for a group, you can trigger the
35
+ Auto DevOps pipeline for any project that belongs to that group:</p><ol><li>On the left sidebar, select <strong>Search or go to</strong> and find your project. If you&rsquo;ve <a href=/user/interface_redesign/#turn-new-navigation-on-or-off>turned on the new navigation</a>, this field is on the top bar.</li><li>Make sure the project doesn&rsquo;t contain a <code>.gitlab-ci.yml</code> file.</li><li>Select <strong>Build</strong> > <strong>Pipelines</strong>.</li><li>To trigger the Auto DevOps pipeline, select <strong>New pipeline</strong>.</li></ol><h3 id=deploy-your-app-to-a-cloud-provider>Deploy your app to a cloud provider</h3><ul><li><a href=/topics/autodevops/cloud_deployments/auto_devops_with_gke/>Use Auto DevOps to deploy to a Kubernetes cluster on Google Kubernetes Engine (GKE)</a></li><li><a href=/topics/autodevops/cloud_deployments/auto_devops_with_eks/>Use Auto DevOps to deploy to a Kubernetes cluster on Amazon Elastic Kubernetes Service (EKS)</a></li><li><a href=/topics/autodevops/cloud_deployments/auto_devops_with_ec2/>Use Auto DevOps to deploy to EC2</a></li><li><a href=/topics/autodevops/cloud_deployments/auto_devops_with_ecs/>Use Auto DevOps to deploy to ECS</a></li></ul><h2 id=upgrade-auto-devops-dependencies-when-updating-gitlab>Upgrade Auto DevOps dependencies when updating GitLab</h2><p>When updating GitLab, you might need to upgrade Auto DevOps dependencies to
36
+ match your new GitLab version:</p><ul><li><a href=/topics/autodevops/upgrading_auto_deploy_dependencies/>Upgrading Auto DevOps resources</a>:<ul><li>Auto DevOps template.</li><li>Auto Deploy template.</li><li>Auto Deploy image.</li><li>Helm.</li><li>Kubernetes.</li><li>Environment variables.</li></ul></li><li><a href=/topics/autodevops/upgrading_postgresql/>Upgrading PostgreSQL</a>.</li></ul><h2 id=private-registry-support>Private registry support</h2><p>There is no guarantee that you can use a private container registry with Auto DevOps.</p><p>Instead, use the <a href=/user/packages/container_registry/>GitLab container registry</a> with Auto DevOps to
37
+ simplify configuration and prevent any unforeseen issues.</p><h2 id=install-applications-behind-a-proxy>Install applications behind a proxy</h2><p>The GitLab integration with Helm does not support installing applications when
38
+ behind a proxy.</p><p>If you want to do so, you must inject proxy settings into the
39
+ installation pods at runtime.</p><h2 id=related-topics>Related topics</h2><ul><li><a href=/ci/>Continuous methodologies</a></li><li><a href=https://docs.docker.com>Docker</a></li><li><a href=https://docs.gitlab.com/runner/>GitLab Runner</a></li><li><a href=https://helm.sh/docs/>Helm</a></li><li><a href=https://kubernetes.io/docs/home/>Kubernetes</a></li><li><a href=https://prometheus.io/docs/introduction/overview/>Prometheus</a></li></ul><h2 id=troubleshooting>Troubleshooting</h2><p>See <a href=/topics/autodevops/troubleshooting/>troubleshooting Auto DevOps</a>.</p></div><div data-vue-app=back-to-top-button></div></div><div class="feedback gl-min-h-8" data-ga-section=feedback data-elastic-exclude><div data-component=docs-feedback></div></div></div><aside class=sidebar-right><div data-ga-section=toc data-vue-app=toc></div></aside></div></main><footer data-ga-section=footer><section data-ga-section=footer><div id=footer class="footer-section container gl-grid gl-grid-cols-2 gl-grid-rows-3 gl-grid-rows-auto gl-gap-8 lg:gl-grid-cols-5 lg:gl-grid-rows-1 lg:gl-justify-items-center gl-px-8 gl-py-8 lg:gl-py-10"><div class="gl-col-span-2 lg:gl-col-span-1 gl-row-start-1"><div class="docs-title gl-flex gl-items-center"><a href=/><img src=/gitlab-logo-footer.svg alt="GitLab Docs logo" class=logo width=176 height=24></a></div><ul class="docs-social gl-list-none gl-flex"><li><a href=https://www.facebook.com/gitlab class=facebook><span class=gl-sr-only>Facebook</span></a></li><li><a href=https://www.linkedin.com/company/gitlab-com class=linkedin><span class=gl-sr-only>LinkedIn</span></a></li><li><a href=https://twitter.com/gitlab class=twitter><span class=gl-sr-only>Twitter</span></a></li><li><a href=https://www.youtube.com/channel/UCnMGQ8QHMAnVIsI3xJrihhg class=youtube><span class=gl-sr-only>YouTube</span></a></li></ul><a href=https://creativecommons.org/licenses/by-sa/4.0/ target=_blank rel="license noopener noreferrer" class=gl-mt-0><img src=/by-sa.svg alt="Creative Commons License" width=80 height=15></a></div><div class="gl-col-span-1 gl-row-start-2 lg:gl-row-start-1"><div class="footer-section-title gl-heading-3">Company</div><ul class="gl-list-none gl-p-0"><li><a href=https://about.gitlab.com/company/>About GitLab</a></li><li><a href=https://about.gitlab.com/pricing/>View pricing</a></li><li><a href=https://about.gitlab.com/free-trial/>Try GitLab for free</a></li></ul></div><div class="gl-col-span-1 gl-row-start-2 lg:gl-row-start-1"><div class="footer-section-title gl-heading-3">Feedback</div><ul class="gl-list-none gl-p-0"><li><a href=https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/topics/autodevops/_index.md>View page source</a></li><li><a href=https://gitlab.com/-/ide/project/gitlab-org/gitlab/edit/master/-/doc/topics/autodevops/_index.md>Edit in web IDE</a></li><li><a href=https://about.gitlab.com/community/contribute/>Contribute to GitLab</a></li><li><a href="https://gitlab.com/gitlab-org/gitlab/-/issues/new?issuable_template=Documentation">Suggest updates</a></li></ul></div><div class="gl-col-span-1 gl-row-start-3 lg:gl-row-start-1"><div class="footer-section-title gl-heading-3">Help & Community</div><ul class="gl-list-none gl-p-0"><li><a href=https://university.gitlab.com/pages/certifications>Get certified</a></li><li><a href=https://about.gitlab.com/support/>Get support</a></li><li><a href="https://forum.gitlab.com/new-topic?title=topic%20title&amp;body=topic%20body&amp;tags=docs-feedback">Post on the GitLab forum</a></li></ul></div><div class="gl-col-span-1 gl-row-start-3 lg:gl-row-start-1"><div class="footer-section-title gl-heading-3">Resources</div><ul class="gl-list-none gl-p-0"><li><a href=https://about.gitlab.com/terms/>Terms</a></li><li><a href=https://about.gitlab.com/privacy/>Privacy statement</a></li><li><a href=/legal/use_generative_ai/>Use of generative AI</a></li><li><a href=/legal/licensing_policy/>Acceptable use of user licenses</a></li><li><button id=ot-sdk-btn class=ot-sdk-show-settings></button></li></ul></div></div></section></footer><script type=module src=/vite/main.js></script><script async>(function(e,t,n,s,o){e[s]=e[s]||[],e[s].push({"gtm.start":(new Date).getTime(),event:"gtm.js"});var a=t.getElementsByTagName(n)[0],i=t.createElement(n),r=s!="dataLayer"?"&l="+s:"";i.async=!0,i.src="https://www.googletagmanager.com/gtm.js?id="+o+r,a.parentNode.insertBefore(i,a)})(window,document,"script","dataLayer","GTM-NJXWQL")</script><noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-NJXWQL" height=0 width=0 style=display:none;visibility:hidden></iframe></noscript><script async>(function(){var e,t=!1;function n(){t===!1&&(t=!0,Munchkin.init("194-VVC-221",{useBeaconAPI:!0}))}e=document.createElement("script"),e.type="text/javascript",e.async=!0,e.src="https://munchkin.marketo.net/munchkin.js",e.onreadystatechange=function(){(this.readyState=="complete"||this.readyState=="loaded")&&n()},e.onload=n,document.getElementsByTagName("head")[0].appendChild(e)})()</script><script async src=https://cdn.bizible.com/scripts/bizible.js></script><script async>_linkedin_partner_id="30694",window._linkedin_data_partner_ids=window._linkedin_data_partner_ids||[],window._linkedin_data_partner_ids.push(_linkedin_partner_id),function(){var t=document.getElementsByTagName("script")[0],e=document.createElement("script");e.type="text/javascript",e.async=!0,e.src="https://snap.licdn.com/li.lms-analytics/insight.min.js",t.parentNode.insertBefore(e,t)}()</script><noscript><img height=1 width=1 style=display:none alt src="https://dc.ads.linkedin.com/collect/?pid=30694&fmt=gif"></noscript></body></html></doc><doc title="Release Automation" desc="Milestone-driven releases with semantic versioning and changelog generation"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Repository Audit" desc="Automated compliance checks across 10 categories"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc></integration><examples><doc title="OSSA Schema Examples" desc="35+ example agent definitions"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="Healing Agents" desc="8 self-healing agent schemas (wiki, architecture, spec, infra, dependency, service-discovery, test, security)"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc><doc title="GitLab Components" desc="Reusable CI/CD components for agent workflows"><html><body>You are being <a href="https://gitlab.com/users/sign_in">redirected</a>.</body></html></doc></examples></project>
@@ -2,7 +2,7 @@ openapi: 3.1.0
2
2
  jsonSchemaDialect: https://spec.openapis.org/oas/3.1/dialect/base
3
3
  info:
4
4
  title: OSSA Agent Communication API
5
- version: 0.3.0
5
+ version: 0.3.2
6
6
  description: |
7
7
  # OSSA Agent-to-Agent Communication Standards
8
8
 
@@ -2,7 +2,7 @@ openapi: 3.1.0
2
2
  jsonSchemaDialect: https://spec.openapis.org/oas/3.1/dialect/base
3
3
  info:
4
4
  title: OSSA Agent CRUD API
5
- version: 0.3.0
5
+ version: 0.3.2
6
6
  description: |
7
7
  # OSSA Agent CRUD Operations API
8
8
 
@@ -284,7 +284,7 @@ components:
284
284
  properties:
285
285
  apiVersion:
286
286
  type: string
287
- const: ossa/v0.3.0
287
+ const: ossa/v0.3.2
288
288
  description: OSSA specification version
289
289
  kind:
290
290
  type: string
@@ -339,7 +339,7 @@ components:
339
339
  description: Unique identifier for the agent
340
340
  apiVersion:
341
341
  type: string
342
- const: ossa/v0.3.0
342
+ const: ossa/v0.3.2
343
343
  kind:
344
344
  type: string
345
345
  const: Agent
@@ -887,7 +887,7 @@ components:
887
887
  CreateWorkerAgentExample:
888
888
  summary: Create a worker agent
889
889
  value:
890
- apiVersion: ossa/v0.3.0
890
+ apiVersion: ossa/v0.3.2
891
891
  kind: Agent
892
892
  metadata:
893
893
  name: security-scanner
@@ -935,7 +935,7 @@ components:
935
935
  CreateOrchestratorAgentExample:
936
936
  summary: Create an orchestrator agent
937
937
  value:
938
- apiVersion: ossa/v0.3.0
938
+ apiVersion: ossa/v0.3.2
939
939
  kind: Agent
940
940
  metadata:
941
941
  name: workflow-orchestrator
@@ -989,7 +989,7 @@ components:
989
989
  summary: Complete agent response
990
990
  value:
991
991
  id: 550e8400-e29b-41d4-a716-446655440000
992
- apiVersion: ossa/v0.3.0
992
+ apiVersion: ossa/v0.3.2
993
993
  kind: Agent
994
994
  metadata:
995
995
  name: security-scanner
@@ -1049,7 +1049,7 @@ components:
1049
1049
  value:
1050
1050
  agents:
1051
1051
  - id: 550e8400-e29b-41d4-a716-446655440000
1052
- apiVersion: ossa/v0.3.0
1052
+ apiVersion: ossa/v0.3.2
1053
1053
  kind: Agent
1054
1054
  metadata:
1055
1055
  name: security-scanner
@@ -1072,7 +1072,7 @@ components:
1072
1072
  createdAt: '2025-12-18T10:30:00Z'
1073
1073
  updatedAt: '2025-12-18T10:30:00Z'
1074
1074
  - id: 660e8400-e29b-41d4-a716-446655440001
1075
- apiVersion: ossa/v0.3.0
1075
+ apiVersion: ossa/v0.3.2
1076
1076
  kind: Agent
1077
1077
  metadata:
1078
1078
  name: code-reviewer
@@ -1,7 +1,7 @@
1
1
  openapi: 3.1.0
2
2
  info:
3
3
  title: OSSA Agent Discovery & Registry API
4
- version: 1.0.0
4
+ version: 0.3.2
5
5
  description: |
6
6
  Agent Discovery and Registry API for OSSA v0.3.0.
7
7
 
@@ -70,7 +70,7 @@ paths:
70
70
  name: security-scanner
71
71
  version: 1.0.0
72
72
  manifest:
73
- apiVersion: ossa/v0.3.0
73
+ apiVersion: ossa/v0.3.2
74
74
  kind: Agent
75
75
  metadata:
76
76
  name: security-scanner
@@ -2,7 +2,7 @@ openapi: 3.1.0
2
2
  jsonSchemaDialect: https://spec.openapis.org/oas/3.1/dialect/base
3
3
  info:
4
4
  title: OSSA Agent Identity & Authentication API
5
- version: 0.3.0
5
+ version: 0.3.2
6
6
  description: |
7
7
  # OSSA Agent Identity & Authentication API
8
8
 
@@ -157,7 +157,7 @@ paths:
157
157
  value:
158
158
  agent_id: "data-processor-agent"
159
159
  instance_id: "550e8400-e29b-41d4-a716-446655440000"
160
- version: "ossa/v0.3.0"
160
+ version: "ossa/v0.3.2"
161
161
  kind: "Agent"
162
162
  status: "active"
163
163
  tenant_id: "tenant-123"
@@ -468,22 +468,22 @@ components:
468
468
 
469
469
  schemas:
470
470
  AgentIdentity:
471
- $ref: 'https://openstandardagents.org/schemas/v0.3.0/identity.json#/definitions/AgentIdentity'
471
+ $ref: 'https://openstandardagents.org/schemas/v0.3.2/identity.json#/definitions/AgentIdentity'
472
472
 
473
473
  AuthenticationRequest:
474
- $ref: 'https://openstandardagents.org/schemas/v0.3.0/identity.json#/definitions/AuthenticationRequest'
474
+ $ref: 'https://openstandardagents.org/schemas/v0.3.2/identity.json#/definitions/AuthenticationRequest'
475
475
 
476
476
  TokenResponse:
477
- $ref: 'https://openstandardagents.org/schemas/v0.3.0/identity.json#/definitions/TokenResponse'
477
+ $ref: 'https://openstandardagents.org/schemas/v0.3.2/identity.json#/definitions/TokenResponse'
478
478
 
479
479
  SecurityContext:
480
- $ref: 'https://openstandardagents.org/schemas/v0.3.0/identity.json#/definitions/SecurityContext'
480
+ $ref: 'https://openstandardagents.org/schemas/v0.3.2/identity.json#/definitions/SecurityContext'
481
481
 
482
482
  TokenRevocationRequest:
483
- $ref: 'https://openstandardagents.org/schemas/v0.3.0/identity.json#/definitions/TokenRevocationRequest'
483
+ $ref: 'https://openstandardagents.org/schemas/v0.3.2/identity.json#/definitions/TokenRevocationRequest'
484
484
 
485
485
  TokenRevocationResponse:
486
- $ref: 'https://openstandardagents.org/schemas/v0.3.0/identity.json#/definitions/TokenRevocationResponse'
486
+ $ref: 'https://openstandardagents.org/schemas/v0.3.2/identity.json#/definitions/TokenRevocationResponse'
487
487
 
488
488
  Error:
489
489
  type: object
@@ -0,0 +1,231 @@
1
+ openapi: 3.1.0
2
+ jsonSchemaDialect: https://spec.openapis.org/oas/3.1/dialect/base
3
+ info:
4
+ title: OSSA CLI Commands API
5
+ version: 0.3.2
6
+ description: |
7
+ # OSSA CLI Commands OpenAPI Specification
8
+
9
+ Complete API specification for all OSSA CLI commands, ensuring type safety,
10
+ validation, and consistency between CLI and REST API operations.
11
+
12
+ ## Principles
13
+ - **DRY**: Single source of truth for command schemas
14
+ - **SOLID**: Command separation and dependency injection
15
+ - **Zod Validation**: Runtime validation for all inputs
16
+ - **OpenAPI First**: Spec drives CLI command definitions
17
+ - **CRUD Complete**: Full Create, Read, Update, Delete operations
18
+
19
+ contact:
20
+ name: Bluefly.io LLM Platform Team
21
+ url: https://github.com/blueflyio/openstandardagents
22
+ license:
23
+ name: MIT
24
+ url: https://opensource.org/licenses/MIT
25
+
26
+ paths:
27
+ /cli/agent/create:
28
+ post:
29
+ summary: Create agent (CLI: ossa agent create)
30
+ description: Register a new agent via CLI
31
+ operationId: cliAgentCreate
32
+ requestBody:
33
+ required: true
34
+ content:
35
+ application/json:
36
+ schema:
37
+ $ref: '#/components/schemas/AgentCreateCLI'
38
+ responses:
39
+ '200':
40
+ description: Agent created successfully
41
+ content:
42
+ application/json:
43
+ schema:
44
+ $ref: '#/components/schemas/AgentResponse'
45
+ '400':
46
+ $ref: '#/components/responses/ValidationError'
47
+
48
+ /cli/agent/list:
49
+ get:
50
+ summary: List agents (CLI: ossa agent list)
51
+ description: List all agents with filtering
52
+ operationId: cliAgentList
53
+ parameters:
54
+ - name: search
55
+ in: query
56
+ schema:
57
+ type: string
58
+ - name: limit
59
+ in: query
60
+ schema:
61
+ type: integer
62
+ minimum: 1
63
+ maximum: 100
64
+ default: 20
65
+ - name: type
66
+ in: query
67
+ schema:
68
+ $ref: '#/components/schemas/AgentType'
69
+ - name: status
70
+ in: query
71
+ schema:
72
+ $ref: '#/components/schemas/AgentStatus'
73
+ - name: domain
74
+ in: query
75
+ schema:
76
+ type: string
77
+ responses:
78
+ '200':
79
+ description: List of agents
80
+ content:
81
+ application/json:
82
+ schema:
83
+ $ref: '#/components/schemas/AgentsList'
84
+
85
+ /cli/agent/get:
86
+ get:
87
+ summary: Get agent (CLI: ossa agent get)
88
+ description: Get detailed information about an agent
89
+ operationId: cliAgentGet
90
+ parameters:
91
+ - name: agent
92
+ in: query
93
+ required: true
94
+ schema:
95
+ type: string
96
+ pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?(@\d+\.\d+\.\d+(-[a-zA-Z0-9]+(\.[a-zA-Z0-9]+)*)?(\+[a-zA-Z0-9]+(\.[a-zA-Z0-9]+)*)?)?$'
97
+ responses:
98
+ '200':
99
+ description: Agent details
100
+ content:
101
+ application/json:
102
+ schema:
103
+ $ref: '#/components/schemas/AgentResponse'
104
+ '404':
105
+ $ref: '#/components/responses/NotFound'
106
+
107
+ /cli/agent/update:
108
+ put:
109
+ summary: Update agent (CLI: ossa agent update)
110
+ description: Update an existing agent
111
+ operationId: cliAgentUpdate
112
+ parameters:
113
+ - name: agent
114
+ in: query
115
+ required: true
116
+ schema:
117
+ type: string
118
+ requestBody:
119
+ required: true
120
+ content:
121
+ application/json:
122
+ schema:
123
+ $ref: '#/components/schemas/AgentUpdate'
124
+ responses:
125
+ '200':
126
+ description: Agent updated successfully
127
+ content:
128
+ application/json:
129
+ schema:
130
+ $ref: '#/components/schemas/AgentResponse'
131
+ '400':
132
+ $ref: '#/components/responses/ValidationError'
133
+ '404':
134
+ $ref: '#/components/responses/NotFound'
135
+
136
+ /cli/agent/delete:
137
+ delete:
138
+ summary: Delete agent (CLI: ossa agent delete)
139
+ description: Delete an agent
140
+ operationId: cliAgentDelete
141
+ parameters:
142
+ - name: agent
143
+ in: query
144
+ required: true
145
+ schema:
146
+ type: string
147
+ - name: force
148
+ in: query
149
+ schema:
150
+ type: boolean
151
+ default: false
152
+ responses:
153
+ '204':
154
+ description: Agent deleted successfully
155
+ '404':
156
+ $ref: '#/components/responses/NotFound'
157
+ '409':
158
+ $ref: '#/components/responses/Conflict'
159
+
160
+ components:
161
+ schemas:
162
+ AgentCreateCLI:
163
+ type: object
164
+ required:
165
+ - path
166
+ properties:
167
+ path:
168
+ type: string
169
+ minLength: 1
170
+ description: Path to OSSA agent manifest file
171
+ registry:
172
+ type: string
173
+ enum: [gitlab, github]
174
+ default: gitlab
175
+ token:
176
+ type: string
177
+ description: Authentication token (optional, can use env var)
178
+ dryRun:
179
+ type: boolean
180
+ default: false
181
+
182
+ AgentType:
183
+ type: string
184
+ enum:
185
+ - orchestrator
186
+ - worker
187
+ - specialist
188
+ - critic
189
+ - monitor
190
+ - gateway
191
+
192
+ AgentStatus:
193
+ type: string
194
+ enum:
195
+ - registered
196
+ - active
197
+ - inactive
198
+ - suspended
199
+ - deprecated
200
+
201
+ AgentResponse:
202
+ $ref: '../agent-crud.yaml#/components/schemas/AgentResponse'
203
+
204
+ AgentsList:
205
+ $ref: '../agent-crud.yaml#/components/schemas/AgentsList'
206
+
207
+ AgentUpdate:
208
+ $ref: '../agent-crud.yaml#/components/schemas/AgentUpdate'
209
+
210
+ responses:
211
+ ValidationError:
212
+ $ref: '../agent-crud.yaml#/components/responses/ValidationError'
213
+
214
+ NotFound:
215
+ $ref: '../agent-crud.yaml#/components/responses/NotFound'
216
+
217
+ Conflict:
218
+ $ref: '../agent-crud.yaml#/components/responses/Conflict'
219
+
220
+ x-ossa-metadata:
221
+ version: 0.3.1
222
+ compliance:
223
+ level: enterprise
224
+ frameworks:
225
+ - OSSA v0.3.1
226
+ - OpenAPI 3.1
227
+ - RFC7807
228
+ governance:
229
+ approved: true
230
+ approvedBy: Platform Team
231
+ approvalDate: 2025-12-23
@@ -2,7 +2,7 @@ openapi: 3.1.0
2
2
  jsonSchemaDialect: https://spec.openapis.org/oas/3.1/dialect/base
3
3
  info:
4
4
  title: OSSA Master API
5
- version: 0.1.9
5
+ version: 0.3.2
6
6
  description: |
7
7
  # OSSA - Open Standards for Scalable Agents
8
8