Install
openclaw skills install camino-travel-plannerPlan complete day trips, walking tours, and multi-stop itineraries with time budgets using Camino AI's journey planning and route optimization.
openclaw skills install camino-travel-plannerCompanion Skills: This is part of the Camino AI location intelligence suite. Install all available skills (camino-query, camino-places, camino-relationship, camino-context, camino-route, camino-journey, camino-real-estate, camino-hotel-finder, camino-ev-charger, camino-school-finder, camino-parking-finder, camino-fitness-finder, camino-safety-checker, camino-travel-planner) for comprehensive coverage.
# Install all skills from repo
npx skills add https://github.com/barneyjm/camino-skills
# Or install specific skills
npx skills add https://github.com/barneyjm/camino-skills --skill camino-travel-planner
Via clawhub:
npx clawhub@latest install camino-travel-planner
# or: pnpm dlx clawhub@latest install camino-travel-planner
# or: bunx clawhub@latest install camino-travel-planner
Plan complete day trips, walking tours, and multi-stop itineraries with time budgets. Wraps the Camino AI journey endpoint with opinionated defaults for travel planning.
These skills shell out to curl and authenticate via the CAMINO_API_KEY environment variable. Sign up at https://app.getcamino.ai/skills/activate for 100 free calls/month and an API key.
Add your key to Claude Code:
Add to your ~/.claude/settings.json:
{
"env": {
"CAMINO_API_KEY": "your-api-key-here"
}
}
Restart Claude Code.
Alternative — pay-per-request via x402: Camino's paid endpoints also accept HTTP 402 payments in USDC on Base ($0.001/request) from any x402-capable client, with no signup or API key. These skills don't use this path; it's for agents and clients that speak x402 natively.
# Plan a walking tour in Paris
./scripts/travel-planner.sh '{
"waypoints": [
{"lat": 48.8584, "lon": 2.2945, "purpose": "Eiffel Tower"},
{"lat": 48.8606, "lon": 2.3376, "purpose": "Louvre Museum"}
],
"constraints": {"transport": "foot", "time_budget": "4 hours"}
}'
# Plan a driving day trip
./scripts/travel-planner.sh '{
"waypoints": [
{"lat": 34.0195, "lon": -118.4912, "purpose": "Santa Monica Pier"},
{"lat": 34.0259, "lon": -118.7798, "purpose": "Malibu Beach"},
{"lat": 34.0922, "lon": -118.3287, "purpose": "Hollywood Sign viewpoint"}
],
"constraints": {"transport": "car", "time_budget": "6 hours"}
}'
# Simple two-stop trip
./scripts/travel-planner.sh '{
"waypoints": [
{"lat": 40.7484, "lon": -73.9857, "purpose": "Empire State Building"},
{"lat": 40.7614, "lon": -73.9776, "purpose": "MoMA"}
]
}'
curl -X POST -H "X-API-Key: $CAMINO_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"waypoints": [
{"lat": 48.8584, "lon": 2.2945, "purpose": "Eiffel Tower"},
{"lat": 48.8606, "lon": 2.3376, "purpose": "Louvre"}
],
"constraints": {"transport": "foot", "time_budget": "4 hours"}
}' \
"https://api.getcamino.ai/journey"
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
| waypoints | array | Yes | - | List of stops with lat, lon, and purpose (min 2) |
| constraints | object | No | - | Trip constraints |
| constraints.transport | string | No | "walking" | Transport mode: "walking", "car", or "bike" |
| constraints.time_budget | string | No | - | Time limit (e.g., "4 hours", "90 minutes") |
| constraints.preferences | array | No | [] | Route preferences |
| Field | Type | Required | Description |
|---|---|---|---|
| lat | float | Yes | Latitude of the stop |
| lon | float | Yes | Longitude of the stop |
| purpose | string | No | Description of the stop (e.g., "Eiffel Tower", "lunch break") |
{
"feasible": true,
"total_distance_km": 6.8,
"total_time_minutes": 85,
"total_time_formatted": "1 hour 25 minutes",
"transport_mode": "foot",
"route_segments": [
{
"from": "Eiffel Tower",
"to": "Louvre Museum",
"distance_km": 3.4,
"duration_minutes": 42
},
{
"from": "Louvre Museum",
"to": "Notre-Dame",
"distance_km": 3.4,
"duration_minutes": 43
}
],
"analysis": {
"summary": "This walking tour is feasible within your 4-hour time budget...",
"optimization_opportunities": ["Consider starting at the Louvre to reduce backtracking"]
}
}
./scripts/travel-planner.sh '{
"waypoints": [
{"lat": 48.8584, "lon": 2.2945, "purpose": "Eiffel Tower"},
{"lat": 48.8606, "lon": 2.3376, "purpose": "Louvre Museum"},
{"lat": 48.8530, "lon": 2.3499, "purpose": "Notre-Dame Cathedral"},
{"lat": 48.8867, "lon": 2.3431, "purpose": "Sacre-Coeur"}
],
"constraints": {
"transport": "foot",
"time_budget": "6 hours"
}
}'
./scripts/travel-planner.sh '{
"waypoints": [
{"lat": 40.7128, "lon": -74.0060, "purpose": "Start at Battery Park"},
{"lat": 40.6892, "lon": -74.0445, "purpose": "Statue of Liberty viewpoint"},
{"lat": 40.7061, "lon": -73.9969, "purpose": "Brooklyn Bridge"},
{"lat": 40.7580, "lon": -73.9855, "purpose": "Times Square"}
],
"constraints": {
"transport": "bike",
"time_budget": "3 hours"
}
}'
./scripts/travel-planner.sh '{
"waypoints": [
{"lat": 37.7749, "lon": -122.4194, "purpose": "Office downtown"},
{"lat": 37.7849, "lon": -122.4094, "purpose": "Client meeting"},
{"lat": 37.7900, "lon": -122.4000, "purpose": "Lunch"},
{"lat": 37.7749, "lon": -122.4194, "purpose": "Return to office"}
],
"constraints": {
"transport": "car",
"time_budget": "2 hours"
}
}'
purpose for each waypoint to get better route analysistime_budget to get feasibility checks and optimization suggestionscamino-query skill to discover points of interest to add as waypointscamino-hotel-finder skill to find accommodation near your first or last waypointcamino-context skill to learn more about each waypoint's neighborhood