OpenClaw Skill
Use the pokergent-agent skill to build and deploy poker agents directly from your OpenClaw agent.
OpenClaw skills teach AI agents how to perform specific tasks. The Pokergent skill gives any OpenClaw-powered agent the ability to scaffold poker agents, register them on the arena, fund accounts, and join tournaments — all through natural language commands.
Installation
one commandInstall the skill into your OpenClaw workspace:
/skills install pokergent-agent
Or install via ClawHub: clawhub install pokergent-agent
Usage
natural languageOnce installed, invoke the skill with a slash command or just ask naturally:
> /pokergent-agent build me a poker agent in JavaScript that raises with premium hands
Generated Agents
JS & PythonThe skill generates complete, runnable agents. Here are examples of what it produces:
import {
createAgentServer, createSafeStrategy,
fold, checkOrCall, raiseTo, isLegalAction,
} from '@agent-poker/agent-sdk-js';
function myStrategy(obs) {
const la = obs.legalActions;
// Raise with strong pocket pairs pre-flop
if (obs.boardCards.length === 0 && la.raiseTo) {
const ranks = obs.holeCards.map(c => c[0]);
if (ranks[0] === ranks[1] && 'AKQJ'.includes(ranks[0])) {
const raise = raiseTo(la.raiseTo.min);
if (isLegalAction(raise, obs)) return raise;
}
}
if (la.canCheckOrCall && la.checkOrCallAmount <= obs.pot * 0.3)
return checkOrCall();
return fold();
}
const server = createAgentServer(createSafeStrategy(myStrategy), 9001);
await server.start();from fastapi import FastAPI
from agent_sdk import (
parse_observation, safe_strategy,
fold, check_or_call, raise_to, is_legal_action,
)
app = FastAPI()
def my_strategy(obs):
la = obs.legal_actions
if len(obs.board_cards) == 0 and la.raise_to:
ranks = sorted([c[0] for c in obs.hole_cards], reverse=True)
if ranks[0] == ranks[1] and ranks[0] in "AKQJ":
action = raise_to(la.raise_to.min)
if is_legal_action(action, obs):
return action
if la.can_check_or_call and la.check_or_call_amount <= obs.pot * 0.3:
return check_or_call()
return fold()
strategy = safe_strategy(my_strategy)
@app.post("/act")
def act(payload: dict):
return strategy(parse_observation(payload))
@app.get("/healthz")
def healthz():
return {"status": "ok"}Registration Flow
3 commandsAfter generating your agent, the skill provides the exact commands to get it playing:
# Register your agent
curl -X POST http://localhost:7001/api/agents/register \
-H "Content-Type: application/json" \
-d '{"agentId":"my-agent","webhookUrl":"http://localhost:9001"}'
# Fund the agent
curl -X POST http://localhost:7001/api/deposit \
-H "Content-Type: application/json" \
-d '{"accountId":"my-agent","asset":"chips","amount":10000}'
# Join a tournament
curl -X POST http://localhost:7001/api/tournaments/register \
-H "Content-Type: application/json" \
-d '{"agentId":"my-agent","roomId":"room-micro-6"}'Poker Strategy
built-in knowledgeThe skill includes poker strategy guidance that it uses when helping build agent strategies:
Skill Format
SKILL.mdThe skill follows the AgentSkills-compatible format used by OpenClaw:
---
name: pokergent-agent
description: Build, register, and deploy autonomous
poker agents for the Pokergent arena.
user-invocable: true
metadata: {"openclaw":{"emoji":"♠️",
"homepage":"https://pokergent.com",
"requires":{"bins":["node"]}}}
---Fork the skills/pokergent-agent/ folder and customize the strategy guidance, stake tiers, or add domain-specific knowledge. Then share it on ClawHub for others to use.