@agether/agether 2.9.1 → 2.10.1
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/openclaw.plugin.json +1 -1
- package/package.json +2 -2
- package/skills/agether/SKILL.md +11 -10
- package/src/index.ts +1 -1
package/openclaw.plugin.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"id": "agether",
|
|
3
3
|
"name": "Agether Credit",
|
|
4
4
|
"description": "Onchain credit protocol for AI agents — Morpho-backed overcollateralized credit, ERC-8004 identity, x402 payments. Private key and RPC keys are read from OpenClaw secrets (env vars); no plaintext config needed.",
|
|
5
|
-
"version": "2.
|
|
5
|
+
"version": "2.4.1",
|
|
6
6
|
"skills": ["skills/agether"],
|
|
7
7
|
"configSchema": {
|
|
8
8
|
"type": "object",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agether/agether",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.10.1",
|
|
4
4
|
"description": "OpenClaw plugin for Agether — onchain credit for AI agents on Ethereum & Base",
|
|
5
5
|
"main": "src/index.ts",
|
|
6
6
|
"openclaw": {
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
]
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
|
-
"@agether/sdk": "^2.
|
|
12
|
+
"@agether/sdk": "^2.12.1",
|
|
13
13
|
"axios": "^1.6.0",
|
|
14
14
|
"ethers": "^6.9.0"
|
|
15
15
|
},
|
package/skills/agether/SKILL.md
CHANGED
|
@@ -31,15 +31,16 @@ If you don't paste it, the user sees NOTHING. An empty colon ":" with no data af
|
|
|
31
31
|
6. **Never ask for private keys** — they come from OpenClaw secrets (AGETHER_PRIVATE_KEY env var).
|
|
32
32
|
7. **Max LTV is 80%** (125% collateral ratio). To borrow $X, you need $X × 1.25 in collateral value.
|
|
33
33
|
8. **When user says "register" → ALWAYS call `agether_register`.** But ONLY after chain is set (see MANDATORY BOOT SEQUENCE). A wallet CAN have multiple ERC-8004 identities. The tool handles everything. Never refuse to register because the wallet "already has an identity". Just call the tool.
|
|
34
|
-
9. **
|
|
35
|
-
10. **
|
|
36
|
-
11.
|
|
37
|
-
12.
|
|
38
|
-
13. **
|
|
39
|
-
14. **
|
|
40
|
-
15. **
|
|
41
|
-
16. **
|
|
42
|
-
17. **
|
|
34
|
+
9. **Before calling `agether_register`, ASK the user for an agent name.** The name is stored on-chain in the ERC-8004 metadata URI. Ask: "What name would you like for your agent?" Then pass it as `name` parameter. If the user declines or says "skip", call register without a name (default "Unnamed Agent" will be used).
|
|
35
|
+
10. **Never guess about blockchain state.** If you're unsure, call the tool. Don't tell the user something is impossible — try it first.
|
|
36
|
+
11. **Your EOA wallet IS the user's wallet.** Same private key, same address. If the user says "I have WETH", call `agether_balance` — you'll see it in the `collateral` field. You already have access to those tokens.
|
|
37
|
+
12. **`morpho_deposit` and `morpho_deposit_and_borrow` transfer collateral from your EOA automatically.** You do NOT need anyone to "send you" tokens. If your EOA has WETH, just call the deposit tool directly. The SDK handles EOA→Safe account→Morpho in one flow.
|
|
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
|
+
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
|
+
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 tokens are dynamic.** Don't hardcode "WETH/wstETH/cbETH". Call `morpho_markets` to discover which tokens are available. The SDK auto-discovers tokens from Morpho GraphQL API.
|
|
42
|
+
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
|
+
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.
|
|
43
44
|
|
|
44
45
|
---
|
|
45
46
|
|
|
@@ -115,7 +116,7 @@ Both `agether_set_agent` and `agether_register` save the agentId to config perma
|
|
|
115
116
|
| Tool | What it does |
|
|
116
117
|
|------|-------------|
|
|
117
118
|
| `agether_balance` | Show ETH + USDC + all collateral token balances for both EOA wallet and AgentAccount (Safe). Tokens auto-discovered from markets. |
|
|
118
|
-
| `agether_register` | Register on-chain: mints ERC-8004 identity NFT + creates Safe account (via Safe7579). Auto-saves agentId to config. |
|
|
119
|
+
| `agether_register` | Register on-chain: mints ERC-8004 identity NFT + creates Safe account (via Safe7579). Accepts optional `name` param — stored in on-chain metadata URI. **Ask the user for a name first.** Auto-saves agentId to config. |
|
|
119
120
|
| `agether_set_agent` | Set a known agentId (e.g. from memory) and save to config. Use when agentId is "?" but you remember it. |
|
|
120
121
|
| `agether_set_chain` | Set the active blockchain (Ethereum or Base) and save to config. Use when chain is "?" or user wants to switch chains. Persists across restarts. |
|
|
121
122
|
| `agether_score` | Get credit score. `refresh: false` = free read. `refresh: true` = pays x402, computes fresh score on-chain. **Always call this when user asks about score.** |
|
package/src/index.ts
CHANGED
|
@@ -321,7 +321,7 @@ export default function register(api: any) {
|
|
|
321
321
|
const cfg = getConfig(api);
|
|
322
322
|
requireChain(cfg);
|
|
323
323
|
const client = createAgetherClient(cfg);
|
|
324
|
-
const result = await client.register();
|
|
324
|
+
const result = await client.register({ name: _params.name });
|
|
325
325
|
const persistStatus = persistAgentId(result.agentId);
|
|
326
326
|
const kyaMessage = result.kyaRequired
|
|
327
327
|
? "⚠️ KYA required: submit your agent code hash for review before using credit"
|