agency or direct company

been looking at grad roles lately and saw a lot of agencies hiring grad software engineers. from what I understood they basically hire these software engineers and send them off to clients who needs them.

so in a sense, the agency acts as a middle man for the soft eng and the client aka company.

if you’re newly grad, is it better to accept the offer from the agency or accept the offer from a small-no-name company?

assuming that you do not have any internships/placements.