Creating Agents

What you'll accomplish: Create agents using templates, manifests, and auto-loading directories.

From a template

The quickest way to create an agent:

hoziron agent new assistant

This creates and starts an agent with the built-in assistant template.

From the API

curl -X POST http://localhost:4200/agents \
  -H "Content-Type: application/json" \
  -d '{
    "name": "my-agent",
    "triggers": [{"lifecycle": {}}]
  }'

API-created agents start in Created state — you need to explicitly start them:

curl -X POST http://localhost:4200/agents/{id}/start

Using manifests

For reproducible agent definitions, use TOML manifests:

# agents/claims-agent.toml
name = "claims-agent"
description = "Processes insurance claims"
model = "anthropic/claude-sonnet-4-20250514"

Place manifests in the agents directory and the platform loads them on startup.

Auto-loading

Configure a directory for automatic agent loading:

[agents]
manifests_dir = "/data/agents/"

All .toml files in this directory are loaded as agent manifests when the daemon starts. This is ideal for GitOps workflows — commit agent definitions to a repo and deploy them as config.

Agent model assignment

Agents can specify their own model or inherit the platform default:

  • Explicit model: Set in the manifest or at creation time
  • Platform default: If no model is specified, the agent uses [default_model] from config.toml
  • Override: Change an agent's model at any time:
    hoziron agent set <agent-id> model "anthropic/claude-sonnet-4-20250514"
    

Listing and inspecting agents

# List all agents
hoziron agent list

# Detailed status
hoziron agent status <agent-id>

Next steps


Related: