Whisk together the chili powder, cumin, and smoked paprika in a small bowl. Rub the spice mix into the beef, covering each side evenly.
Heat olive oil in a large skillet over medium-high heat. Carefully place the beef in the skillet and sear on each side until browned, about 2 minutes per side. Remove the beef from the skillet and place in the bottom of a slow cooker.
Add diced onion to the saute pan. Saute for 3 minutes, stirring occasionally. Add the garlic and saute for 1 minute.
Add the beef stock and stir the pan to deglaze it, scraping up any browned bits from the bottom of the pan.
Add tomato paste and minced chipotle, and whisk into the pan sauce until combined. Bring the sauce to a boil, reduce the heat, and simmer for a 3-5 minutes until the sauce has reduced and thickened slightly. Pour the pan sauce down over the beef in the slow cooker.
Cover and cook on low for 6-8 hours, or on high for 3-4 hours, until the beef shreds easily.
Shred the beef with two forks, and toss to coat with any of the remaining juices.