Criminal law enforcement depends on the actions of public agents such as police officers, but there is no standard economic model of police as public agents. We seek to remedy this deficiency by offering an agency model of police behavior. We begin by explaining why the standard contracting solutions are unlikely to work. Instead, we follow recent literature exploring intrinsic motivation and posit heterogeneity in the preferences of potential agents. Drawing on experimental evidence on punishment preferences (so-called “altruistic punishment”), in which subjects reveal a preference for punishing wrongdoers, our model identifies circumstances in which “punitive” individuals (with stronger-than-average punishment preferences) will self-select into law enforcement jobs that offer the opportunity to punish (or facilitate the punishment of) wrongdoers. Such “punitive” agents will accept a lower salary and be less likely to shirk, but create agency costs associated with their excessive zeal (relative to the public’s preferences) in searching, seizing, and punishing suspects. Under plausible assumptions, the public chooses to hire punitive police agents, while submitting them to monitoring by other agents (such as the judiciary) with average punishment preferences. Thus, two kinds of agents are better than one. We explore various implications for police shirking, corruption, and the content of the criminal procedure rights that the judiciary enforces.