ethereumdegen/stark-bot/uniswap-lp
Claude Code and agent skill by ethereumdegen/stark-bot
- community
Checking that the SKILL.md file is still in the repository.
Provide liquidity on Uniswap V4 (Base) — deposit to pools, withdraw, collect fees.
Install
npx vskill@latest install ethereumdegen/stark-bot/uniswap-lpSKILL.md
Uniswap V4 LP Skill
Provide liquidity on Uniswap V4 pools on Base — create positions, increase/decrease liquidity, and collect fees.
CRITICAL RULES
- ONE TASK AT A TIME. Only do the work described in the CURRENT task. Do NOT work ahead.
- Do NOT call `say_to_user` with `finished_task: true` until the current task is truly done.
- Sequential tool calls only. Never call two tools in parallel when the second depends on the first.
- Use exact parameter values shown. Especially
cache_asvalues — use exactly what is specified. - Always use WETH, not native ETH. If the user wants to LP with ETH, wrap it to WETH first using the
weth_depositpreset.
Pool Configuration
| Pool | Pool ID | Token0 | Token1 | Fee | Tick Spacing | Hooks | |
|---|---|---|---|---|---|---|---|
| STARKBOT/WETH | 0x0d64a8e0d28626511cc23fc75b81c2f03e222b14f9b944b60eecc3f4ddabeddc | WETH (0x4200000000000000000000000000000000000006) | STARKBOT (0x587Cd533F418825521f3A1daa7CCd1E7339A1B07) | 10000 (1%) | 200 | 0x0000000000000000000000000000000000000000 |
Token0/token1 order is determined by address sort (lower address first). WETH < STARKBOT by address.
Key Addresses (Base)
| Contract | Address | |
|---|---|---|
| V4 PositionManager | 0x7c5f5a4bbd8fd63184577525326123b519429bdc | |
| V4 StateView | 0xa3c0c9b65bad0b08107aa264b0f3db444b867a71 | |
| Permit2 | 0x000000000022D473030F116dDEE9F6B43aC78BA3 | |
| WETH | 0x4200000000000000000000000000000000000006 | |
| STARKBOT | 0x587Cd533F418825521f3A1daa7CCd1E7339A1B07 |
Tick Range Guidance
When creating a position, the user must choose a tick range. Offer these options:
- Full range: tickLower = -887200, tickUpper = 887200 (like V2, simple but less capital efficient)
- Wide range: approximately ±50% around current tick (balanced risk/efficiency)
- Narrow range: approximately ±10% around current tick (high capital efficiency, more IL risk)
Tick alignment: tickLower and tickUpper must be multiples of the pool's tick spacing (200 for STARKBOT/WETH). Round to the nearest multiple.
To compute ticks from price ratios around the current tick:
- For ±X% range: tickLower = currentTick - (X_ticks), tickUpper = currentTick + (X_ticks)
- Round both to nearest multiple of tickSpacing (200)
Operation A: Get Pool Info
Read pool state to get current tick, price, and liquidity. No tasks needed — just direct tool calls.
A1. Select network
A2. Read pool slot0
Returns: sqrtPriceX96, tick, protocolFee, lpFee.
A3. Read pool liquidity
A4. Calculate and report
Calculate approximate price from sqrtPriceX96:
- price = (sqrtPriceX96 / 2^96)^2
- Adjust for decimals: WETH has 18 decimals, STARKBOT has 18 decimals
- This gives STARKBOT per WETH price
Report: current tick, sqrtPriceX96, liquidity, approximate price.
Operation B: Create Position (Deposit) — 5 Tasks
Define tasks
Task 1: Prepare — look up tokens, check balances, read pool state
1a. Select network
1b. Look up WETH (token0)
1c. Check WETH balance
1d. Look up STARKBOT (token1)
1e. Check STARKBOT balance
Note: sell_token register now holds STARKBOT address (from 1d). The erc20_balance preset reads from token_address — you need to set it:
Then check balance:
1f. Read pool state
1g. Report and suggest tick range
Report balances, current tick, price, and liquidity. Suggest tick ranges (full/wide/narrow). Ask user to confirm amounts and range. Complete with finished_task: true.
Task 2: Approve tokens for Permit2
Uniswap V4 uses Permit2. Check and approve BOTH tokens if needed.
2a. Check WETH allowance for Permit2
2b. Approve WETH if needed
If allowance is insufficient:
Wait for confirmation.
2c. Check STARKBOT allowance for Permit2
2d. Approve STARKBOT if needed
If allowance is insufficient:
Wait for confirmation.
2e. Complete
If both were already approved:
Task 3: Build LP transaction via Uniswap API
IMPORTANT: Use the pool state values from Task 1 (currentTick, sqrtRatioX96, poolLiquidity).
Convert amounts to raw units first:
For WETH (token0, 18 decimals):
For STARKBOT (token1, 18 decimals):
Then call the Uniswap API:
The json_path: "create" extracts the transaction object from the API response's create field. The cached register will contain {to, data, value}.
After success:
Task 4: Decode and execute LP transaction
4a. Decode the cached transaction
This extracts uni_lp_contract, uni_lp_param_0, uni_lp_param_1, uni_lp_value from the cached transaction.
4b. Execute via preset
4c. Broadcast
The task auto-completes when broadcast_web3_tx succeeds.
Task 5: Verify
Report the result:
- VERIFIED: Position created successfully. Report tx hash and explorer link.
- REVERTED: Transaction failed. Tell the user.
- TIMEOUT: Tell user to check explorer.
Operation C: Increase Position — 4 Tasks
Used to add more liquidity to an existing position.
Define tasks
Increase Task 1: Prepare
Same as Create Task 1, but also ask the user for their position tokenId (they can find it on the Uniswap UI or from their wallet).
Increase Task 3: Build + Execute
Convert amounts to raw units, then call the API:
Then decode and execute (same as Create Task 4):
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/uniswap_lp/SKILL.md
Popularity
- Repository stars
- 46
- Repository forks
- 20
- 7-day trend score
- 19
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 19 Mar 2026, 7 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/ethereumdegen/stark-bot/uniswap-lp)