windows-parallels-lab
macOS Parallels 의 자동화 전용 Windows 11 클론을 prlctl 로 제어해 COM/Office/.NET 실런타임 검증과 생성 문서의 실제 한글/Office 렌더링 판독을 스냅샷 복원과 함께 수행
windows-parallels-lab 사용 가이드
맥에서는 원천적으로 할 수 없는 두 가지를, Parallels Desktop 안의 Windows 11 복제본을 빌려서 대신 해줍니다.
- Windows에서만 도는 코드가 실제로 되는지 확인 — Office COM·.NET처럼 Windows 런타임이 있어야 도는 것들
- 만든 문서가 진짜로 안 깨지는지 눈으로 확인 — 생성한 한글(hwpx)·파워포인트(pptx)·워드(docx) 파일을 실제 한글/Office로 열어 화면을 캡처하고 판독
Claude에게 말로 부탁하면 됩니다 — "이거 윈도우에서 돌려서 확인해줘", "이 hwpx 한글에서 안 깨지는지 봐줘"처럼요.
⚠️ 대상 독자: 이 가이드는 맥에서 Parallels Desktop으로 Windows 11을 이미 쓰고 있는 분을 전제로 합니다. 순수 비개발자 단독으로 준비하기는 어렵습니다.
⚠️ 환경 제약: macOS + Parallels Desktop 26/27 + Apple Silicon용 Windows 11 전용입니다.
무엇을 할 수 있나요
| 하고 싶은 것 | 이렇게 실행하세요 |
|---|---|
| Windows에서만 되는 코드 검증 | /windows-parallels-lab 이 Office COM 코드 윈도우에서 실제로 되는지 확인해줘 |
| 문서 렌더링 확인 | /windows-parallels-lab 이 hwpx 를 실제 한글로 열어서 안 깨지는지 봐줘 |
| 게스트 화면 보기 | /windows-parallels-lab 지금 게스트 화면 캡처해서 보여줘 |
| 깨끗한 상태로 되돌리기 | /windows-parallels-lab 랩을 골든 스냅샷으로 되돌려줘 |
| 지금 상태 저장해두기 | /windows-parallels-lab 지금 상태로 스냅샷 떠줘 |
| 게스트 안에서 개발하기 | /windows-parallels-lab 개발 상자로 붙여줘 |
가장 중요한 안전 장치: 진짜 VM은 건드리지 않습니다
이 스킬은 평소 쓰시는 실사용 Windows VM을 절대 바꾸지 않습니다. 대신 그것을 복제한 자동화 전용 클론(win11-parlab) 하나만 조작합니다.
- ⚠️ 실사용 VM(
Windows 11,Windows 11 (강의용))에 대해서는 읽기와 스냅샷 생성만 허용됩니다. 전원을 끄거나, 되돌리거나, 파일을 쓰는 조작은 스킬이 거부합니다. - ⚠️ 랩 클론은 언제든 깨끗한 상태로 되돌릴 수 있습니다. 되돌리는 데 약 2초밖에 걸리지 않으니, 망가뜨려도 괜찮은 실험장이라고 생각하시면 됩니다.
- ⚠️ 되돌리면 그 안의 결과물은 사라집니다. 그래서 스킬은 되돌리기 전에 결과 파일을 먼저 맥으로 회수합니다.
- ⚠️ 파일이 오가는 통로는 딱 하나뿐입니다. 클론을 만든 직후 맥의 홈 폴더·외장 디스크·iCloud가 게스트에 통째로 보이지 않도록 차단하고, 전용 공유 폴더 하나만 남깁니다.
어떻게 동작하나요
모드 A — Windows 실런타임 검증
"이 코드가 Windows에서 실제로 도는가"를 확인합니다. 맥에서는 빌드까지만 되고 실행은 안 되는 것들이 대상입니다.
/windows-parallels-lab 이 .NET 테스트를 윈도우 랩에서 돌리고 결과 가져와줘
진행 순서는 이렇습니다: 클론을 깨끗한 상태로 되돌림 → 검사할 스크립트를 게스트에 보냄 → 실행 → 결과 파일을 맥으로 회수. 매번 같은 상태에서 시작하므로, 결과가 이전 실험의 찌꺼기 때문에 달라지는 일이 없습니다.
모드 B — 문서 렌더링 확인
"만든 문서가 진짜 프로그램에서 제대로 보이는가"를 확인합니다. 문서 파서가 스스로 검사해서는 절대 알 수 없는 것이라, 이 축이 유일한 검증 수단입니다.
/windows-parallels-lab 이 보고서 hwpx 를 한글로 열어서 제목 잘림이나 폰트 깨짐 없는지 봐줘
문서를 게스트로 보내고 → 실제 한글/Office로 열고 → 화면을 고해상도로 캡처해서 → Claude가 눈으로 읽습니다. "제목이 잘렸다", "한글 폰트가 다른 걸로 대체됐다", "표가 무너졌다", "이미지가 빠졌다"처럼 구체적으로 보고합니다.
모드 C — 랩 준비 (최초 한 번)
랩 클론이 아직 없다면 처음 한 번만 준비합니다. 실사용 VM을 복제하고, 파일 통로를 차단하고, 컴퓨터 이름을 바꾸고, 기준이 될 "골든 스냅샷"을 떠 둡니다.
/windows-parallels-lab 랩 클론 처음부터 준비해줘
사람이 중간에 개입할 일은 없지만, 복제를 시작하려면 원본 VM을 잠깐 꺼야 하므로 먼저 확인을 구합니다.
⚠️ 골든 스냅샷은 다시 떠야 할 때가 있습니다. 스냅샷은 CPU·메모리 할당과 Parallels 도구 버전까지 통째로 되돌립니다. 그래서 VM 사양을 바꾸거나 Parallels를 업데이트한 직후에는 골든을 새로 만들어야 합니다. 안 그러면 되돌릴 때마다 게스트가 도구를 다시 설치하느라 재부팅을 반복합니다.
모드 D — 개발 상자
게스트 안에 Claude Code를 두고 거기서 직접 개발하는 방식입니다. 모드 A·B가 "넣고 빼는 왕복"이라면, 이쪽은 아예 안에 들어가 앉는 쪽입니다. Office COM처럼 시행착오를 여러 번 반복해야 하는 작업에서는 왕복 지연이 사라져 훨씬 빠릅니다.
/windows-parallels-lab 개발 상자에 붙어서 이 COM 코드 고쳐가며 돌려보자
⚠️ 개발 상자는 되돌리지 않습니다. 설치·로그인·저장소 복제 같은 상태가 쌓여야 하는 자리라서, 검증용 결정론 계열과 스냅샷 갈래를 따로 둡니다. 개발 상자에서 "깨끗하게 되돌려줘"라고 하면 그동안의 작업이 전부 날아갑니다 — 스킬이 이 갈래에서는 되돌리기를 쓰지 않습니다.
이럴 때는 쓰지 마세요
| 상황 | 이유 |
|---|---|
| 게스트에서 WSL2를 돌리고 싶을 때 | 스킬이 게스트를 조작하는 권한이 시스템 계정이라 WSL이 뜨지 않습니다 |
| 게스트 안에서 또 가상 머신을 돌려야 할 때 | Apple Silicon은 중첩 가상화를 지원하지 않습니다 (Parallels·VMware 양쪽 다) |
| 게스트 화면을 마우스 좌표로 조작하고 싶을 때 | 이 스킬의 범위가 아닙니다 |
| 되돌릴 수 없는 실제 Windows 머신을 써야 할 때 | windows-remote-lab 스킬로 가세요 |
| 맥에서만으로 되는 작업 | 굳이 VM을 거칠 이유가 없습니다 |
안 될 때
| 증상 | 원인 / 해결 |
|---|---|
| 프로그램을 띄웠는데 화면에 안 보임 | 시스템 계정으로 띄우면 화면과 분리된 자리에 갇힙니다. "사용자 화면에 띄워서 캡처해줘"라고 명시하세요 |
| 캡처했더니 잠금 화면만 보임 | 게스트가 로그인 데스크톱 상태가 아닙니다. 골든 스냅샷 자체가 잠금 화면에서 떠졌을 수 있으니 로그인된 상태에서 다시 뜨세요 |
| 지난번 결과가 이번 결과처럼 보임 | 앱 띄우기가 조용히 실패하고 이전 창이 그대로 남아 있는 경우입니다. 회차마다 결과 폴더를 새로 만들고 그 폴더가 생겼는지로 판단하세요 |
| 한국어가 든 스크립트가 깨짐 | 스킬이 자동으로 처리하지만, 직접 넣은 파일이라면 인코딩을 확인하세요 |
| 되돌린 뒤 게스트가 계속 재부팅함 | 골든 스냅샷이 오래돼 도구 버전이 어긋난 것입니다. 골든을 새로 뜨세요 |
| 복제가 "VM is busy"로 실패 | 원본 VM이 켜져 있습니다. 먼저 꺼야 합니다 |
| 클론을 켜려는데 경고가 뜸 | 원본이나 강의용 VM이 이미 켜져 있으면 컴퓨터 이름이 충돌할 수 있어 확인을 구합니다 |
팁
- 되돌리기는 싸고 빠릅니다(약 2초). 실험 전에 습관적으로 되돌리면 "이전 상태 때문에 결과가 이상한" 사고가 사라집니다.
- 렌더링 판독은 구체적으로 요청하세요. "이상한 데 있어?"보다 "표 선이 끊겼는지, 제목이 잘렸는지 봐줘"가 훨씬 정확한 답을 받습니다.
- "보인다"와 "정확하다"는 다릅니다. 캡처 판독은 강력하지만 눈으로 보는 검증이므로, 중요한 문서는 사람이 한 번 더 확인하세요.
- 결과물은 되돌리기 전에 회수하세요. "결과 파일 먼저 가져오고 되돌려줘"라고 말하면 순서를 지켜 줍니다.
- 이 스킬은 CI 대체품이 아닙니다. 자동 검사 파이프라인이 아니라, 필요할 때 그 자리에서 쓰는 세션 보조 도구입니다.
지금 버전의 범위와 한계
- 게스트를 조작하는 권한이 시스템 계정이라, 로그인한 사용자 화면에서만 되는 것(WSL2, 일부 GUI 프로그램)은 별도 우회가 필요합니다.
- 중첩 가상화는 불가능합니다 — Apple Silicon의 제약이며 Parallels·VMware 양쪽 모두 해당됩니다.
- 모든 대기 시간에 상한이 걸려 있습니다. 게스트가 응답하지 않으면 무한정 기다리지 않고 실패로 보고합니다.
- 실패를 조용히 우회하지 않습니다 — 게스트 조작이 실패하면 맥에서 대충 대신 처리하는 식으로 넘기지 않고 에러로 드러냅니다.