CalDAV、iCal、Google Calendarを一つの画面に集約するセルフホスト型Webカレンダー
ridafkih/keeper.sh
Google、Outlook、iCloud、Fastmail、CalDAV、ICSのカレンダー間で予定を集約・同期するオープンソースツール。MCPサーバーを内蔵。
- スター
- 1,445
- フォーク
- 76
- 未解決の Issue
- 164
- 最終コミット
- 14 時間前
これは何?
Keeper.shはGoogle Calendar、Outlook、iCloud、Fastmail、CalDAVサーバー、リモートのiCalまたはICSリンクから予定を取得し、1つ以上の同期先カレンダーに反映します。これにより、どのカレンダーでも予定のある時間を確認できます。Google、Outlook、iCloud、Fastmail、CalDAVは同期元にも同期先にもできますが、iCalとICSのリンクは同期元としてのみ利用できます。
同期エンジンはKeeper.shが作成した予定を追跡するため、同期元で予定を削除すると、次回以降の同期で同期先のコピーも削除されます。ユーザーが直接作成した予定が削除されることはありません。同期元ごとのプライバシー設定では、予定名、説明、場所を除去し、タイトルをカレンダー名や予定名のテンプレートに置き換えられます。GoogleとOutlookでは、各プロバイダーの同期トークンを使って差分更新を行います。
Keeper.shには、APIトークンで認証する/api/v1配下のREST API、AIエージェントがカレンダーを読み取って管理できるMCPサーバー、任意のカレンダーアプリから登録できる統合iCalフィードもあります。ホステッドサービスとして利用できるほか、Dockerイメージ、PostgreSQL、Redisで構成されたスタックを使ってセルフホストすることもできます。
主な機能
- 01Google Calendar、Outlook、iCloud、Fastmail、CalDAVを同期元または同期先として同期
- 02iCalおよびICSリンクから予定を取得
- 03プロバイダーの同期トークンを使ってGoogleとOutlookを差分同期
- 04同期元ごとのプライバシー設定で予定名、説明、場所を非表示
- 05カレンダーをプログラムから、またはAIエージェントから管理するためのREST APIとMCPサーバー
- 06任意のカレンダーアプリから登録できる統合iCalフィード
ユースケース
- 仕事用、個人用、ビジネス用のカレンダーを同期して、会議の重複を防ぐ
- 予定の詳細を公開せずに、あるカレンダーの予定あり・なしの時間を別のカレンダーと共有する
- MCPを通じてAIエージェントにカレンダーの読み取りや管理をさせる
- 自分のPostgreSQLとRedisを使ってカレンダー集約サービスをセルフホストする
クイックスタート
- 1
依存関係をインストールします(Bun v1.3.11+ と Docker が必要です)
bun install - 2
開発環境を起動します(PostgreSQL、Redis、Caddy、およびすべてのサービス)
bun dev - 3
ブラウザーで https://keeper.localhost を開きます(README の説明に従い、先にローカルのルート CA を信頼してください)
使う前に知っておきたいこと
- セルフホスティングでは、サーバー、ドメイン、アップグレード、バックアップを自分で管理します。
- セルフホスティングには、独自の Google および Microsoft OAuth アプリの登録が必要です。
- AGPL-3.0 はコピーレフトライセンスです。そのため、サービスとして運用する改変版は同じ条件で公開する必要があります。
収録されている特集
トピック
よくある質問
- keeper.sh とは?
- Google、Outlook、iCloud、Fastmail、CalDAV、ICSのカレンダー間で予定を集約・同期するオープンソースツール。MCPサーバーを内蔵。 Keeper.shはGoogle Calendar、Outlook、iCloud、Fastmail、CalDAVサーバー、リモートのiCalまたはICSリンクから予定を取得し、1つ以上の同期先カレンダーに反映します。これにより、どのカレンダーでも予定のある時間を確認できます。Google、Outlook、iCloud、Fastmail、CalDAVは同期元にも同期先にもできますが、iCalとICSのリンクは同期元としてのみ利用できます。
- keeper.sh は無料で使えますか?ライセンスは?
- keeper.sh は AGPL-3.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- keeper.sh は今もメンテナンスされていますか?
- 活発にメンテナンス中。keeper.sh の最終コミットは 2026年11月7日 です。
- keeper.sh は何に使えますか?
- 仕事用、個人用、ビジネス用のカレンダーを同期して、会議の重複を防ぐ 予定の詳細を公開せずに、あるカレンダーの予定あり・なしの時間を別のカレンダーと共有する MCPを通じてAIエージェントにカレンダーの読み取りや管理をさせる 自分のPostgreSQLとRedisを使ってカレンダー集約サービスをセルフホストする
- keeper.sh のインストール方法は?
- 依存関係をインストールします(Bun v1.3.11+ と Docker が必要です): bun install 開発環境を起動します(PostgreSQL、Redis、Caddy、およびすべてのサービス): bun dev ブラウザーで https://keeper.localhost を開きます(README の説明に従い、先にローカルのルート CA を信頼してください)
- keeper.sh はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/ridafkih/keeper.sh
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Google、Microsoft 365、CalDAVのカレンダーと同期し、会議室の空き状況をリアルタイムで表示するセルフホスト可能なルームディスプレイアプリ。
Google Calendar同期に対応した、Motionの代替となるオープンソースのセルフホスト型タスクスケジューリング・カレンダーアプリ。
設定したCalDAV、CardDAV、JMAPサーバーと同期できる、軽量でローカルファーストなブラウザ向けカレンダークライアント。
標準的なクライアントとカレンダー、ToDoリスト、連絡先を共有できる、小規模なPython製CalDAV・CardDAVサーバー。