aisp

Enables AI agents to interact with AISP (Agent Inference Sharing Protocol) for renting or providing DIEM API capacity. Use when working with diem-marketplace, Venice API keys, USDC escrow, listings, rentals, or when the user wants to rent inference capacity or list API keys.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "aisp" with this command: npx skills add daveo280/aisp

AISP Agent Skill

Agent Inference Sharing Protocol (AISP) lets agents rent idle DIEM/Venice API capacity via USDC escrow. Providers list capped API keys; agents fund and receive keys automatically.

Architecture

Agent: fund() → Backend sees Funded event → Key released → Agent uses Venice API
Provider: list() → Agent funds → Term expires → settle() → Provider paid (99%, 1% fee)

Agent Workflow (Renting)

  1. Listings from backend: GET /api/listings
  2. Approve USDC if needed (contract spends on fund)
  3. Fund on-chain: contract.fund(listingId, termDays, diemAmount) → returns rentalId
  4. Get key: POST /api/key/{rentalId} with signed message diem-marketplace:get-key:{rentalId}:{timestamp}
  5. Use apiKey with Venice API until expiresAt (Unix timestamp)

SDK (Agent)

import { DiemAgent } from "diem-marketplace-sdk";

const agent = new DiemAgent({
  signer: wallet,
  contractAddress: "0x...",
  backendUrl: "https://diem-marketplace-backend.fly.dev",
  usdcAddress: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
});

const listings = await agent.getListings();
const { apiKey, expiresAt } = await agent.rent(
  listings[0].listingId,
  termDays,
  ethers.parseUnits(diemAmount, 6)
);

Provider Workflow (Listing)

  1. Create listing on-chain: contract.list(pricePerDay, termDays, diemMin, diemMax)listingId
  2. Store key on backend: POST /api/keys with { listingId, apiKey, signature, timestamp }
    • Message: diem-marketplace:store-key:{listingId}:{timestamp}
  3. Settle when rental expires: contract.settle(rentalId) → provider receives 99% (1% protocol fee)

SDK (Provider)

import { DiemProvider } from "diem-marketplace-sdk";

const provider = new DiemProvider({
  signer: wallet,
  contractAddress: "0x...",
  backendUrl: "https://diem-marketplace-backend.fly.dev",
  usdcAddress: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
});

const listingId = await provider.createListing({
  pricePerDay: ethers.parseUnits("0.80", 6),
  termDays: 30,
  diemMin: ethers.parseUnits("1000", 6),
  diemMax: ethers.parseUnits("4000", 6),
  apiKey: "vn-scoped-...",
});

Key Paths

PathPurpose
sdk/src/agent.tsDiemAgent: getListings, rent, getKey, getMyRentals
sdk/src/provider.tsDiemProvider: createListing, settle, revokeAndRefund
backend/src/routes.tsAPI routes: /api/listings, /api/keys, /api/key/:id
contracts/DiemMarketplace.solOn-chain escrow, 1% fee

Backend API

EndpointMethodPurpose
/api/listingsGETList rentable listings
/api/listings/:idGETSingle listing
/api/keysPOSTProvider stores API key
/api/key/:rentalIdPOSTAgent retrieves key (signature required)
/api/balancePOSTCheck DIEM balance for API key
/api/requestsPOSTCreate rental request

Signatures

All backend requests requiring auth use EIP-191 signing:

  • getKey: diem-marketplace:get-key:{rentalId}:{timestamp}
  • storeKey: diem-marketplace:store-key:{listingId}:{timestamp}
  • balance: apiKey in body (no signature)

Contract (Base)

  • Chain: Base (8453)
  • Mainnet: 0xeeDa7657f2018b3b71B444b7ca2D8dE91b3B08f3
  • USDC: 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913

Security & Signing

  • Use an external signer or hardware wallet; never paste raw private keys.
  • Require explicit user confirmation before fund transfers or credential usage.
  • Venice API keys must be scoped (inference-only), revocable, and minimal for escrow.

Notes

  • Venice API keys must be inference-only (not admin)
  • 1% protocol fee deducted at settlement

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Automation

Pod Ai Agent

Use when user needs to build or optimize a POD (Print on Demand) business using AI Agents. Use when generating POD operation strategies and recommendations l...

Registry SourceRecently Updated
Automation

Inmobile

InMobile integration. Manage data, records, and automate workflows. Use when the user wants to interact with InMobile data.

Registry SourceRecently Updated
Automation

Chargeover

ChargeOver integration. Manage data, records, and automate workflows. Use when the user wants to interact with ChargeOver data.

Registry SourceRecently Updated
Automation

Voice Agent Pro

Gives any OpenClaw agent a complete voice layer via ElevenLabs. Clones the principal's voice from audio samples, converts any text to MP3 audio (VSL, podcast...

Registry SourceRecently Updated