Skip to main content

minitest-cli

Command-line interface for the Minitest testing platform for mobile and web apps.

Installation

One-liner (recommended)

macOS / Linux:

curl -fsSL https://raw.githubusercontent.com/minitap-ai/minitest-cli/main/install.sh | bash

Windows (PowerShell):

powershell -ExecutionPolicy ByPass -c "irm https://raw.githubusercontent.com/minitap-ai/minitest-cli/main/install.ps1 | iex"

Both scripts use uv if available, or install it automatically.

Other methods

uv (all platforms):

uv tool install minitest-cli

Homebrew (macOS):

brew install minitap-ai/tap/minitest-cli

uvx (zero-install, all platforms):

uvx --from minitest-cli minitest --help

From source:

git clone https://github.com/minitap-ai/minitest-cli.git
cd minitest-cli
uv sync
uv run minitest --help

Quick Start

# Authenticate
minitest auth login

# List your apps
minitest apps list

# Create a new app on your tenant
minitest apps create --name "My Mobile App" --platform ios --platform android

# Or create a web app target
minitest apps create --name "My Web App" --platform web --web-url https://example.com

# Upload native builds when testing iOS/Android apps
minitest --app <app-id> build upload ./app-release.apk

# Run tests
minitest --app <app-id> run all --web
# or, for native lanes:
minitest --app <app-id> run all --ios-build <ios-build-id> --android-build <android-build-id>

Configuration

Environment Variable Description Required
MINITEST_TOKEN API authentication token Yes (or use minitest auth login)
MINITEST_APP_ID Default app ID No (can use --app flag)
MINITEST_API_URL testing-service base URL No (defaults to production)
MINITEST_APPS_MANAGER_URL apps-manager base URL (used by minitest apps create) No (defaults to production)
MINITEST_INTEGRATIONS_URL minihands-integrations base URL (used to list tenants) No (defaults to production)
MINITEST_WEBAPP_URL Minitest webapp base URL (used for review links) No (defaults to production)
MINITEST_SUPABASE_URL Supabase project URL used for OAuth login No (defaults to production)
MINITEST_SUPABASE_PUBLISHABLE_KEY Supabase publishable (anon) key used for OAuth login No (defaults to production)

The recommended way to set these is to copy .env.example to .env — the CLI loads .env automatically. The shipped .env.example already targets the dev environment (see below).

Global Flags

Flag Description
--json Output JSON to stdout (diagnostics go to stderr)
--app <id-or-name> Target app for commands that require one
--version Show CLI version
--help Show help

Commands

Command Description
minitest auth Authentication management
minitest apps App management
minitest user-story User-story operations
minitest build Native iOS/Android build management
minitest run Test execution for mobile and web lanes
minitest maintenance CLI-only test-flow maintenance against local code

CLI-only maintenance

minitest maintenance lets a coding agent keep Minitest user stories in sync without connecting GitHub. Run it from the app repository: the code stays on the machine, while the CLI sends only proposed test-flow edits and the local HEAD SHA.

# Print the server-composed maintenance instructions for your coding agent
minitest maintenance --agent

# Agent workflow primitives
minitest --json maintenance context
minitest maintenance affected --file affected.json
minitest maintenance change --file change.json
minitest maintenance status --phase writing --message "Updating affected stories"
minitest maintenance complete --changed

# Apply proposed edits now, or open the web review queue
minitest maintenance apply
minitest maintenance apply --review

Exit Codes

Code Meaning
0 Success
1 General error
2 Authentication error
3 Network / API error
4 Resource not found

Using the Dev Environment

The shipped .env.example already targets the dev environment, so pointing the CLI at dev is just a matter of loading it. Copy it to .env once:

cp .env.example .env

The CLI loads .env automatically, so every command now runs against dev — no per-command environment variables needed:

minitest auth login      # authenticates against dev, stores a dev-specific token
minitest apps list       # runs against dev

To target production instead, either omit the .env file (the built-in defaults point at production) or comment out the dev values and uncomment the # Production lines in your .env.

Tip: You can still override any single variable inline for a one-off command, e.g. MINITEST_API_URL=https://testing-service.dev.minitap.ai minitest apps list.

Development

# Install dependencies
uv sync --dev

# Run linter
uv run ruff check .

# Run formatter
uv run ruff format .

# Run type checker
uv run pyright

# Run tests
uv run pytest

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

minitest_cli-0.20.0.tar.gz (147.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

minitest_cli-0.20.0-py3-none-any.whl (126.4 kB view details)

Uploaded Python 3

File details

Details for the file minitest_cli-0.20.0.tar.gz.

File metadata

  • Download URL: minitest_cli-0.20.0.tar.gz
  • Upload date:
  • Size: 147.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for minitest_cli-0.20.0.tar.gz
Algorithm Hash digest
SHA256 bc7a561e521f7127888be5e7b66b742cce1280242e0752b56190b82060433b9e
MD5 1dd52ce9e36f0903917c591625b43133
BLAKE2b-256 d258f5ced6b0c1e2338b037e85f93624ee8f50ce3b0623112091bb87ecd606ab

See more details on using hashes here.

Provenance

The following attestation bundles were made for minitest_cli-0.20.0.tar.gz:

Publisher: release.yml on minitap-ai/minitest-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file minitest_cli-0.20.0-py3-none-any.whl.

File metadata

  • Download URL: minitest_cli-0.20.0-py3-none-any.whl
  • Upload date:
  • Size: 126.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for minitest_cli-0.20.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cbba80e5f17843eb9e7ff7299af2efe88d933f15899c4698292ad728c1d86b89
MD5 4798ff9c7066d9d76322ded62e5e97c8
BLAKE2b-256 e8174276123327e533ceef4546e60476cf7f6e83963ecf06493b855e6b658999

See more details on using hashes here.

Provenance

The following attestation bundles were made for minitest_cli-0.20.0-py3-none-any.whl:

Publisher: release.yml on minitap-ai/minitest-cli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.25.2

2 files

0.25.1

2 files

0.25.0

2 files

0.24.0

2 files

0.23.1

2 files

0.23.0

2 files

0.22.0

2 files

0.21.0

2 files

This release

0.20.0 This release

2 files

0.19.0

2 files

0.18.0

2 files

0.17.2

2 files

0.17.1

2 files

0.17.0

2 files

0.16.3

2 files

0.16.2

2 files

0.16.1

2 files

0.16.0

2 files

0.15.0

2 files

0.14.0

2 files

0.13.0

2 files

0.12.0

2 files

0.11.1

2 files

0.10.1

2 files

0.10.0

2 files

0.9.1

2 files

0.9.0

2 files

0.8.3

2 files

0.8.2

2 files

0.8.1

2 files

0.8.0

2 files

0.7.0

2 files

0.6.0

2 files

0.5.1

2 files

0.5.0

2 files

0.4.5

2 files

0.4.4

2 files

0.4.3

2 files

0.4.2

2 files

0.4.1

2 files

0.4.0

2 files

0.3.0

2 files

0.2.0

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page