Metadata-Version: 2.4
Name: hivepods-cli
Version: 0.1.0
Summary: Command line interface for DockHive / HivePods
Author: DockHive
License: MIT
Project-URL: Homepage, https://github.com/DockHive/hive-cli
Project-URL: Issues, https://github.com/DockHive/hive-cli/issues
Keywords: dockhive,hivepods,cli,pods,environments,cloud
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Utilities
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: click>=8.1
Requires-Dist: requests>=2.31
Requires-Dist: websockets>=12.0
Requires-Dist: PyYAML>=6.0
Requires-Dist: rich>=13.0
Provides-Extra: test
Requires-Dist: pytest>=7; extra == "test"

# HivePods

Your own cloud dev environment, ready in seconds. Pick an operating system,
choose how much power you need, and you're in — right from your terminal.

```bash
hivepod create web1     # a quick wizard: name it, pick an OS + size
hivepod connect web1    # you're in a shell
```

## Install

```bash
pipx install hivepods-cli      # recommended — keeps hivepod on its own
# or
pip install hivepods-cli
```

## Get started

```bash
hivepod login           # opens your browser to sign in
hivepod create          # short wizard: name, OS, size
hivepod connect myenv   # open a shell in your environment
hivepod list            # see everything you're running
```

`hivepod login` signs you in through the browser. On a machine with no browser,
use `hivepod login --no-browser` for email and password instead.

No servers to manage, no setup. Each environment gets its own address
(`myenv.dockhive.sh`), so whatever you run inside is reachable.

## Everyday commands

```bash
hivepod create                       # interactive: OS, size (or custom CPU/RAM/disk), region
hivepod create api --os ubuntu-24.04 --size small    # or one-liner

hivepod connect api                  # interactive shell
hivepod exec api "npm test"          # run a single command
hivepod logs api -f                  # follow live logs

hivepod stop api                     # pause (your data stays)
hivepod start api                    # resume
hivepod restart api
hivepod rm api                       # delete

hivepod list                         # what you have
hivepod status api                   # details + live CPU/RAM

hivepod env api PORT=3000 --unset DEBUG   # change environment variables
hivepod apply api                    # use them (recreates the environment; data/ and projects/ are kept)

hivepod backup create api            # back up the data/ and projects/ folders
hivepod backup list
hivepod backup restore <backup-id> api-copy   # a NEW environment from a backup
```

Anywhere a command takes a name, you can pass the environment's id instead.
`start`, `stop`, `restart`, `suspend`, `resume`, `apply`, `rm`, `backup create`
and `backup restore` wait until the work is done; add `--no-wait` to return
straight away.

`hivepod connect` works on macOS, Linux and Windows (Windows Terminal or the
Windows 10+ console).

## Operating systems

Ubuntu, Debian, Fedora, Alpine, Arch, Rocky and more run as fast, lightweight
environments. **Windows** and **FreeBSD** run as full machines — reach those
through the built-in web console (or RDP for Windows) instead of a shell.

```bash
hivepod os              # everything you can launch
```

## Sizes

Pick a preset, or set your own:

| Size | vCPU | RAM | Disk |
|------|------|-----|------|
| nano | 0.5 | 512 MB | 5 GB |
| micro | 1 | 1 GB | 10 GB |
| small | 2 | 2 GB | 25 GB |
| medium | 4 | 4 GB | 50 GB |
| custom | your call | your call | your call |

## Settings

```bash
hivepod config set default_size small   # your default when you don't pick one
hivepod config list
```

## Help

```bash
hivepod --help
hivepod <command> --help
```
