Skip to content

ContainerAgent

This represents a container based agent hosted by the provider/publisher. The intent is to represent a container application that the user wants to run in a hosted environment that the provider manages.

---
title: ContainerAgent
config:
  look: handDrawn
  theme: colorful
  class:
    hideEmptyMembersBox: true
---
classDiagram
    class AgentDefinition {
        +string kind
        +string name
        +string displayName
        +string description
        +dictionary metadata
        +PropertySchema inputSchema
        +PropertySchema outputSchema
    }
    AgentDefinition <|-- ContainerAgent
    class ContainerAgent {
      
        +string kind
        +ProtocolVersionRecord[] protocols
        +string image
        +string dockerfilePath
        +ContainerResources resources
        +EnvironmentVariable[] environmentVariables
    }
    class ProtocolVersionRecord {
        +string protocol
        +string version
    }
    ContainerAgent *-- ProtocolVersionRecord
    class ContainerResources {
        +string cpu
        +string memory
    }
    ContainerAgent *-- ContainerResources
    class EnvironmentVariable {
        +string name
        +string value
    }
    ContainerAgent *-- EnvironmentVariable
kind: hosted
protocols:
- protocol: responses
version: v0.1.1
image: myregistry.azurecr.io/my-agent
dockerfilePath: ./Dockerfile
resources:
cpu: "1"
memory: 2Gi
environmentVariables:
- name: MY_ENV_VAR
value: my-value
NameTypeDescription
kindstringType of agent, e.g., ‘hosted’
protocolsProtocolVersionRecord[]Protocol used by the containerized agent
imagestringContainer image path (e.g., ‘<acr-endpoint>/<container-image-name>‘)
dockerfilePathstringPath to a Dockerfile for deployment. Can be relative to the working directory or an absolute path.
resourcesContainerResourcesResource allocation for the container
environmentVariablesEnvironmentVariable[]Environment variables to set in the container

The following types are composed within ContainerAgent: