Hacker News

PaperPilot – Zero-Cloud, Pure-Rust PDF Engine with WASM and MCP

PaperPilot: WASM과 MCP를 지원하는 로컬 우선 Rust PDF 엔진

PaperPilot은 PDF 작업을 로컬에서 처리하는 Rust 기반 도구 모음으로, CLI와 MCP 서버, REST API, 브라우저 WASM, 데스크톱 앱에서 같은 엔진을 사용합니다. 병합·압축·OCR 등을 제공하며 파일을 클라우드로 보내지 않는다고 설명하지만, 전자서명 등 일부 기능은 로드맵에 올라 있습니다.

에디터 노트

PaperPilot의 실용성은 새 PDF 연산보다 같은 Rust 엔진을 CLI와 MCP, 브라우저 WASM에 걸쳐 쓴다는 데 있습니다. 기존 명령줄 도구로 충분하다는 반응도 타당하지만, 친구의 휴대전화처럼 CLI를 쓰기 어려운 환경에서는 브라우저 실행이 별도의 접근 경로가 됩니다. 각 인터페이스가 제공하는 기능 범위와 PDF 호환성은 자료에 구체적인 비교 기준이 없습니다. 개인정보 보호 주장은 파일을 로컬에서 처리한다는 설계 설명에 근거합니다. 게시자는 브라우저 개발자 도구의 Network 탭에서 업로드가 없는지 확인하라고 안내하지만, 댓글에는 별도 검증 결과가 없습니다. 한편 서명은 작성자 댓글에서 가능한 기능으로 언급됐지만 본문에서는 v0.9 로드맵에 올라 있어 제공 상태가 일치하지 않습니다. MuPDF 코드 사용과 라이선스 문제도 댓글의 의혹이며, 답글은 hayro 사용과 향후 MuPDF 어댑터 계획을 언급할 뿐 코드 유사성을 입증하지 않습니다.

AI 요약

PaperPilot은 PDF와 문서 작업을 위한 Rust 도구 모음입니다. 하나의 엔진을 CLI, MCP 서버, localhost REST API, 브라우저 WASM, Tauri와 Svelte 기반 데스크톱 앱에서 공유합니다. 브라우저 버전은 파일을 브라우저 메모리에서 처리하며 업로드하지 않는다고 설명합니다. Chromium이나 C++ 런타임, 클라우드 호출은 필요하지 않습니다.

기능과 사용 방법

PDF 병합·분할·회전·페이지 삭제와 재정렬, 소책자 배치, N-up, 압축, 텍스트 추출, OCR을 지원합니다. OCR에는 pure-Rust PaddleOCR 구현인 rten을 사용합니다. 보안 기능으로 워터마크, 서명 검증 및 제거, 개인정보 탐지, 문서 정제를 제시합니다. Excel 데이터를 JSON이나 CSV로 내보내는 기능도 포함합니다. 암호화·복호화·서명·마스킹·주석 기능은 v0.9 로드맵에, PDF와 Markdown·HTML·JSON 간 변환은 v0.7 로드맵에 있습니다.

MCP 서버는 Claude Desktop이나 Cursor 같은 MCP 클라이언트에 연결할 수 있습니다. CLI에서는 paperpilot merge --inputs doc1.pdf doc2.pdf --output merged.pdf처럼 실행합니다. 소스에서 빌드하려면 Rust 1.75 이상과 Node.js, pnpm이 필요합니다. Apache 2.0 라이선스의 Community Edition에 CLI, MCP, REST, WASM, 데스크톱 앱이 들어가며 SSO, RBAC, 감사 로그, DLP를 포함한 Enterprise Edition은 별도로 개발 중이라고 안내합니다.

Hacker News 반응

  • @Shorel — 이 프로젝트에 이미 명령줄 도구로 쉽게 할 수 없는 기능이 있나요?
    • @ligarota — 네, WASM입니다. CLI가 없는 곳에서도 브라우저에서 실행할 수 있습니다. 친구 휴대전화가 예입니다.
    • @Shorel — 제 휴대전화에는 SSH와 Tailscale을 통한 명령줄이 있으니 친구 휴대전화에서 써야겠네요.
  • @sreekanth850 — MuPDF를 포팅한 건가요?
  • @colesantiago — 이 PDF 엔진은 바이브 코딩으로 만들었고 MuPDF 소스 코드를 읽어 C에서 Rust로 옮긴 건가요? 일부 위치에서 MuPDF를 조금 참고한 흔적이 보입니다. 그렇다면 공개하고 Apache 대신 AGPLv3 라이선스를 써야 합니다.
    • @tredre3 — 코드가 막연히 비슷하다는 뜻이라면 제가 판단할 수는 없지만, MuPDF 언급은 AI 지침에 있습니다. 나중에 MuPDF 백엔드를 FFI로 붙이는 항목도 적혀 있습니다.
    • @ligarota — Rust의 hayro를 사용합니다.
  • @jacquesm — 작성자의 소개 글은 LLM이 쓴 것처럼 읽힙니다.
    • @Shorel — 웹페이지만 소프트웨어라고 생각하고 명령줄을 두려워하는 경우처럼 보입니다. 하려는 일은 이미 쉽게 할 수 있습니다.
    • @selcuka — 소개 글에 터미널 CLI와 bash 스크립팅도 적혀 있습니다.
    • @lionkor — Tauri와 Svelte로 만든 앱을 네이티브라고 부르는 건 맞지 않습니다.
  • @febed — 알고 있는 암호를 제거하는 기능과 서명 추가 기능이 있으면 유용하겠습니다.
  • @darksim905 — 기본 기능과 Adobe 같은 완전한 PDF 저작 도구는 다릅니다. 대량의 PDF를 헤드리스로 처리하거나 분석하는 경우가 아니라면 Foxit PDF 같은 도구로 충분한지 모르겠습니다.
    • @Gigachad — PDF를 직접 편집해야 할 실제 용도가 있나요? 보통 워드 프로세서 같은 도구에서 PDF로 내보내지 않나요?
  • @spwa4 — 웹 인터페이스가 마음에 듭니다. 작은 모델의 도구 호출 기능과 결합해 저장해 두고 어디서나 쓸 수 있는 단일 HTML 페이지로 만들 수 있을까요? PDF 서명은 어떻게 하나요?
  • @Tepix — Apache Tika 대신 Open-Webui에서 쓸 수 있나요?
  • @mashally — 좋은 작업입니다. 이런 서비스를 만드는 데 왜 AI를 사용하나요? AI가 필요하지 않아 보입니다.
  • @aidotguru — 마음에 드는 점은 개인정보 보호입니다. 브라우저 안에서만 로컬로 실행된다는 점이 찾던 기능입니다.

원문: GitHub / 번역·요약: Trawling