Lambda Symbolics

The management endpoint

The management REPL is an opt-in, authenticated endpoint for trusted local programs that must evaluate Common Lisp in the running Autolith image. It is off by default and uses neither Swank nor Slynk.

Turn it on

$ AUTOLITH_MANAGEMENT_REPL=on autolith

The endpoint speaks a length-prefixed S-expression wire protocol. A Unix socket is the default transport; TCP is available but accepts IPv4 loopback addresses only, and there is no server TLS.

Authentication

Every connection answers a fresh nonce challenge with HMAC-SHA-256; the reusable token never crosses the wire. The token lives in a mode-0600 file owned by your user, opened without following symbolic links only while checking a proof, and its octets are wiped from memory afterwards.

Settings

VariableDefaultMeaning
AUTOLITH_MANAGEMENT_REPLoffEnable the endpoint.
AUTOLITH_MANAGEMENT_REPL_TRANSPORTunixunix or tcp.
AUTOLITH_MANAGEMENT_REPL_UNIX_SOCKETstate homeSocket under the XDG state home.
AUTOLITH_MANAGEMENT_REPL_TCP_ADDRESS127.0.0.1IPv4 loopback listener address.
AUTOLITH_MANAGEMENT_REPL_TCP_PORT4141TCP listener port.
AUTOLITH_MANAGEMENT_REPL_TOKEN_FILEconfig homeMode-0600 token file under the XDG config home.
AUTOLITH_MANAGEMENT_REPL_TIMEOUT10Evaluation deadline in seconds.
AUTOLITH_MANAGEMENT_REPL_MAX_FRAME1048576Maximum wire-frame octets.
AUTOLITH_MANAGEMENT_REPL_MAX_SOURCE262144Maximum UTF-8 source octets.
AUTOLITH_MANAGEMENT_REPL_MAX_OUTPUT262144Maximum captured output and value text.
AUTOLITH_MANAGEMENT_REPL_QUEUE_CAPACITY8Maximum queued evaluations.
AUTOLITH_MANAGEMENT_REPL_MAX_CLIENTS8Maximum accepted clients, including authentication.
AUTOLITH_MANAGEMENT_REPL_AUTH_TIMEOUT10Absolute authentication deadline in seconds.

Challenge-response prevents bearer-token replay, but an unauthenticated local process can relay a challenge and proof between trusted local clients. Treat loopback TCP clients as locally trusted.