Skip to content

Add Hermes Agent as a Tier 2 harness - #629

Merged
salman1993 merged 3 commits into
mainfrom
codex/hermes-tier2-research
Oct 6, 2026
Merged

salman1993 merged 3 commits into
mainfrom
codex/hermes-tier2-research

Conversation

@salman1993

@salman1993 salman1993 commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

Why

New Buzz has no named Hermes Agent option. Hermes should be an externally installed Tier 2 harness, with setup behind Add harness.

What

  • Add Hermes discovery, manual setup, and create/edit support using its own model and sign-in defaults.
  • Keep Goose and Pi visible, add the requested Settings icons, and widen the Add harness catalog with shorter copy.

How

Rust and TypeScript share one preset JSON file, with Hermes as its first entry. Native discovery still owns availability and selectable choices. The existing ACP launcher runs the harness; runtime-specific defaults stay in the pinned bridge.

Saved executable paths retain their identity. Unsupported saved model/provider values stay visible until the user explicitly resets them; the native launch guard enforces that requirement too.

Risk

Desktop setup and agent creation were exercised locally. Packaged discovery and persistence after restart remain unverified. Windows discovery does not yet try launcher suffixes such as .exe or .cmd.

Testing

Exercised the real Settings and agent-form components in a browser fixture with simulated native discovery. Checked missing/installed status, refresh, terminal instructions, setup links, keyboard dismissal, and focus return. Checked light/dark layouts from 390px to 1280px wide; expanded instructions scroll above the footer.

Tested Add harness catalog, dark mode at 1280×820

Regression coverage uses mounted components and native/controller tests. Saved-path and invalid-selector cases fail before the fix; the catalog disclosure assertion fails before the layout change. Browser cases added/removed: 0; layout evidence comes from the browser checks above.

Independent agent review found no blockers, including the final credentials note. Agent diagnostics exercised Hermes ACP initialization, session creation, and a prompt, and reproduced the missing-credential failure with Buzz’s clean launch environment. Setup guidance now says to store provider API keys in ~/.hermes/.env.

Human desktop testing is complete; screenshots are posted in the PR.

buzz-review-completed

To try it, run bin/just desktop from this branch, open Settings → Harnesses → Add harness, then follow the Hermes setup guide. Use Check again after installing hermes-acp, create an agent with Hermes, and verify start, an owner-authorized reply, stop, and persistence after restart.

Bigger picture

Amp, Cursor, shared ACP model browsing, Hermes device defaults, and old-agent import remain follow-ups. The preset registry replaces the Hermes-specific path without adding those features.

Generated with Codex

codex added 2 commits October 5, 2026 19:42
Signed-off-by: Codex <codex@openai.com>
Signed-off-by: Codex <codex@openai.com>
@salman1993

Copy link
Copy Markdown
Contributor Author

🤖 Tested Add harness UI, using the real Buzz React components with simulated native discovery. This is the widened catalog in dark mode at a 1280×820 viewport. Terminal instructions start collapsed; the setup guide stays in the footer.

Tested Hermes Add harness catalog

The screenshot demonstrates the UI. Real Hermes launch, credentials, and replies remain unverified, and the PR stays draft pending those checks and final human testing.

Signed-off-by: Codex <codex@openai.com>
@salman1993
salman1993 marked this pull request as ready for review October 6, 2026 14:47
@salman1993
salman1993 requested review from a team, comp615 and wesbillman as code owners October 6, 2026 14:47
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 6, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-06T14:51:29.392686Z 48af073 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 48af073718

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +8 to +12
export const GooseLogoIcon = defineIcon("custom", GooseLogoArtwork, {
meaning: "Goose harness",
category: "Custom brand mark",
provenance:
"Official Block Goose mark (Apache-2.0), reused from old Buzz by explicit design request; see NOTICE.md",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Replace the custom harness marks with Tabler icons

These new defineIcon("custom", ...) exports introduce non-Tabler Goose and Pi artwork, while the repository rule requires icons to use Tabler through this gateway and reserves icon choices for the designer. Replace these custom SVG marks with approved Tabler exports, or update the repository guidance if a documented exception was explicitly approved.

AGENTS.md reference: AGENTS.md:L221-L221

Useful? React with 👍 / 👎.

@wesbillman wesbillman left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One change requested in the public review material:

  • [P2] Redact the internal deployment hostname from the testing screenshot. The second image (“Create agent”) in the testing comment exposes an internal relay address in the dialog description. Replace it with a cropped/redacted screenshot or a synthetic community URL, and remove the unredacted attachment from the public PR material. This is a publication-privacy finding, not a Hermes runtime defect; no credential exposure was observed in that image.

No additional source-demonstrated correctness defects found in discovery, saved-path recovery, default-only model/provider enforcement, or the shared editor/dialog changes. The existing icon-policy bot comment does not establish a P1 functional defect: the PR states an explicit design request and includes brand provenance/attribution.

Star Lord automated source review via Wes’s account; head 48af0737189f4881cd1b442780e0634d1814b6db, base 0bbf40aaaf0eb1fdb21a08c3500079922c812df8. No PR code or tests executed. Hosted JavaScript/DCO checks passed at the snapshot; Rust/browser journeys were still running and Windows native validation was skipped. Packaged discovery, restart persistence, and live ACP behavior were not independently verified.

@salman1993

Copy link
Copy Markdown
Contributor Author

🤖 Privacy edit: removed the Create agent screenshot that showed an internal deployment address. The other human testing screenshots are preserved.

more screenshots from testing:
Screenshot 2026-10-06 at 10 42 06 AM
Screenshot 2026-10-06 at 10 25 32 AM

@wesbillman wesbillman left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No blocking correctness or security defects found in the intended default-only Hermes integration. Posting a comment, not an approval.

  • Reviewed discovery → saved executable identity → create/edit → native launch, including cross-harness defaults, environment restrictions, and the pinned ACP bridge. Independent UI and native review lanes found no blockers. The earlier internal-hostname screenshot is absent from the current public PR comments; I inspected the replacement images.
  • Intentional compatibility change: existing custom hermes-acp agents with an explicit model/provider must use the editor’s reset-to-defaults action before starting. Per-agent Hermes model selection is not supported by this slice.
  • Validation: existing CI passed; Windows native validation was skipped. Local review was source/test inspection and git diff --check, not another suite or live Hermes run. Packaged discovery, persistence after app restart, and Windows launcher discovery remain unverified/limited as documented. Author-reported desktop/ACP checks are not independent runtime verification.

Head: 48af0737189f4881cd1b442780e0634d1814b6db; target base: 0bbf40aaaf0eb1fdb21a08c3500079922c812df8; diff merge-base: 45fc4e76bc8ded3f31fbb5ce4a39f0397d649e7f. No changed-file overlap with intervening base commits.

Carl, an automated reviewer, commenting via Wes’s GitHub account.

@salman1993
salman1993 merged commit 5aef2f0 into main Oct 6, 2026
22 checks passed
@salman1993
salman1993 deleted the codex/hermes-tier2-research branch October 6, 2026 16:28
johnmatthewtennant pushed a commit that referenced this pull request Oct 6, 2026
* origin/main:
  fix(messages): show real upload progress for composer images (#662)
  chore: Use redirect_uri for oauth callback and enable Builderlab state param (#643)
  test(browser): measure the search palette after its entrance (#653)
  Cache coverage checks during read-state retention (#576)
  docs: define shared host boundaries and Canvas contract cases (#658)
  feat(plugins): allow bounded output for agent tool queries (#649)
  test(browser): measure GitHub panel actions after its enter motion (#625)
  Read whole DMs and end a channel's manual unread at the bottom (#616)
  docs: update Goose session viewer and add Pi session viewer (#651)
  Add Hermes Agent as a Tier 2 harness (#629)

Signed-off-by: Luna <0828be588d5c9c4d092c5b1cf01761d5aef63d6b104807fd8e8284d517dd1a99@buzz.block.builderlab.xyz>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants