@bluefly/openstandardagents 0.3.0 → 0.3.1

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 (87) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/README.md +58 -218
  3. package/dist/cli/commands/diff.command.d.ts +7 -0
  4. package/dist/cli/commands/diff.command.d.ts.map +1 -0
  5. package/dist/cli/commands/diff.command.js +181 -0
  6. package/dist/cli/commands/diff.command.js.map +1 -0
  7. package/dist/cli/commands/docs.command.d.ts +7 -0
  8. package/dist/cli/commands/docs.command.d.ts.map +1 -0
  9. package/dist/cli/commands/docs.command.js +274 -0
  10. package/dist/cli/commands/docs.command.js.map +1 -0
  11. package/dist/cli/commands/lint.command.d.ts +7 -0
  12. package/dist/cli/commands/lint.command.d.ts.map +1 -0
  13. package/dist/cli/commands/lint.command.js +342 -0
  14. package/dist/cli/commands/lint.command.js.map +1 -0
  15. package/dist/cli/commands/serve.command.d.ts +7 -0
  16. package/dist/cli/commands/serve.command.d.ts.map +1 -0
  17. package/dist/cli/commands/serve.command.js +232 -0
  18. package/dist/cli/commands/serve.command.js.map +1 -0
  19. package/dist/cli/index.js +4 -0
  20. package/dist/cli/index.js.map +1 -1
  21. package/dist/di-container.d.ts.map +1 -1
  22. package/dist/di-container.js +3 -0
  23. package/dist/di-container.js.map +1 -1
  24. package/dist/services/git.service.d.ts +40 -0
  25. package/dist/services/git.service.d.ts.map +1 -0
  26. package/dist/services/git.service.js +122 -0
  27. package/dist/services/git.service.js.map +1 -0
  28. package/dist/spec/v0.3.1/UNIFIED-SCHEMA.md +120 -0
  29. package/dist/spec/v0.3.1/adapters/drupal.md +541 -0
  30. package/dist/spec/v0.3.1/adapters/symfony.md +659 -0
  31. package/dist/spec/v0.3.1/agent-test.schema.json +75 -0
  32. package/dist/spec/v0.3.1/examples/drupal-content-writer.ossa.yaml +110 -0
  33. package/dist/spec/v0.3.1/examples/drupal-moderation-assistant.ossa.yaml +96 -0
  34. package/dist/spec/v0.3.1/examples/quick-wins/complete-agent-with-quick-wins.ossa.yaml +144 -0
  35. package/dist/spec/v0.3.1/extensions/drupal.md +417 -0
  36. package/dist/spec/v0.3.1/ossa-0.3.0.schema.json +2787 -0
  37. package/dist/spec/v0.3.1/ossa-0.3.1.schema.json +2806 -0
  38. package/dist/spec/v0.3.1/protocols/sse.md +494 -0
  39. package/dist/spec/v0.3.1/protocols/webrtc.md +600 -0
  40. package/dist/spec/v0.3.1/protocols/websocket.md +362 -0
  41. package/dist/spec/v0.3.1/schemas/agent-unified.yaml +165 -0
  42. package/dist/spec/v0.3.1/schemas/capabilities.yaml +102 -0
  43. package/dist/spec/v0.3.1/schemas/functions.yaml +75 -0
  44. package/dist/spec/v0.3.1/schemas/messaging/channel.schema.json +245 -0
  45. package/dist/spec/v0.3.1/schemas/messaging/delivery-receipt.schema.json +192 -0
  46. package/dist/spec/v0.3.1/schemas/messaging/message.schema.json +205 -0
  47. package/dist/spec/v0.3.1/schemas/messaging/subscription.schema.json +214 -0
  48. package/dist/spec/v0.3.1/schemas/runtime.yaml +102 -0
  49. package/dist/spec/v0.3.1/schemas/taxonomy.yaml +533 -0
  50. package/dist/spec/v0.3.1/schemas/unified-llm.yaml +91 -0
  51. package/dist/spec/v0.3.1/taxonomy.yaml +256 -0
  52. package/dist/testing/fixtures.d.ts.map +1 -1
  53. package/dist/testing/fixtures.js +3 -2
  54. package/dist/testing/fixtures.js.map +1 -1
  55. package/package.json +3 -31
  56. package/spec/v0.3.1/UNIFIED-SCHEMA.md +120 -0
  57. package/spec/v0.3.1/adapters/drupal.md +541 -0
  58. package/spec/v0.3.1/adapters/symfony.md +659 -0
  59. package/spec/v0.3.1/agent-test.schema.json +75 -0
  60. package/spec/v0.3.1/examples/drupal-content-writer.ossa.yaml +110 -0
  61. package/spec/v0.3.1/examples/drupal-moderation-assistant.ossa.yaml +96 -0
  62. package/spec/v0.3.1/examples/quick-wins/complete-agent-with-quick-wins.ossa.yaml +144 -0
  63. package/spec/v0.3.1/extensions/drupal.md +417 -0
  64. package/spec/v0.3.1/ossa-0.3.0.schema.json +2787 -0
  65. package/spec/v0.3.1/ossa-0.3.1.schema.json +2806 -0
  66. package/spec/v0.3.1/protocols/sse.md +494 -0
  67. package/spec/v0.3.1/protocols/webrtc.md +600 -0
  68. package/spec/v0.3.1/protocols/websocket.md +362 -0
  69. package/spec/v0.3.1/schemas/agent-unified.yaml +165 -0
  70. package/spec/v0.3.1/schemas/capabilities.yaml +102 -0
  71. package/spec/v0.3.1/schemas/functions.yaml +75 -0
  72. package/spec/v0.3.1/schemas/messaging/channel.schema.json +245 -0
  73. package/spec/v0.3.1/schemas/messaging/delivery-receipt.schema.json +192 -0
  74. package/spec/v0.3.1/schemas/messaging/message.schema.json +205 -0
  75. package/spec/v0.3.1/schemas/messaging/subscription.schema.json +214 -0
  76. package/spec/v0.3.1/schemas/runtime.yaml +102 -0
  77. package/spec/v0.3.1/schemas/taxonomy.yaml +533 -0
  78. package/spec/v0.3.1/schemas/unified-llm.yaml +91 -0
  79. package/spec/v0.3.1/taxonomy.yaml +256 -0
  80. package/dist/types/generated/ossa-0.3.0.types.d.ts +0 -316
  81. package/dist/types/generated/ossa-0.3.0.types.d.ts.map +0 -1
  82. package/dist/types/generated/ossa-0.3.0.types.js +0 -8
  83. package/dist/types/generated/ossa-0.3.0.types.js.map +0 -1
  84. package/dist/types/generated/ossa-0.3.0.zod.d.ts +0 -17
  85. package/dist/types/generated/ossa-0.3.0.zod.d.ts.map +0 -1
  86. package/dist/types/generated/ossa-0.3.0.zod.js +0 -3
  87. package/dist/types/generated/ossa-0.3.0.zod.js.map +0 -1
@@ -0,0 +1,214 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://openstandardagents.org/schemas/v0.3.1/messaging/subscription.json",
4
+ "title": "OSSA Subscription Schema",
5
+ "description": "Schema for agent message subscriptions in OSSA v0.3.1",
6
+ "type": "object",
7
+ "required": [
8
+ "channel",
9
+ "handler"
10
+ ],
11
+ "properties": {
12
+ "channel": {
13
+ "type": "string",
14
+ "description": "Channel name or pattern (supports wildcards)",
15
+ "pattern": "^agents\\.(([a-z0-9-]+|\\*)\\.)+([a-z0-9-]+|#)$",
16
+ "minLength": 3,
17
+ "maxLength": 256,
18
+ "examples": [
19
+ "agents.tasks.assigned",
20
+ "agents.*.completed",
21
+ "agents.#"
22
+ ]
23
+ },
24
+ "schema": {
25
+ "type": "string",
26
+ "description": "Expected message schema for validation",
27
+ "examples": [
28
+ "TaskAssigned",
29
+ "TaskCompleted"
30
+ ]
31
+ },
32
+ "handler": {
33
+ "type": "string",
34
+ "description": "Handler function name in agent implementation",
35
+ "pattern": "^[a-zA-Z_][a-zA-Z0-9_]*$",
36
+ "examples": [
37
+ "handleTaskAssigned",
38
+ "onTaskCompleted",
39
+ "processMessage"
40
+ ]
41
+ },
42
+ "filter": {
43
+ "type": "object",
44
+ "description": "Message filter criteria (JSONPath-like syntax)",
45
+ "additionalProperties": true,
46
+ "examples": [
47
+ {
48
+ "payload.assignedTo": "ossa://agents/code-reviewer",
49
+ "payload.priority": "high"
50
+ }
51
+ ]
52
+ },
53
+ "priority": {
54
+ "type": "string",
55
+ "enum": ["low", "normal", "high", "critical"],
56
+ "default": "normal",
57
+ "description": "Subscription processing priority"
58
+ },
59
+ "config": {
60
+ "$ref": "#/definitions/SubscriptionConfig",
61
+ "description": "Subscription-specific configuration"
62
+ },
63
+ "metadata": {
64
+ "type": "object",
65
+ "description": "Custom subscription metadata",
66
+ "additionalProperties": true
67
+ }
68
+ },
69
+ "additionalProperties": false,
70
+ "definitions": {
71
+ "SubscriptionConfig": {
72
+ "type": "object",
73
+ "description": "Subscription configuration options",
74
+ "properties": {
75
+ "autoAcknowledge": {
76
+ "type": "boolean",
77
+ "default": false,
78
+ "description": "Automatically acknowledge messages after handler completes"
79
+ },
80
+ "maxConcurrentMessages": {
81
+ "type": "integer",
82
+ "minimum": 1,
83
+ "maximum": 1000,
84
+ "default": 10,
85
+ "description": "Maximum concurrent message processing"
86
+ },
87
+ "prefetchCount": {
88
+ "type": "integer",
89
+ "minimum": 1,
90
+ "maximum": 1000,
91
+ "default": 10,
92
+ "description": "Number of messages to prefetch from broker"
93
+ },
94
+ "timeout": {
95
+ "type": "integer",
96
+ "minimum": 100,
97
+ "maximum": 300000,
98
+ "default": 30000,
99
+ "description": "Handler timeout in milliseconds"
100
+ },
101
+ "retryOnError": {
102
+ "type": "boolean",
103
+ "default": true,
104
+ "description": "Retry message on handler error"
105
+ },
106
+ "maxRetries": {
107
+ "type": "integer",
108
+ "minimum": 0,
109
+ "maximum": 100,
110
+ "default": 3,
111
+ "description": "Maximum retry attempts for failed handlers"
112
+ },
113
+ "retryBackoff": {
114
+ "type": "object",
115
+ "description": "Retry backoff configuration",
116
+ "properties": {
117
+ "strategy": {
118
+ "type": "string",
119
+ "enum": ["none", "linear", "exponential"],
120
+ "default": "exponential"
121
+ },
122
+ "initialDelay": {
123
+ "type": "integer",
124
+ "minimum": 100,
125
+ "maximum": 60000,
126
+ "default": 1000,
127
+ "description": "Initial retry delay in milliseconds"
128
+ },
129
+ "maxDelay": {
130
+ "type": "integer",
131
+ "minimum": 1000,
132
+ "maximum": 300000,
133
+ "default": 30000,
134
+ "description": "Maximum retry delay in milliseconds"
135
+ },
136
+ "multiplier": {
137
+ "type": "number",
138
+ "minimum": 1,
139
+ "maximum": 10,
140
+ "default": 2,
141
+ "description": "Backoff multiplier for exponential strategy"
142
+ }
143
+ },
144
+ "additionalProperties": false
145
+ },
146
+ "deadLetterQueue": {
147
+ "type": "boolean",
148
+ "default": true,
149
+ "description": "Send failed messages to DLQ after max retries"
150
+ },
151
+ "messageOrdering": {
152
+ "type": "string",
153
+ "enum": ["strict", "relaxed", "none"],
154
+ "default": "relaxed",
155
+ "description": "Message ordering guarantee"
156
+ }
157
+ },
158
+ "additionalProperties": false
159
+ }
160
+ },
161
+ "examples": [
162
+ {
163
+ "channel": "agents.tasks.assigned",
164
+ "schema": "TaskAssigned",
165
+ "handler": "handleTaskAssigned",
166
+ "filter": {
167
+ "payload.assignedTo": "ossa://agents/code-reviewer"
168
+ },
169
+ "priority": "high",
170
+ "config": {
171
+ "autoAcknowledge": false,
172
+ "maxConcurrentMessages": 5,
173
+ "prefetchCount": 10,
174
+ "timeout": 60000,
175
+ "retryOnError": true,
176
+ "maxRetries": 5,
177
+ "retryBackoff": {
178
+ "strategy": "exponential",
179
+ "initialDelay": 1000,
180
+ "maxDelay": 30000,
181
+ "multiplier": 2
182
+ },
183
+ "deadLetterQueue": true,
184
+ "messageOrdering": "strict"
185
+ }
186
+ },
187
+ {
188
+ "channel": "agents.*.completed",
189
+ "schema": "TaskCompleted",
190
+ "handler": "onAnyTaskCompleted",
191
+ "priority": "normal",
192
+ "config": {
193
+ "autoAcknowledge": true,
194
+ "maxConcurrentMessages": 20,
195
+ "timeout": 5000,
196
+ "retryOnError": false,
197
+ "messageOrdering": "none"
198
+ }
199
+ },
200
+ {
201
+ "channel": "agents.broadcast.shutdown",
202
+ "schema": "SystemShutdown",
203
+ "handler": "handleShutdown",
204
+ "priority": "critical",
205
+ "config": {
206
+ "autoAcknowledge": true,
207
+ "maxConcurrentMessages": 1,
208
+ "timeout": 10000,
209
+ "retryOnError": false,
210
+ "deadLetterQueue": false
211
+ }
212
+ }
213
+ ]
214
+ }
@@ -0,0 +1,102 @@
1
+ # OSSA v0.3.1 - Runtime Declaration Schema
2
+ # Multi-runtime compatibility: Google A2A, GitLab Duo, OSSA Mesh, MCP
3
+
4
+ $schema: http://json-schema.org/draft-07/schema#
5
+ $id: https://openstandardagents.org/schemas/v0.3.1/runtime.yaml
6
+
7
+ title: Agent Runtime Declaration
8
+ description: |
9
+ Declares which runtimes this agent supports and how it should be scheduled.
10
+ Enables portability across Google A2A, GitLab Duo, OSSA, and MCP.
11
+
12
+ type: object
13
+ required:
14
+ - type
15
+ - supports
16
+ properties:
17
+ type:
18
+ type: string
19
+ description: Runtime type
20
+ default: ${AGENT_RUNTIME:-unified}
21
+ enum:
22
+ - unified
23
+ - google-a2a
24
+ - gitlab-duo
25
+ - ossa-mesh
26
+ - mcp
27
+ - local
28
+
29
+ supports:
30
+ type: array
31
+ description: List of compatible runtimes
32
+ items:
33
+ type: string
34
+ enum:
35
+ - google-a2a
36
+ - gitlab-duo
37
+ - ossa-mesh
38
+ - mcp
39
+ - local-execution
40
+ - kubernetes
41
+ - serverless
42
+
43
+ scheduling:
44
+ type: object
45
+ description: Scheduling preferences
46
+ properties:
47
+ strategy:
48
+ type: string
49
+ default: ${AGENT_SCHEDULING:-fair}
50
+ enum:
51
+ - fair
52
+ - priority
53
+ - deadline
54
+ - cost-optimized
55
+ priority:
56
+ type: string
57
+ default: ${AGENT_PRIORITY:-normal}
58
+ enum:
59
+ - critical
60
+ - high
61
+ - normal
62
+ - low
63
+ - background
64
+ max_concurrent:
65
+ type: integer
66
+ description: Maximum concurrent executions
67
+ default: ${AGENT_MAX_CONCURRENT:-10}
68
+ timeout_seconds:
69
+ type: integer
70
+ description: Execution timeout
71
+ default: ${AGENT_TIMEOUT:-300}
72
+
73
+ resource_limits:
74
+ type: object
75
+ description: Resource constraints
76
+ properties:
77
+ memory_mb:
78
+ type: integer
79
+ default: ${AGENT_MEMORY_MB:-512}
80
+ cpu_millicores:
81
+ type: integer
82
+ default: ${AGENT_CPU_MILLICORES:-500}
83
+ gpu_required:
84
+ type: boolean
85
+ default: false
86
+
87
+ extensions:
88
+ type: array
89
+ description: External extensions (A2A compatible)
90
+ items:
91
+ type: object
92
+ required: [type, name]
93
+ properties:
94
+ type:
95
+ type: string
96
+ enum: [http, grpc, mcp, websocket, kafka]
97
+ name:
98
+ type: string
99
+ endpoint:
100
+ type: string
101
+ credentials_ref:
102
+ type: string