Skip to main content

Persistent telnet/MUD session manager you drive by hand or with an agent. No LLM, no API key.

Project description

AutoMUD

A persistent telnet/MUD session you drive with small, discrete commands. There is no language model and no API key inside it: the intelligence is whoever runs it, a person, a script, or an autonomous agent. It exists because a raw telnet session is interactive and blocking, so it cannot be held open across separate shell commands. AutoMUD keeps the connection alive in a small background daemon and exposes simple verbs against it.

Install

pipx install git+https://github.com/CharlesCNorton/automud

Or from a clone:

pip install .

Standard library only, Python 3.8+.

Use

automud connect --demo achaea      # or: automud connect <host> <port>
automud send 2                      # send a line, print the reply
automud send Maelvorn
automud recv                         # drain any new output
automud state                        # structured game state (GMCP) as JSON
automud status
automud close
verb what it does
connect HOST PORT / --demo NAME open a session and start the daemon
send TEXT send one line, print what comes back
recv print any new output
state [--key PKG] captured GMCP state as JSON (e.g. --key Char.Vitals)
status connection and vitals summary
log [--tail N] full session transcript
close end the session and stop the daemon

Built-in demo targets: achaea, zork (telehack.com), chess (freechess.org).

Behaviour

  • Smart waiting. send and recv return as soon as the server stops talking, either a telnet GA/EOR prompt marker or output going quiet, so you never guess a sleep duration. --max caps the wait and --quiet sets the idle threshold.
  • GMCP. It negotiates GMCP and parses the structured state modern MUDs push (health, room, exits, skills) into JSON for state. Options it does not implement (compression, MSDP, MXP) are refused rather than mishandled.
  • One session at a time, held by a background daemon; a new connect replaces it. Session state and the transcript live under a temp directory (override with AUTOMUD_DIR).

License

MIT. See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

automud-0.1.0.tar.gz (9.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

automud-0.1.0-py3-none-any.whl (10.5 kB view details)

Uploaded Python 3

File details

Details for the file automud-0.1.0.tar.gz.

File metadata

  • Download URL: automud-0.1.0.tar.gz
  • Upload date:
  • Size: 9.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for automud-0.1.0.tar.gz
Algorithm Hash digest
SHA256 41dfbf46eea383f43c09021d005d0ec64faceb1fdfda099aa22888b385253355
MD5 c89a84f143b8803a7bcdca471ebc3a8e
BLAKE2b-256 040f989bf237ee598391fb6341a6b0142694aeea6646711be239abdd28836b78

See more details on using hashes here.

Provenance

The following attestation bundles were made for automud-0.1.0.tar.gz:

Publisher: publish.yml on CharlesCNorton/automud

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file automud-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: automud-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 10.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for automud-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0a40a4aa1986557ebf3d0bafb09f3a3e06d64cbab1b125f0e01468c794259104
MD5 bd8107ce7f1030ba7180ae3291a5b54e
BLAKE2b-256 0eea0e81c5b1ddc3e7d9c4fa68c981247530b0e287d8831acfb3be5fc5534712

See more details on using hashes here.

Provenance

The following attestation bundles were made for automud-0.1.0-py3-none-any.whl:

Publisher: publish.yml on CharlesCNorton/automud

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page