openclaw 网盘下载
OpenClaw

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

首页 > 技能库 > Which LLM? Deterministic model selection for agents

Deterministic decision-ranking API with HTTP 402 payments and outcome credits.

开发与 DevOps

许可证:MIT-0

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

版本:v1.0.18

统计:⭐ 0 · 1.6k · 1 current installs · 1 all-time installs

0

安装量(当前) 1

🛡 VirusTotal :可疑 · OpenClaw :可疑

Package:which-llm

安全扫描(ClawHub)

  • VirusTotal :可疑
  • OpenClaw :可疑

OpenClaw 评估

The skill's core purpose (selecting LLMs via an HTTP API) is plausible, but there are inconsistencies and a sensitive wallet-credential requirement that are not clearly described or justified — review how wallet access is provided and verify payment endpoints before use.

目的

The skill purpose (deterministic model-selection via a Which‑LLM API) matches the SKILL.md and skill.json content: endpoints, pricing, and a payment flow. However, registry metadata provided to you earlier lists no required credentials, while both SKILL.md and skill.json declare credentials_required: true and primary_credential: WALLET_CREDENTIALS. That mismatch is an inconsistency that should be clarified.

说明范围

The runtime instructions are narrowly scoped to outbound HTTPS calls to api.which-llm.com and handling HTTP 402 payment flows. The skill does not instruct reading arbitrary host files or other system resources. However, it repeatedly requires that the 'AI bot needs access to a crypto wallet' for paid calls without specifying how wallet access or signing is to be performed — this ambiguity increases risk because it could lead to insecure handli…

安装机制

This is instruction-only with no install spec, no downloads, and no code written to disk — the lowest-risk install mechanism. There are no suspicious install URLs or extracted archives.

证书

Requiring WALLET_CREDENTIALS is proportionate to a paid HTTP 402 model, but the skill declares 'sensitivity: high' and 'credentials_required: true' while the registry metadata you were shown earlier claimed no required env vars — an unexplained discrepancy. 'WALLET_CREDENTIALS' implies access to private keys or signing capability (high privilege). The skill does not explain whether the wallet must be fully exposed to the skill, if signing shou…

持久

The skill is not always-on, does not request to modify other skills or system settings, and does not write to disk on install. Invocation and approval policies in skill.json indicate per-request approval is expected, which reduces risk if enforced by the host.

安装(复制给龙虾 AI)

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

请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「Which LLM? Deterministic model selection for agents」。简介:Deterministic decision-ranking API with HTTP 402 payments and outcome credits.。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/zapkid/which-llm/SKILL.md
(来源:yingzhi8.cn 技能库)

SKILL.md

打开原始 SKILL.md(GitHub raw)

---
name: Decision Economic Optimizer
description: Deterministic decision-ranking API with HTTP 402 payments and outcome credits.
version: 0.1.0
homepage: https://which-llm.com
credentials_required: true
primary_credential: WALLET_CREDENTIALS
sensitivity: high
always_on: false
disable_model_invocation: false
install_mechanism: instruction_only
writes_to_disk_on_install: false
downloads_code_on_install: false
---

# Which‑LLM: Outcome‑Driven Decision Optimizer

## Overview

Use this skill when you need a deterministic recommendation for which LLM to use under explicit constraints such as cost and quality.

This skill is for calling the Which‑LLM API. It does not run an LLM itself. For paid requests, the AI bot needs access to a crypto wallet.

## When to use it

- Pick the cheapest model that still meets a quality target
- Choose a fallback model if the preferred one fails
- Keep model selection deterministic and auditable
- Report execution results and earn credits for later requests

## Quick Reference

- **API base URL:** `https://api.which-llm.com`
- **Primary paid endpoint:** `POST /decision/optimize`
- **Outcome endpoint:** `POST /decision/outcome`
- **Free discovery endpoints:** `GET /capabilities`, `GET /pricing`, `GET /status`
- **Payment asset:** `USDC`
- **Supported chains:** Base, Ethereum, Arbitrum, Optimism, Avalanche

## Registry Summary Expectations

- `Primary credential`: `WALLET_CREDENTIALS`
- `Install mechanism`: instruction-only
- `Writes to disk on install`: `false`
- `Downloads code on install`: `false`

## Prerequisites

Before using this skill, have the following ready:

- Ability to make HTTPS requests to `https://api.which-llm.com`
- Ability to send and receive JSON
- AI bot access to a crypto wallet for paid requests

## What this skill does

- Sends requests to the Which‑LLM API
- Uses `POST /decision/optimize` to get a recommended model and fallback plan
- Uses `POST /decision/outcome` to report real execution results
- Explains the request and response shapes for the public API
- Describes how to retry requests after payment has been satisfied externally

## What this skill does not do

- It does not call an LLM directly
- It does not execute arbitrary code from your prompt
- It does not require unrelated files or system access beyond API usage and payment handling

## Runtime Scope

- `always_on: false`: the skill is not force-installed and does not run continuously
- `disable_model_invocation: false`: an agent may invoke it on demand
- The skill is limited to outbound HTTP API usage and response handling
- For paid requests, the AI bot needs access to a crypto wallet

## Payment Model

Paid calls may use HTTP `402 Payment Required`.

High-level flow:

1. Call `POST /decision/optimize`
2. If the API returns `402`, inspect fields such as `required_amount`, `accepts`, and `payment_reference`
3. Satisfy the payment requirement outside this skill using host- or client-managed infrastructure
4. Retry the same request with payment proof headers if available

This skill documents the API behavior and payment-related response handling. The wallet requirement is limited to paid requests.

## Endpoints

### `GET /capabilities`

Use this to discover supported constraints, decision types, and payment behavior.

### `GET /pricing`

Use this to check current pricing and supported chains before making a paid request.

### `GET /status`

Use this for service-health checks.

### `POST /decision/optimize`

This is the main endpoint. Send the goal and constraints, then receive:

- `recommended_model`
- `fallback_plan`
- decision metadata and explainability fields

Typical request shape:

```json
{
  "goal": "Summarize customer feedback emails into a 5-bullet executive summary",
  "constraints": {
    "min_quality_score": 0.8,
    "max_cost_usd": 0.01
  },
  "workload": {
    "input_tokens": 1200,
    "output_tokens": 300,
    "requests": 1
  },
  "task_type": "summarize"
}
```

If payment is required, the API may first return `402` with fields such as:

- `required_amount`
- `currency`
- `accepts[].chain`
- `accepts[].pay_to`
- `payment_reference`

Retry the request after external payment handling with:

- `X-Payment-Chain`
- `X-Payment-Tx`
- `X-Payer`
- `X-Payment-Amount`
- `X-Payment-Asset`

If you have a valid credit token, also send:

- `X-Credit-Token`

### `POST /decision/outcome`

Use this after running the recommended model. Report what actually happened so the system can issue a credit token for future use.

Typical request shape:

```json
{
  "decision_id": "d4e5f6a7-b8c9-0d1e-2f3a-4b5c6d7e8f90",
  "option_used": "openai/gpt-4o-mini",
  "actual_cost": 0.008,
  "actual_latency": 650,
  "quality_score": 0.86,
  "success": true
}
```

Typical response includes:

- `status`
- `decision_id`
- `outcome_hash`
- `refund_credit.credit_token`

## Request Strategy For Agents

- Call `GET /capabilities` or `GET /pricing` first if you need to discover current payment behavior
- Use `POST /decision/optimize` only when you actually need model selection help
- Reuse the returned decision data rather than repeatedly asking the same question
- After running the chosen model, call `POST /decision/outcome` to earn credits
- Use the host or client payment flow when a paid request requires wallet-backed settlement

## Troubleshooting

### `PAYMENT_REQUIRED`

The endpoint needs payment first. Read the `402` response, satisfy the payment requirement externally, then retry with payment proof headers if available.

### `PAYMENT_INVALID`

Check:

- exact amount sent
- correct chain
- correct recipient
- confirmed transaction
- headers match the actual transaction

### `NO_FEASIBLE_OPTIONS`

Your cost and quality constraints are too strict for the available models. Relax the budget or quality threshold and retry.

### `RATE_LIMIT_EXCEEDED`

Back off and retry later. Use an idempotency key for safe retries.