# Tool-env


`create { tools = [...] }` builds a typed `ToolEnvSpec` from a list
of raw `{ name; package }` records; each is wrapped via
`mb.operations.tool` so `package` is carried as a typed
`Thunk Derivation`.

`merge a b` composes two envs — `b` overrides any `a` tool whose
`name` matches. `empty` is the identity.

