Metadata-Version: 2.4
Name: dungeongrid
Version: 0.1.0a0
Summary: DungeonGrid: text-first cooperative dungeon-crawl environment for multi-agent benchmarks
Author: Josh Purtell
License-Expression: MIT
Project-URL: Homepage, https://github.com/JoshuaPurtell/DungeonGrid
Project-URL: Repository, https://github.com/JoshuaPurtell/DungeonGrid
Project-URL: Issues, https://github.com/JoshuaPurtell/DungeonGrid/issues
Keywords: multi-agent,benchmark,dungeon,reinforcement-learning,llm-agents
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pydantic>=2.0
Provides-Extra: server
Requires-Dist: fastapi>=0.110; extra == "server"
Requires-Dist: uvicorn>=0.27; extra == "server"
Provides-Extra: dev
Requires-Dist: build>=1.2; extra == "dev"
Requires-Dist: twine>=5.0; extra == "dev"
Dynamic: license-file

# DungeonGrid

DungeonGrid is a text-first cooperative dungeon-crawl environment for
multi-agent benchmarks.

It is designed around:

- one to four submitted hero agents;
- an always-AI Warden / dungeon-controller side;
- compact text board-state observations;
- structured JSON action plans instead of string actions;
- batched plan execution with future reveal-boundary replanning;
- fixed quest difficulty across solo, duo, trio, and squad slices.

This package is currently an alpha extraction of the DungeonGrid engine that is
being integrated into NanoCoop.

## Quick Start

```python
from dungeongrid import DungeonGridEnvironment

env = DungeonGridEnvironment()
obs = env.reset(quest_id="lantern_crypt", num_heroes=2, seed=1)
print(obs.text)

step = env.step({"type": "message", "target": "party", "payload": {"text": "I'll scout east."}})
print(step.info)
```

## Quests

Bundled alpha quests:

- `lantern_crypt`
- `bells_under_blackwater`
- `ashen_pantry`
- `cinder_exit`
- `low_shrine_locks`

## Status

DungeonGrid is under active development. Public names use DungeonGrid, while
some compatibility aliases for the earlier TorchGrid prototype remain in the
Python API to ease migration.
