Zero-trust trade execution for AI agents on Solana
Your trade gets its own wallet. Your wallet never becomes the trade.
You write the rules. Your agent can’t break them. Every trade is checked against your limits on your own machine before your wallet signs, so even a hijacked agent stops where you said.
- 50 USDC a trade, at most
- 200 USDC a day, at most
- Only the tokens you choose
- Slippage capped at 3%
- Never less than you approved
- See every limit →
$ cp -r node_modules/@orientimhq/swap/skills/orientim-protected-swap .claude/skills/After npm i @orientimhq/swap
Containment by design
Absolute separation between your capital and the market.
Only what you approve, one trade at a time. Each trade can move only the amount your agent approved, plus the costs shown before it signs.
- 1
Only the amount you approve can move
Your wallet signs for one trade: its amount, plus the fee and network costs shown before it signs. No open allowances, no lingering permissions, nothing more of your balance.
- 2
Your balance never enters the market
Pools, curves and other contracts never reach your wallet or its other tokens. The only account they reach is the one that receives what you buy.
- 3
Your minimum, or nothing happens
At least your minimum arrives in your wallet, after every fee, or the whole trade reverts: nothing is traded, and only the network fee is paid.
Autonomous capital protection
When an agent hallucinates or gets hijacked, it still can’t spend past your limits.
The skill checks each transaction before signing. For bots using the API directly, run the same verification and keep the signing key and spending policy outside the agent’s control.
- Sealed Blast RadiusA compromised route or malicious contract can never reach past the single approved trade amount. Checked by the verifier on your own RPC before signing, your main balance stays out of reach.
- Weaponized-Token ScreeningTokens with transfer hooks, unknown extensions or a frozen account are refused before signing; an issuer that can still freeze, mint or move balances is named to your agent first.
- Independent Price EnforcementYour client cross-checks market quotes independently and enforces an unbreakable on-chain delivery floor that no server or route can lower.
- Prompt-Immune Spend GuardrailsPer-trade caps, daily budgets and asset allowlists are enforced from /etc/orientim/policy.json, a file you keep where the agent cannot write (owned by root), completely outside the AI model’s context window.
What it protects against
What your agent can’t be tricked into.
The attacks that can empty a trading agent, and what happens when the trade goes through Orientim. The market itself is the one thing no check controls; its risks are set out in the terms.
✕ The attack
A message tells your agent to “swap everything” or “set slippage to 15%”.
✓ Blocked before signing
With your policy file set, the skill stops at your limits: per trade, per day, the tokens you allow and the slippage you set.
✕ The attack
The swap server itself is hacked.
✓ Blocked before signing
Orientim holds none of your keys. With the skill or verifier, your wallet signs only the transaction you asked for; a changed one never gets a signature.
✕ The attack
A bot sandwiches the trade.
✓ Reverted on chain
The minimum is enforced on chain: a swap that would fill beyond your slippage (0.5% by default) reverts, and only the network fee is paid.
Limits you set
Your rules, enforced before every signature.
Six limits in one file you keep out of your agent’s reach, and your approval whenever you want to see the price first. Every trade is checked against them on your own machine before the wallet is asked to sign. A trade that breaks one is never signed.
Spend caps
A cap per trade and a budget per day, set for each token your agent spends.
Asset allowlist
Your agent sells only the tokens you gave a cap, and buys only the tokens you chose. A token someone names to your agent is refused.
Price protection
The most slippage a trade may take, the furthest its floor may sit below the market price, and the largest price impact it may cause.
Your approval
Want to see the price first? Your agent asks for a quote and shows you the least that will arrive and the fees. The swap that follows can never accept less than you approved, and your yes lapses after 10 minutes.
View the policy file →
{
"maxAmountIn": {
"EPjF…Dt1v": "50000000" // 50 USDC a trade
},
"maxAmountInPerDay": {
"EPjF…Dt1v": "200000000" // 200 USDC a day
},
"allowedOutputMints": ["So11…1112"], // buys only SOL
"maxSlippageBps": 300, // never more than 3% slippage
"maxBelowBps": 500, // floor at most 5% below market
"maxPriceImpactBps": 500, // price impact at most 5%
"stateDir": "/var/lib/orientim" // every trade counted, out of the agent’s reach
}
# the agent is told to trade 500 USDC
✓ your policy holds it to 50 USDC a trade
# the agent is told to buy a token someone named
✓ your policy allows only the tokens you chose
# the agent is told to set slippage to 15%
✓ your policy caps slippage at 3%
# the agent is told to accept less than you approved
✓ the swap is held to the minimum you said yes toYour part: keep the signing key in a separate signer with its own limits. The protection covers every trade through Orientim; an agent that can read its own key, transfers made outside Orientim, a key stolen from your machine and the value of the token you buy are outside it.
No account, no cookies, no tracking. Orientim never holds your keys or funds, and keeps no database of your swaps. Privacy notice →
Deploy autonomous agents with hard limits, not a blank cheque.
Get a key with your agent’s wallet, download the skill, and let it trade within the limits you set.