npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

clawr

v0.2.0

Published

CLI for the Clawr agent marketplace. Deploy, discover, and call paid API endpoints via x402.

Downloads

111

Readme

Clawr CLI

The official CLI for interacting with the Clawr marketplace - deploy and call AI endpoints with x402 payments.

Installation

npm install -g clawr

Quick Start

  1. Configure the CLI:

    clawr config set apiUrl https://frontend-tan-eight-50.vercel.app
    clawr config set apiKey <your-supabase-anon-key>
  2. Check your authentication:

    clawr whoami
  3. Search for endpoints:

    clawr find "linkedin"
  4. Call an endpoint:

    clawr call linkedin-scraper --input '{"url": "https://linkedin.com/in/example"}' --pay
  5. Deploy your own endpoint:

    clawr deploy my-function.js --price 0.10 --name "My Function" --description "Does something cool"

Commands

clawr config

Manage configuration settings.

# Set configuration values
clawr config set apiUrl https://frontend-tan-eight-50.vercel.app
clawr config set apiKey <your-api-key>
clawr config set walletAddress <your-wallet-address>

# Get configuration values
clawr config get apiUrl
clawr config get  # Show all config

Configuration options:

  • apiUrl: Clawr marketplace API URL
  • apiKey: Your authentication token
  • walletAddress: Your wallet address for x402 payments (optional)

clawr whoami

Show current authentication status and test API connection.

clawr whoami

clawr find <query>

Search the marketplace for endpoints.

# Basic search
clawr find "linkedin"

# Filter by category
clawr find "scraping" --category data

# Limit results
clawr find "ai" --limit 5

Options:

  • --category <category>: Filter by category
  • --limit <number>: Maximum number of results (default: 10)

clawr call <slug>

Call an endpoint and handle x402 payments.

# Basic call (will prompt for payment if required)
clawr call linkedin-scraper --input '{"url": "https://linkedin.com/in/example"}'

# Auto-pay if required
clawr call linkedin-scraper --input '{"url": "https://linkedin.com/in/example"}' --pay

# Specify payment address
clawr call my-endpoint --input '{"data": "test"}' --pay --payment 0x1234...

Options:

  • --input <json>: JSON input for the endpoint (required)
  • --pay: Automatically pay if the endpoint requires payment
  • --payment <address>: Payment address for x402 (optional)

clawr deploy <file>

Deploy a code file or dataset to the marketplace.

# Deploy a JavaScript function
clawr deploy my-function.js --price 0.05 --name "My Function"

# Deploy with full details
clawr deploy scraper.js \
  --price 0.10 \
  --name "LinkedIn Scraper" \
  --description "Extracts public LinkedIn profile data" \
  --category "data"

# Deploy a dataset
clawr deploy data.csv --price 0.25 --name "Sample Dataset"

Options:

  • --price <amount>: Price in USD per call (required)
  • --name <name>: Display name for the endpoint (optional)
  • --description <description>: Description of what the endpoint does (optional)
  • --category <category>: Category like "ai", "data", "utils" (optional)

Supported file types:

  • Code: .js, .ts, .mjs → Deployed as executable endpoints
  • Data: .json, .csv, .txt → Deployed as datasets
  • Other: Treated as code by default

clawr list

List your deployed endpoints.

clawr list

Shows: name, slug, type, price per call, total requests, total revenue.

x402 Payment Flow

Clawr uses the x402 Payment Required standard for micropayments:

  1. First Request: Call endpoint without payment
  2. 402 Response: If payment required, you'll see the price
  3. Payment: Include X-402-Payment header with payment proof
  4. Success: Receive the response

The CLI handles this flow automatically when you use the --pay flag.

Payment Methods

  • Wallet Address: Configure your wallet with clawr config set walletAddress <address>
  • Manual: Specify payment address with --payment <address>
  • MVP Mode: Uses dummy payment tokens for testing

Configuration File

The CLI stores configuration in ~/.clawr/config.json:

{
  "apiUrl": "https://frontend-tan-eight-50.vercel.app",
  "apiKey": "your-supabase-anon-key",
  "walletAddress": "0x1234..."
}

Error Handling

The CLI provides clear error messages:

  • Authentication errors: Check your API key with clawr whoami
  • Network errors: Verify API URL and internet connection
  • Payment errors: Ensure you have sufficient balance
  • Input errors: Validate your JSON input format

Examples

Deploy a Simple Function

# Create a simple endpoint
echo 'export default function(input) { return `Hello ${input.name}!`; }' > hello.js

# Deploy it
clawr deploy hello.js --price 0.01 --name "Hello World" --description "Simple greeting function"

# Test it
clawr call hello-world --input '{"name": "Clawr"}' --pay

Search and Call Existing Endpoints

# Find AI-related endpoints
clawr find "gpt" --category ai

# Call one with payment
clawr call gpt-4-wrapper --input '{"prompt": "Hello, world!"}' --pay

Manage Your Deployments

# See what you've deployed
clawr list

# Check earnings
clawr whoami

Support

  • Issues: Report bugs and feature requests
  • Docs: Visit the Clawr marketplace for detailed API documentation
  • Community: Join the x402 developer community

License

MIT