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

# Getting Started

> Install and use the TesterArmy CLI (ta) - an agent-first control plane for managing projects, environments, and tests, and queueing runs in TesterArmy cloud.

`testerarmy` (alias `ta`) is an agent-first control plane for the TesterArmy dashboard. Use it to manage projects, environments, credentials, and saved tests, and to queue remote runs that execute in TesterArmy cloud. It works standalone for interactive use or as a skill for coding agents like Claude Code, Codex, and OpenCode.

Your coding agent orchestrates dashboard-managed QA to validate changes - keeping the feedback loop tight without polluting main agent context.

<video className="w-full rounded-lg border" controls autoPlay loop muted playsInline>
  <source src="https://assets.testerarmy.com/tester-army-cli.mp4" type="video/mp4" />
</video>

## Install

```bash theme={"theme":"vesper"}
npm install -g testerarmy
```

Or use without installing:

```bash theme={"theme":"vesper"}
npx testerarmy --help
```

Both `testerarmy` and `ta` map to the same CLI.

## Agent workflow

Agents can discover the full flow from `ta --help`. The usual path is:

```bash theme={"theme":"vesper"}
ta auth
echo '{"name":"Example","url":"https://example.com","projectType":"web"}' | ta projects create --json
ta projects list --json
ta projects environments-create <projectId> --name Staging --url https://staging.example.com --json
echo '{"category":"site_structure","title":"Auth route","content":"Login is at /login","importance":"high"}' | ta memories create --project <projectId> --json
ta memories delete <memoryId> --project <projectId> --json
echo '{"title":"Login flow","steps":[{"title":"Navigate to /login","type":"act"},{"title":"Dashboard loads","type":"assert"}]}' | ta tests create --project <projectId> --json
ta tests run <testId> --wait --json
ta tests run <testId> --env staging --wait --json
```

`ta tests run` queues a run in TesterArmy cloud. For development targets, save a reachable preview or tunnel URL as a project environment and select it with `--env`.

If something in TesterArmy itself breaks, misleads, or is missing, the agent can tell us directly. Reports go to the TesterArmy team, not to your project:

```bash theme={"theme":"vesper"}
ta feedback --type bug --message "tests run --env ignored" --task "Run smoke on staging" --expected "Run targets staging" --actual "Run targeted production" --tool "ta tests run" --json
```

`--type` is `bug`, `docs`, `feature`, or `other` (default). Run `ta feedback --help` for every field.

## Agent skill (recommended)

If you use a coding agent, install the official skill for tighter integration:

```bash theme={"theme":"vesper"}
npx skills add tester-army/cli
```

This gives your agent structured instructions for running tests, interpreting results, and iterating on failures.

Repository: [github.com/tester-army/cli](https://github.com/tester-army/cli)

## Authenticate

Run `ta auth` to sign in through your browser:

```bash theme={"theme":"vesper"}
ta auth
```

The CLI prints a one-time code and opens a sign-in page. Check that the code matches your terminal, sign in, and approve. If you belong to several workspaces, the CLI then asks which one to use. The CLI keeps you signed in and renews its access on its own; the session ends after 30 days without use.

The link is always printed too, so you can open it on another device. Over SSH the CLI does not try to open a browser; pass `--no-browser` to skip it anywhere else.

To pick the workspace up front, or to switch later without signing in again:

```bash theme={"theme":"vesper"}
ta auth --team my-workspace
```

`--team` takes the workspace's slug, ID, or name.

Coding agents and other tools that run the CLI without an interactive terminal use `--device`. It prints the link and code as plain lines, then waits for someone to approve. Combine it with `--team` when the account has several workspaces:

```bash theme={"theme":"vesper"}
ta auth --device --team my-workspace
```

`ta signout` ends the session and removes it from `~/.config/testerarmy/config.json`.

### Use an API key instead

For CI, or anywhere nobody can approve a browser sign-in, use an API key. Create one in the TesterArmy dashboard under **Settings → API Keys**; a key belongs to one workspace. Pass it directly, or run `ta auth --api-key` without a value to paste it into a hidden prompt:

```bash theme={"theme":"vesper"}
ta auth --api-key YOUR_KEY
```

Or set it as an environment variable, which takes precedence over a stored sign-in:

```bash theme={"theme":"vesper"}
export TESTERARMY_API_KEY="YOUR_KEY"
```

For API key troubleshooting and Bearer token examples, see [API Keys](/auth/api-keys).

## Verify

```bash theme={"theme":"vesper"}
ta status
```

Use `--json` for machine-readable output:

```bash theme={"theme":"vesper"}
ta status --json
```

## Sign out

```bash theme={"theme":"vesper"}
ta signout
# or
ta logout
```

## Connect your editor

Working in Cursor, VS Code, Windsurf, Claude Code, Codex, or another agent
add-mcp supports? One command writes the hosted [MCP server](/cli/mcp) into
every coding agent it finds, so your agent can create tests, start runs, and
read failures without leaving the editor:

```bash theme={"theme":"vesper"}
npx add-mcp --global --name testerarmy https://tester.army/mcp
```

## Next steps

<CardGroup cols={2}>
  <Card title="Local Development" icon="laptop-code" iconType="duotone" href="/cli/local-dev">
    Test dev changes through a preview or tunnel URL.
  </Card>

  <Card title="Agentic Usage" icon="robot" iconType="duotone" href="/cli/agentic-usage">
    Give your coding agent the CLI and let it create projects, memories, tests, and runs.
  </Card>

  <Card title="Environments" icon="globe" iconType="duotone" href="/guides/environments">
    Create stable staging or QA targets for remote runs.
  </Card>

  <Card title="Command Reference" icon="list" iconType="duotone" href="/cli/commands">
    Every command and its key flags.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.