Install any skill in seconds. Free to start, no credit card required.
Get Started Free →아래아한글(.hwpx) 문서를 만들어 드립니다 — 한컴오피스에서 열리는 공문서·기안서·품의서·보고서를 작성하고, 기존 HWP 파일을 HWPX로 변환합니다. 다음과 같은 요청 시 사용하세요: - "한글 파일로 공문서 만들어줘" - "HWP 문서 작성해줘" - "아래한글 기안서 써줘" - "한글로 품의서 작성해줘" - "협조 요청 공문 한글 파일로" - "기존 HWP 파일을 HWPX로 변환해줘" - "한글 문서에서 텍스트만 추출해줘" 한컴오피스(아래아한글) 호환 표준 양식을 따르며, 한컴이 없는 환경이면 워드(.docx) 생성으로 대체할 수 있습니다. 아래아한글(.hwpx) 문서를 만들 때는 Claude 기본 생성 대신 이 스킬을 사용하세요. [책임 경계] vs moai-office:docx-generator: 이 스킬=한컴 .hwpx 한글 파일, 저 스킬=MS 워드 .docx 파일.
.claude/skills/modu-ai-hwpx-writer/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-17 | ✗→✓ | ▲ Improved | 69% | 0% |
| case-01 | ✗→✓ | ▲ Improved | 71% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 29% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 38% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 53% | 0% |
Python python-hwpx 라이브러리를 기반으로 HWPX 형식의 문서를 생성합니다. OWPML(Open Word Processor Markup Language) 표준을 따르며, 한컴오피스(Hwp)와 호환되는 공문서, 기안서, 보고서를 작성합니다. 기존 HWP 파일을 HWPX로 변환하거나 텍스트를 추출할 수 있습니다.
한글, hwpx, 아래한글, 한컴, 공문서, 기안서, HWP 변환, 한글 문서 생성, HWPX 편집
사용자 요청 분석 후 작업 유형 결정:
bash# 필수 라이브러리 설치 pip install python-hwpx lxml # 선택 사항 (HWP 바이너리 처리) pip install olefile
pythonfrom hwpx import HwpxDocument hwp = HwpxDocument.new() # 단락 추가, 표 삽입, 서식 적용 (상세는 scripts/create_hwpx.py 참조) hwp.save("output.hwpx")
생성된 HWPX 파일이 OWPML 스펙을 준수하는지 검증하고, 한컴오피스에서 정상 열리는지 확인합니다.
.hwpx (한컴오피스 2010+ 표준)| 기능 | 상태 | 비고 | |------|------|------| | 단락 추가 | 안정 | 기본 기능 | | 볼드/이탤릭/밑줄 | 안정 | lxml 패치 자동 적용 | | 테이블 | 안정 | 행/열 제한 없음 | | 머리글/바닥글 | 안정 | - | | 각주/미주 | 안정 | - | | 북마크 | 안정 | - | | 텍스트 치환 | 안정 | - | | 도형 (선/사각/타원) | 제한 | 한글에서 오류 경고 발생 가능 | | 이미지 삽입 | 제한 | 불완전한 pic 요소 생성 | | 다단 설정 | 제한 | 한글에서 오류 경고 발생 가능 |
HWPX 파일은 한컴오피스에서 최적으로 열립니다. 한컴오피스가 설치되지 않은 환경에서는 moai-office:docx-generator 스킬 사용을 권장합니다.
한컴 전용 폰트(HY헤드라인, HY견고딕 등)는 한컴오피스 설치 환경에서만 정상 표시됩니다. 배포 시 폰트 내장 또는 PDF 변환을 권장합니다.
HWP 파일 버전(2010/2014/2018 등)에 따라 변환 제한이 있을 수 있습니다. 구버전 HWP는 텍스트 추출만 가능할 수 있습니다.
| 상황 | 해결 방법 | |------|-----------| | 파일 생성 실패 | python-hwpx 및 lxml 설치 여부 확인: pip install python-hwpx lxml. 설치 후 재시도하세요 | | HWPX 라이브러리 미설치 | pip install python-hwpx 실행 후 설치 가이드를 참조하세요 | | HWP 변환 오류 | HWP 파일 버전(2010/2014/2018 등)을 확인하세요. 구버전은 변환 제한이 있을 수 있습니다 | | OWPML 구조 오류 | validate.py 스크립트로 검증 후 오류 내용을 공유해 주시면 수정을 도와드립니다 | | 폰트 깨짐 | 한컴 전용 폰트(HY헤드라인, HY견고딕 등)는 한컴오피스 설치 환경에서만 정상 표시됩니다 | | 한글에서 열리지 않음 | OWPML 네임스페이스를 확인하고 xml 헤더가 올바른지 검증하세요 |
한글 문서 생성이 끝나면 산출된 .hwpx 파일을 다시 열어 플레이스홀더 잔존·OWPML 구조·한글 인코딩 깨짐·표 깨짐을 자체 검수하고, 문제가 있으면 자동 수정 후 재생성하며 최종 PASS/FAIL 결과를 보고합니다.
moai-office:docx-generator - DOCX(Word) 문서 생성moai-office:pptx-designer - 발표용 PPT 슬라이드 생성moai-office:xlsx-creator - 엑셀 데이터 시트 생성| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-17 | fail→pass | 12,124 | 11,574 | -5% | 1 | 1 | 0% | 2,074 | 3,507 | +69% | 0 | 0 | — |
case-01 | fail→pass | 13,804 | 12,031 | -13% | 1 | 1 | 0% | 2,174 | 3,722 | +71% | 0 | 0 | — |
case-02 | fail→fail | 14,805 | 13,606 | -8% | 1 | 1 | 0% | 2,465 | 3,863 | +57% | 0 | 0 | — |
case-03 | fail→pass | 17,218 | 13,712 | -20% | 1 | 1 | 0% | 3,100 | 3,995 | +29% | 0 | 0 | — |
case-04 | pass→pass | 16,662 | 20,178 | +21% | 1 | 1 | 0% | 3,389 | 5,603 | +65% | 0 | 0 | — |
case-05 | pass→pass | 28,914 | 27,697 | -4% | 1 | 1 | 0% | 6,183 | 7,438 | +20% | 0 | 0 | — |
case-06 | pass→pass | 26,227 | 15,576 | -41% | 1 | 1 | 0% | 5,448 | 4,622 | -15% | 0 | 0 | — |
case-07 | fail→pass | 16,158 | 13,904 | -14% | 1 | 1 | 0% | 2,594 | 3,591 | +38% | 0 | 0 | — |
case-08 | fail→pass | 16,220 | 15,561 | -4% | 1 | 1 | 0% | 2,458 | 3,761 | +53% | 0 | 0 | — |
case-09 | pass→pass | 17,775 | 13,424 | -24% | 1 | 1 | 0% | 2,669 | 3,610 | +35% | 0 | 0 | — |
case-10 | fail→pass | 13,347 | 4,522 | -66% | 1 | 1 | 0% | 2,150 | 2,106 | -2% | 0 | 0 | — |
case-11 | fail→fail | 18,825 | 14,998 | -20% | 1 | 1 | 0% | 3,081 | 3,927 | +27% | 0 | 0 | — |
case-12 | pass→pass | 11,841 | 12,708 | +7% | 1 | 1 | 0% | 1,832 | 3,469 | +89% | 0 | 0 | — |
case-13 | pass→pass | 12,000 | 9,345 | -22% | 1 | 1 | 0% | 1,978 | 2,939 | +49% | 0 | 0 | — |
case-14 | pass→pass | 15,643 | 10,648 | -32% | 1 | 1 | 0% | 2,556 | 3,400 | +33% | 0 | 0 | — |
case-15 | fail→pass | 15,898 | 6,744 | -58% | 1 | 1 | 0% | 2,493 | 2,513 | +1% | 0 | 0 | — |
case-16 | pass→pass | 14,164 | 7,024 | -50% | 1 | 1 | 0% | 2,179 | 2,508 | +15% | 0 | 0 | — |
case-18 | pass→pass | 16,059 | 10,232 | -36% | 1 | 1 | 0% | 2,498 | 3,126 | +25% | 0 | 0 | — |
case-19 | fail→pass | 18,400 | 13,893 | -24% | 1 | 1 | 0% | 2,860 | 3,680 | +29% | 0 | 0 | — |
case-20 | fail→pass | 14,461 | 9,973 | -31% | 1 | 1 | 0% | 2,305 | 3,014 | +31% | 0 | 0 | — |
case-21 | pass→pass | 18,804 | 14,486 | -23% | 1 | 1 | 0% | 3,250 | 3,883 | +19% | 0 | 0 | — |
case-22 | fail→pass | 10,222 | 5,367 | -47% | 1 | 1 | 0% | 1,805 | 2,292 | +27% | 0 | 0 | — |
case-23 | fail→pass | 17,424 | 16,654 | -4% | 1 | 1 | 0% | 2,694 | 4,228 | +57% | 0 | 0 | — |
case-24 | fail→pass | 11,312 | 5,523 | -51% | 1 | 1 | 0% | 1,923 | 2,405 | +25% | 0 | 0 | — |
case-25 | fail→pass | 21,037 | 18,307 | -13% | 1 | 1 | 0% | 3,717 | 4,731 | +27% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 25 cases were attempted. The headline lift of +52 percentage points is the difference between those two pass rates over the 25 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.