ACPex.Schema.Types.AgentCapabilities (ACPex v0.1.1)

Copy Markdown View Source

Agent capabilities for ACP protocol.

Describes the capabilities supported by the agent.

Optional Fields

  • load_session - Whether the agent supports loading saved sessions (default: false)
  • mcp_capabilities - MCP protocol capabilities (McpCapabilities struct or map)
  • prompt_capabilities - Prompt content capabilities (PromptCapabilities struct or map)
  • meta - Additional metadata (map)

Example with structs

%ACPex.Schema.Types.AgentCapabilities{
  load_session: true,
  mcp_capabilities: %ACPex.Schema.Types.McpCapabilities{
    http: true,
    sse: false
  },
  prompt_capabilities: %ACPex.Schema.Types.PromptCapabilities{
    image: true,
    audio: false,
    embedded_context: true
  }
}

Example with maps (also supported)

%ACPex.Schema.Types.AgentCapabilities{
  load_session: true,
  mcp_capabilities: %{http: true, sse: false},
  prompt_capabilities: %{image: true, audio: false, embedded_context: true}
}

JSON Representation

{
  "loadSession": true,
  "mcpCapabilities": {
    "http": true,
    "sse": false
  },
  "promptCapabilities": {
    "image": true,
    "audio": false,
    "embeddedContext": true
  }
}

Summary

Functions

Creates a changeset for validation.

Types

t()

@type t() :: %ACPex.Schema.Types.AgentCapabilities{
  load_session: boolean(),
  mcp_capabilities: map() | ACPex.Schema.Types.McpCapabilities.t() | nil,
  meta: map() | nil,
  prompt_capabilities: map() | ACPex.Schema.Types.PromptCapabilities.t() | nil
}

Functions

changeset(struct \\ %__MODULE__{}, params)

@spec changeset(t(), map()) :: Ecto.Changeset.t()

Creates a changeset for validation.

All fields are optional with defaults.