From f309982bb0a2dca76dd038473ee6f1be803bd503 Mon Sep 17 00:00:00 2001 From: Xubin Ren <52506698+Re-bin@users.noreply.github.com> Date: Mon, 1 Jun 2026 16:51:24 +0800 Subject: [PATCH] chore(release): update version to 0.2.1 --- .dockerignore | 1 + Dockerfile | 2 +- docs/deployment.md | 15 +++++++++++---- nanobot/__init__.py | 2 +- pyproject.toml | 2 +- 5 files changed, 15 insertions(+), 7 deletions(-) diff --git a/.dockerignore b/.dockerignore index 020b9ec39..ca4bd300e 100644 --- a/.dockerignore +++ b/.dockerignore @@ -5,6 +5,7 @@ __pycache__ *.egg-info dist/ build/ +nanobot/web/dist/ .git .env .assets diff --git a/Dockerfile b/Dockerfile index 484abf295..dece2eb73 100644 --- a/Dockerfile +++ b/Dockerfile @@ -25,7 +25,7 @@ RUN mkdir -p nanobot bridge && touch nanobot/__init__.py && \ COPY nanobot/ nanobot/ COPY bridge/ bridge/ COPY webui/ webui/ -RUN uv pip install --system --no-cache . +RUN NANOBOT_FORCE_WEBUI_BUILD=1 uv pip install --system --no-cache . # Build the WhatsApp bridge WORKDIR /app/bridge diff --git a/docs/deployment.md b/docs/deployment.md index 8a2cd89eb..8ac652f56 100644 --- a/docs/deployment.md +++ b/docs/deployment.md @@ -11,16 +11,23 @@ > Official Docker usage currently means building from this repository with the included `Dockerfile`. Docker Hub images under third-party namespaces are not maintained or verified by HKUDS/nanobot; do not mount API keys or bot tokens into them unless you trust the publisher. > [!IMPORTANT] -> The gateway and WebSocket channel default to `host: "127.0.0.1"` in `config.json` (set in `nanobot/config/schema.py`). Docker `-p` port forwarding cannot reach a container's loopback interface, so for the host or LAN to reach the exposed ports you must set both binds to `0.0.0.0` in `~/.nanobot/config.json` before starting the container: +> The gateway and WebSocket channel default to `host: "127.0.0.1"` in `config.json` (set in `nanobot/config/schema.py`). Docker `-p` port forwarding cannot reach a container's loopback interface, so for the host or LAN to reach the exposed ports you must set both binds to `0.0.0.0` in `~/.nanobot/config.json` before starting the container. To serve the bundled WebUI from Docker, enable the WebSocket channel and protect bootstrap with a secret: > > ```json > { -> "gateway": { "host": "0.0.0.0" }, -> "channels": { "websocket": { "host": "0.0.0.0" } } +> "gateway": { "host": "0.0.0.0" }, +> "channels": { +> "websocket": { +> "enabled": true, +> "host": "0.0.0.0", +> "port": 8765, +> "tokenIssueSecret": "your-secret-here" +> } +> } > } > ``` > -> When `host` is `0.0.0.0`, the gateway refuses to start unless `token` or `tokenIssueSecret` is also configured on the WebSocket channel — see [`webui/README.md`](../webui/README.md) for details. +> When the WebSocket `host` is `0.0.0.0`, the channel refuses to start unless `token` or `tokenIssueSecret` is also configured — see [`webui/README.md`](../webui/README.md) for details. ### Docker Compose diff --git a/nanobot/__init__.py b/nanobot/__init__.py index a2380644e..ac6484d3e 100644 --- a/nanobot/__init__.py +++ b/nanobot/__init__.py @@ -22,7 +22,7 @@ def _resolve_version() -> str: return _pkg_version("nanobot-ai") except PackageNotFoundError: # Source checkouts often import nanobot without installed dist-info. - return _read_pyproject_version() or "0.2.0" + return _read_pyproject_version() or "0.2.1" __version__ = _resolve_version() diff --git a/pyproject.toml b/pyproject.toml index 058ab0d01..cbfa9f445 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "nanobot-ai" -version = "0.2.0" +version = "0.2.1" description = "A lightweight personal AI assistant framework" readme = { file = "README.md", content-type = "text/markdown" } requires-python = ">=3.11"