Smitline について
Smitline は、AI エージェントが電話をかけ、Zoom、Microsoft Teams、Google Meet の会議に参加できるセルフホスト型サービスです。リアルタイムで会話し、文字起こしや結果を依頼元のチャットに返し、キーと記録をローカルに保存します。
主な機能
- 01SignalWire または Twilio 経由で発信
- 02Zoom、Teams、Google Meet に参加
- 03結果、文字起こし、アクション項目を返却
- 04ライブ文字起こしの確認と通話の引き継ぎ
- 05キーと通話記録をローカルに保存
活用シーン
- 01レストランに電話して席を予約
- 02サービス業者に空き状況や価格上限を確認
- 03会議に参加してエージェントにメモを返す
MCP 対応
エージェントが電話をかけたり会議に参加したりするための MCP インターフェースを提供し、結果を依頼元のチャットに返します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
docker run -i --rm ghcr.io/kaelorlabs/smitline:0.3.0ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ghcr.io/kaelorlabs/smitline:0.3.0Streamable HTTPツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
エージェントが電話をかけられるようになります。
あらゆる AI エージェントが電話をかけたり、会議に参加したりできます。Smitline はエージェントに電話番号と Zoom、Microsoft Teams、Google Meet の参加枠を用意し、相手とリアルタイムで会話して、依頼を送ったチャットに結果を報告します。
自分で実行したくない場合は、Kaelor Labs が提供するホスト版のSmitline Cloudをご利用ください。smitline.comで公開しています。
できること
頼れるアシスタントに頼むように、エージェントに依頼してください。
「ルイージのお店に電話して、7時に4人で予約して。」
「配管工に電話して、今日来られるか聞いて。150ドルを超える金額には同意しないで。」
「午後3時の Zoom に参加して、議事録を取って。」
Smitline は電話をかけ、応答した相手と自然な音声で会話し、結果をチャットに送信します。内容、必要な詳細(時間、料金、確認番号)、決定事項、対応項目、通話の全文記録、通話料金を報告します。
- 誰にでも電話できます。 SignalWire または Twilio のアカウントを使い、自分の電話番号からレストラン、オフィス、配管工、友人などに電話できます。
- 会議に参加できます。 Zoom、Microsoft Teams、Google Meet に、話しかけられると応答する参加者として参加します。
- エージェントと連携します。 Claude Code、Codex、Cursor、Claude Desktop、OpenClaw、Hermes、および MCP、CLI、REST API を利用できるあらゆるものに対応します。
- 自分のコンピューターで実行できます。 Docker コンテナ 1 つと、独自の OpenAI キーおよび電話サービスのキーで利用できます。Apache-2.0 のもとで公開されているオープンソースです。
仕組み
- エージェントに依頼します。 目標、確認したいこと、合意してもよいこと、秘密にしておくことをまとめた短いブリーフを作成します。
- Smitlineが発信します。 あなたの名前と発信の理由を伝えて通話を始め、通話中に自分があなたのAIアシスタントであることを伝えます。ブリーフの範囲を守りながら、OpenAI's GPT-Liveを使ってリアルタイムで会話します。
- 通話の様子を確認できます。 パソコンのダッシュボードにライブ文字起こしが表示され、いつでも自分のスマートフォンで通話を引き継げます。
- 結果は依頼元のチャットに戻ります。 結果、詳細、アクションアイテム、文字起こし、費用が届きます。
左:通話中の様子。ガレージが追加の160ドルの修理を提案しますが、Smitlineは承認せず、あなたに確認を求めます。右:会議後に届く内容。
## はじめにこれをエージェント(Claude Code、Codex、Cursor、OpenClaw、Hermes など)に貼り付けてください。
Set up Smitline for me from https://github.com/kaelorlabs/smitline. Follow SETUP.md in that repository. Ask me only what you need, and never ask me to paste keys into this chat.
エージェントは Docker コマンドを 1 つ実行して Smitline を起動し、キーを入力するためのセットアップページをコンピューター上に開き、音声を確認できるように電話をかけてから、自動で接続します。キーはチャットではなく、そのページに入力します。ミーティング用に Smitline が Docker にアクセスできるよう、エージェントから Docker コマンドを自分で実行するよう求められることがありますが、これは想定どおりです。
必要なもの
- Docker: Mac または Windows 用の Docker Desktop(4.34 以降、サインイン済み)、または Linux 用の Docker Engine。Docker Desktop では、最初にホストネットワークを有効にしてください:Settings > Resources > Network > Enable host networking を選択し、Apply and restart をクリックします。有効にしないと、127.0.0.1:8095 のダッシュボードが読み込まれません。
- OpenAI: GPT-Live を利用できる API キー(課金が有効になっていること)。
- 電話をかける場合: SignalWire アカウント、または残高のある Twilio アカウント。SignalWire の無料トライアルで電話をかけられるのは、SignalWire で認証した番号(最大 10 件)のみです。カードを登録して 5 ドル分のクレジットを追加すると、どの番号にも電話をかけられます。
- ミーティングの場合: 追加で必要なものはありません。Smitline はゲストのようにブラウザー経由で参加します。
- ディスク容量: ダウンロードに約 600 MB、ミーティングに初めて参加するときにさらに 1.8 GB。
準備ができていれば、セットアップには約 10 分かかります。
SignalWire を使った通話の料金は 1 分あたり約 6 セントです。内訳は電話回線が約 0.011 ドル(通話ごとに 0.006 ドルが加算)、GPT-Live が 0.05 ドルです。配管工に 2 分間のテスト通話をしたときの料金は 14 セントでした。
あとは、「+1 … に電話して…」、「まず私を相手に通話を練習して」、または 「このミーティングに参加して:<link>」 と頼むだけです。ダッシュボードは http://127.0.0.1:8095 にあります。
自分でセットアップしますか?
SETUP.md にすべての手順が記載されています。Smitline の起動は 1 つのコマンドだけです。
docker run -d --name smitline --restart unless-stopped --network host -v smitline:/data -v /var/run/docker.sock:/var/run/docker.sock ghcr.io/kaelorlabs/smitline
Docker ソケット(-v /var/run/docker.sock…)を使うと、Smitline はミーティング用コンテナーを起動できます。また、コンテナーからコンピューター上の Docker を操作できるようになるため、これは管理者に近い権限を与えることになります。電話だけを利用する場合は、この部分を省略してください。
docker run -d --name smitline --restart unless-stopped --network host -v smitline:/data ghcr.io/kaelorlabs/smitline
Windows の Git Bash では、コマンドの前に MSYS_NO_PATHCONV=1 を付けてください。その後、docker exec smitline smitline setup secrets を実行してセットアップページを開きます。
MCP ディレクトリで見つける。 Smitline は、公式 MCP Registry に io.github.kaelorlabs/smitline として、Smithery に kaelorlabs/smitline として、Glama に掲載されています。PulseMCP や GitHub の MCP レジストリなど、レジストリをミラーリングするディレクトリにも、そこから登録されます。どの掲載先からも同じセルフホスト可能なコンテナーを利用でき、キーはコンピューター上に保管されます。MCP ディレクトリを参照してください。
デフォルトで安全
- 常にAIであることを伝えます。 毎回の通話の冒頭で、誰のために、何のために電話しているのか(「こんにちは、あなたの名前に代わって、…についてお電話しています」)を伝えます。通話中にも自身があなたのAIアシスタントであることを伝え、相手に尋ねられたときは必ず正直に答えます。Smitlineは通話全体を確認し、電話を切る前にその説明を済ませます。
- 依頼の範囲を守ります。 あなたが許可した内容に限って合意し、非公開に指定した情報を共有することはありません。それ以外のことは、あなたに確認します。
- すべての通話に安全策を適用します。 緊急通報先や高額通話料金が発生する番号には発信せず、相手のタイムゾーンで午前8時から午後9時までの間に限って電話をかけます。また、発信をやめるよう求めた相手への電話を停止し、繰り返し発信する回数も制限します。
- Dockerへのアクセスは任意です。 会議ではSmitlineが専用の会議コンテナを起動する必要があるため、セットアップ時にDockerソケットをマウントします。電話はDockerなしで利用できます。
- キーと記録はあなたの手元に保管されます。 キーはお使いのコンピューター上のページに入力し、通話記録と文字起こしもそこに保存されます。音声はOpenAIと電話プロバイダーに送信されますが、Smitlineのサーバーが存在しないため、当社に送信されることはありません。
詳しくは、セキュリティとプライバシーおよび電話の安全策をご覧ください。
制限事項
- SignalWireを通じた電話は日常的に利用されています。Zoomでの会議は実環境でテスト済みです。TeamsとGoogle Meetも同じランタイムを使用しますが、実環境でのテストはまだ十分ではありません。
- 返答までに少し間があるため、人と話す場合より通話のテンポがやや遅くなります。通話音声はOpenAIに送られる途中でお使いのコンピューターを経由します。
- トライアル版の電話アカウントでは、確認済みの番号にのみ発信できます。また、Twilioの無料トライアルでは通話中の音声をやり取りできません。
- セルフホスト版のSmitlineは、お使いのコンピューターが起動している間に動作します。常時稼働するバージョンについては、Smitline Cloudをご覧ください。
- 会議では、参加前にブリーフに指示を記載します。画面の共有や読み取りは行いません。
ドキュメント
| ガイド | 内容 |
|---|---|
| 通話 | ブリーフ、結果、費用、REST API |
| 電話 | SignalWireとTwilio、安全策、録音、設定 |
| 会議 | Zoom、Teams、Meetへの参加、会議コンソール |
| エージェント | MCP、コマンドライン、SDK、クラウドエージェント向けリモートコネクター |
| MCPディレクトリ | Smitlineの掲載先と、リリースの公開方法 |
| セキュリティとプライバシー | ローカルに保管される情報、送信先、保護方法 |
| アーキテクチャ | 各要素の連携方法 |
| 開発 | チェックアウトからの実行、テスト、プロジェクト構成 |
| トラブルシューティング | よくある問題と解決方法 |
| ロードマップ | 今後の予定 |
コントリビューション
コントリビューションを歓迎します。まず、人とコーディングエージェントの両方を対象に書かれたAGENTS.mdと開発ガイドをご確認ください。セキュリティ上の問題を報告する場合は、SECURITY.mdをご覧ください。
Smitlineがお役に立った場合は、GitHubでスターを付けていただけると、ほかの人にも見つけてもらいやすくなります。
クレジットとライセンス
Kaelor LabsのLourd Arun RajとAnkit Luthraが作成しました。Apache License 2.0のもとでライセンスされています。
会議用ブラウザーはJoinly(MIT)を基盤としています。詳しくはTHIRD_PARTY.mdをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。