고려 무신정권기의 무신. 병부상서를 지낸 공정(公正, 公靖)의 아들이다. 1231년(고종 18) 몽고의 제1차침략이 시작되자 당시 상장군으로서 고려의 방어군을 거느리고 출정하여 동선역(洞仙驛: 黃州 부근)에서 적 선봉대의 기습을 받아 이를 격퇴하였으나, 유시(流矢)에 맞아 부상하였다. 1232년 고려 조정이 강화로 천도한 직후 어사대(御史臺)의 조예(○隷) 이통(李通)이 경기(京畿)의 초적(草賊) 및 개경 성중의 노예를 모아 반란을 일으키자, 후군진주(後軍陣主)로서 조염경(趙廉卿), 최근(崔瑾) 등과 함께 3군을 거느리고 출정하여 난을 평정하였다. 또한, 같은해 충주에서 노군(奴軍)의 난이 재발하자, 역시 3군을 거느리고 출동하여 반란의 괴수인 승려 우본(牛本)을 죽이고 난을 진정시켰다. 1233년에는 중군병마사가 되어 적괴(賊魁) 거복(居卜), 왕심(往心)을 죽여 용문창(龍門倉)의 난을 평정하였고, 다시 6월에는 동경(東京: 경주)에서 반란을 일으킨 최산(崔山), 이유(李儒) 등을 영천에서 주멸(誅滅)하고 개선하는 등 대몽항쟁기에 있어서 초기의 민란을 진압하는 데 자주 출정하여 공을 세웠으나 시기하는 자들의 모함을 두려워하여 병을 핑계로 출입을 끊었다. 벼슬은 문하시랑평장사에 이르렀다. 성품이 강직하고 용력(勇力)이 있었으며, 특히 활을 잘 쏘았다고 한다. 시호는 의열(義烈)이다.