Texas Hold’em AI Bot Development
Budget: $15 – $25 USD
Project Description
We're looking for an experienced developer to build a fully automated poker bot that can play in free online poker tournaments (play-money / freerolls). This is a research and hobby project — not for real-money play.
The system needs to combine game theory optimal (GTO) strategy with exploitative adjustments based on an expert human player's decision-making framework that we will provide. The bot should be able to join a table, read the game state visually, make decisions, and execute actions — all autonomously.
What We're Building (3 Core Systems)
1. Poker Decision Engine (The Brain)
Implement a GTO baseline strategy using frameworks like OpenSpiel, PokerRL, or equivalent
Build an exploitative layer on top that adjusts based on opponent tendencies
We will provide detailed decision trees, heuristics, and hand history annotations from our expert player — you'll need to encode these into the system
Opponent modeling: track stats per player (VPIP, PFR, aggression factor, fold-to-cbet, etc.) and adjust strategy dynamically
Support for No-Limit Texas Hold'em tournament format (MTT / Sit & Go)
AI/LLM API Integration (Critical Component):
Integrate an AI API (Claude API, OpenAI, or similar) as a strategic advisor layer in the decision pipeline
The LLM should receive structured game state data (hand, board, pot odds, position, opponent stats, tournament stage) and return strategic recommendations
Use the LLM to handle nuanced, non-formulaic decisions: multi-street planning, bluff detection, ICM-aware play in tournament bubbles, and adapting to unusual opponent patterns
Encode our expert player's knowledge into a rich system prompt / fine-tuned model that reasons like our expert would
The LLM acts as the "exploitative brain" while the GTO solver provides the mathematical baseline — the system blends both outputs
Implement smart caching and pre-computation so API latency doesn't slow down decision-making (pre-fetch likely scenarios, cache common spots)
Fallback logic: if the API is slow or unavailable, the bot defaults to the GTO baseline so it never stalls mid-hand
2. Screen Reading / Game State Extraction (The Eyes)
Use computer vision (OpenCV + Tesseract OCR or similar) to read the poker table from screen captures or browser window
Must accurately extract: hole cards, community cards, pot size, stack sizes, player positions, betting actions, blinds/antes, tournament stage
Card recognition model (CNN or template matching) with high accuracy
Must work reliably across at least one major free poker platform (we can discuss which one)
3. Browser Automation / Action Execution (The Hands)
Use Playwright, Puppeteer, or pyautogui to interact with the poker client
Human-like input simulation is critical: randomized mouse movements (Bezier curves), variable click timing, realistic think-time delays that scale with decision complexity
Handle common scenarios: folding, calling, raising (with variable sizing), sitting out, re-buying, registering for tournaments
Error recovery: detect disconnections, popups, table changes, and recover gracefully
Architecture Overview
Screen Capture → CV/OCR → Game State Parser → Decision Engine → Action Executor
↑
┌─────────┼─────────┐
│ │ │
GTO Solver AI/LLM API Opponent
(Baseline) (Expert Brain) Stats DB
↑
Expert Knowledge
(System Prompt /
Fine-tuned Model)
Technical Requirements
Language: Python (preferred) — open to Node.js for the automation layer if needed
Key Libraries: OpenCV, Tesseract/EasyOCR, Playwright or pyautogui, OpenSpiel or PokerRL, SQLite or PostgreSQL for opponent tracking, Anthropic SDK / OpenAI SDK for LLM integration
AI API: Must have experience integrating LLM APIs (Claude, GPT, etc.) into real-time decision systems — prompt engineering, structured output parsing, latency management, and caching strategies
Deliverables:
Fully functional bot that can autonomously play a free poker tournament from registration to completion
Modular codebase with clear separation between vision, decision, and automation layers
Configuration file for strategy parameters (aggression levels, ranges, etc.)
Opponent tracking database with stats dashboard or export
Documentation for setup, configuration, and strategy tuning
Video demo of the bot playing a full session
Well-engineered AI prompt / system prompt that encodes our expert's strategy (we'll collaborate on this)
API integration with proper error handling, caching, and fallback logic
Bonus / Nice-to-Have
Web dashboard to monitor the bot in real-time (current hand, stats, decisions, EV calculations)
Ability to replay hands and review bot decisions vs. optimal play
Support for multiple table sizes (6-max, 9-max, heads-up)
Configurable "personality" profiles (tight-aggressive, loose-aggressive, etc.)
Integration with hand history analysis tools
LLM-powered post-session analysis that reviews all hands and generates a report on leaks / missed opportunities
Ability to A/B test different AI prompts / strategies against each other
What We Provide
Detailed expert player decision framework (written heuristics, annotated hand histories, video explanations)
Access to test accounts on the target platform
Clear feedback loop — we'll review hands and flag decision errors for you to iterate on
Ongoing collaboration throughout the project
Skills Required
Python (Advanced)
Computer Vision / OpenCV
Machine Learning / AI
LLM API Integration (Claude API / OpenAI API)
Prompt Engineering
Browser Automation (Playwright / Selenium / Puppeteer)
Game Theory / Poker Knowledge (Strong Plus)
OCR / Image Processing
We're looking for an experienced developer to build a fully automated poker bot that can play in free online poker tournaments (play-money / freerolls). This is a research and hobby project — not for real-money play.
The system needs to combine game theory optimal (GTO) strategy with exploitative adjustments based on an expert human player's decision-making framework that we will provide. The bot should be able to join a table, read the game state visually, make decisions, and execute actions — all autonomously.
What We're Building (3 Core Systems)
1. Poker Decision Engine (The Brain)
Implement a GTO baseline strategy using frameworks like OpenSpiel, PokerRL, or equivalent
Build an exploitative layer on top that adjusts based on opponent tendencies
We will provide detailed decision trees, heuristics, and hand history annotations from our expert player — you'll need to encode these into the system
Opponent modeling: track stats per player (VPIP, PFR, aggression factor, fold-to-cbet, etc.) and adjust strategy dynamically
Support for No-Limit Texas Hold'em tournament format (MTT / Sit & Go)
AI/LLM API Integration (Critical Component):
Integrate an AI API (Claude API, OpenAI, or similar) as a strategic advisor layer in the decision pipeline
The LLM should receive structured game state data (hand, board, pot odds, position, opponent stats, tournament stage) and return strategic recommendations
Use the LLM to handle nuanced, non-formulaic decisions: multi-street planning, bluff detection, ICM-aware play in tournament bubbles, and adapting to unusual opponent patterns
Encode our expert player's knowledge into a rich system prompt / fine-tuned model that reasons like our expert would
The LLM acts as the "exploitative brain" while the GTO solver provides the mathematical baseline — the system blends both outputs
Implement smart caching and pre-computation so API latency doesn't slow down decision-making (pre-fetch likely scenarios, cache common spots)
Fallback logic: if the API is slow or unavailable, the bot defaults to the GTO baseline so it never stalls mid-hand
2. Screen Reading / Game State Extraction (The Eyes)
Use computer vision (OpenCV + Tesseract OCR or similar) to read the poker table from screen captures or browser window
Must accurately extract: hole cards, community cards, pot size, stack sizes, player positions, betting actions, blinds/antes, tournament stage
Card recognition model (CNN or template matching) with high accuracy
Must work reliably across at least one major free poker platform (we can discuss which one)
3. Browser Automation / Action Execution (The Hands)
Use Playwright, Puppeteer, or pyautogui to interact with the poker client
Human-like input simulation is critical: randomized mouse movements (Bezier curves), variable click timing, realistic think-time delays that scale with decision complexity
Handle common scenarios: folding, calling, raising (with variable sizing), sitting out, re-buying, registering for tournaments
Error recovery: detect disconnections, popups, table changes, and recover gracefully
Architecture Overview
Screen Capture → CV/OCR → Game State Parser → Decision Engine → Action Executor
↑
┌─────────┼─────────┐
│ │ │
GTO Solver AI/LLM API Opponent
(Baseline) (Expert Brain) Stats DB
↑
Expert Knowledge
(System Prompt /
Fine-tuned Model)
Technical Requirements
Language: Python (preferred) — open to Node.js for the automation layer if needed
Key Libraries: OpenCV, Tesseract/EasyOCR, Playwright or pyautogui, OpenSpiel or PokerRL, SQLite or PostgreSQL for opponent tracking, Anthropic SDK / OpenAI SDK for LLM integration
AI API: Must have experience integrating LLM APIs (Claude, GPT, etc.) into real-time decision systems — prompt engineering, structured output parsing, latency management, and caching strategies
Deliverables:
Fully functional bot that can autonomously play a free poker tournament from registration to completion
Modular codebase with clear separation between vision, decision, and automation layers
Configuration file for strategy parameters (aggression levels, ranges, etc.)
Opponent tracking database with stats dashboard or export
Documentation for setup, configuration, and strategy tuning
Video demo of the bot playing a full session
Well-engineered AI prompt / system prompt that encodes our expert's strategy (we'll collaborate on this)
API integration with proper error handling, caching, and fallback logic
Bonus / Nice-to-Have
Web dashboard to monitor the bot in real-time (current hand, stats, decisions, EV calculations)
Ability to replay hands and review bot decisions vs. optimal play
Support for multiple table sizes (6-max, 9-max, heads-up)
Configurable "personality" profiles (tight-aggressive, loose-aggressive, etc.)
Integration with hand history analysis tools
LLM-powered post-session analysis that reviews all hands and generates a report on leaks / missed opportunities
Ability to A/B test different AI prompts / strategies against each other
What We Provide
Detailed expert player decision framework (written heuristics, annotated hand histories, video explanations)
Access to test accounts on the target platform
Clear feedback loop — we'll review hands and flag decision errors for you to iterate on
Ongoing collaboration throughout the project
Skills Required
Python (Advanced)
Computer Vision / OpenCV
Machine Learning / AI
LLM API Integration (Claude API / OpenAI API)
Prompt Engineering
Browser Automation (Playwright / Selenium / Puppeteer)
Game Theory / Poker Knowledge (Strong Plus)
OCR / Image Processing