meeting-scheduler について
meeting-schedulerは、チームやフリーランス向けに会議調整を行うAIエージェント用スキルです。タイムゾーン換算、カレンダーの空き時間確認、候補提示、招待、出欠追跡に対応し、送信前に主催者の確認を求めます。
主な機能
- 01自然言語の依頼から会議情報を抽出
- 02タイムゾーン換算と空き時間の確認
- 03勤務時間や競合を考慮した候補提示
- 04確認後にカレンダー招待を送信
- 05出欠を追跡し日程変更に対応
活用シーン
- 01複数タイムゾーンのチーム会議を調整
- 02参加者の空き時間をまとめて招待を送信
- 03参加者の辞退後に代替時間を探す
- 04定例会議の設定や既存会議の変更
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ seb1n/ awesome-ai-agent-skills --skill meeting-schedulerインストール後、Claude Code で/meeting-schedulerを入力して読み込まれたか確認します。
詳細
会議スケジューラー
このスキルを使うと、AI エージェントが会議の調整を最初から最後まで行えます。自然言語による依頼を受け取ると、エージェントは参加者を特定し、タイムゾーンの違いを解消し、カレンダーの空き状況を確認して、競合のない時間帯を提案し、カレンダーの招待を送信し、出欠の返答を追跡します。Google Calendar、Microsoft Outlook、Calendly と連携し、企業やフリーランスで一般的なスケジュール調整のワークフローに対応します。
ワークフロー
-
会議の依頼を解析する ユーザーの自然言語による入力から、構造化データを抽出します。必要な参加者全員(名前、メールアドレス、チームのエイリアスで指定)、会議のトピックや議題、希望する所要時間、「来週火曜日の午後」や「スプリント終了前」などの日付や時間の制約を特定します。曖昧な表現がある場合は、処理を進める前に確認を求めます。
-
タイムゾーンを解決する 各参加者のカレンダープロフィールまたは連絡先情報から、設定されているタイムゾーンを調べます。比較を正確に行えるよう、提案するすべての時間帯を各参加者の現地時間に変換します。参加者のタイムゾーンが不明な場合は、主催者に確認を求めます。混乱を避けるため、提案する時間はすべてタイムゾーンを明記して表示します(例:「3:00 PM EST / 12:00 PM PST」)。
-
カレンダーの空き状況を確認する 適切な連携機能(Google Calendar API、Microsoft Graph API、Calendly availability endpoint)を通じて各参加者のカレンダーを確認します。指定された日付範囲の予定が入っている時間帯を収集し、空き時間帯の共通部分を算出します。各参加者の勤務時間の設定や、登録済みの集中時間・会議不可の時間帯を尊重します。会議間の移動時間を確保するため、設定可能なバッファー(デフォルトは10分)を適用します。
-
最適な時間帯を提案する スコアリングの基準を使って、空いている時間帯を順位付けします。全参加者の標準的な勤務時間内に収まる時間帯を優先し、現地時間で早朝や深夜になる参加者の数を最小限に抑え、急ぎの依頼であれば日付の早いものを優先します。参加者それぞれの現地時間を示す概要とともに、順位の高い候補を上位3つまで主催者に提示します。
-
カレンダーの招待を送信する 主催者が時間帯を確定したら、適切な API を通じてカレンダーイベントを作成します。議題、ビデオ会議リンク(Zoom、Google Meet、Teams)、関連資料を添付します。参加者全員に招待メールを送信します。カレンダー連携のない外部参加者には、
.ics添付ファイル付きのメールを個別に送信します。 -
出欠の返答を追跡し、変更に対応する 招待への返答が届いたら追跡します。承諾、仮承諾、辞退を主催者に通知します。重要な参加者が辞退した場合は、残りの空き時間から代替候補を自動で提案し、再予約の手続きを開始します。定例会議では出席状況の傾向を追跡し、継続的に予定が合わない参加者を見つけて、主催者が開催頻度を調整できるよう通知します。
使い方
参加者、トピック、おおよその所要時間、スケジュールの制約を含む自然言語の依頼を入力してください。あとはエージェントが対応します。
"Schedule a 30-minute meeting with John and Jane to discuss the Q3 report sometime next week. Prefer mornings."
定例会議の設定、日程変更、キャンセルを依頼することもできます。
"Reschedule tomorrow's design review to Thursday. Same time if possible, otherwise find a new slot."
"Set up a weekly 15-minute standup with the backend team every Monday at 9:30 AM ET starting next week."
例
例1 — タイムゾーンをまたぐ会議と空き状況の一覧
ユーザー入力:
"Schedule a 1-hour architecture review with Priya (IST), Marcus (CET), and Li (CST, China) this Thursday or Friday. Avoid early mornings for everyone."
エージェントの出力:
I checked calendars for Priya, Marcus, and Li. Here is the availability matrix:
Priya (IST) Marcus (CET) Li (CST)
Thu 10:00–11:00 UTC 3:30 PM 11:00 AM 6:00 PM
Thu 12:00–13:00 UTC 5:30 PM 1:00 PM 8:00 PM ⚠️
Fri 09:00–10:00 UTC 2:30 PM 10:00 AM 5:00 PM ✅ Best
Recommended: Friday 09:00–10:00 UTC
— Falls within working hours for all three participants.
— No conflicts detected.
Shall I send the invitation for Friday 09:00–10:00 UTC with a Google Meet link?
例2 — 競合を解決しながらの日程変更
ユーザー入力:
"The Wednesday product sync conflicts with Alice's dentist appointment. Move it to another day this week. Bob and Carol also attend."
エージェントの出力:
Current meeting: Wednesday 2:00–2:30 PM ET (Alice, Bob, Carol)
Alice is unavailable Wednesday 1:00–4:00 PM ET (personal appointment).
Bob is unavailable Thursday all day (PTO).
Carol has no additional conflicts this week.
Available alternatives:
1. Tuesday 2:00–2:30 PM ET — all three free ✅
2. Friday 10:00–10:30 AM ET — all three free
3. Friday 3:00–3:30 PM ET — all three free
Recommendation: Option 1 (Tuesday 2:00 PM ET) keeps the same time of day.
Shall I reschedule to Tuesday and notify all participants?
ベストプラクティス
- 時刻は必ずタイムゾーンラベルを付けて表示してください。 タイムゾーンを指定せずに「3:00 PM」のような時刻だけを表示してはいけません。これにより、スケジュール調整で最もよくあるミスを防げます。
- 会議の間にはバッファ時間を設けてください。 デフォルトは10分です。会議を続けて設定すると、疲労や遅刻の原因になります。カレンダーごとに主催者が設定できるようにしてください。
- 勤務時間の範囲を尊重してください。 参加者がその時間帯を空き時間として明示していない限り、午前7時や午後9時の時間枠を提案しないでください。
- 送信前に確認してください。 招待を送信する前に、提案する時間枠と出席者リストを必ず主催者に提示し、承認を得てください。自動送信は、明示的にオプトインした場合に限ります。
- 外部参加者には柔軟に対応してください。 参加者のカレンダーが連携されていない場合は、メールで空き時間を確認するか、手動でインポートできるよう
.icsファイルを添付してください。 - 定期的な会議の状況を追跡してください。 定期イベントについては、出席率を定期的に報告し、出席率がしきい値(例:60%)を下回った場合は開催頻度の変更を提案してください。
エッジケース
- 共通の空き時間が見つからない場合。 指定された期間内にカレンダーの空き時間が重ならない場合は、検索範囲を翌週まで広げ、主催者に知らせてください。または、参加者を分けて2つの短い会議にすることを提案してください。
- タイムゾーンが不明、または曖昧な場合。 参加者のプロフィールからタイムゾーンを特定できない場合は、時間枠を提案する前に主催者に確認してください。デフォルトのタイムゾーンを黙って仮定してはいけません。
- 参加者が見つからない場合。 名前をカレンダーまたはメールアドレスに紐付けられない場合は、候補を一覧表示し、主催者にどれかを特定してもらってください。
- カレンダー API のレート制限または停止。 空き時間の確認に失敗した場合は、指数バックオフで最大3回まで再試行してください。それでもサービスを利用できない場合は主催者に知らせ、後でもう一度試すか、一部の空き時間データを使って進めるかを提示してください。
- 直前のキャンセル。 会議開始の1時間以内に参加者から辞退の連絡があった場合は、直ちに主催者に通知し、続行、キャンセル、または再調整のいずれにするか確認してください。
- 終日イベントと集中時間ブロック。 明示的に「予定あり」とマークされていない限り、終日のカレンダーイベントは仮予定として扱ってください。集中時間ブロックはデフォルトで空き時間ではないものとして扱いますが、主催者が上書きできるようにしてください。