PRD-027: External Agent Interoperability

Status: Active Version: 1.0 Date: 2026-01-02 Satisfies: ADR-038, ADR-037


Purpose

Define requirements for enabling SEA™ agents to communicate and collaborate with external AI agents using the A2A (Agent-to-Agent) protocol, and to orchestrate internal workflows using Microsoft Semantic Kernel.

Problem Statement

SEA™ agents currently operate in isolation within the SEA™ ecosystem. They cannot:

This limits SEA™’s ability to participate in the emerging multi-agent ecosystem where agents from different frameworks (LangGraph, CrewAI, Google ADK, etc.) collaborate on complex tasks.

Goals

  1. Multi-Agent Collaboration: Enable SEA™ agents to collaborate with external AI agents
  2. Capability Discovery: Expose SEA™ agent capabilities via standardized Agent Cards
  3. Governed Orchestration: Ensure all agent interactions follow SEA™ governance rules
  4. Memory Integration: Provide semantic memory for context retention across interactions

Non-Goals


Requirements

REQ-070: Agent Card Discovery

Priority: P0 (MVP) Type: Functional

The system SHALL serve an A2A Agent Card at /.well-known/agent.json that:

Acceptance Criteria:


REQ-071: Task Reception

Priority: P0 (MVP) Type: Functional

The system SHALL accept tasks from external A2A clients:

Acceptance Criteria:


REQ-072: Message Exchange

Priority: P0 (MVP) Type: Functional

The system SHALL support multi-turn message exchange within tasks:

Acceptance Criteria:


REQ-073: Governed Task Execution

Priority: P0 (MVP) Type: Security

The system SHALL enforce governance rules for all task executions:

Acceptance Criteria:


REQ-074: Task Delegation

Priority: P1 (Post-MVP) Type: Functional

The system SHALL delegate sub-tasks to external A2A-compliant agents:

Acceptance Criteria:


REQ-075: Streaming Updates

Priority: P0 (MVP) Type: Functional

The system SHALL provide real-time task updates via streaming:

Acceptance Criteria:


REQ-076: Push Notifications

Priority: P1 (Post-MVP) Type: Functional

The system SHALL support push notifications for long-running tasks:

Acceptance Criteria:


REQ-077: Semantic Memory

Priority: P0 (MVP) Type: Functional

The system SHALL maintain semantic memory for agent interactions:

Acceptance Criteria:


REQ-078: Plugin Capability Mapping

Priority: P0 (MVP) Type: Functional

The system SHALL map Semantic Kernel plugins to A2A Agent Card skills:

Acceptance Criteria:


User Stories

US-070: External Agent Collaboration

As an external AI agent (LangGraph, CrewAI, etc.) I want to discover and send tasks to SEA™ agents So that I can leverage SEA™’s semantic engineering capabilities

Acceptance Criteria:


US-071: Governed Execution

As a Security Officer I want all external agent tasks to pass through governance filters So that external agents cannot bypass SEA™’s security rules

Acceptance Criteria:


US-072: Context-Aware Responses

As an external AI agent I want SEA™ agents to remember conversation context So that I can have multi-turn interactions

Acceptance Criteria:


Dependencies

Dependency Description Impact
SDS-031 Authority & Ownership Boundaries Governance rules for agent execution
SDS-052 Semantic Tooling & IDE Integration MCP tool surface for plugins
SDS-047 Messaging Infrastructure JetStream for async processing
SDS-030 Semantic Observability Tracing for agent interactions

Success Metrics

Metric Target Measurement
Agent Card Discovery <100ms Time to serve Agent Card
Task Creation <200ms Time to create and acknowledge task
Streaming Latency <100ms Time from event to SSE delivery
HITL Approval Rate >99% Mutating tasks with HITL check

Risks

Risk Likelihood Impact Mitigation
A2A spec changes Medium Medium Pin to version, abstract binding layer
External agent abuse High High Rate limiting, authentication, HITL
Memory overflow Medium Medium TTL on task contexts, garbage collection

References