A prompt is an agent. What gets saved at creation is your original text; every round, the agent reads that text and combines it with the data it looks up to make a decision. The elements table and hard boundaries that Check strategy reads out of your text are there for you to review and for the platform to enforce; rules you wrote that the platform can’t carry out are listed separately.
This page covers step 2 of New Agent, Rules. The whole flow is in Write your own rules.
How to write
Write in the order you would operate by hand, using common LP terms: Spot / Curve / Bid-Ask, one-sided / two-sided, “$200”, “500K”, “pool age 3 days”, “reset the range after 30 minutes out of range”. Prompts can be written in English or Chinese. The hint on the New Agent page is: spell out which pools, how to place positions, how much to commit, and when to exit; anything you write as a range or “depends” is judged by the agent each round.
A few tips:
- Use numbers wherever you can. “TVL above $500K” or “stop loss at a 10% loss” is less likely to be misread than “big pools” or “leave if it loses too much”. Numbers are also rules the agent follows when executing, not just references.
- If you are deliberately leaving something to the agent, say so. “Range 5%–15% depending on volatility”, “Spot or Curve are both fine”, “out of range: depends” are read as Left to the Agent, and the agent chooses within the range you gave.
- Write named pairs in full. “SOL-USDC” means only SOL’s USDC pools; “SOL-quoted pools” means SOL-quoted pools for any token. If you want “any SOL-quoted token”, do not name a pair.
- Paste the address if you worry about look-alike tokens. Token symbols can be impersonated; a pasted mint address is used as an “only” or “exclude” address.
- Every check reads the whole text. If you delete a sentence, the corresponding value disappears too; results from the previous check are not kept.
Amounts such as “$200” or “200U” are read as 200 US dollars, and “500K” is 500,000.
Strategy elements
The Strategy elements panel on the right has two groups: if any of the four required elements is missing, the agent cannot be created; the eight suggested elements are optional, but if you write them the agent follows them; they’re folded under the required ones. Required n/4 at the top shows how many required elements you have written.
Required
| Element | What it asks | Example sentence |
|---|---|---|
| Pool universe | Which pools: quote token, specific tokens, or pool type | Only trade hot SOL-quoted meme pools |
| Range and shape | How to place positions: Spot / Curve / Bid-Ask, one-sided or two-sided, how wide the range is (can be a range) | Place Bid-Ask 10%–15% below the current price |
| Funds | How much per position (can be a range), and the most in total | $200 per position, $600 total budget |
| Stop loss and exit | When to exit: the loss that triggers stop-loss, or other exit signals | Stop loss at a 10% loss |
Suggested
| Element | What it asks | Example sentence |
|---|---|---|
| Pool filters | Thresholds such as TVL, volume, fee rate, pool age | TVL above $500K, 24h volume above $1M, pool older than 3 days |
| Entry timing | When it is worth opening: rising volume, trend, situations to avoid | Enter only when volume is rising and price hasn’t spiked one way |
| Open positions | The most positions open at the same time | Up to 2 positions open at once |
| Out-of-range handling | What to do when the price leaves the range: how long to wait, reset the range or exit | Reset the range at the current price after 30 minutes out of range |
| Take profit | The gain at which to leave | Take profit at 30% |
| Hold time | The longest a position is held | Hold for at most 24 hours |
| Compounding | The fee amount at which to compound | Compound when fees reach $10 |
| Risk exclusions | Which tokens or situations to avoid | Skip tokens whose top 10 holders own more than 40% |
The “example sentence” is exactly what the Add: … button appends to the end of your prompt when the element is missing.
Status of each element
| Shown | Meaning |
|---|---|
| Check mark + value | Stated in the prompt. The value can be an exact number, a range, or a sentence of criteria |
| Left to the Agent | You explicitly left it to the agent (“depends”, “based on volatility”, or only gave a range) |
| Missing | A required element was not written. The agent cannot be created until you add it |
| Pending check | Just added to the prompt with Add: … and not yet checked again |
Below each value is the matching original text; clicking it selects that sentence in the prompt on the left. The original text must be found verbatim in the prompt; if it cannot be found, no original text is shown, rather than inventing a sentence.
Checking
After you click Check strategy (⌘ Enter), the AI reads the whole prompt in one pass and produces both the elements table and the hard boundaries handed to the platform for enforcement. When the check finishes, one or two sentences appear below the prompt, for example which element is still missing or what you could add.
- You changed the prompt after the check: the elements panel shows The prompt has changed. Below are the results of the last check., next to Check again. You cannot create the agent without checking again, because what runs must be the text you have now.
- You wrote rules that can’t be done: they’re listed under Some rules in your prompt can’t be done yet; see What can’t be done.
- The AI is temporarily unavailable or returned a bad format: you see “AI is unavailable right now. Click Check strategy again in a moment.” or “AI’s result was malformed, so the previous version was kept. Check again, or make the prompt more specific.” The previous results stay unchanged; just check again.
- When the agent cannot be created yet: a yellow notice below the elements panel states the reason, for example “The prompt doesn’t cover “Funds” yet“.
While you type, the input box offers gray completion suggestions; press Tab to accept one.
Hard boundaries and agent judgment
The principle of a prompt agent is: the platform only guards the boundaries; the playbook is left to the agent. After the check, you can expand Hard boundaries the platform enforces on the right to see every rule the platform enforces deterministically.
Enforced by the platform (hard boundaries)
| Boundary | Description |
|---|---|
| Total budget | The most this agent can use. If you did not write a total budget, it is filled in as “per position × number of positions” |
| Quote token | For example “SOL-quoted” or “USDC pools” |
| Named tokens, excluded tokens, pasted addresses | “Only JUP”, “Exclude BONK”, mint addresses |
| Position structure | Layers or segments you explicitly wrote |
| Safety floor | Always on: excludes honeypots, freezable and high-tax tokens (except the freeze authority of the official USDC / USDT issuers); exits immediately if a token becomes unsafe while held (on by default) |
| Stop-loss | If you wrote a stop-loss line, it exits at that line, shown as “Exit at a loss of ≥ X% (enforced by the platform)” |
| Max hold | If you wrote a max hold, it exits at that limit, shown as “Exit after holding Nh (enforced by the platform)” |
| Price stop | If you wrote a price-based stop, it exits when the price reaches that line. Note the wording: “exit if the price falls below 8% of the entry price” means a 92% drop, not an 8% drop |
| Backstop stop-loss | If the prompt has no stop-loss, the platform exits at a 30% loss as a backstop |
| Same-token positions | At most 1 open position per token by default (a multi-segment plan counts as one); a number you write in the prompt replaces it |
| Cooldown after a stop-loss | After a stop-loss or price-stop exit, that token is not entered again for 120 minutes by default; a cooldown you write replaces it |
| Same-pool daily loss | If a pool’s realized loss within 24 hours exceeds 2% of the total budget, that pool is paused for 24 hours |
| General settings | Check frequency, slippage, swap back, retries, daily action limit, alerts; see General settings |
Stop-loss, price stop, max hold, and the backstop stop-loss are checked every minute. The agent cannot cancel them; it can only exit earlier.
In addition, every open must pass the platform’s safety checks (on-chain snapshot, token safety, sell stress test, authorization issuance); if any of them fails, no position is opened this round.
Agent judgment (by your original words)
The following are not executed by the platform as fixed numbers; instead, the agent reads your original words each round, looks up data, and decides:
- Pool thresholds (TVL, volume, fee rate, pool age, top-10 holders…), pool type, entry timing, cooldown after an exit;
- Range width, shape (Spot / Curve / Bid-Ask), and direction (two-sided / below the current price / above the current price);
- How many positions and how much per position (the total budget is still a hard boundary);
- How long to wait when out of range, whether to reset the range or exit, how many range resets per day, when to compound;
- Take-profit, early exits, and any other exit signals you wrote.
Where you wrote a number, the agent follows the number; where you wrote a range or “depends”, the agent chooses within the range and states its reasoning in the decision. A few constraints:
- The agent can only pick from pools actually returned by this round’s scan.
- Amount: if you wrote a per-position amount, it uses that; if you wrote a maximum number of positions, it splits the budget across that many positions instead of using it all on the first one; if you wrote neither, a single position is at most 1/3 of the total budget.
- Range: at most 60% wide on one side (if your original words specify something wider, your words win). A position has at most 4 segments of 65 bins each; when a pool with a small bin step cannot fit a wide range, the range is narrowed to fit the pool, and the decision states “Adjusted to your boundaries: …”.
- When the agent does not produce a usable decision, no position is opened this round.
What can’t be done
Some rules have nothing to enforce them even if you write them. The check lists them under Some rules in your prompt can’t be done yet, each with Alokumi can’t do this yet:, your words and the reason. This doesn’t block creating the Agent: you can rewrite them, or accept that the Agent won’t act on them.
| Kind | Examples | Why |
|---|---|---|
| Clock, weekday, calendar | “only trade during US market hours”, “close everything before Friday’s close”, “no opens at night” | The engine has no time triggers. Rules on hold time or minutes out of range are supported |
| Across pools, Agents or the whole account | “if pool A drops, exit pool B”, “at most 2 positions across all my Agents”, “hedge” | An Agent only sees its own pools, positions and funds. “At most N open” and “at most N positions per token” within one Agent are supported |
| Indicators it can’t see | “enter on an EMA20 cross”, “VWAP”, “daily Supertrend”, “RSI(7)” | The Agent can compute only Supertrend (10, 3), RSI (2 and 14), Bollinger Bands (20, 2), MACD (12, 26, 9) and 12-bar price change, on 5m / 15m / 30m / 1h / 4h candles, with fixed parameters |
| Outside information | Twitter, news, call groups, whale wallets, funding rates, exchange listings | The Agent has no outside data sources. To follow smart money, copy a position from the leaderboard, or create a Copy Agent |
| Other | Limit orders, leverage, lending, cross-chain, anything outside Meteora DLMM | Not supported |
Each round, the Agent can do a fixed set of things: scan pools, look up pool data, check price history and indicators, check token risk, backtest a range, look at its own open and closed positions, and simulate a plan. It can’t see your other Agents or other wallets.
How common phrasings are read
| You write | Read as |
|---|---|
| “SOL-USDC” | Only SOL, quoted in USDC |
| “JUP-SOL” | Only JUP, quoted in SOL |
| “SOL-quoted pools”, “hot SOL-quoted tokens” | Quoted in SOL, any token |
| “place it down to 25% of the current price” | The lower edge is 25% of the current price, i.e. 75% below; “25% below the price” means 25% below |
| “measure in USD”, “count in dollars” | Stop-loss / take-profit are measured in USD; by default they are measured in the quote token (a SOL-quoted pool is measured in SOL) |
| “keep the tokens after exiting”, “don’t sell back” | Turns off swap back after closing |
| “don’t auto-exit if the token has problems” | Turns off “exit immediately if a token becomes unsafe” |
| “at most N actions per day” | Daily action limit of N (unlimited by default) |
| “stay away from a pool once it loses more than X% of the budget in a day” | Changes the same-pool daily loss ban ratio to X% |
| “no stop loss” | No stop-loss, and the backstop stop-loss is turned off too |
After the check, make sure the quote token and tokens in Pool universe and Hard boundaries the platform enforces match what you meant: if you named a token, only pools containing that token will be traded.
General settings
General settings holds execution details that are not part of the playbook; it’s under Change rules at the top right of the step-3 card. Anything you mentioned in the prompt is carried in automatically and marked From prompt; values you change in the panel are not overwritten by the prompt when you check again later.
| Setting | Default | Description |
|---|---|---|
| Check frequency | Every 30 minutes | How often the agent wakes up for a round. Hard boundaries such as stop-loss and max hold are not affected by it; they are checked every minute. During the public beta, watching and paper-funds agents run at most once every 10 minutes |
| Max slippage for open / range reset | 1% | The maximum slippage allowed when opening, topping up tokens, resetting the range, or exiting |
| Principal between positions | Pool’s quote token | Pool’s quote token: funds stay in each pool’s quote token (SOL for SOL pools), so idle funds move with SOL. USDC: opens swap USDC into the pool’s tokens, exits swap both back to USDC, and PnL is in USD |
| Swap between SOL and USDC | On | Real funds only: if the Vault holds only SOL and the pool is quoted in USDC (or the other way round), swap first, then swap back to the token you deposited after exit. When off, those pools are skipped and you’re told which token to deposit. See Which token to deposit |
| Swap back leftovers after exit | On | After an exit, sell the tokens received back into the quote token; when off, the received tokens are kept |
| Max swap-back slippage | Same as open | The maximum slippage allowed when swapping back |
| Skip dust below | $0.1 | Leftovers worth less than this amount are not swapped |
| Max retries on failed open | 3 | If opening in the same pool fails more than this many times in a row, the pool is not picked again for 24 hours |
| Daily action limit | Unlimited | The cap on total opens, range resets, compounds, and similar actions within 24 hours; exits are not limited by it |
| Telegram alerts | On | Opens, exits, and errors are all pushed; when off, alerts appear only in the web app. You need to connect Telegram in Settings first; see Sign-in and notifications |
After creating
The agent page’s Strategy tab shows Strategy prompt (your original text) and the strategy card on the left, and the Dry run and backtest entries on the right.
Editing the prompt:
- Click Edit prompt next to Strategy prompt. It opens the New Agent editor pre-filled with this agent’s current prompt and general settings, with a notice at the top that you are editing an agent that is already running.
- After editing, click Check again. As when creating, you can only save when all required elements are present and the prompt has not changed since the check.
- Click Save changes. This updates the same agent and takes effect at the next check; the agent’s mode and open positions stay unchanged. If you changed the total budget or limits, the real-funds authorization is re-issued automatically under the new strategy; you do not need to switch modes again.
The strategy card is read-only: for a prompt agent, the strategy card shows the hard boundaries the platform engine enforces — stop-loss, price stop, max hold, total budget, and max concurrent positions — and they cannot be changed separately from the prompt. Everything else (pool selection, range, range resets, take-profit) is judged by the agent from the prompt; to change it, change the prompt.