Skip to content
4BMtolobPLPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧼 KeyClean (키클린)

KeyClean은 맥북 키보드를 청소할 때 키 입력을 일시적으로 차단해주는 가벼운 macOS용 토이 프로젝트입니다.
이 프로젝트는 Gemini CLI와 대화하며 함께 코드를 짜고 에러를 고쳐나간 협업의 결과물입니다.

🚀 주요 기능

  • 청소 모드 (Key Block): 활성화 시 모든 키보드 입력을 차단하여 청소 중 오타나 원치 않는 명령 실행을 방지합니다. (F열 및 미디어 키 포함)
  • 쉬운 토글: Left Shift + Right Shift + Enter를 동시에 눌러 모드를 즉시 켜고 끌 수 있습니다.
  • 자동 해제 (Safe Timeout): 모드 활성화 후 1분이 지나면 자동으로 차단이 해제되어 시스템을 다시 사용할 수 있습니다.

🛠 설치 및 실행 방법

Homebrew (추천)

아래 명령어를 통해 간편하게 설치할 수 있습니다:

brew install 4BMtolobPL/homebrew-tap/keyclean

직접 빌드 및 실행

  1. Rust (Cargo 패키지 매니저 포함)가 설치되어 있어야 합니다.
  2. 저장소를 클론하거나 코드를 다운로드합니다.
  3. 터미널에서 프로젝트 디렉토리로 이동합니다.
  4. 아래 명령어를 실행합니다.
    cargo run

⚠️ 중요: 권한 설정

이 프로그램은 시스템 전체의 이벤트를 감시하고 차단해야 하므로 '손쉬운 사용(Accessibility)' 권한이 필요합니다.

  1. cargo run 실행 시 권한 요청 팝업이 뜨면 시스템 설정 열기를 누릅니다.
  2. 개인정보 보호 및 보안 > 손쉬운 사용에서 사용 중인 터미널(예: Terminal, iTerm2, VS Code 등)을 허용으로 체크해 주세요.

⌨️ 사용법

  • 활성화: 왼쪽 Shift + 오른쪽 Shift + Enter를 동시에 꾹 누릅니다. 터미널에 🧹 Key Clean Mode: ENABLED 메시지가 뜹니다.
  • 비활성화: 동일한 키 조합을 다시 누르거나 1분 동안 기다립니다. 터미널에 ✅ Key Clean Mode: DISABLED 메시지가 뜹니다.

🤖 Gemini CLI와의 협업

이 프로젝트는 AI 에이전트인 Gemini CLI와 함께 개발되었습니다.

  • 코드 구현: macOS의 Core Graphics 및 Core Foundation 프레임워크를 활용한 로우레벨 이벤트 핸들링 구현.
  • 트러블슈팅: FlagsChanged 이벤트 누락으로 인한 시프트 키 인식 문제 해결 및 라이브러리 버전업에 따른 API 변경점 수정.
  • 기능 확장: 단순 차단에서 시작해 토글 로직, 타이머 기능, F-열 차단까지 점진적으로 기능을 추가했습니다.

📜 라이선스

개인적인 용도의 토이 프로젝트이므로 자유롭게 수정 및 배포가 가능합니다. (MIT License 권장)


Clean your keyboard safely! 🧼⌨️

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages