Handle to a provisioned, reusable agent. new/1 absorbs the Store.File JSON (string-key) round-trip.
@type t() :: %ReqManagedAgents.Agent.Handle{ agent_id: String.t(), digest: String.t(), name: String.t() }
@spec new(t() | map()) :: t()