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

# CLI Overview

Use the ScreenFramed CLI for local captures, batch jobs, authenticated sessions, projects, and async job inspection.

The CLI wraps the public API for local and CI workflows. Use it when you want files on disk, repeatable docs refreshes, authenticated browser sessions, batch captures, or watch-mode previews.

## Install

```bash
npm install -g @screenframed/cli
```

Or run with `npx`:

```bash
npx @screenframed/cli login
```

## Commands

| Command | Purpose |
|---|---|
| `screenframed login` | Authenticate the CLI with a browser device code flow. |
| `screenframed status` | Show local CLI auth status. |
| `screenframed logout` | Remove the stored CLI credential. |
| `screenframed capture` | Create a styled screenshot. |
| `screenframed raw` | Download a raw browser screenshot. |
| `screenframed batch` | Capture multiple URLs from a text file. |
| `screenframed watch` | Re-render a URL on an interval while developing. |
| `screenframed jobs status` | Inspect async job status. |
| `screenframed projects ...` | Manage projects and signing secrets. |
| `screenframed auth ...` | Manage authenticated browser sessions. |

## Environment

```bash
export SCREENFRAMED_API_KEY="sf_live_..."
export SCREENFRAMED_API_BASE_URL="https://screenframed.com"
```

`SCREENFRAMED_API_BASE_URL` is optional and mainly useful for non-production environments.

## Local config

After `screenframed login`, credentials are stored in `~/.screenframed.json`. You can also place a `.screenframed.json` in the current working directory for project-specific configuration.

For CI, prefer `SCREENFRAMED_API_KEY` or `--api-key` instead of an interactive login.