bcquality/community/knowledge/agents/wire-all-three-agent-interfaces.md
Jesper Schulz-Wedde b6da405376 Improve partner onboarding and documentation navigation
Lead with a complete plugin quick start and add task-oriented usage, troubleshooting, customization, and contribution guides. Preserve the broader plugin framing, correct conflicting contract guidance, support Agents folder reviews, and align repository validation. Convert existing sample references to clickable links without changing knowledge rules.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
2026-09-09 17:25:29 +02:00

1.6 KiB

bc-version domain keywords technologies countries application-area
27..
agents
agent-metadata-provider
iagentfactory
iagentmetadata
iagenttaskexecution
enumextension
implementation
al
w1
all

Wire all three agent interfaces on the metadata provider

Description

An AL agent type is registered by extending Agent Metadata Provider. The platform locates factory, metadata, and task-execution behaviour only through the Implementation property on that enum value. Omitting IAgentFactory, IAgentMetadata, or IAgentTaskExecution leaves create, UI identity, or task runs unbound. Models often ship a single codeunit and skip the enum wiring.

Best Practice

On the enum value, set Implementation for all three interfaces, each pointing at a dedicated codeunit. Keep factory (create, defaults, first-time setup), metadata (setup page, summary, annotations), and task execution (message analysis, intervention suggestions) in separate objects.

See sample: wire-all-three-agent-interfaces.good.al.

Anti Pattern

An Agent Metadata Provider value with no Implementation, only one interface mapped, or all three interfaces pointing at one catch-all codeunit that cannot satisfy the contracts. Detection signal: enumextension of Agent Metadata Provider whose value does not list IAgentFactory, IAgentMetadata, and IAgentTaskExecution.

See sample: wire-all-three-agent-interfaces.bad.al.

See also

register-copilot-capability-for-the-agent.md covers the feature capability linked by the factory implementation.