> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Run Narya

> Start the host, install it as a login service, manage sessions and checkpoints, and check the health of your installation.

Narya splits into a host and its clients. The host owns the store, the sessions and the model connections. A client sends a message and reads the result over the local socket. An interactive client starts a host when no host answers, and then drives it over the same HTTP API as every other client.

## The host

***

<Steps>
  <Step title="Start the host">
    Run `narya host start`. The host takes the store lock and listens on the socket inside your Narya home directory.
  </Step>

  <Step title="Check it">
    Run `narya host status`. It reports the host it found and what it serves.
  </Step>

  <Step title="Stop it">
    Run `narya host stop`. The host finishes the requests in flight, then releases the store lock.
  </Step>
</Steps>

## Keep the host alive across logins

***

`narya daemon install` writes a login service and loads it. On macOS it writes a LaunchAgent that runs `narya host start` at load and restarts it. On Linux it writes a user systemd unit that restarts on failure. Narya writes the unit with `0600` permissions. It sets `NARYA_HOME` inside the unit rather than inheriting the value.

`narya daemon status` answers three questions separately: registered, loaded and serving. `narya daemon uninstall` removes the unit and nothing else. Your sessions, your store and your configuration stay.

The host and every session in it survive a closed terminal. A later `narya -p` attaches to the running host rather than opening the store itself.

<Note>
  `narya daemon install` is the only command that writes a service unit. Nothing else in Narya writes one.
</Note>

## Sessions

***

Each session binds to one repository path. Resume one with `narya -s <session-id>`, or with `narya -p --session <session-id>`.

* `narya session list` lists the sessions in the store.
* `narya export <session-id>` writes one transcript to standard output. Choose `--format markdown` or `--format jsonl`. Add `--reasoning` and `--tool-output` for more detail.
* `narya import <file> --repository <absolute path>` reads a transcript from another tool. Set `--format claudecode` or `--format opencode`.
* `narya session promote <session-id>` marks the session attended.

## Checkpoints and rewinds

***

Narya records restore points of your working tree in a shadow git repository beside your checkout. Your own git history never changes. No timer removes a checkpoint.

A rewind moves a session back across the conversation, the files, or both. Name the scope, because it has no default. A rewind always branches and never deletes. Narya first records the tree as it stands, so the state you leave becomes a restore point of its own.

## Health and repair

***

`narya doctor` walks the installation and reports what it finds:

* the home directory and the configuration
* the host and the store
* the sessions and the tool servers
* the credentials
* the binary and the terminal

It repairs nothing. Each finding names the command that fixes it.

`narya repair <session-id>` is the way out of a quarantine. An unclean shutdown leaves a session for recovery, and this command releases it. Add `--retire` to close the session instead.

## Retention

***

Narya keeps everything until you say otherwise. Set a maximum age per class under `[retention]` in `config.toml`.

* `narya retention status` reports what a sweep would remove.
* `narya retention run` performs the sweep.
* `narya purge <session-id> --yes` removes one session and everything under it.
