@agether/agether 2.12.0 → 2.12.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/skills/agether/SKILL.md +49 -1
package/package.json
CHANGED
package/skills/agether/SKILL.md
CHANGED
|
@@ -38,7 +38,8 @@ If you don't paste it, the user sees NOTHING. An empty colon ":" with no data af
|
|
|
38
38
|
13. **To get USDC for x402:** call `morpho_deposit_and_borrow` with collateral from your EOA. Do NOT ask the user to send tokens — check your balance first.
|
|
39
39
|
14. **Check health before large actions.** Before borrowing, depositing, or withdrawing significant amounts, call `agether_health` to see current LTV and headroom. This prevents failed transactions.
|
|
40
40
|
15. **Batch awareness:** `morpho_deposit_and_borrow` is a batched operation (deposit + borrow in one tx). Always prefer it over separate `morpho_deposit` then `morpho_borrow` when doing both — it saves gas and is atomic.
|
|
41
|
-
16. **Collateral and loan tokens are dynamic.** Don't hardcode tokens.
|
|
41
|
+
16. **Collateral and loan tokens are dynamic.** Don't hardcode tokens. Use `morpho_search` to find any token by name, `morpho_borrowing_options` to discover what the user can borrow, and `morpho_markets` to list all markets. The SDK searches Morpho's full GraphQL registry — no token is "unsupported" unless it truly has no market.
|
|
42
|
+
17. **Never say "token X is not supported" without searching first.** Always call `morpho_search(token: "X")` before telling the user a token isn't available. The registry has 500+ markets.
|
|
42
43
|
17. **Withdrawals stay in AgentAccount by default.** `morpho_withdraw` and `morpho_withdraw_supply` keep funds in the Safe account unless `toEoa: true` is passed. Use `wallet_withdraw_token` / `wallet_withdraw_eth` to move any token or ETH from AgentAccount to EOA.
|
|
43
44
|
18. **Always show Health Factor when reporting positions.** HF = LLTV / LTV. HF > 1.15 = safe 🟢, HF 1.0–1.15 = warning 🟡, HF ≤ 1.0 = liquidation 🔴. `morpho_status` returns HF per position. Always paste it so the user understands their risk.
|
|
44
45
|
|
|
@@ -135,6 +136,10 @@ Both `agether_set_agent` and `agether_register` save the agentId to config perma
|
|
|
135
136
|
|------|--------|-------------|
|
|
136
137
|
| `morpho_status` | none | Show all Morpho positions — collateral, debt, LTV, **Health Factor** (HF), headroom, risk level per market |
|
|
137
138
|
| `morpho_markets` | `token?`, `loanToken?` | List all Morpho Blue markets — supply/borrow APY, utilization, LLTV, liquidity. Optional collateral or loan token filter. |
|
|
139
|
+
| `morpho_search` | `token`, `asCollateral?`, `asLoanToken?` | **Search Morpho markets by token name** (fuzzy). Use when user asks about a specific token (ezETH, rETH, wstETH, etc.). No hardcoded list — searches full registry. |
|
|
140
|
+
| `morpho_borrowing_options` | `collateral?` | **"What can I borrow?"** Without args: scans wallet for tokens with balance > 0, finds matching collateral markets. With `collateral`: finds all markets for that token. |
|
|
141
|
+
| `morpho_supply_options` | `loanToken` | **"Where can I lend X?"** Shows all markets where the token is the loan asset (user supplies to earn yield). |
|
|
142
|
+
| `morpho_wallet_tokens` | none | **Scan wallet** for all ERC-20 tokens that exist in Morpho markets. Shows every token with balance > 0. |
|
|
138
143
|
| `morpho_max_borrowable` | none | Calculate max additional loan token borrowable given current collateral/debt across all markets |
|
|
139
144
|
| `morpho_deposit` | `amount`, `token` | Deposit collateral from EOA → Morpho (no borrow). Token auto-discovered. |
|
|
140
145
|
| `morpho_deposit_and_borrow` | `collateralAmount`, `token`, `borrowAmount`, `loanToken?` | **PREFERRED** — Deposit + borrow in one batched tx (ERC-7579 batch mode). Supports any loan token. Best for first-time setup. |
|
|
@@ -292,6 +297,49 @@ For supply positions (lent tokens):
|
|
|
292
297
|
3. Suggest optimal strategy based on their holdings
|
|
293
298
|
```
|
|
294
299
|
|
|
300
|
+
### User asks "what can I borrow?" or "what can I do with my tokens?"
|
|
301
|
+
```
|
|
302
|
+
IF user specifies a token (e.g. "what can I borrow with WETH?"):
|
|
303
|
+
→ morpho_borrowing_options(collateral: "WETH")
|
|
304
|
+
→ Shows all markets where WETH is collateral + available loan tokens
|
|
305
|
+
|
|
306
|
+
IF user asks generally ("what can I borrow?"):
|
|
307
|
+
→ morpho_borrowing_options() ← no args = wallet scan mode
|
|
308
|
+
→ Scans wallet for all tokens with balance > 0
|
|
309
|
+
→ For each token, finds markets where it can be collateral
|
|
310
|
+
→ Shows options grouped by collateral token with APYs
|
|
311
|
+
|
|
312
|
+
IF no tokens found in wallet:
|
|
313
|
+
→ Tell user: "Your wallet is empty. Send tokens to <EOA address>"
|
|
314
|
+
→ morpho_markets to show which collateral tokens are accepted
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
### User asks "where can I put X as collateral?" or "are there ezETH markets?"
|
|
318
|
+
```
|
|
319
|
+
1. morpho_search(token: "ezETH", asCollateral: true)
|
|
320
|
+
→ Searches Morpho's full registry (not just cached top markets)
|
|
321
|
+
→ Shows all markets where ezETH is collateral
|
|
322
|
+
2. IF no results → "No markets for ezETH on this chain."
|
|
323
|
+
3. IF results → present the markets with APYs, LLTVs, liquidity
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
### User asks "what can I supply?" or "where can I lend USDC?"
|
|
327
|
+
```
|
|
328
|
+
1. morpho_supply_options(loanToken: "USDC")
|
|
329
|
+
→ Shows all markets where USDC is the loan token
|
|
330
|
+
→ User supplies USDC to earn yield from borrowers
|
|
331
|
+
2. Present: sorted by supply APY (highest first)
|
|
332
|
+
3. Suggest the most liquid market with best APY
|
|
333
|
+
```
|
|
334
|
+
|
|
335
|
+
### User asks "what tokens do I have?" or "what's in my wallet?"
|
|
336
|
+
```
|
|
337
|
+
1. morpho_wallet_tokens() ← scans all ERC-20s from Morpho markets
|
|
338
|
+
→ Returns every token with balance > 0 (symbol + amount + address)
|
|
339
|
+
2. Present the list clearly
|
|
340
|
+
3. Optionally follow up with morpho_borrowing_options() to show what they can do
|
|
341
|
+
```
|
|
342
|
+
|
|
295
343
|
### User asks to check or refresh credit score
|
|
296
344
|
```
|
|
297
345
|
1. IF user says "refresh" / "update" / "get new score":
|