Metadata-Version: 2.4
Name: thefluxtrain-cli
Version: 0.1.22
Summary: Command-line interface for TheFluxTrain APIs
Author-email: Saquib Alam <saquib764@gmail.com>
Requires-Python: >=3.12
Description-Content-Type: text/markdown
Requires-Dist: click>=8.1
Requires-Dist: httpx>=0.27
Requires-Dist: pyyaml>=6.0
Requires-Dist: pydantic>=2.0

# thefluxtrain-cli

Command-line interface for [TheFluxTrain](https://thefluxtrain.com) APIs.

## Install

```bash
pip install thefluxtrain-cli
# or
uv tool install thefluxtrain-cli
```

## Commands

```bash
tft login      # Device-code sign-in via thefluxtrain.com
tft logout     # Clear local credentials and local CLI data
tft sync       # Refresh the CLI command list
tft whoami     # Show logged-in user and API key id
tft commands   # List all available API commands
```

## Quick start

```bash
tft login
tft commands
tft whoami
```

## How login works

1. `tft login` requests a device code from the API.
2. Open **https://thefluxtrain.com/cli/authorize** and sign in if needed.
3. Enter the code from your terminal and click **Authorize CLI**.
4. The CLI stores an API key in `~/.config/thefluxtrain/credentials.json`.
5. The CLI command list is refreshed automatically after login.

## Command list refresh

The CLI keeps its command list and help text up to date automatically. Run `tft sync` to refresh manually, then use `tft commands` and `tft <group> <command> --help` to discover what is available.
