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.
sendandrecvreturn 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.--maxcaps the wait and--quietsets 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
connectreplaces it. Session state and the transcript live under a temp directory (override withAUTOMUD_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
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 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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
41dfbf46eea383f43c09021d005d0ec64faceb1fdfda099aa22888b385253355
|
|
| MD5 |
c89a84f143b8803a7bcdca471ebc3a8e
|
|
| BLAKE2b-256 |
040f989bf237ee598391fb6341a6b0142694aeea6646711be239abdd28836b78
|
Provenance
The following attestation bundles were made for automud-0.1.0.tar.gz:
Publisher:
publish.yml on CharlesCNorton/automud
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
automud-0.1.0.tar.gz -
Subject digest:
41dfbf46eea383f43c09021d005d0ec64faceb1fdfda099aa22888b385253355 - Sigstore transparency entry: 1933232579
- Sigstore integration time:
-
Permalink:
CharlesCNorton/automud@90802c0ae66db60355a2f00299b9386aac039626 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/CharlesCNorton
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@90802c0ae66db60355a2f00299b9386aac039626 -
Trigger Event:
release
-
Statement type:
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0a40a4aa1986557ebf3d0bafb09f3a3e06d64cbab1b125f0e01468c794259104
|
|
| MD5 |
bd8107ce7f1030ba7180ae3291a5b54e
|
|
| BLAKE2b-256 |
0eea0e81c5b1ddc3e7d9c4fa68c981247530b0e287d8831acfb3be5fc5534712
|
Provenance
The following attestation bundles were made for automud-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on CharlesCNorton/automud
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
automud-0.1.0-py3-none-any.whl -
Subject digest:
0a40a4aa1986557ebf3d0bafb09f3a3e06d64cbab1b125f0e01468c794259104 - Sigstore transparency entry: 1933232612
- Sigstore integration time:
-
Permalink:
CharlesCNorton/automud@90802c0ae66db60355a2f00299b9386aac039626 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/CharlesCNorton
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@90802c0ae66db60355a2f00299b9386aac039626 -
Trigger Event:
release
-
Statement type: