diff --git a/.github/workflows/tests-os.yml b/.github/workflows/tests-os.yml index 206a74c8bc..c2b5507545 100644 --- a/.github/workflows/tests-os.yml +++ b/.github/workflows/tests-os.yml @@ -84,7 +84,7 @@ jobs: # the verified Git pin once, before per-file parallelism; otherwise # each isolated PowerShell stage races to download/extract the archive. packages: ${{ matrix.marker == 'windows' && 'git,ripgrep' || 'ripgrep' }} - extras: '["all", "telegram", "anthropic", "mistral", "fal", "modal", "daytona", "hindsight", "parallel-web"]' + extras: '["all", "telegram", "anthropic", "mistral", "fal", "modal", "daytona", "parallel-web"]' test-environment: 'true' prune-python-cache: true @@ -194,7 +194,7 @@ jobs: uses: ./.github/actions/setup-pm with: packages: git,ripgrep - extras: '["all", "telegram", "anthropic", "mistral", "fal", "modal", "daytona", "hindsight", "parallel-web"]' + extras: '["all", "telegram", "anthropic", "mistral", "fal", "modal", "daytona", "parallel-web"]' test-environment: 'true' prune-python-cache: true diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 4bf418b247..81887d1b28 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -44,7 +44,7 @@ jobs: - name: Set up locked Python and test dependencies uses: ./.github/actions/setup-pm with: - extras: '["all", "anthropic", "bedrock", "mistral", "fal", "modal", "daytona", "hindsight", "parallel-web"]' + extras: '["all", "anthropic", "bedrock", "mistral", "fal", "modal", "daytona", "parallel-web"]' test-environment: 'true' prune-python-cache: true @@ -143,7 +143,7 @@ jobs: uses: ./.github/actions/setup-pm with: toolchain: all - extras: '["all", "anthropic", "bedrock", "mistral", "fal", "modal", "daytona", "hindsight", "parallel-web"]' + extras: '["all", "anthropic", "bedrock", "mistral", "fal", "modal", "daytona", "parallel-web"]' test-environment: 'true' prune-python-cache: true diff --git a/Dockerfile b/Dockerfile index 7d5b9f22a6..3091eb2768 100644 --- a/Dockerfile +++ b/Dockerfile @@ -259,13 +259,6 @@ FROM runtime_base AS python_deps # Health export is enabled. Collector and observability-backend dependencies # remain external and are not part of the Hermes production image. # -# The hindsight memory provider's client (hindsight-client) is baked in -# for the same reason: it lazy-installs into /opt/hermes/.venv at first -# use, which lives inside the (immutable) image layer rather than the -# mounted /opt/data volume, so it is lost on every container recreate / -# image update and recall/retain then fails with -# `ModuleNotFoundError: No module named 'hindsight_client'` (#38128). -# # The Matrix gateway's deps ([matrix] extra) are baked in because # python-olm (transitive via mautrix[encryption]) builds from source on # Python/image combinations without usable wheels. The Docker image is @@ -283,7 +276,7 @@ RUN touch ./README.md RUN python3 -m pm.build_env --source /opt/hermes --python /usr/local/bin/python3 \ --out /opt/hermes/.venv --no-install-project --sealed \ --extra all --extra messaging --extra otlp --extra anthropic --extra bedrock \ - --extra azure-identity --extra hindsight --extra matrix --extra google-chat + --extra azure-identity --extra matrix --extra google-chat # Icons render on the runtime environment: Pillow and resvg-py are core # dependencies. A stage of its own so the frontend stage keeps building its diff --git a/nix/checks.nix b/nix/checks.nix index d059bac11e..e280818425 100644 --- a/nix/checks.nix +++ b/nix/checks.nix @@ -421,7 +421,7 @@ json.dump(sorted(leaf_paths(DEFAULT_CONFIG)), sys.stdout, indent=2) # IS the default package, so a launcher that pinned the plain # default would look correct while it shipped a second # runtime to anyone who customises theirs. - extraDependencyGroups = [ "hindsight" ]; + extraDependencyGroups = [ "honcho" ]; backend = { mode = "serve"; port = 9231; diff --git a/nix/hermes-agent.nix b/nix/hermes-agent.nix index 1c15746544..88b92b511f 100644 --- a/nix/hermes-agent.nix +++ b/nix/hermes-agent.nix @@ -3,7 +3,7 @@ # callPackage auto-wires nixpkgs args; flake inputs are passed explicitly. # Users override via: # pkgs.hermes-agent.override { extraPythonPackages = [...]; } -# pkgs.hermes-agent.override { extraDependencyGroups = [ "hindsight" ]; } +# pkgs.hermes-agent.override { extraDependencyGroups = [ "honcho" ]; } { lib, stdenv, diff --git a/nix/moduleCommon.nix b/nix/moduleCommon.nix index 8581a8a0d1..c75ee383c1 100644 --- a/nix/moduleCommon.nix +++ b/nix/moduleCommon.nix @@ -474,10 +474,10 @@ let dependencies — no PYTHONPATH patching or collision risk. Use this for optional extras already declared in hermes-agent's - pyproject.toml (e.g. "hindsight", "honcho", "voice"). + pyproject.toml (e.g. "honcho", "voice"). Use extraPythonPackages for external packages not in pyproject.toml. ''; - example = [ "hindsight" ]; + example = [ "honcho" ]; }; # ── Service behaviour ────────────────────────────────────────────── diff --git a/nix/packages.nix b/nix/packages.nix index 8d3cb677b5..b1120a9b1f 100644 --- a/nix/packages.nix +++ b/nix/packages.nix @@ -58,7 +58,6 @@ "fal" "feishu" "firecrawl" - "hindsight" "honcho" "messaging" "modal" diff --git a/pyproject.toml b/pyproject.toml index ef4c6fa5f6..3380055aa4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -361,7 +361,7 @@ google-chat = [ doc-extract = ["firecrawl-anydoc==0.2.4"] trace-upload = ["huggingface-hub==1.24.0"] # Cloud memory providers are opt-in PM extras. They stay outside [all], -# like honcho/hindsight, so a quarantined release cannot break fresh installs. +# like honcho, so a quarantined release cannot break fresh installs. supermemory = ["supermemory==3.50.0"] # mem0ai pulls qdrant-client → grpcio, which has no win_arm64 wheel — same # win32-arm64 gate as google-chat. mem0 is lazy-installed, so on arm64 the @@ -722,7 +722,6 @@ google-auth-httplib2 = false google-auth-oauthlib = false google-cloud-pubsub = false h2 = false - honcho-ai = false httplib2 = false httpx = false