Edit Agent dialog: Harness field is not editable (clicking closes dialog or opens Model picker instead)
- Dominant language
- Rust
- Stars
- 32.7k
- Forks
- 4.3k
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 253
Description
**Describe the bug**
In the desktop app's per-agent "Edit Agent" dialog, the "Harness" field under "AI configuration" → "Customize for this agent" is not interactive. It displays the current harness (e.g. "Codex") as plain text alongside "Model", but clicking on it does nothing useful:
- Clicking directly on the harness value (e.g. "Codex") sometimes opens the **Model** picker instead (scoped to the current harness's models), not a harness picker.
- Clicking on the "Harness" label itself closes the Edit Agent dialog entirely, returning to the read-only agent Info view.
- No keyboard-navigable control, chevron, or other affordance for changing harness was found in the dialog.
As a workaround, I tried directly editing the on-disk `managed-agents.json` (`agent_command` / `agent_command_override` fields) while Buzz was fully quit, then relaunching. This worked once for one agent, but did not persist reliably — on subsequent app relaunches/community reconnects, the edited agent(s) reverted back to the original default harness (Codex) even though the on-disk JSON still showed the edited values. This suggests agent launch config may be resynced from elsewhere (possibly relay-side) on reconnect, overriding local edits, which means there's currently no reliable way (UI or otherwise) to change an existing agent's harness after creation.
**Steps to reproduce**
1. Open Buzz Desktop, go to Agents.
2. Select an existing managed agent (e.g. one of the built-in Welcome Team personas) → Edit.
3. Under "AI configuration", select "Customize for this agent".
4. Try to change the "Harness" value (currently shows the default, e.g. "Codex") to a different available harness (e.g. Hermes Agent or Claude Code).
5. Observe: clicking the harness value/label does not open a working harness picker.
**Expected behavior**
Clicking the "Harness" field should open a picker listing available harnesses (matching what's offered during onboarding / the harness catalog, e.g. Claude Code, Codex, Hermes Agent, Goose, etc.), allowing the agent's harness to be changed and persisted, the same way the Model field opens a working picker.
**Version and platform**
- Buzz version: 0.5.11 (also reproduced on 0.5.7 prior to auto-update)
- OS: macOS (Apple Silicon)
**Logs / additional context**
- Confirmed via `agents/logs/__*.log` that the agent continues launching with the original default harness command (e.g. `.../node-tools/bin/codex-acp`) even after the on-disk `managed-agents.json` record for that agent shows an edited `agent_command`/`agent_command_override` pointing at a different harness binary.
- This makes it effectively impossible to move an existing agent off the default harness once created, short of deleting and recreating it (untested) or a fix to this dialog.
Contributor guide
Research direction
Start in the desktop app's Edit Agent dialog and trace how the Harness and Model fields are wired, then inspect managed-agents.json and the agents/logs/__*.log evidence for persistence and reconnect resync behavior. Done means the Harness field opens the available harness catalog, changes the agent's launch configuration, and retains that choice after relaunch or community reconnect.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- macos, rust
- Domain
- desktop
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100