open-tabletop-gm

Offloads dice, HP, initiative, and calendar calculations to Python while preserving GM narration.

44|12|Updated Apr 16, 2026
One-click install
npx skills add https://github.com/Bobby-Gray/open-tabletop-gm --skill open-tabletop-gm
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: open-tabletop-gm
Source: https://github.com/Bobby-Gray/open-tabletop-gm/tree/main
Command: npx skills add https://github.com/Bobby-Gray/open-tabletop-gm --skill open-tabletop-gm

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires Flask, Flask-Cors, numpy, and includes scripts (resource) components.

What problem does it solve?

open-tabletop-gm solves the challenge of running persistent tabletop campaigns by offloading mechanical tasks to a Python toolchain while preserving GM narration.

Core Features & Use Cases

  • Offloads dice, HP tracking, initiative, and calendar calculations to Python so the GM can focus on storytelling.
  • Supports a system-plug-in architecture with D&D 5e as the reference, and modular system.md files for other games.
  • Provides a display companion for cinematic visuals, live stat panels, and replayable sessions to improve continuity and player immersion.

Quick Start

Create a new campaign with /gm new <name> and then load it with /gm load to begin a session.

Frequently Asked Questions about open-tabletop-gm

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I track initiative and HP for persistent tabletop campaigns without distracting from narration?

A Python toolchain handles persistent tabletop campaigns by offloading dice, HP tracking, and initiative to Python scripts, freeing the GM to focus on storytelling.

Can I run tabletop RPG campaigns with LLMs other than the default provider?

The framework is LLM-agnostic, allowing you to run persistent tabletop campaigns with any large language model provider while maintaining campaign state.

How do I add support for non-D&D 5e tabletop RPG systems?

You can add non-D&D 5e tabletop RPG systems by creating a modular system.md file in the systems/<system>/ directory, enabling cross-system play.

Does the tabletop GM framework require Flask and numpy to function?

Yes, the tabletop GM framework requires Flask, Flask-Cors, and numpy as dependencies to run the Python toolchain that handles mechanical campaign tasks.

What's the best way to display live stat panels and cinematic visuals during tabletop sessions?

The optional display companion renders cinematic visuals and live stat panels during tabletop sessions, providing replayable campaign continuity for player immersion.

How do I create and load a new campaign session using the GM framework?

To create and load a campaign session with the GM framework, use /gm new <name> to initialize it, then run /gm load to begin the session and start tracking persistent state.