Files

116 lines
4.0 KiB
Markdown

# codex-retry-gateway-tui
- 文档层级:客户端工具
- 应用性质:客户端 TUI
- 源码来源:git submodule
- 运行关系:客户端工具
- 部署模型:外部安装器
- 对应服务:`services/pc/user-app/codex-retry-gateway-tui/current/README.md``services/a100/user-app/codex-retry-gateway-tui/current/README.md`
- 对应 stack:无
- Secret 边界:本地用户配置
- 分发方式:`uvx` / `uv tool install`
- 包名:`codex-retry-gateway-tui`
- 命令名:`codex-retry-gateway-tui`
- 本地状态路径:`~/.config/codex-retry-gateway-tui/`
- 目标 API:本机或内网 codex-retry-gateway。
- 备注:客户端工具本身不是长期服务;user-app README 只记录具体宿主安装状态。
Terminal UI for `codex-retry-gateway`.
## Quick Start
Run once from a public git repo with `uvx`:
```bash
uvx --from git+https://gitea.shujk.top/shujakuin/codex-retry-gateway-tui.git codex-retry-gateway-tui
```
Install as a user command:
```bash
uv tool install git+https://gitea.shujk.top/shujakuin/codex-retry-gateway-tui.git
codex-retry-gateway-tui
```
Install as a user command with Pixi global from the published Gitea repo:
```bash
pixi global install \
--git https://gitea.shujk.top/shujakuin/codex-retry-gateway-tui.git \
--expose codex-retry-gateway-tui \
--expose codex-gateway-tui \
codex-retry-gateway-tui
```
Default behavior:
```text
1. reuse saved ~/.config/codex-retry-gateway-tui/api-url when present
2. otherwise auto-discover ~/.codex-retry-gateway/state.json gateway_base_url
3. otherwise fall back to ~/.codex-retry-gateway/config/config.json listen_host/listen_port
4. otherwise use http://127.0.0.1:4610/__codex_retry_gateway
```
Manual override example:
```bash
codex-retry-gateway-tui --api-url http://100.115.235.115:4610
```
Configuration:
- `--api-url` / `CODEX_RETRY_GATEWAY_TUI_API_URL`
- `--status-url` / `CODEX_RETRY_GATEWAY_TUI_STATUS_URL`
- `--save-config`
- `--install`
- `--refresh-seconds` / `CODEX_RETRY_GATEWAY_TUI_REFRESH_SECONDS`
- `--timeout` / `CODEX_RETRY_GATEWAY_TUI_TIMEOUT`
- request-table preferences auto-save to `~/.config/codex-retry-gateway-tui/request-table.json`
Environment variables:
- `CODEX_RETRY_GATEWAY_TUI_API_URL`
- `CODEX_RETRY_GATEWAY_TUI_API_URL_FILE`
- `CODEX_RETRY_GATEWAY_TUI_STATUS_URL`
- `CODEX_RETRY_GATEWAY_TUI_STATUS_URL_FILE`
- `CODEX_RETRY_GATEWAY_TUI_VERSION_CHECK_URL`
- `CODEX_RETRY_GATEWAY_TUI_VERSION_CHECK_TIMEOUT`
- `CODEX_RETRY_GATEWAY_TUI_NO_VERSION_CHECK`
## Local Development
```bash
cd apps/codex-retry-gateway-tui
uv run codex-retry-gateway-tui
```
Views:
- overview: current gateway status and summary counts
- requests: recent requests, response/request/thread IDs, timing, effort, reasoning tokens, usage, current retry round like `3(2)`, retry note, and lifecycle status: `waiting` before the first response, `streaming` after it, final `HTTP <code>`, red `stalled` after no activity, or red `discarded` when the client cancels
- logs: recent gateway logs
- profiles: independently managed text profiles and image profiles, each with its own active selection and actions
Controls:
- `1` overview
- `2` requests
- `3` logs
- `4` profiles
- `i` switch the profiles table between text and image profiles
- `c` edit request-table column visibility, order, and widths
- `e` edit selected profile in `$VISUAL` / `$EDITOR`
- `/` filter
- `r` refresh
- `m` switch request table compact/wide width profile
- `Shift-Left` / `Shift-Right` scroll the active table
- `p` probe selected profile
- `s` switch to selected profile
- `w` save selected profile snapshot
- `d` delete selected inactive profile
- `u` open selected profile upstream URL
This client uses only the public gateway admin API and does not need SSH or secrets.
Profile editing uses a temp TOML draft opened in `$VISUAL` or `$EDITOR` and then saves it back through the matching gateway API. Text drafts only contain text upstream settings; image drafts only contain image upstream settings for `/images/*` and `/v1/images/*`. Manual secrets are always blank in the draft, so a blank value keeps the existing secret file.