Metadata-Version: 2.4
Name: postie-cli
Version: 3.5.1
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: Other/Proprietary License
Classifier: Operating System :: MacOS
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Rust
Classifier: Topic :: Communications :: File Sharing
Classifier: Topic :: Utilities
Summary: Send files and text to your own devices from any terminal or AI agent.
Keywords: postie,file transfer,send to phone,cli,mcp,airdrop
Author: Xlon Labs
License: Proprietary
Requires-Python: >=3.8
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Homepage, https://postie.xlonlabs.com

# postie

Send files and text to your own devices (phone, tablet, laptop, browser) from any terminal, or from your AI coding agent. It's end-to-end encrypted, and goes over your Wi-Fi when the device is nearby.

## Install

1. **Install uv** (it puts `postie` on your PATH for you). Search "install uv" and paste the command astral.sh shows:

   | Platform | Command |
   |---|---|
   | Windows (PowerShell) | `winget install astral-sh.uv` |
   | Mac / Linux | `curl -LsSf https://astral.sh/uv/install.sh \| sh` |

2. In a **new terminal**:

   ```sh
   uv tool install postie-cli
   uv tool update-shell
   ```

3. In **another new terminal**, `postie login`. Update later with `uv tool upgrade postie-cli`.

`pip install postie-cli` works too, but pip usually puts `postie` in a folder that isn't on your PATH (it prints a warning naming that folder). Add it to PATH yourself (on Windows: Start → "Edit environment variables for your account" → Path → New), or use uv.

## Use

```sh
postie login                  # sign in with Google (or: postie login CODE)
postie photo.png m6           # device = any part of its name
postie photo.png m6,mac       # several at once, or: all
postie ./dist m6              # a folder is zipped
postie "hello" m6             # text
cmd | postie m6               # stdin
postie get                    # receive
postie ls                     # devices
```

The verb is optional, and the device you used last is the default. `--json` gives plain output for scripts.

## For AI agents

`postie mcp` is an MCP server, so your coding agent can send to your devices. Add it once:

```sh
claude mcp add -s user postie -- postie mcp     # Claude Code
codex mcp add postie -- postie mcp              # Codex
```

**Cursor** (the app and its `agent` CLI) reads `~/.cursor/mcp.json`. Add this to it:

```json
{ "mcpServers": { "postie": { "command": "postie", "args": ["mcp"] } } }
```

Any other MCP agent: the command is `postie`, the argument is `mcp`. If an app can't find `postie`, give it the full path (`which postie`, or `where postie` on Windows).

Then ask your agent to "send the APK to my phone".

Get the Postie apps for Android, iPhone, Mac, Windows, Linux and the browser at [postie.xlonlabs.com](https://postie.xlonlabs.com).

