개발기
AIShot 개발기 — 긴 화면을 AI에게 건네기까지
개발 발행 5분 읽기
#AIShot#개발기#macOS#스크롤 캡처#OCR
AIShot 프로젝트 보기AIShot의 첫 과제는 화면을 찍고 파일을 찾아 대화창으로 옮기는 동작을 줄이는 일이었습니다. 첫 개발기에서 다룬 초기 흐름을 바탕으로, 화면 한 장에 들어오지 않는 문서와 터미널 안의 AI 에이전트까지 다루게 됐습니다. 이 글은 2026년 8월 21일 공개한 1.7 버전에 담긴 변화와 그때의 구현 결정을 정리합니다.
스크롤한 거리보다 겹치는 화면을 믿었습니다#
긴 문서를 여러 번 나눠 찍으면 질문을 보내기도 전에 이미지 정리부터 해야 합니다. 스크롤 캡처는 창 하나를 선택하면 맨 위로 이동한 뒤 조금씩 내려가며 화면을 찍고, 이를 긴 PNG 한 장으로 이어 붙입니다. 메뉴 막대에서 시작하거나 별도로 연결한 단축키로 호출할 수 있습니다.
어려운 부분은 스크롤 명령을 보낸 만큼 화면이 움직이지 않는다는 점이었습니다. macOS의 스크롤 가속과 앱마다 다른 처리 방식 때문에 명령의 이동량만으로 이음새를 정하면 내용이 겹치거나 빠질 수 있습니다. 그래서 연속한 두 이미지의 겹치는 부분을 비교해 실제 이동량을 구하는 방식을 택했습니다. 브라우저 확장에 기대지 않고, 화면에 보이는 픽셀을 기준으로 잇는 구조입니다.
움직이는 영상이나 무한 스크롤에서는 연결할 지점을 찾지 못해 중간에 멈출 수 있고, 고정된 사이드바는 반복해 나타날 수 있습니다. 최대 프레임 수를 두어 작업이 끝없이 이어지지 않도록 했고, 완료 시에는 소리와 짧은 화면 패널로 결과를 알립니다. 오래 걸리는 캡처일수록 끝났다는 신호도 기능의 일부였습니다.
긴 이미지에는 읽을 수 있는 글자도 필요했습니다#
파일을 길게 이어 붙이는 데 성공해도, AI 앱이 이미지를 줄여 받으면 본문 글자는 너무 작아질 수 있습니다. 이를 위해 스크롤 캡처에 macOS Vision을 이용한 한국어·영어 문자 인식을 선택 기능으로 더했습니다. 문자 인식은 Mac에서 처리하므로 별도의 API 키가 필요하지 않습니다.
기본값은 OCR을 끄는 것입니다. 짧은 화면을 전달할 때마다 문자 인식을 기다릴 이유는 없기 때문입니다. 긴 문서를 읽히고 싶을 때는 이미지 옆에 텍스트 파일을 남기거나, 이미지와 텍스트를 순서대로 붙여넣거나, 텍스트만 보낼 수 있습니다. OCR을 켜면 인식 결과는 PNG 옆의 .txt 파일로도 저장됩니다. 원본 PNG는 전체 해상도로 보관하고, 목적지에 건네는 형식을 따로 고르는 것이 핵심이었습니다.
터미널을 고르면 그 안의 에이전트로 갑니다#
GUI 대화창에 이미지를 보내는 것과 CLI 에이전트에 이미지를 건네는 것은 입력 방식이 다릅니다. 목적지 목록에 Ghostty, iTerm2, Terminal, WezTerm, kitty, Warp를 더해, 다른 앱에서 찍어도 지정한 터미널에 파일 경로를 붙여넣을 수 있게 했습니다.
AIShot은 터미널 안의 창·탭·분할 화면을 직접 고르지 않습니다. 마지막으로 작업하던 입력 위치를 사용하므로, 여러 에이전트를 열어 두었다면 받을 쪽을 먼저 선택해야 합니다. 기본 동작은 경로를 붙여넣고 기다리는 것입니다. 사용자가 질문을 이어 쓸 수 있도록 했고, 곧바로 보내고 싶은 경우에만 Enter 자동 입력을 켜게 했습니다. 이 설정은 파일 경로를 받는 터미널에만 적용합니다.
메뉴 막대와 캡처의 수명을 나눴습니다#
목적지를 바꾸고 설정을 열고 업데이트를 확인하려면 계속 접근할 수 있는 자리가 필요했습니다. 현재 구조는 메뉴 막대 호스트 하나가 대기하고, 실제 캡처는 매번 별도의 단기 프로세스에서 수행하는 방식입니다. 첫 버전의 일회성 실행 흐름을 유지하면서 제어할 자리를 더한 셈입니다.
설치도 DMG와 소스 빌드가 같은 앱 내부 설치 경로를 사용하도록 맞췄습니다. 내려받은 앱을 설치 위치에 둔 뒤 처음 열면 메뉴 막대 실행을 준비하고, 이후 로그인 때도 다시 사용할 수 있습니다. Sparkle을 통한 업데이트 확인은 메뉴 막대에서 제공하며, 업데이트 파일은 서명을 검증한 뒤 설치합니다.
공개 버전의 사용 범위#
2026년 10월 7일 확인한 최신 공개 릴리스는 1.7이며, macOS 14 이상에서 Apple Silicon과 Intel을 지원합니다. 무료 오픈소스이고, 다운로드한 앱은 공증되지 않아 첫 실행 때 macOS의 보안 승인 절차가 필요할 수 있습니다. 화면 기록 권한은 캡처에, 손쉬운 사용 권한은 스크롤 조작과 자동 붙여넣기에 사용합니다.
AIShot이 줄이고 싶은 것은 화면을 찍는 시간보다 화면을 보여 주고 질문을 이어 쓰기까지의 간격입니다. 긴 문서는 이미지와 글자를 함께 전달하고, CLI에서는 경로 뒤에 질문을 적고, 설정은 메뉴 막대에서 바꿀 수 있도록 그 사이의 동작을 다듬었습니다.