@agentlayer.tech/wallet 0.1.73 → 0.1.75
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/openclaw.plugin.json +1 -1
- package/.openclaw/extensions/agent-wallet/package.json +1 -1
- package/CHANGELOG.md +72 -0
- package/RELEASING.md +23 -4
- package/VERSION +1 -1
- package/agent-wallet/agent_wallet/__init__.py +1 -1
- package/agent-wallet/agent_wallet/boot_key_migration.py +10 -2
- package/agent-wallet/agent_wallet/boot_key_recovery.py +6 -4
- package/agent-wallet/agent_wallet/config.py +125 -23
- package/agent-wallet/agent_wallet/encrypted_storage.py +85 -0
- package/agent-wallet/agent_wallet/evm_user_wallets.py +116 -23
- package/agent-wallet/agent_wallet/keystore.py +82 -2
- package/agent-wallet/agent_wallet/sealed_keys.py +19 -18
- package/agent-wallet/agent_wallet/user_wallets.py +6 -5
- package/agent-wallet/openclaw.plugin.json +1 -1
- package/agent-wallet/pyproject.toml +1 -1
- package/agent-wallet/scripts/bootstrap_openclaw_evm.py +8 -3
- package/agent-wallet/scripts/install_agent_wallet.py +4 -1
- package/bin/openclaw-agent-wallet.mjs +738 -88
- package/claude-code/plugins/agent-wallet/.claude-plugin/plugin.json +1 -1
- package/claude-code/plugins/agent-wallet/.mcp.json +1 -2
- package/codex/plugins/agent-wallet/.codex-plugin/plugin.json +1 -1
- package/hermes/plugins/agent_wallet/plugin.yaml +1 -1
- package/package.json +2 -1
- package/wdk-btc-wallet/package.json +1 -1
- package/wdk-evm-wallet/package.json +3 -2
- package/wdk-evm-wallet/src/config.js +24 -0
- package/wdk-evm-wallet/src/server.js +2 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-wallet",
|
|
3
3
|
"displayName": "Agent Wallet",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.75",
|
|
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"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentlayer.tech/wallet",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.75",
|
|
4
4
|
"description": "NPM installer for the OpenClaw Agent Wallet local runtime.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
"build:openclaw-plugins": "node scripts/manage_openclaw_plugin_packages.mjs build",
|
|
20
20
|
"check:openclaw-plugins": "node scripts/manage_openclaw_plugin_packages.mjs check",
|
|
21
21
|
"check:release-version": "node scripts/check_release_version.mjs",
|
|
22
|
+
"test:release-promotion": "node --test scripts/validate_npm_promotion.test.mjs",
|
|
22
23
|
"version:sync": "node scripts/sync_version.mjs",
|
|
23
24
|
"release:local": "node scripts/release_local.mjs",
|
|
24
25
|
"test:npm-installer": "python3 agent-wallet/tests/smoke_npm_installer.py",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "wdk-evm-wallet",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.75",
|
|
4
4
|
"private": true,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "Separate EVM wallet service built on Tether WDK.",
|
|
@@ -14,7 +14,8 @@
|
|
|
14
14
|
"test:morpho-runtime": "node --test --test-concurrency=1 tests/smoke_morpho_runtime.mjs",
|
|
15
15
|
"test:lido-runtime": "node --test --test-concurrency=1 tests/smoke_lido_runtime.mjs",
|
|
16
16
|
"test:uniswap-runtime": "node --test --test-concurrency=1 tests/smoke_uniswap_runtime.mjs",
|
|
17
|
-
"test:unit": "node --test tests/unit_uniswap_helpers.mjs"
|
|
17
|
+
"test:unit": "node --test tests/unit_uniswap_helpers.mjs",
|
|
18
|
+
"test:identity": "node --test tests/unit_instance_identity.mjs"
|
|
18
19
|
},
|
|
19
20
|
"dependencies": {
|
|
20
21
|
"@morpho-org/morpho-sdk": "^3.2.0",
|
|
@@ -150,6 +150,27 @@ function ensureLocalAuthToken(tokenPath, configuredToken = "") {
|
|
|
150
150
|
return generated;
|
|
151
151
|
}
|
|
152
152
|
|
|
153
|
+
function ensureInstanceId(instanceIdPath, configuredInstanceId = "") {
|
|
154
|
+
const direct = String(configuredInstanceId ?? "").trim();
|
|
155
|
+
if (direct) {
|
|
156
|
+
return direct;
|
|
157
|
+
}
|
|
158
|
+
fs.mkdirSync(path.dirname(instanceIdPath), { recursive: true, mode: 0o700 });
|
|
159
|
+
try {
|
|
160
|
+
const existing = fs.readFileSync(instanceIdPath, "utf8").trim();
|
|
161
|
+
if (existing) {
|
|
162
|
+
fs.chmodSync(instanceIdPath, 0o600);
|
|
163
|
+
return existing;
|
|
164
|
+
}
|
|
165
|
+
} catch {
|
|
166
|
+
// Generate a stable install identity below.
|
|
167
|
+
}
|
|
168
|
+
const generated = crypto.randomUUID();
|
|
169
|
+
fs.writeFileSync(instanceIdPath, generated + "\n", { encoding: "utf8", mode: 0o600 });
|
|
170
|
+
fs.chmodSync(instanceIdPath, 0o600);
|
|
171
|
+
return generated;
|
|
172
|
+
}
|
|
173
|
+
|
|
153
174
|
function normalizeNetworkKey(value) {
|
|
154
175
|
const normalized = String(value ?? "").trim().toLowerCase();
|
|
155
176
|
const aliases = {
|
|
@@ -201,6 +222,8 @@ export function loadConfig(env = process.env) {
|
|
|
201
222
|
const authTokenPath =
|
|
202
223
|
String(env.WDK_EVM_LOCAL_TOKEN_PATH ?? "").trim() ||
|
|
203
224
|
path.join(openClawHome, "wdk-evm-wallet", "local-auth-token");
|
|
225
|
+
const instanceIdPath =
|
|
226
|
+
String(env.WDK_EVM_INSTANCE_ID_PATH ?? "").trim() || path.join(dataDir, "instance-id");
|
|
204
227
|
const providerMode = parseProviderMode(env.WDK_EVM_RPC_PROVIDER_MODE, "gateway");
|
|
205
228
|
const providerGatewayUrl =
|
|
206
229
|
String(env.PROVIDER_GATEWAY_URL ?? "").trim() || DEFAULT_PROVIDER_GATEWAY_URL;
|
|
@@ -294,6 +317,7 @@ export function loadConfig(env = process.env) {
|
|
|
294
317
|
network,
|
|
295
318
|
openClawHome,
|
|
296
319
|
dataDir,
|
|
320
|
+
instanceId: ensureInstanceId(instanceIdPath, env.WDK_EVM_INSTANCE_ID),
|
|
297
321
|
authRequired: true,
|
|
298
322
|
authTokenPath,
|
|
299
323
|
authToken: ensureLocalAuthToken(authTokenPath, env.WDK_EVM_LOCAL_TOKEN),
|
|
@@ -300,6 +300,8 @@ async function handleRequest(request, response) {
|
|
|
300
300
|
chainId: runtimeConfig.chainId,
|
|
301
301
|
host: config.host,
|
|
302
302
|
dataDir: config.dataDir,
|
|
303
|
+
instanceId: config.instanceId,
|
|
304
|
+
pid: process.pid,
|
|
303
305
|
authRequired: config.authRequired,
|
|
304
306
|
unlockTimeoutSeconds: config.unlockTimeoutSeconds,
|
|
305
307
|
availableNetworks: Object.keys(config.networkProfiles),
|