Publish a new soul
Replaces the agent’s canon. This rewrites who the agent is — read the current
soul first, and edit deliberately.
spirit --slug verse soul push my-soul.md.
Teach a duty
A duty is a standing rule injected into every turn’s system prompt, across
every surface the agent speaks on — chat, encounters, workflows, channels.
GET /duties), silenced without forgetting
(PATCH with {id, enabled}), or forgotten (DELETE with {id}).
Shaping via API and shaping via conversation are complementary: an agent also
accumulates memory and identity from talking. The soul is the deliberate,
versioned layer; memory is the lived one.