ZUFE Thesis Typesetter
개요
이 Skill을 사용하여 Word 논문을 ZUFE-Thesis LaTeX/PDF 결과물로 변환합니다. 다음 세 가지 흐름을 엄격히 따릅니다:
- 흐름 A: 엄격한 게이트키핑 및 스마트 사전 준비.
- 흐름 B: DOCX 공식 추출, 콘텐츠 분류 장부, 의미론적 확인 및 템플릿 쓰기.
- 흐름 C: 컴파일, 진단, 품질 검사 및 전달 설명.
비기술적 사용자를 위한 주요 피드백은 대화 내에서 제공되어야 합니다. 스크립트는 안정적인 검사, 추출, 파일 쓰기, 컴파일 및 기계 판독 가능 증거 생성을 담당합니다.
핵심 계약
ZUFE-Thesis 템플릿 루트 디렉터리에서 실행해야 합니다. 파일을 수정하기 전에 템플릿 서명이 완전한지 확인하십시오.
사용자가 아직 템플릿 프로젝트를 준비하지 않은 경우, 이 Skill이 원본 ZUFE-Thesis LaTeX 템플릿에 의존함을 설명하고 다음 순서대로 처리합니다:
- 기본적으로 원본 템플릿 GitHub 저장소(
https://github.com/sqsssq/ZUFE-Thesis)를 사용하도록 사용자를 안내합니다. - 네트워크 환경으로 인해 GitHub를 사용할 수 없는 경우, 사용자 확인 후 국내 대체 링크(
https://gitee.com/cwf818/ZUFE-Thesis)를 사용할 수 있습니다. - GitHub와 Gitee를 모두 사용할 수 없는 경우, 변환을 중단하고 사용자에게 템플릿 압축 파일, 압축이 풀린 전체 템플릿 디렉터리 또는 기타 신뢰할 수 있는 획득 방법을 요청합니다.
Agent는 사용자 확인 후 템플릿 다운로드, 압축 해제 또는 템플릿 루트 디렉터리로 전환을 도울 수 있지만, 템플릿 준비를 묵묵히 건너뛰거나 빈 디렉터리, 이 Skill 저장소 또는 템플릿 서명이 없는 디렉터리에서 변환을 계속해서는 안 됩니다.
표준 입력:
workspace/input/thesis.docx
workspace/input/metadata.yaml
표준 중간 산출물:
workspace/intermediate/thesis.json
workspace/intermediate/extracted.md
표준 출력:
main.pdf
workspace/output/report.md
workspace/output/qa_report.md
흐름 순서
흐름을 순서대로 실행하고, 이후 스크립트가 복구할 수 있다는 이유로 게이트키핑을 건너뛰지 마십시오.
- 흐름 A: 템플릿, 워크스페이스, DOCX, 메타데이터, 이전 출력, Python DOCX 환경, LaTeX/Biber 환경을 확인합니다.
- 흐름 B: Word의 모든 표시 가능 또는 추출 가능 콘텐츠 블록을
thesis.json에 씁니다. Agent는 의미 슬롯을 할당하고 신뢰도가 낮은 콘텐츠를 사용자에게 확인합니다. 스크립트는 확인된 매핑만 렌더링합니다. - 흐름 C: 이전 컴파일 산출물을 보관하고,
xelatex -> biber -> xelatex -> xelatex를 실행하며, 실패를 진단하고, 제한된 기계적 수리를 수행하며, 새 PDF의 품질을 검사합니다.
스크립트 사용법
모든 스크립트는 --root를 허용하고 JSON을 출력하거나 JSON 보고서를 씁니다. Agent는 JSON을 사용하여 판단하고 결과를 일반 사용자가 이해할 수 있는 간단한 목록으로 변환합니다.
scripts/check_template.py: ZUFE-Thesis 템플릿 서명을 확인합니다.scripts/prepare_workspace.py:workspace/를 생성하고 DOCX를 표준 경로에 배치하며, 사용자 승인 후 이전 출력을 보관할 수 있습니다.scripts/check_env.py: Python,python-docx,xelatex,biber및 템플릿 핵심 TeX 패키지를 확인합니다.scripts/prescan_docx.py: 흐름 A의 DOCX 경량 사전 스캔 및 메타데이터 후보 추출. 공식thesis.json을 생성해서는 안 됩니다.scripts/import_docx.py: 흐름 B의 공식 추출,thesis.json및extracted.md생성.scripts/export_assets.py: DOCX 미디어를Images/word_media/로 추출하고 증거를 기록합니다.scripts/render_basicinfo.py: 메타데이터, 초록 및 키워드를chapters/basicinfo.tex에 씁니다.scripts/render_chapters.py: 확인된 장 매핑을chapters/*.tex및chapters/mainbody.tex에 씁니다.scripts/render_bib.py: 확인된 BibTeX를Reference.bib에 쓰고, 참고 문헌을 지어내서는 안 됩니다.scripts/check_flow_b_gate.py: 처리되지 않았거나, 확인되지 않았거나, 렌더링되지 않은 소스 블록이 있으면 흐름 B 완료를 차단합니다.scripts/build.py: 이전main.pdf를 보관하고, 임시 컴파일 파일을 정리하며, 고정 컴파일 체인을 실행합니다.scripts/diagnose_build.py: 빌드 실패를 실행 가능한 문제로 분류합니다.scripts/qa.py: PDF 신선도, 텍스트, 핵심 신호, 미확인 참조, BibTeX/참조 폐쇄 루프, 템플릿 잔여물 및 자리 표시자를 확인합니다.
Agent 책임
Agent는 의미론적 판단을 담당하며, 스크립트가 이를 대체해서는 안 됩니다:
- 단락이 장 제목, 본문, 초록, 참고 문헌, 감사의 글, 부록, 그림/표 제목 또는 폐기 가능한 노이즈에 속하는지 판단합니다.
- 신뢰도가 낮은 문제를 통합하여 사용자에게 확인합니다.
- 대화에서 막힌 위치, 이유 및 다음 단계를 설명합니다.
- 콘텐츠를 묵묵히 폐기하거나 잘못 배치하지 않습니다.
- 파일 이름에서 학과, 전공, 날짜, 지도 교수 또는 보고서 유형을 추측하지 않습니다. 메타데이터는 Word 증거 또는 사용자 확인에서만 비롯되어야 합니다.
- run 수준 스타일 문제를 일반 텍스트 문제로 무시하지 않습니다. 위 첨자, 아래 첨자, 표 글꼴 크기 이상은 모두 흐름 B/C에서 노출되어야 합니다.
- 흐름 C는 문서 의미를 수정하지 않습니다. 콘텐츠 소속 오류는 흐름 B로 다시 보내야 합니다.
변환 품질 엄격 제약
- DOCX 단락은 순수 텍스트만 유지해서는 안 됩니다. run 수준
bold,italic,superscript,subscript및 글꼴 크기 증거를 유지해야 합니다. 위 첨자 숫자는\textsuperscript{...}로 렌더링해야 하며, 본문의 일반 숫자로 평탄화해서는 안 됩니다. - Word에서 참조 번호로 의심되는 위 첨자 숫자는 묵묵히 일반 텍스트로 다시 써서는 안 됩니다. 공식
\cite/\supercite로 변환하려면 참고 문헌 매핑을 먼저 확인해야 합니다. 그렇지 않으면 최소한 시각적 위 첨자를 유지합니다. - Word 본문의 수동 그림/표 번호(예:
그림 2.1,그림 2.1,표 1.2)는 그대로 최종 장 소스 코드에 가져와서는 안 됩니다. Agent는 해당 그림/표 블록을 확인하고, 그림/표에 안정적인label을 쓴 다음, 본문을그림~\ref{...}또는표~\ref{...}로 다시 써야 합니다. 확인할 수 없는 경우 흐름 B를 차단합니다. - 일반 본문의 ASCII 큰따옴표는 LaTeX 왼/오른쪽 따옴표(``...'')로 변환해야 합니다. 중국어 스마트 따옴표는 기본적으로 유지합니다. 원시 LaTeX, 이미지 경로, 참조 명령 및 수식에는 본문 인용 변환을 적용해서는 안 됩니다.
- 영어 초록 또는 영어 키워드가 누락된 경우, 사용자가 다음 중 선택하도록 해야 합니다: 비워 두기 확인, 직접 제공 또는 생성 허용. 기본적으로 비워 두거나 자동으로 중국어를 기반으로 보충해서는 안 됩니다. 사용자가 생성을 허용하는 경우, 먼저 이것이 콘텐츠 보충임을 설명하고 메타데이터에 권한을 기록해야 합니다.
chapters/basicinfo.tex를 생성할 때 전역\hypersetup{hidelinks,pdfborder={0 0 0},pdfborderstyle={/S/U/W 0}}를 써야 하며, 그림/표 참조 및 URL이 PDF에서 컬러 링크 테두리를 표시하지 않도록 해야 합니다.- 표는 기본적으로 템플릿 스타일 글꼴 크기
\zihao{5}를 사용합니다. 무조건\resizebox{\textwidth}{!}{...}를 사용해서는 안 됩니다. 이는 좁은 표를 확대하고 글꼴 크기를 손상시킬 수 있기 때문입니다. - 표의 자연 너비가 실제로 판형을 초과하고 더 안전한 열 너비 솔루션이 없는 경우에만 표를 축소하는 것이 허용됩니다. "판형을 채우기" 위해 표를 확대하는 것은 금지됩니다.
- 각주, 미주, 수식, 하이퍼링크, 메모, 수정 흔적, 텍스트 상자, 머리글/바닥글 등 현재 자동 변환되지 않는 콘텐츠는
unsupported_features에 들어가야 하며, 묵묵히 무시해서는 안 됩니다.
상세 참조
- 흐름 A를 수행하기 전에
references/flow-a-gatekeeping.md를 읽으십시오. - 환경 판단 또는 수리 시
references/environment-sop.md를 먼저 읽으십시오. - 플랫폼 명령, 설치 세부 정보, PATH 수리 또는 TeX 패키지 추가 설치가 필요한 경우에만
references/environment-setup-and-repair.md를 읽으십시오. - 흐름 B 추출 또는 렌더링 전에
references/flow-b-conversion.md를 읽으십시오. - 흐름 C 컴파일 또는 QA 전에
references/flow-c-export-and-qa.md를 읽으십시오. thesis.json을 수동으로 편집하기 전에references/thesis-json-schema.md를 읽으십시오.
사용자 피드백
비기술적 사용자는 먼저 보고서를 열 필요가 없습니다. 먼저 대화에서 다음을 제공하십시오:
- 게이트키핑이 막힌 위치.
- 계속 진행하는 것이 안전하지 않은 이유.
- Agent가 자동으로 수리할 수 있는 내용.
- 사용자 승인 또는 파일 제공이 필요한 작업.
기술적 사용자가 세부 정보를 필요로 할 때 보고서 경로를 추가로 제공하십시오.