--- name: office-docs description: 사내 표준 서식이나 브랜드 규격에 맞춰 PowerPoint(.pptx)·Word(.docx)·Excel(.xlsx)을 만들거나 편집할 때와 HWP/HWPX 원문을 읽을 때 사용한다. 제안서, 발표자료, 보고서, 기술 문서, 데이터 표·모델을 "우리 양식으로", "브랜드 스타일로", "디자인 시스템 적용해서" 만드는 요청에 적용한다. 챕터가 많은 장문 DOCX를 정적 목차(쪽번호 포함)로 빌드하는 "운영매뉴얼 빌드", "매뉴얼 재빌드", "목차 쪽번호 갱신"도 여기서 처리한다. 색·폰트 같은 브랜드 값은 brand-profile 파일에서 읽는다. HWP/HWPX 읽기를 제외한 양식 지정 없는 일반 문서 요청에는 쓰지 않는다. --- # office-docs If Windows PowerShell output is garbled, retry with `chcp 65001` followed by `Get-Content -Encoding UTF8` in the same command. Do not set `[Console]::OutputEncoding`; it can fail in constrained mode. If output remains unreadable, report the limitation. Office 산출물에 일관된 서식을 입히는 디자인 레이어. 파일을 만들고 고치는 메커니즘은 내장 `pptx` / `docx` / `xlsx` 스킬이 맡고, 이 스킬은 무엇을 어떤 색·폰트·레이아웃으로 낼지 정한다. ## 0. 한글 파일 읽기 HWP/HWPX 원문 읽기 요청은 `references/hwp-read.md`를 따른다. 읽기만 요청한 경우에는 브랜드 프로필 확인이나 생성·편집 단계를 실행하지 않는다. 읽기 도구는 선택 사항이며 없으면 자동 설치하지 않는다. ## 1. 작동 순서 1. **결과물 단계 결정.** 새 문서·발표자료·통합문서와 장문 매뉴얼 빌드는 `references/preview-first.md`의 간결한 HTML 요약을 먼저 제시하고 명시적 확인 뒤 최종 파일을 만든다. 사용자가 완성 파일을 지금 요청했거나 요청문에 구체적 유형·범위·구성이 이미 제시되어 확인할 선택이 없으면 생략한다. format 지정만으로는 즉시 생성 승인으로 보지 않는다. 기존 파일의 소규모 수정, 이미 승인한 구성의 후속 작업, 읽기만 하는 요청에는 확인 단계를 반복하지 않는다. 2. **브랜드 프로필 확인.** 아래 순서로 `brand-profile.md`를 찾는다. 1. 사용자가 이번 요청에서 준 값 또는 파일 2. 작업 디렉터리의 `brand-profile.md` 3. `~/.claude/myway/brand-profile.md` 4. 없으면 `references/brand-profile.default.md`(중립 기본값) 프로필 양식은 `references/brand-profile.md`에 있다. 값이 부족하면 질문 한 번으로 받는다. 3. **포맷 판별.** 아래 표에서 해당 reference를 읽는다. 4. **메커니즘 로드.** 같은 포맷의 내장 스킬이 있으면 함께 쓴다. 없는 환경(Codex 등)에서는 해당 라이브러리를 직접 쓴다. 생성은 pptx→pptxgenjs, docx→docx-js, xlsx→openpyxl. 편집은 unpack → XML 수정 → repack. 5. **토큰 주입.** 프로필의 값을 코드 상수로 선언해 쓴다. 임의 색·폰트를 쓰지 않는다. 6. **검증.** 산출 후 PDF로 변환하고 렌더 이미지를 확인해 잘림과 플레이스홀더(lorem, xxxx, 샘플)를 고친다. 시각 확인의 범위와 미검증 보고는 `references/office-work.md`를 따른다. 분량·구성 등 수치 요구는 작성 전에 대상별 요구 목록으로 옮긴다. 예를 들어 각 장에 20%를 지정했다면 어느 한 장에만 적용하지 말고 모든 해당 장에 각각 적용한다. 비율의 기준(전체 분량, 쪽수·단어 수 등)이나 대상이 불명확하거나 다른 제약과 양립하지 않으면 추측하지 말고 질문한다. 초안과 최종 산출물에서 같은 기준으로 각 대상의 실제 값을 대조하고, 측정하지 못했거나 충족하지 못한 항목은 완료로 주장하지 않고 이유와 함께 알린다. | 포맷 | 읽을 파일 | 함께 쓰는 내장 스킬 | |---|---|---| | .pptx 슬라이드 | `references/pptx.md` | `pptx` | | .docx 제안서·보고서 | `references/docx.md` | `docx` | | .xlsx 표·데이터·모델 | `references/xlsx.md` | `xlsx` | | 브랜드 디자인 시스템이 별도 문서로 주어진 발표자료 | `references/branded-deck.md` | `pptx` | | 챕터 다수의 장문 .docx, 정적 목차·쪽번호 필요 | `references/long-manual.md` (스크립트: `scripts/long-manual/`) | 없음(자체 파이프라인) | | PDF 읽기·병합·분할·폼·OCR | `references/pdf.md` | 환경에 설치된 PDF 도구 | ## 2. 우선순위 1. 사용자가 준 기존 템플릿·파일의 서식. 임의 재포맷 금지. 2. 사용자가 준 디자인 시스템 문서와 레퍼런스 이미지. 3. brand-profile 값. 4. 중립 기본값. 충돌하면 앞 순위를 따른다. 사용자가 준 컬러·폰트를 바꾸지 않는다. ## 3. 공통 레이아웃 원칙 - 여백을 넉넉히 둔다. 콘텐츠를 가장자리까지 채우지 않는다. - 좌측 정렬 기준선을 통일한다. 요소를 임의 위치에 흩지 않는다. - 제목 > 소제목 > 본문 > 캡션의 크기·굵기·색 대비를 분명히 한다. - 한 슬라이드·섹션에 핵심 메시지 하나. 정보 과밀을 피한다. - 지배색은 프로필의 primary 하나. 보조색은 같은 계열로 제한한다. 네온·무지개 팔레트를 쓰지 않는다. - 밝은 배경이 기본이다. ## 4. 불필요한 장식 금지 별도 요구가 없으면 다음을 넣지 않는다. - 색상 배지, 1셀 콜아웃 박스, 제목 하단 장식선, 마케팅 문구형 표지 - 불필요한 AI 도구명과 제작 과정 설명. 주제·재현 조건에 필요한 제품명·모델명과 사용자가 요청한 표기는 유지한다. - 서명란. 양식이 요구하거나 사용자가 요청할 때만 만든다. 단색 헤더 행과 표준 표가 기본이다. 사용자 지정 양식에 있는 요소는 유지한다. ## 5. 보안·품질 가드 - API 키, 토큰, `.env` 값, 내부 호스트 자격증명을 본문·메모·숨김 셀·차트 제목에 넣지 않는다. 발견하면 마스킹한다. - 인용 수치는 표나 각주에 출처와 일자를 적는다. 근거 없는 수치를 만들지 않는다. - 발표용과 문서 공유용은 텍스트 밀도를 다르게 한다. 발표용은 키워드 중심, 공유용은 문장형. - 완료 전 시각 검증. xlsx는 수식 에러를 스캔하고, 수식 계산 상태는 `references/xlsx.md`의 4상태 기준으로 별도 확인한다. 계산 엔진·캐시를 확인하지 못했으면 오류 0건이어도 계산 완료로 주장하지 않는다. ## 6. 완료 전 점검 - [ ] 강조색이 프로필의 primary로 통일됐다 - [ ] 제목·본문 폰트가 프로필 또는 지정 폴백이다 - [ ] 플레이스홀더가 남아 있지 않다 - [ ] 표·차트에 출처와 단위가 있다 - [ ] 시크릿·자격증명이 없다 - [ ] 시각 검증을 마쳤다(잘림·깨짐 없음) - [ ] 폰트가 설치되지 않아 폴백을 썼다면 그 사실을 한 줄로 알렸다 ## 7. 작업 규칙과 리뷰 - 산출물 공통 규칙(원본 보존, 수치 검산, 접근성, 파일과 정보)은 `references/office-work.md`를 따른다. - 발표자료의 근거·시각 검증 절차는 `references/deck-evidence.md`를 따른다. - 새 문서·발표자료·대형 통합문서는 `references/preview-first.md` 절차를 따른다. 기존 파일의 작은 수정이나 이미 승인한 동일 구성 후속 작업은 재확인을 생략한다. - PDF 작업은 `references/pdf.md`를 따른다. 공식 document skills(PDF·DOCX·PPTX·XLSX)는 필요하면 마켓플레이스에서 설치해 쓰고, 그 구현을 복사하지 않는다. - 리뷰 심각도와 증거 요건은 `references/review-contract.md`를 따른다. 실행하지 않은 검증을 완료로 쓰지 않는다. ## 특정 정보가 필요할 때 기관명, 고객명, 호스트명, 주소, 계정, 내부 식별자처럼 특정 대상을 가리키는 값이 필요하면 추측하거나 파일에 미리 적지 않는다. 필요한 항목을 모아 한 번에 질문하고, 받은 답은 이번 산출물과 세션에만 쓴다. 이 스킬의 파일과 저장소에는 되쓰지 않는다. 자격증명과 개인정보는 요청하지 않는다.