본관은 광산(光山). 자는 예근(禮謹), 호는 지월당(池月堂). 부정(副正) 김삼성(金三省)의 아들이다. 어려서부터 총명하여 10세에 시를 지어 세인을 놀라게 하였으며, 특히 이숭인(李崇仁)의 총애를 받았다.
고려가 망한 뒤로는 유세(遺世: 세상일을 잊음)의 뜻을 가져 거업(擧業)에 힘쓰지 아니하고 이름난 산수를 찾아 시작(詩作)으로 소일하였다. 문명으로 이름이 나자 태종 때 윤상(尹祥)의 천거로 남대(南臺)로 불렀으나 나아가지 않다가 그 뒤 부득이 한번 나아갔다가 바로 그만두었다.
세종 때는 그의 고명(高名)을 듣고 교리(校理)로 부르고 역마까지 보냈으나 세 번이나 거절하는 상소를 올리자 은명(恩命: 임금이 내리는 임관명령)을 끝내 거절한다 하여 북도(北道) 우후(虞侯)에 좌천시키므로 하는 수 없이 임지로 향하였다.
북변(北邊)에 있으면서 그의 시작(詩作)은 한층 더 깊이를 더하게 되었다. 곧 이어 제주목사로 특승되었으나 사직상소를 간절하게 올려 돌아가 쉬도록 특전을 받았다. 그는 평장동(平章洞)에 정자를 짓고 ‘池月(지월)’이란 편액을 달고 자연과 벗하며 시로써 일생을 보냈다.
『동국여지승람』에 실린 그의 시는 100편이 넘는다. 삼현사(三賢祠)에 봉안되었으며, 저서에는 『지월당유고(地月堂遺稿)』가 있다.