Skip to content

feat(deps): add hindsight-client as optional dependency - #21818

Merged
alt-glitch merged 2 commits into
mainfrom
feat/hindsight-optional-dep
May 11, 2026
Merged

feat(deps): add hindsight-client as optional dependency#21818
alt-glitch merged 2 commits into
mainfrom
feat/hindsight-optional-dep

Conversation

@alt-glitch

Copy link
Copy Markdown
Collaborator

Summary

Declares hindsight-client as an optional dependency group [hindsight] in pyproject.toml, allowing build-time inclusion for environments where runtime pip install fails (NixOS sealed venvs, Docker, Kubernetes).

Not included in [all] — memory providers are plugins and should be opted into explicitly. Same pattern should apply to other memory providers (mem0, supermemory, etc.) if they need this treatment.

Install

# pip/uv users
uv sync --extra hindsight
pip install hermes-agent[hindsight]
# Docker/k8s
FROM nousresearch/hermes-agent:latest
RUN pip install hermes-agent[hindsight]
# NixOS (requires #21817 for extraDependencyGroups)
services.hermes-agent.extraDependencyGroups = [ "hindsight" ];

Changes

  • pyproject.toml: Added hindsight = ["hindsight-client>=0.4.22"] to optional dependencies
  • uv.lock: Regenerated to include hindsight-client v0.5.6

Closes #8873

Declares hindsight-client as an optional dependency group [hindsight]
in pyproject.toml. This allows build-time inclusion for environments
where runtime pip install is not possible (NixOS sealed venvs, Docker,
Kubernetes).

Not included in [all] — memory providers are plugins and should be
opted into explicitly.

Install via:
  uv sync --extra hindsight
  pip install hermes-agent[hindsight]

NixOS (with extraDependencyGroups):
  services.hermes-agent.extraDependencyGroups = [ "hindsight" ];

Closes #8873
@alt-glitch alt-glitch added comp/plugins Plugin system and bundled plugins tool/memory Memory tool and memory providers area/nix Nix flake, NixOS module, container packaging labels May 8, 2026
@github-actions

github-actions Bot commented May 8, 2026

Copy link
Copy Markdown
Contributor

🔎 Lint report: feat/hindsight-optional-dep vs origin/main

ruff

Total: 0 on HEAD, 0 on base (➖ 0)

🆕 New issues: none

✅ Fixed issues: none

Unchanged: 0 pre-existing issues carried over.

ty (type checker)

Total: 8157 on HEAD, 8157 on base (➖ 0)

🆕 New issues (3):

Rule Count
invalid-argument-type 3
First entries
run_agent.py:7160: [invalid-argument-type] invalid-argument-type: Argument to function `build_anthropic_client` is incorrect: Expected `str`, found `str | dict[Unknown, Unknown] | Any | ... omitted 3 union elements`
run_agent.py:13312: [invalid-argument-type] invalid-argument-type: Argument to function `_is_oauth_token` is incorrect: Expected `str`, found `str | dict[Unknown, Unknown] | Any | ... omitted 3 union elements`
run_agent.py:13315: [invalid-argument-type] invalid-argument-type: Argument to function `len` is incorrect: Expected `Sized`, found `(str & ~AlwaysFalsy) | (dict[Unknown, Unknown] & ~AlwaysFalsy) | (Any & ~AlwaysFalsy) | ... omitted 3 union elements`

✅ Fixed issues (3):

Rule Count
invalid-argument-type 3
First entries
run_agent.py:13315: [invalid-argument-type] invalid-argument-type: Argument to function `len` is incorrect: Expected `Sized`, found `(str & ~AlwaysFalsy) | (dict[Unknown | str, Unknown | str | dict[str, str]] & ~AlwaysFalsy) | (Any & ~AlwaysFalsy) | ... omitted 3 union elements`
run_agent.py:7160: [invalid-argument-type] invalid-argument-type: Argument to function `build_anthropic_client` is incorrect: Expected `str`, found `str | dict[Unknown | str, Unknown | str | dict[str, str]] | Any | ... omitted 3 union elements`
run_agent.py:13312: [invalid-argument-type] invalid-argument-type: Argument to function `_is_oauth_token` is incorrect: Expected `str`, found `str | dict[Unknown | str, Unknown | str | dict[str, str]] | Any | ... omitted 3 union elements`

Unchanged: 4284 pre-existing issues carried over.

Diagnostics are surfaced as warnings — this check never fails the build.

@alt-glitch alt-glitch added type/feature New feature or request P3 Low — cosmetic, nice to have dependencies Pull requests that update a dependency file labels May 8, 2026
@alt-glitch

Copy link
Copy Markdown
Collaborator Author

@jbotwell thank you for approving! apologies for the delay.

@alt-glitch
alt-glitch merged commit d992fd9 into main May 11, 2026
14 of 17 checks passed
@alt-glitch
alt-glitch deleted the feat/hindsight-optional-dep branch May 11, 2026 06:52
JinyuID pushed a commit to JinyuID/hermes-agent that referenced this pull request May 11, 2026
…#21818)

Declares hindsight-client as an optional dependency group [hindsight]
in pyproject.toml. This allows build-time inclusion for environments
where runtime pip install is not possible (NixOS sealed venvs, Docker,
Kubernetes).

Not included in [all] — memory providers are plugins and should be
opted into explicitly.

Install via:
  uv sync --extra hindsight
  pip install hermes-agent[hindsight]

NixOS (with extraDependencyGroups):
  services.hermes-agent.extraDependencyGroups = [ "hindsight" ];

Closes NousResearch#8873
02356abc pushed a commit to 02356abc/hermes-agent that referenced this pull request May 14, 2026
…#21818)

Declares hindsight-client as an optional dependency group [hindsight]
in pyproject.toml. This allows build-time inclusion for environments
where runtime pip install is not possible (NixOS sealed venvs, Docker,
Kubernetes).

Not included in [all] — memory providers are plugins and should be
opted into explicitly.

Install via:
  uv sync --extra hindsight
  pip install hermes-agent[hindsight]

NixOS (with extraDependencyGroups):
  services.hermes-agent.extraDependencyGroups = [ "hindsight" ];

Closes NousResearch#8873
jsboige pushed a commit to jsboige/hermes-agent that referenced this pull request May 14, 2026
…#21818)

Declares hindsight-client as an optional dependency group [hindsight]
in pyproject.toml. This allows build-time inclusion for environments
where runtime pip install is not possible (NixOS sealed venvs, Docker,
Kubernetes).

Not included in [all] — memory providers are plugins and should be
opted into explicitly.

Install via:
  uv sync --extra hindsight
  pip install hermes-agent[hindsight]

NixOS (with extraDependencyGroups):
  services.hermes-agent.extraDependencyGroups = [ "hindsight" ];

Closes NousResearch#8873
AlexFoxD pushed a commit to AlexFoxD/hermes-agent that referenced this pull request May 21, 2026
…#21818)

Declares hindsight-client as an optional dependency group [hindsight]
in pyproject.toml. This allows build-time inclusion for environments
where runtime pip install is not possible (NixOS sealed venvs, Docker,
Kubernetes).

Not included in [all] — memory providers are plugins and should be
opted into explicitly.

Install via:
  uv sync --extra hindsight
  pip install hermes-agent[hindsight]

NixOS (with extraDependencyGroups):
  services.hermes-agent.extraDependencyGroups = [ "hindsight" ];

Closes NousResearch#8873
gweeteve pushed a commit to gweeteve/hermes-agent that referenced this pull request Jun 2, 2026
…#21818)

Declares hindsight-client as an optional dependency group [hindsight]
in pyproject.toml. This allows build-time inclusion for environments
where runtime pip install is not possible (NixOS sealed venvs, Docker,
Kubernetes).

Not included in [all] — memory providers are plugins and should be
opted into explicitly.

Install via:
  uv sync --extra hindsight
  pip install hermes-agent[hindsight]

NixOS (with extraDependencyGroups):
  services.hermes-agent.extraDependencyGroups = [ "hindsight" ];

Closes NousResearch#8873
Seven74AI pushed a commit to Seven74AI/hermes-agent that referenced this pull request Jun 13, 2026
…#21818)

Declares hindsight-client as an optional dependency group [hindsight]
in pyproject.toml. This allows build-time inclusion for environments
where runtime pip install is not possible (NixOS sealed venvs, Docker,
Kubernetes).

Not included in [all] — memory providers are plugins and should be
opted into explicitly.

Install via:
  uv sync --extra hindsight
  pip install hermes-agent[hindsight]

NixOS (with extraDependencyGroups):
  services.hermes-agent.extraDependencyGroups = [ "hindsight" ];

Closes NousResearch#8873
T02200059 pushed a commit to T02200059/hermes-agent that referenced this pull request Jun 18, 2026
…#21818)

Declares hindsight-client as an optional dependency group [hindsight]
in pyproject.toml. This allows build-time inclusion for environments
where runtime pip install is not possible (NixOS sealed venvs, Docker,
Kubernetes).

Not included in [all] — memory providers are plugins and should be
opted into explicitly.

Install via:
  uv sync --extra hindsight
  pip install hermes-agent[hindsight]

NixOS (with extraDependencyGroups):
  services.hermes-agent.extraDependencyGroups = [ "hindsight" ];

Closes NousResearch#8873
ygd58 added a commit to ygd58/hermes-agent that referenced this pull request Jul 17, 2026
…d profile env

_build_embedded_profile_env() built the replacement environment without
HINDSIGHT_EMBED_API_DATABASE_URL, causing the embedded daemon to fall
back to its compiled-in default database path instead of the
operator-configured one (issue NousResearch#21818).

Fix:
1. _build_embedded_profile_env(): read embed_database_url from config
   (canonical key) with fallback to HINDSIGHT_EMBED_API_DATABASE_URL
   env var, then include it in the written profile env when non-empty.
2. get_config_schema(): expose embed_database_url as a discoverable
   local_embedded config key with description and env fallback note.

4 regression tests:
- database URL from config written to profile env
- database URL from env var forwarded to profile env
- key absent when neither config nor env provides a value
- embed_database_url present in get_config_schema() keys

Fixes NousResearch#21818
Gravezzz pushed a commit to Gravezzz/hermes-agent that referenced this pull request Jul 21, 2026
…#21818)

Declares hindsight-client as an optional dependency group [hindsight]
in pyproject.toml. This allows build-time inclusion for environments
where runtime pip install is not possible (NixOS sealed venvs, Docker,
Kubernetes).

Not included in [all] — memory providers are plugins and should be
opted into explicitly.

Install via:
  uv sync --extra hindsight
  pip install hermes-agent[hindsight]

NixOS (with extraDependencyGroups):
  services.hermes-agent.extraDependencyGroups = [ "hindsight" ];

Closes NousResearch#8873
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/nix Nix flake, NixOS module, container packaging comp/plugins Plugin system and bundled plugins dependencies Pull requests that update a dependency file P3 Low — cosmetic, nice to have tool/memory Memory tool and memory providers type/feature New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Setup]: Hindsight-client required to use hindsight as memory provider, but can't be installed with non-container nixos config

2 participants