본관은 안동(安東). 호는 백파(白波). 평안남도 평원 출신. 김기섭(金基燮)의 셋째 아들이다.
일찍이 만주로 건너가 봉천성(奉天省) 유하현(柳河縣)의 신흥무관학교(新興武官學校)와 문회고급중학교(文會高級中學校)를 졸업하였다. 1927년 유하현 삼원보(三源堡)의 동명중학교(東明中學校)에서 교편을 잡고 있던 중, 1931년 1월 조선혁명당에 가입하고 군사령부참모장으로 임명되어, 봉천성 영릉가전투(永稜街戰鬪)와 통화현전투(通化縣戰鬪)에 참가하여 많은 전공을 세웠다.
만주사변 이후 유동열(柳東說) · 최동오(崔東旿)와 함께 조선혁명당 대표로 난징[南京]에 파견되어, 조선의용대 · 조선독립당 · 광복동지회 등의 약 6개 단체 대표들과 회합하여 한국대일전선통일동맹을 결성하여 민족주의자 계열을 상해에 집결시키려 하였으나, 뜻을 이루지 못하자 대부분의 지도자들은 본래의 계열로 되돌아갔다.
1935년 7월 조선민족혁명당이 결성된 뒤 조직부원과 국민부장을 역임하였다. 얼마뒤 조선민족혁명당과 결별하고 조선혁명당을 재건하였다. 그 뒤 한국광복운동단체연합회에 참여하여 대한민국임시정부의 외곽단체로 활동하였다. 1938년 창사(長沙)에서 이청천(李靑天) 등과 함께 임시정부 군무부에 소속되어 군사학을 정리 · 편수하였고, 1940년 9월 17일 한국광복군이 충칭[重慶]에서 편성되자 총사령부참모로 취임하였다.
1941년 광복군 제3지대장으로 취임한 뒤, 안후이성[安徽省]의 푸양[阜陽]에 근거지를 두고 대일선전 · 초모공작 · 정보수집을 지도하는 한편, 유격전을 전개하는 등 많은 전공을 세웠다. 주중미군(駐中美軍)과 합동작전으로 특수공작반(OSS)을 설치하여 국내진공작전을 도모하던 중 조국 광복을 맞았다. 1945년 8 · 15광복 뒤에 광복군 총사령부의 주상해판사처처장(駐上海辦事處處長)에 임명되어 교포의 생명과 재산을 보호하였으며, 안전 귀환을 위하여 활동, 3만여 명의 교포를 귀국시켰다.
1946년 9월 한국독립당의 만주특별당 부위원장에 취임하여, 교포 1만 2000여 명을 미군 비행기로 호송, 톈진[天津]에서 귀국시켰다. 1948년 4월 귀국하고 7월 한국독립당의 조직 부장에 취임하였다. 이승만 정권에 반대하다가 군법회의에 회부되어 15년 징역형을 언도하고 형을 살다가, 1950년 6월에 석방되었다. 1960년 4월 한국독립당을 재건하여 최고대표위원에 취임, 활동하였다.
1962년 건국훈장 독립장이 수여되었다.