Install
$ agentstack add skill-borski-travel-hacking-toolkit-plan-trip ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Plan Trip Skill
The user invoked this skill explicitly. Run a guided trip planning workflow that produces a concrete, opinionated recommendation with cents-per-point math, transfer paths, and a booking plan.
How to run this
If the user already gave details in their prompt arguments, use those. Otherwise, ask in this order, one question at a time. Don't fire all the questions at once.
- Where? Destination(s). Accept regions ("Scandinavia"), cities ("Tokyo"), or specific airports.
- When? Departure month or date range. Note flexibility: "exact dates" vs "any week in March" matters a lot for award availability.
- Who? Number of travelers, ages if children/infants. The toolkit supports infant pricing and seat configurations.
- What class? Economy / premium economy / business / first. Default to economy if unstated.
- Trip length? Number of nights at destination if applicable.
- Points or cash? Three valid answers: "best of both" (default), "points only" (treat cash as last resort), "cash only" (skip award search).
After question 6, confirm the plan back to the user in one sentence and start the workflow.
The workflow
Once you have the inputs:
- Load lessons-learned first. Non-optional. Other skills depend on it.
- Load flight-search-strategy for the canonical parallel search plan.
- Pull balances via the awardwallet skill if the user's intent is points or "best of both" AND if balances aren't already in this session's context. Skip the pull if you already know them.
- Run cash search in parallel via duffel, ignav, google-flights, and the relevant free MCPs (Skiplagged, Kiwi).
- Run award search in parallel via seats-aero across ALL programs (never filter to one program upfront — see lessons-learned).
- Cross-reference with transfer-partners and transfer-bonuses to find the cheapest currency you actually have.
- Apply points-valuations to compute cents-per-point on each award option.
- Surface anything from award-sweet-spots that matches this route.
- Check stopovers if the destination involves a connection. Multi-city trips might unlock "two destinations for the price of one" via Aeroplan, Alaska, or Flying Blue.
- Show the math in a markdown table. One row per option, ranked. Columns: program, miles cost, cash co-pay, total $ value, cpp, hold-before-transfer rule, recommendation.
- Pick a winner with one-sentence reasoning.
- Show booking next steps via booking-guidance: which program to call, hold rules, transfer timing, phone numbers if needed.
Hotels and ground transit
If the trip is more than just flights, mention these as available next steps in your closing summary (not as a question):
- Hotels via compare-hotels (FHR/THC/Edit/Booking/Trivago/Airbnb/TaW)
- Stopover side trips via stopovers + the relevant transit skill (scandinavia-transit for Norway/Sweden/Denmark, deutsche-bahn for Germany / Austria / Switzerland / Netherlands / France / Belgium)
- Atlas Obscura suggestions for unique places at the destination
- Airport route sanity check via wikipedia-airports if the user asks about an obscure carrier or regional service
Don't dump all of these at once. Lead with the flight recommendation. Mention hotels/activities as concrete follow-up actions the user can ask for next.
Output style
- Markdown tables for results
- Bold the winning option
- Always show cpp on award redemptions
- Cite the source skill for each piece of data ("via seats-aero", "via awardwallet")
- End with a "Next steps" section listing concrete follow-up commands the user can issue. Examples: "Next steps: I can check specific dates around X, search hotels at Y, look up sweet-spot redemptions you're not using." This must be a declarative statement, NOT a question. Don't write "Want me to..." or "Should I..." (the system prompt's PRE-OUTPUT GATE bans those patterns).
Don't do this
- Don't dump 12 options. Pick 3-5 and rank.
- Don't assume the user has every API key. If a key is missing, say so and tell them what's still searchable. Cash flights work without any keys at all.
- Don't transfer points speculatively. The booking-guidance skill enforces "hold before transfer" rules. Respect them.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: borski
- Source: borski/travel-hacking-toolkit
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.