@agentlayer.tech/wallet 0.1.50 → 0.1.53
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/extensions/agent-wallet/dist/index.js +154 -0
- package/.openclaw/extensions/agent-wallet/index.ts +19 -9
- package/.openclaw/extensions/agent-wallet/openclaw.plugin.json +1 -1
- package/.openclaw/extensions/agent-wallet/package.json +1 -1
- package/CHANGELOG.md +20 -0
- package/VERSION +1 -1
- package/agent-wallet/agent_wallet/__init__.py +1 -1
- package/agent-wallet/agent_wallet/autonomous_permissions.py +110 -17
- package/agent-wallet/agent_wallet/openclaw_adapter.py +221 -109
- package/agent-wallet/agent_wallet/openclaw_cli.py +6 -5
- package/agent-wallet/agent_wallet/providers/wdk_evm_local.py +6 -0
- package/agent-wallet/openclaw.plugin.json +1 -1
- package/agent-wallet/pyproject.toml +1 -1
- package/claude-code/plugins/agent-wallet/.claude-plugin/plugin.json +1 -1
- package/claude-code/plugins/agent-wallet/commands/agentlayer-autonomous-approve.md +7 -6
- package/claude-code/plugins/agent-wallet/commands/agentlayer-autonomous-revoke.md +3 -3
- package/codex/plugins/agent-wallet/.codex-plugin/plugin.json +1 -1
- package/codex/plugins/agent-wallet/server.py +15 -4
- package/hermes/plugins/agent_wallet/plugin.yaml +1 -1
- package/package.json +1 -1
- package/wdk-btc-wallet/package.json +1 -1
- package/wdk-evm-wallet/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-wallet",
|
|
3
3
|
"displayName": "Agent Wallet",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.53",
|
|
5
5
|
"description": "Claude Code bridge for the existing AgentLayer wallet runtime. Connects to Solana, Bitcoin, and EVM wallets without creating a new one.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "AgentLayer"
|
|
@@ -1,24 +1,25 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Enable AgentLayer autonomous Base swaps without per-transaction approvals.
|
|
2
|
+
description: Enable AgentLayer autonomous Base swaps and EVM DeFi tools without per-transaction approvals.
|
|
3
3
|
allowed-tools: mcp__agent_wallet__agentlayer_autonomous_approve, mcp__agent_wallet__agentlayer_autonomous_status
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
Enable high-trust autonomous
|
|
6
|
+
Enable the high-trust autonomous AgentLayer permission group.
|
|
7
7
|
|
|
8
8
|
Call `agentlayer_autonomous_approve` with:
|
|
9
9
|
|
|
10
10
|
```json
|
|
11
11
|
{
|
|
12
12
|
"scope": "base_swaps",
|
|
13
|
-
"purpose": "User requested autonomous Base swaps from Claude Code.",
|
|
13
|
+
"purpose": "User requested autonomous Base swaps and EVM DeFi tools from Claude Code.",
|
|
14
14
|
"user_intent": true
|
|
15
15
|
}
|
|
16
16
|
```
|
|
17
17
|
|
|
18
|
-
Then call `agentlayer_autonomous_status` and report whether `base_swaps`
|
|
18
|
+
Then call `agentlayer_autonomous_status` and report whether both `base_swaps` and `defi_tools` are enabled.
|
|
19
19
|
|
|
20
20
|
Be explicit in the response:
|
|
21
21
|
|
|
22
|
-
- This
|
|
23
|
-
-
|
|
22
|
+
- This removes per-transaction approvals for Base Velora/Uniswap swap execute calls and supported EVM DeFi management tools.
|
|
23
|
+
- The `scope=base_swaps` argument is a compatibility value; this command enables the combined autonomous permission group.
|
|
24
|
+
- It does not authorize transfers, bridges, Solana swaps, or generic contract calls.
|
|
24
25
|
- The user can run `/agentlayer-autonomous-revoke` to disable it.
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Disable AgentLayer autonomous Base swaps.
|
|
2
|
+
description: Disable AgentLayer autonomous Base swaps and EVM DeFi tools.
|
|
3
3
|
allowed-tools: mcp__agent_wallet__agentlayer_autonomous_revoke, mcp__agent_wallet__agentlayer_autonomous_status
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
Disable high-trust autonomous
|
|
6
|
+
Disable the full high-trust autonomous AgentLayer permission group.
|
|
7
7
|
|
|
8
8
|
Call `agentlayer_autonomous_revoke` with:
|
|
9
9
|
|
|
@@ -13,4 +13,4 @@ Call `agentlayer_autonomous_revoke` with:
|
|
|
13
13
|
}
|
|
14
14
|
```
|
|
15
15
|
|
|
16
|
-
Then call `agentlayer_autonomous_status` and report whether `base_swaps`
|
|
16
|
+
Then call `agentlayer_autonomous_status` and report whether both `base_swaps` and `defi_tools` are disabled.
|
|
@@ -60,6 +60,13 @@ PREVIEW_BOUND_SWAP_TOOLS = {
|
|
|
60
60
|
"flash_trade_close_position",
|
|
61
61
|
}
|
|
62
62
|
AUTONOMOUS_BASE_SWAP_TOOLS = {"swap_evm_tokens", "swap_evm_uniswap_tokens"}
|
|
63
|
+
AUTONOMOUS_DEFI_TOOLS = {
|
|
64
|
+
"manage_evm_aave_position",
|
|
65
|
+
"manage_evm_lido_position",
|
|
66
|
+
"manage_evm_lido_withdrawal",
|
|
67
|
+
"manage_evm_morpho_market_position",
|
|
68
|
+
"manage_evm_morpho_vault_position",
|
|
69
|
+
}
|
|
63
70
|
APPROVAL_PREVIEW_TOOL_ALIASES = {
|
|
64
71
|
"x402_pay_request": "x402_preview_request",
|
|
65
72
|
}
|
|
@@ -643,19 +650,23 @@ def _requires_approved_preview_payload(tool_name: str, params: dict[str, Any]) -
|
|
|
643
650
|
return tool_name in PREVIEW_BOUND_SWAP_TOOLS
|
|
644
651
|
|
|
645
652
|
|
|
646
|
-
def
|
|
653
|
+
def _should_let_backend_authorize_autonomous_execution(
|
|
647
654
|
tool_name: str,
|
|
648
655
|
params: dict[str, Any],
|
|
649
656
|
config: dict[str, Any],
|
|
650
657
|
) -> bool:
|
|
651
|
-
|
|
658
|
+
is_base_swap_tool = tool_name in AUTONOMOUS_BASE_SWAP_TOOLS
|
|
659
|
+
is_defi_tool = tool_name in AUTONOMOUS_DEFI_TOOLS
|
|
660
|
+
if not is_base_swap_tool and not is_defi_tool:
|
|
652
661
|
return False
|
|
653
662
|
if str(params.get("mode") or "") != "execute":
|
|
654
663
|
return False
|
|
655
664
|
if str(params.get("approval_token") or "").strip():
|
|
656
665
|
return False
|
|
657
666
|
network = str(params.get("network") or config.get("network") or selected_evm_network or "").strip().lower()
|
|
658
|
-
|
|
667
|
+
if is_base_swap_tool:
|
|
668
|
+
return network == "base"
|
|
669
|
+
return network in {"base", "ethereum"}
|
|
659
670
|
|
|
660
671
|
|
|
661
672
|
def _looks_like_approval_context_error(message: str) -> bool:
|
|
@@ -712,7 +723,7 @@ def _attach_approval_for_execute(
|
|
|
712
723
|
effective_params["_approved_preview"] = cached_preview
|
|
713
724
|
if effective_params.get("approval_token"):
|
|
714
725
|
return None
|
|
715
|
-
if
|
|
726
|
+
if _should_let_backend_authorize_autonomous_execution(tool_name, effective_params, config):
|
|
716
727
|
return None
|
|
717
728
|
raise RuntimeError(APPROVAL_CONTEXT_MISSING_MESSAGE)
|
|
718
729
|
|
package/package.json
CHANGED