Documentation

Trade with an AI agent

Let an AI agent trade bskts baskets for you with a limited key of its own: install the skill, approve it, trade, and revoke it at any time.

15

AI agents

An agent can trade baskets and buy Weekend Cover from your bskts account on its own, within limits you approve once. It uses its own key, never your wallet, and the limits are enforced on chain: a daily dollar budget, a slippage cap and an expiry. It can never withdraw, and you can revoke it at any time in the Agents tab. New to this? Start with the overview.

Which setup is yours

Your agentUseIt can
Can run commands: OpenClaw, Hermes, Claude Code, Codex, Cursor and othersThe bskts skillTrade on its own, within your limits
Your own bot or scriptnpm create @bskts/agent (Node 20+)Trade on its own, from your code
A chat assistant: Claude, ChatGPTThe MCP serverRead markets and prepare trades for you to sign

1. Install the skill

On the machine your agent runs on, run this yourself in a terminal (any: Command Prompt, PowerShell or a Linux shell). It uses the open skills installer, which knows where each agent keeps its skills:

npx skills add Tokenise-au/bskts-sdk --skill bskts -g
  • Which agents? Pick yours (space to select, Enter to confirm). The “Universal” group (Codex, Cursor, Gemini CLI, Copilot and others) is always included: they share one folder, ~/.agents/skills.
  • Symlink or copy? Symlink, the default, keeps one copy and links each agent to it; on Windows it makes a junction, which needs no admin rights. Copy works too.
  • Security panel. The installer shows scanners’ ratings. A trading skill is flagged for handling money; see what it can do.
  • On a server, without the questions: add the agent and -y, for example -a openclaw -y (it installs to ~/.openclaw/skills/bskts), -a claude-code or -a hermes-agent.

The skill is two files, SKILL.md and one self-contained script. It needs Node 20.19 or later and installs nothing else. Then start a new chat: agents load skills when a session starts.

2. Set up and approve

Tell your agent, with your wallet address (the one you log in to bskts with; the Agents tab shows this message with it filled in):

Set up bskts trading for my wallet 0x… using the bskts skill. Send me the approval link it prints, exactly as printed. Dry run every trade first and ask me before sending a real one.

It creates its own key on its machine (~/.bskts-agent/.env, never shown) and replies with a link like bskts.xyz/account/agents/connect?agent=0x…. Open it while logged in: the Connect form opens with the agent’s address filled in. Choose a daily turnover, a maximum slippage and an expiry, and sign once. The suggested limit is 10% of the account’s USDG (at least $10, at most $100) for seven days. Your agent then confirms it is active.

3. Trading

  • Dry run first, always. Without --send the skill only builds the trade. It reports the shares and the most it would spend, and that the trade is not simulated: an agent’s trade is unsigned until it is sent, and the relayer simulates the signed trade just before broadcasting and refuses it, spending nothing, if it would fail.
  • Live only on your say-so. The agent asks before every real trade unless you tell it in plain words that it may trade on its own within your limits.
  • Sizes: each trade is $5 to $10, the ceiling per signed trade; more means several trades. The daily limit counts buys and sells and resets at 00:00 UTC, so leave room to sell what you buy.
  • Fees: no ETH. A small network fee, usually a few cents, comes out of the account’s USDG, on top of the normal basket costs.
  • Safe retries. Each live trade has an ID. If a send times out, the agent reruns it with the same ID, which checks the chain and never sends twice.
  • Weekend Cover: the agent can buy protection on baskets the account holds, if Cover is on for the account. It never underwrites.
  • Every trade shows in Portfolio → Agent activity, with a link to the transaction.

Updating, revoking, starting again

  • Update: npx skills update. Ask your agent for its version to see which it runs.
  • Change limits or revoke in the Agents tab, from any browser or device. Revoking stops new trades at once; open orders, schedules and Cover listings keep their terms, so cancel them in Portfolio and My cover.
  • Reconnect after a revoke: a revoked key can’t be approved again. Delete ~/.bskts-agent on the agent’s machine and ask it to set up again; it makes a fresh key.
  • Remove: npx skills remove bskts -g, then revoke the key.

When something goes wrong

  • The agent doesn’t know the skill: start a new chat. Still nothing? Check the folder has SKILL.md (for example ~/.claude/skills/bskts or ~/.openclaw/skills/bskts).
  • The agent wants to install it itself: some agents rightly refuse to download code that will hold a key. Run the install command yourself.
  • SESSION_INACTIVE: not approved yet, expired or revoked. Open the approval link again (expired) or reconnect (revoked).
  • SESSION_LIMIT: over today’s turnover or your slippage cap. Wait for 00:00 UTC or raise the limit in the Agents tab.
  • INSUFFICIENT_FUNDS: the account needs USDG, including a few cents for the network fee. Deposit in Portfolio.
  • UNCERTAIN: a send’s outcome is unknown. The agent reruns the same command with the same ID; it never sends a duplicate.
  • An approved agent isn’t listed in another browser: it is, under Active, as “Agent 0x…”. Names are kept per browser; name it there.

What the skill can and can’t do

  • Its key is its own, on the agent’s machine; only the public address leaves it. Never give an agent your wallet’s private key or recovery phrase.
  • The chain, not the skill, enforces the limits: basket trades and Weekend Cover only, within your budget, slippage and expiry. No withdrawals.
  • Nothing is downloaded or run at install or runtime: the script is built in the open repo and checked against its source in CI. It talks only to api.bskts.xyz and bskts.xyz.
  • Source: github.com/Tokenise-au/bskts-sdk/skills/bskts.
Agent trading is newly released. Start with a small budget and watch what your agent does. Its trades are real, and markets move.