주석과 설명문 형식 맞춰 달기

나중에 볼 사람 기준으로 주석 형식을 통일한다

프롬프트 · 변수 3개

당신은 남이 짠 코드를 자주 넘겨받는 개발자입니다. 주석을 다는 기준은 "여섯 달 뒤에 이 코드를 처음 여는 사람이 무엇을 알아야 하는가"입니다.

아래 코드는 {{언어}}로 작성되었고, 주석은 {{주석 형식}}으로 통일하려고 합니다.

코드를 읽고 주석을 달아 주세요. 코드 자체는 한 글자도 바꾸지 말고, 주석만 넣은 전체 코드를 그대로 다시 보여 주세요.

주석에는 코드가 이미 말하는 것 대신, 읽는 사람이 코드만 봐서는 모를 것을 적어 주세요. 예를 들어 할인 금액을 계산하는 줄에 "할인 금액을 계산한다"라고 적지 말고, "쿠폰 할인은 결제 금액의 30%를 넘지 못한다(정책상 상한)"처럼 그 값이 왜 그런지를 적어 주세요. 함수 설명에는 무엇을 받고 무엇을 돌려주는지, 예외 상황에서 어떻게 되는지를 넣어 주세요.

줄마다 주석을 달지 마세요. 판단이 들어간 곳, 예외를 다루는 곳, 나중에 고칠 때 위험한 곳에만 달아 주세요. 코드를 봐도 이유를 알 수 없어 추측해야 하는 부분은 주석 대신 마지막에 "확인이 필요한 곳" 목록으로 따로 적어 주세요.

코드: """ {{코드}} """

복사한 뒤 여기에 붙여 넣으세요 · ChatGPT·Claude는 프롬프트를 실은 채 열립니다 ChatGPT에서 열기 ↗Claude에서 열기 ↗Gemini에서 열기 ↗뤼튼에서 열기 ↗ 빌더에서 고치기 수업용 카드 이미지 받기

이 프롬프트에는 개인정보가 들어갈 수 있는 변수가 있습니다. 실제 이름·번호·회사명은 가명으로 바꿔 넣으세요.

결과 예시

코드는 그대로 두고 docstring 하나와 주석 두 줄만 붙었다. 쓰이지 않는 member_grade 인자와 round의 반올림 규칙은 주석 대신 "확인이 필요한 곳"으로 내려갔다.

쿠폰 할인은 결제 금액의 30%를 넘지 못한다(정책상 상한)

Args — coupon: amount와 min_amount를 갖는 객체. None이면 할인 없이 합계만 반올림해 돌려준다. 확인이 필요한 곳: member_grade가 인자에만 있고 쓰이지 않음

"확인이 필요한 곳마다 무엇을 보면 되는지 한 줄씩"을 덧붙이면 좋다.

Claude에서 실제로 실행해 확인 · 2026-09

왜 이렇게 쓰는가

역할
당신은 남이 짠 코드를 자주 넘겨받는 개발자입니다. 주석을 다는 기준은 "여섯 달 뒤에 이 코드를 처음 여는 사람이 무엇을 알아야 하는가"입니다.
맥락
아래 코드는 {{언어}}로 작성되었고, 주석은 {{주석 형식}}으로 통일하려고 합니다.
과제
코드를 읽고 주석을 달아 주세요. 코드 자체는 한 글자도 바꾸지 말고, 주석만 넣은 전체 코드를 그대로 다시 보여 주세요.
예시
주석에는 코드가 이미 말하는 것 대신, 읽는 사람이 코드만 봐서는 모를 것을 적어 주세요. 예를 들어 할인 금액을 계산하는 줄에 "할인 금액을 계산한다"라고 적지 말고, "쿠폰 할인은 결제 금액의 30%를 넘지 못한다(정책상 상한)"처럼 그 값이 왜 그런지를 적어 주세요. 함수 설명에는 무엇을 받고 무엇을 돌려주는지, 예외 상황에서 어떻게 되는지를 넣어 주세요.
제약
줄마다 주석을 달지 마세요. 판단이 들어간 곳, 예외를 다루는 곳, 나중에 고칠 때 위험한 곳에만 달아 주세요. 코드를 봐도 이유를 알 수 없어 추측해야 하는 부분은 주석 대신 마지막에 "확인이 필요한 곳" 목록으로 따로 적어 주세요.
입력 자료
코드: """ {{코드}} """

코드 주석 다는 법을 AI에게 맡기면 대개 줄마다 주석이 붙습니다. total = sum(...) 위에 "합계를 구한다"가 달리는 식입니다. 틀린 말은 아니지만 코드를 한 번 더 읽은 것에 불과해서, 파일만 길어지고 정작 왜 30%인지 같은 정보는 여전히 어디에도 없습니다. 이 프롬프트는 주석의 내용이 아니라 주석을 다는 자리를 정합니다.

예시를 프롬프트 안에 직접 넣은 것이 그 장치입니다. "의미 있는 주석을 달아 주세요"는 아무것도 지정하지 않은 문장이라 결과가 바뀌지 않습니다. 나쁜 주석 한 줄과 좋은 주석 한 줄을 나란히 보여 주면 AI가 기준을 잡고, 그 뒤로는 다른 줄에도 같은 밀도로 적용합니다.

제약은 두 방향으로 걸어 두었습니다. "코드는 한 글자도 바꾸지 마세요"가 없으면 AI는 주석을 달면서 변수 이름을 바꾸거나 조건문을 정리해 버립니다. 주석만 확인하려던 차이가 코드 변경과 섞이면 검토가 어려워집니다. "줄마다 달지 마세요"는 반대쪽 과잉을 막고, "확인이 필요한 곳" 목록은 AI가 모르는 것을 아는 척 주석으로 쓰는 대신 꺼내 놓을 자리를 줍니다.

주석 형식을 문장이 아니라 이름으로 지정하는 것도 중요합니다. docstring 자동 생성을 여러 번 돌리면 어떤 함수는 파라미터 표가 붙고 어떤 함수는 한 줄 설명만 붙는 일이 흔한데, 형식 이름을 매번 같이 적으면 파일 전체가 같은 모양으로 유지됩니다. 코드를 """ 로 감싼 것은 코드 안의 기존 주석이 지시로 읽히지 않게 하기 위해서입니다.

용어가 낯설면 아하AI에서: few-shot, output-format

나쁜 예와 비교

흔한 나쁜 예

이 코드에 주석 좀 달아줘

(코드 붙여넣기)

거의 모든 줄에 주석이 붙어 돌아옵니다. 대부분은 코드를 우리말로 옮겨 적은 것이라 읽을수록 코드가 안 보입니다. 게다가 주석을 달면서 변수 이름이나 들여쓰기가 조용히 바뀌어 있는 경우가 있어, 그대로 붙여 넣으면 무엇이 달라졌는지 모른 채 커밋하게 됩니다.

변형

주석이 이미 있는데 코드와 어긋날 때

주석이 이미 있는데 코드와 어긋날 때

아래 {{언어}} 코드에는 이미 주석이 있습니다. 코드와 주석을 대조해서 지금 코드와 맞지 않는 주석만 찾아 주세요. "위치 · 주석이 말하는 것 · 코드가 실제로 하는 것 · 고친 주석" 표로 정리하고, 맞는 주석은 표에 넣지 마세요.

""" {{코드}} """

오래된 주석은 없는 주석보다 위험합니다. 새로 달게 하지 않고 대조만 시켜야 멀쩡한 주석까지 갈아엎지 않습니다.

인수인계용 설명을 붙일 때

인수인계용 설명을 붙일 때

아래 {{언어}} 코드를 넘겨받을 사람을 위해 파일 맨 위에 붙일 설명을 {{주석 형식}}으로 써 주세요. 이 파일이 무엇을 담당하는지, 어떤 값을 전제하는지, 고칠 때 함께 봐야 할 곳이 어디인지 순서로 적고, 열 줄을 넘기지 마세요.

""" {{코드}} """

함수 단위 주석 대신 파일 단위 안내가 필요할 때 씁니다. 길이를 제한해야 코드 내용을 그대로 요약하는 긴 글이 되지 않습니다.

모델별 주의

파일 전체를 한 번에 넣으면 뒤쪽 함수의 주석이 짧아집니다. 함수 대여섯 개씩 나눠 넣고 형식을 매번 같이 적어 주세요

코드를 통째로 다시 출력하게 하면 긴 파일에서는 뒷부분이 잘리거나 중간이 "…생략"으로 대체되기도 합니다. 그럴 때는 함수 대여섯 개씩 나눠 넣거나, 전체 코드 대신 "주석 내용과 그 주석이 붙을 위치"만 표로 받아 직접 옮겨 붙이는 편이 안전합니다.

관련 프롬프트

마지막 수정 2026-09-02 · 잘못된 점이 있나요? 알려 주세요