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

# Interface de Linha de Comando (CLI sanalytics)

O **`sanalytics`** é a ferramenta oficial de linha de comando para gerenciar todo o ciclo de vida das suas funções no Analytics Lab: criação de templates locais, autenticação, execução de testes no sandbox e deploy de versões de produção.

***

## 💻 Instalação e Configuração

### 1. Criar Atalho no Sistema (`install`)

Para utilizar o comando `sanalytics` globalmente no seu terminal:

```bash theme={null}
sanalytics install
```

<Tip>
  Este comando cria um link simbólico no diretório `/usr/local/bin` para que você possa executar `sanalytics` a partir de qualquer pasta.
</Tip>

### 2. Autenticação (`login`)

Autentique seu CLI informando o token da sua conta/projeto:

```bash theme={null}
sanalytics login <SEU_TOKEN_DO_PROJETO>
```

***

## 📋 Comandos Disponíveis

### `sanalytics create`

Inicializa uma nova função no Analytics Lab e gera a estrutura de arquivos no diretório local.

```bash theme={null}
sanalytics create -name "Minha Função" -slug "minha-funcao" -runtime "node22" -lang "js" -dir "minha-funcao"
```

**Parâmetros disponíveis:**

* `-name`: Nome amigável da função (ex: `"Google Ads Ingestion"`).
* `-slug`: Identificador único em formato slug (ex: `"google-ads-ingestion"`).
* `-runtime`: Runtime da função (`node22` ou `python3.12`).
* `-lang`: Linguagem do template (`js` ou `python`).
* `-dir` ou `-path`: Subpasta local onde os arquivos serão gerados.
* `-entrypoint`: Ponto de entrada (ex: `index.js:handler` ou `main.py:handler`).
* `-mode`: Modo de execução (`async` ou `sync`).
* `-memory`: Limite de memória em MB (ex: `512`).
* `-timeout`: Timeout de execução em ms (ex: `30000`).

***

### `sanalytics test`

Executa o código local diretamente no ambiente sandbox do Lab sem criar uma versão de produção no banco.

```bash theme={null}
# Executando de dentro da pasta da função
sanalytics test

# Ou especificando a pasta
sanalytics test -path ./minha-funcao
```

<Tip>
  O comando `test` compacta seus arquivos locais, transfere para o sandbox do Lab, instala as dependências declaradas e executa o handler exibindo tempo de cold start, duração e saída no console.
</Tip>

***

### `sanalytics deploy`

Empacota o código-fonte local e publica uma nova versão oficial (`v1`, `v2`, etc.) da função no Analytics Lab.

```bash theme={null}
sanalytics deploy
```

***

### `sanalytics fn-list` (ou `list`)

Lista todas as funções cadastradas no seu projeto.

```bash theme={null}
sanalytics fn-list
```

***

### `sanalytics versions`

Exibe o histórico de versões publicadas de uma função, indicando qual versão está atualmente ativa.

```bash theme={null}
sanalytics versions
```

***

### `sanalytics rollback`

Restaura uma versão anterior publicada da função de forma instantânea.

```bash theme={null}
sanalytics rollback -version 1
```

***

### `sanalytics download`

Baixa o código-fonte de uma função já existente no Lab para o diretório local.

```bash theme={null}
sanalytics download -function <SLUG_OU_ID>
```
