Merged
Conversation
abiorh-claw
approved these changes
Apr 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Major refactor to simplify nanopayments by removing NanoKeyVault and adopting direct private key mode, derive CAIP-2 network strictly from OMNICLAW_NETWORK via network_to_caip2, add comprehensive agent API endpoints, and apply Ruff-driven lint cleanup across the codebase.
Breaking Changes
Core Changes
Network Derivation (src/omniclaw/core/types.py, src/omniclaw/core/config.py)
Client (src/omniclaw/client.py)
Agent Server (src/omniclaw/agent/server.py)
Uses network_to_caip2() for nanopayment network
Reads OMNICLAW_NETWORK from environment
Added policy hot-reload loop
Sync wallet initialization (blocking) for direct key mode
Agent Routes (src/omniclaw/agent/routes.py)
Added /nano-address - Get nanopayment EOA address
Added /balance-detail - Detailed balance including Gateway
Added /deposit - Deposit USDC to Gateway
Added /withdraw - Withdraw from Gateway via Circle API
Added /withdraw-trustless - Trustless on-chain withdrawal
Added /deposit-address - Get EOA for external deposits
Added /confirmations/{id} - Confirmation management endpoints
Updated /x402/verify - Real implementation that settles payments
Updated /x402/pay - Uses client.pay() for automatic routing
Added require_owner() for privileged endpoints
Guards (src/omniclaw/guards/)
Added confirmations.py - New confirmation store for payment approvals
Policy Engine (src/omniclaw/agent/policy.py)
Major refactor with wallet-per-agent support
Per-wallet limits and recipient validation
Multiple wallet configuration support
Documentation Updates
Test Cleanup (Ruff-driven)