@bluefly/openstandardagents 0.2.5-RC → 0.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (238) hide show
  1. package/.github/ISSUE_TEMPLATE/bug_report.yml +63 -0
  2. package/.github/ISSUE_TEMPLATE/feature_request.yml +40 -0
  3. package/.github/workflows/dependabot-comment.yml +34 -0
  4. package/.github/workflows/pr-comment.yml +33 -0
  5. package/.husky/pre-commit +5 -0
  6. package/.kiro/config.json +21 -0
  7. package/.kiro/settings/mcp.json +61 -0
  8. package/.kiro/specs/scripts-migration-api-first/design.md +883 -0
  9. package/.kiro/specs/scripts-migration-api-first/requirements.md +165 -0
  10. package/.kiro/specs/scripts-migration-api-first/tasks.md +539 -0
  11. package/.kiro/specs/{website-design-audit → website-brand-identity}/design.md +381 -0
  12. package/.kiro/specs/{website-design-audit → website-brand-identity}/requirements.md +88 -0
  13. package/.kiro/specs/website-brand-identity/tasks.md +981 -0
  14. package/CHANGELOG.md +23 -0
  15. package/README.md +12 -3
  16. package/bin/ossa-dev +42 -0
  17. package/bin/ossa-export +32 -0
  18. package/bin/ossa-generate +60 -0
  19. package/bin/ossa-health +40 -0
  20. package/bin/ossa-init +26 -0
  21. package/dist/repositories/schema.repository.d.ts.map +1 -1
  22. package/dist/repositories/schema.repository.js +15 -10
  23. package/dist/repositories/schema.repository.js.map +1 -1
  24. package/dist/services/github-sync/github-client.d.ts +14 -0
  25. package/dist/services/github-sync/github-client.d.ts.map +1 -0
  26. package/dist/services/github-sync/github-client.js +41 -0
  27. package/dist/services/github-sync/github-client.js.map +1 -0
  28. package/dist/services/github-sync/gitlab-client.d.ts +17 -0
  29. package/dist/services/github-sync/gitlab-client.d.ts.map +1 -0
  30. package/dist/services/github-sync/gitlab-client.js +42 -0
  31. package/dist/services/github-sync/gitlab-client.js.map +1 -0
  32. package/dist/services/github-sync/schemas.d.ts +46 -0
  33. package/dist/services/github-sync/schemas.d.ts.map +1 -0
  34. package/dist/services/github-sync/schemas.js +36 -0
  35. package/dist/services/github-sync/schemas.js.map +1 -0
  36. package/dist/services/github-sync/sync.service.d.ts +27 -0
  37. package/dist/services/github-sync/sync.service.d.ts.map +1 -0
  38. package/dist/services/github-sync/sync.service.js +99 -0
  39. package/dist/services/github-sync/sync.service.js.map +1 -0
  40. package/dist/services/runtime/claude/capability-mapper.d.ts +84 -0
  41. package/dist/services/runtime/claude/capability-mapper.d.ts.map +1 -0
  42. package/dist/services/runtime/claude/capability-mapper.js +245 -0
  43. package/dist/services/runtime/claude/capability-mapper.js.map +1 -0
  44. package/dist/services/runtime/claude/claude-adapter.d.ts +80 -0
  45. package/dist/services/runtime/claude/claude-adapter.d.ts.map +1 -0
  46. package/dist/services/runtime/claude/claude-adapter.js +287 -0
  47. package/dist/services/runtime/claude/claude-adapter.js.map +1 -0
  48. package/dist/services/runtime/claude/manifest-parser.d.ts +77 -0
  49. package/dist/services/runtime/claude/manifest-parser.d.ts.map +1 -0
  50. package/dist/services/runtime/claude/manifest-parser.js +169 -0
  51. package/dist/services/runtime/claude/manifest-parser.js.map +1 -0
  52. package/dist/services/runtime/claude/types.d.ts +115 -0
  53. package/dist/services/runtime/claude/types.d.ts.map +1 -0
  54. package/dist/services/runtime/claude/types.js +6 -0
  55. package/dist/services/runtime/claude/types.js.map +1 -0
  56. package/dist/services/validation.service.d.ts.map +1 -1
  57. package/dist/services/validation.service.js +12 -1
  58. package/dist/services/validation.service.js.map +1 -1
  59. package/dist/spec/v0.2.4/ossa-0.2.4.schema.json +85 -208
  60. package/dist/spec/v0.2.6/CHANGELOG.md +401 -0
  61. package/dist/spec/v0.2.6/README.md +72 -0
  62. package/dist/spec/v0.2.6/migrations/v0.2.3-to-v0.2.4.md +599 -0
  63. package/dist/spec/v0.2.6/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  64. package/dist/spec/v0.2.6/ossa-0.2.6.schema.json +1786 -0
  65. package/dist/spec/v0.2.6/ossa-0.2.6.yaml +581 -0
  66. package/dist/spec/v0.2.6-dev/CHANGELOG.md +164 -0
  67. package/dist/spec/v0.2.6-dev/README.md +75 -0
  68. package/dist/spec/v0.2.6-dev/migrations/v0.2.2-to-v0.2.3.md +343 -0
  69. package/dist/spec/v0.2.6-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
  70. package/dist/spec/{v0.2.4/ossa-0.2.4-dev.schema.json → v0.2.6-dev/ossa-0.2.5.schema.json} +9 -9
  71. package/dist/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
  72. package/{spec/v0.2.4/ossa-0.2.4-dev.schema.json → dist/spec/v0.2.6-dev/ossa-0.2.6-dev.schema.json} +9 -9
  73. package/dist/spec/v0.2.6-dev/ossa-0.2.6-dev.yaml +448 -0
  74. package/dist/spec/v0.2.7/core/agentgraph.md +324 -0
  75. package/dist/spec/v0.2.7/resources/agentgraph.yaml +135 -0
  76. package/docs/brand-guide/01-brand-overview.md +37 -0
  77. package/docs/brand-guide/02-logo-usage.md +43 -0
  78. package/docs/brand-guide/03-color-palette.md +70 -0
  79. package/docs/brand-guide/04-typography.md +82 -0
  80. package/docs/brand-guide/05-voice-and-tone.md +108 -0
  81. package/docs/brand-guide/06-visual-elements.md +137 -0
  82. package/docs/brand-guide/07-application-examples.md +153 -0
  83. package/docs/brand-guide/OssaLogo/OssA_Logo.svg +21 -0
  84. package/docs/brand-guide/OssaLogo/brand.af +0 -0
  85. package/docs/brand-guide/README.md +107 -0
  86. package/docs/comparison.md +315 -0
  87. package/docs/operations/automation-roadmap.md +245 -0
  88. package/docs/operations/github-sync-strategy.md +357 -0
  89. package/examples/anthropic/claude-assistant.ossa.json +5 -4
  90. package/examples/autogen/multi-agent.ossa.json +6 -4
  91. package/examples/crewai/research-team.ossa.json +14 -5
  92. package/examples/cursor/code-review-agent.ossa.json +21 -6
  93. package/examples/langchain/chain-agent.ossa.json +21 -5
  94. package/examples/langflow/workflow-agent.ossa.json +2 -3
  95. package/examples/langgraph/state-machine-agent.ossa.json +2 -3
  96. package/examples/llamaindex/rag-agent.ossa.json +2 -3
  97. package/examples/openai/multi-tool-agent.ossa.json +32 -9
  98. package/examples/openai/swarm-agent.ossa.json +18 -5
  99. package/examples/vercel/edge-agent.ossa.json +5 -4
  100. package/openapi/github-sync.yaml +115 -0
  101. package/package.json +25 -4
  102. package/scripts/README.md +103 -0
  103. package/scripts/auto-rebase-mrs.ts +106 -0
  104. package/scripts/batch-dependabot.sh +57 -0
  105. package/scripts/configure-gitlab-branch-protection.ts +95 -0
  106. package/scripts/create-issue-helper.ts +238 -0
  107. package/scripts/create-milestone-issue.ts +73 -0
  108. package/scripts/fix-schema-formats.js +82 -0
  109. package/scripts/generate-agents-catalog.ts +77 -0
  110. package/scripts/generate-api-docs.ts +218 -0
  111. package/scripts/generate-cli-docs.ts +410 -0
  112. package/scripts/generate-config-docs.ts +109 -0
  113. package/scripts/generate-errors-docs.ts +76 -0
  114. package/scripts/generate-examples-docs.ts +99 -0
  115. package/scripts/generate-schema-docs.ts +296 -0
  116. package/scripts/generate-types-docs.ts +48 -0
  117. package/scripts/lowercase-docs.ts +43 -0
  118. package/scripts/manage-milestone-mrs.ts +279 -0
  119. package/scripts/rebase-all-mrs.sh +75 -0
  120. package/scripts/sync-github-pr.sh +48 -0
  121. package/scripts/sync-version.js +40 -0
  122. package/scripts/sync-wiki.sh +50 -0
  123. package/scripts/validate-all.js +127 -0
  124. package/spec/v0.2.4/ossa-0.2.4.schema.json +85 -208
  125. package/spec/v0.2.6/CHANGELOG.md +401 -0
  126. package/spec/v0.2.6/README.md +72 -0
  127. package/spec/v0.2.6/migrations/v0.2.3-to-v0.2.4.md +599 -0
  128. package/spec/v0.2.6/migrations/v0.2.5-RC-to-v0.2.6.md +65 -0
  129. package/spec/v0.2.6/ossa-0.2.6.schema.json +1786 -0
  130. package/spec/v0.2.6/ossa-0.2.6.yaml +581 -0
  131. package/spec/v0.2.6-dev/CHANGELOG.md +164 -0
  132. package/spec/v0.2.6-dev/README.md +75 -0
  133. package/spec/v0.2.6-dev/migrations/v0.2.2-to-v0.2.3.md +343 -0
  134. package/spec/v0.2.6-dev/migrations/v0.2.3-to-v0.2.4.md +599 -0
  135. package/spec/v0.2.6-dev/ossa-0.2.5.schema.json +1696 -0
  136. package/spec/v0.2.6-dev/ossa-0.2.5.yaml +581 -0
  137. package/spec/v0.2.6-dev/ossa-0.2.6-dev.schema.json +1696 -0
  138. package/spec/v0.2.6-dev/ossa-0.2.6-dev.yaml +448 -0
  139. package/spec/v0.2.7/core/agentgraph.md +324 -0
  140. package/spec/v0.2.7/resources/agentgraph.yaml +135 -0
  141. package/website/DESIGN_SYSTEM_IMPLEMENTATION.md +445 -0
  142. package/website/app/about/page.tsx +53 -44
  143. package/website/app/ecosystem/page.tsx +146 -111
  144. package/website/app/globals.scss +256 -21
  145. package/website/app/page.tsx +394 -182
  146. package/website/app/page.tsx.bak +679 -0
  147. package/website/app/page.tsx.bak2 +649 -0
  148. package/website/app/schema/page.tsx +3 -3
  149. package/website/app/specification/page.tsx +1 -1
  150. package/website/components/layout/Header.tsx +27 -23
  151. package/website/components/ui/Badge.tsx +82 -0
  152. package/website/components/ui/Button.tsx +116 -0
  153. package/website/components/ui/Card.tsx +167 -0
  154. package/website/components/ui/Checkbox.tsx +141 -0
  155. package/website/components/ui/Input.tsx +169 -0
  156. package/website/components/ui/Radio.tsx +141 -0
  157. package/website/components/ui/Select.tsx +182 -0
  158. package/website/components/ui/Tag.tsx +158 -0
  159. package/website/components/ui/Textarea.tsx +195 -0
  160. package/website/components/ui/index.ts +11 -0
  161. package/website/content/docs/{00-HOME.md → 00-home.md} +1 -1
  162. package/website/content/docs/agents/catalog.md +28 -0
  163. package/website/content/docs/{AIFlow-Framework-Integration-with-OSSA.md → aiflow-framework-integration-with-ossa.md} +2 -2
  164. package/website/content/docs/api-reference/index.md +38 -0
  165. package/website/content/docs/api-reference/ossa-core-api.md +634 -0
  166. package/website/content/docs/api-reference/ossa-registry-api.md +515 -0
  167. package/website/content/docs/api-reference/unified-agent-gateway.md +599 -0
  168. package/website/content/docs/cli-reference/index.md +111 -0
  169. package/website/content/docs/cli-reference/ossa-agents.md +70 -0
  170. package/website/content/docs/cli-reference/ossa-export.md +56 -0
  171. package/website/content/docs/cli-reference/ossa-generate.md +66 -0
  172. package/website/content/docs/cli-reference/ossa-gitlab-agent.md +57 -0
  173. package/website/content/docs/cli-reference/ossa-import.md +56 -0
  174. package/website/content/docs/cli-reference/ossa-init.md +57 -0
  175. package/website/content/docs/cli-reference/ossa-migrate.md +62 -0
  176. package/website/content/docs/cli-reference/ossa-run.md +66 -0
  177. package/website/content/docs/cli-reference/ossa-schema.md +57 -0
  178. package/website/content/docs/cli-reference/ossa-setup.md +57 -0
  179. package/website/content/docs/cli-reference/ossa-validate.md +66 -0
  180. package/website/content/docs/configuration/index.md +97 -0
  181. package/website/content/docs/deployment/github-mirroring.md +924 -0
  182. package/website/content/docs/documentation.md +100 -0
  183. package/website/content/docs/ecosystem/framework-support.md +551 -9
  184. package/website/content/docs/errors/index.md +10 -0
  185. package/website/content/docs/examples/{AIFlow-Framework-Integration-with-OSSA.md → aiflow-framework-integration-with-ossa.md} +2 -2
  186. package/website/content/docs/examples/catalog.md +300 -0
  187. package/website/content/docs/for-audiences/{Students-Researchers.md → students-researchers.md} +1 -1
  188. package/website/content/docs/getting-started/{Installation.md → installation.md} +1 -1
  189. package/website/content/docs/getting-started.md +1 -1
  190. package/website/content/docs/integrations/aiflow.md +2 -2
  191. package/website/content/docs/migration-guides/anthropic-mcp-to-ossa.md +5 -5
  192. package/website/content/docs/migration-guides/crewai-to-ossa.md +3 -3
  193. package/website/content/docs/migration-guides/drupal-eca-to-ossa.md +7 -7
  194. package/website/content/docs/migration-guides/langchain-to-ossa.md +4 -4
  195. package/website/content/docs/openapi-extensions/index.md +1 -1
  196. package/website/content/docs/ossa-compliant-badge.md +1 -1
  197. package/website/content/docs/pre-release/index.md +5 -5
  198. package/website/content/docs/releases/v0.2.6.md +99 -0
  199. package/website/content/docs/schema-reference/agent-capabilities.md +50 -0
  200. package/website/content/docs/schema-reference/agent-id.md +52 -0
  201. package/website/content/docs/schema-reference/agent-name.md +50 -0
  202. package/website/content/docs/schema-reference/agent-role.md +54 -0
  203. package/website/content/docs/schema-reference/agent-version.md +50 -0
  204. package/website/content/docs/schema-reference/index.md +26 -157
  205. package/website/content/docs/types-reference/index.md +105 -0
  206. package/website/content/docs/versioning.md +3 -3
  207. package/website/dev.sh +53 -0
  208. package/website/docker-compose.dev.yml +36 -0
  209. package/website/lib/version.ts +1 -1
  210. package/website/lib/versions.json +45 -20
  211. package/website/package.json +1 -1
  212. package/website/styles/_spacing.scss +453 -0
  213. package/website/styles/_tokens.scss +245 -0
  214. package/website/styles/_typography.scss +361 -0
  215. package/website/styles/_variables.scss +270 -19
  216. package/website/tailwind.config.ts +113 -79
  217. package/.kiro/specs/agent-buildkit-templates/design.md +0 -495
  218. package/.kiro/specs/agent-buildkit-templates/requirements.md +0 -165
  219. package/.kiro/specs/kiro-ide-supercharger/README.md +0 -202
  220. package/.kiro/specs/kiro-ide-supercharger/design.md +0 -1005
  221. package/.kiro/specs/kiro-ide-supercharger/requirements.md +0 -141
  222. package/.kiro/specs/kiro-ide-supercharger/tasks.md +0 -507
  223. package/docs/issue-19-completion-summary.md +0 -648
  224. package/docs/issue-19-validation.md +0 -351
  225. package/website/content/docs/Examples.md +0 -71
  226. package/website/content/docs/OpenAPI-Extensions.md +0 -934
  227. package/website/content/docs/core-concepts/Project-Structure.md +0 -348
  228. package/website/content/docs/examples/Migration-Guides.md +0 -214
  229. package/website/content/docs/for-audiences/Architects.md +0 -224
  230. package/website/content/docs/for-audiences/Developers.md +0 -220
  231. package/website/content/docs/for-audiences/Enterprises.md +0 -256
  232. package/website/content/docs/getting-started/5-Minute-Overview.md +0 -85
  233. package/website/content/docs/getting-started/First-Agent.md +0 -196
  234. package/website/content/docs/getting-started/Hello-World.md +0 -184
  235. package/website/content/docs/migration-guides/00-INDEX.md +0 -76
  236. package/website/content/docs/migration-guides/README.md +0 -133
  237. /package/dist/spec/v0.2.4/{ossa-0.2.4-dev.yaml → ossa-0.2.4.yaml} +0 -0
  238. /package/spec/v0.2.4/{ossa-0.2.4-dev.yaml → ossa-0.2.4.yaml} +0 -0
@@ -0,0 +1,324 @@
1
+ # AgentGraph Resource Specification
2
+
3
+ **Version:** v0.2.7
4
+ **Status:** Draft
5
+ **Type:** Core Resource
6
+
7
+ ## Overview
8
+
9
+ AgentGraph is a resource type for defining multi-agent compositions as directed graphs. It enables orchestration of multiple agents with explicit data flow and conditional routing.
10
+
11
+ ## Motivation
12
+
13
+ Single agents are limited in capability. Complex tasks require:
14
+ - Multiple specialized agents working together
15
+ - Data flow between agents
16
+ - Conditional routing based on outputs
17
+ - Error handling across agent boundaries
18
+
19
+ AgentGraph provides a declarative way to compose agents into workflows.
20
+
21
+ ## Resource Structure
22
+
23
+ ```yaml
24
+ apiVersion: ossa.ai/v0.2.7
25
+ kind: AgentGraph
26
+ metadata:
27
+ name: string
28
+ version: string
29
+ description: string
30
+ spec:
31
+ agents: Agent[]
32
+ edges: Edge[]
33
+ entrypoint: string
34
+ errorHandling: ErrorHandling
35
+ ```
36
+
37
+ ## Fields
38
+
39
+ ### metadata
40
+
41
+ Standard OSSA metadata block.
42
+
43
+ **Required fields:**
44
+ - `name`: Unique identifier for the graph
45
+ - `version`: Semantic version
46
+
47
+ ### spec.agents
48
+
49
+ Array of agent definitions within the graph.
50
+
51
+ **Fields:**
52
+ - `id` (required): Unique identifier within graph
53
+ - `agentRef` (required): Reference to Agent resource
54
+ - `config` (optional): Agent-specific configuration overrides
55
+
56
+ **Example:**
57
+ ```yaml
58
+ agents:
59
+ - id: analyzer
60
+ agentRef: sentiment-analyzer
61
+ config:
62
+ threshold: 0.8
63
+ - id: responder
64
+ agentRef: response-generator
65
+ ```
66
+
67
+ ### spec.edges
68
+
69
+ Array defining data flow between agents.
70
+
71
+ **Fields:**
72
+ - `from` (required): Source agent ID
73
+ - `to` (required): Target agent ID
74
+ - `condition` (optional): Boolean expression for conditional routing
75
+ - `transform` (optional): Data transformation expression
76
+
77
+ **Example:**
78
+ ```yaml
79
+ edges:
80
+ - from: analyzer
81
+ to: responder
82
+ - from: analyzer
83
+ to: escalation
84
+ condition: output.sentiment < 0.3
85
+ ```
86
+
87
+ ### spec.entrypoint
88
+
89
+ ID of the starting agent. Graph execution begins here.
90
+
91
+ ### spec.errorHandling
92
+
93
+ Error handling strategy for the graph.
94
+
95
+ **Fields:**
96
+ - `strategy`: `fail-fast` | `continue` | `retry`
97
+ - `maxRetries`: Maximum retry attempts (for retry strategy)
98
+ - `fallbackAgent`: Agent ID to invoke on error
99
+
100
+ ## Execution Model
101
+
102
+ ### Sequential Execution
103
+
104
+ Agents execute in topological order based on edges.
105
+
106
+ ```yaml
107
+ edges:
108
+ - from: A
109
+ to: B
110
+ - from: B
111
+ to: C
112
+ ```
113
+
114
+ Execution: A → B → C
115
+
116
+ ### Parallel Execution
117
+
118
+ Agents with no dependencies execute in parallel.
119
+
120
+ ```yaml
121
+ edges:
122
+ - from: A
123
+ to: B
124
+ - from: A
125
+ to: C
126
+ - from: B
127
+ to: D
128
+ - from: C
129
+ to: D
130
+ ```
131
+
132
+ Execution: A → (B || C) → D
133
+
134
+ ### Conditional Routing
135
+
136
+ Edges with conditions enable branching.
137
+
138
+ ```yaml
139
+ edges:
140
+ - from: classifier
141
+ to: pathA
142
+ condition: output.category == 'A'
143
+ - from: classifier
144
+ to: pathB
145
+ condition: output.category == 'B'
146
+ ```
147
+
148
+ ### Data Flow
149
+
150
+ Output from source agent becomes input to target agent.
151
+
152
+ **Transformation:**
153
+ ```yaml
154
+ edges:
155
+ - from: extractor
156
+ to: formatter
157
+ transform: |
158
+ {
159
+ "data": output.extracted,
160
+ "format": "json"
161
+ }
162
+ ```
163
+
164
+ ## Error Handling
165
+
166
+ ### Fail-Fast (default)
167
+
168
+ Stop execution on first error.
169
+
170
+ ```yaml
171
+ errorHandling:
172
+ strategy: fail-fast
173
+ ```
174
+
175
+ ### Continue
176
+
177
+ Continue execution, skip failed agents.
178
+
179
+ ```yaml
180
+ errorHandling:
181
+ strategy: continue
182
+ ```
183
+
184
+ ### Retry
185
+
186
+ Retry failed agents up to maxRetries.
187
+
188
+ ```yaml
189
+ errorHandling:
190
+ strategy: retry
191
+ maxRetries: 3
192
+ ```
193
+
194
+ ### Fallback
195
+
196
+ Invoke fallback agent on error.
197
+
198
+ ```yaml
199
+ errorHandling:
200
+ strategy: fail-fast
201
+ fallbackAgent: error-handler
202
+ ```
203
+
204
+ ## Examples
205
+
206
+ ### Sequential Pipeline
207
+
208
+ ```yaml
209
+ apiVersion: ossa.ai/v0.2.7
210
+ kind: AgentGraph
211
+ metadata:
212
+ name: content-pipeline
213
+ version: 1.0.0
214
+ spec:
215
+ agents:
216
+ - id: researcher
217
+ agentRef: research-agent
218
+ - id: writer
219
+ agentRef: writing-agent
220
+ - id: editor
221
+ agentRef: editing-agent
222
+ edges:
223
+ - from: researcher
224
+ to: writer
225
+ - from: writer
226
+ to: editor
227
+ entrypoint: researcher
228
+ ```
229
+
230
+ ### Parallel Processing
231
+
232
+ ```yaml
233
+ apiVersion: ossa.ai/v0.2.7
234
+ kind: AgentGraph
235
+ metadata:
236
+ name: parallel-analysis
237
+ version: 1.0.0
238
+ spec:
239
+ agents:
240
+ - id: splitter
241
+ agentRef: data-splitter
242
+ - id: analyzer1
243
+ agentRef: sentiment-analyzer
244
+ - id: analyzer2
245
+ agentRef: entity-extractor
246
+ - id: merger
247
+ agentRef: result-merger
248
+ edges:
249
+ - from: splitter
250
+ to: analyzer1
251
+ - from: splitter
252
+ to: analyzer2
253
+ - from: analyzer1
254
+ to: merger
255
+ - from: analyzer2
256
+ to: merger
257
+ entrypoint: splitter
258
+ ```
259
+
260
+ ### Conditional Routing
261
+
262
+ ```yaml
263
+ apiVersion: ossa.ai/v0.2.7
264
+ kind: AgentGraph
265
+ metadata:
266
+ name: support-router
267
+ version: 1.0.0
268
+ spec:
269
+ agents:
270
+ - id: classifier
271
+ agentRef: intent-classifier
272
+ - id: technical
273
+ agentRef: technical-support
274
+ - id: billing
275
+ agentRef: billing-support
276
+ - id: general
277
+ agentRef: general-support
278
+ edges:
279
+ - from: classifier
280
+ to: technical
281
+ condition: output.intent == 'technical'
282
+ - from: classifier
283
+ to: billing
284
+ condition: output.intent == 'billing'
285
+ - from: classifier
286
+ to: general
287
+ condition: output.intent == 'general'
288
+ entrypoint: classifier
289
+ errorHandling:
290
+ strategy: fail-fast
291
+ fallbackAgent: general
292
+ ```
293
+
294
+ ## Validation Rules
295
+
296
+ 1. **Acyclic**: Graph MUST NOT contain cycles
297
+ 2. **Connected**: All agents MUST be reachable from entrypoint
298
+ 3. **Valid References**: All `agentRef` MUST reference existing Agent resources
299
+ 4. **Unique IDs**: Agent IDs MUST be unique within graph
300
+ 5. **Valid Edges**: Edge `from`/`to` MUST reference agent IDs in graph
301
+
302
+ ## Runtime Requirements
303
+
304
+ Implementations MUST:
305
+ - Validate graph structure before execution
306
+ - Execute agents in topological order
307
+ - Handle parallel execution where possible
308
+ - Evaluate conditions before edge traversal
309
+ - Apply transformations to data flow
310
+ - Implement specified error handling strategy
311
+
312
+ ## Future Considerations
313
+
314
+ - **Loops**: Support for iterative agent execution
315
+ - **Subgraphs**: Nested AgentGraph resources
316
+ - **Dynamic Routing**: Runtime edge creation
317
+ - **State Management**: Shared state across agents
318
+ - **Observability**: Built-in tracing and metrics
319
+
320
+ ## Related Resources
321
+
322
+ - [Agent Resource](./agent-definition.md)
323
+ - [Multi-Agent Composition](../examples/multi-agent/)
324
+ - [Error Handling](./error-handling.md)
@@ -0,0 +1,135 @@
1
+ apiVersion: ossa.ai/v0.2.7
2
+ kind: ResourceDefinition
3
+ metadata:
4
+ name: AgentGraph
5
+ version: 1.0.0
6
+ description: Multi-agent composition and orchestration resource
7
+
8
+ spec:
9
+ # AgentGraph defines a directed graph of agents with data flow
10
+ schema:
11
+ apiVersion:
12
+ type: string
13
+ pattern: ^ossa\.ai/v\d+\.\d+\.\d+$
14
+ required: true
15
+
16
+ kind:
17
+ type: string
18
+ enum: [AgentGraph]
19
+ required: true
20
+
21
+ metadata:
22
+ type: object
23
+ required: true
24
+ properties:
25
+ name:
26
+ type: string
27
+ description: Unique identifier for the agent graph
28
+ version:
29
+ type: string
30
+ pattern: ^\d+\.\d+\.\d+$
31
+ description:
32
+ type: string
33
+
34
+ spec:
35
+ type: object
36
+ required: true
37
+ properties:
38
+ agents:
39
+ type: array
40
+ description: List of agents in the graph
41
+ items:
42
+ type: object
43
+ properties:
44
+ id:
45
+ type: string
46
+ description: Unique ID within graph
47
+ agentRef:
48
+ type: string
49
+ description: Reference to Agent resource
50
+ config:
51
+ type: object
52
+ description: Agent-specific configuration
53
+
54
+ edges:
55
+ type: array
56
+ description: Data flow between agents
57
+ items:
58
+ type: object
59
+ properties:
60
+ from:
61
+ type: string
62
+ description: Source agent ID
63
+ to:
64
+ type: string
65
+ description: Target agent ID
66
+ condition:
67
+ type: string
68
+ description: Optional condition for edge traversal
69
+ transform:
70
+ type: string
71
+ description: Optional data transformation
72
+
73
+ entrypoint:
74
+ type: string
75
+ description: Starting agent ID
76
+
77
+ errorHandling:
78
+ type: object
79
+ properties:
80
+ strategy:
81
+ type: string
82
+ enum: [fail-fast, continue, retry]
83
+ maxRetries:
84
+ type: integer
85
+ fallbackAgent:
86
+ type: string
87
+
88
+ examples:
89
+ - name: Sequential Pipeline
90
+ description: Simple sequential agent pipeline
91
+ yaml: |
92
+ apiVersion: ossa.ai/v0.2.7
93
+ kind: AgentGraph
94
+ metadata:
95
+ name: content-pipeline
96
+ version: 1.0.0
97
+ spec:
98
+ agents:
99
+ - id: researcher
100
+ agentRef: research-agent
101
+ - id: writer
102
+ agentRef: writing-agent
103
+ - id: editor
104
+ agentRef: editing-agent
105
+ edges:
106
+ - from: researcher
107
+ to: writer
108
+ - from: writer
109
+ to: editor
110
+ entrypoint: researcher
111
+
112
+ - name: Conditional Routing
113
+ description: Route based on agent output
114
+ yaml: |
115
+ apiVersion: ossa.ai/v0.2.7
116
+ kind: AgentGraph
117
+ metadata:
118
+ name: support-router
119
+ version: 1.0.0
120
+ spec:
121
+ agents:
122
+ - id: classifier
123
+ agentRef: intent-classifier
124
+ - id: technical
125
+ agentRef: technical-support
126
+ - id: billing
127
+ agentRef: billing-support
128
+ edges:
129
+ - from: classifier
130
+ to: technical
131
+ condition: output.intent == 'technical'
132
+ - from: classifier
133
+ to: billing
134
+ condition: output.intent == 'billing'
135
+ entrypoint: classifier
@@ -0,0 +1,37 @@
1
+ # OSSA Brand Overview
2
+
3
+ > Version 1.0.0 | Last Updated: November 2025
4
+
5
+ ## Mission
6
+
7
+ **Make AI agents interoperable across all platforms and frameworks.**
8
+
9
+ OSSA (Open Standard for Scalable AI Agents) provides a vendor-neutral specification standard that enables AI agents to communicate and collaborate seamlessly.
10
+
11
+ ## Vision
12
+
13
+ **Become the OpenAPI for AI agents** - the universally adopted standard for defining, deploying, and connecting autonomous AI systems.
14
+
15
+ ## Core Values
16
+
17
+ ### 1. Open & Vendor-Neutral
18
+ Community-driven, no vendor lock-in, Apache 2.0 license
19
+
20
+ ### 2. Interoperable
21
+ Common language across frameworks, runtime-independent
22
+
23
+ ### 3. Trustworthy
24
+ Compliance-ready, security built-in, enterprise-grade
25
+
26
+ ### 4. Simple & Practical
27
+ Clear specification, production-ready implementations
28
+
29
+ ## Key Messages
30
+
31
+ **Primary:** "The OpenAPI for AI Agents"
32
+
33
+ **For Enterprises:** Deploy anywhere, switch frameworks anytime, maintain compliance always
34
+
35
+ **For Developers:** Write once, deploy anywhere - portable and future-proof
36
+
37
+ **For Framework Builders:** Build on an open standard
@@ -0,0 +1,43 @@
1
+ # OSSA Logo Usage Guidelines
2
+
3
+ > Version 1.0.0 | Last Updated: November 2025
4
+
5
+ ## Primary Logo
6
+
7
+ Dynamic gradient-based mark representing interconnected AI agents.
8
+
9
+ **Location:** `/website/public/brand/ossa-logo.svg`
10
+
11
+ **Colors:** Gradient from Cyan Blue (#1CB9ED) → Deep Purple (#4A3ECD) → Light Purple (#9060EA)
12
+
13
+ ## Logo Variations
14
+
15
+ - **Full Color:** White/light backgrounds
16
+ - **Monochrome White:** Dark backgrounds (#FFFFFF)
17
+ - **Monochrome Dark:** Light backgrounds, print (#2D1B69)
18
+ - **Grayscale:** Print only (#374151)
19
+
20
+ ## Minimum Sizes
21
+
22
+ - **Digital:** 120px width min (180px recommended)
23
+ - **Print:** 1 inch min (1.5 inches recommended)
24
+ - **Icon:** 16px, 32px, 64px, 128px
25
+
26
+ ## Clear Space
27
+
28
+ Maintain clear space = **0.5× logo height** on all sides
29
+
30
+ ## Incorrect Usage
31
+
32
+ ❌ Don't change colors
33
+ ❌ Don't distort/stretch
34
+ ❌ Don't add effects
35
+ ❌ Don't modify
36
+ ❌ Don't use low-quality
37
+
38
+ ## Background Guidelines
39
+
40
+ ✅ White, light gray, light blue, dark purple, black
41
+ ❌ Bright colors, busy patterns, low-contrast
42
+
43
+ **Rule:** 4.5:1 minimum contrast ratio
@@ -0,0 +1,70 @@
1
+ # OSSA Color Palette
2
+
3
+ > Version 1.0.0 | Last Updated: November 2025
4
+
5
+ ## Primary Brand Colors
6
+
7
+ ### Deep Purple (Primary)
8
+ **Base:** `#4A3ECD`
9
+ **Usage:** Primary actions, branding, emphasis
10
+ **Scale:** 50-950 (see full guide)
11
+
12
+ ### Cyan Blue (Secondary)
13
+ **Base:** `#1CB9ED`
14
+ **Usage:** Secondary actions, accents, gradients
15
+ **Scale:** 50-950
16
+
17
+ ### Light Purple (Accent)
18
+ **Base:** `#9060EA`
19
+ **Usage:** Decorative accents, gradient endpoints
20
+ **Scale:** 50-950
21
+
22
+ ### Dark Purple (Depth)
23
+ **Base:** `#2D1B69`
24
+ **Usage:** Dark backgrounds, dark mode, contrast
25
+ **Scale:** 50-950
26
+
27
+ ## Semantic Colors
28
+
29
+ - **Success:** `#10B981` (Green)
30
+ - **Warning:** `#F59E0B` (Amber)
31
+ - **Error:** `#EF4444` (Red)
32
+ - **Info:** `#06B6D4` (Cyan)
33
+
34
+ ## Neutrals (Grays)
35
+
36
+ **Scale:** `#F9FAFB` (50) to `#111827` (900)
37
+
38
+ **Common Uses:**
39
+ - Primary text: Gray-700 (#374151) or Gray-900
40
+ - Secondary text: Gray-600 (#4B5563)
41
+ - Borders: Gray-200 (#E5E7EB) or Gray-300
42
+ - Backgrounds: White, Gray-50, Gray-100
43
+
44
+ ## Gradients
45
+
46
+ ### Brand Gradient
47
+ ```css
48
+ background: linear-gradient(135deg, #1CB9ED 0%, #1CB9ED 40%, #4A3ECD 70%, #9060EA 100%);
49
+ ```
50
+
51
+ ### Hero Gradient
52
+ ```css
53
+ background: linear-gradient(135deg, #1CB9ED 0%, #1CB9ED 35%, #4A3ECD 65%, #9060EA 100%);
54
+ ```
55
+
56
+ ## Accessibility
57
+
58
+ All combinations meet WCAG AA minimum (AAA preferred):
59
+ - Normal text: 4.5:1 minimum (7:1 target)
60
+ - Large text: 3:1 minimum (4.5:1 target)
61
+ - UI components: 3:1 minimum
62
+
63
+ **White text on:**
64
+ - Primary-500+: ✅ AAA (7.5:1)
65
+ - Secondary-600+: ✅ AA (4.7:1)
66
+ - Dark Purple-700+: ✅ AAA (10:1+)
67
+
68
+ **Black text on:**
69
+ - Gray-50 to Gray-300: ✅ AAA (8:1+)
70
+ - Primary-50 to Primary-400: ✅ AAA (7:1+)
@@ -0,0 +1,82 @@
1
+ # OSSA Typography Guidelines
2
+
3
+ > Version 1.0.0 | Last Updated: November 2025
4
+
5
+ ## Font Families
6
+
7
+ ### Primary: Inter (Sans-serif)
8
+ **Usage:** UI, headings, body text, marketing
9
+ **Weights:** 400 (Regular), 500 (Medium), 600 (Semi-Bold), 700 (Bold), 800 (Extra-Bold)
10
+ **Why:** Exceptional legibility, optimized for screens, 200+ languages
11
+
12
+ ### Monospace: JetBrains Mono
13
+ **Usage:** Code blocks, inline code, technical content
14
+ **Weights:** 400 (Regular), 500 (Medium), 600 (Semi-Bold)
15
+ **Why:** Developer-focused, excellent ligatures, clear character distinction
16
+
17
+ ## Type Scale
18
+
19
+ | Element | Size | Line Height | Weight | Color |
20
+ |---------|------|-------------|--------|-------|
21
+ | **Display** | 72px (4.5rem) | 1.1 | 800 | Gray-900 or Gradient |
22
+ | **H1** | 56px (3.5rem) | 1.2 | 700 | Gray-900 or Primary-500 |
23
+ | **H2** | 40px (2.5rem) | 1.3 | 700 | Gray-900 |
24
+ | **H3** | 32px (2rem) | 1.4 | 600 | Gray-900 |
25
+ | **H4** | 24px (1.5rem) | 1.5 | 600 | Gray-800 |
26
+ | **H5** | 20px (1.25rem) | 1.5 | 600 | Gray-800 |
27
+ | **H6** | 18px (1.125rem) | 1.5 | 600 | Gray-700 |
28
+ | **Body** | 16px (1rem) | 1.6 | 400 | Gray-700 |
29
+ | **Body Large** | 18px (1.125rem) | 1.6 | 400 | Gray-700 |
30
+ | **Small** | 14px (0.875rem) | 1.5 | 400 | Gray-600 |
31
+ | **Extra Small** | 12px (0.75rem) | 1.5 | 400 | Gray-500 |
32
+
33
+ ## Letter Spacing
34
+
35
+ - **Display:** -0.02em (tighter for large sizes)
36
+ - **H1:** -0.01em (slightly tighter)
37
+ - **H2-H6, Body:** 0 (normal)
38
+ - **All Caps:** 0.05em (improve readability)
39
+
40
+ ## Code Typography
41
+
42
+ ### Inline Code
43
+ - Font: JetBrains Mono, 0.875em
44
+ - Color: Primary-700 (#322598)
45
+ - Background: Primary-50 (#F5F4FD)
46
+ - Padding: 0.2em 0.4em
47
+ - Border Radius: 4px
48
+
49
+ ### Code Blocks
50
+ - Font: JetBrains Mono, 14px (0.875rem)
51
+ - Color: #D4D4D4 (light gray on dark)
52
+ - Background: #1E1E1E (dark gray)
53
+ - Line Height: 1.6
54
+ - Padding: 16px
55
+ - Border Radius: 8px
56
+
57
+ ## Responsive Typography
58
+
59
+ **Mobile (< 768px):**
60
+ - Display: 40px
61
+ - H1: 36px
62
+ - H2: 28px
63
+
64
+ **Tablet (768-1279px):**
65
+ - Display: 56px
66
+ - H1: 48px
67
+ - H2: 32px
68
+
69
+ **Desktop (1280px+):**
70
+ - Use full scale (above)
71
+
72
+ ## Accessibility
73
+
74
+ ✅ Line height: 1.5 minimum for body (we use 1.6)
75
+ ✅ Contrast: All text meets WCAG AA minimum (AAA preferred)
76
+ ✅ Font size: Never below 12px (prefer 14px minimum)
77
+ ✅ Zoom: Support up to 200% without loss of functionality
78
+
79
+ **Text Contrast:**
80
+ - Primary text: Gray-700 on white (10.5:1 AAA)
81
+ - Secondary text: Gray-600 on white (7.4:1 AAA)
82
+ - Links: Primary-500 on white (6.1:1 AA)