Skip to content

Repository files navigation

Cue

다른 화면에서 일하는 동안에도 Codex 작업과 앱 알림을 노치에서 바로 확인합니다.

Cue는 진행 중인 작업과 확인이 필요한 알림을
한곳에 모아 보여주는 macOS 앱입니다.

MacBook 노치 아래에 Codex 작업과 앱 알림을 보여주는 Cue

Important

Cue의 일부 기능은 공식 API 대신 각 앱이 Mac에 저장한 로컬 데이터를 읽습니다. macOS나 앱이 업데이트되면 일부 연결이 동작하지 않을 수 있습니다. 권한을 허용하기 전 개인정보 처리 방식을 확인해 주세요.

왜 만들었나요

Codex 작업을 여러 개 돌려두고 Mattermost나 다른 앱에서 일하다 보면, 작업이 끝났는지 확인하러 다시 Codex로 돌아가게 됩니다. Cue는 이런 상태를 노치에 모아, 다시 화면을 오가는 일을 줄이려고 만들었습니다.

  • 진행 중인 Codex 작업과 확인이 필요한 작업을 구분합니다.
  • Mattermost의 미확인 메시지를 대화별로 모아 보여줍니다.
  • 카카오톡, Mail, Figma처럼 직접 추가한 앱의 알림도 함께 볼 수 있습니다.
  • 항목을 누르면 가능한 경우 원래 Codex 작업이나 대화로 이동합니다.
  • 별도 계정이나 서버 없이, 지금 사용하는 Mac 안에서만 동작합니다.

소스 관리

Cue 영역을 오른쪽 클릭하면 소스 관리 화면이 열립니다. 여기서 앱을 추가하고 표시 순서를 바꿀 수 있습니다. 잠시 보지 않을 앱은 끄고, 더 이상 쓰지 않는 앱은 제거하면 됩니다.

앱 추가와 소스별 켜기 및 끄기를 제공하는 Cue 소스 관리 화면

스크린샷은 개인 데이터가 없는 Cue 데모 모드로 촬영했습니다.

어떻게 동작하나요

  1. 평소에는 노치 아래에 얇은 상태 표시만 보입니다.
    작업이나 알림이 없으면 표시도 사라집니다.

  2. 노치에 마우스를 올리면 목록이 열립니다.
    플랫폼을 누르면 각 플랫폼의 항목을 접거나 펼칠 수 있습니다.

  3. 항목을 누르면 원래 화면으로 이동합니다.
    Codex는 해당 작업으로 이동합니다. Mattermost는 원래 대화 주소를 확인할 수 있을 때 해당 대화를 열고, 일반 알림은 해당 앱을 엽니다.

  4. 플랫폼 순서는 직접 바꿀 수 있습니다.
    플랫폼을 드래그해 원하는 위치에 놓으면 됩니다. 앱 추가와 삭제는 오른쪽 클릭으로 여는 소스 관리에서 할 수 있습니다.

상태 색상

표시 의미
파란색 Codex 작업이 진행 중
빨간색 완료된 작업, 승인 요청, 미확인 메시지처럼 내가 확인할 항목이 있음
표시 없음 진행 중인 작업이나 확인할 알림이 없음

현재 연결되는 앱

Codex

Cue는 /Applications/ChatGPT.app 안에서 실행 중인 Codex 작업만 표시합니다. ChatGPT Classic, CLI 실행, 하위 에이전트 작업은 제외합니다. 항목을 누르면 해당 Codex 작업으로 바로 이동합니다.

Mattermost

macOS 알림 센터에 저장된 Mattermost 알림을 대화별로 묶어 보여줍니다. Cue를 실행한 뒤 받은 알림은 원래 대화 주소를 확인할 수 있을 때 해당 대화로 바로 이동합니다. 이 연결은 외부 서버 없이 127.0.0.1에서만 동작합니다.

그 밖의 macOS 앱

소스 관리에서 앱 추가를 누르고 설치된 앱을 선택하면 됩니다. Cue는 macOS 알림 센터에 저장된 알림 제목과 내용을 보여줍니다. 앱의 공식 API는 사용하지 않기 때문에, 앱 안에서 진행 중인 작업 상태까지 알 수는 없습니다. 알림 센터의 변경을 로컬에서 감지해 새 알림을 바로 반영합니다.

설치

  1. 최신 릴리스에서 Cue-버전-macos.zip을 받습니다.
  2. 압축을 풀고 Cue.app/Applications로 옮깁니다.
  3. 처음 한 번은 Cue.app을 Control-클릭하고 열기를 선택합니다.

필요한 환경

  • 노치가 있는 MacBook
  • macOS 14 이상
  • 상태나 알림을 확인할 ChatGPT, Mattermost 또는 다른 앱
  • Homebrew Node.js (Mattermost 알림을 원래 대화로 연결할 때만 필요)

설치 후에는 다음 항목만 연결하면 됩니다.

  1. 노치의 Cue 영역을 오른쪽 클릭한 뒤 앱 추가를 누릅니다.
  2. ChatGPT, Mattermost 또는 알림을 볼 앱을 추가합니다.
  3. 전체 디스크 접근 권한 안내가 보이면 시스템 설정 → 개인정보 보호 및 보안 → 전체 디스크 접근 권한에서 /Applications/Cue.app을 켭니다.
  4. macOS가 요청하는 경우 Cue를 한 번 다시 실행합니다.

Cue는 6시간마다 새 버전을 확인하고, 서명을 확인한 업데이트만 백그라운드로 받습니다. 받은 업데이트는 Cue를 다음에 종료하거나 다시 실행할 때 설치됩니다. 0.8.6 이하를 사용 중이라면 위 설치 과정을 한 번만 다시 진행해야 하며, 그다음부터 자동으로 업데이트됩니다.

데이터는 어떻게 처리하나요

  • 별도 Cue 계정이 필요하지 않습니다.
  • API 키를 입력하지 않습니다.
  • 분석 도구를 사용하지 않습니다.
  • 작업과 알림 데이터를 외부 서버로 보내지 않습니다.
  • 설정과 확인 기록은 현재 Mac에만 저장합니다.
  • 새 버전 확인을 위해 GitHub에만 연결합니다.

Cue가 어떤 파일을 읽고 무엇을 저장하는지는 PRIVACY.md에 정리해두었습니다.

개발

일반 빌드:

swift build

데모 데이터로 화면 확인:

swift run Cue --preview-regular-app --preview-many-platforms \
  --preview-session-overflow --preview-short-content

서명된 앱 만들기:

./Scripts/build-app.sh

업데이트 파일과 appcast 만들기(배포 관리자):

./Scripts/build-update.sh

주요 구성:

  • CueModel: 소스 설정, 상태 정리, 로컬 저장
  • LocalActivityMonitor: Codex와 macOS 알림 센터 읽기
  • NotificationDatabaseWatcher: 새 macOS 알림을 감지해 목록 갱신
  • MattermostBridgeSupervisor: Mattermost의 원래 대화로 이동하기 위한 로컬 연결
  • Sparkle: GitHub 릴리스 확인, 업데이트 검증과 설치
  • CueNotchView: 노치, 활동 목록, 소스 관리, 순서 변경
  • NotchPanelController: 노치 위치와 멀티 디스플레이 동작

팀원에게 공유하는 방법은 팀원 공유 문서에 정리해두었습니다. 업데이트를 배포하는 순서는 배포 문서에서 확인할 수 있습니다.

함께 만들기

문제가 있거나 추가하고 싶은 기능이 있다면 Issue로 남겨주세요. 코드 변경은 기여 가이드를 확인한 뒤 Pull Request로 보낼 수 있습니다. 보안과 관련된 내용은 보안 정책에 따라 비공개로 제보해 주세요.

라이선스

Cue는 MIT License로 배포합니다.

앱에 포함된 Pretendard 1.3.9는 SIL Open Font License 1.1을 따릅니다. 라이선스 원문은 Sources/Cue/Resources/Licenses/Pretendard-OFL-1.1.txt에 포함되어 있습니다. 자동 업데이트에 사용하는 Sparkle은 MIT License를 따르며, 배포 앱 안에 라이선스 원문을 함께 포함합니다.

ChatGPT, OpenAI, Mattermost, macOS와 각 앱의 이름 및 아이콘은 해당 권리자에게 속합니다. Cue는 해당 회사의 공식 제품이 아닙니다.

About

Codex 작업과 앱 알림을 MacBook 노치에서 확인하는 로컬 macOS 앱

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages