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

# CLI Commands Overview

> Complete reference for all Base44 CLI commands

<Note>
  The backend service and CLI are currently in beta. We're actively improving the platform and documentation based on user feedback. Share your thoughts and feature requests on our [GitHub Discussions page](https://github.com/orgs/base44/discussions).
</Note>

The Base44 CLI provides commands for authentication, project management, and syncing resources with your Base44 backend.

## Command overview

| Command                                                                          | Description                                                   |
| -------------------------------------------------------------------------------- | ------------------------------------------------------------- |
| [`agents pull`](/developers/references/cli/commands/agents-pull)                 | Pull agent configurations from Base44 to local files          |
| [`agents push`](/developers/references/cli/commands/agents-push)                 | Push local agent configurations to Base44                     |
| [`auth password-login`](/developers/references/cli/commands/auth-password-login) | Enable or disable username and password login in local config |
| [`auth social-login`](/developers/references/cli/commands/auth-social-login)     | Enable or disable social login providers in local config      |
| [`auth pull`](/developers/references/cli/commands/auth-pull)                     | Pull auth config from Base44 to your local project            |
| [`auth push`](/developers/references/cli/commands/auth-push)                     | Push local auth config to Base44                              |
| [`connectors pull`](/developers/references/cli/commands/connectors-pull)         | Pull connector configurations from Base44 to local files      |
| [`connectors push`](/developers/references/cli/commands/connectors-push)         | Push local connector configurations to Base44                 |
| [`create`](/developers/references/cli/commands/create)                           | Create a new Base44 project from a template                   |
| [`dashboard open`](/developers/references/cli/commands/dashboard-open)           | Open the app dashboard in your browser                        |
| [`deploy`](/developers/references/cli/commands/deploy)                           | Deploy all project resources to Base44                        |
| [`dev`](/developers/references/cli/commands/dev)                                 | Start a local development server                              |
| [`eject`](/developers/references/cli/commands/eject)                             | Clone an existing Base44 app into a separate local project    |
| [`entities push`](/developers/references/cli/commands/entities-push)             | Push local entity schemas to Base44                           |
| [`exec`](/developers/references/cli/commands/exec)                               | Run a script with the Base44 SDK pre-authenticated            |
| [`functions delete`](/developers/references/cli/commands/functions-delete)       | Delete one or more deployed backend functions                 |
| [`functions deploy`](/developers/references/cli/commands/functions-deploy)       | Deploy local functions to Base44                              |
| [`functions list`](/developers/references/cli/commands/functions-list)           | List all deployed backend functions                           |
| [`functions pull`](/developers/references/cli/commands/functions-pull)           | Download deployed functions to your local project             |
| [`link`](/developers/references/cli/commands/link)                               | Link a local project to a backend project on Base44           |
| [`login`](/developers/references/cli/commands/login)                             | Authenticate with Base44                                      |
| [`logout`](/developers/references/cli/commands/logout)                           | Sign out and clear stored credentials                         |
| [`logs`](/developers/references/cli/commands/logs)                               | View function logs                                            |
| [`secrets delete`](/developers/references/cli/commands/secrets-delete)           | Delete one or more project secrets                            |
| [`secrets list`](/developers/references/cli/commands/secrets-list)               | List project secrets                                          |
| [`secrets set`](/developers/references/cli/commands/secrets-set)                 | Set one or more project secrets                               |
| [`site deploy`](/developers/references/cli/commands/site-deploy)                 | Deploy built site files to Base44 hosting                     |
| [`site open`](/developers/references/cli/commands/site-open)                     | Open the deployed site in your browser                        |
| [`types generate`](/developers/references/cli/commands/types-generate)           | Generate TypeScript types from project resources              |
| [`whoami`](/developers/references/cli/commands/whoami)                           | Display the current authenticated user                        |

## Command syntax

All Base44 CLI commands follow this general syntax:

```bash theme={null}
base44 <command> [subcommand] [flags]
```

Where:

* `<command>` is the primary action (for example, `login`, `create`, `entities`)
* `[subcommand]` is an optional secondary action (for example, `entities push`)
* `[flags]` are optional parameters that modify the command's behavior

## Global flags

The following flags are available for all commands:

| Flag        | Description                              |
| ----------- | ---------------------------------------- |
| `--help`    | Display help information for any command |
| `--version` | Display the CLI version                  |

## Authentication requirements

Most commands require authentication. Use [`base44 login`](/developers/references/cli/commands/login) to authenticate before running commands like `create` or `entities push`.

Commands that don't require authentication:

* `login`
* `logout`
* `types generate`

## See also

* [CLI Overview](/developers/references/cli/get-started/overview): Introduction to the Base44 CLI
* [Quickstart - Backend only](/developers/backend/quickstart/templates/quickstart-backend-only): Create your first backend-only project
* [Quickstart - React](/developers/backend/quickstart/templates/quickstart-react-template): Build a full-stack React app
* [Start from an existing Base44 app](/developers/backend/overview/start-from-existing-app): Clone an existing project
