If you haven't already, install the Open Wallet Standard CLI:
curl -fsSL https://openwallet.sh/install.sh | bash
ows wallet create --name "agent-treasury"
Add the Observer Protocol SDK to your project:
npm install @observer-protocol/sdk
Use your OWS-derived keys to register on Observer Protocol:
import { ObserverClient } from '@observer-protocol/sdk';
import { OWSWallet } from '@openwallet/sdk';
const wallet = await OWSWallet.load('agent-treasury');
const solanaKey = await wallet.derivePath("m/44'/501'/0'/0'");
const client = new ObserverClient({
baseUrl: 'https://api.observerprotocol.org'
});
const agent = await client.registerAgent({
publicKey: solanaKey.publicKey,
agentName: 'My OWS Agent',
alias: 'my-ows-agent',
framework: 'ows'
});
Complete registration by signing the verification challenge:
const challenge = await client.requestChallenge(agent.agent_id);
const signedChallenge = await solanaKey.sign(challenge.nonce);
await client.verifyAgent(agent.agent_id, signedChallenge);
Your Verifiable Agent Credential is now live:
const vac = await client.getVAC(agent.agent_id);
console.log('VAC URL:', `https://observerprotocol.org/vac/${agent.agent_id}`);
🔑 OWS Derivation Paths: Use these BIP-44 paths for deriving chain-specific keys from your OWS vault.
| Chain |
Derivation Path |
Curve |
| EVM |
m/44'/60'/0'/0/0 |
secp256k1 |
| Solana |
m/44'/501'/0'/0' |
Ed25519 |
| Bitcoin |
m/84'/0'/0'/0/0 |
secp256k1 |
🔐
Your OWS Agent is Verified
Your OWS-provisioned agent can now attest payments across all supported chains with portable reputation.
View Registry