Studio Bot Cockpit
Your command center for every bot you operate. The cockpit organizes all configuration, monitoring, and management into one tabbed interface.
What is this?
When you create a bot in Studio, it gets its own cockpit — a dedicated space with 12 tabs covering everything from AI personality to live trading positions. The cockpit header shows the bot's current status (Draft, Ready, Running, Paused, Stopped, or Archived) and gives you Start, Pause, and Emergency Stop controls. Real-time status updates arrive through a live WebSocket connection, so the header reflects what the trading engine is actually doing right now.
Prerequisites
- A Balchemy account connected with a Solana or EVM wallet
- At least one bot created via Studio → New Bot
- For trading features: a custodial or delegate wallet assigned to the bot
The Studio dashboard
Before entering a bot cockpit, the Studio dashboard at /studio gives you a workspace-level view.
KPI strip
Four cards update in real time:
| Card | What it shows |
|---|---|
| Total Equity | Sum of all wallet balances across active bots |
| PnL | Unrealized + realized profit/loss across the workspace |
| Active Bots | Count of bots currently in Running state |
| Risk Exposure | Aggregate risk percentage across all positions |
Charts
The PnL Performance chart (area line, 2/3 width) shows your equity curve over time. The Exposure donut (1/3 width) breaks down your portfolio by asset, letting you spot concentration risk at a glance.
Recent Activity feed
The activity feed shows the last 50 events across all bots: trades executed, bots started or stopped, wallet events, and system alerts. Every entry is timestamped and linked to its source bot. Click View All to go to /studio/trades for the full ledger.
AI Copilot drawer
Click the Copilot button in the dashboard header to open a side drawer. Select a bot, then ask questions about your portfolio, strategies, or market conditions. The copilot uses that bot's AI model and knowledge base to answer. It is a conversational interface on top of your actual data — not a static FAQ.
Bot cockpit overview
Navigate to any bot from the Bots list or from the dashboard activity feed. The cockpit loads with 12 tabs in a horizontal scrollable row.
Tab navigation
Use arrow keys to move between tabs when any tab has focus. The active tab shows a teal underline indicator that slides with a spring animation. On mobile, the tab row scrolls horizontally with a fade hint on the right edge.
Tab-by-tab guide
Overview
The first tab you land on. It shows real-time trading state for this specific bot.
The KPI row displays Total Trades, Win Rate, Average PnL, and the bot's uptime status (Active/Inactive). Below that, an open positions table lists every live holding: token symbol, chain, net amount, average entry price, current price, and PnL in green (profit) or red (loss). An open orders panel shows pending limit and DCA orders. The Bot Info panel shows the name, status, connected platforms, and a link to full trade history.
Strategy
Where you define how this bot trades. The Strategy tab has two sections: the Default Order Profile (collapsible) and the named Strategy list.
The Default Order Profile sets the baseline for every trade this bot makes: default amount and unit (SOL, USDC, or USD), slippage tolerance in basis points, priority network fee in lamports, and optional percentage guardrails (Max Loss %, Stop Loss %, Trailing Stop %). You can also toggle Auto Approve here to let orders bypass the manual queue.
Named strategies are stackable. Create up to 5 per bot and choose a type: DCA, Limit, Trailing Stop, Take Profit, or Stop Loss. Each strategy has its own parameter editor inline. See Automation and DCA Strategies for the full breakdown.
Risk
Portfolio-level guardrails configured with sliders. The Risk tab protects you from runaway automation and misconfigured strategies. Set Max Drawdown (5–50%), Max Position Size (5–100%), Risk per Trade (0.5–10%), and Daily Loss Limit (1–25%). Each slider shows a warning threshold in amber — values above that threshold are allowed but flagged. The Execution Mode switch here maps to the same setting in the Automation tab.
Automation
Trade execution approval controls. Choose from three modes:
- Manual — the bot suggests trades; you review and approve every one
- Semi-Auto — trades within pre-approved position and loss limits execute automatically; exceptions require your approval
- Auto-Submit — the bot executes all trades within guardrails without confirmation (requires a dialog to confirm enabling)
The Pending Approvals queue shows orders waiting for your decision. Each entry shows the pair, side (BUY/SELL), amount, and price, plus the bot's confidence score. Tap Approve to send the order to the trading engine, or Decline to drop it from the queue (declined orders expire automatically on the server — there is no server-side reject endpoint). See Automation and DCA Strategies for full detail.
History
A paginated log of everything this bot has done: trades executed, strategy activations, status changes, and system events. Filter by event type and date range. Each row links to the transaction on-chain where applicable. Use History to audit bot behavior after any unexpected result.
Knowledge
Upload documents and Q&A pairs that ground this bot's responses in your own data. Accepted file types: PDF, TXT, Markdown. The RAG Configuration section at the bottom controls the similarity threshold, max results, chunk size, and overlap. See Knowledge Base for the complete workflow.
Training
The Training tab and its sub-route (/training/proactive) let the bot improve itself from real conversation history. When Proactive Learning is enabled, the system scans past messages, identifies gaps, and proposes knowledge additions and personality refinements. Each suggestion requires your approval before it takes effect unless Auto-Apply is on. Settings include aggressiveness (Cautious / Balanced / Aggressive), minimum message count before analysis runs, and the lookback window.
Platforms
Connect this bot to external channels. Currently available: Telegram, Discord, X, and Web Widget. Each platform card has a toggle switch (connect/disconnect) and a Configure button that opens a settings sheet. The platforms page uses the Balchemy central adapter model — you do not provide raw Telegram or Discord bot tokens. Instead you configure policy: access mode, allowed users, guild IDs, channel rules. See Platform and MCP Settings for full per-platform detail.
Widget
The embeddable web chat surface. Configure branding (title, welcome message, primary color, position, brand name), domain allowlist, quick prompts, and payout wallet. The Embed tab gives you the <script> tag to copy. A live preview lets you interact with your current configuration before embedding. See Web Widget Integration for the full guide.
MCP
Expose this bot to external MCP clients like Claude Desktop. The MCP tab has four sub-tabs: API Keys, Tools, Agent Card, and Logs. Create keys with scoped permissions (read / trade / manage), browse the 100+ available tools grouped by scope, publish or preview your ERC-8004 agent card, and review operation logs. See Platform and MCP Settings for guidance on when to use MCP vs Hub.
Analytics
Usage statistics specific to this bot: message volume, unique users, session duration, and response time trends. Charts show 7-day and 30-day rolling windows. The analytics tab is read-only — data updates every few minutes.
Config
All AI personality and response behavior settings for this bot. Five sections: AI Personality (name, description, expertise, tone), LLM Settings (model, temperature, max tokens), Response Mode (Strict / Balanced / Creative), Guardrails (trade confirmation, risk token blocking, position limits, NL trading), and Response Settings (DM trigger, group trigger, personalization level, context depth, rate limit, timeout). See Bot AI Configuration for the full reference.
Top-level Studio pages
Beyond the per-bot cockpit, Studio has four top-level pages accessible from the sidebar:
| Route | What it shows |
|---|---|
/studio | Workspace dashboard — KPIs, charts, activity feed, copilot |
/studio/portfolio | Portfolio view — all positions across all bots |
/studio/trades | Full trade ledger — every order, filterable and sortable |
/studio/wallets | Wallet management — custodial and delegate wallets, dual-chain (Solana + EVM/Base) |
The Wallets page is where you fund the bots. Custodial wallets are created and managed by Balchemy with AES-256-GCM encryption. Delegate wallets are wallets you own that you authorize the bot to trade from.
Recommended workflow
Follow this sequence when setting up a new bot:
- Go to Studio → New Bot and complete the 5-step wizard (name, personality, model, channels, trading).
- Open the bot cockpit and go to Config. Refine the AI personality, set the response mode, and confirm guardrails.
- Go to Platforms and connect the channels you need. Configure per-channel policy in the settings sheets.
- Go to Knowledge and upload any documents or Q&A pairs the bot should reference.
- If the bot trades, go to Strategy and create at least one strategy. Go to Risk and set sensible guardrails.
- Go to Automation and choose your execution mode. Start with Manual until you trust the bot's behavior.
- If you need a website surface, go to Widget, configure branding and domains, and copy the embed snippet.
- If you need MCP access, go to MCP, create a key with the scope you need, and copy the secret immediately — it is shown only once.
- Start the bot from the header control and watch the Overview tab for live positions and orders.
Tip: Always test with small trade sizes in Semi-Auto mode before switching to Auto-Submit. The Emergency Stop button in the header cancels all open orders immediately.
Key concepts
| Concept | Meaning |
|---|---|
| Bot status | Draft, Ready, Running, Paused, Stopped, or Archived — derived from isActive flag and platform connector health |
| Execution mode | Manual / Semi-Auto / Auto-Submit — controls whether trades need human approval |
| policyMode | standard (1% fee) or enterprise (0.5% fee) — set per-bot, affects swap fees |
| Copilot | AI assistant scoped to a single bot, accessible from the dashboard drawer |
| Emergency Stop | Immediately halts all trading and cancels open orders — requires confirmation |
| Central adapter | Balchemy manages Telegram/Discord bot credentials; you configure policy, not tokens |
Common issues
The bot shows "Stopped" even though I started it. A platform connector (usually Telegram or Discord) returned an error status. Go to Platforms, check the connection status badge, and re-configure the platform settings sheet.
I see pending approvals but cannot find them. Go to the Automation tab. The Pending Approvals section appears below the execution mode selector. Declined orders expire automatically — they are not rejected on the server.
The copilot says "Select a bot to use the copilot." You need to select a bot from the dropdown in the copilot drawer header. The copilot always operates within the context of one specific bot.
I do not see the Widget or MCP tabs. All tabs are always present. Scroll the tab row right on mobile, or widen your browser window on desktop.