Metadata-Version: 2.4
Name: bifrost-agent
Version: 0.1.1
Summary: Bifrost path-tunnel agent — connect a local Mac app to Bifrost
Project-URL: Homepage, https://github.com/eskeon/bifrost-agent
Project-URL: Repository, https://github.com/eskeon/bifrost-agent
Author: Bifrost
License-Expression: MIT
Keywords: bifrost,tunnel,websocket
Requires-Python: >=3.11
Requires-Dist: click>=8.1
Requires-Dist: httpx>=0.27
Requires-Dist: websockets>=12
Description-Content-Type: text/markdown

# bifrost-agent

Mac path-tunnel agent for [Bifrost](https://github.com/eskeon/go-bifrost). Connects outbound over WebSocket and exposes a local HTTP app under Bifrost’s tunnels base path (default `/tunnels/{slug}`).

## Install

```bash
pipx install bifrost-agent
# or: pip install bifrost-agent  (inside a venv)
```

Requires Python 3.11+.

## Connect

1. In Bifrost Console → **Tunnels**, create a tunnel and attach a path route (set **Local URL** there, e.g. `http://127.0.0.1:3000`).
2. Copy the one-time install command and run:

```bash
sudo bifrost tunnel install <token>
```

The token embeds the Bifrost WebSocket URL and auth secret. Local upstream URLs are **not** passed on the CLI — they come from the console on each request.

## Commands

```bash
sudo bifrost tunnel install <token>   # LaunchDaemon + system config
bifrost tunnel list                   # show installed agent(s)
sudo bifrost tunnel uninstall         # remove daemon + system config
bifrost version
```

System config: `/Library/Application Support/bifrost/config.json`  
Logs: `/Library/Logs/bifrost-tunnel.log`

## Develop

```bash
python -m venv .venv
source .venv/bin/activate
pip install -e .
bifrost version
bifrost tunnel list
```

## Publish

Repo: https://github.com/eskeon/bifrost-agent  

Tag a release (`v*`); GitHub Actions builds and publishes to PyPI as `bifrost-agent`.
