Alchemy Agentic Gateway
moonpay/skills
A skill your agent uses when accessing Alchemy APIs for RPC calls, token balances, NFT metadata, asset transfers, transaction simulation, or Alchemy-specific features.
Complete guide to using @openserv-labs/client for managing agents, workflows, triggers, and tasks on the OpenServ Platform.
$ npx skills add internet-court/internet-court-skill --skill openserv-client -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install internet-court/internet-court-skill openserv-client --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/internet-court/internet-court-skill.git skills-src && mkdir -p .claude/skills && cp -r skills-src/vendored/openserv/openserv-client .claude/skills/openserv-client && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "openserv-client" agent skill from https://github.com/internet-court/internet-court-skill/tree/main/vendored/openserv/openserv-client into .claude/skills/openserv-client/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openserv-client", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/internet-court/internet-court-skill/tree/main/vendored/openserv/openserv-clientType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add internet-court/internet-court-skill --skill openserv-client -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install internet-court/internet-court-skill openserv-client --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/internet-court/internet-court-skill.git skills-src && mkdir -p .agents/skills && cp -r skills-src/vendored/openserv/openserv-client .agents/skills/openserv-client && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "openserv-client" agent skill from https://github.com/internet-court/internet-court-skill/tree/main/vendored/openserv/openserv-client into .agents/skills/openserv-client/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openserv-client", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add internet-court/internet-court-skill --skill openserv-client -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install internet-court/internet-court-skill openserv-client --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/internet-court/internet-court-skill.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/vendored/openserv/openserv-client .cursor/skills/openserv-client && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "openserv-client" agent skill from https://github.com/internet-court/internet-court-skill/tree/main/vendored/openserv/openserv-client into .cursor/skills/openserv-client/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openserv-client", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/internet-court/internet-court-skill.git --path vendored/openserv/openserv-client--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add internet-court/internet-court-skill --skill openserv-client -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install internet-court/internet-court-skill openserv-client --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/internet-court/internet-court-skill.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/vendored/openserv/openserv-client .gemini/skills/openserv-client && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "openserv-client" agent skill from https://github.com/internet-court/internet-court-skill/tree/main/vendored/openserv/openserv-client into .gemini/skills/openserv-client/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openserv-client", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install internet-court/internet-court-skill openserv-clientInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add internet-court/internet-court-skill --skill openserv-client -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/internet-court/internet-court-skill.git skills-src && mkdir -p .github/skills && cp -r skills-src/vendored/openserv/openserv-client .github/skills/openserv-client && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "openserv-client" agent skill from https://github.com/internet-court/internet-court-skill/tree/main/vendored/openserv/openserv-client into .github/skills/openserv-client/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openserv-client", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add internet-court/internet-court-skill --skill openserv-client -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install internet-court/internet-court-skill openserv-client --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/internet-court/internet-court-skill.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/vendored/openserv/openserv-client .opencode/skills/openserv-client && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "openserv-client" agent skill from https://github.com/internet-court/internet-court-skill/tree/main/vendored/openserv/openserv-client into .opencode/skills/openserv-client/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openserv-client", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
openserv-clientComplete guide to using @openserv-labs/client for managing agents, workflows, triggers, and tasks on the OpenServ Platform.
Openserv Client is an agent skill from internet-court/internet-court-skill. Complete guide to using @openserv-labs/client for managing agents, workflows, triggers, and tasks on the OpenServ Platform. Covers provisioning, authentication, x402 payments, ERC-8004 on-chain identity, and the full Platform API. IMPORTANT - Always read the companion skill openserv-agent-sdk alongside this skill, as both packages are required to build any agent. Read reference.md for the full API reference.
Its SKILL.md is about 4.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 8 other files (for example `examples/agent.ts`, `examples/cleanup.ts` and `examples/create-agent.ts`).
It sits in Backend & APIs, covering Smart contracts and Building AI agents. It works with x402. The repository describes itself as: The trust layer for agent-to-agent commerce — natural-language mandates, ERC-7710 delegated permissions, x402 payments, escrow, and dispute resolution as one open, catch-all… The licence is MIT.
9 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit fa89195. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships script files (TypeScript), which the agent can run.
Shell commands in SKILL.md call:
npxnpmFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
api.openserv.ai8004scan.ioFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
OPENSERV_USER_API_KEYWALLET_PRIVATE_KEYOPENSERV_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Openserv Client loads about 4.3k tokens when it runs. Until then it costs about 107 tokens; SKILL.md has 1,374 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
1. **`OPENSERV_USER_API_KEY` in `.env`** — Your `.env` file in the agent directory must contain `OPENSERV_USER_API_KEY`.1. Set OPENSERV_USER_API_KEY in .env> **Reload `.env` after `provision()`.** `provision()` writes `WALLET_PRIVATE_KEY` to `.env` at runtime, but `process.en// Reload .env to pick up WALLET_PRIVATE_KEY written by provision()Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from internet-court/internet-court-skill at commit fa89195, republished under its MIT licence (© internet-court). 1,374 words, ~4,324 tokens.
.claude/skills/openserv-client/SKILL.md (or your agent's skills folder). This skill also uses 7 other files; get the full folder from GitHub.The @openserv-labs/client package is the TypeScript client for the OpenServ Platform API. You use it whenever your code needs to talk to the platform—to register an agent, create workflows, set up triggers, or run tasks.
Your agent (built with @openserv-labs/sdk) runs on your machine or server. The platform doesn’t know about it until you tell it: what the agent is, where it’s reachable, and how it can be triggered. The client is how you do that. It lets you create a platform account (or reuse one), register your agent, define workflows and triggers (webhook, cron, manual, or x402 paid), and bind credentials so your agent can accept tasks. Without it, your agent would have no way to get onto the platform or receive work.
provision() once per app startup; it’s idempotent.PlatformClient: create and list agents, workflows, triggers, and tasks; fire triggers; run workflows; manage credentials. Use this when you need more than the default provision flow.model_parameters on agent creation/update or via provision().client.models.list().Reference: reference.md (full API) · troubleshooting.md (common issues) · examples/ (runnable code)
npm install @openserv-labs/clientprovision() + run()The simplest deployment is just two calls: provision() and run(). That's it.
You need an account on the platform to register agents and workflows. The easiest way is to let provision() create one for you: it creates a wallet and signs you up with it (no email required). That account is reused on every run.
See examples/agent.ts for a complete runnable example.
Key Point:
provision()is idempotent. Call it every time your app starts - no need to checkisProvisioned()first.
provision() Doesagent.instance is provided).openserv.jsonThe workflow config requires two important properties:
name (string) - This becomes the agent name in ERC-8004. Make it polished, punchy, and memorable — this is the public-facing brand name users see. Think product launch, not variable name. Examples: 'Viral Content Engine', 'Crypto Alpha Scanner', 'Life Catalyst Pro'.goal (string, required) - A detailed description of what the workflow accomplishes. Must be descriptive and thorough — short or vague goals will cause API calls to fail. Write at least a full sentence explaining the workflow's purpose.workflow: {
name: 'Deep Research Pro',
goal: 'Research any topic in depth, synthesize findings from multiple sources, and produce a comprehensive report with citations',
trigger: triggers.webhook({ waitForCompletion: true, timeout: 600 }),
task: { description: 'Research the given topic' }
}Pass your agent instance to provision() for automatic credential binding:
const agent = new Agent({ systemPrompt: '...' })
await provision({
agent: {
instance: agent, // Calls agent.setCredentials() automatically
name: 'my-agent',
description: '...',
model_parameters: { model: 'gpt-5', verbosity: 'medium', reasoning_effort: 'high' } // Optional
},
workflow: { ... }
})
// agent now has apiKey and authToken set - ready for run()
await run(agent)This eliminates the need to manually set OPENSERV_API_KEY environment variables.
The optional model_parameters field controls which LLM model and parameters the platform uses when executing tasks for your agent (including runless capabilities and generate() calls). If not provided, the platform default is used.
await provision({
agent: {
instance: agent,
name: 'my-agent',
description: '...',
model_parameters: {
model: 'gpt-4o',
temperature: 0.5,
parallel_tool_calls: false
}
},
workflow: { ... }
})Discover available models and their parameters:
const { models, default: defaultModel } = await client.models.list()
// models: [{ model: 'gpt-5', provider: 'openai', parameters: { ... } }, ...]
// default: 'gpt-5-mini'interface ProvisionResult {
agentId: number
apiKey: string
authToken?: string
workflowId: number
triggerId: string
triggerToken: string
paywallUrl?: string // For x402 triggers
apiEndpoint?: string // For webhook triggers
}provision() creates two types of credentials. They are not interchangeable:
| Credential | Env Variable | Used By | Purpose |
|---|---|---|---|
| Agent API key | OPENSERV_API_KEY | SDK internals | Authenticates the agent when receiving tasks from the platform. Set automatically via agent.instance. Do not use with PlatformClient. |
| Wallet key | WALLET_PRIVATE_KEY | PlatformClient | Authenticates your account for management calls (list tasks, debug workflows, manage agents). |
| User API key | OPENSERV_USER_API_KEY | PlatformClient | Alternative to wallet auth. Get from the platform dashboard. |
If you get a 401 Unauthorized when using PlatformClient, you are likely using the agent API key by mistake. Use wallet authentication or the user API key instead.
For advanced use cases, use PlatformClient directly:
import { PlatformClient } from '@openserv-labs/client'
// Using wallet authentication (recommended — uses wallet from provision)
const client = new PlatformClient()
await client.authenticate(process.env.WALLET_PRIVATE_KEY)
// Or using User API key (NOT the agent API key)
const client = new PlatformClient({
apiKey: process.env.OPENSERV_USER_API_KEY // NOT OPENSERV_API_KEY
})See reference.md for full API documentation on:
client.agents.* - Agent managementclient.workflows.* - Workflow managementclient.triggers.* - Trigger managementclient.tasks.* - Task managementclient.models.* - Available LLM models and parametersclient.integrations.* - Integration connectionsclient.payments.* - x402 paymentsclient.web3.* - Credits top-upUse the triggers factory for type-safe trigger configuration:
import { triggers } from '@openserv-labs/client'
// Webhook (free, public endpoint)
triggers.webhook({
input: { query: { type: 'string', description: 'Search query' } },
waitForCompletion: true,
timeout: 600
})
// x402 (paid API with paywall)
triggers.x402({
name: 'AI Research Assistant',
description: 'Get comprehensive research reports on any topic',
price: '0.01',
timeout: 600,
input: {
prompt: {
type: 'string',
title: 'Your Request',
description: 'Describe what you would like the agent to do'
}
}
})
// Cron (scheduled)
triggers.cron({
schedule: '0 9 * * *', // Daily at 9 AM
timezone: 'America/New_York'
})
// Manual (platform UI only)
triggers.manual()Important: Always set
timeoutto at least 600 seconds (10 minutes) for webhook and x402 triggers. Agents often take significant time to process requests — especially in multi-agent workflows or when performing research, content generation, or other complex tasks. A low timeout (e.g., 180s) will cause premature failures. When in doubt, err on the side of a longer timeout. For multi-agent pipelines with many sequential steps, consider 900 seconds or more.
Define fields for webhook/x402 paywall UI:
triggers.x402({
name: 'Content Writer',
description: 'Generate polished content on any topic',
price: '0.01',
input: {
topic: {
type: 'string',
title: 'Content Topic',
description: 'Enter the subject you want covered'
},
style: {
type: 'string',
title: 'Writing Style',
enum: ['formal', 'casual', 'humorous'],
default: 'casual'
}
}
})┌───────────── minute (0-59)
│ ┌───────────── hour (0-23)
│ │ ┌───────────── day of month (1-31)
│ │ │ ┌───────────── month (1-12)
│ │ │ │ ┌───────────── day of week (0-6, Sunday=0)
* * * * *Common: 0 9 * * * (daily 9 AM), */5 * * * * (every 5 min), 0 9 * * 1-5 (weekdays 9 AM)
Deploy your agent to the OpenServ managed cloud with:
npx @openserv-labs/client deploy [path]Where [path] is the directory containing your agent code (defaults to current directory).
OPENSERV_USER_API_KEY in .env — Your .env file in the agent directory must contain OPENSERV_USER_API_KEY. Get this from the OpenServ platform dashboard. This key is required by the deploy command (and by PlatformClient for management operations). Note that provision() itself does not need this key — it creates its own wallet, authenticates, and persists credentials to .openserv.json independently. The user API key is also saved to .openserv.json after provision if present.
Call provision() first — provision() must run at least once before deploying. It registers the agent on the platform and persists credentials to .openserv.json. The recommended agent template already calls provision() before run(agent) in main(), so starting the agent locally (npm run dev or npx tsx src/agent.ts) is enough. If your code does not call provision() (e.g., you only call run(agent) in a custom script), you must add an explicit provision() call and run it once before deploying.
1. Set OPENSERV_USER_API_KEY in .env
2. Call provision() during local startup (npm run dev) — registers the agent and writes .openserv.json
3. npx @openserv-labs/client deploy .import { getProvisionedInfo, clearProvisionedState } from '@openserv-labs/client'
// Get stored IDs and tokens
const info = getProvisionedInfo('my-agent', 'My Awesome Workflow')
// Clear state (forces fresh creation)
clearProvisionedState()discoverServices() lists all public x402-enabled workflows. No authentication is needed — you can call it on a bare PlatformClient:
import { PlatformClient } from '@openserv-labs/client'
const client = new PlatformClient() // no API key or wallet needed
const services = await client.payments.discoverServices()
for (const service of services) {
console.log(`${service.name}: $${service.x402Pricing}`)
console.log(`URL: ${service.webhookUrl}`)
}// By workflow ID (recommended — resolves the URL automatically)
const result = await client.triggers.fireWebhook({
workflowId: 123,
input: { query: 'hello world' }
})
// Or by direct URL
const result = await client.triggers.fireWebhook({
triggerUrl: 'https://api.openserv.ai/webhooks/trigger/TOKEN',
input: { query: 'hello world' }
})// By workflow ID (recommended)
const result = await client.payments.payWorkflow({
workflowId: 123,
input: { prompt: 'Hello world' }
})
// Or by direct URL
const result = await client.payments.payWorkflow({
triggerUrl: 'https://api.openserv.ai/webhooks/x402/trigger/TOKEN',
input: { prompt: 'Hello world' }
})| Variable | Description | Required |
|---|---|---|
OPENSERV_USER_API_KEY | User API key (from platform). Required for deploy and PlatformClient | Yes* |
WALLET_PRIVATE_KEY | Wallet for SIWE auth | Yes* |
OPENSERV_API_URL | Custom API URL | No |
*Either API key or wallet key required for PlatformClient. OPENSERV_USER_API_KEY is required for npx @openserv-labs/client deploy.
Register your agent on-chain after provisioning. This mints an NFT on the Identity Registry and publishes your agent's service endpoints to IPFS.
Requires ETH on Base. The wallet created by
provision()starts with zero balance. Fund it with a small amount of ETH on Base mainnet before registration. Always wrap in try/catch so failures don't preventrun(agent)from starting.
Reload
.envafterprovision().provision()writesWALLET_PRIVATE_KEYto.envat runtime, butprocess.envalready loaded the empty value at startup. Usedotenv.config({ override: true })afterprovision()to pick up the freshly written key. See openserv-agent-sdk skill for the full dotenv pattern.
import { PlatformClient } from '@openserv-labs/client'
// Reload .env to pick up WALLET_PRIVATE_KEY written by provision()
dotenv.config({ override: true })
try {
const client = new PlatformClient()
await client.authenticate(process.env.WALLET_PRIVATE_KEY)
const erc8004 = await client.erc8004.registerOnChain({
workflowId: result.workflowId,
privateKey: process.env.WALLET_PRIVATE_KEY!,
name: 'My Agent',
description: 'What this agent does'
})
console.log(`Agent ID: ${erc8004.agentId}`) // "8453:42"
console.log(`Explorer: ${erc8004.blockExplorerUrl}`)
console.log(`Scan: ${erc8004.scanUrl}`) // "https://www.8004scan.io/agents/base/42"
} catch (error) {
console.warn('ERC-8004 registration skipped:', error instanceof Error ? error.message : error)
}chainId and rpcUrl for other chains.See reference.md for the full ERC-8004 API (wallet management, chain helpers, troubleshooting).
await client.workflows.delete({ id: workflowId })
await client.agents.delete({ id: agentId })
clearProvisionedState()This skill may be outdated. The OpenServ team ships updates regularly—new features, API changes, and bug fixes won't be reflected here until you update. If something isn't working as expected, or you want to make sure you have the latest information, update the skill before proceeding.
# Check if updates are available
npx skills check
# Update all installed skills to latest versions
npx skills updateOr reinstall the OpenServ skills directly:
npx skills add openserv-labs/skills© internet-court, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 7 other files in vendored/openserv/openserv-client of internet-court/internet-court-skill.
Open the folder on GitHubat commit fa89195
We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in internet-court/internet-court-skill, which our catalogue first saw on October 7, 2026.
Openserv Client next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Openserv Client this skillinternet-court/internet-court-skill | 6.6k | 1 repos | ~4.3k | Automated safety check: Notes | MIT | |
| Alchemy Agentic Gatewaymoonpay/skills | 113 | — | ~2.1k | Automated safety check: Notes | MIT | |
| CapacitrBankrBot/skills | 1.2k | — | ~3k | Automated safety check: Pass | None | |
| Agent Payment X402affaan-m/ECC | 276k | — | ~6.8k | Automated safety check: Pass | MIT | |
| Agent Payment X402affaan-m/ECC | 276k | — | ~4.9k | Automated safety check: Pass | MIT | |
| Venice Authveniceai/skills | 144 | — | ~4.4k | Automated safety check: Pass | MIT |
moonpay/skills
A skill your agent uses when accessing Alchemy APIs for RPC calls, token balances, NFT metadata, asset transfers, transaction simulation, or Alchemy-specific features.
BankrBot/skills
Paste a URL or free text and get matched Polymarket / Hyperliquid / Deribit markets with Quotient edge scores.
affaan-m/ECC
Add x402 payment execution to AI agents with per-task budgets, spending controls, and non-custodial wallets.
affaan-m/ECC
将 x402 支付执行添加到 AI 代理中,具备每任务预算、支出控制和非托管钱包。通过 agentwallet-sdk 支持 Base,通过 OKX Payments / OKX 代理支付协议支持 X Layer,并通过上游 x402 包与基于结算器的结算支持 Solana 及多网络 EVM。
veniceai/skills
Authenticate to the Venice API with a Bearer API key or with an x402 / SIWX wallet (EVM on Base, including EIP-1271 smart wallets, or Ed25519 on Solana).
aiskillstore/marketplace
Production-tested patterns for building AI agents that autonomously discover, evaluate, and acquire token listings for cryptocurrency exchanges.
internet-court/internet-court-skill
Uploads one Kleros-related file per paid request to IPFS through the Kleros x402 gateway for 0.01 USDC on Base, returning a CID that Kleros contracts can reference.
internet-court/internet-court-skill
Guides building on the 0G Compute Network, a decentralized GPU marketplace for AI inference and fine-tuning, with SDK patterns and CLI commands.
internet-court/internet-court-skill
Creates, trades and settles permissionless prediction markets on Solana with any SPL token as collateral, including social-media and custom-oracle markets.
internet-court/internet-court-skill
Connects an agent to the BNB Chain MCP server to read blocks and contracts, move tokens and NFTs, register ERC-8004 agents and use Greenfield storage.
internet-court/internet-court-skill
Specifies how a GenLayer Intelligent Contract decision about an agent's performance becomes an ERC-7710 revocation or policy change, through a relayer or bridge and an EVM controller.
internet-court/internet-court-skill
Specifies how a GenLayer Intelligent Contract should supervise an AI agent, with review rubrics, evidence schemas and continue, warn, constrain or revoke decisions.
Works with
Categories
Complete guide to using @openserv-labs/client for managing agents, workflows, triggers, and tasks on the OpenServ Platform. Openserv Client is an agent skill from internet-court/internet-court-skill. Complete guide to using @openserv-labs/client for managing agents, workflows, triggers, and tasks on the OpenServ Platform.
Openserv Client fits situations like: tasks that involve Smart contracts; tasks that involve Building AI agents.
Run `npx skills add internet-court/internet-court-skill --skill openserv-client -a claude-code`. Or copy the skill folder (vendored/openserv/openserv-client in internet-court/internet-court-skill) into .claude/skills/openserv-client in your project. Claude Code loads it when a task matches its description.
Run `npx skills add internet-court/internet-court-skill --skill openserv-client -a codex`. Or copy the skill folder (vendored/openserv/openserv-client in internet-court/internet-court-skill) into .agents/skills/openserv-client in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add internet-court/internet-court-skill --skill openserv-client -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/openserv-client, .gemini/skills/openserv-client, .github/skills/openserv-client and .opencode/skills/openserv-client in your project.
Going by SKILL.md and its folder, Openserv Client needs TypeScript for the scripts in its folder, the command-line tools its instructions call (npx and npm) and credentials named OPENSERV_USER_API_KEY, WALLET_PRIVATE_KEY and OPENSERV_API_KEY. Our summary lists: Node.js; A credential in OPENSERV_API_KEY; A credential in WALLET_PRIVATE_KEY.
SKILL.md names 2 domains. In commands or code: api.openserv.ai and 8004scan.io; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Openserv Client is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.3k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Openserv Client: Alchemy Agentic Gateway (moonpay/skills, 113 stars), Capacitr (BankrBot/skills, 1.2k stars), Agent Payment X402 (affaan-m/ECC, 276k stars) and Agent Payment X402 (affaan-m/ECC, 276k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
internet-court (a GitHub organization) maintains it in internet-court/internet-court-skill, which has 6,551 GitHub stars. The repository holds 80 skills in this directory. The repository was last updated on August 19, 2026.
Source: internet-court/internet-court-skill on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.