Skip to content

Releases: iotexproject/ioswarm-agent

v0.6.1

23 Mar 19:19

Choose a tag to compare

Bug fixes from self-review of v0.6.0:

  • Multi-delegate per-coordinator API keys: --api-key now 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 activeStateStore race condition
  • Clean JSON output: Removed unused current_epoch field from rewards response

v0.6.0: Auto-upgrade, Rewards, Multi-delegate

23 Mar 19:10

Choose a tag to compare

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-agent

Displays 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/rewards endpoint for per-agent reward queries
  • Delegates should rebuild docker image from ioswarm-v2.3.5 branch

v0.5.2: Fix gRPC max message size for state diff streams

23 Mar 16:08

Choose a tag to compare

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

20 Mar 04:16

Choose a tag to compare

Full Changelog: v0.5.0...v0.5.1

v0.5.0: LLM Proxy for ClawHive

20 Mar 03:21

Choose a tag to compare

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 llm

Run 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

13 Mar 16:48

Choose a tag to compare

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 | bash

Manual: 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

13 Mar 16:47

Choose a tag to compare

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, --tls flag 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 | bash

v0.2.0 — OpenClaw Skill + Keygen

12 Mar 00:45
cc7d9d0

Choose a tag to compare

What's New

  • OpenClaw Skill: Install via curl -sSL https://raw.githubusercontent.com/iotexproject/ioswarm-agent/main/openclaw/install.sh | bash and run ~/.ioswarm/agent/ioswarm.sh setup
  • keygen subcommand: Generate secp256k1 wallet (ioswarm-agent keygen --out wallet.key --addr-out wallet.addr)
  • addr subcommand: 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