feat(install): add hermes-agent to brew manifest (operator 2026-05-27 Max-decided dependency)#5547
Merged
AceHack merged 3 commits intoMay 27, 2026
Conversation
… 'Max recently decide to add this dependency') Operator confirmed: external vendor-agnostic AI agent harness from NousResearch (https://github.com/nousresearch/hermes-agent ; https://hermes-agent.nousresearch.com/). Not to be confused with the Lucent-internal Hermes K8s agent runtime at full-ai-cluster/k8s/applications/hermes/ (separate substrate; same naming collision). Package details: - Formula: hermes-agent (Homebrew/homebrew-core) - Stable: 2026.5.16 (bottled binary) - License: MIT - Dependencies: certifi, cryptography, libyaml, pydantic, python@3.14 (all auto-resolved by brew) Per tools/setup/install.sh discipline: "Safe to run repeatedly — detect-first-install-else-update. Safe to run daily to keep tools fresh." Adding to manifest means next install.sh run ensures hermes-agent is installed and up-to-date on every dev machine + CI runner + devcontainer image per GOVERNANCE.md §24 three-way parity. Composes with operator's machine configuration (passwordless sudo for routine operations + Touch ID for dd) — brew install of hermes-agent runs zero-friction on operator's Mac per the framework substrate- engineering principle applied at OS scope (frictionless for routine; human-in-loop for irreversible). Operator authorization: "if you want to fix / investigate the isuess Prism called out first before we test again is fine" + confirmed URLs after grep+brew-search disambiguation.
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
…perator 2026-05-27 'we can remove the hermes k8s stuff that was just miscategorazation')
Operator authorization to remove the K8s Hermes substrate that was
miscategorized. The Application.yaml literally had "TODO: AMBIGUOUS
COMPONENT" header noting confusion between Cosmos Hermes IBC
relayer + Comma.ai Hermes + Lucent-internal custom AI agent — none
of which matched the actually-needed external NousResearch hermes-
agent (added to brew manifest in this PR).
Removed:
- full-ai-cluster/k8s/applications/hermes/Application.yaml
- full-ai-cluster/k8s/applications/hermes/deployment.yaml
Updated cross-references to preserve substrate-honest discipline:
- full-ai-cluster/dev-cluster/SYNC-WAVES.md: removed Wave 20 hermes
line + generalized "Apps with secret dependencies late" prose from
Hermes-specific to "agent-runtime workloads" generic framing
- full-ai-cluster/k8s/applications/hindsight/Application.yaml:
removed Hermes-pairing prose; generalized to "any in-cluster agent
runtime that needs memory persistence" + "consumer-agent's LLM
choice" (preserves Hindsight's role without specifying Hermes K8s)
Composes with hermes-agent brew manifest addition in this same PR:
the actually-needed Hermes substrate is the external NousResearch
hermes-agent (now in brew manifest); the K8s Hermes was a different
component that was miscategorized + named-collision-prone.
Per the framework's retraction-native discipline: removal is
substrate-honest cleanup; substrate-archaeology preserves the
removed state in git history; no harm to ancestor commits or
downstream consumers since the K8s Hermes was placeholder image
("zeta-hermes:placeholder") + never functional.
There was a problem hiding this comment.
Pull request overview
Adds hermes-agent to the macOS Homebrew manifest so tools/setup/macos.sh will install/upgrade it as part of the standard bootstrap flow, with inline provenance notes to distinguish it from the repo’s internal Hermes K8s runtime.
Changes:
- Add
hermes-agenttotools/setup/manifests/brew. - Document provenance/intent in the manifest comments (including a distinction from
full-ai-cluster/k8s/applications/hermes/).
5 tasks
…ided' to 'maintainer-decided' per name-attribution convention + remove hard-coded transitive-dep list (likely to drift; brew info is authoritative)
AceHack
added a commit
that referenced
this pull request
May 27, 2026
… for fast-moving tools (operator 2026-05-27) (#5558) * docs(B-0863): file Ace package manager one-liner curl-install repository row (operator 2026-05-27 'we can keep a reposity of them for things that change too fast for homebrew') Operator-directed substrate-engineering target row: > "one thing i want to support with the ace package manager is one > liner like this curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash > we can keep a reposity of them for things that change too fast for > homebrew and such. hermes would be a candidate" Row content: - Substrate-engineering problem: fast-moving tools (AI agent harnesses shipping multiple releases per week) update faster than Homebrew formula updates; existing install paths can't keep up - Ace one-liner pattern: curated repository of upstream curl-bash install commands with vendor-attribution + trust-assumption + verification-pattern + brew-fallback discipline - Hermes-agent as canonical first example (PR #5547 added to brew manifest short-term; one-liner pattern is medium-term substrate for this canonical instance) - 6-component decomposition (B-0863.1-6) for incremental implementation: schema design + one-liner-runner + initial registry population + brew-vs-one-liner fallback + vendor-key-pinning + integration with install.sh - Composition with B-0288 Ace + B-0824 package-manager-of-package- managers + B-0840 thermal-forgetting + B-0805 deps-current-version- audit + B-0860 Nemerle + PR #5547 - 6 rules cited: rule-0-no-sh-files + dep-pin-search-first-authority + verify-existing-substrate-before-authoring + NCI HC-8 + methodology-hard-limits + honor-those-that-came-before - Substrate-honest framing: NOT replacement of Homebrew; NOT bypass of supply-chain-security; NOT immediate priority; opportunistic implementation per sub-row decomposition Priority P2 — substrate-engineering target; lands incrementally when Ace package manager substrate-engineering work resumes. BACKLOG.md regenerated for B-0863 entry. * docs(B-0863): add declarative-mapping discipline section (operator 2026-05-27 refinement) Operator clarification: > "they can still be declarative mappings to the oneliners like the > rest of our ace package manger backlog" The one-liner registry entries are NOT opaque shell-out commands; they are DECLARATIVE MAPPINGS fitting Ace's broader discipline (per B-0288 + B-0824). New section adds: - Sketched declarative-mapping schema (YAML) showing install_methods array with brew + one_liner + github_release alternatives + Ace dispatching on availability/freshness - 8-row consistency table mapping framework substrate scopes to their declarative-mapping forms (Result<T, TFeedback> / OPLE / ConvFeedback / brew manifest / mise.toml / Ace one-liner registry / ArgoCD / K8s manifests) - Pattern statement: substrate-engineering work prefers DECLARATIVE MAPPINGS over imperative shell-out (auditable + composable + version-trackable + retraction-native-compliant) - Composition with PR #5516 asymmetric-authorship rule: VENDOR defines install-script content; OPERATOR + Ace declare dispatch + trust-assumption acknowledgment This sharpens B-0863's substrate-engineering target from "curl-bash registry" to "declarative-mapping registry that supports curl-bash as one install_method among others." --------- Co-authored-by: Lior <lior@zeta.dev>
This was referenced May 27, 2026
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
Adds NousResearch hermes-agent (external vendor-agnostic AI agent
harness) to `tools/setup/manifests/brew` per operator authorization:
Confirmed URLs from operator: https://github.com/nousresearch/hermes-agent + https://hermes-agent.nousresearch.com/
NOT the Lucent-internal Hermes K8s agent runtime at
`full-ai-cluster/k8s/applications/hermes/` (same name, different
substrate; rule body distinguishes).
What changes
Single-line addition to brew manifest with provenance comment.
Idempotent — `brew install hermes-agent` skips if present per
install.sh "detect-first-install-else-update" discipline.
Test plan
comment explaining provenance)
(stable 2026.5.16, bottled, MIT, Homebrew/homebrew-core)
works (zero-friction per passwordless sudo config)
🤖 Generated with Claude Code