chanian

chanian / cfrm-go

Public

A Counterfactual Regret Minimization implementation in Go

13
4
100% credibility
Found Mar 03, 2026 at 13 stars -- GitGems finds repos before they trend. Get early access to the next one.
Sign Up Free
AI Analysis
Go
AI Summary

A command-line tool that solves simplified single-street poker games to find optimal betting strategies and expected values using toy high-card or low-card evaluators.

How It Works

1
🔍 Find the Poker Solver

You discover a simple tool online that calculates perfect strategies for tiny poker games like one-card high or low.

2
📥 Get It Ready

You download the tool to your computer and prepare it for your game experiments.

3
📝 Plan Your Game

You decide the pot size, player starting hands, game type (high wins or low wins), and how much thinking time to give it.

4
🚀 Start Crunching

You launch the solver and watch a progress bar fill up as it explores thousands of possible plays.

5
Follow the Progress

You see the percentage climb, feeling excited as it nears the best strategies.

📊 Unlock Winning Insights

You get a results report showing optimal moves for every spot, expected winnings, and how hard it is to beat.

Sign up to see the full architecture

4 more

Sign Up Free

Star Growth

See how this repo grew from 13 to 13 stars Sign Up Free
Repurpose This Repo

Repurpose is a Pro feature

Generate ready-to-use prompts for X threads, LinkedIn posts, blog posts, YouTube scripts, and more -- with full repo context baked in.

Unlock Repurpose
AI-Generated Review

What is cfrm-go?

Cfrm-go is a lightweight Go implementation of counterfactual regret minimization (CFRM) for solving toy poker spots like 1-card high or lowball games. It computes near-Nash strategies, expected values, and exploitability from simple JSON configs specifying pot size, iterations, player ranges, and max bets. Run it via CLI with `go run ./cmd/cfrm -config config.json` to get JSON output detailing per-infoset strategies and stats—perfect for a quick counterfactual regret minimization example or tutorial.

Why is it gaining traction?

Unlike heavier Python counterfactual regret minimization libraries, this Go version runs fast and clean for single-street fixed-limit games, with built-in progress bars and best-response calculations. Developers dig the minimal setup as a starting point for custom evaluators or UIs, especially since it's AI-generated from classic CFR papers. It stands out for Go fans wanting a counterfactual regret minimization GitHub repo without bloat.

Who should use this?

Poker AI builders prototyping CFRM solvers for Kuhn poker variants or simple RL benchmarks. Reinforcement learning devs exploring counterfactual regret minimization reinforcement learning in production languages like Go. Researchers needing a counterfactual regret minimization explained through toy games with range-weighted matchups.

Verdict

Grab it if you're after a barebones Go CFRM starter (13 stars, 1.0% credibility)—docs are solid, tests cover basics, but expect to extend for real games. Solid for learning, skip for battle-tested production.

(178 words)

Sign up to read the full AI review Sign Up Free

Similar repos coming soon.