Skip to content

herdr-core: agent facts for another hc machine's PC come from this PC #2967

Closed

Description

@devswha

Follow-up to #2955 (#2497).

Problem

On herdr-core, a machine the core reaches (hc machine add lab) is a PC of its own, served by a server Ovis runs on this PC for it. That server reads agent facts from this PC, not from lab:

  • Shell-started agents (omo, gjc) fail on such a PC. They are offered because this PC's PATH has them. Starting one types this PC's absolute path into lab's shell. Then, because pane.process_info deliberately gives no pids for another machine (they would name this PC's processes), startShellAgent never sees the agent come up and answers "<kind> did not start in the pane". Reproduced at unit level in the feat(herdr-core): show the core's other machines as PCs of their own #2955 review: the same fake terminal running gjc gave started on this PC's core and did not start through MachineScopedConnection with otherMachine.
  • The agent catalog and Install describe this PC. /api/agents and /api/agent-catalog on that PC use this PC's PATH and platform, and Install opens its tab in the server's own empty home folder here, which does not exist on lab. (Not reproduced.)

Agents herdr starts by kind (claude, codex, …) are not affected: they are typed into the remote shell by name and confirmed from hc's foreground record.

Proposal

  • Offer no shell-started agents on an hc PC, or confirm their start from hc's terminal record instead of pane.process_info.
  • Answer the agent catalog for an hc PC from that machine (hc exec --on), or as unknown, and start Install's tab with no folder (that machine's home).

Activity

  1. added a commit that references this issue on Nov 5, 2026
    f80c218
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions