mirror of
https://github.com/Uniswap/uniswap-ai.git
synced 2026-09-14 20:17:01 +08:00
main
* fix(uniswap-trading): state the quoter rule, not one library's method name The v4-sdk-integration skill mandated `callStatic` for quoting. That is an ethers v5 API, removed in ethers v6 in favour of `contract.foo.staticCall()`, and viem has no equivalent under any name. The skill's install line never pulls in ethers, and every other snippet in the file is viem, so an agent following it in the stack the skill itself describes wrote a quote that threw. Replaces the mandate with the library-neutral rule: the Quoter is not `view` (it reverts with the result by design), so it must be simulated through `eth_call` rather than sent as a transaction. Gives the spelling for each library underneath, so the next SDK migration does not break the guidance again. Both eval rubrics graded on `callStatic` specifically, so they were rewarding the broken call. They now grade the rule and accept any correct per-library spelling. Reported by @IpastorSan in #148, who verified all three spellings live against mainnet V4Quoter and proposed this framing. * fix(uniswap-trading): destructure the quoter's two return values Review caught that quoteExactInputSingle returns (uint256 amountOut, uint256 gasEstimate), verified against IV4Quoter.sol in v4-periphery. The new snippets bound the whole tuple to `quote`, which would have told an agent it could feed that straight into amountOutMinimum — trading one broken quote for another. All three snippets now destructure, with a line saying only amountOut feeds amountOutMinimum. The correctness rubric gets the same as a failure condition, phrased as an unsatisfied element rather than an unweighted "penalize" (that rubric scores by counting satisfied elements and has no penalties section, so a bare penalty had no defined magnitude).
uniswap-ai
Uniswap-specific AI tools (skills, plugins, agents) for developers and AI agents integrating the Uniswap ecosystem.
Quick Start
# Skills CLI (any agent)
npx skills add Uniswap/uniswap-ai
# Claude Code Marketplace
/plugin marketplace add uniswap/uniswap-ai
# Install individual plugins
/plugin install uniswap-hooks # v4 hook development
/plugin install uniswap-trading # Swap integration
/plugin install uniswap-cca # CCA auctions
/plugin install uniswap-driver # Swap & liquidity planning
/plugin install uniswap-viem # EVM integration (viem/wagmi)
/plugin install uniswap-trading-tools # Automated trading tools (DCA, index, copy-trade)
/plugin install uniswap-permissioned-pools # v4 Permissioned Pools reference, configurator + deployer
Featured Skills
| Skill | Plugin | Description |
|---|---|---|
swap-integration |
uniswap-trading | Integrate Uniswap swaps via Trading API, Universal Router, or SDKs |
pay-with-any-token |
uniswap-trading | Pay HTTP 402 challenges (MPP/x402) using tokens via Uniswap swaps |
uniswap-v4-hooks |
uniswap-hooks | Secure Uniswap v4 hook development assistant |
dca-bot |
uniswap-trading-tools | Dollar-cost-average into a token on a schedule (asset-agnostic) |
index-bot |
uniswap-trading-tools | Build and rebalance a weighted basket of assets |
copy-trade |
uniswap-trading-tools | Mirror a target wallet's trades within guardrails |
Documentation
| Document | Description |
|---|---|
| Project Overview | Plugins, architecture, development setup |
| Getting Started | Installation and quick start guide |
Contributing
See Project Overview for development setup and contribution guidelines.
License
MIT License - see LICENSE for details.
Legal Disclaimer
See Usage Guidelines for important information about intended use and financial information disclaimers.
Languages
JavaScript
43.4%
Python
34.5%
TypeScript
12.7%
Shell
9.4%