Skip to main content
Glama

터미널에서 목록을 만들고, 미리 알림을 추가하고, 섹션으로 정리하며, 모든 Apple 기기 간에 동기화하세요.

왜 remi인가요?

  • iCloud 동기화가 포함된 섹션 — Apple 미리 알림 섹션을 지원하는 유일한 CLI입니다. 섹션을 생성하고, 미리 알림을 할당하고, 섹션 간에 이동할 수 있으며, 이 모든 것이 동기화됩니다.

  • 자연어 지원--due "next tuesday", --repeat "every 2 weeks on monday,friday"

  • 퍼지 매칭(Fuzzy matching)remi list "Groceries / Shopping List" 대신 remi list shopping을 입력하세요.

  • 에이전트 우선 — 구조화된 JSON 출력, Claude Code 플러그인, skills.sh 스킬, OpenClaw 호환

  • 빠름 — 컴파일된 Swift 헬퍼 사용, Electron 없음, GUI 없음

다른 도구와의 비교

remi

remindctl

reminders-cli

섹션

아니요

아니요

섹션 동기화 (iCloud)

해당 없음

해당 없음

반복

아니요

자연어 날짜

아니요

JSON 출력

아니요

AI 에이전트 통합

부분적

아니요

설치

brew tap mattheworiordan/tap && brew install remi

또는 npm을 통해:

npm install -g @mattheworiordan/remi
# or run without installing
npx @mattheworiordan/remi lists

빠른 시작

remi lists                                              # See all lists
remi list "Groceries"                                   # View a list (fuzzy: remi list groceries)
remi add "Groceries" "Buy milk" --section "Dairy"       # Add to a section
remi today                                              # What's due today?
remi complete "Groceries" "milk"                        # Fuzzy complete

사용법

마감 기한 확인

remi today                    # Due today
remi overdue                  # Past due
remi upcoming --days 7        # Coming up
remi search "dentist"         # Search across all lists

미리 알림 관리

remi add "Work" "Review PR" --due "next friday" --priority high
remi add "Work" "Standup" --due tomorrow --repeat daily
remi complete "Work" "standup"
remi update "Work" "Review PR" --due "in 3 days"
remi delete "Work" "Review PR" --confirm

날짜: tomorrow, next tuesday, in 3 days 또는 YYYY-MM-DD 반복: daily, weekly, monthly, every 2 weeks, every 3 months on monday,friday

섹션으로 정리

remi sections "Groceries"                                # List sections
remi create-section "Groceries" "Produce"                # Create a section
remi add "Groceries" "Bananas" --section "Produce"       # Add to a section
remi move "Groceries" "Bananas" --to-section "Dairy"     # Move between sections

섹션은 CRDT 벡터 클록을 통해 iCloud로 동기화됩니다. 작동 원리를 확인하세요.

JSON 출력

모든 명령어는 기계가 읽을 수 있는 출력을 위해 --json을 지원합니다:

remi today --json
# {"success": true, "data": [...]}

AI 에이전트 통합

remi는 AI 에이전트를 위해 설계되었습니다. MCP 서버, Claude Code 플러그인 또는 스킬로 사용하세요:

MCP 서버

{
  "mcpServers": {
    "remi": {
      "command": "remi",
      "args": ["--mcp"]
    }
  }
}

16개의 도구: remi_lists, remi_add, remi_complete, remi_move, remi_today, remi_search 등 — 모두 퍼지 매칭과 구조화된 응답을 제공합니다.

기타 통합

# Claude Code plugin
claude plugin marketplace add mattheworiordan/remi

# skills.sh
npx skills add mattheworiordan/remi

# OpenClaw
clawhub install remi

권한

처음 실행 시 macOS에서 미리 알림 접근 권한을 요청합니다(허용 클릭). 섹션 기능을 사용하려면 터미널 앱에 전체 디스크 접근 권한도 필요합니다.

remi authorize    # Guides you through both
remi doctor       # Shows what's granted

요구 사항

  • macOS 13 이상 (Ventura 이상)

  • Node.js 18 이상

  • Xcode Command Line Tools (xcode-select --install)

작동 원리

Apple이 공개 API에서 섹션을 노출하지 않았기 때문에 remi는 세 가지 계층을 사용합니다:

계층

내용

이유

EventKit

미리 알림 CRUD, 쿼리, 반복

안정적인 공개 API

ReminderKit

섹션 CRUD

비공개 프레임워크 — 동기화되는 섹션을 만드는 유일한 방법

SQLite + Token Maps

섹션 멤버십

iCloud 동기화를 위한 CRDT 벡터 클록이 포함된 직접 데이터베이스 쓰기

전체 리버스 엔지니어링 이야기에서 Apple의 문서화되지 않은 동기화 아키텍처에 대해 발견한 내용을 설명합니다.

기여

git clone https://github.com/mattheworiordan/remi.git && cd remi
npm install && npm run build:swift && npm run build
npm test                        # Unit tests
npm run test:integration        # Integration tests (needs Reminders access)

라이선스

MIT — Matthew O'Riordan

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mattheworiordan/remi'

If you have feedback or need assistance with the MCP directory API, please join our Discord server