# CLI Overview

> Understand what the Done Bear CLI covers, who it is for, and where to start.

Use the Done Bear CLI to sign in, pick a workspace, manage tasks, and automate common workflows from the terminal.

## Use it for

- Running day-to-day task workflows from a terminal
- Scripting with JSON, CSV, or TSV output
- Setting a default workspace and reusing it across commands
- Generating agent-friendly context with `spec` and `context`
- Importing data from Things 3 into Done Bear

## Install and verify

Install the published package:

```bash
npm install -g donebear
donebear --help
```

## Command groups

| Command         | Purpose                                                      | Example                                    |
| --------------- | ------------------------------------------------------------ | ------------------------------------------ |
| `auth`          | Sign in, create an account, inspect auth state, and sign out | `donebear auth signup --email you@…`       |
| `workspace`     | List, create, join, and target workspaces                    | `donebear workspace use personal`          |
| `task`          | Create and manage tasks and checklist items                  | `donebear task add "Fix bug" --when today` |
| `comment`       | Read and write a task's comments                             | `donebear comment 12 --json`               |
| `project`       | List and update projects                                     | `donebear project list --json`             |
| `label`         | List and inspect labels                                      | `donebear label list --json`               |
| `team`          | List and inspect teams                                       | `donebear team list --json`                |
| `today`         | Show the Today list                                          | `donebear today --json`                    |
| `search`        | Search tasks by title or description                         | `donebear search "launch"`                 |
| `history`       | Show recent workspace audit history                          | `donebear history --json`                  |
| `context`       | Output workspace context for scripts or agents               | `donebear context --markdown`              |
| `spec`          | Output machine-readable command reference                    | `donebear spec task add`                   |
| `api-key`       | Create, list, and revoke API keys                            | `donebear api-key create "CI"`             |
| `import things` | Import a Things 3 export                                     | `donebear import things --dry-run --json`  |

## Workspace targeting

Most commands use your current default workspace. Override it with `--workspace` or the `workspace=<slug>` prefix:

```bash
donebear workspace use personal
donebear task list

donebear --json task list --workspace personal
donebear workspace=personal task list --json
```

## Next steps

- Follow [Get started with the CLI](/cli/get-started) to install the CLI, sign in, and create your first task.
- Read [Automate with tokens, JSON, and context](/cli/automation) if you are writing scripts or agent workflows.
- Use [Command reference](/cli/commands) when you need the supported flags and command groups in one place.
- Follow [Import from Things 3](/cli/import-things) if you are migrating an existing database.

---

Every Done Bear page is listed at https://donebear.com/llms.txt. Any page has a markdown copy at its URL plus `.md`. Start from the map rather than guessing a path.
