Skip to content

fix(deps): declare websockets as core dep + relax dev setuptools pin (salvage #45486, #44693) - #46744

Merged
austinpickett merged 3 commits into
mainfrom
salvage/t1-deps-45486-44693
Jun 15, 2026
Merged

fix(deps): declare websockets as core dep + relax dev setuptools pin (salvage #45486, #44693)#46744
austinpickett merged 3 commits into
mainfrom
salvage/t1-deps-45486-44693

Conversation

@austinpickett

Copy link
Copy Markdown
Collaborator

Summary

Salvage of two focused, independently-verified dependency bug fixes onto current main. Both bugs were confirmed still present on main (3e7e9b24d); contributor authorship is preserved per-commit (rebase-merge this PR).

1. Declare websockets as a core dependency — salvages #45486 (@ArcanePivot / 玄枢)

tools/browser_cdp_tool.py, the CDP supervisor, and browser_dialog import websockets directly during tool discovery, but it was only a transitive dependency (via fal_client/firecrawl-py). On lean installs that drop those transitives, browser tool discovery fails with No module named 'websockets'. Adds websockets==15.0.1 to core dependencies (already the resolved transitive version, so the lock is unchanged in substance) and updates the import-guard comment.

2. Relax dev setuptools pin 82.0.1 → 81.0.0 — salvages #44693 (@benegessarit / David Beyer)

The dev extra pinned setuptools==82.0.1, but torch >= 2.11 caps setuptools < 82, making dev + torch unsatisfiable. Relaxes to the latest <82 (81.0.0). The pyproject.toml hunk was reconciled against current main (kept main's exact dev list, applied only the setuptools change + clarifying comment); uv.lock updated to match. Closes #44869 as a duplicate (this is the complete version — also regenerates the lock).

Test plan

  • uv lock --check → consistent (218 packages resolved)
  • pyproject.toml parses; websockets==15.0.1 in core deps, setuptools==81.0.0 in dev extra
  • import tools.browser_cdp_tool succeeds with websockets present (the exact lean-install tool-discovery path fix: declare websockets as a core dependency #45486 fixes)

Credit

玄枢 and others added 2 commits June 15, 2026 11:48
…ptools<82)

torch >= 2.11 publishes Requires-Dist: setuptools<82, so any environment
that resolves the dev extra together with torch is unsatisfiable:

    $ uv pip install --dry-run ".[dev]" "torch==2.12.0"
    x No solution found when resolving dependencies:
      ... torch==2.12.0 and all versions of hermes-agent[dev] are incompatible.

81.0.0 is the latest release under the cap and stays inside the declared
build-system window (setuptools>=77.0,<83). uv.lock regenerated with
'uv lock'; diff is scoped to the setuptools entry.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@austinpickett
austinpickett requested a review from a team June 15, 2026 16:14
@github-actions

github-actions Bot commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

🔎 Lint report: salvage/t1-deps-45486-44693 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: 10931 on HEAD, 10931 on base (➖ 0)

🆕 New issues: none

✅ Fixed issues: none

Unchanged: 5759 pre-existing issues carried over.

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

@alt-glitch alt-glitch added type/bug Something isn't working P2 Medium — degraded but workaround exists comp/agent Core agent runtime: loop, agent_init, prompt builder, context-compression, responses endpoint tool/browser Browser automation (CDP, Playwright) labels Jun 15, 2026
@alt-glitch

Copy link
Copy Markdown
Collaborator

Related: #45486 (websockets core dep, by @ArcanePivot), #44693 (setuptools pin, by @benegessarit). This is the salvage/consolidation onto current main with per-commit authorship preserved — the authoritative version; the predecessors can be closed in its favor.

Add AUTHOR_MAP entries for the two cherry-picked contributors so the
check-attribution CI gate passes:
- yehaotian@xuanshudeMac-mini.local -> ArcanePivot (#45486)
- dbeyer7@gmail.com -> benegessarit (#44693)
@austinpickett
austinpickett merged commit 0bbff1f into main Jun 15, 2026
32 checks passed
@austinpickett
austinpickett deleted the salvage/t1-deps-45486-44693 branch June 15, 2026 16:44
rdnot added a commit to rdnot/hermes-agent-medical-research that referenced this pull request Jun 15, 2026
…kfile-fix.yml)

Upstream advanced from 5bfed0f (Jun 15) to 3e7e9b2 (Jun 16). Major upstream
changes since last merge:

- feat(skills): add optional payments skills (Stripe Link, MPP, Projects) NousResearch#31343
- feat(delegation): async background subagents via delegate_task(background=true) NousResearch#40946
- fix(desktop): read HERMES_HOME from Windows registry when env is stale NousResearch#46772
- fix(desktop): let explicit model switches escape broken config providers NousResearch#46796
- fix(dump): report effective terminal backend in hermes debug
- fix(inventory): deduplicate models between user-defined and aggregator providers
- fix(doctor): recognize nvidia as vendor-slug-accepting provider
- fix(discord): cap slash commands at Discord's 100-command limit
- fix(teams): package Microsoft Teams SDK as an installable extra NousResearch#46764
- fix(dashboard): scope chat sidebar model card to selected profile NousResearch#46665
- fix(deps): declare websockets as core dep + relax dev setuptools pin NousResearch#46744
- fix(desktop): pin @assistant-ui/store so the cluster shares one tap
- fix(install): make npm install -g packages reachable on PATH
- feat(honcho-setup): replace deployment-shape prompt with gateway-gated identity tree
- refactor(honcho): canonicalize identity-mapping on pinUserPeer, migrate legacy key
- mattermost: preserve thread-local delivery hygiene
- ci: rip out nix ci for now
- ...plus desktop Electron changes, web UI updates, website docs, honcho docs

Fork customizations preserved (all 22 verified intact):
- run_agent.py: max_iterations: int = 200
- agent/conversation_loop.py: _force_final_threshold, _build_tools_summary,
  _current_turn_tool_calls, _pending_tool_summary, tool_summary flow
- agent/turn_finalizer.py: 'tool_summary' key in result dict
- tools/web_tools.py: tiered fetcher (curl_cffi→scrapling→httpx),
  MAX_OUTPUT_SIZE=10000, _get_extract_backend, max_result_size_chars=500_000,
  LLM-summarization disabled, NCBI/PubMed/PMC hardening
- tools/budget_config.py: 400_000 / 500_000
- gateway/run.py: HERMES_MAX_ITERATIONS, "200"
- hermes_cli/config.py: max_turns: 200
- cli.py: result.get('tool_summary') display
- gateway/config.py: Platform.LINE = "line"
- gateway/authz_mixin.py: Platform.LINE: "LINE_ALLOWED_GROUPS"
- plugins/platforms/line/adapter.py: reply_only_mention, build_source

Conflict resolution:
- .github/workflows/nix-lockfile-fix.yml: removed by upstream.
  Was fork-only (disabled with if:false, requires APP_ID/APP_PRIVATE_KEY
  secrets the fork does not have). Upstream deletion is correct.

Backup branch: backup-main-pre-merge-20260616-063126
alanbratu pushed a commit to alanbratu/hermes-agent that referenced this pull request Jun 17, 2026
…(salvage NousResearch#45486, NousResearch#44693) (NousResearch#46744)

* fix: declare websockets as a core dependency

* fix(deps): relax dev setuptools pin 82.0.1 -> 81.0.0 (torch caps setuptools<82)

torch >= 2.11 publishes Requires-Dist: setuptools<82, so any environment
that resolves the dev extra together with torch is unsatisfiable:

    $ uv pip install --dry-run ".[dev]" "torch==2.12.0"
    x No solution found when resolving dependencies:
      ... torch==2.12.0 and all versions of hermes-agent[dev] are incompatible.

81.0.0 is the latest release under the cap and stays inside the declared
build-system window (setuptools>=77.0,<83). uv.lock regenerated with
'uv lock'; diff is scoped to the setuptools entry.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* chore: map salvaged contributor emails for attribution

Add AUTHOR_MAP entries for the two cherry-picked contributors so the
check-attribution CI gate passes:
- yehaotian@xuanshudeMac-mini.local -> ArcanePivot (NousResearch#45486)
- dbeyer7@gmail.com -> benegessarit (NousResearch#44693)

---------

Co-authored-by: 玄枢 <yehaotian@xuanshudeMac-mini.local>
Co-authored-by: David Beyer <dbeyer7@gmail.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Teknium <127238744+teknium1@users.noreply.github.com>
zmlgit pushed a commit to zmlgit/hermes-agent that referenced this pull request Jun 17, 2026
…(salvage NousResearch#45486, NousResearch#44693) (NousResearch#46744)

* fix: declare websockets as a core dependency

* fix(deps): relax dev setuptools pin 82.0.1 -> 81.0.0 (torch caps setuptools<82)

torch >= 2.11 publishes Requires-Dist: setuptools<82, so any environment
that resolves the dev extra together with torch is unsatisfiable:

    $ uv pip install --dry-run ".[dev]" "torch==2.12.0"
    x No solution found when resolving dependencies:
      ... torch==2.12.0 and all versions of hermes-agent[dev] are incompatible.

81.0.0 is the latest release under the cap and stays inside the declared
build-system window (setuptools>=77.0,<83). uv.lock regenerated with
'uv lock'; diff is scoped to the setuptools entry.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* chore: map salvaged contributor emails for attribution

Add AUTHOR_MAP entries for the two cherry-picked contributors so the
check-attribution CI gate passes:
- yehaotian@xuanshudeMac-mini.local -> ArcanePivot (NousResearch#45486)
- dbeyer7@gmail.com -> benegessarit (NousResearch#44693)

---------

Co-authored-by: 玄枢 <yehaotian@xuanshudeMac-mini.local>
Co-authored-by: David Beyer <dbeyer7@gmail.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Teknium <127238744+teknium1@users.noreply.github.com>
T02200059 pushed a commit to T02200059/hermes-agent that referenced this pull request Jun 18, 2026
…(salvage NousResearch#45486, NousResearch#44693) (NousResearch#46744)

* fix: declare websockets as a core dependency

* fix(deps): relax dev setuptools pin 82.0.1 -> 81.0.0 (torch caps setuptools<82)

torch >= 2.11 publishes Requires-Dist: setuptools<82, so any environment
that resolves the dev extra together with torch is unsatisfiable:

    $ uv pip install --dry-run ".[dev]" "torch==2.12.0"
    x No solution found when resolving dependencies:
      ... torch==2.12.0 and all versions of hermes-agent[dev] are incompatible.

81.0.0 is the latest release under the cap and stays inside the declared
build-system window (setuptools>=77.0,<83). uv.lock regenerated with
'uv lock'; diff is scoped to the setuptools entry.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* chore: map salvaged contributor emails for attribution

Add AUTHOR_MAP entries for the two cherry-picked contributors so the
check-attribution CI gate passes:
- yehaotian@xuanshudeMac-mini.local -> ArcanePivot (NousResearch#45486)
- dbeyer7@gmail.com -> benegessarit (NousResearch#44693)

---------

Co-authored-by: 玄枢 <yehaotian@xuanshudeMac-mini.local>
Co-authored-by: David Beyer <dbeyer7@gmail.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Teknium <127238744+teknium1@users.noreply.github.com>
xyshanren pushed a commit to xyshanren/hermes-agent-cn that referenced this pull request Jun 25, 2026
…(salvage NousResearch#45486, NousResearch#44693) (NousResearch#46744)

* fix: declare websockets as a core dependency

* fix(deps): relax dev setuptools pin 82.0.1 -> 81.0.0 (torch caps setuptools<82)

torch >= 2.11 publishes Requires-Dist: setuptools<82, so any environment
that resolves the dev extra together with torch is unsatisfiable:

    $ uv pip install --dry-run ".[dev]" "torch==2.12.0"
    x No solution found when resolving dependencies:
      ... torch==2.12.0 and all versions of hermes-agent[dev] are incompatible.

81.0.0 is the latest release under the cap and stays inside the declared
build-system window (setuptools>=77.0,<83). uv.lock regenerated with
'uv lock'; diff is scoped to the setuptools entry.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* chore: map salvaged contributor emails for attribution

Add AUTHOR_MAP entries for the two cherry-picked contributors so the
check-attribution CI gate passes:
- yehaotian@xuanshudeMac-mini.local -> ArcanePivot (NousResearch#45486)
- dbeyer7@gmail.com -> benegessarit (NousResearch#44693)

---------

Co-authored-by: 玄枢 <yehaotian@xuanshudeMac-mini.local>
Co-authored-by: David Beyer <dbeyer7@gmail.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Teknium <127238744+teknium1@users.noreply.github.com>
waefrebeorn pushed a commit to waefrebeorn/slermes that referenced this pull request Jul 2, 2026
…(salvage NousResearch#45486, NousResearch#44693) (NousResearch#46744)

* fix: declare websockets as a core dependency

* fix(deps): relax dev setuptools pin 82.0.1 -> 81.0.0 (torch caps setuptools<82)

torch >= 2.11 publishes Requires-Dist: setuptools<82, so any environment
that resolves the dev extra together with torch is unsatisfiable:

    $ uv pip install --dry-run ".[dev]" "torch==2.12.0"
    x No solution found when resolving dependencies:
      ... torch==2.12.0 and all versions of hermes-agent[dev] are incompatible.

81.0.0 is the latest release under the cap and stays inside the declared
build-system window (setuptools>=77.0,<83). uv.lock regenerated with
'uv lock'; diff is scoped to the setuptools entry.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* chore: map salvaged contributor emails for attribution

Add AUTHOR_MAP entries for the two cherry-picked contributors so the
check-attribution CI gate passes:
- yehaotian@xuanshudeMac-mini.local -> ArcanePivot (NousResearch#45486)
- dbeyer7@gmail.com -> benegessarit (NousResearch#44693)

---------

Co-authored-by: 玄枢 <yehaotian@xuanshudeMac-mini.local>
Co-authored-by: David Beyer <dbeyer7@gmail.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Teknium <127238744+teknium1@users.noreply.github.com>
Methodician added a commit to Methodician/hermes-agent that referenced this pull request Jul 4, 2026
…(salvage NousResearch#45486, NousResearch#44693) (NousResearch#46744)

* fix: declare websockets as a core dependency

* fix(deps): relax dev setuptools pin 82.0.1 -> 81.0.0 (torch caps setuptools<82)

torch >= 2.11 publishes Requires-Dist: setuptools<82, so any environment
that resolves the dev extra together with torch is unsatisfiable:

    $ uv pip install --dry-run ".[dev]" "torch==2.12.0"
    x No solution found when resolving dependencies:
      ... torch==2.12.0 and all versions of hermes-agent[dev] are incompatible.

81.0.0 is the latest release under the cap and stays inside the declared
build-system window (setuptools>=77.0,<83). uv.lock regenerated with
'uv lock'; diff is scoped to the setuptools entry.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* chore: map salvaged contributor emails for attribution

Add AUTHOR_MAP entries for the two cherry-picked contributors so the
check-attribution CI gate passes:
- yehaotian@xuanshudeMac-mini.local -> ArcanePivot (NousResearch#45486)
- dbeyer7@gmail.com -> benegessarit (NousResearch#44693)

---------

Co-authored-by: 玄枢 <yehaotian@xuanshudeMac-mini.local>
Co-authored-by: David Beyer <dbeyer7@gmail.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Teknium <127238744+teknium1@users.noreply.github.com>
habarmc1223-sudo pushed a commit to habarmc1223-sudo/hermes-agent-fluxmem that referenced this pull request Jul 8, 2026
…(salvage NousResearch#45486, NousResearch#44693) (NousResearch#46744)

* fix: declare websockets as a core dependency

* fix(deps): relax dev setuptools pin 82.0.1 -> 81.0.0 (torch caps setuptools<82)

torch >= 2.11 publishes Requires-Dist: setuptools<82, so any environment
that resolves the dev extra together with torch is unsatisfiable:

    $ uv pip install --dry-run ".[dev]" "torch==2.12.0"
    x No solution found when resolving dependencies:
      ... torch==2.12.0 and all versions of hermes-agent[dev] are incompatible.

81.0.0 is the latest release under the cap and stays inside the declared
build-system window (setuptools>=77.0,<83). uv.lock regenerated with
'uv lock'; diff is scoped to the setuptools entry.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* chore: map salvaged contributor emails for attribution

Add AUTHOR_MAP entries for the two cherry-picked contributors so the
check-attribution CI gate passes:
- yehaotian@xuanshudeMac-mini.local -> ArcanePivot (NousResearch#45486)
- dbeyer7@gmail.com -> benegessarit (NousResearch#44693)

---------

Co-authored-by: 玄枢 <yehaotian@xuanshudeMac-mini.local>
Co-authored-by: David Beyer <dbeyer7@gmail.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Teknium <127238744+teknium1@users.noreply.github.com>
santhreal pushed a commit to santhreal/hermes-agent that referenced this pull request Jul 13, 2026
…(salvage NousResearch#45486, NousResearch#44693) (NousResearch#46744)

* fix: declare websockets as a core dependency

* fix(deps): relax dev setuptools pin 82.0.1 -> 81.0.0 (torch caps setuptools<82)

torch >= 2.11 publishes Requires-Dist: setuptools<82, so any environment
that resolves the dev extra together with torch is unsatisfiable:

    $ uv pip install --dry-run ".[dev]" "torch==2.12.0"
    x No solution found when resolving dependencies:
      ... torch==2.12.0 and all versions of hermes-agent[dev] are incompatible.

81.0.0 is the latest release under the cap and stays inside the declared
build-system window (setuptools>=77.0,<83). uv.lock regenerated with
'uv lock'; diff is scoped to the setuptools entry.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* chore: map salvaged contributor emails for attribution

Add AUTHOR_MAP entries for the two cherry-picked contributors so the
check-attribution CI gate passes:
- yehaotian@xuanshudeMac-mini.local -> ArcanePivot (NousResearch#45486)
- dbeyer7@gmail.com -> benegessarit (NousResearch#44693)

---------

Co-authored-by: 玄枢 <yehaotian@xuanshudeMac-mini.local>
Co-authored-by: David Beyer <dbeyer7@gmail.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Teknium <127238744+teknium1@users.noreply.github.com>
Gravezzz pushed a commit to Gravezzz/hermes-agent that referenced this pull request Jul 21, 2026
…(salvage NousResearch#45486, NousResearch#44693) (NousResearch#46744)

* fix: declare websockets as a core dependency

* fix(deps): relax dev setuptools pin 82.0.1 -> 81.0.0 (torch caps setuptools<82)

torch >= 2.11 publishes Requires-Dist: setuptools<82, so any environment
that resolves the dev extra together with torch is unsatisfiable:

    $ uv pip install --dry-run ".[dev]" "torch==2.12.0"
    x No solution found when resolving dependencies:
      ... torch==2.12.0 and all versions of hermes-agent[dev] are incompatible.

81.0.0 is the latest release under the cap and stays inside the declared
build-system window (setuptools>=77.0,<83). uv.lock regenerated with
'uv lock'; diff is scoped to the setuptools entry.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* chore: map salvaged contributor emails for attribution

Add AUTHOR_MAP entries for the two cherry-picked contributors so the
check-attribution CI gate passes:
- yehaotian@xuanshudeMac-mini.local -> ArcanePivot (NousResearch#45486)
- dbeyer7@gmail.com -> benegessarit (NousResearch#44693)

---------

Co-authored-by: 玄枢 <yehaotian@xuanshudeMac-mini.local>
Co-authored-by: David Beyer <dbeyer7@gmail.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Teknium <127238744+teknium1@users.noreply.github.com>
leewenjie pushed a commit to leewenjie/hermes-agent that referenced this pull request Aug 7, 2026
…(salvage NousResearch#45486, NousResearch#44693) (NousResearch#46744)

* fix: declare websockets as a core dependency

* fix(deps): relax dev setuptools pin 82.0.1 -> 81.0.0 (torch caps setuptools<82)

torch >= 2.11 publishes Requires-Dist: setuptools<82, so any environment
that resolves the dev extra together with torch is unsatisfiable:

    $ uv pip install --dry-run ".[dev]" "torch==2.12.0"
    x No solution found when resolving dependencies:
      ... torch==2.12.0 and all versions of hermes-agent[dev] are incompatible.

81.0.0 is the latest release under the cap and stays inside the declared
build-system window (setuptools>=77.0,<83). uv.lock regenerated with
'uv lock'; diff is scoped to the setuptools entry.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* chore: map salvaged contributor emails for attribution

Add AUTHOR_MAP entries for the two cherry-picked contributors so the
check-attribution CI gate passes:
- yehaotian@xuanshudeMac-mini.local -> ArcanePivot (NousResearch#45486)
- dbeyer7@gmail.com -> benegessarit (NousResearch#44693)

---------

Co-authored-by: 玄枢 <yehaotian@xuanshudeMac-mini.local>
Co-authored-by: David Beyer <dbeyer7@gmail.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Teknium <127238744+teknium1@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp/agent Core agent runtime: loop, agent_init, prompt builder, context-compression, responses endpoint P2 Medium — degraded but workaround exists tool/browser Browser automation (CDP, Playwright) type/bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants