openclaw 网盘下载
OpenClaw

技能详情(站内镜像,无评论)

首页 > 技能库 > 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.

开发与 DevOps

许可证:MIT-0

MIT-0 ·免费使用、修改和重新分发。无需归因。

版本:v2.0.2

统计:⭐ 0 · 682 · 0 current installs · 0 all-time installs

0

安装量(当前) 0

🛡 VirusTotal :可疑 · OpenClaw :良性

Package:aisp

安全扫描(ClawHub)

  • VirusTotal :可疑
  • OpenClaw :良性

OpenClaw 评估

The skill's requirements and runtime instructions are consistent with its stated purpose (renting/listing DIEM/Venice inference keys); it requests only a BACKEND_URL and has no install or hidden code, but you should verify the backend's provenance before use and ensure the agent won't autonomously sign or send funds.

目的

The skill's name/description (renting/listing DIEM/Venice API capacity) aligns with its declared requirement (BACKEND_URL) and with the API endpoints and SDK usage described in SKILL.md. There are no unrelated env vars, binaries, or config paths requested.

说明范围

SKILL.md is instruction-only and outlines expected operations: listing discovery (GET /api/listings), on-chain funding (contract.fund), signed backend calls to retrieve keys, and storing keys as a provider. This stays within the stated purpose, but includes high-impact actions (on-chain fund/settle) and signing messages — the doc explicitly advises external signers and user confirmation before transfers, which is appropriate and necessary.

安装机制

No install spec and no code files are present (instruction-only). This minimizes risk from arbitrary downloads or installs.

证书

Only BACKEND_URL is required, which is proportional for a backend-driven marketplace. However, the BACKEND_URL determines the remote service the skill will call — verify its provenance and trustworthiness before setting it, since a malicious backend could attempt to trick an agent into unsafe actions.

持久

always:false and no special persistence or system-wide configuration changes requested. The skill allows autonomous invocation by default (platform normal), but SKILL.md recommends requiring explicit user confirmation for fund transfers.

综合结论

This skill appears coherent for interacting with a DIEM/Venice marketplace, but before installing: - Verify the BACKEND_URL points to a trusted backend you control or recognize; that URL controls key retrieval and rental flows. - Never place private keys or raw wallet secrets into the skill or agent environment; use an external signer or hardware wallet as the SKILL.md recommends. - Ensure the agent will prompt you for explicit approval before…

安装(复制给龙虾 AI)

将下方整段复制到龙虾中文库对话中,由龙虾按 SKILL.md 完成安装。

请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「AISP」。简介:Enables AI agents to interact with AISP (Agent Inference Sharing Protocol) for …。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/daveo280/aisp/SKILL.md
(来源:yingzhi8.cn 技能库)

SKILL.md

打开原始 SKILL.md(GitHub raw)

---
name: aisp
version: 1.0.2
description: 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.
metadata: {"openclaw":{"homepage":"https://github.com/DaveO280/Diem-Marketplace-V2-","emoji":"⚡","requires":{"env":["BACKEND_URL"]}}}
---

# 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)

```typescript
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)

```typescript
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

| Path | Purpose |
|------|---------|
| `sdk/src/agent.ts` | DiemAgent: getListings, rent, getKey, getMyRentals |
| `sdk/src/provider.ts` | DiemProvider: createListing, settle, revokeAndRefund |
| `backend/src/routes.ts` | API routes: /api/listings, /api/keys, /api/key/:id |
| `contracts/DiemMarketplace.sol` | On-chain escrow, 1% fee |

## Backend API

| Endpoint | Method | Purpose |
|----------|--------|---------|
| `/api/listings` | GET | List rentable listings |
| `/api/listings/:id` | GET | Single listing |
| `/api/keys` | POST | Provider stores API key |
| `/api/key/:rentalId` | POST | Agent retrieves key (signature required) |
| `/api/balance` | POST | Check DIEM balance for API key |
| `/api/requests` | POST | Create 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