1. Create a role
An agent gets its tools from a role and nowhere else. This one reads the web and keeps notes:Administrator role that grants tool:*.
That’s fine while you’re poking around, but too much for an agent you leave
running.
2. Create a profile
A profile is everything about how the agent behaves: the models it may use, the instructions it always carries, and the roles its tools come from.hooks out and you get the six default approvals.
3. Create the agent
The agent is the part that sticks around. It owns the threads and the memory:identity is required, and you can’t change it later. Use a stable value from
your own system: user_123 for a person, svc:research for your product. See
Identities.
4. Start a thread
Check it worked
Ask what the agent can call. This is the same answer Matrices enforces at run time:web.* and memory.* tools and nothing else. Now read the
thread’s log:
tool_intent followed by its tool_result. The
answer is an assistant_message. See
Thread events.
Where next
Narrow the permissions
Conditional allows, denies, and how they stack.
Connect a service
Give it credentials the model never sees.