Releases: iotexproject/ioswarm-agent
v0.6.1
Bug fixes from self-review of v0.6.0:
- Multi-delegate per-coordinator API keys:
--api-keynow accepts comma-separated values matching--coordinator(e.g.,--coordinator=a:443,b:443 --api-key=key1,key2) - L4 multi-delegate safety: Only the first worker initializes L4 state store to prevent
activeStateStorerace condition - Clean JSON output: Removed unused
current_epochfield from rewards response
v0.6.0: Auto-upgrade, Rewards, Multi-delegate
New Features
Auto-upgrade check
Agent now checks GitHub for newer versions on startup. If available, prints:
⚡ Update available: v0.5.2 → v0.6.0
Upgrade: curl -sSL ...
Rewards command
ioswarm-agent rewards --coordinator=http://delegate.example.com:14690 --agent-id=my-agentDisplays per-epoch reward history, accuracy, rank, and totals.
Multi-delegate support
Connect to multiple coordinators simultaneously:
ioswarm-agent \
--coordinator=delegate1.com:443,delegate2.com:443 \
--agent-id=my-agent \
--api-key=iosw_...Each coordinator runs as an independent worker. Rewards accumulate from all delegates.
Bug fix (from v0.5.2)
- gRPC max message size increased to 32MB (fixes state diff stream disconnects)
Companion coordinator changes
- Shadow accuracy nonce race exclusion → 100% accuracy
/api/rewardsendpoint for per-agent reward queries- Delegates should rebuild docker image from
ioswarm-v2.3.5branch
v0.5.2: Fix gRPC max message size for state diff streams
Fix
Increases gRPC max message size from 4MB (default) to 32MB on the agent's gRPC connection.
Problem: State diff messages can exceed 4MB for blocks with large state changes (contract deployments, batch operations). When this happens, L4 agents see:
state diff stream disconnected, reconnecting...
rpc error: code = ResourceExhausted desc = grpc: received message larger than max (6815590 vs. 4194304)
The stream disconnects and reconnects in a loop, degrading L4 accuracy over time.
Fix: MaxCallRecvMsgSize(32MB) + MaxCallSendMsgSize(32MB) added to gRPC dial options.
Upgrade: All L4 agents should upgrade. L1-L3 agents are not affected but should upgrade anyway.
Companion fix: Coordinator side fixed in iotex-core@0d90e7b. Delegates should rebuild their iotex-core docker image from ioswarm-v2.3.5 branch.
v0.5.1
Full Changelog: v0.5.0...v0.5.1
v0.5.0: LLM Proxy for ClawHive
What's New
LLM Proxy Capability
ioswarm-agent can now serve as an OpenAI-compatible LLM proxy alongside its existing blockchain validation role.
One-Click Setup
# Login to Claude (browser opens, click to authenticate)
ioswarm-agent llm setup
# Start LLM proxy
ioswarm-agent --mode llmRun Modes
| Flag | Behavior |
|---|---|
--mode validator |
Default. Existing blockchain validation only. |
--mode llm |
LLM proxy only. No coordinator needed. |
--mode both |
Validator + LLM proxy in parallel. |
Supported Models
- Claude (Opus 4.6, Sonnet 4.6) — via OAuth subscription or API key
- Gemini (2.0 Flash, 1.5 Flash) — via API key
- GPT (4o) — via API key
Security
- Tokens stay on your machine. Gateway never sees them.
- OAuth tokens saved to
~/.ioswarm/claude_token.json(600 permissions) - Default behavior (
--mode validator) is 100% unchanged.
Downloads
| Platform | Binary |
|---|---|
| Linux x86_64 | ioswarm-agent-linux-amd64 |
| Linux ARM64 | ioswarm-agent-linux-arm64 |
| macOS Apple Silicon | ioswarm-agent-darwin-arm64 |
| macOS Intel | ioswarm-agent-darwin-amd64 |
v0.4.0 — Default L3, claimFor, AgentRewardPool v2
What's New
- Default level changed to L3 — full EVM execution out of the box, no snapshot needed
- AgentRewardPool v2 contract — adds
claimFor,batchClaimFor,depositSettleAndClaim- Agents with zero IOTX balance receive rewards automatically (coordinator claims on their behalf)
- Contract:
0x236CBF52125E68Db8fA88b893CcaFB2EE542F2d9
- Stale references cleaned up — no hardcoded IPs, correct repo name in installer
Upgrade
OpenClaw users:
curl -sSL https://raw.githubusercontent.com/iotexproject/ioswarm-agent/main/openclaw/install.sh | bashManual: download the binary for your platform and restart the agent.
Breaking Changes
None — fully backward compatible with existing agents and v1 contracts.
v0.3.0 — TLS, L4 Production, Docker
Highlights
- L4 independent EVM execution — agents maintain full local state via IOSWSNAP snapshot + real-time state diffs
- 100% shadow accuracy on mainnet (agent results identical to on-chain execution)
- <200ms restart recovery from BoltDB state store
- TLS support — auto-TLS on port 443,
--tlsflag for explicit enable - Coordinator endpoint:
delegate.goodwillclaw.com:443(origin IP hidden behind DO Load Balancer) - On-chain reward settlement via AgentRewardPool contract (F1 algorithm)
- Docker + pre-built binaries for all platforms
Upgrade
# Docker
docker pull raullen/ioswarm-agent:latest
# OpenClaw
curl -sSL https://raw.githubusercontent.com/iotexproject/ioswarm-agent/main/openclaw/install.sh | bashv0.2.0 — OpenClaw Skill + Keygen
What's New
- OpenClaw Skill: Install via
curl -sSL https://raw.githubusercontent.com/iotexproject/ioswarm-agent/main/openclaw/install.sh | bashand run~/.ioswarm/agent/ioswarm.sh setup keygensubcommand: Generate secp256k1 wallet (ioswarm-agent keygen --out wallet.key --addr-out wallet.addr)addrsubcommand: Derive address from existing key (ioswarm-agent addr --key wallet.key)- L4 State Sync: BoltDB-backed state store with delta streaming from coordinator
Binaries
| Platform | File |
|---|---|
| Linux amd64 | ioswarm-agent-linux-amd64 |
| Linux arm64 | ioswarm-agent-linux-arm64 |
| macOS Intel | ioswarm-agent-darwin-amd64 |
| macOS Apple Silicon | ioswarm-agent-darwin-arm64 |
Quick Start
# Install
curl -sSL https://raw.githubusercontent.com/iotexproject/ioswarm-agent/main/openclaw/install.sh | bash
# Setup (generates wallet, finds best delegate)
~/.ioswarm/agent/ioswarm.sh setup
# Start earning
~/.ioswarm/agent/ioswarm.sh start