엘리1004
엘리1004
🐶 AI 찐친
🎻 루키 파트너
📚 학습반장

하네스 엔지니어링을 활용한 논문 작성 자동화 시스템 만들기

하네스 엔지니어링을 활용한 논문 작성 자동화 시스템 만들기

시도하고자 했던 것과 그 이유

AI 시대에 들어서면서 새로운 고민이 더해졌습니다. ChatGPT나 Claude에 그냥 "논문 써줘"라고 하면, 매끄럽지만 어딘가 텅 빈 문장이 쏟아져 나옵니다. 불릿 가득, 상투어 가득, 그러나 저자의 목소리는 없는 그런 글이요. AI 융합 학과 교수로서 학생들에게 "AI를 세컨드 브레인으로 활용하라"고 가르치면서, 정작 저는 AI가 만들어준 평이한 문장을 다시 손으로 고치는 데 더 많은 시간을 쓰고 있었습니다.

그래서 결심했습니다. 하네스 엔지니어링(Harness Engineering) 개념을 논문 작성에 도입해보자고요.

하네스 엔지니어링의 핵심 아이디어는 단순합니다. AI에게 "이렇게 써줘"라고 부탁하는 것은 제안(Suggestion)일 뿐, AI는 언제든 그 제안을 흘려보낼 수 있습니다. 진짜로 지키게 하려면 기계적 강제(Mechanical Enforcement) 장치가 필요합니다. 마치 자동차 안전벨트 같은 거죠. "벨트 매세요"라고 부탁하는 게 아니라, 매지 않으면 시동이 안 걸리게 만드는 겁니다.

논문 작성에 적용하면 이런 그림이 됩니다.

  • 맥락 확인 게이트: AI가 곧바로 글을 쓰기 전에, 연구 주제·방법론·타깃 저널을 먼저 확인하도록 강제한다.

  • 사실 검증 게이트: 인용한 문헌이 실제 존재하는지, DOI가 살아있는지 자동으로 점검한다.

  • 문체 게이트: 불릿·상투어·평이한 균형 문장을 자동으로 차단한다.

  • 참고문헌 게이트: 본문 인용과 참고문헌 목록을 3중 대조한다.

요컨대, AI가 대충 잘하는 척하는 것을 시스템 차원에서 막아보자는 시도였습니다.


진행 방법: 도구와 프롬프트 활용

사용한 도구 스택

도구

용도

비고

Claude Code (Max 구독)

메인 에이전트 실행 환경

CLAUDE.md로 하네스 규칙 적용

Claude Opus 4.7 (claude.ai)

논문 본문 집필

긴 문맥·학술 문체에 강점

Skills 시스템

4개 스킬 조합

harness-meta-system이 오케스트레이터

pdf-reading

선행연구 PDF 분석

DOI·페이지 자동 추출

docx / hwpx

최종 출력

학술지·KCI 양식 대응

핵심 구조: 4-Layer 하네스

직접 구축한 시스템은 4개 레이어로 구성했습니다.

Layer 1. 메타 오케스트레이터 (harness-meta-system)

  • 모든 요청을 받아 어떤 하위 스킬을 호출할지 결정

  • 4개 Hook 게이트를 모든 응답 전에 실행

Layer 2. 논문 집필 엔진 (academic-paper-writer)

  • IMRaD 구조 자동 설계

  • APA 7th / Vancouver / Chicago 등 5종 인용 스타일

Layer 3. 인간 문체 필터 (human-voice-academic-writer)

  • Hyland의 메타담화 이론 기반

  • 헷지·부스터·태도표지·자기언급의 균형 배치

Layer 4. 참고문헌 검증기 (reference-verifier)

  • 본문 인용 ↔ 참고문헌 목록 3중 대조

  • 재인용·표절 위험 신호 탐지

메인 프롬프트 전문 (CLAUDE.md 발췌)

Claude Code 프로젝트 루트에 CLAUDE.md를 두고 다음과 같이 작성했습니다. 이것이 하네스의 "안전벨트"입니다.

markdown

# 📚 Academic Paper Harness Engineering System
# 논문 작성 자동화 하네스 시스템 v1.0

> 이 문서는 AI 에이전트에 대한 '제안'이 아닌 '강제 규율'이다.
> 4개 Hook 게이트를 통과하지 못한 응답은 출력되지 않는다.

## SECTION A: 페르소나 고정

너는 교육학·AI 융합 분야의 박사급 연구자이자
국제 저널 심사위원 경력 10년의 학술 편집자다.
모든 응답은 다음 정체성에서 출발한다:

- 인용은 실제 존재하는 문헌만 사용한다 (할루시네이션 금지)
- 저자의 stance(입장)를 분명히 드러낸다
- 불릿·과도한 구조화·상투어를 피한다
- 한국어 학술 문체는 "~로 보인다 / ~할 가능성이 있다"
  같은 헷지 표현을 적극 활용한다

## SECTION B: Hook 게이트 (자동 검증 시스템)

### Hook 1: 맥락 확인 게이트
응답 생성 전 반드시:
1. 연구 주제·연구 문제·타깃 저널을 확인했는가?
2. 연구 방법론(양적/질적/혼합)이 명확한가?
3. 인용 스타일(APA 7th 등)이 지정되었는가?
→ 하나라도 누락이면 사용자에게 확인 질문을 던진다.

### Hook 2: 사실 검증 게이트
모든 인용에서:
- 저자명·연도·저널명·페이지를 명시한다
- DOI 또는 검증 가능한 URL을 함께 제시한다
- 확인 불가능한 문헌은 "[확인 필요]" 태그를 단다
- 절대로 그럴듯한 가짜 인용을 만들지 않는다

### Hook 3: 문체 게이트 (Human Voice)
다음을 자동 차단한다:
- 3개 이상의 연속 불릿 (산문으로 풀어쓴다)
- "또한, 따라서, 결론적으로" 같은 상투적 연결어
- 모든 문장의 길이가 비슷한 평이한 리듬
- 저자 관점이 없는 "균형 잡힌" 묘사

대신 다음을 적극 배치한다:
- 헷지(Hedges): ~로 보인다, ~할 가능성이 있다
- 부스터(Boosters): 분명히, 명백히, 결정적으로
- 태도표지(Attitude Markers): 흥미롭게도, 놀랍게도
- 자기언급(Self-mention): 본 연구에서는, 연구자는

### Hook 4: 참고문헌 게이트
논문 출력 직전 자동 실행:
1. 본문에 등장한 모든 (저자, 연도) 추출
2. 참고문헌 목록과 1:1 대조
3. 누락·중복·형식 오류를 표 형태로 보고
4. 통과 시에만 최종 .docx 출력 허용

## SECTION C: 라우터

요청 유형 → 호출 스킬 매핑:

| 요청 | 호출 스킬 |
|------|----------|
| 새 논문 집필 | academic-paper-writer |
| 문체 다듬기 | human-voice-academic-writer |
| 인용 검증 | reference-verifier |
| 한글(.hwpx) 출력 | hwpx |
| Word(.docx) 출력 | docx |

## SECTION D: 집필 순서 (강제)

논문은 반드시 다음 순서로 집필한다:
1. Methods (방법론) — 가장 객관적, AI가 잘 못 만드는 부분
2. Results (결과) — 데이터 기반
3. Introduction (서론) — 결과를 본 후 거꾸로 설계
4. Discussion (논의) — 저자 voice가 가장 중요
5. Conclusion (결론) — 한계와 후속 연구 명시
6. Abstract (초록) — 가장 마지막

실제 호출 프롬프트 (예시)

위 CLAUDE.md가 깔린 상태에서, 실제로는 이렇게 짧게 요청합니다.

text

하네스 모드로 진행해줘.

[연구 정보]
- 주제: 청소년지도자의 AI 리터러시 역량 측정도구 개발
- 방법론: 혼합연구 (델파이 + 탐색적 요인분석)
- 타깃 저널: 청소년학연구 (KCI 등재)
- 인용 스타일: APA 7th
- 최종 출력: 한글(.hwpx)

먼저 Hook 1(맥락 확인 게이트)부터 실행하고,
누락된 정보가 있으면 질문해줘.

이렇게 한 줄짜리 요청만 보내도, 하네스가 자동으로 4개 게이트를 순차 실행합니다.

시스템 구조도

한국어의 구조를 보여주는 다이어그램


결과와 배운 점: 시행착오와 개선

가장 컸던 배움

첫 번째, "프롬프트 잘 쓰기"보다 "시스템 강제하기"가 훨씬 강력하다는 점.

처음에는 매번 채팅창에 "인용은 꼭 실제 문헌만 써줘"라고 적었습니다. 그런데 길어진 대화에서 AI는 슬그머니 그 규칙을 잊어버리더군요. CLAUDE.md에 Hook 4(참고문헌 게이트)를 박아두니, 그 후로는 한 번도 가짜 인용이 출력되지 않았습니다. "부탁"이 아니라 "관문"이 답이었습니다.

두 번째, 집필 순서를 Methods부터 시작하는 게 결정적이다.

대부분 사람들이 서론부터 쓰기 시작합니다. 그런데 AI에게 서론을 먼저 시키면, 아직 결과를 모른 채로 "이 연구는 매우 중요하다"는 식의 공허한 문장만 양산합니다. Methods → Results → Introduction 순서로 강제하니, 서론이 결과를 제대로 가리키는 글이 됐습니다. 이건 박사 학위 논문 쓸 때 지도교수님께 들었던 조언과 정확히 같았습니다. 시스템이 좋은 습관을 강제해준 셈입니다.

세 번째, Hyland의 메타담화 이론을 시스템에 박아넣은 건 신의 한 수.

human-voice-academic-writer 스킬에서 헷지(hedges)·부스터(boosters)·태도표지(attitude markers)·자기언급(self-mention)을 자동 배치하도록 했더니, "AI 티가 나지 않는" 학술 문장이 처음부터 나왔습니다. 후처리로 고치는 게 아니라, 처음부터 그렇게 쓰게 만드는 거죠.

시행착오

시행착오 1. CLAUDE.md 길이가 너무 길어 AI가 앞부분을 흘려보냄. 처음에 만든 CLAUDE.md는 2,000줄이 넘었습니다. 그러니 AI가 Hook 1, 2까지만 지키고 Hook 3, 4는 자주 건너뛰더군요. 결국 메인 CLAUDE.md는 200줄 이내로 줄이고, 세부 규칙은 별도 스킬 파일로 분리했습니다. "지킬 수 있는 길이"가 "완벽한 길이"보다 중요했습니다.

시행착오 2. "양적 연구" 강제 → 질적 연구에 안 맞음. 초기 버전은 IMRaD 구조를 무조건 강제했는데, 질적 연구 논문에서는 너무 경직됐습니다. 그래서 Hook 1에 "연구 방법론 분기"를 추가하고, 질적·혼합·설계 연구는 다른 구조 템플릿을 호출하도록 분기를 만들었습니다.

시행착오 3. 한글 .hwpx 출력 시 인용 형식이 깨짐. docx에서는 APA 7th가 잘 출력되는데, hwpx로 변환하면 이탤릭과 들여쓰기가 깨졌습니다. 결국 hwpx 스킬에서 인용 후처리 함수를 따로 작성해야 했습니다. 한국 학술지 양식의 다양성이 만만치 않다는 걸 다시 한 번 느꼈습니다.

도움이 필요한 부분

KCI 등재 학술지마다 인용 양식이 미묘하게 다른 점이 가장 큰 숙제입니다. 예를 들어 한국청소년정책연구원과 청소년학연구의 참고문헌 표기 규칙이 다른데, 이걸 어떻게 자동으로 분기 처리할지 아직 깔끔한 해법을 못 찾았습니다. 혹시 비슷한 작업을 해보신 분이 계시다면 노하우를 나눠주시면 정말 감사하겠습니다.

앞으로의 계획

먼저, 공동연구자용 GitHub Repo로 공개할 계획입니다. CLAUDE.md와 스킬 패키지를 누구나 클론해서 자기 논문 작업에 쓸 수 있도록요. 비개발자 교수님들도 Claude Code만 설치하면 바로 쓸 수 있는 형태로 다듬는 중입니다.

두 번째로, AI 융합학과 대학원생들을 위한 워크숍 콘텐츠로 발전시키려 합니다. 그냥 "AI로 논문 써봐"가 아니라, "AI에게 어떻게 안전벨트를 채울 것인가"를 가르치는 워크숍이요. 이게 진짜 AI 리터러시라고 생각합니다.

세 번째로, 양적 연구 논문에 한해 통계 분석 자동 검증 게이트(Hook 5) 를 추가하려 합니다. 예컨대 Cronbach's α 0.7 미만일 때 자동 경고, Cohen's d 효과크기 해석이 표준 가이드라인에서 벗어났을 때 알림 같은 거죠.

결국 이 모든 작업의 핵심은 한 문장으로 수렴합니다. AI 시대에는 뛰어난 재능·지능이 부족해도, AI를 세컨드 브레인으로 어떤 방향으로 활용하느냐가 중요합니다. 하네스 엔지니어링은 그 "방향"을 잃지 않게 해주는 안내선이었습니다.


참고 자료: 도움 받은 글

이번 시스템을 구축하면서 다음 자료들을 직접 읽고 적용했습니다.

하네스 엔지니어링·Claude Code 관련

학술 글쓰기 이론

  • Hyland, K. (2005). Metadiscourse: Exploring Interaction in Writing. Continuum. — stance와 engagement의 학술적 정의. AI 문체와 인간 문체를 가르는 결정적 이론.

  • Hyland, K., & Tse, P. (2004). Metadiscourse in academic writing: A reinterpretation. Applied Linguistics, 25(2), 156–177. https://doi.org/10.1093/applin/25.2.156

AI 활용 학술 글쓰기

  • Lingard, L. (2023). Writing with ChatGPT: An illustration of its capacity, limitations & implications for academic writers. Perspectives on Medical Education, 12(1), 261–270. https://doi.org/10.5334/pme.1072

  • Kobak, D., et al. (2024). Delving into ChatGPT usage in academic writing through excess vocabulary. Science Advances. — AI 작성 글의 특징적 어휘 분석.

참고로 함께 살펴보신 분께 권하는 자료

  • 지피터스 커뮤니티 내 "Claude Skills 활용" 시리즈 — 비개발자도 따라할 수 있는 스킬 파일 작성법

  • "Cursor CLI + Claude Code 조합" 관련 글 — 실무 자동화 사례

2
밀어주고 끌어주는

온·오프라인 AI 스터디

AI로 어디까지 할 수 있는지
직접 확인하실 분만 신청하세요.