Metadata-Version: 2.4
Name: htmlrun-cli
Version: 0.4.0
Summary: HTMLRun CLI — 把单文件 HTML 发布成可分享的在线链接
License-Expression: MIT
Project-URL: Homepage, https://html.run
Project-URL: PyPI, https://pypi.org/project/htmlrun-cli/
Keywords: html,publish,cli,htmlrun
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: typer>=0.12
Requires-Dist: requests>=2.31
Requires-Dist: beautifulsoup4>=4.12
Requires-Dist: segno>=1.5

# HTMLRun CLI

把本地 HTML 文件发布到 HTMLRun，生成可分享的在线链接。

## 安装

PyPI: https://pypi.org/project/htmlrun-cli/

```bash
pip install htmlrun-cli
```

## 使用

先在 https://html.run 创建 publish token：

```bash
htmlrun login --token h_xxxxxxxx
htmlrun publish report.html
```

`login` 会向服务端校验 token，无效时不写入本地配置并以非 0 退出码结束，所以脚本里可以
直接用它的退出码判断是否登录成功。

再次发布同一路径文件会追加新版本，并保持原链接不变。

## 命令

| 命令 | 说明 |
|------|------|
| `htmlrun login --token h_xxx [--base-url URL]` | 校验 token 并保存 token 和服务地址 |
| `htmlrun logout` | 清除本地 token |
| `htmlrun whoami [--remote]` | 查看服务地址与 token 状态；`--remote` 联网查服务端 |
| `htmlrun publish FILE [-m 备注] [--new] [--no-inline]` | 发布 HTML 文件 |

## 环境变量

| 变量 | 作用 |
|------|------|
| `HTMLRUN_TOKEN` | publish token |
| `HTMLRUN_BASE_URL` | 服务地址，默认 `https://html.run` |
| `HTMLRUN_CONFIG_DIR` | 配置目录，默认 `~/.htmlrun` |

首次 `login` 会在配置文件里生成一个随机 `client_id`，用于在"已绑定设备"列表里区分机器。
它是随机 UUID，不采集硬件信息，也不参与鉴权。`logout` 不会清除它，这样同一台机器重新
登录仍算同一台设备。
