@open-wallet-standard/core 0.4.3 → 0.5.0

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.
Files changed (2) hide show
  1. package/README.md +23 -15
  2. package/package.json +5 -5
package/README.md CHANGED
@@ -1,16 +1,18 @@
1
+ <!-- Generated from readme/templates/node.md + readme/partials/ — edit those, then run readme/generate.sh -->
2
+
1
3
  # @open-wallet-standard/core
2
4
 
3
- Secure signing and wallet management for every chain. One vault, one interface — keys never leave your machine.
5
+ Local, policy-gated signing and wallet management for every chain.
4
6
 
5
7
  [![npm](https://img.shields.io/npm/v/@open-wallet-standard/core)](https://www.npmjs.com/package/@open-wallet-standard/core)
6
8
  [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://github.com/open-wallet-standard/core/blob/main/LICENSE)
7
9
 
8
10
  ## Why OWS
9
11
 
10
- - **Zero key exposure.** Private keys are encrypted at rest, decrypted only after policy checks pass, then immediately wiped from memory. Agents authenticate with scoped API tokens and never see raw key material.
11
- - **Every chain, one interface.** EVM, Solana, Sui, Bitcoin, Cosmos, Tron, TON — all first-class. CAIP-2/CAIP-10 addressing abstracts away chain-specific details.
12
- - **Policy before signing.** A pre-signing policy engine gates agent (API key) operations — chain allowlists, expiry, and optional custom executables — before any key is touched.
13
- - **Built for agents.** MCP server, native SDK, and CLI. A wallet created by one tool works in every other.
12
+ - **Local key custody.** Private keys stay encrypted at rest and are decrypted only inside the OWS signing path after the relevant checks pass. Current implementations harden in-process memory handling and wipe key material after use.
13
+ - **Every chain, one interface.** EVM, Solana, Sui, Bitcoin, Cosmos, Tron, TON, Spark, Filecoin — all first-class. CAIP-2/CAIP-10 addressing abstracts away chain-specific details.
14
+ - **Policy before signing.** A pre-signing policy engine gates agent (API key) operations before decryption — chain allowlists, expiry, and optional custom executables.
15
+ - **Built for agents.** Native SDK and CLI today. A wallet created by one tool works in every other.
14
16
 
15
17
  ## Install
16
18
 
@@ -27,7 +29,7 @@ The package is **fully self-contained** — it embeds the Rust core via native F
27
29
  import { createWallet, signMessage } from "@open-wallet-standard/core";
28
30
 
29
31
  const wallet = createWallet("agent-treasury");
30
- // => accounts for EVM, Solana, Sui, BTC, Cosmos, Tron, TON
32
+ // => accounts for EVM, Solana, Bitcoin, Cosmos, Tron, TON, Filecoin, and Sui
31
33
 
32
34
  const sig = signMessage("agent-treasury", "evm", "hello");
33
35
  console.log(sig.signature);
@@ -36,14 +38,14 @@ console.log(sig.signature);
36
38
  ### CLI
37
39
 
38
40
  ```bash
39
- # Create a wallet (derives addresses for all supported chains)
41
+ # Create a wallet (derives addresses for the current auto-derived chain set)
40
42
  ows wallet create --name "agent-treasury"
41
43
 
42
44
  # Sign a message
43
45
  ows sign message --wallet agent-treasury --chain evm --message "hello"
44
46
 
45
47
  # Sign a transaction
46
- ows sign tx --wallet agent-treasury --chain evm --tx-hex "deadbeef..."
48
+ ows sign tx --wallet agent-treasury --chain evm --tx "deadbeef..."
47
49
  ```
48
50
 
49
51
  ## Supported Chains
@@ -57,6 +59,7 @@ ows sign tx --wallet agent-treasury --chain evm --tx-hex "deadbeef..."
57
59
  | Tron | secp256k1 | base58check | `m/44'/195'/0'/0/0` |
58
60
  | TON | Ed25519 | raw/bounceable | `m/44'/607'/0'` |
59
61
  | Sui | Ed25519 | 0x + BLAKE2b-256 hex | `m/44'/784'/0'/0'/0'` |
62
+ | Spark (Bitcoin L2) | secp256k1 | spark: prefixed | `m/84'/0'/0'/0/0` |
60
63
  | Filecoin | secp256k1 | f1 base32 | `m/44'/461'/0'/0/0` |
61
64
 
62
65
  ## CLI Reference
@@ -74,6 +77,11 @@ ows sign tx --wallet agent-treasury --chain evm --tx-hex "deadbeef..."
74
77
  | `ows fund balance` | Check token balances for a wallet |
75
78
  | `ows mnemonic generate` | Generate a BIP-39 mnemonic phrase |
76
79
  | `ows mnemonic derive` | Derive an address from a mnemonic |
80
+ | `ows policy create` | Register a policy from a JSON file |
81
+ | `ows policy list` | List all registered policies |
82
+ | `ows key create` | Create an API key for agent access |
83
+ | `ows key list` | List all API keys |
84
+ | `ows key revoke` | Revoke an API key |
77
85
  | `ows update` | Update ows and bindings |
78
86
  | `ows uninstall` | Remove ows from the system |
79
87
 
@@ -82,18 +90,18 @@ ows sign tx --wallet agent-treasury --chain evm --tx-hex "deadbeef..."
82
90
  ```
83
91
  Agent / CLI / App
84
92
 
85
- │ OWS Interface (MCP / SDK / CLI)
93
+ │ OWS Interface (SDK / CLI)
86
94
 
87
95
  ┌─────────────────────┐
88
- │ Access Layer │ 1. Agent calls ows.sign()
89
- │ ┌────────────────┐ │ 2. Policy engine evaluates
90
- │ │ Policy Engine │ │ 3. Enclave decrypts key
96
+ │ Access Layer │ 1. Caller invokes sign()
97
+ │ ┌────────────────┐ │ 2. Policy engine evaluates for API tokens
98
+ │ │ Policy Engine │ │ 3. Key decrypted in hardened memory
91
99
  │ │ (pre-signing) │ │ 4. Transaction signed
92
100
  │ └───────┬────────┘ │ 5. Key wiped from memory
93
101
  │ ┌───────▼────────┐ │ 6. Signature returned
94
- │ │ Signing Enclave │ │
95
- │ │ (isolated proc) │ │ The agent NEVER sees
96
- │ └───────┬────────┘ │ the private key.
102
+ │ │ Signing Core │ │
103
+ │ │ (in-process) │ │ The OWS API never returns
104
+ │ └───────┬────────┘ │ raw private keys.
97
105
  │ ┌───────▼────────┐ │
98
106
  │ │ Wallet Vault │ │
99
107
  │ │ ~/.ows/wallets/ │ │
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-wallet-standard/core",
3
- "version": "0.4.3",
3
+ "version": "0.5.0",
4
4
  "description": "Node.js native bindings for the Open Wallet Standard",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
@@ -31,10 +31,10 @@
31
31
  "@napi-rs/cli": "^2.18.0"
32
32
  },
33
33
  "optionalDependencies": {
34
- "@open-wallet-standard/core-linux-x64-gnu": "0.4.3",
35
- "@open-wallet-standard/core-linux-arm64-gnu": "0.4.3",
36
- "@open-wallet-standard/core-darwin-x64": "0.4.3",
37
- "@open-wallet-standard/core-darwin-arm64": "0.4.3"
34
+ "@open-wallet-standard/core-linux-x64-gnu": "0.5.0",
35
+ "@open-wallet-standard/core-linux-arm64-gnu": "0.5.0",
36
+ "@open-wallet-standard/core-darwin-x64": "0.5.0",
37
+ "@open-wallet-standard/core-darwin-arm64": "0.5.0"
38
38
  },
39
39
  "license": "MIT",
40
40
  "files": [