This is a sodium acetate reusable hand warmer. The flexing of the small metal disc initiates nucleation in the sodium acetate solution. The sodium acetate changes from liquid to solid. To “recharge” the hand warmer, you just boil it in water for 10-15 minutes.
Reusable Hand Warmers (Amazon Affiliate)