본관은 칠원(漆原). 원나라로 도망갔다가 당시 세자였던 충렬왕을 만나 응견(鷹犬)으로 신임을 얻은 뒤 돌아와 군부판서(軍簿判書)·응양군상호군(鷹揚軍上護軍)에 오르기까지 갖은 악행을 저질렀던 윤수(尹秀)의 아들이다. 형은 윤길손(尹吉孫)이고, 아들은 윤환(尹桓)이다.
1270년(원종 11) 고려 정부가 몽고에 항복하고 개경으로 환도하자 배중손(裵仲孫)·노영희(盧永禧) 등이 강화도에서 삼별초(三別抄)를 이끌고 반기를 들어 진도로 향하였다.
이 때 낭장으로서 전중서사인 이숙진(李淑眞)과 함께 노예를 모아 구포(仇浦:경기도 광주의 서쪽 90리 남양과 경계에 있다)에서 싸워 5명을 베고 부락산(浮落山) 바닷가에서 군사의 위세로 삼별초 무리들을 쫓았다.
본래 격구(擊毬)를 잘 쳐 원나라 태자(太子: 뒤의 仁宗)의 동궁(東宮)에 출입하였고, 이로 인해 충선왕의 총애를 받아 중랑장(中郎將)이 되었다가 곧바로 대장군에 올랐다.
1309년(충선왕 1) 왕이 사랑하는 숙비(淑妃)가 순비(順妃)로 인해 곤경에 빠졌을 때 원나라 태자에게 사정해 구해줌으로써 더욱 왕의 신임을 얻었다. 이에 대호군이 되었으며, 같은 해 원나라에 가서 동녀(童女)와 환자(宦者)를 바쳤다.
1320년(충숙왕 7)에는 원나라에 가 새매[鷂]를 바쳤다. 뒤에 환관 백안독고사(伯安禿古思)의 뜻에 거슬려 실직하고 무안감무로 좌천되었다가 다시 기용되어 합포진변사(合浦鎭邊使)가 되었다.
1327년 심양왕 왕고(瀋陽王 王暠)의 사건이 수습되고 왕이 원나라에 억류되어 있는 동안 시종했던 신하들에 대한 포상이 있을 때 검교상호군(檢校上護軍)으로서 2등공신에 봉하여졌다.
1332년 충숙왕이 1년 만에 복위한 뒤 전왕이 총애하던 신하들을 모두 잡아들임에 따라 잠깐 옥에 갇혔으나, 원나라의 요구로 곧 풀려났다.