v0.1.0-alpha · P2P fabric + Pi mesh + EVRUS plugin · signed receipts & CI gates ship · installers unsigned

EVRUS plugin · v0.1.0-alpha

Identity, IPFS, and swap intents — Vault remains the signer.

PeerWeave is the harness for agents and spaces. EVRUS is the plugin for DID, value, IPFS, and atomic Evrmore swap intents. Integration is over HTTP, not a shared library. Intra-org receipts do not require EVRUS.

Plugin contract

DID / OIDC

EVRUS Vault is the identity authority. PeerWeave checks OIDC/DID health against the Vault bridge (typically http://127.0.0.1:8790). CapTokens on the fabric still bind to did:key on each node.

IPFS

Content-addressed blobs go through a Kubo (or compatible) HTTP API. Set IPFS_API_URL — default http://127.0.0.1:5001. PeerWeave does not embed an IPFS daemon; docker-compose can run the sidecar.

Atomic swap intents

Offer JSON lives in a CRDT space so the mesh can sync it. EVRUS Vault signs the Evrmore transaction. PeerWeave never asks for a mnemonic and never holds spend keys.

What PeerWeave stores

Swap intents are ordinary space files. Once another peer connects, those files sync with the rest of the fabric. Signing still happens in EVRUS Vault — this site will not collect a seed phrase.

{
  "schema": "pw.evrus.swap_intent.v1",
  "offer_id": "…",
  "from_did": "did:key:z6Mk…",
  "give": [{ "type": "evr", "amount": "1" }],
  "want": [{ "type": "asset", "asset_id": "ASSET_NAME", "amount": "1" }],
  "signed": false
}

Gateway surface

The browser client fetches /v1/evrus on http://127.0.0.1:8788. Start the node first.

export IPFS_API_URL=http://127.0.0.1:5001
pw daemon start
# GET http://127.0.0.1:8788/v1/health
# GET http://127.0.0.1:8788/v1/evrus

Ecosystem mapping: manticore-ecosystem-integration.md.

Open the EVRUS tab

The web client shows plugin health and intent JSON. If the gateway is down, run pw daemon start or the docker stack.