Skip to main content

@agent Decorator

The @agent decorator defines a top-level agent container. Agents are the primary unit of deployment and governance in Waxell.

Basic Usage

from waxell_sdk import agent

@agent(
name="support-agent",
description="Handles customer support inquiries",
version="1.0.0"
)
class SupportAgent:
pass

Parameters

ParameterTypeRequiredDescription
namestrYesUnique identifier for the agent
descriptionstrNoHuman-readable description
versionstrNoSemantic version string
capabilitieslistNoList of capability references
metadatadictNoArbitrary key-value metadata

AgentSpec

The decorator produces an AgentSpec object that captures your intent:

from waxell_sdk.core.specs import AgentSpec

# The decorator creates this internally
spec = AgentSpec(
name="support-agent",
description="Handles customer support inquiries",
workflows=[...],
decisions=[...],
tools=[...]
)

Governance Integration

Agents are governed by policies defined in the control plane:

  • Rate Limits: Control execution frequency
  • Approvals: Require human approval for sensitive actions
  • Audit: All executions are logged

Next Steps