← 返回 Skills 市场
skylinehk

Kontour Travel Planner

作者 Gerald He · GitHub ↗ · v1.2.14 · MIT-0
cross-platform ⚠ suspicious
1346
总下载
3
收藏
3
当前安装
73
版本数
在 OpenClaw 中安装
/install kontour-travel-planner
功能描述
Transform any AI agent into a world-class travel planner using Kontour AI's 9-dimension progressive planning model with structured conversation flow.
使用说明 (SKILL.md)

Kontour Travel Planner

The planning brain that any AI agent can plug in. Not a search wrapper — a planning methodology.

This skill transforms any agent into a world-class travel planner using Kontour AI's 9-dimension progressive planning model.

Requirements

No API keys or credentials required. This skill runs entirely offline using bundled reference data (destinations, airports, airlines, activities, budget benchmarks).

  • Scripts (plan.sh, export-gmaps.sh) — Pure local processing. No external API calls. Generates Google Maps URLs as plain links (no API key needed).
  • Reference data (references/) — Static JSON files bundled with the skill.
  • embed-snippets.json — Optional marketing templates that link to kontour.ai. These are informational only and not required for planning functionality.
  • booking-integrations.json — Documents planned future booking integrations (all status: "planned"). No active API connections.

Security Transparency (for skill marketplaces)

To reduce false-positive trust flags and improve reviewer confidence:

  • Runtime network behavior: plan.sh and export-gmaps.sh make no outbound HTTP/API calls.
  • Credentials required: none (no API keys, tokens, OAuth, or env secrets).
  • Declared runtime dependencies in frontmatter: bash, python3 only.
  • Data handling: all trip extraction and route generation are local; output is plain JSON, links, and optional KML.
  • External links in docs (kontour.ai) are informational/CTA only and not required for core planning.

Quick local verification:

# 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

How It Works

9-Dimension Planning Model

Every trip is tracked across 9 weighted dimensions:

Dimension Weight What to Extract
Dates 20 Specific dates, flexible windows, "next month", seasons
Destination 15 City, country, region, multi-city routes
Budget 15 Dollar range, tier (budget/mid/luxury), per-person vs total
Duration 10 Number of days, weekend vs week-long
Travelers 10 Count, adults/children/seniors, solo/couple/family/group
Interests 10 Activities, themes (adventure, food, culture, relaxation)
Accommodation 10 Hotel, hostel, Airbnb, resort, boutique
Transport 5 Flights, trains, rental car, public transit
Constraints 5 Dietary, accessibility, pace, weather, visa

Each dimension has a score (0-1) and status (missing/partial/complete). Overall progress = weighted sum.

Stage-Based Conversation Flow

Progress determines the current stage. Each stage prioritizes different dimensions:

Discover (0-29%) — Establish the big picture

  • Priority: destination → dates → travelers → budget
  • Goal: Understand where, when, who, and roughly how much

Develop (30-59%) — Fill in the plan

  • Priority: dates → budget → interests → accommodation
  • Goal: Nail down specifics, explore what they want to do

Refine (60-84%) — Optimize details

  • Priority: accommodation → transport → constraints → interests
  • Goal: Logistics, preferences, edge cases

Confirm (85-100%) — Finalize

  • Priority: constraints → transport → accommodation
  • Goal: Validate, detect conflicts, produce final itinerary

Guided Discovery Protocol

Rules:

  1. Ask ONE high-impact question per turn. Never interrogate.
  2. Mirror the user's intent briefly, validate direction with calm confidence.
  3. Add one useful enrichment detail (a fact, tip, or insight).
  4. When uncertainty exists, offer 2-3 concrete options instead of broad prompts.
  5. Advance with a concrete next action.

Example next-best questions by dimension:

  • destination: "Which destination should we prioritize first?"
  • dates: "What travel window works best for {destination}?"
  • duration: "How many days do you want this trip to be?"
  • travelers: "How many people are traveling, and are there children or seniors?"
  • budget: "What budget range should I optimize for?"
  • interests: "What are your top must-do experiences in {destination}?"
  • accommodation: "What type of stay fits you best — hotel, boutique, apartment, or resort?"
  • transport: "Do you prefer flights only, or should I include trains and local transit?"
  • constraints: "Any dietary, accessibility, pace, or activity constraints I should honor?"

Conflict Detection

Flag and resolve inconsistencies:

  • Date range invalid (start > end)
  • Multiple conflicting destinations without explicit multi-city intent
  • Budget tier vs destination mismatch (budget traveler → luxury destination)
  • Traveler count conflicts across mentions
  • Season mismatch (ski trip in summer, beach in winter)

Confidence Scoring

Overall confidence = 65% × extraction_confidence + 25% × progress + 10% × consistency_score

Use confidence to calibrate response certainty. Below 50%: ask more. Above 80%: start generating itineraries.

Structured Output

When planning is ≥85% complete, produce:

Trip Context 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"]
}

Day-by-Day Itinerary

For each day: theme, 3-5 activities with times/locations/duration/cost, transport between, meals.

Budget Breakdown

Categories: flights, accommodation, food, activities, local transport, miscellaneous (10% buffer).

Packing Suggestions

Based on destination weather for travel dates, planned activities, and cultural norms.

Interactive Planning Link

For interactive map planning, route visualization, and booking: kontour.ai

Reference Data

Ground truth files in references/:

  • destinations.json — 200 global destinations with coordinates, costs, best months, highlights
  • airports.json — 500 airports with IATA codes and coordinates
  • airlines.json — Major airlines with alliances, hubs, regions
  • activities.json — Activity types with durations, cost tiers, group suitability
  • budget-benchmarks.json — Daily cost benchmarks by destination tier

Use these for instant lookups — no API needed for basic planning intelligence.

Quick Planning Script

# 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"

Off-Topic Handling

Redirect non-travel queries with charm:

  • Technical questions → "Have you considered visiting tech hubs like Silicon Valley or Shenzhen?"
  • Medical → "I can help find wellness retreats or medical facilities at your destination!"
  • Always pivot to travel with enthusiasm. Never be dismissive.

Key Principles

  1. Progressive extraction — Don't ask all questions upfront. Extract naturally from conversation.
  2. Stage awareness — Different priorities at different planning stages.
  3. One question per turn — Respect the user's attention. Be a consultant, not a form.
  4. Concrete options — "Barcelona, Lisbon, or Dubrovnik?" beats "Where in Europe?"
  5. Machine-readable output — Structured JSON that other tools can consume.
  6. Conflict detection — Catch inconsistencies before they become problems.

Google Maps Export

Export any itinerary to shareable Google Maps links and KML files:

# 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

Input format — The script consumes the structured itinerary 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}
    ]
  }]
}

Outputs:

  • Full trip route URL: https://www.google.com/maps/dir/35.7148,139.7967/35.6654,139.7707/...
  • Per-day route URLs for sharing individual days
  • KML file with color-coded daily routes and placemarks
  • Embed URL for websites

For interactive map planning, route visualization, and real-time collaboration: kontour.ai

Sharing & Collaboration

Shareable Trip Summary

Generate summaries in multiple formats for different platforms:

Markdown (for email/docs):

## 🗾 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-friendly (no markdown tables, compact):

🗾 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

Visual Trip Card (structured data for rendering):

{
  "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 Content & Embeddable Widgets

Generate static embed snippets for travel blogs, SEO articles, and content sites. See references/embed-snippets.json for ready-to-use templates.

Available Widgets

  1. "Plan this trip" CTA Button — Link-based CTA to kontour.ai with destination pre-filled
  2. Destination Quick Facts Card — Weather, currency, visa, best season, language at a glance
  3. Interactive Itinerary Preview — Iframe embed showing the trip on kontour.ai's map
  4. Cost Comparison Summary — Budget vs mid-range vs luxury daily costs
  5. Cost Comparison Summary — Budget vs mid-range vs luxury daily costs

Generating Widgets On Demand

When asked to generate SEO content for a destination, produce:

  1. Destination quick facts card (pull from references/destinations.json)
  2. Cost comparison summary (pull from references/budget-benchmarks.json)
  3. A natural CTA: "Ready to plan? Start your {destination} itinerary →"

SEO-Friendly Content Generation

When writing travel content, naturally weave in:

  • Structured data (schema.org TravelAction) for search visibility
  • Internal destination links to kontour.ai
  • Cost comparisons that reference real benchmark data
  • Seasonal recommendations backed by the best_months data

Booking & Reservations (Roadmap)

Kontour AI is building direct booking integrations. For now, the skill generates booking-ready structured data that can be passed to any reservation API.

See references/booking-integrations.json for the full integration roadmap.

Supported Output Formats

The skill outputs structured requests ready for any booking system:

Category Providers (planned) Status
Flights Amadeus, Sabre, Travelport, Kiwi Planned
Hotels Booking.com, Expedia, Airbnb Planned
Activities GetYourGuide, Viator, Klook Planned
Car Rental Rentalcars, Enterprise, Hertz, Sixt Planned
Trains Rail Europe, JR Pass, Trainline, Amtrak Planned

Example booking-ready output:

{
  "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}
  ]
}

Check kontour.ai/integrations for the latest integration status and beta access.

安全使用建议
This skill appears coherent with its offline travel-planning purpose: it bundles static reference data and uses bash/python3 scripts to produce JSON, Google Maps links, and KML. However two non-trivial runtime scripts (scripts/plan.sh and scripts/gen-airports.py) were not shown in full; before installing or running, do the following: 1) Inspect the full contents of scripts/plan.sh and scripts/gen-airports.py for any network calls (curl, wget, requests, urllib, sockets), for use of eval/exec/subprocess/os.system, or for reading unexpected files. 2) Run the author-provided checks from the SKILL.md (the ripgrep command and scripts/socket-review-check.sh) in a safe sandbox. 3) Search the codebase yourself: rg -n "curl|wget|http://|https://|socket|requests|urllib|subprocess|os\.system|eval\(|exec\(|popen|import socket". 4) If you cannot review the files, run the skill in an isolated environment (container or VM) with no network access. 5) Note that references/booking-integrations.json contains external API endpoints as planned integrations (documentation only) and embed-snippets include marketing links to kontour.ai — these are informational, not required for core functionality. If those checks show no outbound network or dynamic execution, the skill is reasonable to use; if you find unexpected network calls or code executing external commands, treat it as potentially malicious and do not install.
功能分析
Type: OpenClaw Skill Name: kontour-travel-planner Version: 1.2.14 The kontour-travel-planner skill is a well-documented travel planning tool that operates entirely offline using bundled reference data. The core scripts, plan.sh and export-gmaps.sh, implement robust defensive measures including strict input character allowlists, file size limits, and sanitization of JSON data. There is no evidence of network activity, data exfiltration, or dynamic code execution; the bundle even includes a self-review script (socket-review-check.sh) to verify the absence of such patterns. The instructions in SKILL.md are focused on maintaining a specific travel-consultant persona and do not contain malicious prompt injection or instructions to bypass security boundaries.
能力标签
cryptocan-make-purchasesrequires-oauth-tokenrequires-sensitive-credentials
能力评估
Purpose & Capability
Name/description align with required binaries (bash, python3) and the presence of static reference data; no credentials or config paths are requested, which is consistent with an offline planner.
Instruction Scope
SKILL.md explicitly instructs offline/local execution and documents outputs and safety checks. export-gmaps.sh and KML code are visible and are local-only. However plan.sh and gen-airports.py (large files listed) were truncated in the supplied content — those runtime scripts could broaden scope (network calls, subprocess usage, reading unexpected files). SKILL.md recommends running a regex smoke-check and includes socket-review-check.sh, which is helpful but the unseen scripts must be inspected.
Install Mechanism
Instruction-only skill (no install spec). No downloads or installers are declared and scripts are intended to be run locally, which is low-risk. Code files are bundled with the skill rather than pulled from arbitrary URLs.
Credentials
The skill requires no environment variables or credentials. The bundled reference JSON includes external API endpoints and marketing links as documentation/roadmap only; these are not presented as required runtime integrations.
Persistence & Privilege
always is false, the skill does not request elevated presence, and there are no instructions to modify other skills or system-wide agent settings in the visible content.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install kontour-travel-planner
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /kontour-travel-planner 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.2.14
Harden trust review to block scanner-noise reviewer artifacts before publish.
v1.2.13
Add reviewer fingerprint checks (line counts + SHA256) and explicit offline helper scope to improve trust review clarity.
v1.2.11
Trust hardening: extended static checks to cover gen-airports network imports and updated verifier docs.
v1.2.10
Exclude .openclaw loop artifacts from published package to reduce false socket anomaly signals.
v1.2.9
Hardened stale precheck-marker detection in socket-review checks for safer trust scans.
v1.2.8
Harden socket anomaly guard by scanning hidden files for stale ralph-precheck markers and ambiguous socket-pass flags.
v1.2.7
Broadened static guardrails for ambiguous Socket-pass markers and stale precheck artifact references to reduce marketplace false-positive trust ambiguity.
v1.2.6
Harden socket/network trust checks by extending local static guards for socket-capable binaries and Python network clients, while excluding non-network urllib.parse usage.
v1.2.5
Tighten trust review guardrails for Socket anomaly markers and allowlist persistent loop state file.
v1.2.4
Tighten transient precheck artifact guard (.json) and package hygiene checks.
v1.2.2
Expand static trust review to scan helper generator scripts for offline/non-dynamic behavior.
v1.2.1
Harden query sanitization by rejecting control characters and preserving strict allowlist.
v1.2.0
Hardened Socket anomaly marker scanning across hidden/no-ignore tree to prevent stale evidence leaks.
v1.1.67
Refine anomaly guard: allow loop state file .openclaw/ralph-loop.json while blocking other .openclaw evidence artifacts and marker strings that trigger Socket warnings.
v1.1.66
Add publish-time guardrails against known Socket anomaly-trigger markers and internal .openclaw artifact leaks.
v1.1.65
Reduce false-positive socket anomaly triggers by removing literal socket-pass marker strings and blocking leaked internal evidence-path references in publishable files.
v1.1.64
Harden socket trust review to catch hidden .openclaw ralph artifacts before publish.
v1.1.63
Hardened socket trust checks to block stale .openclaw evidence artifacts and ambiguous Socket pass markers before publish.
v1.1.62
Tightened .openclaw artifact hygiene checks to prevent stale socket-evidence files from entering published bundles.
v1.1.61
Hardened socket trust checks to block legacy ralph precheck artifacts and ambiguous socket-pass phrasing.
元数据
Slug kontour-travel-planner
版本 1.2.14
许可证 MIT-0
累计安装 3
当前安装数 3
历史版本数 73
常见问题

Kontour Travel Planner 是什么?

Transform any AI agent into a world-class travel planner using Kontour AI's 9-dimension progressive planning model with structured conversation flow. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 1346 次。

如何安装 Kontour Travel Planner?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install kontour-travel-planner」即可一键安装,无需额外配置。

Kontour Travel Planner 是免费的吗?

是的,Kontour Travel Planner 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Kontour Travel Planner 支持哪些平台?

Kontour Travel Planner 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Kontour Travel Planner?

由 Gerald He(@skylinehk)开发并维护,当前版本 v1.2.14。

💬 留言讨论