Ikeraq

corsairdev/corsair

GitHub も Slack も同じ書き方で呼び、連携ごとの配線を書かずに済ませる

ライセンス条件が不明 TypeScript ★ 15,308 (今日 +150) 今日 更新
GitHub で見る corsairdev/corsair
GitHub の説明(原文)
Connect your users to their apps

どういうものか

自分のアプリや AI エージェントを、外部のサービスにつなぐための TypeScript のライブラリだ。ドキュメントによれば GitHub、Slack、Gmail など200以上のサービスに対応し、OAuth のログイン、トークンの更新、Webhook、利用回数の制限への対応を引き受ける。サービスごとに部品(プラグイン)が分かれていて、使うものだけを入れる。

README が理由として挙げるのは3点。1つは、どのサービスも同じ書き方で呼べること。つなぐ先が増えるほど増えていく「つなぎのコード」を書かずに済み、サービスごとの部品は Corsair 側が保守する。2つ目は、MCP 専用ではなく REST API の上に作られていること。そのため同じ仕組みを、エージェントにも、裏側の処理にも、利用者が自分のアカウントをつなぐ管理画面にも使える。3つ目は、オープンソースで、データが自分の手元に残ることだ。

ライブラリは自分のアプリの中で動き、利用者の認証情報は暗号化して自分のデータベースに保存する。外から届く URL が必要な部分(OAuth の戻り先、接続用のページ、操作の承認画面など)は、Hub に任せられる。Hub は通常 Corsair が運営するものを使う(自前の Hub を指定する設定項目もある)。ドキュメントによれば、Hub は利用者のトークンを保存しない。Hub を使わずに全部を自分で用意することもできる。

どのサービスも同じ書き方で呼ぶ 自分のアプリ (エージェント・管理画面) Corsair (認証・更新・Webhook) 外部サービス (GitHub・Slack・Gmail…) 利用者のトークンは、暗号化して自分のデータベースに置く
サービスごとの違いは Corsair が吸収するので、アプリの側はつなぐ先が増えても書き方が変わらない。

どんなときに使うか

自分のサービスの利用者に、各自の Slack や GitHub をつないでもらいたいとき

利用者ごとに別々のアカウントをつなぐ仕組み(マルチテナント)を、ゼロから組まずに済む。OAuth の戻り先や接続ページを自分で作りたくなければ Hub に任せられる。

エージェントに触らせるサービスが増えてきて、つなぎのコードが膨らんでいるとき

サービスが増えても呼び方は同じなので、新しい連携を足すたびに配線を書き直さなくてよい。

注意点

README は短く、仕組みの説明はドキュメント(docs.corsair.dev。リポジトリの docs/ フォルダにも同じ文書がある)側にある。 導入前にはそちらを読む必要がある。

暗号化の鍵をなくすと、保存した認証情報がすべて使えなくなる。 ドキュメントは、この鍵(KEK)を管理者パスワードと同じように扱うよう警告している。

Corsair が運営する Hub を使う場合は、そのサービスにプロジェクトを作る。 運営側のサービスに頼りたくない場合は、Hub を使わない構成や、自前の Hub を指定する設定がある。

ライセンスは Apache 2.0。

開発の様子

1.0 年
公開してからの期間。2025-10-15 が最初のコミットです
1 回
リリースの回数です
158 人
開発に参加した人数です
0 日前
最後のコミットです
384 件
未解決の Issue とプルリクエストの合計です(GitHub はこの2つを同じ数に含めます)

ほかの候補

rohitg00/ai-engineering-from-scratch
数学からエージェントまで、自分で作りながら積み上げるAI開発の教材
VectifyAI/PageIndex
長い資料を章と節の木にして、LLM に人のように該当箇所を探させる
affaan-m/ECC
計画・テスト・レビューの進め方を、頼み直さずにAIエージェントへ持たせる
X で共有 この記事がよかったら

この記事の更新日は 2026-10-02 です。 内容は公開されている README と GitHub のデータに基づいています。 数値は GitHub から取得したもの、警告は判定の基準にある条件での自動判定です。事実誤認を見つけた場合はお知らせください。