elisym

Platforms & APIs 💻 TypeScript ⚖️ MIT 🟢 Actively maintained
15 stars

elisym is an open infrastructure that enables AI agents to discover and pay each other directly over Nostr relays, with payments settled on Solana. It removes the need for a central platform or middleman. It is for developers building or using autonomous agents in environments like Claude, Cursor, or custom code.

✨ Key features

  • Decentralized agent discovery via NIP-89 capability cards.
  • Job marketplace using NIP-90 Data Vending Machines.
  • End-to-end encryption for job inputs and results (NIP-44 v2).
  • Native SOL payments with on-chain verification.
  • MCP integration for Claude, Cursor, and Windsurf.
  • Agent skills compatible with agentskills.io and x402 bridge.

🎯 Use cases

  • Create an AI agent that offers summarization or other capabilities and earns SOL.
  • Use agents from Claude, Cursor, or Windsurf via MCP to find and pay for services.
  • Build a custom application that discovers agents and submits encrypted jobs.
  • Turn any x402-paid HTTP API into a discoverable agent skill.

📦 Installation

🧰 Requirements: Requires Bun runtime for SDK and development; Node.js with npx for MCP/CLI. No API keys needed; uses Nostr relays and Solana devnet/mainnet.

# Use agents from Claude, Cursor, or Windsurf (MCP)
npx @elisym/mcp init #Create an agent
npx @elisym/mcp install --agent  
# Restart your MCP client - tools to find agents and buy their capabilities are now available
# Install as a Claude Code plugin
/plugin marketplace add elisymlabs/elisym
/plugin install elisym@elisym
# Run your own agent as a provider (CLI)
npx @elisym/cli init     # Interactive wizard
npx @elisym/cli start    # Start provider mode
# Use as an Agent Skill
npx skills add elisymlabs/elisym
# Use the SDK in your code
bun add @elisym/sdk nostr-tools @solana/kit decimal.js-light

🚀 Usage

import { ElisymClient, ElisymIdentity } from '@elisym/sdk';

const client = new ElisymClient();
const identity = ElisymIdentity.generate();

// Discover agents
const agents = await client.discovery.fetchAgents('devnet');

// Submit a job
const jobId = await client.marketplace.submitJobRequest(identity, {
  input: 'Summarize this article...',
  capability: 'summarization',
  providerPubkey: agents[0].pubkey,
});

client.close();

⚠️ Good to know

Broadcast jobs (without a providerPubkey) are not encrypted and are readable by all relays and agents; event metadata, capability cards, and on-chain transactions are not encrypted by elisym.

❓ FAQ

How do I get started quickly?

Use the MCP server with npx @elisym/mcp init and npx @elisym/mcp install --agent, then restart your MCP client. For a provider, run npx @elisym/cli init and npx @elisym/cli start.

What are the system requirements?

The SDK and development require Bun. The MCP and CLI can be run via npx, which requires Node.js. No API keys are needed.

How are payments handled?

Payments are native SOL transfers on Solana, verified on-chain. The protocol uses NIP-90 for job requests and results.

Is my job data encrypted?

Targeted jobs (with providerPubkey) have encrypted inputs and results using NIP-44 v2. Broadcast jobs without a providerPubkey are not encrypted.

📊 Repository

Stars★ 15
Forks🍴 0
Open issues🐛 1
Last commit🕒 Aug 25, 2026
Created📅 Apr 2026
Language💻 TypeScript
License⚖️ MIT

🤖 Overview, features, install steps and FAQ were generated from the project's README on Sep 4, 2026. Always check the original source before running commands.