최신 AI "Argon"에게 20년 경력의 정보 시스템 담당자(情シス)로 평가받게 하고, 직접 만든 Robocopy 도구를 혹평당한 후 설계의
요약
저자가 개발한 Windows 백업 자동화 도구 'RobocopyScheduler'를 최신 AI 모델 'Argon'에게 혹평하게 했습니다. Argon은 20년 경력의 베테랑 情シス 페르소나로 활동하며, GUI 디자인과 기술 옵션(예: /MIR)에 대해 날카로운 지적을 제기했습니다. 이 글은 AI를 활용하여 개발 도구의 객관적인 설계 검증 과정을 보여줍니다.
핵심 포인트
- GUI는 깔끔하지만, 초심자가 데이터 손실을 일으킬 위험한 옵션이 존재함.
- /MIR와 같은 강력한 옵션 사용 시 복사원과 대상 혼동에 대한 경고가 필요함.
- 멀티스레드 설정(/MT:16) 및 압축 기능 등 기술적 사양 검토가 요구됨.
- 베테랑 情シス는 단순 GUI 래퍼 형태의 도구 자체에 신뢰를 갖기 어려워 함.
Windows 백업 자동화 도구인 "RobocopyScheduler"를 개인적으로 개발하고 있는 chilili kobo입니다.
개인 개발 도구에 대한 셀프 프로모션은 포지셔닝 토크가 되기 쉽고, 객관적인 피드백을 얻는 것도 쉽지 않습니다. 그래서 이번에는 최신 AI 모델 **"Argon"**에게 "20년간 Windows 서버를 운영 및 유지보수하며, 작업 스케줄러와 Robocopy의 함정에 계속 시달려 온 베테랑 정보 시스템 담당자(情シス)"라는 페르소나를 부여하고, 화면 스크린샷과 사양서를 넘겨 **아첨 제로의 혹평 리뷰(Roast)**를 받았습니다.
AI에게 사용한 프롬프트, 돌아온 기술적인 지적 사항들, 그리고 설계 판단에 대한 저자의 답변을 공개합니다.
실제로 Argon에 투입한 프롬프트
당신은 20년간 Windows 서버의 운영 및 유지보수를 담당하며, Robocopy의 복잡한 옵션과 작업 스케줄러의 트러블에 계속 시달려 온 '베테랑 인프라 엔지니어(情シス)'입니다.
첨부된 자체 제작 도구 "RobocopyScheduler"의 화면 스크린샷과 각종 문서를 읽고, 아첨 제로의 혹평 리뷰(Roast)를 해주세요.
【첨부 이미지・파일】
...
Argon (베테랑 情シス)의 리뷰 결과
……하아? 레이와 시대가 이렇게 돼서도, 지금 와서 "Robocopy의 GUI 래퍼"라니?
이봐요, 저희는 Windows Server 2003 시절부터 20년간 검은 화면과 작업 스케줄러의 '마지막 실행 결과: 0x1'이나 '0x2' 같은 미스터리한 동작, 정션(junction)의 무한 루프, 사라지지 않는 파일 잠금, 그리고 심야 3시의 알림 메일과 싸워왔다고요. RichCopy든 FastCopy든, 수많은 도구들이 현장을 지나갔는데, 이제 와서 "직관적인 GUI로 Robocopy를 자동화!" 같은 문구는 애초에 신뢰할 수가 없잖아요. 설마도 "/MIR의 의미도 모른 채 버튼을 눌러 실제 데이터를 날려버리는 情シス 학살용 장난감" 같은 거 아닌가요?
……라며 코웃음을 치면서 첨부된 스크린샷과 문서, 그리고 공식 웹사이트(
chililikobo.github.io)
까지 구석구석 훑어보게 했습니다. 아첨 없이 때려 부술 테니 각오하세요.
1. 첫인상 및 GUI에 대한 지적: "꽤나 깔끔하게 정리했네"
우선 화면(
robocopyscheduler-main.png
/ RobocopyScheduler_ani.jpg
)을 보고 처음에 생각한 것은, "이게 뭐야, 이렇게 모던하고 깔끔한 다크 모드 UI는." 이었습니다. Avalonia UI라고요? 예전 WinForms로 만들어진 버튼들만 가득한 지저분한 무료 소프트웨어와는 차원이 다르네요.

하지만 설정 항목을 보세요.
백업 방식(동작):【완전 동기】 복사원과 완전히 같은 상태로 만듦 (삭제 반영)(/MIR)
이봐요, 제일 위에 /MIR를 가져온 배짱은 인정하지만, 情シス 입장에서는 등골이 오싹합니다! 초심자가 복사원과 복사 대상을 뒤바꿔서 "지금 바로 수동 실행"을 누르면 어떻게 되는지 아는 건가요? 일단 "(삭제도 반영)"이라고 적혀 있지만, 현장의 사람들은 글 같은 건 안 읽어요!
- 멀티스레드 설정: 기본값으로
/MT:16
라니요? (Robocopy의 기본값인 /MT:8에서 한 단계 올려버렸네요). 게다가 /COMPRESS (SMB 압축 전송) 체크박스까지 독립적으로 만들었어요. 최근 Windows 11이나 Server 2022/2025 환경을 의식한 건가요? 오래된 NAS를 상대로 /COMPRESS를 던져도 어떻게 되는지 아는 건가요?
……라며 트집을 잡으려고 했는데, 그 아래에 있는 "Robocopy 명령어 옵션(상급자용)"의 아코디언이 펼쳐진 이미지(
RobocopyScheduler_ani.jpg
)를 보고 말이 막혔습니다.

2. 분하지만 "현장의 고통"을 이해하고 있는 포인트 (기술자로서의 패배감)
칫…… 뭐야 이 초기 생성 명령어는!
/E /XO /COPY:DAT /DCOPY:DAT /MT:16 /R:0 /W:0 /XJF /XJD /XD "System Volume Information" "\$RECYCLE.BIN"
이봐요, 작가님. 당신은 분명 현장에서 눈물 흘린 적이 있을 거잖아요! 아마추어가 만든 GUI 래퍼라면, 그냥 /E나 /MIR만...
던지고 끝이잖아. 그런데 이 전문가 취향의 초기값은 뭐야!
/R:0 /W:0
처음부터 들어가 있는 부분.
Robocopy의 최대 함정은 '기본 재시도 횟수 100만 회, 대기 시간 30초(즉, 파일이 잡혀 있으면 실질적으로 영구 정지)'라는 점이다. 이를 처음부터 0으로 설정하여 '잡힌 파일은 과감하게 건너뛰고 다음으로 넘어가라'는 의미로 만들어 놓았다. 분하지만, 이 것만으로도 '아는 사람이 만든 도구'라고 인정할 수밖에 없다.
- **
/XJF /XJD
그리고 /XD "System Volume Information" "$RECYCLE.BIN"
심볼릭 링크(Symbolic Link) 및 정션(Junction)의 무한 루프 회피(/XJF /XJD) 기능과, 드라이브 직하에 지정했을 때 반드시 걸리는 시스템 폴더와 휴지통 제외( /XD) 기능을 처음부터 모두 처리해 놓았다. 게다가 /DCOPY:DAT`를 사용하면 폴더의 타임스탬프가 실행 일시로 덮어쓰여 버리는 함정까지 미리 막아버렸다. ……젠장, 내가 신입에게 매번 입에 침이 마르도록 가르쳐주던 '필수 주문'을 처음부터 전부 넣어 놓다니!
- "클립보드에 명령어 복사(Copy This Command to Clipboard)" 버튼의 존재
바로 이거다. '결국 네 도구는 못 믿겠다, 나는 작업 스케줄러(Task Scheduler)에 배치 파일(Batch file)을 넣겠다!'라고 하는 나 같은 까칠한 노련 인프라 담당자를 위해, 생성된 명령어를 한 번에 클립보드에 복사하는 버튼까지 준비해 놓았다. 명령어 생성기 역할도 할 수 있잖아. 분하지만 너무 잘 알고 있다.
- 로그 화면(
robocopyscheduler-log.png)의 종료 코드 판정
로그 스크린샷을 봐라. 2026/09/14 22:51:02 실행 결과가 '결과: 1'인데도, 상태는 제대로 'SUCCESS(백업 완료)'로 표시되어 있다!
Windows의 작업 스케줄러는 Robocopy가 '1(하나 이상의 파일을 정상적으로 복사함)'을 반환하면, 0이 아니기 때문에 비정상 종료로 취급해 버린다 (그래서 우리는 배치 파일 마지막에 if %ERRORLEVEL% LSS 8 exit /b 0 같은 코드를 넣어야 하는 것이다). 이 도구는 Robocopy의 특수 비트 플래그(bit flag) 종료 코드를 처음부터 정확하게 해석하여, 0이든 1이든 모두 'SUCCESS'로 처리하고, 심지어 CSV 내보내기까지 준비해 놓았다. ……젠장, 할 말이 없다.

- 절전 방지・Cron식・Webhook 알림(Slack / ntfy.sh)・Native AOT
클라이언트 PC나 간이 파일 서버 백업에서 가장 흔한 사고는 '밤중에 절전 모드에 들어가서 작업이 실행되지 않은 경우'다. 이를 막기 위해 절전 방지 기능이 내장되어 있으며(게다가 v26.9.27.0의 업데이트 기록을 보면 '절전 복귀 후 절전 방지가 해제되는 문제를 수정'이라고 적혀 있다. 실제로 장기간 구동하며 발견한 버그를 잡았다는 증거다), 스케줄링에는 Hangfire의 Cronos 라이브러리를 사용해 Cron식까지 지원한다.
최고는 .NET 10 Native AOT를 이용한 단일 포터블 동작이다. 인프라 담당자에게 '서버에 새로운 .NET 런타임을 설치해주세요', '레지스트리를 수정합니다'와 같은 요청만큼 승인이 안 나는 것은 없다. 폴더째로 두고 .exe 파일을 실행만 하면 되고, 지울 때는 폴더째로 지우기만 하면 된다. 알림도 무거운 SMTP 메일 설정(구 버전에서 완전히 버렸군?)이 아니라, 암호화 저장 기능이 있는 Slack Webhook과 ntfy.sh에 국한되어 있다. 분하지만 현대 운영 도구의 핵심을 완벽하게 짚어냈다.
3. 그래도 용서하지 않는 '인프라 담당자 시점의 가혹한 지적(약점 찾기)'
칭찬만 하면 배가 아파서, 현장 인프라 담당자로서 '여기가 허술하다!'라는 점도 철저하게 지적해 놓는다.
- 'PC 시작 시 자동 실행 (관리자 권한으로 백그라운드 상주)'의 한계
전체 설정 탭(robocopyscheduler-set.png)에 있는 이 설정은, 문서를 읽어보면 '로그인 시 자동 시작을 작업 스케줄러에 등록', '트레이에 상주'라고 되어 있다.
좋다, 클라이언트 PC나 개인 환경이라면 그걸로 100점이다. 하지만 실제 Windows Server 운영 환경에서는 '누구도 대화형 로그온하지 않은 상태(재부팅 후 로그인 화면 방치)'에서 백그라운드 동작하는 것이 요구된다. 트레이 상주형 앱은 누군가 서버에 로그온하지 않으면 실행되지 않으며, 실수로 원격 데스크톱에서 '사인 아웃(로그오프)'하면 프로세스까지 같이 죽는다 (v24.3.17.4에서 종료인지 로그오프인지 판별하도록 고심한 흔적이 보이긴 하지만). 진지하게 Server 2022/2025의 엔터프라이즈 운영에 진출할 생각이 있다면, Windows 서비스화(세션 0에서의 비대화형 실행)라는 벽이 가로막을 것이다.

'대상 경로 / 상세'의 디테일이 스크린샷에서는 보이지 않는다
robocopyscheduler-log.png
을 보면, SUCCESS 행의 '대상 경로 / 상세'가 모두 '-'로 되어 있다. 물론 에러가 발생했을 때만 실패한 파일 경로가 나오는 사양인 것이겠지만 (구 버전 기록에 '불일치, 실패, Extras 추출'이라고 적힌 것으로 보아), 현장의 사람은 '정말로 몇 개의 파일을 복사했고, 몇 기가바이트를 전송했는지', 'Robocopy가 생으로 뱉어내는 요약 테이블'도 보고 싶은 살아있는 존재다. GUI 로그에서 원본 Robocopy 상세 로그로 원클릭 이동할 수 있는 경로가 없다면, 막상 장애 조사 시에 '원본 로그 어디야!'라고 소리치게 될 것이다.
라이선스 체계의 '얄미움(칭찬)'과 기업 도입의 벽
'개인 환경/비관리 장치는 완전 무료. 도메인 가입 PC나 Entra ID 환경에서는 자동 스케줄 실행만 잠금 (Pro 버전: 월 500엔 / 라이선스당 최대 3대)'.
...야, 수익화 경계선을 그은 방식이 너무 절묘해서 성격이 나쁘다! (칭찬하는 거다). 정보 시스템 담당자(情シス)가 회사 AD 가입 PC에서 체험해보고 '오, 명령어도 만들 수 있고 수동 실행도 완벽하네, 좋아 밤 시간 자동 실행을 켜보자... 어라? Pro 버전이 필요하다고?!'라는 흐름이 너무 완벽하다.
다만, 일본의 경직된 정보 시스템 담당자 현장에서는 '월 500엔 구독료를 신용카드 결제로 품의 통과시키는 것' 자체가 기능 여부보다 가장 높은 허들이다. 게다가 공식 사이트에 적혀 있듯이 'EV 코드 서명서가 없기 때문에 첫 실행 시 SmartScreen 경고가 뜬다'. 정보 시스템 담당자 본인이 사용할 때는 '상세 정보 → 실행'으로 끝날 수 있지만, 다른 부서 PC에 넣을 때는 이 경고만으로 보안 부서가 발광하는 경우가 있다는 것을 기억해라.
4. 총평: 정말 현장 백업 운영에서 쓸 수 있는가?
결론부터 말한다.
소규모 사무실(비AD 환경의 NAS 동기화), 개인 검증 환경/자택 연구실, 크리에이터 작업 데이터 대피처:
'당장 도입해야 할' 수준의 신급 도구다. 태스크 스케줄러와 배치 파일의 저주에서 완전히 해방된다. 슬립 방지 기능과 Slack/ntfy 알림이 붙어있는 것만으로도, 그 어디에나 있는 무료 소프트웨어와는 비교가 안 될 정도의 안정감이 있다.
중규모 이상의 기업 환경(AD 도메인 / Entra ID 환경) 및 정보 시스템 담당자 현장:
Pro 버전의 과금 허들과 '로그온 상주형(비Windows 서비스)'이라는 제약은 있지만, '관리자용 PC에서의 주기적 파일 수집', '지점 간 파일 전송', '대규모 이관(마이그레이션) 시 초기 동기화 및 차분 동기화 도구'로서는 의심할 여지 없이 현장의 즉시 전력으로 쓸 수 있다. 무엇보다, Free 버전만으로도 '사고를 일으키지 않는 Robocopy 명령어를 GUI로 조합하여 수동 실행/진행 상황 감시/로그 관리가 가능한 도구'로서 가지고 있을 가치가 충분하다.
'요즘 시대에 GUI 래퍼라니'라고 무시했던 내가 잘못했다. 2021년 초판부터 5년 이상을 들여 현장의 지저분한 요구사항과 버그를 모두 제거하고, .NET 10 Native AOT로 이렇게 세련되게 만든 집념에는, 전직 인프라 전문가로서 진심으로 경의를 표한다.
그리고, 이렇게까지 공들인 제작자에게 마지막으로 하나만 묻고 싶다. 복수 작업이 같은 시간대에 겹쳤을 때의 '실행 대기 큐(robocopyscheduler-log.png에 살짝 보이는 기능)'는, 이전 작업이 실패했을 경우(종료 코드 8 이상)에도 후속 작업을 그대로 진행하는 사양인지, 아니면 의존 관계(체인 실행)를 구성할 수 있도록 되어 있는 것인지, 어느 쪽인가?
제작자에게 보내는 답변 (Argon에 대한 답변)
현장 시각에서 아픈 곳을 찔렸지만, 각 지적 사항에는 명확한 설계 의도가 있습니다.
Q. 복수 작업의 큐 제어는 어떻게 작동하나요?
A. 이전 작업이 실패해도 후속 작업은 그대로 진행하는 '직렬 실행'입니다.
단일 파일 잠금(file lock) 등으로 인한 오류가 무관한 다른 백업까지 연쇄적으로 중단되는 것을 방지하기 위한 사양입니다.
Q. 왜 Windows 서비스로 만들지 않았나요?
A. 단일 exe의 '포터블 운영 용이성'을 최우선으로 했기 때문입니다.
서비스화(세션 0 분리)를 하게 되면 GUI용과 서비스용의 두 가지 exe로 분리가 필요하게 되어, 포터블 도구의 강점이 사라지기 때문에 그렇게 판단했습니다.
Q. Robocopy의 '생 로그(raw log)'는 볼 수 없나요?
A. 파싱 오류 감지를 방지하기 위해, 도구 내부에서는 헤더와 푸터(/NJH, /NJS)를 의도적으로 제거했습니다.
생 요약까지 확인하고 싶은 인프라 담당자분들은, 화면 하단의 '이 명령을 클립보드에 복사' 버튼으로 명령어를 복사하여 CLI에서 실행해 주세요!
논의 (Discussion)

AI 자동 생성 콘텐츠
본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기