---
title: CLI
description: Aprenda a usar o CLI do CrewAI para interagir com o CrewAI.
icon: terminal
mode: "wide"
---

<Warning>
  A partir da versão 0.140.0, a plataforma CrewAI AMP iniciou um processo de
  migração de seu provedor de login. Como resultado, o fluxo de autenticação via
  CLI foi atualizado. Usuários que utlizam o Google para fazer login, ou que
  criaram conta após 3 de julho de 2025 não poderão fazer login com versões
  anteriores da biblioteca `crewai`.
</Warning>

## Visão Geral

O CLI do CrewAI fornece um conjunto de comandos para interagir com o CrewAI, permitindo que você crie, treine, execute e gerencie crews & flows.

## Instalação

Para usar o CLI do CrewAI, certifique-se de que o CrewAI está instalado:

```shell Terminal
pip install crewai
```

## Uso Básico

A estrutura básica de um comando CLI do CrewAI é:

```shell Terminal
crewai [COMMAND] [OPTIONS] [ARGUMENTS]
```

## Comandos Disponíveis

### 1. Create

Crie um novo crew ou flow.

```shell Terminal
crewai create [OPTIONS] TYPE NAME
```

- `TYPE`: Escolha entre "crew" ou "flow"
- `NAME`: Nome do crew ou flow

Exemplo:

```shell Terminal
crewai create crew my_new_crew
crewai create flow my_new_flow
```

Por padrão, `crewai create crew` cria um projeto JSON-first com `crew.jsonc` e `agents/*.jsonc`. Use `crewai create crew my_new_crew --classic` somente quando quiser o scaffold antigo em Python/YAML com `crew.py`, `config/agents.yaml` e `config/tasks.yaml`.

#### Aliases de flags obsoletas

As flags antigas em snake_case ainda funcionam, mas ficam ocultas no `--help`. Prefira as formas em kebab-case documentadas em cada seção de comando abaixo.

| Obsoleto | Use em vez disso |
| :--- | :--- |
| `--skip_provider` (em `crewai create crew`) | `--skip-provider` |
| `--n_iterations` (em `crewai train`, `crewai test`) | `--n-iterations` |
| `--task_id` (em `crewai replay`) | `--task-id` |

### 2. Version

Mostre a versão instalada do CrewAI.

```shell Terminal
crewai version [OPTIONS]
```

- `--tools`: (Opcional) Mostra a versão instalada das ferramentas do CrewAI

Exemplo:

```shell Terminal
crewai version
crewai version --tools
```

### 3. Train

Treine o crew por um número específico de iterações.

```shell Terminal
crewai train [OPTIONS]
```

- `-n, --n-iterations INTEGER`: Número de iterações para treinar o crew (padrão: 5)
- `-f, --filename TEXT`: Caminho para um arquivo customizado para treinamento (padrão: "trained_agents_data.pkl")

Exemplo:

```shell Terminal
crewai train -n 10 -f my_training_data.pkl
```

```python
# Exemplo de uso programático do comando train
n_iterations = 2
inputs = {"topic": "Treinamento CrewAI"}
filename = "seu_modelo.pkl"

try:
    SuaCrew().crew().train(
      n_iterations=n_iterations,
      inputs=inputs,
      filename=filename
    )
except Exception as e:
    raise Exception(f"Ocorreu um erro ao treinar a crew: {e}")
```

### 4. Replay

Reexecute a execução do crew a partir de uma tarefa específica.

```shell Terminal
crewai replay [OPTIONS]
```

- `-t, --task-id TEXT`: Reexecuta o crew a partir deste task ID, incluindo todas as tarefas subsequentes

Exemplo:

```shell Terminal
crewai replay -t task_123456
```

### 5. Log-tasks-outputs

Recupere as saídas mais recentes das tarefas crew.kickoff() do seu crew.

```shell Terminal
crewai log-tasks-outputs
```

### 6. Reset-memories

Redefine as memórias do crew (longa, curta, de entidades, latest_crew_kickoff_outputs).

```shell Terminal
crewai reset-memories [OPTIONS]
```

- `-l, --long`: Redefine a memória de LONGO PRAZO
- `-s, --short`: Redefine a memória de CURTO PRAZO
- `-e, --entities`: Redefine a memória de ENTIDADES
- `-k, --kickoff-outputs`: Redefine as OUTPUTS DA TAREFA KICKOFF MAIS RECENTE
- `-kn, --knowledge`: Redefine o armazenamento de CONHECIMENTO
- `-akn, --agent-knowledge`: Redefine o armazenamento de CONHECIMENTO DOS AGENTES
- `-a, --all`: Redefine TODAS as memórias

Exemplo:

```shell Terminal
crewai reset-memories --long --short
crewai reset-memories --all
```

### 7. Test

Teste o crew e avalie os resultados.

```shell Terminal
crewai test [OPTIONS]
```

- `-n, --n-iterations INTEGER`: Número de iterações para testar o crew (padrão: 3)
- `-m, --model TEXT`: Modelo LLM para executar os testes no Crew (padrão: "gpt-4o-mini")

Exemplo:

```shell Terminal
crewai test -n 5 -m gpt-3.5-turbo
```

### 8. Run

Execute o crew ou flow.

```shell Terminal
crewai run
```

<Note>
  A partir da versão 0.103.0, o comando `crewai run` pode ser usado para
  executar tanto crews padrão quanto flows. Para flows, ele detecta
  automaticamente o tipo a partir do pyproject.toml e executa o comando
  apropriado. Este é agora o modo recomendado de executar tanto crews quanto
  flows.
</Note>

<Note>
  Certifique-se de executar estes comandos a partir do diretório onde seu
  projeto CrewAI está configurado. Alguns comandos podem exigir configuração ou
  ajustes adicionais dentro da estrutura do seu projeto.
</Note>

### 9. Chat

A partir da versão `0.98.0`, ao rodar o comando `crewai chat`, você inicia uma sessão interativa com seu crew. O assistente de IA irá guiá-lo solicitando as entradas necessárias para executar o crew. Uma vez que todas as entradas são fornecidas, o crew executará suas tarefas.

Depois de receber os resultados, você pode continuar interagindo com o assistente para instruções ou perguntas adicionais.

```shell Terminal
crewai chat
```

<Note>
Garanta que você execute estes comandos a partir do diretório raiz do seu projeto CrewAI.
</Note>
<Note>
IMPORTANTE: Defina a propriedade `chat_llm` na definição da sua crew para habilitar este comando.

Para crews JSON-first, adicione em `crew.jsonc`:

```jsonc
{
  "name": "My Crew",
  "agents": ["researcher"],
  "tasks": [],
  "chat_llm": "openai/gpt-4o"
}
```

Para crews clássicas Python/YAML, defina em `crew.py`:

```python
@crew
def crew(self) -> Crew:
    return Crew(
        agents=self.agents,
        tasks=self.tasks,
        process=Process.sequential,
        verbose=True,
        chat_llm="gpt-4o",  # LLM para orquestração de chat
    )
```

</Note>

### 10. Deploy

Implemente o crew ou flow no [CrewAI AMP](https://app.crewai.com).

- **Autenticação**: Você precisa estar autenticado para implementar no CrewAI AMP.
  Você pode fazer login ou criar uma conta com:

  ```shell Terminal
  crewai login
  ```

- **Criar um deployment**: Depois de autenticado, você pode criar um deployment para seu crew ou flow a partir da raiz do seu projeto local.
  ```shell Terminal
  crewai deploy create
  ```
  - Lê a configuração do seu projeto local.
  - Solicita a confirmação das variáveis de ambiente (como `OPENAI_API_KEY`, `SERPER_API_KEY`) encontradas localmente. Elas serão armazenadas de forma segura junto ao deployment na plataforma Enterprise. Verifique se suas chaves sensíveis estão corretamente configuradas localmente (por exemplo, em um arquivo `.env`) antes de executar este comando.

### 11. Gerenciamento de Organização

Gerencie suas organizações no CrewAI AMP.

```shell Terminal
crewai org [COMMAND] [OPTIONS]
```

#### Comandos:

- `list`: Liste todas as organizações das quais você faz parte

```shell Terminal
crewai org list
```

- `current`: Exibe sua organização ativa atualmente

```shell Terminal
crewai org current
```

- `switch`: Mude para uma organização específica

```shell Terminal
crewai org switch <organization_id>
```

<Note>
  Você deve estar autenticado no CrewAI AMP para usar estes comandos de
  gerenciamento de organização.
</Note>

- **Criar um deployment** (continuação):

  - Vincula o deployment ao respectivo repositório remoto do GitHub (normalmente detectado automaticamente).

- **Implantar o Crew**: Depois de autenticado, você pode implantar seu crew ou flow no CrewAI AMP.

  ```shell Terminal
  crewai deploy push
  ```

  - Inicia o processo de deployment na plataforma CrewAI AMP.
  - Após a iniciação bem-sucedida, será exibida a mensagem Deployment created successfully! juntamente com o Nome do Deployment e um Deployment ID (UUID) único.

- **Status do Deployment**: Você pode verificar o status do seu deployment com:

  ```shell Terminal
  crewai deploy status
  ```

  Isso retorna o status mais recente do último deployment iniciado (por exemplo, `Building Images for Crew`, `Deploy Enqueued`, `Online`).

- **Logs do Deployment**: Você pode checar os logs do seu deployment com:

  ```shell Terminal
  crewai deploy logs
  ```

  Isso faz o streaming dos logs do deployment para seu terminal.

- **Listar deployments**: Você pode listar todos os seus deployments com:

  ```shell Terminal
  crewai deploy list
  ```

  Isto lista todos os seus deployments.

- **Deletar um deployment**: Você pode deletar um deployment com:

  ```shell Terminal
  crewai deploy remove
  ```

  Isto exclui o deployment da plataforma CrewAI AMP.

- **Comando de Ajuda**: Você pode obter ajuda sobre o CLI com:
  ```shell Terminal
  crewai deploy --help
  ```
  Isto exibe a mensagem de ajuda para o CLI CrewAI Deploy.

Assista ao vídeo tutorial para uma demonstração passo-a-passo de implantação do seu crew no [CrewAI AMP](http://app.crewai.com) usando o CLI.

<iframe
  className="w-full aspect-video rounded-xl"
  src="https://www.youtube.com/embed/3EqSV-CYDZA"
  title="CrewAI Deployment Guide"
  frameBorder="0"
  allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
  allowFullScreen
></iframe>

### 11. Chaves de API

Ao executar o comando `crewai create crew`, o CLI mostrará provedores de LLM disponíveis e depois a seleção de modelo para o provedor escolhido. O modelo selecionado é salvo no `.env` gerado, e cada agente JSONC pode definir seu próprio `llm`.

Após selecionar um provedor de LLM, será solicitado que você informe as chaves de API.

#### Provedores iniciais de chave de API

Inicialmente, o CLI solicitará as chaves de API para os seguintes serviços:

- OpenAI
- Groq
- Anthropic
- Google Gemini
- SambaNova

Ao selecionar um provedor, o CLI solicitará que você insira sua chave de API.

#### Outras opções

Se você selecionar a opção 6, será possível escolher de uma lista de provedores suportados pelo LiteLLM.

Ao escolher um provedor, o CLI solicitará que você informe o nome da chave e a chave de API.

Veja o seguinte link para o nome de chave de cada provedor:

- [LiteLLM Providers](https://docs.litellm.ai/docs/providers)

### 12. Gerenciamento de Configuração

Gerencie as configurações do CLI para CrewAI.

```shell Terminal
crewai config [COMANDO] [OPÇÕES]
```

#### Comandos:

- `list`: Exibir todos os parâmetros de configuração do CLI

```shell Terminal
crewai config list
```

- `set`: Definir um parâmetro de configuração do CLI

```shell Terminal
crewai config set <chave> <valor>
```

- `reset`: Redefinir todos os parâmetros de configuração do CLI para valores padrão

```shell Terminal
crewai config reset
```

#### Parâmetros de Configuração Disponíveis

- `enterprise_base_url`: URL base da instância CrewAI AMP
- `oauth2_provider`: Provedor OAuth2 usado para autenticação (ex: workos, okta, auth0)
- `oauth2_audience`: Valor de audiência OAuth2, tipicamente usado para identificar a API ou recurso de destino
- `oauth2_client_id`: ID do cliente OAuth2 emitido pelo provedor, usado durante solicitações de autenticação
- `oauth2_domain`: Domínio do provedor OAuth2 (ex: sua-org.auth0.com) usado para emissão de tokens

#### Exemplos

Exibir configuração atual:

```shell Terminal
crewai config list
```

Exemplo de saída:

| Parâmetro           | Valor                  | Descrição                                                      |
| :------------------ | :--------------------- | :------------------------------------------------------------- |
| enterprise_base_url | https://app.crewai.com | URL base da instância CrewAI AMP                               |
| org_name            | Not set                | Nome da organização atualmente ativa                           |
| org_uuid            | Not set                | UUID da organização atualmente ativa                           |
| oauth2_provider     | workos                 | Provedor OAuth2 (ex.: workos, okta, auth0)                     |
| oauth2_audience     | client_01YYY           | Audience usada para identificar a API/recurso de destino       |
| oauth2_client_id    | client_01XXX           | Client ID OAuth2 emitido pelo provedor (usado na autenticação) |
| oauth2_domain       | login.crewai.com       | Domínio do provedor OAuth2 (ex.: your-org.auth0.com)           |

Definir a URL base do enterprise:

```shell Terminal
crewai config set enterprise_base_url https://minha-empresa.crewai.com
```

Definir provedor OAuth2:

```shell Terminal
crewai config set oauth2_provider auth0
```

Definir domínio OAuth2:

```shell Terminal
crewai config set oauth2_domain minha-empresa.auth0.com
```

Redefinir todas as configurações para padrões:

```shell Terminal
crewai config reset
```

<Note>
  As configurações são armazenadas em `~/.config/crewai/settings.json`. Algumas
  configurações como nome da organização e UUID são somente leitura e
  gerenciadas através de comandos de autenticação e organização. Configurações
  relacionadas ao repositório de ferramentas são ocultas e não podem ser
  definidas diretamente pelo usuário.
</Note>
