Fix Hindsight dependency in Docker WebUI venv#1130
Closed
franksong2702 wants to merge 1 commit intonesquena:masterfrom
Closed
Fix Hindsight dependency in Docker WebUI venv#1130franksong2702 wants to merge 1 commit intonesquena:masterfrom
franksong2702 wants to merge 1 commit intonesquena:masterfrom
Conversation
Collaborator
|
Absorbed and shipped in v0.50.224 (PR #1131). Thanks! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Closes #926.
This fixes the two-container Docker setup where the WebUI process imports Hermes Agent code from a shared source volume, but runs in its own isolated
/app/venv. Hindsight's Python client was available only when users manually installed it in the WebUI container, so the Hindsight memory provider could not import cleanly from WebUI Docker.Root Cause
The Hermes Agent container and Hermes WebUI container have separate Python environments. Installing Hermes Agent source with
[all]into the WebUI venv does not currently install Hindsight: upstream Hermes Agent includeshonchoin[all], but does not include a Hindsight extra orhindsight-clientthere. The Hindsight plugin metadata declareshindsight-client>=0.4.22, and the PyPI distribution imports ashindsight_client/hindsight_client_api.Changes
hindsight-client>=0.4.22into the WebUI container venv when missing./app/venv/.deps_installedfast-restart guard so existing Docker venvs can self-heal after upgrading.requirements.txtunchanged so local non-Docker startup does not gain optional external memory-provider dependencies.Verification
bash -n docker_init.bashuvx pytest tests/test_issue926_hindsight_docker_dependency.py tests/test_issue569_579.py -qpassed: 14 testsgit diff --checkhindsight-client==0.5.4exposeshindsight_clientandhindsight_client_apidocker build --build-arg HERMES_VERSION=hindsight-926-smoke -t hermes-webui:hindsight-926 ./hermeswebui_init.bashhindsight-client==0.5.4/app/venv/bin/pythonimportedhindsight_clientandhindsight_client_apihindsight-clientwhile preserving/app/venv/.deps_installedDependencies already installed — skipping (fast restart)followed byInstalling hindsight-client>=0.4.22Not Run
docker compose -f docker-compose.two-container.yml upwith a live Hermes Agent container and mounted real agent source volume.