SharpMud.Adapters.Cli 0.1.0-alpha.8

This is a prerelease version of SharpMud.Adapters.Cli.
dotnet add package SharpMud.Adapters.Cli --version 0.1.0-alpha.8
                    
NuGet\Install-Package SharpMud.Adapters.Cli -Version 0.1.0-alpha.8
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="SharpMud.Adapters.Cli" Version="0.1.0-alpha.8" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SharpMud.Adapters.Cli" Version="0.1.0-alpha.8" />
                    
Directory.Packages.props
<PackageReference Include="SharpMud.Adapters.Cli" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add SharpMud.Adapters.Cli --version 0.1.0-alpha.8
                    
#r "nuget: SharpMud.Adapters.Cli, 0.1.0-alpha.8"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package SharpMud.Adapters.Cli@0.1.0-alpha.8
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=SharpMud.Adapters.Cli&version=0.1.0-alpha.8&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=SharpMud.Adapters.Cli&version=0.1.0-alpha.8&prerelease
                    
Install as a Cake Tool

sharp-mud

A modern C#/.NET reimagining of a classic MUD (Multi-User Dungeon) — faithful to the genre's feel while built with current .NET architecture.

Alpha — not yet stable. Pre-1.0, no SemVer compatibility guarantees between releases yet; APIs, package boundaries, and persisted-data shape can all still change. Also currently pinned to a preview .NET 11 SDK (see global.json) — accept that risk, or build against net10.0 only until a stable release lands. Use it, but expect breaking changes.

  • SPEC.md — vision and high-level decisions (start here).
  • docs/ — detailed per-subsystem design docs. Start with docs/engine-vs-ruleset.md for the entity model (Thing/Behavior composition), then architecture, world model, character, commands, combat, persistence, networking, accounts/auth.

Solution layout

SharpMud.slnx
  src/
    SharpMud.Engine/                # Thing/Behavior, events, generic behaviors,
                                     # command pipeline, session, tick loop.
                                     # Zero deps on any ruleset.
    SharpMud.Hosting/                # generic-host composition helpers, ruleset-agnostic
    SharpMud.Persistence/            # EF Core repositories, provider-agnostic
    SharpMud.Persistence.Sqlite/     # SQLite provider
    SharpMud.Persistence.DynamoDb/   # DynamoDB provider
    SharpMud.Adapters.Cli/           # local stdin/stdout session adapter
    SharpMud.Adapters.Telnet/        # raw TCP session adapter + listener
    SharpMud/                        # meta-package (Engine + Hosting + Persistence only - ADR-0007)
  samples/
    SharpMud.Samples.Classic/        # D&D-flavored sample ruleset + composition root
  tests/
    SharpMud.Engine.Tests/
    SharpMud.Hosting.Tests/
    SharpMud.Persistence.Tests/
    SharpMud.Adapters.Cli.Tests/
    SharpMud.Adapters.Telnet.Tests/
    SharpMud.Samples.Classic.Tests/

Building & testing

dotnet build SharpMud.slnx
dotnet test SharpMud.slnx

Running

dotnet run --project samples/SharpMud.Samples.Classic       # local single-player CLI
dotnet run --project samples/SharpMud.Samples.Classic -- --telnet [port]  # telnet server, default port 4000

Using SharpMud as a library

src/ publishes as NuGet packages (SharpMud.Engine, SharpMud.Hosting, SharpMud.Persistence(.Sqlite/.DynamoDb), SharpMud.Adapters.Cli/ .Telnet), plus a SharpMud meta-package pulling in the engine-level core (Engine/Hosting/Persistence) — you still add a persistence provider and a transport explicitly, per ADR-0007. samples/SharpMud.Samples.Classic is a full reference consumer — start there to see how a ruleset composes against the packages. See ADR-0006 for the design.

Containerized

docker build -t sharpmud .
docker run -p 4000:4000 sharpmud   # telnet server (container default)

See docs/deployment.md for runtime configuration (env vars, mode selection) and current limitations.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed.  net11.0 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.0-alpha.8 0 7/22/2026
0.1.0-alpha.7 0 7/22/2026
0.1.0-alpha.6 0 7/21/2026
0.1.0-alpha.4 0 7/21/2026
0.1.0-alpha.3 0 7/21/2026
0.1.0-alpha.1 28 7/21/2026
0.0.1-alpha.2 0 7/21/2026