Skip to content

Register Tool drawer

Opened from the Tools Section.

Fields

FieldRequiredNotes
KeyyesStable, lowercase slug. Cannot be changed after creation. Example: web.search, github.pr.create
NameyesHuman-readable label shown in pickers and approval gates
DescriptionnoSurfaces in the tool picker tooltip and the approval review screen
CategoryyesGroups tools in the picker. Reuse existing slugs: search, code, communication
Auth methodyesnone · api_key · oauth · service_account
Input schemanoJSON Schema for the tool's input — used for validation and workflow editor hints
Output schemanoJSON Schema for the tool's output — improves downstream type safety
Requires approvaltoggleForces a human approval gate before every invocation
Dangerous tooltoggleTags the tool as high-risk; always queued for approval regardless of the toggle above

Auth methods

MethodWhere credential lives
noneNo credentials needed
api_keySecret stored in Supabase Vault — encrypted at rest
oauthUser-delegated token via OAuth flow
service_accountWorkspace-level credentials shared across agents

After registration

The tool appears in the registry but is not yet usable by the agent. Open the Assign Tool drawer to flip the allow flag for a specific agent.

Key naming conventions

Keys are the stable reference used in workflows and assignments. Choose a namespace:

{domain}.{action}          → web.search, web.fetch
{service}.{resource}.{op}  → github.pr.create, slack.message.send
{internal}.{function}      → memory.write, eval.score