본관은 안산(安山). 아버지는 진주목사 김성경(金星慶)이다.
일찍이 고려 때에 벼슬하였으나, 새 왕조 창업에 찬성하고 이성계(李成桂)를 지지하였다.
조선 개국 후 삼군절도사를 거쳐 이조전서를 지냈는데, 인사관리를 잘하였다. 1396년(태조 5) 판예빈시사(判禮賓寺事)가 되어 전라도와 충청도 각지의 성을 수축하고 군비를 점검하는 한편 병선(兵船)의 허실을 조사하였다.
1400년 이방간(李芳幹)의 난이 일어나자 한성부윤으로서 이방원(李芳遠: 뒤에 태종)에 협력하여 이를 진압, 좌명공신 4등에 책록되고, 연성군(蓮城君)에 봉해졌다. 그 뒤 공안부윤(恭安府尹)이 되었는데, 병을 핑계로 명나라의 사행을 회피하여 대간의 탄핵을 받기도 하였다.
1404년(태종 4) 좌군도총제(左軍都摠制), 1408년 개성부유후(開城府留後)를 역임하고, 1410년 성절사로 명나라에 다녀왔다. 용맹하고 매사에 적극적이었으나, 재물을 좋아하여 사람들로부터 비난을 받았다. 시호는 위정(威靖)이다.