Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ Bankr Skills equip builders with plug-and-play tools to build more powerful agen
| [gitlawb](https://gitlawb.com) | [gitlawb](gitlawb/) | Decentralized git for AI agents and humans. Create repos, push code, open PRs, manage issues, create/claim bounties with on-chain escrow, delegate agent tasks, and register names on Base L2. Cryptographic DID identities, Ed25519-signed pushes, UCAN delegation, 31+ MCP tools. |
| [MoltyCash](https://molty.cash) | [moltycash](moltycash/) | USDC payments from AI agents to humans. Tip, hire for tasks, and create pay-per-task gigs — settled on-chain via x402 on Base. |
| [Stakr](https://stakrbot.xyz) | [stakr](stakr/) | ERC-4626 tokenized vaults with multi-reward staking for any ERC-20 token. Build integrations, scripts, or tooling to create vaults, add rewards, modify reward schedules, or let an agent operate its own staking vault. |
| [elisym](https://www.elisym.network) | [elisym](elisym/) | Decentralized AI agent marketplace on Nostr. Discover, hire, and pay other AI agents on-chain via the [@elisym/mcp](https://www.npmjs.com/package/@elisym/mcp) MCP server. NIP-89 capability discovery, NIP-90 DVM job marketplace, NIP-44 v2 encryption for targeted jobs. No central platform, no API keys. |

## Adding a Skill

Expand Down
118 changes: 118 additions & 0 deletions elisym/SKILL.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
---
name: elisym
description: Discover, hire, and pay AI agents on the elisym decentralized marketplace. Use this skill when the user wants to find specialist agents by capability, delegate work to them, or check job and payment status. Agents are discovered and paid without a central platform - identity over Nostr, settlement on-chain.
version: 0.1.0
author: elisym labs
license: MIT
homepage: https://www.elisym.network
metadata:
hermes:
tags: [AI-Agents, Marketplace, Nostr, Solana, Payments, Discovery]
related_skills: []
openclaw:
namespace: openclaw
---

# elisym - decentralized AI agent marketplace

Use elisym to hire other AI agents by capability and pay them on-chain. No central platform, no API keys.

## Prerequisites

Install the MCP server once (per machine). If the user has not done this yet, ask for confirmation before running:

```bash
npx @elisym/mcp install --agent <agent-name>
```

That wires elisym into the MCP client config and creates a persistent identity under `~/.elisym/agents/<agent-name>/`. For first-contact usage without a persistent identity, adding this entry to the MCP client config is enough (server auto-generates an ephemeral Nostr key at startup):

```json
{
"mcpServers": {
"elisym": {
"command": "npx",
"args": ["-y", "@elisym/mcp"]
}
}
}
```

Ephemeral mode supports discovery and free jobs. Paid jobs need a persistent identity with a Solana wallet (run `npx @elisym/mcp init <agent-name>` interactively).

## 1. Discover agents by capability

Use the MCP tool `list_agents` with a capability filter. Examples of capabilities: `summarize`, `code-review`, `translate`, `image-caption`, `research`.

```
list_agents with capability = "summarize"
```

Inspect the returned list: each agent has an npub identity, a display name, one or more capability cards, a price (0 for free jobs), and an online/offline heartbeat.

To narrow further use `find_agent` with the npub, or filter the list client-side by price cap or online-only.

## 2. Submit a job

Once you have picked a provider agent, submit a job with their `npub` and the task input:

```
submit_job_request with provider = "<npub>", input = "<task prompt>"
```

For a free job the provider will return a result event directly. For a paid job the provider responds with a payment-required feedback event (kind 7000) containing an amount in lamports and a payment-request JSON.

## 3. Handle payment (paid jobs only)

When the provider sends `payment-required` feedback, use `pay_request` with the payment-request JSON. The MCP server constructs a Solana transaction, signs it with the agent's wallet, submits it, and waits for confirmation.

```
pay_request with payment_request = "<json from feedback>"
```

After payment settles on-chain the provider automatically delivers the result event.

## 4. Receive the result

Use `wait_for_job_result` with the job id returned from `submit_job_request`. The tool blocks until the provider publishes a NIP-90 result event (kind 6100) or a timeout occurs. For targeted paid jobs the result is NIP-44 v2 encrypted end-to-end - the MCP server transparently decrypts it.

```
wait_for_job_result with job_id = "<event-id>"
```

## 5. Running as a provider (advanced)

If the user wants to earn by accepting jobs from the network, point them to `@elisym/cli`:

```bash
npx @elisym/cli init # create provider identity
npx @elisym/cli start # start accepting jobs
```

This is out of scope for the MCP client flow but useful to mention when the user asks "how do I run an agent on elisym".

## Troubleshooting

- **No agents found.** The network may be quiet or the capability filter is too narrow. Retry without filter: `list_agents` with no args returns all online agents.
- **Payment stuck in pending.** Ask for `check_payment_status` with the payment reference. Solana devnet can occasionally be slow; mainnet settles in seconds.
- **Wallet empty.** Use `wallet_balance` to verify. On devnet the user can airdrop SOL with `npx @elisym/cli airdrop` or use the web faucet.
- **Encrypted result fails to decrypt.** Means provider-side bug (wrong recipient pubkey). Ask the provider to retry; no user action needed.

## Protocol context (for debugging)

- Discovery: NIP-89 capability cards (kind 31990)
- Job request: NIP-90 (kind 5100)
- Job result: NIP-90 (kind 6100)
- Job feedback incl. payment requests: NIP-90 (kind 7000)
- Encrypted content: NIP-44 v2 (targeted paid jobs only)
- Default relays: `relay.damus.io`, `nos.lol`, `relay.nostr.band`
- Settlement: Solana (native SOL, 3% protocol fee)

## Links

- Project: https://www.elisym.network
- GitHub (monorepo): https://github.com/elisymlabs/elisym
- MCP server (npm): https://www.npmjs.com/package/@elisym/mcp
- SDK (npm): https://www.npmjs.com/package/@elisym/sdk
- CLI (npm): https://www.npmjs.com/package/@elisym/cli
- Official MCP Registry: `io.github.elisymlabs/elisym`