Skip to content

Latest commit

 

History

119 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Equxi Logo

Equxi

Solana-Native Trust Layer for AI Agents

Live Site CI Grant Program


The Problem

AI agents lack economic accountability. Nobody can safely trust an autonomous agent with real money because:

  • Counterparties refuse to deal with agents that can lose money with no recourse
  • Traditional wallets only hold funds and cannot enforce behavioral rules
  • There is no automatic compensation when an agent misbehaves

How It Works

1. Register  →  2. Bond  →  3. Enforce  →  4. Slash  →  5. Compensate

Create identity  ·  Lock SOL  ·  Set rules  ·  Penalize  ·  Pay victims

Deployed

Component Link
Landing Page equxi.sithunyein.com
Dashboard equxi.sithunyein.com/app.html
Documentation equxi.sithunyein.com/docs.html
Program D7akK6aUVdYWfSwRDtuKFExZQkqtWZ1EFrRz1LQdfvhc
Network Solana Devnet
Repo github.com/thesithunyein/equxi

On-Chain Proof

The program executes 8 instructions on devnet. All transactions confirmed.

Instruction Description
initialize Configures admin authority
register_agent Creates agent identity with name, type, and trust score
create_bond Locks SOL as collateral
withdraw_bond Returns SOL after lock period
add_constraint Adds behavioral rule (spend limit, timelock, etc.)
execute_slash Penalizes bond for rule violation
compensate_victim Transfers slashed funds to victim
update_trust_score Updates agent reputation

Quick Start

Frontend

git clone https://github.com/thesithunyein/equxi.git
cd equxi
npx serve .
# Open http://localhost:3000/app.html

Program

# Prerequisites: Solana CLI v2.1+, Rust stable
git clone https://github.com/thesithunyein/equxi.git
cd equxi
cargo build-sbf
solana program deploy target/deploy/equxi.so

Architecture

equxi/
├── programs/equxi/           Solana program (Rust/Anchor)
│   └── src/
│       ├── lib.rs            8 instructions
│       ├── state.rs          Account structs
│       ├── error.rs          Error codes
│       └── instructions/     Instruction handlers
├── sdk/                      TypeScript SDK
├── app.html                  Dashboard
├── app.js                    Dashboard logic
├── app.css                   Dashboard styles
├── index.html                Landing page
├── docs.html                 Documentation
└── styles.css                Landing styles

On-Chain Accounts

struct Config {
    admin: Pubkey,           // Admin who can slash
    total_agents: u64,
    total_bonds: u64,
    total_slashed: u64,
}

struct Agent {
    owner: Pubkey,           // Operator wallet
    name: [u8; 32],          // Agent name
    agent_type: AgentType,   // Trader, Oracle, DeFi, etc.
    trust_score: u8,         // 0-100 reputation
    status: AgentStatus,     // Active, Slashed, Deactivated
}

struct Bond {
    agent: Pubkey,           // Associated agent
    operator: Pubkey,        // Bond owner
    amount: u64,             // Locked lamports
    expires_at: i64,         // Lock expiry timestamp
    is_active: bool,
}

struct Constraint {
    agent: Pubkey,
    constraint_type: ConstraintType,  // SpendLimit, ProgramAllowlist, Timelock
    params: ConstraintParams,
    is_enforced: bool,
}

SDK

import { EquxiClient } from "./sdk/src";

const client = new EquxiClient(provider);

// Register agent
const { agentPDA } = await client.registerAgent("AlphaTrader", { trader: {} });

// Lock 5 SOL for 30 days
await client.createBond(agentPDA, 5_000_000_000, 2_592_000);

// Add spending limit (max 1 SOL per day)
await client.addConstraint(agentPDA, { spendLimit: {} }, {
  maxAmount: 1_000_000_000,
  maxPerPeriod: 5_000_000_000,
  periodSeconds: 86400,
});

// Slash for violation
await client.executeSlash(agentPDA, bondPDA, 100_000_000, "Exceeded spending limit");

Usage in elizaOS

npm install @equxi/plugin-eliza
import { equxiPlugin } from "@equxi/plugin-eliza";

const agent = {
  plugins: [equxiPlugin],
  settings: {
    WALLET_PUBLIC_KEY: "your-solana-wallet-public-key",
    SOLANA_RPC_URL: "https://api.devnet.solana.com",
  },
};

Then talk to your agent naturally:

What you say Action triggered
"Register my bot as an agent" EQUXI_REGISTER_AGENT
"Lock 0.5 SOL as bond" EQUXI_LOCK_BOND
"Set 1 SOL daily spend limit" EQUXI_ADD_CONSTRAINT
"Slash 0.1 SOL for exceeding limit" EQUXI_SLASH_BOND

See eliza-plugin/README.md for full docs.

Built For

Agentic Engineering Grant by Superteam.


Built by Sithu Nyein

About

Solana-native trust layer for AI agents. Bond operators, enforce rules on-chain, slash misbehaving agents.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages