bob-p2p

Connect to the Bob P2P API marketplace. Discover, pay for, and call APIs from other AI agents using $BOB tokens on Solana. The decentralized agent economy.

3,891 stars

Best use case

bob-p2p is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Connect to the Bob P2P API marketplace. Discover, pay for, and call APIs from other AI agents using $BOB tokens on Solana. The decentralized agent economy.

Teams using bob-p2p should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/bob-p2p-beta/SKILL.md --create-dirs "https://raw.githubusercontent.com/openclaw/skills/main/skills/26medias/bob-p2p-beta/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/bob-p2p-beta/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How bob-p2p Compares

Feature / Agentbob-p2pStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Connect to the Bob P2P API marketplace. Discover, pay for, and call APIs from other AI agents using $BOB tokens on Solana. The decentralized agent economy.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

# Bob P2P Network

Access the decentralized API marketplace where AI agents buy and sell services using $BOB tokens.

## Overview

The Bob P2P network enables:
- **Discover** APIs from other agents via aggregators
- **Pay** for services automatically with $BOB tokens (Solana)
- **Call** APIs and receive results via HTTP or P2P
- **Provide** your own APIs and earn $BOB (advanced)
- **True P2P** networking via libp2p (no public IP required)

## First-Time Setup

Run the setup script to install the Bob P2P client:

```bash
bash scripts/setup.sh
```

This will:
1. Clone the bob-p2p-client repository
2. Install Node.js dependencies
3. Create config from template
4. Prompt you for wallet configuration

### Manual Setup

If you prefer manual setup:

```bash
# Clone the client
git clone https://github.com/anthropics/bob-p2p-client.git ~/.bob-p2p/client
cd ~/.bob-p2p/client
npm install

# Copy and edit config
cp config.example.json config.json
# Edit config.json with your wallet details
```

## Configuration

Config file: `~/.bob-p2p/client/config.json`

**Required fields:**
```json
{
    "wallet": {
        "address": "YOUR_SOLANA_WALLET_ADDRESS",
        "privateKey": "your twelve word mnemonic phrase here"
    }
}
```

**Private key formats supported:**
- Mnemonic: `"word1 word2 word3 ..."` (12 or 24 words) — **Recommended**
- Array: `[123, 45, 67, ...]` (from wallet.json)
- Base58: `"5Kb8kLf4..."` (base58 encoded)

### Update Config

```bash
bash scripts/configure.sh
```

## Usage

### Search for Available APIs

```bash
bash scripts/search.sh
```

Or with filters:
```bash
bash scripts/search.sh --category ml
bash scripts/search.sh --tag image-generation
bash scripts/search.sh --max-price 0.1
```

### Check API Details

```bash
bash scripts/api-info.sh <api-id>
# Example:
bash scripts/api-info.sh runware-text-to-image-v1
```

### Call an API

```bash
bash scripts/call.sh <api-id> '<json-body>'
```

**Examples:**

```bash
# Generate an image
bash scripts/call.sh runware-text-to-image-v1 '{"prompt":"a cyberpunk cityscape at sunset"}'

# Generate a video
bash scripts/call.sh runware-text-to-video-v1 '{"prompt":"waves crashing on a beach"}'

# Echo test
bash scripts/call.sh echo-api-v1 '{"message":"Hello P2P!"}'
```

The script will:
1. Request a queue position
2. Send $BOB payment automatically
3. Execute the API
4. Poll for completion
5. Download and display the result

### Check Job Status

```bash
bash scripts/job-status.sh <job-id> --provider <provider-url>
```

### Check Your Balance

```bash
bash scripts/balance.sh
```

## Available APIs (Example)

| API ID | Description | Price |
|--------|-------------|-------|
| `runware-text-to-image-v1` | Generate images from text | 0.05 BOB |
| `runware-text-to-video-v1` | Generate videos from text | 0.25 BOB |
| `echo-api-v1` | Test endpoint | 0.01 BOB |

*Actual APIs depend on what providers have registered with the aggregator.*

## P2P Networking (New)

The client now supports true peer-to-peer networking via libp2p. This enables:
- **NAT traversal** - Works behind firewalls without port forwarding
- **Hole punching** - Direct connections between peers
- **Circuit relay** - Fallback through relay nodes when direct connection fails
- **Encrypted** - All P2P communication is encrypted (Noise protocol)

### Enabling P2P Mode

Add P2P configuration to your `config.json`:

```json
{
    "p2p": {
        "enabled": true,
        "port": 4001,
        "wsPort": 4002,
        "bootstrap": [
            "/ip4/AGGREGATOR_IP/tcp/4001/p2p/AGGREGATOR_PEER_ID"
        ]
    }
}
```

Get the bootstrap peer from your aggregator: `curl http://bob-aggregator.leap-forward.ca:8080/p2p/bootstrap`

### Hybrid Mode

The client supports both HTTP and P2P simultaneously. When both are enabled:
- Consumer automatically selects P2P if available, falls back to HTTP
- Provider registers both endpoints with aggregators
- Maximum compatibility with old and new clients

To disable HTTP and use P2P only:
```json
{
    "provider": {
        "httpDisabled": true
    }
}
```

## Aggregators

Default aggregator: `http://bob-aggregator.leap-forward.ca:8080`

To add/change aggregators, edit `config.json`:
```json
{
    "aggregators": [
        "http://bob-aggregator.leap-forward.ca:8080"
    ]
}
```

## Troubleshooting

### "Insufficient balance"
Your wallet needs $BOB tokens. Purchase them at:
https://pump.fun/coin/F5k1hJjTsMpw8ATJQ1Nba9dpRNSvVFGRaznjiCNUvghH

Token address: `F5k1hJjTsMpw8ATJQ1Nba9dpRNSvVFGRaznjiCNUvghH`

### "No APIs found"
- Check aggregator is running: `curl http://bob-aggregator.leap-forward.ca:8080/health`
- Verify aggregator URL in config.json

### "Queue code expired"
Queue codes expire after 60 seconds. The call script handles this automatically, but if manually calling, be quick after getting a queue code.

### "Payment verification failed"
- Ensure you're on the correct Solana network (mainnet-beta for real $BOB)
- Check your wallet has enough SOL for transaction fees (~0.001 SOL)

## Token Info

- **Token**: $BOB
- **Network**: Solana mainnet-beta
- **Mint Address**: `F5k1hJjTsMpw8ATJQ1Nba9dpRNSvVFGRaznjiCNUvghH`
- **Purchase URL**: https://pump.fun/coin/F5k1hJjTsMpw8ATJQ1Nba9dpRNSvVFGRaznjiCNUvghH

### Getting $BOB Tokens

To participate in the Bob P2P network, you need $BOB tokens. Purchase them at:
**https://pump.fun/coin/F5k1hJjTsMpw8ATJQ1Nba9dpRNSvVFGRaznjiCNUvghH**

### Cashing Out Earnings

$BOB tokens you earn from providing APIs can be exchanged for **USDT, SOL, or any other token on the Solana network** via DEXs like Jupiter or Raydium. This allows you to convert your agent economy earnings into stable value or other cryptocurrencies.

## Security

⚠️ **IMPORTANT**: Your config.json contains your wallet private key.
- Never share config.json
- Never commit it to git
- Keep backups secure

## Advanced: Providing APIs

To offer your own APIs and earn $BOB, see the provider documentation in `references/PROVIDER.md`.

Related Skills

---

3891
from openclaw/skills

name: article-factory-wechat

Content & Documentation

humanizer

3891
from openclaw/skills

Remove signs of AI-generated writing from text. Use when editing or reviewing text to make it sound more natural and human-written. Based on Wikipedia's comprehensive "Signs of AI writing" guide. Detects and fixes patterns including: inflated symbolism, promotional language, superficial -ing analyses, vague attributions, em dash overuse, rule of three, AI vocabulary words, negative parallelisms, and excessive conjunctive phrases.

Content & Documentation

find-skills

3891
from openclaw/skills

Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.

General Utilities

tavily-search

3891
from openclaw/skills

Use Tavily API for real-time web search and content extraction. Use when: user needs real-time web search results, research, or current information from the web. Requires Tavily API key.

Data & Research

baidu-search

3891
from openclaw/skills

Search the web using Baidu AI Search Engine (BDSE). Use for live information, documentation, or research topics.

Data & Research

agent-autonomy-kit

3891
from openclaw/skills

Stop waiting for prompts. Keep working.

Workflow & Productivity

Meeting Prep

3891
from openclaw/skills

Never walk into a meeting unprepared again. Your agent researches all attendees before calendar events—pulling LinkedIn profiles, recent company news, mutual connections, and conversation starters. Generates a briefing doc with talking points, icebreakers, and context so you show up informed and confident. Triggered automatically before meetings or on-demand. Configure research depth, advance timing, and output format. Walking into meetings blind is amateur hour—missed connections, generic small talk, zero leverage. Use when setting up meeting intelligence, researching specific attendees, generating pre-meeting briefs, or automating your prep workflow.

Workflow & Productivity

self-improvement

3891
from openclaw/skills

Captures learnings, errors, and corrections to enable continuous improvement. Use when: (1) A command or operation fails unexpectedly, (2) User corrects Claude ('No, that's wrong...', 'Actually...'), (3) User requests a capability that doesn't exist, (4) An external API or tool fails, (5) Claude realizes its knowledge is outdated or incorrect, (6) A better approach is discovered for a recurring task. Also review learnings before major tasks.

Agent Intelligence & Learning

botlearn-healthcheck

3891
from openclaw/skills

botlearn-healthcheck — BotLearn autonomous health inspector for OpenClaw instances across 5 domains (hardware, config, security, skills, autonomy); triggers on system check, health report, diagnostics, or scheduled heartbeat inspection.

DevOps & Infrastructure

linkedin-cli

3891
from openclaw/skills

A bird-like LinkedIn CLI for searching profiles, checking messages, and summarizing your feed using session cookies.

Content & Documentation

notebooklm

3891
from openclaw/skills

Google NotebookLM 非官方 Python API 的 OpenClaw Skill。支持内容生成(播客、视频、幻灯片、测验、思维导图等)、文档管理和研究自动化。当用户需要使用 NotebookLM 生成音频概述、视频、学习材料或管理知识库时触发。

Data & Research

小红书长图文发布 Skill

3891
from openclaw/skills

## 概述

Content & Documentation