Portfolio Profile Examples
Customer Service Agent
A tier-1 support agent with defined relationships to peer agents, dependencies, and an orchestrator within the customer service domain.
- YAML
- JSON
customer-service-agent.adl.yaml
$schema: https://adl-spec.org/profiles/portfolio/1.0/schema.json
adl_spec: 0.1.0
name: Customer Service Agent
description: Handles tier-1 customer inquiries and support requests via chat and email channels.
version: 1.2.0
profiles:
- urn:adl:profile:registry:1.0
- urn:adl:profile:portfolio:1.0
data_classification:
sensitivity: internal
categories:
- pii
provider:
name: Acme Support
url: https://support.acme.example
contact: support-engineering@acme.example
model:
capabilities:
- function_calling
- streaming
tools:
- name: search_knowledge_base
description: Search the knowledge base for relevant articles
parameters:
type: object
properties:
query:
type: string
limit:
type: integer
default: 5
required:
- query
read_only: true
- name: create_ticket
description: Create a support ticket for escalation
parameters:
type: object
properties:
subject:
type: string
description:
type: string
priority:
type: string
enum:
- low
- medium
- high
- urgent
customer_id:
type: string
required:
- subject
- description
- customer_id
requires_confirmation: true
- name: get_customer_info
description: Retrieve customer information
parameters:
type: object
properties:
customer_id:
type: string
required:
- customer_id
read_only: true
permissions:
network:
allowed_hosts:
- api.acme.example
- kb.acme.example
- tickets.acme.example
allowed_protocols:
- https
deny_private: true
security:
authentication:
type: oauth2
required: true
scopes:
- customers:read
- tickets:write
- kb:read
encryption:
in_transit:
required: true
min_version: "1.2"
registry:
catalog_id: cs-agent-001
catalog_classification:
- domain: support
subdomain: customer-service
capability: conversational
visibility: internal
relationships:
depends_on:
- urn:adl:acme:knowledge-base-agent:1.0
- urn:adl:acme:ticket-api-agent:2.0
- urn:adl:acme:customer-data-agent:1.5
orchestrated_by: urn:adl:acme:support-orchestrator:1.0
peers:
- urn:adl:acme:billing-support-agent:1.0
- urn:adl:acme:technical-support-agent:1.0
- urn:adl:acme:returns-agent:1.0
domain:
domain_id: urn:domain:customer-service
subdomain: inquiries
bounded_context: support-portal
role: primary-handler
metadata:
authors:
- name: Support Engineering
email: support-engineering@acme.example
license: Proprietary
documentation: https://docs.acme.example/agents/customer-service
tags:
- customer-service
- support
- production
customer-service-agent.adl.json
{
"$schema": "https://adl-spec.org/profiles/portfolio/1.0/schema.json",
"adl_spec": "0.1.0",
"name": "Customer Service Agent",
"description": "Handles tier-1 customer inquiries and support requests via chat and email channels.",
"version": "1.2.0",
"profiles": [
"urn:adl:profile:registry:1.0",
"urn:adl:profile:portfolio:1.0"
],
"data_classification": {
"sensitivity": "internal",
"categories": [
"pii"
]
},
"provider": {
"name": "Acme Support",
"url": "https://support.acme.example",
"contact": "support-engineering@acme.example"
},
"model": {
"capabilities": [
"function_calling",
"streaming"
]
},
"tools": [
{
"name": "search_knowledge_base",
"description": "Search the knowledge base for relevant articles",
"parameters": {
"type": "object",
"properties": {
"query": {
"type": "string"
},
"limit": {
"type": "integer",
"default": 5
}
},
"required": [
"query"
]
},
"read_only": true
},
{
"name": "create_ticket",
"description": "Create a support ticket for escalation",
"parameters": {
"type": "object",
"properties": {
"subject": {
"type": "string"
},
"description": {
"type": "string"
},
"priority": {
"type": "string",
"enum": [
"low",
"medium",
"high",
"urgent"
]
},
"customer_id": {
"type": "string"
}
},
"required": [
"subject",
"description",
"customer_id"
]
},
"requires_confirmation": true
},
{
"name": "get_customer_info",
"description": "Retrieve customer information",
"parameters": {
"type": "object",
"properties": {
"customer_id": {
"type": "string"
}
},
"required": [
"customer_id"
]
},
"read_only": true
}
],
"permissions": {
"network": {
"allowed_hosts": [
"api.acme.example",
"kb.acme.example",
"tickets.acme.example"
],
"allowed_protocols": [
"https"
],
"deny_private": true
}
},
"security": {
"authentication": {
"type": "oauth2",
"required": true,
"scopes": [
"customers:read",
"tickets:write",
"kb:read"
]
},
"encryption": {
"in_transit": {
"required": true,
"min_version": "1.2"
}
}
},
"registry": {
"catalog_id": "cs-agent-001",
"catalog_classification": [
{
"domain": "support",
"subdomain": "customer-service",
"capability": "conversational"
}
],
"visibility": "internal"
},
"relationships": {
"depends_on": [
"urn:adl:acme:knowledge-base-agent:1.0",
"urn:adl:acme:ticket-api-agent:2.0",
"urn:adl:acme:customer-data-agent:1.5"
],
"orchestrated_by": "urn:adl:acme:support-orchestrator:1.0",
"peers": [
"urn:adl:acme:billing-support-agent:1.0",
"urn:adl:acme:technical-support-agent:1.0",
"urn:adl:acme:returns-agent:1.0"
]
},
"domain": {
"domain_id": "urn:domain:customer-service",
"subdomain": "inquiries",
"bounded_context": "support-portal",
"role": "primary-handler"
},
"metadata": {
"authors": [
{
"name": "Support Engineering",
"email": "support-engineering@acme.example"
}
],
"license": "Proprietary",
"documentation": "https://docs.acme.example/agents/customer-service",
"tags": [
"customer-service",
"support",
"production"
]
}
}
Key Portfolio Fields
| Field | Purpose |
|---|---|
relationships.depends_on | Agents this agent requires to function |
relationships.orchestrated_by | The orchestrator that coordinates this agent |
relationships.peers | Sibling agents in the same domain |
domain.domain_id | Domain membership identifier |
domain.bounded_context | The bounded context this agent operates within |
domain.role | The agent's role within the domain |
Agent Topology
support-orchestrator (orchestrator)
├── customer-service-agent (this agent)
├── billing-support-agent (peer)
├── technical-support-agent (peer)
└── returns-agent (peer)
Dependencies: knowledge-base-agent, ticket-api-agent, customer-data-agent