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

# CLI

> The eversince command: sign in, connect agents, call any tool, move files and follow jobs from a shell.

```bash theme={"dark"}
npm install -g eversince
```

The CLI is the REST API from a shell. Every command serves two callers, a user and an agent running commands for them. `--json` gives machine-readable output on success and on failure.

## Signing in and connecting

```
eversince login                    sign in through the browser
eversince login --key es_live_…    or with an API key, for CI
eversince logout
eversince status
eversince init                     connect the agents on this computer
eversince init --agent codex       one agent: claude-code, codex, cursor, vscode, claude-desktop, other
eversince mcp --agent <agent>      the desktop app as a stdio MCP server; init writes this into the agent's settings
```

With the Eversince desktop app on the computer, commands go through the app and the work it does is free, and `init` connects agents through the app rather than the cloud. The app opens if it is closed. `--cloud`, `--base-url`, `--workspace`, `ES_API_KEY` or `ES_BASE_URL` keep a command on the cloud, which requires `eversince login`.

## Working

```
eversince tools [name]             what this workspace can do, live
eversince run <tool> '<json>'      call any tool; --wait follows a job to the end
eversince run <tool> -             arguments from stdin
eversince upload <files|folder>    local files into the library
eversince download <refs…>         library items onto disk
eversince jobs <ids…>              check jobs; --wait follows them
eversince jobs cancel <ids…>
eversince workspace [use <name>]   which workspace the CLI works in
```

## Options

|                           |                                                                                                                                |
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `--json`                  | machine-readable output, on success and failure                                                                                |
| `--wait`                  | follow a job to completion                                                                                                     |
| `--timeout <seconds>`     | ceiling on a request, and on `--wait` (default 1800)                                                                           |
| `--out <dir>`             | where downloads land, and where a tool's pictures are written                                                                  |
| `--describe <text>`       | description for an upload                                                                                                      |
| `--enrich`                | describe and tag each image upload, using cloud processing                                                                     |
| `--concurrency <n>`       | parallel uploads (default 3, max 8)                                                                                            |
| `--workspace <id>`        | work in this workspace, this once                                                                                              |
| `--idempotency-key <key>` | the key for a charged call                                                                                                     |
| `--cloud`                 | talk to eversince.ai instead of the desktop app; `"run_on": "cloud"` in the input has the app's work done in the cloud instead |
| `--debug`                 | print each request and response                                                                                                |

Environment variables: `ES_API_KEY`, `ES_WORKSPACE`, `ES_BASE_URL`, `ES_DEBUG=1`.

Credentials are stored per deployment, in the system keychain where there is one. The CLI's sign-in is separate from an agent's connection: connecting or disconnecting an agent leaves it alone, and signing out leaves the agent working.

`eversince tools` opens with the operating instructions for whichever it is talking to, the app or the cloud, so a script reads the same rules an MCP agent does.
