MnesOS is fully Agentic RPG Game Engine.
Project description
MnesOS
MnesOS is a stateless, event-sourced agentic RPG engine that can operate on a Bring-Your-Own-Key (BYOK) model. It is designed to solve the unreliability of traditional "LLM-only" RPGs by explicitly separating deterministic logic and prose generation/narration from high-fidelity orchestration.
Fun Fact: The name MnesOS (pronounced NESS-O-S) is derived from the Greek goddess of memory and remembrance, "Mnemosyne".
🌟 Key Features & Architecture
-
Deterministic Rules (YARE): All state mutation, math operations, and RNG are handled by the non-Turing complete YARE Agentic Rules Engine (YARE) rather than the LLM.
-
Air-Gapped Narration: MnesOS utilizes a two-node LangGraph structure (Director and Narrator), isolating system mechanics and numbers from the narrative output.
-
Stateless & Branchable: The backend retains no operational memory across network turns, employing a tree-based event source model that natively supports branching timelines.
-
Secure Identity: Uses a zero-knowledge, side-by-side authentication approach where LLM API keys are passed in-flight via PKCE and never stored on the server.
For comprehensive details on the engine's mechanics and design constraints, read the Architecture Design and Core Philosophy documents.
🚀 Getting Started
For Players
MnesOS can be installed as a pre-compiled Python package, bundling the backend and frontend into a single instance:
pip install MnesOS[api]
uvicorn MnesOS.api.app:app --host 127.0.0.1 --port 8000
Refer to the Player Guide for full instructions on setting up your environment, navigating the UI, and connecting your local OpenRouter credentials.
For Cartridge Developers
MnesOS games are distributed as "Cartridges". A cartridge typically contains:
-
yare.yaml: Defines the deterministic state schema and logic. Read the YARE Specification for syntax rules and capabilities. -
bot_lore.md: Markdown-formatted world facts, item definitions, and NPC details used for context retrieval. -
prompt_directives.yaml: Per-role steering instructions for the Director, Narrator, and NPC roles. -
first-message.md: The opening scene of the game.
Check the Cartridge Developer Guide to learn about best practices, including semantic grounding and phase-based combat intention.
For Engine Contributors
MnesOS requires Python 3.12+ and Node.js (v20+ LTS) for full-stack, split-terminal development.
-
Setup & Testing: Learn about
Makefilecommands, continuous integration gating rules, and test runners in the CI/CD & Build Instructions. -
Codebase Structure: Familiarize yourself with the Python/React layers and directory locations in the Directory Map.
-
Interfaces: Review the generated API Reference for backend endpoint details.
📚 Full Documentation Map
Our detailed documentation is organized tightly by domain:
-
Core Architecture: Architecture | Philosophy | YARE Spec | API
-
Guides: Player Guide | Cartridge Dev Guide
-
Development: Directory Map | CI/CD
-
AI Context: AI Knowledge Map
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mnesos-0.7.1.tar.gz.
File metadata
- Download URL: mnesos-0.7.1.tar.gz
- Upload date:
- Size: 1.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
17e86f4c840bdbe3056b5c9d760c45ed04d41162ead8121d7dccddab44505618
|
|
| MD5 |
babcb790c2b848820937156111e00df1
|
|
| BLAKE2b-256 |
c5c0be3767f777964247bf7b7c5b308ef0ed31d942a10572907993999d3de876
|
Provenance
The following attestation bundles were made for mnesos-0.7.1.tar.gz:
Publisher:
release.yml on neolaw84/MnesOS
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mnesos-0.7.1.tar.gz -
Subject digest:
17e86f4c840bdbe3056b5c9d760c45ed04d41162ead8121d7dccddab44505618 - Sigstore transparency entry: 1572819594
- Sigstore integration time:
-
Permalink:
neolaw84/MnesOS@a692df7ffaa506e098786710ffaf64c89b663ab7 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/neolaw84
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@a692df7ffaa506e098786710ffaf64c89b663ab7 -
Trigger Event:
pull_request
-
Statement type:
File details
Details for the file mnesos-0.7.1-py3-none-any.whl.
File metadata
- Download URL: mnesos-0.7.1-py3-none-any.whl
- Upload date:
- Size: 171.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
250415dcf39de66acf8a5a93e6b7c78cb82c4154bdd9213116d148ced5c1853d
|
|
| MD5 |
7d1cd61c37f8b7f23584cce477a817c9
|
|
| BLAKE2b-256 |
2ac1a3e68fb4508f5d234c1735f03fcbc9f56b13f638077e59f9a3c399975a72
|
Provenance
The following attestation bundles were made for mnesos-0.7.1-py3-none-any.whl:
Publisher:
release.yml on neolaw84/MnesOS
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mnesos-0.7.1-py3-none-any.whl -
Subject digest:
250415dcf39de66acf8a5a93e6b7c78cb82c4154bdd9213116d148ced5c1853d - Sigstore transparency entry: 1572819607
- Sigstore integration time:
-
Permalink:
neolaw84/MnesOS@a692df7ffaa506e098786710ffaf64c89b663ab7 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/neolaw84
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@a692df7ffaa506e098786710ffaf64c89b663ab7 -
Trigger Event:
pull_request
-
Statement type: