RH LP Tools
Uniswap V4 liquidity on Robinhood Chain, from your phone. Find USDG pools, open single-sided ladders, and claim, close or re-enter them, on iPhone (Scriptable) or Android (HTTP Shortcuts).
Independent tools, named for the chain they work on. Not made by, endorsed by or affiliated with Robinhood, Uniswap or Scriptable.
Download
iPhone / iPad
Android
Setting up
About 10 minutes. You need iOS 14 or newer, a little ETH on Robinhood Chain for gas, and USDG to deposit.
1. Install Scriptable
Get Scriptable by Simon Støvring from the App Store. It is free, and it is what runs these scripts on your phone.
2. Create Robinhood Secrets
- Open this page in Safari on the same phone. Under Download, tap Copy code next to Robinhood Secrets.
- Open Scriptable and tap + (top right). A blank script opens.
- Long-press in the editor and tap Paste.
- Tap the title at the top of the editor and rename it to exactly
Robinhood Secrets, with the space and capitals. The other two scripts find it by that name. - Fill in your keys between the quotes (see Getting your keys). Leave
PRACTICE_MODE: true. - Tap Done.
3. Create Robinhood Pool and Robinhood Portfolio
- Back on this page, tap Copy code next to Robinhood Pool.
- In Scriptable, tap +, paste, rename it to exactly
Robinhood Pool, tap Done. - Do the same for
Robinhood Portfolio.
These are large files. If the paste looks cut off, scroll to the bottom of the script: the last line should be Script.complete();. If not, copy and paste again.
4. Practice run
- Tap Robinhood Pool in Scriptable's list to run it. The pool table loads (the first load can take a minute).
- Tap a zap button on any pool. It shows the plan and the gas, and sends nothing.
- Run Robinhood Portfolio the same way and try Claim and Close on a position if you have one.
- When the numbers look right, open Robinhood Secrets, change
PRACTICE_MODE: truetofalse, tap Done. From then on the buttons really send.
5. Home screen widget (optional)
- Long-press an empty spot on your home screen until the icons wiggle, then tap Edit or + (top left).
- Search Scriptable, choose the Medium or Large size, tap Add Widget.
- Long-press the new widget, tap Edit Widget, set Script to Robinhood Pool or Robinhood Portfolio, and set When Interacting to Run Script.
- Tap outside to finish. The widget refreshes on its own; tapping it opens the full table, where the buttons are.
Widgets only display. Opening, claiming and closing always happen in the full table, after a confirmation.
Updating
Tap Copy code for the script that changed, open it in Scriptable, select all (long-press, Select All), paste over it, tap Done. Never replace Robinhood Secrets: your keys and presets live there.
Set up before 26 September 2026, when the scripts were called RH Pool, RH Portfolio and RH Secrets? Rename RH Secrets to Robinhood Secrets (your keys stay in it), add the two new scripts as Robinhood Pool and Robinhood Portfolio, delete the old two, and point any widget at the new names.
If something goes wrong
- "Open buttons are off", "Set a wallet" or no buttons: Robinhood Secrets is misnamed, or
PRIVATE_KEYis empty or not 64 hex characters. - "ALCHEMY_API_KEY is required": the Alchemy key is missing, or you pasted the whole URL instead of just the key.
- "Uniswap API key required": fill in
UNISWAP_API_KEYin Robinhood Secrets and run the script again. - Balance shows but no positions: add a Blockscout key, then close and re-run the script.
- Widget says it can't find a script: the widget's Script setting points at an old name. Pick it again.
About 10 minutes. You need Android 8 or newer, a little ETH on Robinhood Chain for gas, and USDG to deposit.
1. Install HTTP Shortcuts
Get HTTP Shortcuts by Roland Meyer from Google Play. It is free and open source, and it is what runs the Android version of these scripts. You need version 4.7.0 or newer; if the import below says the file is too new, update the app.
2. Import RH LP Tools
- Open this page on the phone. Under Download, tap Install on Android.
- HTTP Shortcuts opens Import from URL with the address already filled in. Tap OK. It says 4 shortcuts imported.
- You now have a category called RH LP Tools with Robinhood Pool, Robinhood Portfolio and two widget refreshers.
If the button opens a web page instead of the app, open HTTP Shortcuts yourself, go to the menu (⋮) → Import / Export → Import from URL, and paste https://foxtroteth.github.io/rh-lp-tools/android/rh-lp-tools-android.zip.
3. Enter your keys
- Tap Robinhood Pool. The first time it offers to set up: tap Set up now.
- Paste each key when asked: Alchemy, your wallet private key, Blockscout, then Uniswap (see Getting your keys). The Uniswap key is required: without it the scripts stop and ask for it.
- Practice mode starts on: nothing is sent while you try things out.
Change any of them later from ⚙️ Settings, at the bottom of either script's page. Robinhood Pool and Robinhood Portfolio share the same settings.
4. Using it
- Each script opens as a page, like the iPhone table: one card per pool or per position, with its numbers and its buttons. Tap ⚡ $amount or ✏️ Custom to open a ladder, Claim, Close or Re-enter on a position, ↗ to open it in DexScreener.
- At the top: ↻ Refresh, 🔎 Search and the Sort buttons. At the bottom: ⚙️ Settings. Close the page with ✕ in its top corner.
- The first time you tap a button, the app asks whether to open the link. Tick Don't show again and tap OK; after that, buttons respond straight away.
- Every action asks first, showing the gas. When it finishes, the page comes back with the result at the top.
- The first load of each script can take a minute: short messages at the bottom of the screen say what it is doing. Robinhood Pool's buttons then answer in a second or two; Robinhood Portfolio's reload your positions first, so they take a few seconds.
5. Practice, then go live
- Try a zap in Robinhood Pool and a claim in Robinhood Portfolio. They show the plan and the gas, and send nothing.
- When the numbers look right: ⚙️ Settings (bottom of the page) → Practice mode → Turn off.
6. Home screen (optional)
- In HTTP Shortcuts, long-press Robinhood Pool or Robinhood Portfolio and choose Place on Home Screen for an icon that opens it.
- For a summary widget: long-press an empty spot on the home screen → Widgets → HTTP Shortcuts → Variable Widget → Add.
- Set Global Variable to
RH_PORTFOLIO_WIDGET(orRH_POOL_WIDGET), and When clicked, run shortcut to Robinhood Portfolio (or Robinhood Pool). Tap ✓. Make it bigger if the text is cut off. - For a cleaner look, in the same settings: Font Size about 13, Background → Color with a dark colour such as
#14171Aat 90%, and leave Widget Title empty. Without a colour, Android tints the widget from your wallpaper. Background colour needs Android 12 or newer. - It updates every time you open that shortcut. To refresh it in the background as well, edit Robinhood Portfolio Widget → Trigger & Execution Settings → Run repeatedly. That costs battery.
Only ever choose an RH_…_WIDGET variable for a widget. A widget shows its variable's value on your home screen, and the same list also holds your keys.
Updating
Tap Install on Android again. The import replaces Robinhood Pool and Robinhood Portfolio with the new version and keeps your keys, settings and saved data.
Installed before 26 September 2026, when they were called RH Pool and RH Portfolio? The same import renames them and keeps everything. A home-screen icon may keep its old label until you place it again.
Your keys on Android
- They are stored inside HTTP Shortcuts on this phone, marked secret (hidden in its variable editor and event history) and left out of its exports, so sharing or backing up your shortcuts from the app never includes them.
- Android's own backup of app data can include HTTP Shortcuts, and with it the saved key. On Android 9 and newer that backup is end-to-end encrypted with your screen lock. If that is not acceptable, use a phone kept only for this.
- Do not delete the
RH_variables in Global Variables: the scripts need them. Removing the key the right way is ⚙️ Settings → Remove the private key. - Only import RH LP Tools from this page. A shortcut file from anywhere else can read every variable in the app, keys included.
If something goes wrong
- Import fails with a version message: update HTTP Shortcuts from Google Play and tap Install on Android again.
- No ⚡ buttons on Robinhood Pool ("Open buttons are off"): the wallet private key is not set. Tap ⚙️ Open Settings on that card and add it; the buttons appear when the page comes back.
- "Add your wallet's private key in ⚙️ Settings": Robinhood Portfolio needs the key to list and manage positions. A watch-only address is used by the widget only.
- "Variable not found": an
RH_variable was deleted. Tap Install on Android again to restore it. - Slow or timed out: the app gives each request 10 seconds. Add a Blockscout key, and try again on a better connection.
Getting your keys
On iPhone they go into Robinhood Secrets. On Android the first run asks for them, and ⚙️ Settings changes them.
Alchemy (required)
Sign up free at alchemy.com, create an app on Robinhood Chain, and copy the API key (the short string, not the URL) into ALCHEMY_API_KEY.
Wallet private key (required to transact)
Use a fresh wallet you keep only for this, holding only what you are willing to risk. The key stays on your phone: the scripts use it to sign locally and never send it anywhere. Anyone who can read the file can spend that wallet, so never share Robinhood Secrets or paste the key anywhere else.
Uniswap (required)
Free at hub.uniswap.org: sign in, create an API key and copy it into UNISWAP_API_KEY. Robinhood Pool and Robinhood Portfolio do not start without it.
Blockscout (strongly recommended)
Free at blockscout.com. Without it, position lookups fall back to a public explorer that often times out: the symptom is a wallet that shows a balance but no positions.
Questions
How much is the service fee?
The scripts are free to download. Using them to transact charges a service fee, the same on iPhone and Android: 0.3 USDG for each ladder you open, however many slices it has (a zap in Robinhood Pool, or a re-entry or roll in Robinhood Portfolio), and 1.5% of the LP fees collected each time you claim fees or close, never of your deposit. Everything else is free: viewing pools and positions, swaps, cleanup and every run in practice mode. The 1.5% is worked out right before sending: the uncollected fees are read from the chain, any non-USDG part is valued at the pool's current price, and the cut is rounded up to the nearest 0.000001 USDG and paid in USDG. If a claim or close returns too little USDG to cover it, the rest comes from USDG in your wallet; if there is none, the same 1.5% is taken from each fee token instead, so a fee can never stop you exiting. A re-entry or roll pays both: 1.5% of the fees collected plus 0.3 USDG for the re-open. The fee is paid inside the same transaction as the action, so if the action fails, no fee is paid.
What does "single-sided ladder" mean?
You deposit only USDG, split across several slices placed below the current price. Nothing is bought up front, so there is no slippage on entry. The ladder earns fees only once the price falls into it, and as it does, your USDG is converted into the token.
Positions don't show up
Add a Blockscout key. The public explorer is slow and unreliable; with a key, lookups are fast. Newly opened positions can also take a minute to be indexed.
How do I update?
Copy the new code for Robinhood Pool or Robinhood Portfolio and paste it over the old script. Robinhood Secrets is never replaced, so your keys and presets carry over.
Risks
- Providing liquidity can lose money. If the price falls through your ladder, you end up holding the token at a lower value than the USDG you put in.
- Many tokens on this chain are new, thin and volatile. Check a pool's TVL before depositing.
- These scripts are provided as-is, without warranty. You sign every transaction and are responsible for it. Nothing here is financial advice.