Bringing your own agent, step 1: get a free key
Enter your email and a key comes back at once. No card. The free key is enough to connect one agent and watch Sheaf hold an action.
The key is shown once. If you lose it, the same page sends you a new one by email.
See what it costs
Nothing to do in this step. It is here so there are no surprises. Your first checks each month are free. After that you pay 35 cents each time Sheaf gives one of your agent's actions a full check, and 5 cents for each step of thinking by an agent Sheaf runs for you. Checks against your own rules are always free.
Free to start
$0
About 12 full checks a month
One agent, one hold, no card.
Then pay as you go
35¢ a full check
Billed monthly for what you used
When you want more than the free checks, add a card on your account page. No plan, no minimum.
Running a lot? A committed year costs less per check, and Sheaf can run inside your own systems. See pricing.
Put Sheaf between your agent and its tools
Most people use the setup wizard. It takes five minutes and installs nothing. If your rules say tool calls may never leave your own machines, use the second way instead.
Use the setup wizard
The wizard reads your agent's tools, asks which actions must never run without a check, and gives you one address. Point your agent at that address. Sheaf runs the check on every call that passes through. Paste your key on the wizard's first screen.
Or run it on your own machine
The same check, as a small program you install from npm. It holds your real tool credentials and your key; the agent sees neither. Choose this only if your tool calls may not leave your machines.
npm i -g @sheaf-labs/mcp-proxy SHEAF_API_KEY=sk_pod_… sheaf-proxy sheaf-proxy.config.json
Run it inside OpenSheaf
An agent made in the builder runs inside OpenSheaf on Sheaf's own machine by default: a sandbox whose only door is Sheaf, with the check reading every tool call before it leaves. Nothing to install. To run the same agent inside OpenSheaf on your own machine, one command:
export SHEAF_KEY=sk_pod_… # the agent's key, from the Agents tab of the console curl -sSf https://sheaf.one/opensheaf/run-agent.sh | bash -s -- <agent-id> "the task"
The console shows this line for each agent with its id filled in. The script fetches the agent's program, writes a sandbox policy where api.sheaf.one is the only address it can reach, starts a local OpenSheaf gateway if none is running, runs the agent, and deletes the sandbox at the end. A call the check holds never leaves the sandbox; it waits for you under Held. Read the script first if you prefer. Linux with Docker, and a build of OpenSheaf.
For an agent of your own that reaches its tool servers directly, attach the check to its sandbox policy. It reads MCP and REST calls on their way out and asks the gate from step 3 to decide each one:
# in the sandbox policy: the Sheaf check on the agent's tool server
network_middlewares:
sheaf:
middleware: sheaf/gate
config: { gate: "<gate id from step 3>", key: "sk_pod_…" }
on_error: fail_closed
endpoints: { include: ["tools.example.com"] }
OpenSheaf is Sheaf's own build of OpenShell, the open-source sandbox runtime from NVIDIA. OpenShell fences what an agent may reach and never reads what it sends. OpenSheaf keeps that fence and adds one thing inside it: the Sheaf check, which reads every tool call before it leaves the sandbox, holds it when it does not add up, and records it. Policies and images written for OpenShell run unchanged. OpenShell is an NVIDIA product under the Apache 2.0 licence; OpenSheaf and Sheaf are independent of NVIDIA.
After that
Run your agent as usual. The first checked call shows up on your account page: checked, held or released, with the record beside it. When a regulator asks why, you hand over the record.