galando/tokenomics: The Python DSL That Stress-Tests Token Economies
A lean simulator for modeling agents, incentive loops, and exploit paths before a token design ships into the wild.
- Tokenomics treats token design as a stress test, so the goal is to expose failure modes before launch, not to produce a comforting forecast.
- Its Python DSL turns agents, rules, and incentives into executable models, which makes iteration faster than spreadsheet-based planning.
- The real value is adversarial: it surfaces exploit paths, capture risk, and incentive drift when participants optimize against the rules.
- It sits between visual modelers and heavyweight research frameworks, offering a focused middle ground for teams that need speed and rigor.
Most token models fail the same way. They assume behavior is stable, then get wrecked when users start farming, routing around the rules, or waiting for the incentives to age badly. galando/tokenomics is built for that uncomfortable moment, when a token design stops being a chart and starts being a live adversarial system.
Galando’s move: make incentives executable
The project comes from a simple complaint: token design is usually discussed like strategy, but built and tested like a spreadsheet. Galando’s answer is to make the model small enough to move quickly, while still expressive enough to capture the part that matters most, how agents respond when the incentives change.
That is why the repo leans on a simplified Python DSL. You define the actors, the reward logic, the constraints, and the scenario, then run the model to see where the assumptions crack. The result is not a crystal ball. It is a reproducible pressure test.
from tokenomics import Agent, Scenario, Simulation
builders = Agent(
name='builders',
behavior='earn',
reacts_to=['incentive']
)
farmers = Agent(
name='farmers',
behavior='optimize',
reacts_to=['yield', 'reward']
)
scenario = Scenario(
params={'emission': 1000000, 'liquidity': 0.42},
agents=[builders, farmers],
rules=['reward_activity', 'tax_farming']
)
result = Simulation(scenario).run(steps=30)
print(result.stability, result.exploit_paths)
How the simulator thinks
The mental model is straightforward. Each run starts with a scenario, which sets the rules of the world: token supply, reward schedule, liquidity assumptions, or any other parameter that shapes behavior. Then the agents act inside that world, and their choices change the state of the system step by step.
That matters because token economies are dynamic, not static. A token can look healthy at launch and still fail once the wrong strategy becomes profitable. The simulator is useful when it tracks those changes over time, not just the first neat equilibrium on a slide deck.
The payoff is in the scoring. Instead of asking only whether a model grows, the repo asks whether it stays stable, where incentives leak value, and which behaviors become unexpectedly dominant. That is the difference between a planning tool and a stress harness.
Why spreadsheets miss exploit paths
This is where the project earns its keep. A spreadsheet can estimate supply curves and maybe sketch demand assumptions, but it is much weaker at showing how a rational actor might bend the system. Tokenomics is built around that gap, so it is most valuable when you want to think like an attacker before an attacker shows up.
- Reward farming: when the incentive schedule pays for activity that does not create real value.
- Governance capture: when voting power or participation rules can be steered by concentrated actors.
- Liquidity skimming: when token flows create easy extraction paths around the intended design.
- Model drift: when a system that looked balanced under one set of assumptions breaks after behavior changes.
Where Tokenomics sits among the alternatives
| Project | Primary language | Modeling style | Best for | Main trade-off |
|---|---|---|---|---|
| galando/tokenomics | Python | Simplified agent-based, game-theoretic DSL | Fast, focused incentive design and adversarial testing | Less formal than heavy research frameworks |
| TokenSim | Python | System dynamics | Broader token economy exploration | Less specialized for strategic player behavior |
| cadCAD-wrapper | Python | General complex adaptive systems | Teams already inside the cadCAD ecosystem | Carries some of cadCAD’s complexity with it |
| Machinations Open | Visual / C# | Graphical flow modeling | Concepting with a visual interface | Harder to express code-native experiments |
| EconoForge | Rust | Performance-oriented simulation | High-stakes work that needs speed and rigor | Requires Rust expertise and a heavier engineering lift |
Who this is for
This is strongest for founders, protocol designers, game economy teams, and engineers who need to reason about incentives without building a research lab first. The Aether Games case study points to the practical side of that story: a real studio using the repo to pressure-test a game economy before it ships. If you need a tool that helps you ask, “What breaks when users get smart?” this is the right question and the right kind of repo.