신라의 대신. 고조부는 금관가야의 마지막 왕인 구형왕, 증조부는 김무력(金武力), 할아버지는 김서현(金舒玄)이며 김유신(金庾信)의 6남 4녀 중 큰아들이다. 어머니는 태종무열왕의 셋째 딸 지소부인(智炤夫人) 인데 동복형제로 김원술(金元述), 김원정(金元貞), 김장이(金長耳), 김원망(金元望)이 있으며, 김군승(金軍勝)은 이복형제이다.
666년(문무왕 6) 4월 나마(奈麻)로서 천존(天存)의 아들 한림(漢林)과 함께 당나라에 파견되어 좌무위익부중랑장(左武衛翊府中郞將)의 직을 받고 숙위(宿衛)하였다. 668년 6월 당나라에서 사찬(沙飡)의 관등에 올라 있으면서 당나라 장수 유인궤(劉仁軌)를 따라 당나라 고종(高宗)의 고구려정벌 칙지(勅旨)를 가지고 당항진(黨項津: 지금의 경기도 화성군 남양면)에 도착하였다. 그뒤 한동안 기록이 없어 자세한 것은 알 수 없으나 집안이 대대로 출장입상(出將入相)의 집안이었던 점이나, 아버지인 유신이 당시 고구려 정벌군의 최고사령관인 대당대총관(大幢大摠管)의 직책에 있었던 점으로 보아 고구려 와의 전쟁에서 크게 활약하였으리라는 것을 짐작할 수 있다. 그뒤 683년(신문왕 3)에 왕이 일길찬(一吉飡) 김흠운(金欽運)의 딸을 왕비로 맞아들이게 되자 이찬(伊飡) 문영(文穎)과 함께 그 집에 가서 가례(嘉禮)날을 정하였다. 납채(納采)는 대아찬(大阿飡) 지상(知常)이 하였다. 이때 관등은 파진찬(波珍飡) 이었는데 뒤에 제2관등인 이찬 에까지 올랐다. 정치를 맡았을 때, 아버지의 휘하에서 고구려와 싸울 때 큰 공을 세워 사찬의 관등에 있던 열기(裂起)가 군수(郡守)를 희망하였으나 들어주지 않은 일이 있었다. 이에 열기가 기원사(祇園寺)의 승려 순경(順憬)에게 '그가 나의 청을 들어주지 않는 것은 아마 그의 아버지가 죽어 나를 잊은 모양인가 보다. '라고 하니, 뒤에 그가이 말을 듣고 삼년산군(三年山郡)의 태수(太守)로 천거하였다.
666년(문무왕 6) 4월 나마(奈麻)로서 천존(天存)의 아들 한림(漢林)과 함께 당나라에 파견되어 좌무위익부중랑장(左武衛翊府中郞將)의 직을 받고 숙위(宿衛)하였다. 668년 6월 당나라에서 사찬(沙飡)의 관등에 올라 있으면서 당나라 장수 유인궤(劉仁軌)를 따라 당나라 고종(高宗)의 고구려정벌 칙지(勅旨)를 가지고 당항진(黨項津: 지금의 경기도 화성군 남양면)에 도착하였다. 그뒤 한동안 기록이 없어 자세한 것은 알 수 없으나 집안이 대대로 출장입상(出將入相)의 집안이었던 점이나, 아버지인 유신이 당시 고구려 정벌군의 최고사령관인 대당대총관(大幢大摠管)의 직책에 있었던 점으로 보아 고구려 와의 전쟁에서 크게 활약하였으리라는 것을 짐작할 수 있다. 그뒤 683년(신문왕 3)에 왕이 일길찬(一吉飡) 김흠운(金欽運)의 딸을 왕비로 맞아들이게 되자 이찬(伊飡) 문영(文穎)과 함께 그 집에 가서 가례(嘉禮)날을 정하였다. 납채(納采)는 대아찬(大阿飡) 지상(知常)이 하였다. 이때 관등은 파진찬(波珍飡) 이었는데 뒤에 제2관등인 이찬 에까지 올랐다. 정치를 맡았을 때, 아버지의 휘하에서 고구려와 싸울 때 큰 공을 세워 사찬의 관등에 있던 열기(裂起)가 군수(郡守)를 희망하였으나 들어주지 않은 일이 있었다. 이에 열기가 기원사(祇園寺)의 승려 순경(順憬)에게 '그가 나의 청을 들어주지 않는 것은 아마 그의 아버지가 죽어 나를 잊은 모양인가 보다. '라고 하니, 뒤에 그가이 말을 듣고 삼년산군(三年山郡)의 태수(太守)로 천거하였다.