국초에는 사적(司績)이라고 칭하였다가 995년(성종 14) 상서고공(尙書考功)으로 고쳤다.
관원으로는 문종 때 정5품의 낭중(郎中) 2인, 정6품의 원외랑(員外郎) 2인을 두었다가, 1275년(충렬왕 1)에 낭중을 정랑(正郎), 원외랑을 좌랑(佐郎)으로 고쳤으며, 1298년 충선왕이 전조(銓曹)에 병합하였다.
1356년(공민왕 5) 다시 고공사를 설치하여 낭중·원외랑을 두었다가 1362년 정랑·좌랑으로 개칭하였다. 1369년 직랑(直郎)·산랑(散郎)으로 고쳤으며, 1372년 다시 정랑·좌랑으로 개칭하였다.
이속(吏屬)으로는 문종 때 주사(主事) 2인, 영사(令史) 4인, 서령사(書令史) 4인, 계사(計史) 1인, 기관(記官) 2인, 산사(算士) 1인을 두었다.
1344년(충목왕 즉위년)이제현(李齊賢)이 상소문에서 “정방(政房)의 명칭은 권신(權臣)들의 세대에 생긴 것이지 옛 제도는 아닙니다. 마땅히 정방제도를 혁신하여 이것을 전리(典理)와 군부(軍簿)에 귀속시키고 고공사를 설치하여 그 공과를 평정하며……”라고 한 것으로 보아, 최우(崔瑀)가 정방을 설치한 뒤로는 고공사의 기능이 거의 유명무실해졌다가 공민왕 이후에야 되살아났음을 알 수 있다.