Overview
An agent is a preconfigured, always-on agent process in your workspace. You describe it once — its trigger, the skills it can use, the credentials it needs, the budget it is allowed to consume — and the platform keeps it alive, receiving events and invoking the agent, until you kill it. Everything in this section of the docs is about working with agents: how to install one from a template, how to start and stop it, how to attach credentials, how webhooks reach it, and how to author theSKILL.md and TRIGGER.md files that define its behavior.
Lifecycle
An agent moves through five observable states.- Alive.
zombiectl install --from <path>reads the localSKILL.md+TRIGGER.md, validates the schema, uploads to your workspace, provisions the webhook URL, and starts the event loop. Install is the deploy — there is no separateupstep. - Processing. When a signed event arrives (webhook, cron, or steer), the platform opens a run: the agent reads the event, reasons, invokes the tools listed in
TRIGGER.md, and produces a result. The activity stream is the durable record — replay any time withzombiectl logs <zombie_id>(orevents --actor 'webhook:*'for filtered history). - Stopped.
zombiectl stop <zombie_id>halts the running session — new events stop dispatching, the in-flight run finishes cleanly. Reversible withzombiectl resume. Use this for “pause while I debug upstream”; reach forkillonly when you mean terminal. - Killed.
zombiectl kill <zombie_id>marks the agent terminal. The row, history, and webhook URL persist but no new events are processed. State is checkpointed; nothing on the event stream is lost. Re-install with the sameSKILL.mdproduces a newzombie_id. - Deleted.
zombiectl delete <zombie_id>hard-removes the agent. The row, itszombie_id, and its webhook URL are gone — the webhook URL starts returningUZ-WH-001for any new POSTs. The activity-stream history is retained for the workspace’s retention window per Observability; replays after delete reference the priorzombie_idas a historical record only. You mustkillthe agent beforedeletewill accept it.
Workspace scoping
Every agent belongs to exactly one workspace. The workspace is the boundary for:- Credentials — the vault that agents read from when they invoke skills. See Credentials.
- Access control — teammates invited to a workspace can see, start, and kill its agents; they cannot see agents in other workspaces.
- Webhook namespace — every agent in a workspace gets one unique URL per declared trigger under
https://api.usezombie.com/v1/webhooks/{zombie_id}/{source}(one entry pertriggers[].sourceinTRIGGER.md).
zombiectl workspace add [name] creates a new workspace and sets it as active. Switch between existing ones with zombiectl workspace use <id> (run zombiectl workspace list first to see the IDs). The dashboard’s active-workspace selection is independent — switching there does not affect the CLI and vice versa.
What’s next
Install an agent
Scaffold an agent from a bundled template.
Start, stop, observe
The
install, status, events, steer, and kill commands.Workspace credentials
Add secrets to the vault without the agent ever seeing them.
Authoring an agent
How
SKILL.md and TRIGGER.md combine to define an agent.