Agent skill
mail-travel
Find flight bookings, hotel reservations, travel itineraries, and booking confirmations from email. Use when user asks about upcoming trips, travel plans, booking references, flight details, or hotel reservations. Arguments: optional destination, airline, date range, or booking service.
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/mail-travel
Metadata
Additional technical details for this skill
- openclaw
-
{ "requires": { "bins": [ "sqlite3", "python3" ] } }
SKILL.md
Mail Travel — Bookings, Flights, and Itineraries
Search: $ARGUMENTS (default: recent and upcoming travel)
Step 1: Find travel-related emails
DB="$HOME/Library/Mail/V10/MailData/Envelope Index"
sqlite3 "$DB" "
SELECT datetime(m.date_received,'unixepoch','localtime') as dt,
s.subject, a.address as sender, a.comment as name,
mb.url, m.ROWID
FROM messages m
JOIN subjects s ON m.subject = s.ROWID
JOIN addresses a ON m.sender = a.ROWID
JOIN mailboxes mb ON m.mailbox = mb.ROWID
WHERE m.deleted = 0
AND mb.url NOT LIKE '%Spam%' AND mb.url NOT LIKE '%Trash%'
AND (
-- Travel booking senders
a.address LIKE '%agoda%'
OR a.address LIKE '%booking.com%'
OR a.address LIKE '%airbnb%'
OR a.address LIKE '%travelio%'
OR a.address LIKE '%tiket%'
OR a.address LIKE '%traveloka%'
OR a.address LIKE '%expedia%'
OR a.address LIKE '%hotels.com%'
OR a.address LIKE '%airasia%'
OR a.address LIKE '%garuda%'
OR a.address LIKE '%lionair%'
OR a.address LIKE '%batik%'
OR a.address LIKE '%citilink%'
OR a.address LIKE '%singaporeair%'
OR a.address LIKE '%united%'
OR a.address LIKE '%delta%'
OR a.address LIKE '%emirates%'
OR a.address LIKE '%gojek%'
OR a.address LIKE '%grab%'
-- By subject
OR s.subject LIKE '%flight%'
OR s.subject LIKE '%hotel%'
OR s.subject LIKE '%booking%'
OR s.subject LIKE '%reservation%'
OR s.subject LIKE '%itinerary%'
OR s.subject LIKE '%check-in%'
OR s.subject LIKE '%boarding%'
OR s.subject LIKE '%e-ticket%'
OR s.subject LIKE '%confirmation%'
OR s.subject LIKE '%your trip%'
OR s.subject LIKE '%upcoming trip%'
OR s.subject LIKE '%airport%'
)
ORDER BY m.date_received DESC
LIMIT 100;" 2>/dev/null
Step 2: Filter by destination/dates if specified
If $ARGUMENTS contains a destination or date, add LIKE filters on subject.
Step 3: Parse booking details
python3 ~/.claude/skills/_mail-shared/parser.py <ROWID1> <ROWID2> ...
From bodies extract:
- Flights: origin → destination, airline, flight number, departure date/time, arrival, class, booking reference
- Hotels: property name, check-in/check-out dates, room type, booking ID
- Rental/Apartment: property ID, address, check-in time, host contact
- Total amount paid
- Cancellation policy
- Booking reference/ID
Step 4: Build itinerary view
Sort by travel date (not email received date) to create a chronological itinerary.
Output Format
Group by trip (cluster bookings by date proximity):
Trip: [Destination] — [Date Range]
- Flight: [route] on [date] — Ref: [booking ref]
- Hotel: [name] [check-in] to [check-out] — Ref: [ID]
- Total spent: [amount]
Also note:
- Pending check-ins (upcoming within 7 days)
- Pending refunds from cancelled trips
- Baggage allowance if mentioned
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?