This document describes a higher-order logical framework called Hybrid that can reason about programming languages and logics. Hybrid uses higher-order abstract syntax to represent object logic expressions and implements inference rules in Coq. It consists of three layers: the object logic layer encodes the target language, the specification logic layer defines deductive rules for the object logic, and the reasoning logic layer is Coq. Hybrid improves on previous approaches by allowing more object logic judgments to be encoded and proves properties like cut elimination on the specification logic. The document provides an example encoding of the correspondence between HOAS and de Bruijn representations of lambda terms in Hybrid.