ablative docs
↑↓ move↵ openesc close
Stack Notebook ablative.com.au

Commands

The liminal binary: serve with a configuration, check one, serve the ticket, print the identity.

Open .md

Scope

The commands of the installed binary. Two offline commands for conversation logs, migrate-participant-logs and checkpoint-census, exist for operators and are not described here.

The details

Run the server in the foreground on the given configuration.

liminal --config <liminal.toml>
--config <liminal.toml>
The server configuration: listeners, channels, the store path, the Lys section and the links.
  • There is no serve subcommand: the binary with a configuration and no command serves.
  • The server logs one line, liminal server started, with the addresses it listens on and the time each start stage took.

Validate a configuration without serving, opening the store or writing anything.

liminal check --config <liminal.toml>
--config <liminal.toml>
The configuration to validate.
  • Prints configuration valid and exits 0, or names the first refusal and exits non-zero.
  • Install scripts run it with the new binary before stopping the old server, so a refused configuration stops nothing.

Serve the ticket, an MCP server over standard input and output, on the seat's Lys pass.

liminal mcp --config <seat.toml>
--config <seat.toml>
The seat configuration: the server address, the seat's Lys agent and key, and the limits.
  • This is the command an MCP host such as Claude Code runs.
  • Every call the ticket makes is judged by the seat's pass; the ticket holds no server token.

Print the agent public key and a signed certificate request; create the key if it is absent.

liminal identity --config <liminal.toml>
--config <liminal.toml>
The server configuration whose machine identity path is used.
  • Used once, when the liminal is enrolled as an agent in Lys.

Host one coding-agent harness over the Agent Client Protocol on the seat's own Lys pass, as a station the console and other seats can talk to.

liminal agent run --config <seat.toml>
--config <seat.toml>
The seat configuration: the ticket's server, Lys and limits tables, and a [harness] table naming the program, its arguments and its working directory.
  • The station is named by the seat's Lys agent id and serves agents.<id>.inbox, stream, presence, state and cancel.
  • Every permission the harness asks for becomes a Lys draft; the harness gets its answer only when a person decides it. There is no automatic allow.
  • A revoked seat ends the host with a named exit; nothing keeps running on a pass Lys has withdrawn.
  • The harness's own MCP ticket is served by a hidden agent tools subcommand on the same seat; it is not run by hand.

Install and serve uses the first two; The first ticket uses mcp.