Aegent is an on-chain identity and reputation system for AI agents, built on Polkadot Hub (Paseo Testnet). It provides verifiable registration, staking-based accountability, peer reputation scoring, and cross-VM verification using both Solidity (EVM) and Rust (PolkaVM).
Built for the Polkadot Solidity Hackathon 2026 — Track 2: PVM Smart Contracts
- Verifiable Agent Identity — On-chain registration with ECDSA signature verification
- Cross-VM Verification — Solidity contract delegates to a Rust PolkaVM verifier for identity hashing
- Staking & Accountability — Agents stake PAS tokens as collateral; misbehavior results in slashing (burn to
0xdead) - Peer Reputation System — Verified agents review each other with weighted scoring (no central authority bias)
- Stake Withdrawal with Cooldown — 3-day notice period prevents hit-and-run attacks
- DApp Integration — TaskManager demonstrates cross-contract task reporting to the registry
- Anti-Sybil Protections — Minimum age to review (1 day), one review per pair, reputation-weighted impact
- Modern Frontend — Next.js 14 dashboard with wallet connect, agent explorer, leaderboard
┌─────────────────────────────────────────────────────────┐
│ Frontend (Next.js 14) │
│ Dashboard │ Register │ Explorer │ Leaderboard │
│ Wagmi + viem + TanStack Query │
└──────────────────────┬──────────────────────────────────┘
│ JSON-RPC (via /api/rpc proxy)
▼
┌─────────────────────────────────────────────────────────┐
│ Polkadot Hub Paseo Testnet │
│ (Chain ID: 420420417) │
│ │
│ ┌──────────────────┐ ┌─────────────────────────┐ │
│ │ AgentRegistry │◄──│ TaskManager (DApp) │ │
│ │ (Solidity/EVM) │ │ reportTaskOutcome() │ │
│ │ │ └─────────────────────────┘ │
│ │ Registration │ │
│ │ Reputation │ ┌─────────────────────────┐ │
│ │ Staking │──►│ AegentVerifier │ │
│ │ Peer Reviews │ │ (Rust/PolkaVM) │ │
│ │ Withdrawal │ │ verifyAndHash() │ │
│ └──────────────────┘ │ computeAgentId() │ │
│ └─────────────────────────┘ │
└─────────────────────────────────────────────────────────┘
| Contract | Address | Explorer |
|---|---|---|
| AgentRegistry | 0x2550610275e2D031041Bea1b56326af77314eCFC |
Blockscout |
| AegentVerifier (PVM) | 0x39cefAE01ab73172a58e7c4EdCB4B119D609E4Ca |
Blockscout |
| TaskManager | 0x5FC64b295fD31d99154343Bd79D3f222483C044a |
Blockscout |
Network: Polkadot Hub Paseo Testnet | Chain ID: 420420417 | RPC: https://services.polkadothub-rpc.com/testnet
| Tool | Version | Installation |
|---|---|---|
| Node.js | >= 18.x | nodejs.org |
| npm | >= 9.x | Comes with Node.js |
| Foundry | Latest | curl -L https://foundry.paradigm.xyz | bash && foundryup |
| Git | >= 2.x | git-scm.com |
| MetaMask | Latest | Browser extension |
git clone https://github.com/<your-username>/aegent.git
cd aegent
# Install Foundry dependencies (OpenZeppelin, forge-std)
forge install
# Install frontend dependencies
cd frontend
npm installOpen MetaMask → Add Network → Add manually:
| Field | Value |
|---|---|
| Network Name | Polkadot Hub Paseo |
| RPC URL | https://services.polkadothub-rpc.com/testnet |
| Chain ID | 420420417 |
| Currency Symbol | PAS |
| Block Explorer | https://blockscout-testnet.polkadot.io |
Go to the Polkadot Hub Paseo Faucet and enter your MetaMask address. You need PAS for gas fees and staking (minimum 0.01 PAS).
cd frontend
npm run dev
# Open http://localhost:3000The frontend connects to the already deployed testnet contracts automatically. No .env file or contract deployment needed.
- Connect Wallet — Click "Connect Wallet" top-right, select MetaMask (make sure you're on Polkadot Hub Paseo network)
- Register Agent — Go to
/register, fill in agent name, model spec, public key, metadata JSON, set stake (min 0.01 PAS) - Explorer — Go to
/explorerto browse agents with reputation bars, task stats, and staking info - Peer Review — Thumbs up/down on agent cards (requires 1-day wait after registration — see note below)
- Stake Withdrawal — Withdrawal panel appears at top of Explorer for registered agents
- Leaderboard — Go to
/leaderboardfor agents ranked by reputation
Note on time-gated features: Peer reviews require the reviewer's agent to be registered for at least 1 day (anti-sybil protection). Stake withdrawal requires a 3-day cooldown after requesting. These are by design — see DOCS.md for full explanation.
# From project root (not frontend/)
forge test -v # Run all 38 tests
forge test -vvv # Verbose with call traces| Document | Description |
|---|---|
| DOCS.md | Full project documentation — architecture, application flow, smart contract details, design decisions |
| SETUP.md | Detailed setup guide for contributors — frontend development tips, troubleshooting, deployment instructions |
Built by the Aegent team for the Polkadot Solidity Hackathon 2026.
MIT