/install full-lp-workflow
Full LP Workflow
Overview
This is the most complex multi-agent orchestration in the system. It turns a single intent -- "I have $20K, find me the best yield" -- into a fully researched, risk-assessed, optimally-structured LP position through a 6-agent pipeline.
Why this is 10x better than calling agents individually:
- End-to-end automation: Manually, you'd need to scan opportunities, research pools, design a strategy, assess risk, potentially swap tokens, add liquidity, and verify -- each requiring different tools and expertise. This does it all in one command.
- Intelligent pipeline with compound context: Each agent builds on all prior agents' findings. The lp-strategist doesn't just get a token pair -- it gets the opportunity-scanner's full analysis of why this pool is optimal. The risk-assessor evaluates the actual strategy designed by the lp-strategist, not a generic assessment.
- Two user confirmation points: Before spending any money (swap) and before committing capital (LP entry), the skill pauses for explicit user approval. You stay in control.
- Conditional swap step: If you don't hold the right tokens for the LP position, the skill automatically handles the token swap -- but only after showing you exactly what it plans to do.
- Portfolio impact reporting: After entering the position, the portfolio-analyst shows you exactly how your portfolio changed, with ongoing monitoring instructions.
- Failure recovery at every stage: If any agent fails mid-pipeline, you see what was accomplished and get recovery suggestions.
When to Use
Activate when the user says anything like:
- "I have $20K, find the best LP opportunity and enter"
- "Autonomous LP: find yield and enter position"
- "Full LP workflow with $10,000"
- "Find me the best yield and set up a position"
- "I want to LP but don't know where -- find the best option"
- "Put $5K to work in Uniswap -- find the best opportunity"
- "End-to-end LP: scan, strategize, and enter"
- "What's the best LP opportunity right now? Set it up for me"
Do NOT use when the user already knows which pool they want (use manage-liquidity instead), just wants strategy comparison without execution (use lp-strategy), or just wants to scan without entering (use scan-opportunities).
Parameters
| Parameter | Required | Default | How to Extract |
|---|---|---|---|
| capital | Yes | -- | Total capital to deploy: "$20,000", "10 ETH", "$5K" |
| chain | No | all | Target chain or "all" for cross-chain scan |
| riskTolerance | No | moderate | "conservative", "moderate", "aggressive" |
| pairPreference | No | -- | Optional token pair preference: "ETH/USDC", "stablecoin pairs" |
| excludeTokens | No | -- | Tokens to exclude: "PEPE, SHIB" (avoid memecoins, etc.) |
| capitalToken | No | auto-detect | What token the capital is in: "USDC", "ETH", auto-detect from wallet |
If the user doesn't provide capital amount, ask for it -- never guess how much to deploy.
Workflow
FULL LP WORKFLOW PIPELINE
┌─────────────────────────────────────────────────────────────────────┐
│ │
│ Step 1: SCAN (opportunity-scanner) │
│ ├── Scan LP opportunities across chains │
│ ├── Filter by risk tolerance and capital size │
│ ├── Rank top 3-5 by risk-adjusted yield │
│ └── Output: Ranked Opportunity List │
│ │ │
│ ▼ USER CHOICE POINT │
│ ┌───────────────────────────────────────────────────┐ │
│ │ Present top opportunities to user. │ │
│ │ User picks one OR accepts recommendation (#1). │ │
│ └───────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ │
│ Step 2: STRATEGIZE (lp-strategist) │
│ ├── Design optimal strategy for chosen opportunity │
│ ├── Version, fee tier, range width, rebalance plan │
│ ├── Conservative/moderate/optimistic APY estimates │
│ └── Output: LP Strategy Recommendation │
│ │ │
│ ▼ │
│ │
│ Step 3: RISK CHECK (risk-assessor) │
│ ├── Receives: opportunity data + strategy details │
│ ├── Evaluates: IL, slippage, liquidity, smart contract │
│ ├── Decision: APPROVE / CONDITIONAL / VETO / HARD_VETO │
│ └── Output: Risk Assessment Report │
│ │ │
│ ▼ CONDITIONAL GATE │
│ ┌───────────────────────────────────────────────────┐ │
│ │ APPROVE / COND. APPROVE → Continue │ │
│ │ VETO / HARD_VETO → STOP with full report │ │
│ └───────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ │
│ Step 4: SWAP IF NEEDED (trade-executor) -- CONDITIONAL │
│ ├── Check wallet balances vs required tokens │
│ ├── If tokens needed: calculate swap amounts │
│ ├── USER CONFIRMATION #1: "Swap X for Y to prepare for LP?" │
│ ├── Execute swap(s) if confirmed │
│ └── Output: Swap result OR "tokens already held" │
│ │ │
│ ▼ │
│ │
│ Step 5: ENTER POSITION (liquidity-manager) │
│ ├── USER CONFIRMATION #2: "Add liquidity with these params?" │
│ ├── Handle approvals (Permit2) │
│ ├── Add liquidity at recommended range │
│ ├── Wait for transaction confirmation │
│ └── Output: Position ID, amounts deposited, tick range │
│ │ │
│ ▼ │
│ │
│ Step 6: CONFIRM & REPORT (portfolio-analyst) │
│ ├── Verify position was created successfully │
│ ├── Show portfolio impact (before vs after) │
│ ├── Monitoring instructions │
│ └── Output: Portfolio Report + Next Steps │
│ │
└─────────────────────────────────────────────────────────────────────┘
Step 0: Pre-Flight
Before starting the pipeline:
- Check safety status via
mcp__uniswap__check_safety_status-- verify spending limits can accommodate the capital amount. - Check wallet balance via
mcp__uniswap__get_agent_balanceon the target chain(s) -- verify the wallet has the stated capital. - If either check fails, stop and inform the user before wasting agent compute.
Step 1: Scan Opportunities (opportunity-scanner)
Delegate to Task(subagent_type:opportunity-scanner) with:
Scan for LP opportunities with these parameters:
- Available capital: {capital}
- Chains: {chain or "all supported chains"}
- Risk tolerance: {riskTolerance}
- Type: "lp" (LP opportunities only)
- Minimum TVL: $50,000
- Top N: 5
Additional filters:
- Pair preference: {pairPreference or "none"}
- Exclude tokens: {excludeTokens or "none"}
Return the top 5 LP opportunities ranked by risk-adjusted yield.
Each opportunity must include fee APY, estimated IL, risk-adjusted yield,
TVL, volume, and risk rating.
Present to user with a choice:
Step 1/6: Opportunity Scan Complete
Found 5 LP opportunities (filtered from 200+ pools):
# Pool Chain Fee APY Est. IL Net APY Risk TVL
1 WETH/USDC 0.05% ETH 21% -6% 15% MEDIUM $332M
2 WETH/USDC 0.05% Base 18% -5% 13% MEDIUM $45M
3 ARB/WETH 0.30% Arb 35% -12% 23% HIGH $12M
4 USDC/USDT 0.01% ETH 8% -0.1% 7.9% LOW $200M
5 cbETH/WETH 0.05% Base 12% -3% 9% LOW $28M
Recommended: #1 (WETH/USDC 0.05% on Ethereum) — best balance of yield and risk
Which opportunity would you like to pursue? (1-5, or "1" to accept recommendation)
Wait for user selection before proceeding.
Step 2: Design Strategy (lp-strategist)
Delegate to Task(subagent_type:lp-strategist) with the chosen opportunity:
Design an optimal LP strategy for this opportunity:
Opportunity details (from opportunity-scanner):
{Full opportunity data from Step 1 for chosen pool}
LP parameters:
- Capital: {capital}
- Risk tolerance: {riskTolerance}
- Chain: {chain of chosen opportunity}
Provide:
1. Recommended version and fee tier (with rationale)
2. Optimal tick range (lower/upper prices, width %)
3. Conservative/moderate/optimistic APY and IL estimates
4. Rebalance strategy (trigger, frequency, estimated cost)
5. Comparison to the next-best alternative
Present to user:
Step 2/6: Strategy Designed
Pool: WETH/USDC 0.05% (V3, Ethereum)
Range: $1,700 - $2,300 (±15%, medium width)
Expected: 15% net APY (moderate estimate)
Strategy Details:
Fee APY (moderate): 21%
Estimated IL: -6%
Net APY: 15%
Rebalance: every 2-3 weeks (trigger: price within 10% of boundary)
Rebalance cost: ~$15/rebalance on Ethereum
Proceeding to risk assessment...
Step 3: Risk Assessment (risk-assessor)
Delegate to Task(subagent_type:risk-assessor) with compound context:
Evaluate risk for this LP strategy:
Operation: add liquidity
Token pair: {token0}/{token1}
Pool: {pool address}
Chain: {chain}
Capital: {capital}
Risk tolerance: {riskTolerance}
Strategy context (from lp-strategist):
{Full strategy recommendation from Step 2}
Opportunity context (from opportunity-scanner):
{Key metrics from Step 1: TVL, volume trend, risk rating}
Evaluate: impermanent loss risk, slippage risk (entry/exit), liquidity risk,
smart contract risk. Provide APPROVE/CONDITIONAL_APPROVE/VETO/HARD_VETO.
Conditional gate (same logic as research-and-trade):
| Decision | Action |
|---|---|
| APPROVE | Present risk summary, proceed to Step 4 |
| CONDITIONAL_APPROVE | Show conditions, ask user if they accept |
| VETO | STOP. Show opportunity + strategy + veto reason. Suggest fallbacks. |
| HARD_VETO | STOP. Show reason. Non-negotiable. |
Present to user (APPROVE case):
Step 3/6: Risk Assessment Passed
Decision: APPROVE
Composite Risk: MEDIUM
IL Risk: MEDIUM (8.2% annual estimate for volatile pair)
Slippage: LOW (deep pool, entry \x3C 0.1% impact)
Liquidity: LOW (TVL 6,640x your position)
Smart Contract: LOW (V3, established pool)
Proceeding to prepare tokens...
Step 4: Swap If Needed (trade-executor) -- Conditional
Check wallet balances against required token amounts for the LP position:
- The strategy specifies how much of each token is needed (e.g., 50/50 split for a centered range).
- Check current wallet holdings via
mcp__uniswap__get_agent_balance. - Calculate what swaps are needed (if any).
If no swaps needed:
Step 4/6: Token Preparation — Skipped
You already hold sufficient WETH and USDC for this position.
No swaps required.
If swaps needed, present and ask USER CONFIRMATION #1:
Step 4/6: Token Preparation Required
Your position needs:
0.5 WETH (~$980)
980 USDC (~$980)
You currently hold:
2.0 WETH ($3,920)
0 USDC ($0)
Proposed swap:
Sell 0.5 WETH → Buy ~980 USDC
Estimated slippage: 0.05%
Gas: ~$8
Approve this swap to prepare tokens for LP? (yes/no)
Only execute the swap if the user explicitly confirms. If the user declines, stop the pipeline and present what was accomplished (scan + strategy + risk assessment).
Step 5: Enter Position (liquidity-manager)
Present the full LP entry details and ask USER CONFIRMATION #2:
Step 5/6: Ready to Add Liquidity
Pool: WETH/USDC 0.05% (V3, Ethereum)
Deposit:
0.5 WETH (~$980)
980 USDC (~$980)
Total: ~$1,960
Range:
Lower: $1,700 (tick -204714)
Upper: $2,300 (tick -199514)
Current: $1,963 — IN RANGE
Width: ±15% (medium)
Expected Fee APY: ~15-21% (based on 7d pool data)
Add liquidity with these parameters? (yes/no)
Only proceed if the user confirms. Then delegate to Task(subagent_type:liquidity-manager):
Add liquidity to this pool:
Pool: {pool address}
Chain: {chain}
Version: {version}
Token0: {token0 address} — Amount: {amount0}
Token1: {token1 address} — Amount: {amount1}
Tick lower: {tick_lower}
Tick upper: {tick_upper}
Strategy context:
- Range strategy: {medium/narrow/wide}
- From lp-strategist recommendation
Execute: handle approvals, simulate, route through safety-guardian, add liquidity,
wait for confirmation. Return position ID and actual amounts deposited.
Step 6: Confirm & Report (portfolio-analyst)
Delegate to Task(subagent_type:portfolio-analyst) with the new position:
Report on the portfolio impact of this new LP position:
New position:
- Position ID: {position_id from Step 5}
- Pool: {pool_address}
- Chain: {chain}
- Tokens deposited: {amounts}
- Tick range: {lower} to {upper}
- Transaction: {tx_hash}
Wallet address: {wallet_address}
Provide:
1. New position details and current status (in-range confirmation)
2. Portfolio impact (if other positions exist, show before/after composition)
3. Total portfolio value across all chains
4. Monitoring recommendations
Present final result:
Step 6/6: Position Confirmed & Portfolio Updated
New Position: #456789
Pool: WETH/USDC 0.05% (V3, Ethereum)
Status: IN RANGE
Value: $1,960
Deposited:
0.5 WETH ($980)
980 USDC ($980)
Range:
$1,700 — $2,300 (current: $1,963)
Expected Returns:
Fee APY: 15-21% (moderate-optimistic)
Est. IL: -5 to -8% annualized
Net: 9-15% annualized
Portfolio Impact:
Total LP Value: $1,960 (new) + $45,000 (existing) = $46,960
LP Allocation: 42% WETH, 35% USDC, 23% other
Chain Split: 85% Ethereum, 15% Base
──────────────────────────────────────
Pipeline Summary
──────────────────────────────────────
Scan: 5 opportunities found, #1 selected
Strategy: V3 0.05%, ±15% range, bi-weekly rebalance
Risk: APPROVED (MEDIUM composite)
Swap: 0.5 WETH → 980 USDC (preparation)
Position: #456789 — IN RANGE
Cost: $15.20 total gas (swap + LP entry)
Next Steps:
- Monitor: "How are my positions doing?"
- Rebalance when needed: "Rebalance position #456789"
- Collect fees: "Collect fees from position #456789"
Critical Decision Points
These are the moments where the skill must stop and ask rather than assume:
| Situation | Action |
|---|---|
| Capital amount not specified | Ask: "How much capital would you like to deploy?" |
| Multiple good opportunities | Present top 3-5, let user choose |
| Risk-assessor VETO | Stop. Show research + strategy + veto reason. |
| Swap needed for token preparation | USER CONFIRMATION #1: show swap details, ask to proceed |
| Ready to add liquidity | USER CONFIRMATION #2: show position details, ask to proceed |
| Capital exceeds safety spending limit | Stop. Show limit. Suggest reducing amount or adjusting limits. |
| Wallet doesn't have stated capital | Stop. Show actual balance. Ask to adjust amount. |
| Best opportunity is on a different chain than wallet funds | Explain cross-chain situation, suggest bridge or chain choice |
Partial Completion Recovery
If the pipeline fails mid-way, report what was accomplished and what remains:
LP Workflow — Partial Completion
Completed:
[done] Step 1: Scan — 5 opportunities found, #1 selected
[done] Step 2: Strategy — V3 0.05%, ±15% range designed
[done] Step 3: Risk — APPROVED (MEDIUM)
[FAIL] Step 4: Swap — Transaction reverted (insufficient gas)
Remaining:
[ ] Step 5: Add liquidity
[ ] Step 6: Portfolio report
Recovery Options:
- Ensure sufficient ETH for gas and retry: "Continue LP workflow"
- Add liquidity manually with the strategy above: "Add liquidity to WETH/USDC 0.05%"
- Start over: "Full LP workflow with $X"
Output Format
Successful Pipeline (all 6 steps)
Full LP Workflow Complete
Opportunity: {pool_pair} {fee}% on {chain}
Strategy: {version}, {range_width} range, {rebalance_frequency} rebalance
Risk: {decision} ({composite_risk})
Position: #{position_id} — {status}
Value: ${total_value}
Returns (moderate estimate):
Fee APY: {fee_apy}%
Est. IL: {il}%
Net APY: {net_apy}%
Cost: ${total_gas} gas across {n} transactions
Pipeline: Scan -> Strategy -> Risk -> Swap -> Enter -> Confirm (all passed)
Important Notes
- This is the most complex skill. It orchestrates 6 agents with 2 user confirmation points and a conditional swap step. Each agent receives compound context from all predecessors.
- Two explicit confirmations: Before any swap and before adding liquidity. The user must say "yes" at both gates.
- Conditional swap: Step 4 only executes if the user doesn't already hold the right tokens. If they do, it's skipped entirely.
- Chain considerations: If scanning "all" chains, the best opportunity might be on a chain where the user's funds aren't located. The skill should flag this and suggest bridging or narrowing the chain filter.
- Gas budget: On Ethereum, the full pipeline (swap + LP) costs $15-50 in gas. For small positions (\x3C $1K), warn that gas costs significantly eat into returns.
- Never auto-execute: Despite being an "autonomous" workflow, every spend of user capital requires explicit confirmation.
Error Handling
| Error | User-Facing Message | Suggested Action |
|---|---|---|
| No opportunities found | "No LP opportunities match your criteria on {chain}." | Broaden chain filter or lower minTVL |
| Opportunity-scanner fails | "Opportunity scan failed. Cannot identify LP targets." | Try scan-opportunities directly |
| LP-strategist fails | "Strategy design failed for {pool}. Scan results preserved." | Try lp-strategy or optimize-lp directly |
| Risk-assessor VETO | "Risk assessment vetoed: {reason}. Strategy: {summary}." | Pick a different opportunity or reduce size |
| Risk-assessor HARD_VETO | "Strategy blocked: {reason}. This cannot be overridden." | Choose a lower-risk opportunity |
| Insufficient balance for swap | "Not enough {token} to prepare for LP. Have {X}, need {Y}." | Reduce capital or acquire tokens |
| Swap execution fails | "Token swap failed: {reason}. Strategy and risk data preserved." | Retry or swap manually |
| Liquidity add fails | "Failed to add liquidity: {reason}. Tokens are still in your wallet." | Retry or use manage-liquidity directly |
| Position not confirmed | "Position created but not yet confirmed on-chain. Check back in a moment." | Wait and check with track-performance |
| Safety spending limit exceeded | "Capital of ${X} exceeds spending limit of ${Y}." | Reduce amount or adjust safety config |
| Wallet not configured | "No wallet configured. Cannot execute transactions." | Set up wallet with setup-agent-wallet |
| User declines swap confirmation | "Token swap cancelled. Strategy preserved — you can proceed manually." | Use manage-liquidity with manual prep |
| User declines LP confirmation | "LP entry cancelled. All prior research is shown above." | Adjust parameters and retry |
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install full-lp-workflow - After installation, invoke the skill by name or use
/full-lp-workflow - Provide required inputs per the skill's parameter spec and get structured output
What is Uniswap Full Lp Workflow?
Full LP workflow from opportunity scanning to position entry. Autonomously finds the best LP opportunity, designs a strategy, assesses risk, executes any needed swaps, enters the position, and reports portfolio impact. Use when user has capital and wants end-to-end LP management. Most complex multi-agent orchestration in the system. It is an AI Agent Skill for Claude Code / OpenClaw, with 771 downloads so far.
How do I install Uniswap Full Lp Workflow?
Run "/install full-lp-workflow" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is Uniswap Full Lp Workflow free?
Yes, Uniswap Full Lp Workflow is completely free (open-source). You can download, install and use it at no cost.
Which platforms does Uniswap Full Lp Workflow support?
Uniswap Full Lp Workflow is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created Uniswap Full Lp Workflow?
It is built and maintained by wpank (@wpank); the current version is v0.1.0.