Agents
An agent combines authored behavior, resources, configuration, and execution history. An agent can contain several runnables, each implementing a different task. An agic is one kind of runnable inside that agent.
Homes and modules
An agent home holds the agent's definitions and configuration. Its main
program is agent.too; additional runnable modules live in runnables/.
A module can define runnables, types, instructions, context, and caps.
The main module exports its runnables. Each additional module exports one runnable, with its other declarations kept private. This lets an agent expose several entry points without exposing every helper.
Scripts and sources
A standalone .too script runs directly from a local file. You can keep it
with a project's code and invoke its named runnables from the command line.
Shared sources can also be fetched from GitHub or HTTP(S) URLs.
| Placement | Source | Example target |
|---|---|---|
| Resident | A locally managed agent | alice |
| Visiting | A fetched remote definition | gh:briceyan/gus |
| Roaming | A local .too file | ./review.too |
Local script launches create separate execution instances unless you explicitly reuse one. Cloning a shared source creates a local agent you can customize.
Lifecycle
Creating an agent prepares its files; starting it launches its runtime. Drivers determine which triggers it handles, and a sandbox determines where its process runs.
A resident agent's shared server can keep running after you leave Chat. An automatically started visiting server exits after its clients and accepted work finish. Explicitly starting an agent keeps it available until stopped. Stopping a runtime preserves its definitions and recorded history.
See Create and run agents, Run agent scripts, and Source refs.