> ## 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.

# Rodar o Narya

> Comece o host, instale-o como serviço de login, gerencie sessões e checkpoints e verifique a saúde da sua instalação.

O Narya se divide entre um host e seus clientes. O host é dono do armazenamento, das sessões e das conexões com os modelos. Um cliente envia uma mensagem e lê o resultado pelo socket local. Um cliente interativo começa um host quando nenhum host responde, e depois o conduz pela mesma API HTTP que todos os outros clientes.

## O host

***

<Steps>
  <Step title="Comece o host">
    Rode `narya host start`. O host toma o lock do armazenamento e escuta no socket dentro da sua pasta Narya.
  </Step>

  <Step title="Verifique">
    Rode `narya host status`. Ele informa o host que encontrou e o que esse host serve.
  </Step>

  <Step title="Pare o host">
    Rode `narya host stop`. O host termina as requisições em andamento e depois solta o lock do armazenamento.
  </Step>
</Steps>

## Manter o host vivo entre logins

***

O `narya daemon install` grava um serviço de login e o carrega. No macOS ele grava um LaunchAgent que roda `narya host start` no carregamento e o reinicia. No Linux ele grava uma unit systemd de usuário que reinicia em caso de falha. O Narya grava a unit com permissões `0600`. Ele define `NARYA_HOME` dentro da unit em vez de herdar o valor.

O `narya daemon status` responde três perguntas em separado: registrado, carregado e servindo. O `narya daemon uninstall` remove a unit e nada mais. Suas sessões, seu armazenamento e sua configuração continuam.

O host e cada sessão dentro dele sobrevivem a um terminal fechado. Um `narya -p` posterior se conecta ao host em execução em vez de abrir o armazenamento por conta própria.

<Note>
  O `narya daemon install` é o único comando que grava uma unit de serviço. Nada mais no Narya grava uma.
</Note>

## Sessões

***

Cada sessão se liga a um caminho de repositório. Retome uma com `narya -s <session-id>` ou com `narya -p --session <session-id>`.

* O `narya session list` lista as sessões no armazenamento.
* O `narya export <session-id>` grava uma transcrição na saída padrão. Escolha `--format markdown` ou `--format jsonl`. Adicione `--reasoning` e `--tool-output` para mais detalhe.
* O `narya import <file> --repository <absolute path>` lê uma transcrição de outra ferramenta. Defina `--format claudecode` ou `--format opencode`.
* O `narya session promote <session-id>` marca a sessão como acompanhada.

## Checkpoints e rebobinagens

***

O Narya registra pontos de restauração da sua árvore de trabalho em um repositório git sombra ao lado do seu checkout. Seu próprio histórico git nunca muda. Nenhum temporizador remove um checkpoint.

Uma rebobinagem leva uma sessão para trás na conversa, nos arquivos, ou em ambos. Diga o escopo, porque ele não tem padrão. Uma rebobinagem sempre ramifica e nunca apaga. O Narya primeiro registra a árvore como ela está, então o estado que você deixa vira um ponto de restauração próprio.

## Saúde e reparo

***

O `narya doctor` percorre a instalação e informa o que encontra:

* a pasta raiz e a configuração
* o host e o armazenamento
* as sessões e os servidores de ferramentas
* as credenciais
* o binário e o terminal

Ele não repara nada. Cada achado nomeia o comando que o corrige.

O `narya repair <session-id>` é a saída de uma quarentena. Um desligamento sujo deixa uma sessão para recuperação, e esse comando a solta. Adicione `--retire` para fechar a sessão em vez disso.

## Retenção

***

O Narya guarda tudo até você dizer o contrário. Defina uma idade máxima por classe em `[retention]` no `config.toml`.

* O `narya retention status` informa o que uma varredura removeria.
* O `narya retention run` faz a varredura.
* O `narya purge <session-id> --yes` remove uma sessão e tudo abaixo dela.
