Toast the chiles in a dry skillet over medium heat. You don’t want to char them, you just want to make them more pliable as the heat softens them.
Discard the stems and the seeds from all the chipotles and cut the anchos in half. Toss the chiles in a small saucepan and add enough water to cover. Bring to a boil, remove from the heat, and let soak for 30 minutes.
Strain the chiles, reserving the soaking liquid.
Meanwhile, toss the whole spices in a dry skillet over medium heat until fragrant, about 40 seconds.
In a food processor, combine all the ingredients for the adobo, including the drained chiles but not the chile soaking liquid, and whiz to a purée. Add just enough of the chile soaking liquid to get it to the consistency of a paste. Taste for seasoning and adjust if you think it needs it.
Scrape the adobo into a clean jar, screw on a lid, and refrigerate. (You should have enough to fill an 8-ounce jar. It will be fine there for up to 4 months, but trust us, you’ll have used it way before then.)