단축키 한 번으로
프롬프트를 넣을 수 있을까?
결론: 지원 범위를 정하면 가능합니다. 일반 웹사이트는 복사 기능까지 담당합니다. 다른 웹사이트 입력창에는 브라우저 확장 프로그램, 다른 데스크톱 앱에는 OS 권한을 받은 별도 앱이 필요합니다. 암호 자동완성의 전용 UI를 일반 프롬프트용으로 그대로 사용하는 구조는 권장하지 않습니다.
이 문서는 공식 API 문서에 근거한 구현 검토입니다. 확장 프로그램이나 데스크톱 앱을 구현·배포한 결과가 아닙니다. 특정 서비스의 편집기와 실제 기기 호환성은 아직 확인하지 않았습니다.
1. 어디까지 가능한가
| 방식 | 가능 범위 | 조건·한계 |
|---|---|---|
| 현재 정적 사이트 | 사용자 클릭으로 프롬프트 복사, 같은 페이지 내부 입력 처리 | HTTPS와 브라우저 권한 조건. 다른 탭·앱의 입력창에 직접 삽입할 권한은 없음. 복사 실패 시 수동 복사 제공. |
| 데스크톱 Chrome 확장 | 단축키 → 프롬프트 선택 → 현재 웹페이지의 편집 가능한 입력창에 삽입 | 설치 필요. activeTab·scripting·storage 권한. 브라우저 내부 페이지와 일부 편집기는 지원 불가 또는 별도 대응. |
| 데스크톱 전용 앱 | 전역 단축키 → 선택 → 원래 앱으로 포커스 복원 → 붙여넣기 시도 | 설치와 OS 권한 필요. 보안 입력·높은 권한 창·일부 앱에서 제한. 모든 앱 지원은 보장하지 못함. |
| iPhone 텍스트 대치 | 짧은 약어 입력으로 미리 등록한 문구 사용 | 사용자가 키보드 설정에 직접 등록. 웹사이트가 시스템 키보드 사전을 자동 변경하는 기능은 이번 설계 범위 밖. |
Clipboard API는 보안 컨텍스트와 사용자 동작 등의 제약을 받습니다. 웹사이트에서 클립보드를 다루는 기능과, 다른 앱을 제어하는 기능은 서로 다른 권한입니다. [1] Chrome의 commands API는 확장 단축키를 제공하고, 단축키로 호출할 때 activeTab으로 현재 탭의 임시 접근을 받을 수 있습니다. [2][3]
2. 권장 구현: 먼저 데스크톱 브라우저 확장
대부분의 사용이 웹 AI 입력창이라면, 별도 서버 없이 Chrome Manifest V3 확장부터 만드는 것이 비용과 권한 범위를 줄이는 방향입니다. Chromium 기반 다른 브라우저는 별도 설치·호환성 검증을 거쳐 지원 대상을 정합니다.
- 데이터 가져오기. 공개 템플릿은 확장에 포함하고, 개인 프롬프트는 사이트의 JSON 백업을 확장에서 직접 가져옵니다. 사이트 localStorage와 확장 저장소는 자동 공유되지 않습니다. 개인 내용은 storage.local에 보관하고 서버 동기화는 초기 범위에서 제외합니다.
- 단축키 호출. 예를 들어 Ctrl+Shift+Y / Command+Shift+Y를 초기 후보로 두되 충돌 검사 후 사용자가 변경하도록 합니다. commands 이벤트에서 activeTab과 scripting으로 현재 탭에 선택 창을 삽입합니다. 전체 사이트에 대한 상시 접근 권한은 요구하지 않습니다.
- 커서 기억과 선택. 선택 창을 열기 전에 현재 편집 요소, 선택 범위, 커서 위치를 기억합니다. 검색 후 Enter로 확정하고 Escape로 취소합니다. 선택 창에 포커스가 옮겨져도 원래 커서 위치가 유지되어야 합니다.
- 입력창별 삽입. 일반 input·textarea는 선택 구간을 텍스트로 교체하고 input 이벤트를 전달합니다. contenteditable은 Selection/Range로 텍스트를 넣습니다. React 상태 관리, Lexical·ProseMirror 등 편집기는 사이트별 어댑터와 실제 회귀 검사가 필요합니다. 합성 이벤트는 실제 사용자 입력과 다르므로 DOM만 바뀌고 서비스 상태가 갱신되지 않는 경우를 검사합니다.
- 보수적인 실패 처리. 입력창을 찾지 못하거나 비밀번호·읽기 전용·비활성 입력창이면 삽입하지 않습니다. 지원하지 않는 iframe·닫힌 Shadow DOM·브라우저 보호 페이지에서는 '복사 후 직접 붙여넣기'로 전환합니다. 복사를 보장해야 한다면 clipboardWrite 권한의 필요성을 별도로 검토하고 고지합니다. 자동 제출은 하지 않습니다.
Content script는 웹페이지 DOM과 상호작용할 수 있지만, 프레임 출처와 주입 권한에 따라 범위가 달라집니다. [4] activeTab은 제한된 임시 권한이며, 모든 출처의 iframe에 대한 포괄 접근을 뜻하지 않습니다.
3. 전역 단축키가 필요한 경우
Windows: RegisterHotKey로 단축키를 등록하고, 선택한 문장을 클립보드에 기록한 뒤 원래 창에 붙여넣기 입력을 보내는 방식을 검토할 수 있습니다. SendInput은 UIPI 등 권한 차이에 의해 제한됩니다. 관리자 권한 창까지 제어하려고 앱 권한을 무조건 높이는 설계는 피합니다. [5][6]
macOS: 네이티브 단축키 처리, NSPasteboard, 포커스 복원과 이벤트 전달을 조합하는 설계 후보입니다. 다른 앱 제어에는 손쉬운 사용 접근 등 OS 권한 검토가 필요하며, 거부되면 복사까지만 제공합니다. 정확한 권한과 배포 방식은 최소 프로토타입으로 확인합니다. [7]
iPhone: Apple의 텍스트 대치는 약어와 문구를 키보드 설정에서 등록하는 기능입니다. ';review' 같은 짧은 호출어로 핵심 문구를 쓰는 방법을 먼저 검토할 수 있습니다. 매우 긴 프롬프트, 줄바꿈과 여러 앱에서의 동작은 기기별로 확인해야 합니다. [8]
클립보드 기록은 OS 기록·다른 앱에 남을 수 있습니다. 기존 클립보드 복원은 대기 시간만으로 처리하지 않고, 그동안 사용자가 내용을 바꿨는지와 대상 앱이 소비했는지 확인할 정책이 필요합니다. 초기에 자동 복원을 보장하지 말고 사용자가 선택하도록 설계합니다.
4. 구현할 때의 완료 기준
- 일반 textarea, 여러 줄 contenteditable, 대상 AI 서비스의 편집기에서 커서·선택 영역·한글·줄바꿈·긴 문장 보존을 확인.
- 단축키 충돌, 포커스 변경, 창 닫기, 권한 거부, iframe, Shadow DOM, IME 조합 중 호출에서 명확한 실패 처리.
- 비밀번호와 읽기 전용 입력창에 삽입하지 않고, 자동 전송·폼 제출·전역 키 입력 수집을 하지 않음.
- 개인 JSON 가져오기에서 잘못된 형식·용량 초과·악성 HTML은 거부하거나 텍스트로 처리. 가져오기·삭제 전 사용자 확인.
- 권한을 거부했을 때 사용할 수 있는 복사 또는 수동 복사 경로를 확인. 실제로 시험한 서비스만 지원 목록에 표시.
위 항목은 앞으로의 검증 계획입니다. 이번 사이트 구현의 통과 결과와 혼동하지 않아야 합니다.
5. 현재 사이트의 운영과 SEO
런타임 서버·DB·AI 호출 없이 정적 HTML/CSS/JavaScript로 구성했습니다. 방문자 입력은 서버로 저장하지 않고, 검색은 브라우저에서 처리합니다. 이미지·외부 폰트·분석 스크립트를 최소화해 접속당 처리 부담을 줄였습니다. 방문자 수, 최대 처리량, 비용 상한, 호스팅 플랫폼의 방화벽 설정을 측정하거나 설정한 것은 아닙니다.
공개 접근, HTML 본문, 각 프롬프트의 고유 URL·title·description·canonical, robots.txt와 sitemap.xml을 준비했습니다. 이런 설정은 발견·색인에 필요한 기본 조건을 돕지만 색인이나 검색 순위를 보장하지 않습니다. [9][10] Search Console 소유권 확인과 사이트맵 제출은 아직 수행하지 않았습니다.
유입을 위해서는 실제로 자주 쓰는 원문을 공개 가능한 형태로 정리하고, 각 프롬프트에 입력 예시·좋은 결과·실패 조건을 축적하는 편이 도움이 됩니다. 현재 공개 8개는 새로 작성한 예시로, 소유자의 과거 프롬프트 원문을 가져온 것이 아닙니다.
6. 근거와 확인하지 못한 점
공식 문서 확인일: 2026년 10월 11일. API의 존재와 권한 모델은 문서 근거이며, 대상 서비스 호환성과 OS 전체 앱 지원은 아직 가설입니다. 현재 환경에는 지원되는 브라우저 QA 도구가 없어 실제 브라우저 복사·모바일 화면은 검증하지 않았습니다. 배포 결과와 HTTP 검사 결과는 별도의 최종 작업 응답에서 보고합니다.
- MDN: Clipboard API
- Chrome: commands API
- Chrome: activeTab permission
- Chrome: Content scripts
- Microsoft: RegisterHotKey
- Microsoft: SendInput
- Apple: Allow accessibility apps to access your Mac
- Apple: Text replacement on iPhone
- Google: Search technical requirements
- Google: Sitemaps overview