글자 그대로 풀이하면 닭 울음소리를 내고 개처럼 도둑질을 한다는 뜻으로, 아무 하잘것없는 재주도 다 쓸 곳이 있다는 의미로 쓰이는 말이다.
중국 전국시대에는 임금에 준하는 권력과 부를 소유하고 수많은 유세객과 선비를 모아 영향력을 행사하던 전국사공자(戰國四公子)가 있었다. 그 중 최고로 꼽히는 제나라의 맹상군(孟嘗君)과 관련된 고사다.
맹상군은 출신과 신분에 관계없이 자신을 찾아오는 인물이라면 누구라도 받아들였다. 그리하여 그가 개 도둑 출신과 닭 울음소리를 잘 내는 식객(食客)까지 받아들이자 다른 식객들은 눈살을 찌푸렸다. 그렇지만 맹상군은 아랑곳하지 않았다.
그 무렵 강대국인 진(秦) 소왕이 맹상군을 거의 강제적으로 초청했다. 이에 맹상군은 여러 식객들과 함께 진나라에 가게 되었다. 그러나 진나라에 머문 지 오래되었지만 맹상군 일행은 풀려나지 못했다. 결국 위기의식을 느끼게 된 맹상군 일행은 탈출하기 위해 꾀를 냈고, 소왕의 애첩에게 뇌물을 주고 소왕을 설득하고자 했다. 그러자 애첩은 여우 가죽으로 만든 귀한 호백구란 옷을 요구했다. 그러나 맹상군이 진나라에 올 때 가지고 온 그 옷은 이미 소왕에게 선물로 바친 후였다. 그러자 개 도둑 출신 식객이 소왕의 침전으로 들어 호백구를 훔쳐 왔고, 맹상군은 그 옷을 애첩에게 바친 후 겨우 탈출할 수 있었다.한편 애첩의 도움을 받아 객사를 나온 맹상군 일행은 한시바삐 진나라를 벗어나기 위해 국경으로 향했고, 그들이 국경에 도착했을 무렵은 아직 동이 트기 전이었다. 당연히 국경 관문은 열리지 않았고, 맹상군 일행은 조바심을 내며 관문이 열리기를 기다렸다. 뒤에서는 진나라 군사가 쫓아오고 문은 열리지 않는 그때, 식객 하나가 닭 울음소리를 내었다. 그러자 동네 닭들이 이에 호응이라도 하듯 모두 울어댔고, 이 소리를 들은 경비병들은 날이 샜다고 여겨 관문을 열었다. 결국 맹상군 일행은 진나라를 벗어나 목숨을 구할 수 있었다.
이때부터 계명구도(鷄鳴狗盜)란 표현은 하잘것없는 재주라도 쓸모가 있다는 의미로 쓰이기도 하고, 사소한 재주로 상대방을 속인다는 의미로도 쓰이게 되었다.