안녕하세요, 매주 새롭고 유용한 툴을 제작하는 Flamehaven입니다. 이번 주에는 FlashRecord를 소개합니다.

FlashRecord는 개발자 워크플로우에 바로 들어갈 수 있도록 설계된 초경량(≈2MB) Python-native CLI 스크린 캡처 도구입니다. GUI는 없고, 터미널에서 바로 스크린샷(@sc)과 GIF 녹화(@sv)를 만들 수 있으며, import flashrecord로 스크립트/테스트/CI에 직접 통합할 수 있습니다.

주요 특징

  • CLI 우선 & Python 네이티브import flashrecord 하거나 파이프라인에서 flashrecord @sv로 바로 실행.
  • 워크플로우 친화적 — Claude/Gemini/Codex 세션 자동 저장, PR/문서용 마크다운 스니펫 내보내기, 인라인 지침 노트 지원.
  • 초경량: 설치 용량 약 2MB, 의존성은 Pillow/NumPy/imageio 등 표준 라이브러리 위주
  • 원커맨드 단순화@sc(스크린샷), @sv(GIF 녹화) — 대화형 또는 스크립트 방식 모두 지원.
  • 스마트 압축 — CWAM 영감 기반의 순수 PIL+NumPy 구현으로 시각적으로 중요한 부분은 유지하면서 파일 크기 대폭 절감.
  • 여러 압축 프리셋high, balanced, compact 등 품질·크기 트레이드오프 선택 가능.
  • 시간·공간 최적화 — 시간적 서브샘플링(예: 10→8 FPS), 적응형 해상도 스케일링, 살리언시 기반 품질 보존(분산, 에지 밀도, 엔트로피).
  • RGB 색상 충실도 유지 — 중요한 영역은 전체 색상 정보를 보존합니다.
  • 자동 정리 & 수명 관리 — N시간 이상된 파일 자동 삭제 설정 가능, 일관된 출력 네이밍/폴더 구조.
  • 크로스플랫폼 — Windows / macOS / Linux 동일 명령(※ macOS: screencapture, Linux: gnome-screenshot/scrot 등, Windows: ImageGrab 기반).
  • 프로덕션 준비 완료 — pytest 테스트 스위트, Sphinx 문서, GitHub Actions CI 포함.
  • 스크립트 & CI 통합 용이 — 결정적 출력 경로, 테스트/빌드 스크립트/CI 작업에서 시각 증거로 바로 첨부 가능.
  • 추가 네이티브 의존 없음 — Pillow, NumPy, imageio 정도만 필요, 무거운 외부 바이너리 불필요.
  • 빠른 캡처·인코딩 — 스크린샷 약 10–50ms(플랫폼에 따라 다름); 개발자 워크플로우에 맞춘 캡처·인코딩 파이프라인.
  • 확장 가능한 API — 스크린샷/녹화/세션 관리용 임포트 가능한 함수 제공 — 툴링이나 테스트에 내장 가능.
  • 프라이버시 중심 — 기본은 로컬 처리; 클라우드 업로드는 사용자가 통합할 때만 동작.
  • 로드맵 준비 완료 — WebP/MP4 출력, 오디오 캡처, 윈도우 단위 캡처, VSCode 확장, 스트리밍 등 계획 중.

주요 사용 사례:

  • PR 설명 및 문서용 GIF 빠르게 생성
  • CI에서 시각적 테스트 자동화하고 실패 시 증거 GIF 첨부
  • 터미널을 떠나지 않고 튜토리얼/데모 자산 제작

지금 바로 시도해보기(소스 기준 설치):

git clone https://github.com/Flamehaven/FlashRecord  
cd FlashRecord  
pip install -e .  
flashrecord @sc        # 스크린샷  
flashrecord @sv 5 10   # 5초, 10FPS 예시  
  

레포: https://github.com/Flamehaven/FlashRecord — MIT 라이선스.

피드백, 이슈, PR 환영합니다 — 필요한 벤치마크(샘플 GIF 전/후 용량, 해상도·FPS별 성능)나 기술적 상세 설명 원하시면 바로 올려드릴게요.