@bluefly/openstandardagents 0.4.6 → 0.4.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 (300) hide show
  1. package/.version.json +3 -3
  2. package/CHANGELOG.md +16 -0
  3. package/README.md +1 -0
  4. package/dist/.version.json +3 -3
  5. package/dist/adapters/mcp/converter.js +4 -3
  6. package/dist/adapters/npm/adapter.js +2 -1
  7. package/dist/adapters/openai-agents/adapter.js +1 -1
  8. package/dist/cli/commands/config.command.d.ts +7 -0
  9. package/dist/cli/commands/config.command.js +92 -0
  10. package/dist/cli/commands/migrate.command.js +1 -1
  11. package/dist/cli/commands/sign.command.d.ts +3 -0
  12. package/dist/cli/commands/sign.command.js +42 -0
  13. package/dist/cli/commands/skills.command.js +4 -6
  14. package/dist/config/cli-config.d.ts +33 -0
  15. package/dist/config/cli-config.js +107 -0
  16. package/dist/mcp-server/index.js +0 -0
  17. package/dist/package.json +8 -9
  18. package/dist/services/governance/cedar-provider.js +2 -1
  19. package/dist/services/release-automation/base-crud.service.d.ts +93 -0
  20. package/dist/services/release-automation/base-crud.service.js +68 -0
  21. package/dist/services/release-automation/generate-changelog.d.ts +7 -0
  22. package/dist/services/release-automation/generate-changelog.js +288 -0
  23. package/dist/services/release-automation/increment-dev-tag.d.ts +7 -0
  24. package/dist/services/release-automation/increment-dev-tag.js +160 -0
  25. package/dist/services/release-automation/index.d.ts +12 -0
  26. package/dist/services/release-automation/index.js +12 -0
  27. package/dist/services/release-automation/merge-request.service.d.ts +119 -0
  28. package/dist/services/release-automation/merge-request.service.js +212 -0
  29. package/dist/services/release-automation/milestone.service.d.ts +104 -0
  30. package/dist/services/release-automation/milestone.service.js +207 -0
  31. package/dist/services/release-automation/release-agent.service.d.ts +39 -0
  32. package/dist/services/release-automation/release-agent.service.js +43 -0
  33. package/dist/services/release-automation/release-buttons.d.ts +7 -0
  34. package/dist/services/release-automation/release-buttons.js +207 -0
  35. package/dist/services/release-automation/release.service.d.ts +118 -0
  36. package/dist/services/release-automation/release.service.js +207 -0
  37. package/dist/services/release-automation/schemas/release.schema.d.ts +299 -0
  38. package/dist/services/release-automation/schemas/release.schema.js +272 -0
  39. package/dist/services/release-automation/tag.service.d.ts +99 -0
  40. package/dist/services/release-automation/tag.service.js +183 -0
  41. package/dist/services/release-automation/webhook.service.d.ts +37 -0
  42. package/dist/services/release-automation/webhook.service.js +187 -0
  43. package/dist/skills/test-skill/README.md +36 -0
  44. package/dist/skills/test-skill/SKILL.md +31 -0
  45. package/dist/skills/test-skill/index.d.ts +31 -0
  46. package/dist/skills/test-skill/install.js +44 -0
  47. package/dist/skills/test-skill/package.json +36 -0
  48. package/dist/spec/reference/reference-agents/compliance-auditor/manifest.ossa.yaml +1 -1
  49. package/dist/spec/reference/reference-agents/doc-agent/manifest.ossa.yaml +1 -1
  50. package/dist/spec/reference/reference-agents/mr-reviewer/manifest.ossa.yaml +1 -1
  51. package/dist/spec/reference/reference-agents/ossa-validator-v0.3/manifest.ossa.yaml +1 -1
  52. package/dist/spec/reference/reference-agents/pipeline-fixer/manifest.ossa.yaml +1 -1
  53. package/dist/spec/reference/reference-agents/release-orchestrator/manifest.ossa.yaml +1 -1
  54. package/dist/spec/uadp/README.md +393 -0
  55. package/dist/spec/uadp/openapi.yaml +387 -0
  56. package/dist/spec/uadp/schemas/uadp-agents-response.schema.json +68 -0
  57. package/dist/spec/uadp/schemas/uadp-federation-response.schema.json +46 -0
  58. package/dist/spec/uadp/schemas/uadp-manifest.schema.json +82 -0
  59. package/dist/spec/uadp/schemas/uadp-skills-response.schema.json +72 -0
  60. package/dist/spec/v0.4/agent-card.schema.json +1 -1
  61. package/dist/spec/v0.4/agent.schema.json +15 -15
  62. package/dist/spec/v0.4/extensions/a2a/a2a.schema.json +1 -1
  63. package/dist/spec/v0.4/extensions/ag2/ag2.schema.json +1 -1
  64. package/dist/spec/v0.4/extensions/crewai/crewai.schema.json +1 -1
  65. package/dist/spec/v0.4/extensions/kagent/kagent.schema.json +1 -1
  66. package/dist/spec/v0.4/extensions/langchain/langchain.schema.json +1 -1
  67. package/dist/spec/v0.4/extensions/langgraph/langgraph.schema.json +1 -1
  68. package/dist/spec/v0.4/extensions/mcp/mcp.schema.json +1 -1
  69. package/dist/spec/v0.5/agent-card.schema.json +477 -0
  70. package/dist/spec/v0.5/agent.schema.json +1556 -0
  71. package/dist/spec/v0.5/conformance/profiles/baseline.json +19 -0
  72. package/dist/spec/v0.5/conformance/profiles/enterprise.json +20 -0
  73. package/dist/spec/v0.5/extensions/a2a/README.md +193 -0
  74. package/dist/spec/v0.5/extensions/a2a/a2a.schema.json +77 -0
  75. package/dist/spec/v0.5/extensions/ag2/ag2.schema.json +277 -0
  76. package/dist/spec/v0.5/extensions/cognition/cognition.schema.json +94 -0
  77. package/dist/spec/v0.5/extensions/cognition/thought-node.schema.json +80 -0
  78. package/dist/spec/v0.5/extensions/crewai/crewai.schema.json +256 -0
  79. package/dist/spec/v0.5/extensions/drupal/drupal.schema.json +318 -0
  80. package/dist/spec/v0.5/extensions/evals/evals.schema.json +597 -0
  81. package/dist/spec/v0.5/extensions/governance/governance-extension.yaml +161 -0
  82. package/dist/spec/v0.5/extensions/identity/identity.schema.json +302 -0
  83. package/dist/spec/v0.5/extensions/kagent/README.md +315 -0
  84. package/dist/spec/v0.5/extensions/kagent/kagent.schema.json +624 -0
  85. package/dist/spec/v0.5/extensions/langchain/langchain.schema.json +243 -0
  86. package/dist/spec/v0.5/extensions/langgraph/langgraph.schema.json +211 -0
  87. package/dist/spec/v0.5/extensions/mcp/README.md +276 -0
  88. package/dist/spec/v0.5/extensions/mcp/mcp.schema.json +84 -0
  89. package/dist/spec/v0.5/extensions/memory/memory.schema.json +7 -0
  90. package/dist/spec/v0.5/extensions/team/team.schema.json +304 -0
  91. package/dist/spec/v0.5/extensions/token-efficiency/token-efficiency.schema.json +47 -0
  92. package/dist/spec/v0.5/mcp.schema.json +1 -0
  93. package/dist/spec/v0.5/skill.schema.json +1 -0
  94. package/dist/spec/v0.5/validator.schema.json +282 -0
  95. package/dist/validation/error-codes.js +1 -1
  96. package/examples/a2a/agent-handoff.ossa.yaml +1 -1
  97. package/examples/a2a/service-discovery.ossa.yaml +1 -1
  98. package/examples/adapters/drupal-eca-mapping.yaml +1 -1
  99. package/examples/adapters/drupal-eca-task.yaml +1 -1
  100. package/examples/adapters/drupal-flowdrop-mapping.yaml +1 -1
  101. package/examples/adapters/drupal-maestro-mapping.yaml +1 -1
  102. package/examples/adapters/mistral-agent.yaml +1 -1
  103. package/examples/adapters/symfony-messenger-task.yaml +1 -1
  104. package/examples/adapters/symfony-messenger-workflow.yaml +1 -1
  105. package/examples/adk-integration/code-review-workflow.yml +1 -1
  106. package/examples/adk-integration/customer-support.yml +1 -1
  107. package/examples/adk-integration/data-pipeline.yml +1 -1
  108. package/examples/advanced/reasoning-agent.yaml +1 -1
  109. package/examples/advanced/workflows/hybrid-model-strategy.yaml +1 -1
  110. package/examples/agent-manifests/critics/critic-agent.yaml +1 -1
  111. package/examples/agent-manifests/governors/governor-agent.yaml +1 -1
  112. package/examples/agent-manifests/integrators/integrator-agent.yaml +1 -1
  113. package/examples/agent-manifests/judges/judge-agent.yaml +1 -1
  114. package/examples/agent-manifests/monitors/monitor-agent.yaml +1 -1
  115. package/examples/agent-manifests/orchestrators/orchestrator-agent.yaml +1 -1
  116. package/examples/agent-manifests/sample-compliant-agent.yaml +1 -1
  117. package/examples/agent-manifests/workers/worker-agent.yaml +1 -1
  118. package/examples/agent-taxonomy-example.ossa.yaml +1 -1
  119. package/examples/agents/01-customer-support-bot/agent.ossa.yaml +1 -1
  120. package/examples/agents/02-code-review-agent/agent.ossa.yaml +1 -1
  121. package/examples/agents/03-data-analysis-agent/agent.ossa.yaml +1 -1
  122. package/examples/agents/04-content-moderator/agent.ossa.yaml +1 -1
  123. package/examples/agents/05-sales-assistant/agent.ossa.yaml +1 -1
  124. package/examples/agents/06-devops-agent/agent.ossa.yaml +1 -1
  125. package/examples/agents/07-research-assistant/agent.ossa.yaml +1 -1
  126. package/examples/agents/08-email-triage-agent/agent.ossa.yaml +1 -1
  127. package/examples/agents/09-security-scanner/agent.ossa.yaml +1 -1
  128. package/examples/agents/10-meeting-assistant/agent.ossa.yaml +1 -1
  129. package/examples/agents/architecture-healer-enterprise.yaml +1 -1
  130. package/examples/agents/dependency-healer-npm.yaml +1 -1
  131. package/examples/agents/spec-healer-openapi.yaml +1 -1
  132. package/examples/agents/wiki-healer-production.yaml +1 -1
  133. package/examples/agents-md/monorepo-agent.ossa.yaml +1 -1
  134. package/examples/agentscope/react-assistant/README.md +111 -0
  135. package/examples/agentscope/react-assistant/agent.ossa.yaml +132 -0
  136. package/examples/agentscope/react-assistant/skills/code-analysis/SKILL.md +18 -0
  137. package/examples/agentscope/react-assistant/skills/question-answering/SKILL.md +18 -0
  138. package/examples/autonomous-evolution/self-evolving-agent.ossa.yaml +1 -1
  139. package/examples/bridges/.gitlab-ci.yml +2 -2
  140. package/examples/build-once-use-everywhere/agent.ossa.yaml +1 -1
  141. package/examples/claude-code/code-reviewer.ossa.yaml +1 -1
  142. package/examples/claude-code/ossa-validator.ossa.yaml +1 -1
  143. package/examples/common_npm/agent-router.ossa.yaml +1 -1
  144. package/examples/contracts/data-consumer.ossa.yaml +1 -1
  145. package/examples/contracts/data-producer-v2.ossa.yaml +1 -1
  146. package/examples/contracts/data-producer.ossa.yaml +1 -1
  147. package/examples/drupal/QUICKSTART.md +17 -3
  148. package/examples/drupal/ai_agents_agentscope/README.md +62 -0
  149. package/examples/drupal/ai_agents_agentscope/ai_agents_agentscope.info.yml +13 -0
  150. package/examples/drupal/ai_agents_agentscope/ai_agents_agentscope.services.yml +4 -0
  151. package/examples/drupal/ai_agents_agentscope/config/install/ai_agents_agentscope.settings.yml +3 -0
  152. package/examples/drupal/ai_agents_agentscope/config/schema/ai_agents_agentscope.schema.yml +14 -0
  153. package/examples/drupal/ai_agents_agentscope/src/AgentScopeRuntime.php +11 -0
  154. package/examples/drupal/ai_agents_agentscope/src/Plugin/AiAgent/AgentScopeAgent.php +10 -0
  155. package/examples/drupal/ai_agents_agentscope/src/Plugin/AiProvider/AgentScopeProvider.php +217 -0
  156. package/examples/drupal/ai_agents_agentscope/src/Plugin/Derivative/AgentScopeDeriver.php +10 -0
  157. package/examples/drupal/ai_agents_agentscope/src/Service/AgentScopeAdapter.php +9 -0
  158. package/examples/drupal/content-moderator.ossa.yaml +1 -1
  159. package/examples/drupal/gitlab-ml-recommender.ossa.yaml +1 -1
  160. package/examples/export/langchain/production-agent-with-memory/agent.ossa.yaml +1 -1
  161. package/examples/export/langchain/production-agent-with-tools/agent.ossa.yaml +1 -1
  162. package/examples/extensions/agents-md-advanced.yml +1 -1
  163. package/examples/extensions/agents-md-basic.yml +1 -1
  164. package/examples/extensions/agents-md-sync.yml +1 -1
  165. package/examples/extensions/agents-md-v1.yml +1 -1
  166. package/examples/extensions/drupal-v1.yml +1 -1
  167. package/examples/extensions/encryption-multi-provider.yaml +4 -4
  168. package/examples/extensions/kagent-v1.yml +1 -1
  169. package/examples/extensions/knowledge-sources.yaml +1 -1
  170. package/examples/extensions/mcp-full-featured.yaml +1 -1
  171. package/examples/getting-started/01-minimal-agent.ossa.yaml +1 -1
  172. package/examples/getting-started/02-agent-with-tools.ossa.yaml +1 -1
  173. package/examples/getting-started/03-agent-with-safety.ossa.yaml +1 -1
  174. package/examples/getting-started/04-agent-with-messaging.ossa.yaml +1 -1
  175. package/examples/getting-started/05-workflow-composition.ossa.yaml +1 -1
  176. package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
  177. package/examples/gitlab-agents/daily-code-scan/.gitlab-ci.yml +2 -2
  178. package/examples/gitlab-agents/duo-comment-responder/.gitlab-ci.yml +2 -2
  179. package/examples/gitlab-agents/mr-reviewer/.gitlab-ci.yml +2 -2
  180. package/examples/gitlab-agents/pipeline-auto-fix/.gitlab-ci.yml +2 -2
  181. package/examples/gitlab-agents/pre-commit-quality-check/.gitlab-ci.yml +2 -2
  182. package/examples/gitlab-agents/pre-push-validation/.gitlab-ci.yml +2 -2
  183. package/examples/hierarchical-agent.ossa.yaml +1 -1
  184. package/examples/infrastructure/token-rotation/manifest.ossa.yaml +1 -1
  185. package/examples/integration-patterns/agent-to-agent-orchestration.ossa.yaml +1 -1
  186. package/examples/kagent/compliance-validator.ossa.yaml +1 -1
  187. package/examples/kagent/cost-optimizer.ossa.yaml +1 -1
  188. package/examples/kagent/documentation-agent.ossa.yaml +1 -1
  189. package/examples/kagent/k8s-troubleshooter-v1.ossa.yaml +1 -1
  190. package/examples/kagent/k8s-troubleshooter.ossa.yaml +1 -1
  191. package/examples/kagent/security-scanner.ossa.yaml +1 -1
  192. package/examples/knowledge-graph/drupal-agent-with-kg.ossa.yaml +1 -1
  193. package/examples/mcp/browser-puppeteer.ossa.yaml +1 -1
  194. package/examples/mcp/database-mcp.ossa.yaml +1 -1
  195. package/examples/mcp/filesystem-mcp.ossa.yaml +1 -1
  196. package/examples/messaging/dependency-healer.ossa.yaml +1 -1
  197. package/examples/messaging/incident-responder.ossa.yaml +1 -1
  198. package/examples/messaging/routing-rules.ossa.yaml +1 -1
  199. package/examples/messaging/security-scanner.ossa.yaml +1 -1
  200. package/examples/migration-guides/from-langchain-to-ossa.yaml +4 -4
  201. package/examples/migrations/langchain/01-python-react-agent-after.ossa.yaml +1 -1
  202. package/examples/migrations/langchain/02-typescript-conversational-after.ossa.yaml +1 -1
  203. package/examples/migrations/langchain/03-sequential-chain-after.ossa.yaml +1 -1
  204. package/examples/migrations/langchain/04-config-based-after.ossa.yaml +1 -1
  205. package/examples/migrations/swarm-to-ossa/after-handoffs.ossa.yaml +6 -6
  206. package/examples/migrations/swarm-to-ossa/after-triage-agent.ossa.yaml +3 -3
  207. package/examples/mr-reviewer-with-governance.ossa.yaml +1 -1
  208. package/examples/multi-agent/conditional-router.ossa.yaml +1 -1
  209. package/examples/multi-agent/parallel-execution.ossa.yaml +1 -1
  210. package/examples/multi-agent/sequential-pipeline.ossa.yaml +1 -1
  211. package/examples/multi-agent-research-workflow.ossa.yaml +1 -1
  212. package/examples/multi-platform/single-manifest/agent.ossa.yaml +1 -1
  213. package/examples/observability/activity-stream-full.yaml +1 -1
  214. package/examples/openai/basic-agent.ossa.yaml +1 -1
  215. package/examples/ossa-templates/01-code-assistant.ossa.yaml +1 -1
  216. package/examples/ossa-templates/02-security-scanner.ossa.yaml +1 -1
  217. package/examples/ossa-templates/03-ci-pipeline.ossa.yaml +1 -1
  218. package/examples/ossa-templates/04-code-reviewer.ossa.yaml +1 -1
  219. package/examples/ossa-templates/05-doc-generator.ossa.yaml +1 -1
  220. package/examples/ossa-templates/06-compliance-validator.ossa.yaml +1 -1
  221. package/examples/ossa-templates/07-workflow-orchestrator.ossa.yaml +1 -1
  222. package/examples/ossa-templates/08-content-writer.ossa.yaml +1 -1
  223. package/examples/ossa-templates/09-test-generator.ossa.yaml +1 -1
  224. package/examples/ossa-templates/10-data-transformer.ossa.yaml +1 -1
  225. package/examples/ossa-templates/11-react-performance-expert.ossa.yaml +1 -1
  226. package/examples/ossa-templates/12-typescript-type-safety-expert.ossa.yaml +1 -1
  227. package/examples/ossa-templates/13-accessibility-champion.ossa.yaml +1 -1
  228. package/examples/ossa-templates/14-security-hardening-agent.ossa.yaml +1 -1
  229. package/examples/pipeline-agent.ossa.yaml +1 -1
  230. package/examples/production/document-analyzer-openai.yml +1 -1
  231. package/examples/production-ready/01-customer-support-bot/agent.ossa.yaml +1 -1
  232. package/examples/production-ready/02-code-review-agent/agent.ossa.yaml +1 -1
  233. package/examples/production-ready/03-data-analysis-agent/agent.ossa.yaml +1 -1
  234. package/examples/production-ready/04-content-moderator/agent.ossa.yaml +1 -1
  235. package/examples/production-ready/05-sales-assistant/agent.ossa.yaml +1 -1
  236. package/examples/production-ready/06-devops-agent/agent.ossa.yaml +1 -1
  237. package/examples/production-ready/07-research-assistant/agent.ossa.yaml +1 -1
  238. package/examples/production-ready/08-email-triage-agent/agent.ossa.yaml +1 -1
  239. package/examples/production-ready/09-security-scanner/agent.ossa.yaml +1 -1
  240. package/examples/production-ready/10-meeting-assistant/agent.ossa.yaml +1 -1
  241. package/examples/quickstart/support-agent.ossa.yaml +1 -1
  242. package/examples/real-world/gitlab-cicd-optimizer.ossa.yaml +1 -1
  243. package/examples/real-world/rag-documentation-assistant.ossa.yaml +1 -1
  244. package/examples/registry/agents/code-reviewer/agent.yaml +1 -1
  245. package/examples/registry/agents/security-scanner/agent.yaml +1 -1
  246. package/examples/runtime-adapters/bedrock-claude-example.ossa.yaml +1 -1
  247. package/examples/schema/reusable-components.yaml +1 -1
  248. package/examples/showcase/ci-pipeline.ossa.yaml +1 -1
  249. package/examples/showcase/code-assistant.ossa.yaml +1 -1
  250. package/examples/showcase/code-reviewer.ossa.yaml +1 -1
  251. package/examples/showcase/compliance-checker.ossa.yaml +1 -1
  252. package/examples/showcase/compliance-validator.ossa.yaml +1 -1
  253. package/examples/showcase/content-writer.ossa.yaml +1 -1
  254. package/examples/showcase/customer-support.ossa.yaml +1 -1
  255. package/examples/showcase/data-processing-pipeline.ossa.yaml +1 -1
  256. package/examples/showcase/data-transformer.ossa.yaml +1 -1
  257. package/examples/showcase/doc-generator.ossa.yaml +1 -1
  258. package/examples/showcase/full-power-agent.ossa.yaml +1 -1
  259. package/examples/showcase/security-scanner-enhanced.ossa.yaml +1 -1
  260. package/examples/showcase/security-scanner.ossa.yaml +1 -1
  261. package/examples/showcase/team-leader.ossa.yaml +1 -1
  262. package/examples/showcase/test-generator.ossa.yaml +1 -1
  263. package/examples/showcase/workflow-orchestrator.ossa.yaml +1 -1
  264. package/examples/skills-example.ossa.yaml +1 -1
  265. package/examples/swarm-agent.ossa.yaml +1 -1
  266. package/examples/tasks/batch-email-sender.yaml +1 -1
  267. package/examples/tasks/data-transform.yaml +1 -1
  268. package/examples/tasks/publish-content.yaml +1 -1
  269. package/examples/team-agent.ossa.yaml +1 -1
  270. package/examples/templates/ossa-compliance.yaml +1 -1
  271. package/examples/unified/security-scanner.ossa.yaml +1 -1
  272. package/examples/workflows/batch-email-campaign.yaml +1 -1
  273. package/examples/workflows/content-review-publish.yaml +1 -1
  274. package/examples/workflows/simple-etl.yaml +1 -1
  275. package/package.json +6 -7
  276. package/spec/reference/reference-agents/compliance-auditor/manifest.ossa.yaml +1 -1
  277. package/spec/reference/reference-agents/doc-agent/manifest.ossa.yaml +1 -1
  278. package/spec/reference/reference-agents/mr-reviewer/manifest.ossa.yaml +1 -1
  279. package/spec/reference/reference-agents/ossa-validator-v0.3/manifest.ossa.yaml +1 -1
  280. package/spec/reference/reference-agents/pipeline-fixer/manifest.ossa.yaml +1 -1
  281. package/spec/reference/reference-agents/release-orchestrator/manifest.ossa.yaml +1 -1
  282. package/spec/v0.4/agent-card.schema.json +1 -1
  283. package/spec/v0.4/agent.schema.json +84 -15
  284. package/spec/v0.4/extensions/a2a/a2a.schema.json +1 -1
  285. package/spec/v0.4/extensions/ag2/ag2.schema.json +1 -1
  286. package/spec/v0.4/extensions/crewai/crewai.schema.json +1 -1
  287. package/spec/v0.4/extensions/kagent/kagent.schema.json +1 -1
  288. package/spec/v0.4/extensions/langchain/langchain.schema.json +1 -1
  289. package/spec/v0.4/extensions/langgraph/langgraph.schema.json +1 -1
  290. package/spec/v0.4/extensions/mcp/mcp.schema.json +1 -1
  291. package/templates/agent-types/claude-agent.ossa.yaml +1 -1
  292. package/templates/agent-types/kagent.ossa.yaml +1 -1
  293. package/templates/agent-types/langchain-agent.ossa.yaml +1 -1
  294. package/templates/agent-types/openapi-agent.ossa.yaml +1 -1
  295. package/templates/agent-types/swarm-agents.ossa.yaml +1 -1
  296. package/templates/ci-cd/gitlab-ci.deploy.yml +2 -2
  297. package/templates/validators/capability-compatibility.ossa.yaml +1 -1
  298. package/templates/validators/coordination-consistency.ossa.yaml +1 -1
  299. package/templates/validators/pattern-requirements.ossa.yaml +1 -1
  300. package/templates/validators/transport-compatibility.ossa.yaml +1 -1
@@ -0,0 +1,276 @@
1
+ # MCP (Model Context Protocol) Extension
2
+
3
+ **Version**: 0.4.6
4
+ **Status**: Stable
5
+ **Framework**: [Anthropic MCP](https://modelcontextprotocol.io/)
6
+
7
+ ## Overview
8
+
9
+ The MCP extension enables native integration with Anthropic's Model Context Protocol, providing standardized context sharing, resource access, and tool invocation across LLM applications.
10
+
11
+ ## Features
12
+
13
+ - **MCP Server Connections**: Connect to stdio, HTTP, WebSocket, or SSE-based MCP servers
14
+ - **Resource Management**: Expose and consume MCP resources (files, databases, APIs)
15
+ - **Prompt Templates**: Define reusable prompt templates with arguments
16
+ - **Tool Integration**: Expose tools via MCP for LLM invocation
17
+ - **Sampling Support**: Enable agents to request LLM completions
18
+ - **Capability Discovery**: Dynamic capability negotiation
19
+
20
+ ## Schema Reference
21
+
22
+ ### MCP Server Configuration
23
+
24
+ ```yaml
25
+ extensions:
26
+ mcp:
27
+ servers:
28
+ - name: filesystem
29
+ description: "Local filesystem access"
30
+ transport:
31
+ type: stdio
32
+ command: npx
33
+ args:
34
+ - "-y"
35
+ - "@modelcontextprotocol/server-filesystem"
36
+ - "/path/to/allowed/files"
37
+ version: "0.1.0"
38
+ capabilities:
39
+ resources:
40
+ subscribe: true
41
+ listChanged: true
42
+ ```
43
+
44
+ ### Transport Types
45
+
46
+ 1. **stdio**: Local process communication
47
+ ```yaml
48
+ transport:
49
+ type: stdio
50
+ command: node
51
+ args: ["server.js"]
52
+ ```
53
+
54
+ 2. **HTTP/WebSocket/SSE**: Network-based transport
55
+ ```yaml
56
+ transport:
57
+ type: http
58
+ url: https://mcp-server.example.com/api
59
+ headers:
60
+ Authorization: "Bearer ${MCP_TOKEN}"
61
+ timeout: 30
62
+ ```
63
+
64
+ ### Resource Definition
65
+
66
+ ```yaml
67
+ extensions:
68
+ mcp:
69
+ resources:
70
+ - uri: "file:///workspace/README.md"
71
+ name: "Project README"
72
+ description: "Main project documentation"
73
+ mimeType: "text/markdown"
74
+ annotations:
75
+ audience: ["user", "assistant"]
76
+ priority: 0.9
77
+ contents:
78
+ - type: text
79
+ text: "# Project Documentation..."
80
+ mimeType: "text/markdown"
81
+ ```
82
+
83
+ ### Prompt Templates
84
+
85
+ ```yaml
86
+ extensions:
87
+ mcp:
88
+ prompts:
89
+ - name: "review-code"
90
+ description: "Review code changes for quality and security"
91
+ arguments:
92
+ - name: "code"
93
+ description: "Code to review"
94
+ required: true
95
+ - name: "language"
96
+ description: "Programming language"
97
+ required: false
98
+ messages:
99
+ - role: system
100
+ content: "You are a code reviewer focused on quality and security."
101
+ - role: user
102
+ content: "Review this {{language}} code:\n\n{{code}}"
103
+ ```
104
+
105
+ ### Tool Definition
106
+
107
+ ```yaml
108
+ extensions:
109
+ mcp:
110
+ tools:
111
+ - name: "read_file"
112
+ description: "Read contents of a file"
113
+ inputSchema:
114
+ type: object
115
+ required: ["path"]
116
+ properties:
117
+ path:
118
+ type: string
119
+ description: "File path to read"
120
+ ```
121
+
122
+ ### Sampling Configuration
123
+
124
+ ```yaml
125
+ extensions:
126
+ mcp:
127
+ sampling:
128
+ enabled: true
129
+ maxTokens: 4096
130
+ temperature: 0.7
131
+ stopSequences: ["</response>"]
132
+ modelPreferences:
133
+ - "claude-sonnet-4-20250514"
134
+ - "gpt-4o"
135
+ capabilities:
136
+ sampling:
137
+ enabled: true
138
+ ```
139
+
140
+ ## Use Cases
141
+
142
+ ### 1. Filesystem MCP Server
143
+
144
+ ```yaml
145
+ apiVersion: ossa/v0.4.6
146
+ kind: Agent
147
+ metadata:
148
+ name: file-assistant
149
+ version: 1.0.0
150
+ spec:
151
+ extensions:
152
+ mcp:
153
+ servers:
154
+ - name: filesystem
155
+ description: "Access project files"
156
+ transport:
157
+ type: stdio
158
+ command: npx
159
+ args:
160
+ - "-y"
161
+ - "@modelcontextprotocol/server-filesystem"
162
+ - "/workspace"
163
+ capabilities:
164
+ resources:
165
+ subscribe: true
166
+ listChanged: true
167
+ ```
168
+
169
+ ### 2. Database MCP Server
170
+
171
+ ```yaml
172
+ apiVersion: ossa/v0.4.6
173
+ kind: Agent
174
+ metadata:
175
+ name: database-assistant
176
+ version: 1.0.0
177
+ spec:
178
+ extensions:
179
+ mcp:
180
+ servers:
181
+ - name: postgres
182
+ description: "PostgreSQL database access"
183
+ transport:
184
+ type: stdio
185
+ command: npx
186
+ args:
187
+ - "-y"
188
+ - "@modelcontextprotocol/server-postgres"
189
+ env:
190
+ DATABASE_URL: "postgresql://user:pass@localhost:5432/db"
191
+ capabilities:
192
+ tools:
193
+ listChanged: false
194
+ ```
195
+
196
+ ### 3. Custom MCP Resources
197
+
198
+ ```yaml
199
+ apiVersion: ossa/v0.4.6
200
+ kind: Agent
201
+ metadata:
202
+ name: documentation-agent
203
+ version: 1.0.0
204
+ spec:
205
+ extensions:
206
+ mcp:
207
+ resources:
208
+ - uri: "docs://api-reference"
209
+ name: "API Reference"
210
+ description: "Complete API documentation"
211
+ mimeType: "text/markdown"
212
+ contents:
213
+ - type: text
214
+ text: "# API Reference\n\n..."
215
+ mimeType: "text/markdown"
216
+ prompts:
217
+ - name: "explain-api"
218
+ description: "Explain an API endpoint"
219
+ arguments:
220
+ - name: "endpoint"
221
+ description: "API endpoint path"
222
+ required: true
223
+ messages:
224
+ - role: system
225
+ content: "You are an API documentation expert."
226
+ - role: user
227
+ content: "Explain the {{endpoint}} API endpoint"
228
+ ```
229
+
230
+ ## Best Practices
231
+
232
+ 1. **Server Naming**: Use descriptive names that indicate the server's purpose
233
+ 2. **Transport Security**: Use HTTPS/WSS for network transports and validate certificates
234
+ 3. **Resource URIs**: Follow URI scheme conventions (file://, db://, http://)
235
+ 4. **Error Handling**: Configure appropriate timeouts and retry policies
236
+ 5. **Capabilities**: Declare capabilities accurately to enable proper protocol negotiation
237
+ 6. **Environment Variables**: Use env vars for sensitive configuration (API keys, credentials)
238
+ 7. **Resource Updates**: Enable `subscribe` and `listChanged` for dynamic resources
239
+
240
+ ## Validation
241
+
242
+ The MCP validator checks:
243
+
244
+ - Server transport configuration is complete and valid
245
+ - Resource URIs are properly formatted
246
+ - No duplicate resource URIs or prompt/tool names
247
+ - Content types match declared MIME types
248
+ - Sampling configuration is consistent with capabilities
249
+ - Network URLs are valid and accessible
250
+
251
+ ## Integration
252
+
253
+ ### With ValidationService
254
+
255
+ ```typescript
256
+ import { MCPValidator } from './validators/mcp.validator.js';
257
+
258
+ const mcpValidator = container.get(MCPValidator);
259
+ const result = mcpValidator.validate(manifest);
260
+ ```
261
+
262
+ ### With Agent Runtime
263
+
264
+ MCP servers are automatically initialized when an agent starts. Resources, prompts, and tools are registered with the MCP protocol handler.
265
+
266
+ ## Related Extensions
267
+
268
+ - **Kagent**: Kubernetes-native deployment
269
+ - **A2A**: Agent-to-agent communication
270
+ - **LangChain**: LangChain integration
271
+
272
+ ## References
273
+
274
+ - [Model Context Protocol Specification](https://modelcontextprotocol.io/)
275
+ - [MCP Server Examples](https://github.com/modelcontextprotocol/servers)
276
+ - [OSSA v0.4.6 Specification](../../README.md)
@@ -0,0 +1,84 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://openstandardagents.org/schemas/v0.4.6/extensions/mcp.json",
4
+ "title": "MCP Extension Schema",
5
+ "description": "Model Context Protocol extension for OSSA agents",
6
+ "type": "object",
7
+ "properties": {
8
+ "servers": {
9
+ "type": "array",
10
+ "description": "MCP server configurations",
11
+ "items": {
12
+ "type": "object",
13
+ "properties": {
14
+ "name": { "type": "string" },
15
+ "command": { "type": "string" },
16
+ "args": { "type": "array", "items": { "type": "string" } },
17
+ "env": { "type": "object", "additionalProperties": { "type": "string" } },
18
+ "transport": {
19
+ "type": "string",
20
+ "enum": ["stdio", "sse", "websocket"],
21
+ "default": "stdio"
22
+ }
23
+ },
24
+ "required": ["name", "command"],
25
+ "additionalProperties": false
26
+ }
27
+ },
28
+ "tools": {
29
+ "type": "array",
30
+ "description": "MCP tools exposed by servers",
31
+ "items": {
32
+ "type": "object",
33
+ "properties": {
34
+ "name": { "type": "string" },
35
+ "description": { "type": "string" },
36
+ "inputSchema": { "type": "object" },
37
+ "server": { "type": "string" }
38
+ },
39
+ "required": ["name", "description", "inputSchema"],
40
+ "additionalProperties": false
41
+ }
42
+ },
43
+ "resources": {
44
+ "type": "array",
45
+ "description": "MCP resources provided by servers",
46
+ "items": {
47
+ "type": "object",
48
+ "properties": {
49
+ "uri": { "type": "string", "format": "uri" },
50
+ "name": { "type": "string" },
51
+ "mimeType": { "type": "string" },
52
+ "description": { "type": "string" }
53
+ },
54
+ "required": ["uri", "name"],
55
+ "additionalProperties": false
56
+ }
57
+ },
58
+ "prompts": {
59
+ "type": "array",
60
+ "description": "MCP prompts provided by servers",
61
+ "items": {
62
+ "type": "object",
63
+ "properties": {
64
+ "name": { "type": "string" },
65
+ "description": { "type": "string" },
66
+ "arguments": {
67
+ "type": "array",
68
+ "items": {
69
+ "type": "object",
70
+ "properties": {
71
+ "name": { "type": "string" },
72
+ "description": { "type": "string" },
73
+ "required": { "type": "boolean" }
74
+ }
75
+ }
76
+ }
77
+ },
78
+ "required": ["name"],
79
+ "additionalProperties": false
80
+ }
81
+ }
82
+ },
83
+ "additionalProperties": false
84
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://openstandardagents.org/schemas/v0.4/extensions/memory.schema.json",
4
+ "title": "OSSA Memory Management Extension",
5
+ "description": "Extension schema for agent memory file management. Manages CLAUDE.md hierarchy, rules extraction, conditional loading, and auto-memory for IDE/CLI tools (Claude Code, Cursor, Windsurf).",
6
+ "$ref": "../../agent.schema.json#/definitions/MemoryManagement"
7
+ }
@@ -0,0 +1,304 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://openstandardagents.org/schemas/v0.4/extensions/team.json",
4
+ "title": "OSSA Team Extension Schema",
5
+ "description": "Validates team/config.json generated by the TeamGeneratorService. Defines multi-agent team structure, coordination model, and deployment configuration for OSSA agent teams.",
6
+ "type": "object",
7
+ "required": ["name", "version", "pattern"],
8
+ "properties": {
9
+ "name": {
10
+ "type": "string",
11
+ "description": "Team name, typically derived from the lead agent manifest metadata.name"
12
+ },
13
+ "version": {
14
+ "type": "string",
15
+ "description": "Team configuration version",
16
+ "pattern": "^[0-9]+\\.[0-9]+\\.[0-9]+$",
17
+ "examples": ["1.0.0"]
18
+ },
19
+ "pattern": {
20
+ "type": "string",
21
+ "description": "Multi-agent architecture pattern governing team coordination",
22
+ "enum": [
23
+ "single",
24
+ "swarm",
25
+ "pipeline",
26
+ "graph",
27
+ "hierarchical",
28
+ "reactive",
29
+ "cognitive",
30
+ "lead-teammate"
31
+ ]
32
+ },
33
+ "lead": {
34
+ "oneOf": [
35
+ { "type": "string" },
36
+ { "type": "null" }
37
+ ],
38
+ "description": "Name of the lead/orchestrator agent. Null when no explicit lead is designated."
39
+ },
40
+ "members": {
41
+ "type": "array",
42
+ "description": "Team member agent definitions",
43
+ "items": {
44
+ "$ref": "#/definitions/TeamMember"
45
+ }
46
+ },
47
+ "coordination": {
48
+ "$ref": "#/definitions/Coordination",
49
+ "description": "Task coordination and communication configuration"
50
+ },
51
+ "deployment": {
52
+ "$ref": "#/definitions/Deployment",
53
+ "description": "Deployment backend and scaling configuration"
54
+ }
55
+ },
56
+ "additionalProperties": false,
57
+ "definitions": {
58
+ "TeamMember": {
59
+ "type": "object",
60
+ "description": "A single team member agent definition",
61
+ "required": ["name", "kind"],
62
+ "properties": {
63
+ "name": {
64
+ "type": "string",
65
+ "description": "Unique agent name within the team"
66
+ },
67
+ "kind": {
68
+ "type": "string",
69
+ "description": "Agent kind/role classification within the team",
70
+ "examples": [
71
+ "team-lead",
72
+ "orchestrator",
73
+ "coordinator",
74
+ "teammate",
75
+ "worker",
76
+ "specialist",
77
+ "subagent",
78
+ "reviewer",
79
+ "planner",
80
+ "monitor",
81
+ "analyst"
82
+ ]
83
+ },
84
+ "role": {
85
+ "type": "string",
86
+ "description": "Human-readable role description or system prompt summary"
87
+ },
88
+ "contextIsolation": {
89
+ "type": "boolean",
90
+ "description": "Whether this agent operates with an independent context window (true) or shares context with lead (false)",
91
+ "default": true
92
+ },
93
+ "model": {
94
+ "type": "object",
95
+ "description": "LLM model configuration override for this member",
96
+ "properties": {
97
+ "provider": { "type": "string" },
98
+ "model": { "type": "string" },
99
+ "temperature": {
100
+ "type": "number",
101
+ "minimum": 0,
102
+ "maximum": 2
103
+ },
104
+ "maxTokens": {
105
+ "type": "integer",
106
+ "minimum": 1
107
+ }
108
+ },
109
+ "additionalProperties": true
110
+ },
111
+ "tools": {
112
+ "type": "array",
113
+ "description": "Tools available to this member",
114
+ "items": {
115
+ "oneOf": [
116
+ { "type": "string" },
117
+ {
118
+ "type": "object",
119
+ "properties": {
120
+ "name": { "type": "string" },
121
+ "description": { "type": "string" }
122
+ },
123
+ "required": ["name"]
124
+ }
125
+ ]
126
+ }
127
+ },
128
+ "handoffs": {
129
+ "type": "array",
130
+ "description": "Handoff targets for this member (swarm/graph patterns)",
131
+ "items": {
132
+ "type": "object",
133
+ "properties": {
134
+ "to": {
135
+ "type": "string",
136
+ "description": "Target agent name"
137
+ },
138
+ "condition": {
139
+ "type": "string",
140
+ "description": "Condition triggering the handoff",
141
+ "default": "any"
142
+ }
143
+ },
144
+ "required": ["to"],
145
+ "additionalProperties": true
146
+ }
147
+ },
148
+ "permissions": {
149
+ "type": "object",
150
+ "description": "Team-level permissions for this member",
151
+ "properties": {
152
+ "spawn": { "type": "boolean", "description": "Can spawn new agents" },
153
+ "shutdown": { "type": "boolean", "description": "Can shut down agents" },
154
+ "assignTasks": { "type": "boolean", "description": "Can assign tasks to others" },
155
+ "broadcast": { "type": "boolean", "description": "Can broadcast to all members" },
156
+ "modifyTeam": { "type": "boolean", "description": "Can modify team configuration" },
157
+ "approveWork": { "type": "boolean", "description": "Can approve completed work" },
158
+ "rejectWork": { "type": "boolean", "description": "Can reject completed work" },
159
+ "claimTasks": { "type": "boolean", "description": "Can self-claim tasks" },
160
+ "messagePeers": { "type": "boolean", "description": "Can message peer agents" },
161
+ "messageLeader": { "type": "boolean", "description": "Can message team lead" },
162
+ "reportToParent": { "type": "boolean", "description": "Can report to parent agent" }
163
+ },
164
+ "additionalProperties": false
165
+ }
166
+ },
167
+ "additionalProperties": false
168
+ },
169
+ "Coordination": {
170
+ "type": "object",
171
+ "description": "Coordination model governing how team members interact and synchronize",
172
+ "properties": {
173
+ "taskModel": {
174
+ "type": "string",
175
+ "description": "Task coordination strategy",
176
+ "enum": [
177
+ "shared-list",
178
+ "self-claim",
179
+ "assigned",
180
+ "handoff",
181
+ "event-driven",
182
+ "pipeline"
183
+ ],
184
+ "default": "shared-list"
185
+ },
186
+ "communication": {
187
+ "type": "string",
188
+ "description": "Inter-agent communication pattern",
189
+ "enum": [
190
+ "mailbox",
191
+ "broadcast",
192
+ "direct",
193
+ "shared-file",
194
+ "report-to-parent",
195
+ "pub-sub",
196
+ "request-reply"
197
+ ],
198
+ "default": "mailbox"
199
+ },
200
+ "conflictResolution": {
201
+ "type": "string",
202
+ "description": "Strategy for resolving conflicts between agents",
203
+ "enum": [
204
+ "leader-decides",
205
+ "voting",
206
+ "priority-based",
207
+ "first-writer-wins",
208
+ "merge",
209
+ "escalate"
210
+ ],
211
+ "default": "leader-decides"
212
+ },
213
+ "taskPersistence": {
214
+ "type": "string",
215
+ "description": "How task state is persisted across agent restarts",
216
+ "enum": [
217
+ "in-memory",
218
+ "file-backed",
219
+ "database",
220
+ "distributed"
221
+ ],
222
+ "default": "file-backed"
223
+ },
224
+ "dependencyTracking": {
225
+ "type": "boolean",
226
+ "description": "Whether task dependencies (blocks/blockedBy) are tracked and enforced",
227
+ "default": true
228
+ },
229
+ "waveExecution": {
230
+ "type": "boolean",
231
+ "description": "Whether tasks are executed in dependency waves (all tasks in a wave start concurrently, next wave starts when current completes)",
232
+ "default": true
233
+ },
234
+ "lockingStrategy": {
235
+ "type": "string",
236
+ "description": "Concurrency control strategy for shared resources",
237
+ "enum": [
238
+ "none",
239
+ "file-lock",
240
+ "advisory-lock",
241
+ "optimistic",
242
+ "pessimistic",
243
+ "distributed-lock"
244
+ ],
245
+ "default": "file-lock"
246
+ }
247
+ },
248
+ "additionalProperties": false
249
+ },
250
+ "Deployment": {
251
+ "type": "object",
252
+ "description": "Deployment configuration for the agent team",
253
+ "properties": {
254
+ "backend": {
255
+ "type": "string",
256
+ "description": "Execution backend for agent processes",
257
+ "enum": [
258
+ "in-process",
259
+ "subprocess",
260
+ "docker",
261
+ "kubernetes",
262
+ "serverless",
263
+ "cloud-run",
264
+ "remote"
265
+ ],
266
+ "default": "in-process"
267
+ },
268
+ "scaling": {
269
+ "type": "string",
270
+ "description": "Scaling strategy for team members",
271
+ "enum": [
272
+ "fixed",
273
+ "auto",
274
+ "manual",
275
+ "event-driven",
276
+ "queue-based"
277
+ ],
278
+ "default": "fixed"
279
+ },
280
+ "minReplicas": {
281
+ "type": "integer",
282
+ "description": "Minimum number of agent replicas (for auto-scaling)",
283
+ "minimum": 0
284
+ },
285
+ "maxReplicas": {
286
+ "type": "integer",
287
+ "description": "Maximum number of agent replicas (for auto-scaling)",
288
+ "minimum": 1
289
+ },
290
+ "resources": {
291
+ "type": "object",
292
+ "description": "Resource constraints per agent process",
293
+ "properties": {
294
+ "cpu": { "type": "string", "description": "CPU limit (e.g., '500m', '2')" },
295
+ "memory": { "type": "string", "description": "Memory limit (e.g., '512Mi', '2Gi')" },
296
+ "gpu": { "type": "string", "description": "GPU requirement (e.g., 'nvidia-a100')" }
297
+ },
298
+ "additionalProperties": false
299
+ }
300
+ },
301
+ "additionalProperties": false
302
+ }
303
+ }
304
+ }