From Bulbapedia, the community-driven Pokémon encyclopedia.
An HM slave (known in the Japanese fandom as 秘伝要員 Secret Agent) is a Pokémon in a Trainer's party not for battling, but to provide support in the field through the use of Hidden Machines. HM slaves often will have all four move slots filled with HM moves or other moves usable outside of battle allowing smooth passage through caves, across oceans, or past other obstacles.
Many Pokémon have wide movepools, fit for HM slavery. Some trends persist throughout regions and games. Normal-type Pokémon are commonly used as HM slaves because of the abundance of Normal-type HMs. Water- and Flying-type Pokémon may be suitable HM slaves in some regions, depending on the HM distribution. With the ability to learn six HMs in Sinnoh, seven HMs in Johto, and five HMs in Unova, Bibarel is considered by players as one of the best HM slaves. While infrequently used for these purposes, Legendary Pokémon can typically learn many HM moves. In Generation V, Dragonite can learn all six HMs. Through Sketch, Smeargle can learn any move.
As Pokémon cannot learn more than four moves, Trainers may require two or more HM slaves in order to achieve sufficient coverage.
HM slaves may also be known as HM mules, among other variants.