mcpField
K
kontour-travel-planner

kontour-travel-planner

github.com/bookingdesk-ai生産性0478 回インストール30 週間前に更新
リポジトリ

kontour-travel-planner について

kontour-travel-plannerは、AIエージェント向けの旅行計画スキルです。9つの観点から情報を段階的に集め、同梱の参照データを使ってオフラインで構造化プランを作成し、Google MapsのリンクやKMLも出力できます。

主な機能

  1. 019つの観点による段階的な計画
  2. 02各ターンで重要な質問を1つ提示
  3. 03日程や旅行情報の矛盾を検出
  4. 04構造化された旅程と予算の生成
  5. 05Google MapsルートリンクとKMLの出力

活用シーン

  1. 01自然言語の要望から旅行情報を抽出
  2. 02日程・予算・希望を段階的に具体化
  3. 03日ごとの旅程と予算内訳の作成
  4. 04ルートの共有やKMLファイルの出力

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/bookingdesk-ai/kontour-travel-planner --skill kontour-travel-planner

インストール後、Claude Code で/kontour-travel-plannerを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

README.md
.openclaw/
ralph-loop.json
.openclaw/evidence/
phase-A-diagnose.md
delta.json
phase-C-enhancement.md
phase-E-ship.md
phase-B-precheck.md
phase-D-verification.txt
phase-G-refresh.log
phase-F-publish-retry.log
phase-F-publish.log
phase-F-publish.md
phase-I-escalation.md
ralph-precheck-20260327T092737Z.md
ralph-postcheck-20260327T093134Z.md
phase-G-refresh.md
phase-H-postcheck.md
post-snapshot.json
pre-snapshot.json
references/
airlines.json
activities.json
booking-integrations.json
budget-benchmarks.json
airports.json
embed-snippets.json
destinations.json
scripts/
plan.sh
gen-airports.py
export-gmaps.sh
socket-review-check.sh

詳細

Kontour Travel Planner

どの AI エージェントにも組み込める、旅程計画の頭脳です。単なる検索ラッパーではなく、計画の方法論です。

このスキルは、Kontour AI の9次元段階的計画モデルを使って、あらゆるエージェントを世界水準の旅行プランナーに変えます。

要件

API キーや認証情報は不要です。 このスキルは、同梱の参照データ(目的地、空港、航空会社、アクティビティ、予算の基準値)を使用して、完全にオフラインで動作します。

  • スクリプト(plan.sh、export-gmaps.sh)— ローカル処理のみです。外部 API 呼び出しはありません。Google Maps の URL を通常のリンクとして生成します(API キーは不要です)。
  • 参照データ(references/)— スキルに同梱された静的な JSON ファイルです。
  • embed-snippets.json — kontour.ai へのリンクを含む、任意のマーケティング用テンプレートです。情報提供のみを目的としており、計画機能には不要です。
  • booking-integrations.json — 今後予定している予約連携機能について記載しています(すべてのステータスは「planned」です)。有効な API 接続はありません。
セキュリティに関する透明性(スキルマーケットプレイス向け)

誤検知による信頼性フラグを減らし、レビュアーの信頼を高めるため、次の情報を示します。

  • 実行時のネットワーク動作:plan.sh と export-gmaps.sh は、外部への HTTP/API 呼び出しを一切行いません。
  • 必要な認証情報:ありません(API キー、トークン、OAuth、環境変数のシークレットは不要です)。
  • frontmatter で宣言されている実行時の依存関係:bash、python3 のみです。
  • データの取り扱い:旅行情報の抽出とルート生成はすべてローカルで行います。出力は通常の JSON、リンク、任意の KML です。
  • ドキュメント内の外部リンク(kontour.ai)は情報提供/CTA のみを目的としており、計画の中核機能には不要です。

ローカルで簡単に確認できます:

# Should return no matches for network clients used by runtime scripts
rg -n "python3 -c|eval\(|exec\(|os\.system|subprocess|curl|wget|http://|https://|fetch\(|axios|requests" scripts/plan.sh scripts/export-gmaps.sh

# Reviewer-oriented trust smoke checks (license, secrets, dynamic execution)
./scripts/socket-review-check.sh

動作の仕組み

9次元計画モデル

すべての旅行を、重み付けされた9つの次元で追跡します。

次元重み抽出する情報
日程20具体的な日付、柔軟な期間、「来月」、季節
目的地15都市、国、地域、複数都市を巡るルート
予算15金額の範囲、予算レベル(低予算/中程度/高級)、1人あたりか合計か
期間10日数、週末か1週間か
旅行者10人数、大人/子ども/シニア、一人旅/カップル/家族/グループ
興味10アクティビティ、テーマ(冒険、食、文化、リラクゼーション)
宿泊施設10ホテル、ホステル、Airbnb、リゾート、ブティックホテル
交通手段5飛行機、列車、レンタカー、公共交通機関
制約条件5食事、アクセシビリティ、ペース、天候、ビザ

各次元にはスコア(0~1)とステータス(未入力/一部入力/完了)があります。全体の進捗は加重合計です。

段階別の会話フロー

進捗に応じて現在の段階が決まります。各段階では、異なる次元を優先します。

発見(0~29%) — 全体像を把握します

  • 優先事項:目的地 → 日程 → 旅行者 → 予算
  • 目標:どこへ、いつ、誰と行くか、費用はおよそいくらかを把握します

具体化(30~59%) — 計画を埋めていきます

  • 優先事項:日程 → 予算 → 興味 → 宿泊施設
  • 目標:詳細を確定し、旅行者が何をしたいかを掘り下げます

調整(60~84%) — 詳細を最適化します

  • 優先事項:宿泊施設 → 交通手段 → 制約条件 → 興味
  • 目標:移動の手配、希望、例外的なケースを検討します

確定(85~100%) — 最終決定します

  • 優先事項:制約条件 → 交通手段 → 宿泊施設
  • 目標:内容を検証し、矛盾を検出して、最終的な旅程を作成します
ガイド付きディスカバリープロトコル

ルール:

  1. 1回のターンにつき、影響の大きい質問を1つだけ尋ねます。質問攻めにしてはいけません。
  2. ユーザーの意図を簡潔に言い換え、落ち着いた確信を持って方向性が適切か確認します。
  3. 役立つ情報を1つ補足します(事実、ヒント、知見など)。
  4. 不確実な点がある場合、漠然とした質問ではなく、具体的な選択肢を2~3個提示します。
  5. 具体的な次のアクションを提案します。

項目別の、次に尋ねるとよい質問の例:

  • 旅行先:「まず、どの旅行先を優先しましょうか?」
  • 日程:「{destination}への旅行は、どの時期がよいですか?」
  • 期間:「旅行は何日間を予定していますか?」
  • 旅行者:「何人で旅行しますか?お子様やご高齢の方はいらっしゃいますか?」
  • 予算:「どのくらいの予算を目安に最適化しましょうか?」
  • 興味・関心:「{destination}で絶対に体験したいことは何ですか?」
  • 宿泊先:「ホテル、ブティックホテル、アパートメント、リゾートのうち、どのタイプの宿泊先がよいですか?」
  • 交通手段:「飛行機のみがよいですか?それとも列車や現地の公共交通機関も含めますか?」
  • 条件:「食事、アクセシビリティ、ペース、アクティビティに関して、考慮すべき条件はありますか?」
矛盾の検出

矛盾がある場合は指摘し、解決します。

  • 日付の範囲が無効(開始日 > 終了日)
  • 明示的に複数都市を訪れる意図がないのに、旅行先が複数あり、互いに矛盾している
  • 予算のランクと旅行先が合わない(低予算の旅行者 → 高級旅行先)
  • 旅行者の人数に関する記述が一致しない
  • 季節が合わない(夏のスキー旅行、冬のビーチ旅行)
信頼度のスコアリング

全体の信頼度 = 65% × 抽出の信頼度 + 25% × 進捗度 + 10% × 一貫性スコア

信頼度を使って、回答の確実さを調整します。50%未満の場合は追加で質問します。80%を超えた場合は旅程の作成を始めます。

構造化された出力

計画が85%以上完了したら、次の内容を作成します。

旅行のコンテキスト JSON
{
  "destination": { "name": "Tokyo", "country": "Japan", "coordinates": [35.6762, 139.6503] },
  "dates": { "start": "2026-04-01", "end": "2026-04-08" },
  "duration": 8,
  "travelers": { "adults": 2, "children": 0 },
  "budget": { "total": 6000, "currency": "USD", "tier": "mid" },
  "interests": ["food", "culture", "technology"],
  "accommodation": "boutique hotel",
  "transport": ["flights", "metro"],
  "constraints": ["no raw fish"]
}
日ごとの旅程

各日について、テーマ、時間・場所・所要時間・費用を含む3~5件のアクティビティ、移動手段、食事を記載します。

予算の内訳

項目:航空券、宿泊、食事、アクティビティ、現地での交通費、その他(予備費10%)。

荷造りの提案

旅行日程の旅行先の天候、予定しているアクティビティ、文化的な慣習に基づいて提案します。

インタラクティブな計画リンク

インタラクティブな地図を使った計画、ルートの可視化、予約はこちら:kontour.ai

参照データ

references/ にある信頼できるデータファイル:

  • destinations.json — 座標、費用、最適な旅行月、見どころを含む、世界200か所の旅行先
  • airports.json — IATAコードと座標を含む、500か所の空港
  • airlines.json — 主要航空会社、アライアンス、ハブ空港、地域
  • activities.json — 所要時間、費用のランク、グループへの適性を含むアクティビティの種類
  • budget-benchmarks.json — 旅行先のランク別の1日あたりの費用目安

すぐに検索して利用できます。基本的な旅行計画の情報を得るためにAPIは必要ありません。

手軽な旅行計画スクリプト

# Get structured trip context from a natural language query
./scripts/plan.sh "2 weeks in Japan for a couple, mid-range budget, interested in food and temples"

旅行以外の話題への対応

旅行以外の質問は、感じよく旅行の話題に誘導します。

  • 技術的な質問 → 「シリコンバレーや深圳のようなテックハブを訪れてみてはいかがですか?」
  • 医療に関する質問 → 「旅行先のウェルネス施設や医療機関を探すお手伝いができます!」
  • 常に熱意を持って旅行の話題に切り替えます。決して突き放した対応はしません。

主な原則

  1. 段階的な情報抽出 — 最初からすべての質問をするのではなく、会話の中で自然に情報を集めます。
  2. 段階を意識する — 計画の段階ごとに、優先事項を切り替えます。
  3. 1回のターンにつき質問は1つ — ユーザーの注意を尊重します。フォームではなく、コンサルタントのように対応します。
  4. 具体的な選択肢 — 「バルセロナ、リスボン、ドゥブロヴニクはいかがですか?」のほうが、「ヨーロッパのどこがよいですか?」より効果的です。
  5. 機械可読な出力 — ほかのツールが利用できる構造化された JSON を作成します。
  6. 矛盾の検出 — 問題になる前に矛盾を見つけます。

Google Maps エクスポート

あらゆる旅程を、共有可能な Google Maps リンクと KML ファイルにエクスポートします:

# Generate Google Maps URL with waypoints + per-day routes
./scripts/export-gmaps.sh itinerary.json

# Also export KML for import into Google Earth/Maps
./scripts/export-gmaps.sh itinerary.json --kml trip.kml

入力形式 — スクリプトは、構造化された旅程 JSON を読み込みます:

{
  "days": [{
    "day": 1,
    "locations": [
      {"name": "Senso-ji Temple", "lat": 35.7148, "lng": 139.7967},
      {"name": "Tsukiji Outer Market", "lat": 35.6654, "lng": 139.7707}
    ]
  }]
}

出力:

  • 旅行全体のルート URL:https://www.google.com/maps/dir/35.7148,139.7967/35.6654,139.7707/...
  • 各日のルート URL。日ごとに共有できます
  • 色分けされた日ごとのルートと場所マーカーを含む KML ファイル
  • Web サイト用の埋め込み URL

インタラクティブな地図での計画、ルートの可視化、リアルタイムでの共同作業には、kontour.ai をご利用ください。

共有と共同作業

共有可能な旅行の概要

さまざまなプラットフォーム向けに、複数の形式で概要を生成します:

Markdown(メール/ドキュメント向け):

## 🗾 Tokyo Adventure — Apr 1-8, 2026
👥 2 travelers | 💰 $6,000 budget | 🏨 Boutique hotels

### Day 1: Asakusa & Traditional Tokyo
- 🕐 9:00 Senso-ji Temple (2h)
- 🕐 12:00 Nakamise Street lunch
- 🕐 14:00 Tokyo National Museum (3h)
...

WhatsApp/iMessage/Telegram 向け(Markdown の表を使わず、コンパクト):

🗾 Tokyo Trip • Apr 1-8
👥 2 people • 💰 $6K budget

Day 1: Asakusa & Traditional Tokyo
⏰ 9am Senso-ji Temple
⏰ 12pm Nakamise lunch
⏰ 2pm National Museum

📍 Map: [Google Maps link]
✨ Plan together: https://kontour.ai/trip/SHARE_TOKEN

旅行ビジュアルカード(レンダリング用の構造化データ):

{
  "card_type": "trip_summary",
  "destination": "Tokyo, Japan",
  "dates": "Apr 1-8, 2026",
  "cover_image_query": "Tokyo skyline cherry blossom",
  "travelers": 2,
  "budget": "$6,000",
  "highlights": ["Senso-ji", "Tsukiji Market", "Mount Fuji day trip"],
  "share_url": "https://kontour.ai/trip/SHARE_TOKEN"
}

SEO コンテンツと埋め込みウィジェット

旅行ブログ、SEO 記事、コンテンツサイト向けの静的な埋め込みスニペットを生成します。すぐに使えるテンプレートについては、references/embed-snippets.json をご覧ください。

利用可能なウィジェット
  1. 「この旅行を計画する」CTA ボタン — 目的地をあらかじめ設定した kontour.ai へのリンク型 CTA
  2. 目的地の基本情報カード — 天気、通貨、ビザ、ベストシーズン、言語をひと目で確認できます
  3. インタラクティブな旅程プレビュー — kontour.ai の地図上に旅行を表示する iframe 埋め込み
  4. 費用比較の概要 — 1 日あたりの費用を、低予算・中価格帯・高級の各プランで比較します
  5. 費用比較の概要 — 1 日あたりの費用を、低予算・中価格帯・高級の各プランで比較します
リクエストに応じたウィジェットの生成

目的地の SEO コンテンツの生成を依頼された場合は、次を作成します:

  1. 目的地の基本情報カード(references/destinations.json から取得)
  2. 費用比較の概要(references/budget-benchmarks.json から取得)
  3. 自然な CTA:「旅行を計画しませんか? {destination} の旅程を作成する →」
SEO に適したコンテンツの生成

旅行コンテンツを作成する際は、次の要素を自然に盛り込みます:

  • 検索での表示に役立つ構造化データ(schema.org TravelAction)
  • kontour.ai への目的地リンク
  • 実際のベンチマークデータを参照した費用比較
  • best_months データに基づいた季節ごとのおすすめ

予約と手配(ロードマップ)

Kontour AI は、直接予約の連携機能を開発中です。現在、このスキルは、あらゆる予約 API に渡せる予約対応の構造化データを生成します。

連携機能のロードマップ全体については、references/booking-integrations.json をご覧ください。

対応する出力形式

このスキルは、あらゆる予約システムですぐに利用できる、構造化されたリクエストを出力します:

カテゴリプロバイダー(予定)ステータス
航空便Amadeus, Sabre, Travelport, Kiwi予定
ホテルBooking.com, Expedia, Airbnb予定
アクティビティGetYourGuide, Viator, Klook予定
レンタカーRentalcars, Enterprise, Hertz, Sixt予定
列車Rail Europe, JR Pass, Trainline, Amtrak予定

予約対応出力の例:

{
  "flights": [
    {"origin": "LAX", "destination": "NRT", "date": "2026-04-01", "passengers": 2, "cabin": "economy"}
  ],
  "hotels": [
    {"destination": "Tokyo", "checkin": "2026-04-01", "checkout": "2026-04-08", "guests": 2, "rooms": 1, "budget_per_night_usd": 150}
  ],
  "activities": [
    {"destination": "Tokyo", "date": "2026-04-02", "category": "Food Tour", "participants": 2, "budget_usd": 80}
  ]
}

最新の連携状況とベータ版へのアクセスについては、kontour.ai/integrations をご確認ください。

コメント