By default, Evil Client uses Net::HTTP-based connection to send requests.

If you need another user agent, change it to you client via connection writer. The connection can be an object with method #call that takes rack environment (from stack of middleware) and returns rack response back.

conn = Object.new do
  def self.call(env)
    [200, {"Content-Type"=>"application/json"}, ['{"age":7}']]
  end
end

class CatsClient < Evil::Client
  connection = conn
end