Expand description
Install a validated .muragent archive onto the local host.
Single source of truth for the .muragent install flow, shared by every
surface (CLI, Hub, Commander). The flow is:
- Run the full 11-step validation pipeline (
validator::validate). - Validate the agent slug shape — prevents
agents/../../etc. - Check the trust store: a key change without a rotation manifest is a hard refuse (§7.1.1).
- Detect collision vs update by matching
agent.original_uuidagainst any existing agent at the same slug. Same UUID → update (preservesdata/); different UUID → error. - Extract the payload to
<mur_home>/agents/<slug>/. - Upsert the trust store entry, marking surface and timestamps.
UI/print decisions belong to the caller; this module returns a structured
InstallOutcome describing what happened.
Structs§
- Install
Outcome - Result of a successful install or update.
Functions§
- install
- Install or update a
.muragentarchive. See module docs for the flow.