ows-core 0.3.3

Core types and traits for the Open Wallet Standard
Documentation
# OWS — Open Wallet Standard

Rust implementation of the [Open Wallet Standard](https://openwalletstandard.org) for secure, local-first crypto wallet management.

## Quick Install

```bash
curl -fsSL https://openwallet.sh/install.sh | bash
```

This installs the `ows` CLI binary, plus Node.js and Python bindings if those runtimes are available.

Or clone and build from source (requires [Rust](https://rustup.rs) 1.70+):

```bash
git clone https://github.com/open-wallet-standard/core.git
cd core/ows
cargo build --workspace --release
```

## CLI Reference

| Command | Description |
|---------|-------------|
| `ows wallet create` | Create a new wallet with addresses for all chains |
| `ows wallet list` | List all wallets in the vault |
| `ows wallet info` | Show vault path and supported chains |
| `ows sign message` | Sign a message with chain-specific formatting |
| `ows sign tx` | Sign a raw transaction |
| `ows mnemonic generate` | Generate a BIP-39 mnemonic phrase |
| `ows mnemonic derive` | Derive an address from a mnemonic |
| `ows update` | Update ows and bindings |
| `ows uninstall` | Remove ows from the system |

## Language Bindings

The bindings are **standalone** — they embed the Rust core via native FFI. No CLI or install script required.

| Language | Package | Install |
|----------|---------|---------|
| Node.js | [`@open-wallet-standard/core`]https://www.npmjs.com/package/@open-wallet-standard/core | `npm install @open-wallet-standard/core` |
| Python | [`open-wallet-standard`]https://pypi.org/project/open-wallet-standard/ | `pip install open-wallet-standard` |

```javascript
import { createWallet, signMessage } from "@open-wallet-standard/core";

const wallet = createWallet("my-wallet");
console.log(wallet.accounts); // addresses for EVM, Solana, Bitcoin, Cosmos, Tron

const sig = signMessage("my-wallet", "evm", "hello");
console.log(sig.signature);
```

## Crates

| Crate | Description |
|-------|-------------|
| `ows-core` | Types, CAIP-2/10 parsing, errors, config. Zero crypto dependencies. |
| `ows-signer` | ChainSigner trait, HD derivation, address derivation for EVM, Solana, Bitcoin, Cosmos, and Tron. |
| `ows-lib` | Library interface used by language bindings and the CLI. |
| `ows-cli` | The `ows` command-line tool. |

## Supported Chains

- **EVM** (Ethereum, Polygon, etc.) — secp256k1, EIP-55 addresses, EIP-191 message signing
- **Solana** — Ed25519, base58 addresses
- **Bitcoin** — secp256k1, BIP-84 native segwit (bech32)
- **Cosmos** — secp256k1, bech32 addresses (configurable HRP)
- **Tron** — secp256k1, base58check addresses

## License

See repository root for license information.