@bluefly/openstandardagents 0.2.7 → 0.2.8

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 (277) hide show
  1. package/.devfile.yaml +1 -1
  2. package/.env.example +1 -1
  3. package/.version.json +2 -2
  4. package/.wiki-config.json +24 -0
  5. package/CHANGELOG.md +11 -18
  6. package/CODEOWNERS +75 -0
  7. package/CONTRIBUTING.md +1 -1
  8. package/README.md +171 -243
  9. package/dist/index.d.ts +1 -0
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +2 -0
  12. package/dist/index.js.map +1 -1
  13. package/dist/repositories/schema.repository.d.ts +6 -1
  14. package/dist/repositories/schema.repository.d.ts.map +1 -1
  15. package/dist/repositories/schema.repository.js +49 -27
  16. package/dist/repositories/schema.repository.js.map +1 -1
  17. package/dist/services/migration.service.d.ts +4 -3
  18. package/dist/services/migration.service.d.ts.map +1 -1
  19. package/dist/services/migration.service.js +11 -10
  20. package/dist/services/migration.service.js.map +1 -1
  21. package/dist/services/release-automation/release.service.js +1 -1
  22. package/dist/services/release-automation/release.service.js.map +1 -1
  23. package/dist/services/release-automation/schemas/release.schema.js +1 -1
  24. package/dist/services/runtime/claude/claude-adapter.js +1 -1
  25. package/dist/services/runtime/claude/claude-adapter.js.map +1 -1
  26. package/dist/spec/v0.2.8/CHANGELOG.md +401 -0
  27. package/dist/spec/v0.2.8/README.md +72 -0
  28. package/dist/spec/v0.2.8/migrations/v0.2.3-to-v0.2.4.md +599 -0
  29. package/dist/spec/v0.2.8/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  30. package/dist/spec/v0.2.8/migrations/v0.2.6-to-v0.2.8.md +81 -0
  31. package/{spec/v0.2.6-dev/ossa-0.2.5.schema.json → dist/spec/v0.2.8/ossa-0.2.8.schema.json} +1509 -52
  32. package/dist/spec/v0.2.8/ossa-0.2.8.yaml +581 -0
  33. package/dist/types/index.d.ts +3 -2
  34. package/dist/types/index.d.ts.map +1 -1
  35. package/dist/utils/index.d.ts +6 -0
  36. package/dist/utils/index.d.ts.map +1 -0
  37. package/dist/utils/index.js +6 -0
  38. package/dist/utils/index.js.map +1 -0
  39. package/dist/utils/version.d.ts +68 -0
  40. package/dist/utils/version.d.ts.map +1 -0
  41. package/dist/utils/version.js +156 -0
  42. package/dist/utils/version.js.map +1 -0
  43. package/eslint-report.json +1 -0
  44. package/examples/adk-integration/code-review-workflow.yml +1 -1
  45. package/examples/adk-integration/customer-support.yml +1 -1
  46. package/examples/adk-integration/data-pipeline.yml +1 -1
  47. package/examples/advanced/workflows/hybrid-model-strategy.yaml +1 -1
  48. package/examples/agent-manifests/critics/critic-agent.yaml +1 -1
  49. package/examples/agent-manifests/governors/governor-agent.yaml +1 -1
  50. package/examples/agent-manifests/integrators/integrator-agent.yaml +1 -1
  51. package/examples/agent-manifests/judges/judge-agent.yaml +1 -1
  52. package/examples/agent-manifests/monitors/monitor-agent.yaml +1 -1
  53. package/examples/agent-manifests/orchestrators/orchestrator-agent.yaml +1 -1
  54. package/examples/agent-manifests/sample-compliant-agent.yaml +1 -1
  55. package/examples/agent-manifests/workers/worker-agent.yaml +1 -1
  56. package/examples/anthropic/claude-assistant.ossa.json +1 -1
  57. package/examples/autogen/multi-agent.ossa.json +1 -1
  58. package/examples/claude-code/code-reviewer.ossa.yaml +78 -0
  59. package/examples/claude-code/ossa-validator.ossa.yaml +80 -0
  60. package/examples/common_npm/agent-router.ossa.yaml +1 -0
  61. package/examples/common_npm/agent-router.v0.2.2.ossa.yaml +1 -1
  62. package/examples/crewai/research-team.ossa.json +1 -1
  63. package/examples/cursor/code-review-agent.ossa.json +1 -1
  64. package/examples/drupal/gitlab-ml-recommender.ossa.yaml +1 -0
  65. package/examples/drupal/gitlab-ml-recommender.v0.2.2.ossa.yaml +1 -1
  66. package/examples/extensions/drupal-v1.yml +1 -1
  67. package/examples/extensions/kagent-v1.yml +1 -1
  68. package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
  69. package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +4 -4
  70. package/examples/kagent/compliance-validator.ossa.yaml +1 -1
  71. package/examples/kagent/cost-optimizer.ossa.yaml +1 -1
  72. package/examples/kagent/documentation-agent.ossa.yaml +1 -1
  73. package/examples/kagent/k8s-troubleshooter-v1.ossa.yaml +1 -0
  74. package/examples/kagent/k8s-troubleshooter-v1.v0.2.2.ossa.yaml +1 -1
  75. package/examples/kagent/k8s-troubleshooter.ossa.yaml +1 -1
  76. package/examples/kagent/security-scanner.ossa.yaml +1 -1
  77. package/examples/langchain/chain-agent.ossa.json +1 -1
  78. package/examples/langflow/workflow-agent.ossa.json +1 -1
  79. package/examples/langgraph/state-machine-agent.ossa.json +1 -1
  80. package/examples/llamaindex/rag-agent.ossa.json +1 -1
  81. package/examples/migration-guides/from-langchain-to-ossa.yaml +4 -4
  82. package/examples/multi-agent/README.md +74 -0
  83. package/examples/multi-agent/conditional-router.ossa.yaml +42 -0
  84. package/examples/multi-agent/parallel-execution.ossa.yaml +54 -0
  85. package/examples/multi-agent/sequential-pipeline.ossa.yaml +45 -0
  86. package/examples/openai/basic-agent.ossa.yaml +1 -1
  87. package/examples/openai/multi-tool-agent.ossa.json +1 -1
  88. package/examples/openai/swarm-agent.ossa.json +1 -1
  89. package/examples/production/document-analyzer-openai.yml +1 -1
  90. package/examples/quickstart/support-agent.ossa.yaml +1 -1
  91. package/examples/spec-examples/audit-agent.yml +1 -1
  92. package/examples/spec-examples/chat-agent.yml +1 -1
  93. package/examples/spec-examples/compliance-agent.yml +1 -1
  94. package/examples/spec-examples/monitoring-agent.yml +1 -1
  95. package/examples/spec-examples/workflow-agent.yml +1 -1
  96. package/examples/templates/ossa-compliance.yaml +1 -1
  97. package/examples/vercel/edge-agent.ossa.json +1 -1
  98. package/gl-code-quality-report.json +62 -0
  99. package/llms-ctx-full.txt +39 -0
  100. package/llms-ctx.txt +39 -0
  101. package/llms.txt +47 -0
  102. package/package.json +3 -2
  103. package/scripts/eslint-to-codequality.cjs +34 -0
  104. package/scripts/generate-llms-ctx.sh +17 -0
  105. package/scripts/generate-schema-docs.ts +31 -10
  106. package/scripts/sync-version.js +4 -12
  107. package/scripts/validate-schema.ts +2 -1
  108. package/spec/v0.2.8/CHANGELOG.md +401 -0
  109. package/spec/v0.2.8/README.md +72 -0
  110. package/spec/v0.2.8/migrations/v0.2.3-to-v0.2.4.md +599 -0
  111. package/spec/v0.2.8/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  112. package/spec/v0.2.8/migrations/v0.2.6-to-v0.2.8.md +81 -0
  113. package/{dist/spec/v0.2.6-dev/ossa-0.2.5.schema.json → spec/v0.2.8/ossa-0.2.8.schema.json} +1509 -52
  114. package/spec/v0.2.8/ossa-0.2.8.yaml +581 -0
  115. package/test-results/junit.xml +299 -0
  116. package/bin/validate-ossa-0.2.5-RC.ts +0 -244
  117. package/dist/spec/v0.2.6-dev/ossa-0.2.6-dev.schema.json +0 -1696
  118. package/scripts/lib/exec.ts +0 -37
  119. package/scripts/lib/file-ops.ts +0 -58
  120. package/scripts/lib/version.ts +0 -83
  121. package/spec/v0.2.6-dev/ossa-0.2.6-dev.schema.json +0 -1696
  122. package/website/.lighthouserc.ts +0 -24
  123. package/website/.prettierrc +0 -10
  124. package/website/DESIGN_SYSTEM_IMPLEMENTATION.md +0 -445
  125. package/website/Dockerfile +0 -30
  126. package/website/app/about/page.tsx +0 -304
  127. package/website/app/blog/[slug]/page.tsx +0 -208
  128. package/website/app/blog/page.tsx +0 -249
  129. package/website/app/design-guide/page.tsx +0 -511
  130. package/website/app/docs/[[...slug]]/page.tsx +0 -847
  131. package/website/app/docs/core-concepts/project-structure/page.tsx +0 -349
  132. package/website/app/ecosystem/page.tsx +0 -410
  133. package/website/app/examples/page.tsx +0 -133
  134. package/website/app/globals.scss +0 -370
  135. package/website/app/layout.tsx +0 -106
  136. package/website/app/license/page.tsx +0 -183
  137. package/website/app/not-found.tsx +0 -18
  138. package/website/app/page.tsx +0 -686
  139. package/website/app/page.tsx.bak +0 -679
  140. package/website/app/page.tsx.bak2 +0 -649
  141. package/website/app/playground/page.tsx +0 -487
  142. package/website/app/robots.ts +0 -19
  143. package/website/app/rss.xml/route.ts +0 -74
  144. package/website/app/schema/page.tsx +0 -1001
  145. package/website/app/sitemap.ts +0 -56
  146. package/website/app/specification/page.tsx +0 -287
  147. package/website/components/InstallCommand.tsx +0 -96
  148. package/website/components/Logo.tsx +0 -97
  149. package/website/components/StructuredData.tsx +0 -65
  150. package/website/components/docs/DocsSearch.tsx +0 -104
  151. package/website/components/docs/DocsSidebar.tsx +0 -155
  152. package/website/components/docs/MarkdownContent.tsx +0 -401
  153. package/website/components/docs/VersionSelector.tsx +0 -105
  154. package/website/components/examples/ExamplesViewer.tsx +0 -293
  155. package/website/components/layout/Footer.tsx +0 -116
  156. package/website/components/layout/Header.tsx +0 -172
  157. package/website/components/schema/SchemaComponentsAccordion.tsx +0 -84
  158. package/website/components/schema/SchemaExplorer.tsx +0 -213
  159. package/website/components/ui/Badge.tsx +0 -82
  160. package/website/components/ui/Button.tsx +0 -116
  161. package/website/components/ui/Card.tsx +0 -167
  162. package/website/components/ui/Checkbox.tsx +0 -141
  163. package/website/components/ui/Input.tsx +0 -169
  164. package/website/components/ui/Radio.tsx +0 -141
  165. package/website/components/ui/Select.tsx +0 -182
  166. package/website/components/ui/Tag.tsx +0 -158
  167. package/website/components/ui/Textarea.tsx +0 -195
  168. package/website/components/ui/index.ts +0 -11
  169. package/website/content/blog/OpenAPI-AI-Agents-Standard.md +0 -285
  170. package/website/content/blog/Why-Formal-Standards-Matter-Now.md +0 -198
  171. package/website/content/blog/gitlab-kubernetes-agent-ecosystem.md +0 -286
  172. package/website/content/blog/introducing-ossa-framework.md +0 -328
  173. package/website/content/blog/ossa-production-results.md +0 -279
  174. package/website/content/blog/welcome-to-ossa.md +0 -43
  175. package/website/content/blog/why-ai-agents-need-open-standard.md +0 -98
  176. package/website/content/docs/00-home.md +0 -153
  177. package/website/content/docs/adapters/openai-adapter.md +0 -693
  178. package/website/content/docs/agents/catalog.md +0 -28
  179. package/website/content/docs/aiflow-framework-integration-with-ossa.md +0 -107
  180. package/website/content/docs/api-reference/index.md +0 -38
  181. package/website/content/docs/api-reference/ossa-core-api.md +0 -634
  182. package/website/content/docs/api-reference/ossa-registry-api.md +0 -515
  183. package/website/content/docs/api-reference/unified-agent-gateway.md +0 -599
  184. package/website/content/docs/architecture/execution-flow.md +0 -335
  185. package/website/content/docs/architecture/multi-agent-systems.md +0 -737
  186. package/website/content/docs/architecture/overview.md +0 -121
  187. package/website/content/docs/architecture/stack-integration.md +0 -461
  188. package/website/content/docs/changelog.md +0 -246
  189. package/website/content/docs/cli-reference/index.md +0 -111
  190. package/website/content/docs/cli-reference/ossa-agents.md +0 -70
  191. package/website/content/docs/cli-reference/ossa-export.md +0 -56
  192. package/website/content/docs/cli-reference/ossa-generate.md +0 -66
  193. package/website/content/docs/cli-reference/ossa-gitlab-agent.md +0 -57
  194. package/website/content/docs/cli-reference/ossa-import.md +0 -56
  195. package/website/content/docs/cli-reference/ossa-init.md +0 -57
  196. package/website/content/docs/cli-reference/ossa-migrate.md +0 -62
  197. package/website/content/docs/cli-reference/ossa-run.md +0 -66
  198. package/website/content/docs/cli-reference/ossa-schema.md +0 -57
  199. package/website/content/docs/cli-reference/ossa-setup.md +0 -57
  200. package/website/content/docs/cli-reference/ossa-validate.md +0 -66
  201. package/website/content/docs/configuration/index.md +0 -97
  202. package/website/content/docs/contributing.md +0 -599
  203. package/website/content/docs/deployment/github-mirroring.md +0 -924
  204. package/website/content/docs/documentation.md +0 -100
  205. package/website/content/docs/ecosystem/framework-support.md +0 -1361
  206. package/website/content/docs/ecosystem/overview.md +0 -366
  207. package/website/content/docs/errors/index.md +0 -10
  208. package/website/content/docs/examples/aiflow-framework-integration-with-ossa.md +0 -107
  209. package/website/content/docs/examples/catalog.md +0 -300
  210. package/website/content/docs/for-audiences/students-researchers.md +0 -122
  211. package/website/content/docs/getting-started/index.md +0 -92
  212. package/website/content/docs/getting-started/installation.md +0 -155
  213. package/website/content/docs/getting-started/running-agents.md +0 -309
  214. package/website/content/docs/getting-started.md +0 -91
  215. package/website/content/docs/integrations/aiflow.md +0 -104
  216. package/website/content/docs/integrations/drupal.md +0 -105
  217. package/website/content/docs/migration-guides/agent-schema-comparison.md +0 -232
  218. package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +0 -1750
  219. package/website/content/docs/migration-guides/crewai-to-ossa.md +0 -274
  220. package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +0 -2017
  221. package/website/content/docs/migration-guides/general-agent-schema.yml +0 -247
  222. package/website/content/docs/migration-guides/index.md +0 -133
  223. package/website/content/docs/migration-guides/langchain-to-ossa.md +0 -1714
  224. package/website/content/docs/migration-guides/langflow-to-ossa.md +0 -2075
  225. package/website/content/docs/migration-guides/migration-manifest.json +0 -64
  226. package/website/content/docs/migration-guides/openai-to-ossa.md +0 -1202
  227. package/website/content/docs/openapi-extensions/examples.md +0 -550
  228. package/website/content/docs/openapi-extensions/index.md +0 -551
  229. package/website/content/docs/openapi-extensions/operation-extensions.md +0 -457
  230. package/website/content/docs/openapi-extensions/root-extensions.md +0 -410
  231. package/website/content/docs/ossa-compliant-badge.md +0 -251
  232. package/website/content/docs/pre-release/index.md +0 -175
  233. package/website/content/docs/quick-reference.md +0 -17
  234. package/website/content/docs/readme.md +0 -35
  235. package/website/content/docs/releases/v0.2.6.md +0 -99
  236. package/website/content/docs/schema-reference/agent-capabilities.md +0 -50
  237. package/website/content/docs/schema-reference/agent-id.md +0 -52
  238. package/website/content/docs/schema-reference/agent-name.md +0 -50
  239. package/website/content/docs/schema-reference/agent-role.md +0 -54
  240. package/website/content/docs/schema-reference/agent-spec.md +0 -406
  241. package/website/content/docs/schema-reference/agent-version.md +0 -50
  242. package/website/content/docs/schema-reference/autonomy.md +0 -568
  243. package/website/content/docs/schema-reference/constraints.md +0 -543
  244. package/website/content/docs/schema-reference/index.md +0 -45
  245. package/website/content/docs/schema-reference/llm-config.md +0 -445
  246. package/website/content/docs/schema-reference/observability.md +0 -654
  247. package/website/content/docs/schema-reference/ossa-manifest.md +0 -309
  248. package/website/content/docs/schema-reference/taxonomy.md +0 -509
  249. package/website/content/docs/schema-reference/tools.md +0 -628
  250. package/website/content/docs/templates/blog-post.md +0 -43
  251. package/website/content/docs/types-reference/index.md +0 -105
  252. package/website/content/docs/use-cases/00-index.md +0 -395
  253. package/website/content/docs/use-cases/cicd-code-review.md +0 -1236
  254. package/website/content/docs/use-cases/customer-support.md +0 -1234
  255. package/website/content/docs/use-cases/enterprise-compliance.md +0 -1208
  256. package/website/content/docs/use-cases/research-multi-agent.md +0 -1161
  257. package/website/content/docs/versioning.md +0 -288
  258. package/website/dev.sh +0 -53
  259. package/website/docker-compose.dev.yml +0 -36
  260. package/website/lib/version.ts +0 -35
  261. package/website/lib/versions.json +0 -103
  262. package/website/next.config.ts +0 -18
  263. package/website/nginx.conf +0 -32
  264. package/website/package-lock.json +0 -9679
  265. package/website/package.json +0 -59
  266. package/website/postcss.config.mjs +0 -9
  267. package/website/scripts/fetch-versions.js +0 -166
  268. package/website/scripts/generate-examples-index.js +0 -163
  269. package/website/scripts/merge-docs-to-wiki.ts +0 -207
  270. package/website/scripts/sync-version.js +0 -72
  271. package/website/scripts/sync-wiki.ts +0 -322
  272. package/website/scripts/upload-wiki.ts +0 -199
  273. package/website/styles/_spacing.scss +0 -453
  274. package/website/styles/_tokens.scss +0 -245
  275. package/website/styles/_typography.scss +0 -361
  276. package/website/styles/_variables.scss +0 -287
  277. package/website/tailwind.config.ts +0 -170
@@ -1,543 +0,0 @@
1
- ---
2
- title: "Constraints"
3
- description: "Cost, performance, and resource constraints configuration"
4
- weight: 7
5
- ---
6
-
7
- # Constraints Object
8
-
9
- The `constraints` object in `spec.constraints` defines operational limits for cost, performance, and resource usage. Constraints prevent runaway costs, ensure SLAs, and manage resource allocation.
10
-
11
- ## Field Reference
12
-
13
- | Field Name | Type | Required | Description |
14
- |------------|------|----------|-------------|
15
- | `cost` | [Cost](#cost-constraints) | No | Cost and token usage limits |
16
- | `performance` | [Performance](#performance-constraints) | No | Latency, concurrency, and timeout settings |
17
- | `resources` | [Resources](#resource-constraints) | No | CPU, memory, and GPU allocation (Kubernetes format) |
18
-
19
- ## Cost Constraints
20
-
21
- Cost constraints prevent excessive LLM API usage and spending.
22
-
23
- | Field Name | Type | Required | Description |
24
- |------------|------|----------|-------------|
25
- | `maxTokensPerDay` | integer | No | Maximum tokens allowed per day (input + output combined). Minimum: 0 |
26
- | `maxTokensPerRequest` | integer | No | Maximum tokens per individual request. Minimum: 0 |
27
- | `maxCostPerDay` | number | No | Maximum cost per day in specified currency. Minimum: 0 |
28
- | `currency` | string | No | ISO 4217 currency code (3 uppercase letters). Default: `USD` |
29
-
30
- ### Examples
31
-
32
- ```yaml
33
- # Moderate daily limits
34
- constraints:
35
- cost:
36
- maxTokensPerDay: 1000000 # 1M tokens/day
37
- maxTokensPerRequest: 10000 # 10K tokens/request
38
- maxCostPerDay: 50.0 # $50/day
39
- currency: USD
40
-
41
- # High-volume agent
42
- constraints:
43
- cost:
44
- maxTokensPerDay: 50000000 # 50M tokens/day
45
- maxTokensPerRequest: 100000 # 100K tokens/request
46
- maxCostPerDay: 500.0
47
- currency: USD
48
-
49
- # Experimental/testing
50
- constraints:
51
- cost:
52
- maxTokensPerDay: 100000 # 100K tokens/day
53
- maxCostPerDay: 5.0
54
- currency: USD
55
-
56
- # European deployment
57
- constraints:
58
- cost:
59
- maxTokensPerDay: 5000000
60
- maxCostPerDay: 200.0
61
- currency: EUR
62
- ```
63
-
64
- ### Cost Calculation
65
-
66
- Cost tracking varies by provider:
67
-
68
- **OpenAI:**
69
- ```yaml
70
- # GPT-4o: $2.50/1M input, $10.00/1M output
71
- constraints:
72
- cost:
73
- maxTokensPerDay: 1000000
74
- maxCostPerDay: 10.0
75
- ```
76
-
77
- **Anthropic:**
78
- ```yaml
79
- # Claude 3.5 Sonnet: $3.00/1M input, $15.00/1M output
80
- constraints:
81
- cost:
82
- maxTokensPerDay: 1000000
83
- maxCostPerDay: 15.0
84
- ```
85
-
86
- **Note:** Platforms typically estimate cost based on provider pricing. For precise cost control, use both token and cost limits.
87
-
88
- ## Performance Constraints
89
-
90
- Performance constraints ensure latency SLAs and prevent resource exhaustion.
91
-
92
- | Field Name | Type | Required | Description |
93
- |------------|------|----------|-------------|
94
- | `maxLatencySeconds` | number | No | Maximum acceptable latency per request in seconds. Minimum: 0 |
95
- | `maxConcurrentRequests` | integer | No | Maximum concurrent requests the agent can handle. Minimum: 1 |
96
- | `timeoutSeconds` | number | No | Request timeout in seconds. Minimum: 0 |
97
-
98
- ### Examples
99
-
100
- ```yaml
101
- # Low-latency requirements (chatbot)
102
- constraints:
103
- performance:
104
- maxLatencySeconds: 3
105
- maxConcurrentRequests: 100
106
- timeoutSeconds: 10
107
-
108
- # Batch processing
109
- constraints:
110
- performance:
111
- maxLatencySeconds: 60
112
- maxConcurrentRequests: 10
113
- timeoutSeconds: 300
114
-
115
- # High-throughput
116
- constraints:
117
- performance:
118
- maxLatencySeconds: 10
119
- maxConcurrentRequests: 1000
120
- timeoutSeconds: 30
121
-
122
- # Background tasks
123
- constraints:
124
- performance:
125
- maxLatencySeconds: 300
126
- maxConcurrentRequests: 5
127
- timeoutSeconds: 3600
128
- ```
129
-
130
- ### Latency vs. Timeout
131
-
132
- - **maxLatencySeconds:** Expected/desired latency. Platform may log warnings if exceeded.
133
- - **timeoutSeconds:** Hard cutoff. Requests exceeding timeout are terminated.
134
-
135
- ```yaml
136
- constraints:
137
- performance:
138
- maxLatencySeconds: 5 # Warn if response takes > 5s
139
- timeoutSeconds: 30 # Kill request after 30s
140
- ```
141
-
142
- ## Resource Constraints
143
-
144
- Resource constraints define CPU, memory, and GPU allocation. Uses Kubernetes resource format.
145
-
146
- | Field Name | Type | Required | Description |
147
- |------------|------|----------|-------------|
148
- | `cpu` | string | No | CPU limit in Kubernetes format. Examples: `100m`, `1`, `2.5` |
149
- | `memory` | string | No | Memory limit in Kubernetes format. Examples: `128Mi`, `1Gi`, `4Gi` |
150
- | `gpu` | string | No | GPU requirement (format varies by platform) |
151
-
152
- ### CPU Format
153
-
154
- **Millicores (`m`):**
155
- ```yaml
156
- resources:
157
- cpu: "100m" # 0.1 CPU core
158
- cpu: "500m" # 0.5 CPU core
159
- cpu: "1000m" # 1 CPU core
160
- ```
161
-
162
- **Cores (integer or decimal):**
163
- ```yaml
164
- resources:
165
- cpu: "1" # 1 CPU core
166
- cpu: "2" # 2 CPU cores
167
- cpu: "0.5" # 0.5 CPU core
168
- cpu: "4.5" # 4.5 CPU cores
169
- ```
170
-
171
- ### Memory Format
172
-
173
- **Mebibytes (`Mi`):**
174
- ```yaml
175
- resources:
176
- memory: "128Mi" # 128 MiB
177
- memory: "512Mi" # 512 MiB
178
- memory: "1024Mi" # 1 GiB
179
- ```
180
-
181
- **Gibibytes (`Gi`):**
182
- ```yaml
183
- resources:
184
- memory: "1Gi" # 1 GiB
185
- memory: "2Gi" # 2 GiB
186
- memory: "16Gi" # 16 GiB
187
- ```
188
-
189
- **Other units:**
190
- ```yaml
191
- resources:
192
- memory: "1000M" # 1000 MB (decimal)
193
- memory: "1G" # 1 GB (decimal)
194
- ```
195
-
196
- ### GPU Requirement
197
-
198
- GPU format is platform-specific:
199
-
200
- ```yaml
201
- # NVIDIA GPU count
202
- resources:
203
- gpu: "1"
204
-
205
- # Specific GPU type
206
- resources:
207
- gpu: "nvidia-tesla-v100"
208
-
209
- # GPU memory
210
- resources:
211
- gpu: "16Gi"
212
- ```
213
-
214
- ### Resource Examples
215
-
216
- ```yaml
217
- # Minimal (lightweight agent)
218
- constraints:
219
- resources:
220
- cpu: "100m"
221
- memory: "128Mi"
222
-
223
- # Small (chatbot)
224
- constraints:
225
- resources:
226
- cpu: "500m"
227
- memory: "512Mi"
228
-
229
- # Medium (code analysis)
230
- constraints:
231
- resources:
232
- cpu: "1"
233
- memory: "2Gi"
234
-
235
- # Large (data processing)
236
- constraints:
237
- resources:
238
- cpu: "4"
239
- memory: "8Gi"
240
-
241
- # GPU workload
242
- constraints:
243
- resources:
244
- cpu: "8"
245
- memory: "32Gi"
246
- gpu: "1"
247
- ```
248
-
249
- ## Complete Examples
250
-
251
- ### Production Chatbot
252
-
253
- ```yaml
254
- apiVersion: ossa/v0.2.x
255
- kind: Agent
256
- metadata:
257
- name: customer-chatbot
258
- version: 1.0.0
259
- spec:
260
- role: You are a customer support chatbot.
261
-
262
- llm:
263
- provider: anthropic
264
- model: claude-3-5-haiku-20241022
265
- temperature: 0.7
266
- maxTokens: 1024
267
-
268
- constraints:
269
- cost:
270
- maxTokensPerDay: 10000000 # 10M tokens/day
271
- maxTokensPerRequest: 2048 # 2K tokens/request
272
- maxCostPerDay: 100.0
273
- currency: USD
274
- performance:
275
- maxLatencySeconds: 3 # Fast responses
276
- maxConcurrentRequests: 500 # High throughput
277
- timeoutSeconds: 10
278
- resources:
279
- cpu: "2"
280
- memory: "4Gi"
281
- ```
282
-
283
- ### Background Data Analyzer
284
-
285
- ```yaml
286
- apiVersion: ossa/v0.2.x
287
- kind: Agent
288
- metadata:
289
- name: data-analyzer
290
- version: 1.5.0
291
- spec:
292
- role: You are a data analysis specialist.
293
-
294
- llm:
295
- provider: openai
296
- model: gpt-4o
297
- temperature: 0.2
298
- maxTokens: 8192
299
-
300
- constraints:
301
- cost:
302
- maxTokensPerDay: 50000000 # 50M tokens/day
303
- maxCostPerDay: 500.0
304
- currency: USD
305
- performance:
306
- maxLatencySeconds: 60 # Not time-critical
307
- maxConcurrentRequests: 10 # Batch processing
308
- timeoutSeconds: 600 # 10 minute timeout
309
- resources:
310
- cpu: "4"
311
- memory: "16Gi"
312
- ```
313
-
314
- ### Development/Testing Agent
315
-
316
- ```yaml
317
- apiVersion: ossa/v0.2.x
318
- kind: Agent
319
- metadata:
320
- name: dev-assistant
321
- version: 0.1.0
322
- spec:
323
- role: Development and testing assistant.
324
-
325
- llm:
326
- provider: anthropic
327
- model: claude-3-5-sonnet-20241022
328
-
329
- constraints:
330
- cost:
331
- maxTokensPerDay: 100000 # Limited for testing
332
- maxCostPerDay: 5.0
333
- currency: USD
334
- performance:
335
- maxLatencySeconds: 10
336
- maxConcurrentRequests: 5
337
- timeoutSeconds: 30
338
- resources:
339
- cpu: "500m"
340
- memory: "1Gi"
341
- ```
342
-
343
- ### High-Performance Code Generator
344
-
345
- ```yaml
346
- apiVersion: ossa/v0.2.x
347
- kind: Agent
348
- metadata:
349
- name: code-generator
350
- version: 2.0.0
351
- spec:
352
- role: You are an expert code generator.
353
-
354
- llm:
355
- provider: anthropic
356
- model: claude-3-5-sonnet-20241022
357
- temperature: 0.2
358
- maxTokens: 8192
359
-
360
- constraints:
361
- cost:
362
- maxTokensPerDay: 100000000 # 100M tokens/day
363
- maxTokensPerRequest: 16384 # Long responses
364
- maxCostPerDay: 1000.0
365
- currency: USD
366
- performance:
367
- maxLatencySeconds: 15
368
- maxConcurrentRequests: 100
369
- timeoutSeconds: 60
370
- resources:
371
- cpu: "8"
372
- memory: "32Gi"
373
- ```
374
-
375
- ### Cost-Optimized Agent
376
-
377
- ```yaml
378
- apiVersion: ossa/v0.2.x
379
- kind: Agent
380
- metadata:
381
- name: budget-agent
382
- version: 1.0.0
383
- spec:
384
- role: Cost-optimized assistant.
385
-
386
- llm:
387
- provider: anthropic
388
- model: claude-3-5-haiku-20241022 # Cheapest model
389
- temperature: 0.5
390
- maxTokens: 512 # Short responses
391
-
392
- constraints:
393
- cost:
394
- maxTokensPerDay: 500000 # Tight limit
395
- maxTokensPerRequest: 1024
396
- maxCostPerDay: 5.0 # Low budget
397
- currency: USD
398
- performance:
399
- maxLatencySeconds: 5
400
- maxConcurrentRequests: 50
401
- timeoutSeconds: 15
402
- resources:
403
- cpu: "250m" # Minimal resources
404
- memory: "256Mi"
405
- ```
406
-
407
- ## Multi-Currency Support
408
-
409
- ```yaml
410
- # United States
411
- constraints:
412
- cost:
413
- maxCostPerDay: 100.0
414
- currency: USD
415
-
416
- # European Union
417
- constraints:
418
- cost:
419
- maxCostPerDay: 90.0
420
- currency: EUR
421
-
422
- # United Kingdom
423
- constraints:
424
- cost:
425
- maxCostPerDay: 80.0
426
- currency: GBP
427
-
428
- # Canada
429
- constraints:
430
- cost:
431
- maxCostPerDay: 135.0
432
- currency: CAD
433
- ```
434
-
435
- **Currency validation:**
436
- - Must be 3 uppercase letters
437
- - Should be valid ISO 4217 code
438
- - Platform converts to provider's billing currency
439
-
440
- ## Constraint Enforcement
441
-
442
- How constraints are enforced varies by platform:
443
-
444
- ### Cost Constraints
445
- - **Soft limits:** Log warnings, continue operation
446
- - **Hard limits:** Reject new requests when limit reached
447
- - **Reset period:** Typically 24 hours from first request
448
-
449
- ### Performance Constraints
450
- - **maxLatencySeconds:** Monitoring/alerting threshold
451
- - **maxConcurrentRequests:** Queue or reject excess requests
452
- - **timeoutSeconds:** Hard cutoff, terminate request
453
-
454
- ### Resource Constraints
455
- - **Kubernetes:** Enforced by kubelet
456
- - **Docker:** Enforced by container runtime
457
- - **Serverless:** Enforced by platform
458
-
459
- ## Best Practices
460
-
461
- 1. **Set realistic limits** - Based on expected usage patterns
462
- 2. **Monitor regularly** - Track actual usage vs. constraints
463
- 3. **Start conservative** - Tighten constraints after observing usage
464
- 4. **Account for spikes** - Set limits above normal usage
465
- 5. **Use both cost metrics** - Tokens AND currency for better control
466
- 6. **Match timeout to task** - Long-running tasks need higher timeouts
467
- 7. **Resource padding** - Add 20-30% buffer to resource requests
468
- 8. **Test limits** - Validate constraints work as expected
469
- 9. **Alert on limits** - Monitor constraint violations
470
- 10. **Document choices** - Explain constraint rationale in comments
471
-
472
- ## Common Constraint Patterns
473
-
474
- ### High-Volume Low-Cost
475
-
476
- ```yaml
477
- constraints:
478
- cost:
479
- maxTokensPerDay: 100000000
480
- maxCostPerDay: 100.0
481
- performance:
482
- maxConcurrentRequests: 1000
483
- resources:
484
- cpu: "4"
485
- memory: "8Gi"
486
- ```
487
-
488
- ### Low-Volume High-Quality
489
-
490
- ```yaml
491
- constraints:
492
- cost:
493
- maxTokensPerDay: 1000000
494
- maxCostPerDay: 200.0
495
- performance:
496
- maxLatencySeconds: 5
497
- maxConcurrentRequests: 10
498
- resources:
499
- cpu: "2"
500
- memory: "4Gi"
501
- ```
502
-
503
- ### Batch Processing
504
-
505
- ```yaml
506
- constraints:
507
- cost:
508
- maxTokensPerDay: 50000000
509
- maxCostPerDay: 500.0
510
- performance:
511
- maxLatencySeconds: 300
512
- timeoutSeconds: 3600
513
- maxConcurrentRequests: 5
514
- resources:
515
- cpu: "8"
516
- memory: "32Gi"
517
- ```
518
-
519
- ## Validation
520
-
521
- All constraint fields are optional.
522
-
523
- **Numeric validation:**
524
- - All numeric values must be >= 0
525
- - `maxConcurrentRequests` minimum: 1
526
- - `currency` pattern: `^[A-Z]{3}$`
527
-
528
- **Resource format:**
529
- - `cpu`: Kubernetes CPU format
530
- - `memory`: Kubernetes memory format
531
- - `gpu`: Platform-specific format
532
-
533
- ## Related Objects
534
-
535
- - [Agent Spec](./agent-spec.md) - Parent object containing constraints
536
- - [LLM Configuration](./llm-config.md) - Model configuration affecting cost
537
- - [Observability](./observability.md) - Monitoring constraint violations
538
- - [Autonomy](./autonomy.md) - Action limits complement constraints
539
-
540
- ## See Also
541
-
542
- - [Kubernetes Resource Management](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/)
543
- - [LLM Pricing Calculators](https://artificialanalysis.ai/models)
@@ -1,45 +0,0 @@
1
- # Schema Reference
2
-
3
- Complete reference for the OSSA agent manifest schema.
4
-
5
- ## Overview
6
-
7
- The OSSA schema defines the structure of agent manifests. Every field serves a specific purpose in the agent lifecycle.
8
-
9
- ## Core Fields
10
-
11
- ### Agent Identification
12
- - [agent.id](./agent-id.md) - Unique agent identifier
13
- - [agent.name](./agent-name.md) - Human-readable name
14
- - [agent.version](./agent-version.md) - Semantic version
15
- - [agent.role](./agent-role.md) - Agent role classification
16
-
17
- ### Agent Capabilities
18
- - [agent.capabilities](./agent-capabilities.md) - What the agent can do
19
-
20
- ## Schema Versions
21
-
22
- - **Current**: v0.2.5-RC
23
- - **Stable**: v0.2.4
24
- - **Previous**: v0.2.3, v0.2.2
25
-
26
- See [Versioning Guide](../guides/versioning.md) for migration information.
27
-
28
- ## Validation
29
-
30
- Validate your agent manifests:
31
-
32
- ```bash
33
- ossa validate agent.ossa.yaml
34
- ```
35
-
36
- ## Complete Schema
37
-
38
- View the complete JSON Schema:
39
- - [v0.2.5-RC Schema](https://github.com/blueflyio/openstandardagents/blob/main/spec/v0.2.6/ossa-0.2.6.schema.json)
40
-
41
- ## Related Documentation
42
-
43
- - [CLI Reference](../cli-reference/index.md)
44
- - [API Reference](../api-reference/index.md)
45
- - [Creating Agents Guide](../guides/creating-agents.md)