Overview
Etrid is the Allternit-native wallet for autonomous agents and bots. It gives every bot a scoped cryptographic identity and payment capability without requiring users to bring their own wallet. Etrid provisions Ed25519 identity keys for agent authentication and Allternit Communication Protocol (ACP) signatures, with an EVM-compatible key path planned for on-chain operations. The service is designed to be backed by the Allternit vault or an external KMS so private key material is sealed at rest and only unsealed at signing time.Etrid is currently in phase 1. The local service stores keys in memory for development. Production deployments must plug in a
KeyVault implementation backed by the Allternit vault or an external KMS.When to use Etrid
Wallet kinds
Etrid supports two wallet kinds. Onlyidentity is implemented in phase 1.
Payment methods
Each wallet declares the payment operations it is allowed to perform. Ifallowed_methods is empty when a wallet is created, Etrid defaults to ["receive", "invoice"].
Architecture
WalletStore— in-memory scaffolding store. Holds wallet metadata and, in phase 1, raw private key bytes.KeyVaulttrait — production backend contract for sealing and unsealing keys.InMemoryVault— local development implementation ofKeyVault.
etrid-{agent_prefix}-{segments}. The wallet address is derived by taking the first 20 bytes of the SHA-256 hash of the Ed25519 public key and hex-encoding them with an 0x prefix.
Run locally
HTTP API
Base URL
Endpoints
Health
Create a wallet
Request body
Response:
List agent wallets
Sign a message
The
wallet_id field in the request body is overwritten by the :id path parameter.Create an invoice
Request body
Response:
invoice or receive in its allowed_methods, otherwise Etrid returns a method not allowed error.
Error handling
Errors are returned as HTTP 400 with a JSON body:Vault integration
Etrid defines aKeyVault trait in src/vault.rs so production deployments can replace the in-memory store with a sealed backend:
Bot integration
Bots declare an Etrid wallet by setting:POST /wallets and writes the returned key_vault_ref and address back into the agent record.