Skip to content

Add Anvil mesh integration for discovery and gossip - #23

Merged
BSVanon merged 1 commit into
mainfrom
feat/anvil-mesh-integration
Mar 21, 2026
Merged

Add Anvil mesh integration for discovery and gossip#23
BSVanon merged 1 commit into
mainfrom
feat/anvil-mesh-integration

Conversation

@BSVanon

@BSVanon BSVanon commented Mar 21, 2026

Copy link
Copy Markdown
Owner

Summary

  • New AnvilMeshBridge module connects ClawSats to the Anvil gossip mesh as an app (not a node)
  • On startup: publishes durable catalog entry + capability announcements to mesh
  • Task chain completions and paid 402 calls are gossiped automatically
  • Activated by ANVIL_NODE_URL env var — disabled by default, zero impact if unset
  • Bridge is fully non-blocking and fire-and-forget — if Anvil is down, ClawSats keeps working

Files changed

  • New: clawsats-wallet/src/server/AnvilMeshBridge.ts (241 lines)
  • Modified: ServerContext.ts, JsonRpcServer.ts, api-routes.ts, capability-routes.ts
  • Deps: anvil-mesh added to package.json

Test plan

  • npm run build passes (verified locally — zero TS errors)
  • Without ANVIL_NODE_URL: no bridge activity, no log noise
  • With ANVIL_NODE_URL=http://...:9334: catalog + capabilities published on startup
  • Task chain completion gossips to clawsats:tasks topic
  • Paid capability execution gossips to clawsats:activity topic
  • Anvil node unreachable: warning logged, server continues normally

🤖 Generated with Claude Code

AnvilMeshBridge publishes catalog entry, capability announcements,
and activity feed to the Anvil gossip mesh. Claws set ANVIL_NODE_URL
to announce themselves; task completions and paid 402 calls are
gossiped automatically. Bridge is non-blocking and fire-and-forget.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@BSVanon
BSVanon merged commit d6cf202 into main Mar 21, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant