armsves/sentinel
GitHub: armsves/sentinel
Sentinel 是一个常驻 DeFi Agent,在检测到漏洞利用、脱锚或流动性池异常时自动退出 Uniswap LP 仓位并兑换为稳定币,充当 DeFi 投资组合的「紧急按钮」。
Stars: 0 | Forks: 0
# Sentinel
**DeFi 的紧急按钮流动性守护者。**
常驻 Agent 监控 Uniswap 仓位,防范漏洞利用、脱锚及池健康度异常——一旦触发,立即退出 LP 并通过 Uniswap API 兑换为稳定币。
## 技术栈(当前阶段)
| 组件 | 功能 |
| --- | --- |
| [Uniswap Trading API](https://developers.uniswap.org/docs) + LP API | `swap`、`deposit`、`withdraw`、`positions`、`pool-info` |
| [The Graph](https://thegraph.com/blog/hackathon-resources/) Uniswap v3 subgraph | 投资组合代币元数据 + 池健康度轮询 |
| Uniswap AI 技能 | `.agents/skills/` 下的 `swap-integration`、`lp-integration`、`viem-integration` |
## 快速开始
```
cp .env.example .env
# 设置 RPC_URL、PRIVATE_KEY 或 WALLET_ADDRESS、UNISWAP_API_KEY、GRAPH_API_KEY
pnpm install
# Terminal A — 轮询投资组合代币 + Uniswap 流动池健康状态 + X/Blockaid
pnpm scanner
# Terminal B — 应急 worker(消费队列)
pnpm panic-worker
# Terminal C — HTTP API
pnpm api
# Terminal D — 控制 UI (http://localhost:5173)
pnpm dashboard
# 或 CLI
pnpm cli positions
pnpm cli queue
pnpm cli pool-info --tokenA 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2 --tokenB 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48 --fee 3000
```
仅当您确实打算进行广播时,才设置 `EXECUTION_MODE=live`。
## 仓库结构
```
apps/scanner Graph + X/Blockaid polling → panic queue
apps/executor CLI + panic worker (withdraw/swap)
apps/api HTTP API for the dashboard
apps/dashboard Control UI
packages/core config, wallet, panic queue
packages/uniswap Trading API + LP API clients
packages/graph The Graph queries
packages/monitors X/Blockaid exploit parsing
docs/plan product plan
.agents/skills Uniswap AI skills
```
## 规划
规划文档:[`docs/plan/`](./docs/plan/)(特别关注 [07 — 当前切片](./docs/plan/07-current-slice.md))。发起人笔记:[`FEEDBACK.md`](./FEEDBACK.md)。
## 许可证
MIT
标签:AI代理, DeFi, The Graph, Uniswap, 智能合约, 自动化交易, 自动化攻击