Agent skill

Transfer Partners

by borski in borski/travel-hacking-toolkit

Credit card to loyalty program transfer ratios. An agent skill from borski/travel-hacking-toolkit.

MITAuto-check passedMarketing & SEO

Install Transfer Partners

skills CLI
$ npx skills add borski/travel-hacking-toolkit --skill transfer-partners -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install borski/travel-hacking-toolkit transfer-partners --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/borski/travel-hacking-toolkit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/travel-hacking-toolkit/skills/transfer-partners .claude/skills/transfer-partners && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
transfer-partners
GitHub stars
688
Token cost
~3k tokens
SKILL.md length
1,428 words
Files
1
Skills in repo
46
Repo updated
First seen
Licence
MIT

At a glance

Credit card to loyalty program transfer ratios. An agent skill from borski/travel-hacking-toolkit.

  • Works in 6 steps: Check Current Transfer Bonuses (Always) → Get Award Availability → Map Seats.aero Sources to Transfer… → …
  • Tasks that involve Referral and retention marketing
  • SKILL.md covers Data Files, When to Use, Workflow and jq Recipes, plus 3 more sections
  • Calls jq; needs PROGRAM_KEY

What it does

Transfer Partners is an agent skill from borski/travel-hacking-toolkit. Credit card to loyalty program transfer ratios. Cross-references seats.aero award prices with transfer ratios to find the cheapest path from UR, MR, TYP, Capital One, or Bilt to any mileage program.

Its SKILL.md is about 3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Marketing & SEO, covering Referral and retention marketing. The repository describes itself as: AI-powered travel hacking and search with cash, points, miles, and award flights. Drop-in skills and MCP servers for Claude, Codex, and OpenCode. The licence is MIT.

When your agent uses it

  • Tasks that involve Referral and retention marketing

Example prompts

  • “/transfer-partners”

Requirements

  • A credential in PROGRAM_KEY

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Check Current Transfer Bonuses (Always)
  2. Get Award Availability
  3. Map Seats.aero Sources to Transfer Partners
  4. Calculate Effective Cost
  5. Calculate Opportunity Cost (CPP)
  6. Present Results

What it can do on your machine

Read from SKILL.md and the folder at commit db82131. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • jq

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • PROGRAM_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Transfer Partners loads about 3k tokens when it runs. Until then it costs about 54 tokens; SKILL.md has 1,428 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~54
When it runs · the whole SKILL.md, loaded when a task matches
~3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from borski/travel-hacking-toolkit at commit db82131, republished under its MIT licence (© borski). 1,428 words, ~3,019 tokens.

Download SKILL.mdSave it as .claude/skills/transfer-partners/SKILL.md (or your agent's skills folder).
name
transfer-partners
description
Credit card to loyalty program transfer ratios. Cross-references seats.aero award prices with transfer ratios to find the cheapest path from UR, MR, TYP, Capital One, or Bilt to any mileage program.
category
loyalty
summary
Cheapest transfer path from credit card points to mileage programs.
api_key
None (local data)

Transfer Partner Optimizer

Given award flight prices (from seats.aero or manual input) and your transferable point balances, find the cheapest path to book.

No API key needed. Uses local JSON data files.

Data Files

FilePurpose
data/transfer-partners.jsonCredit card → loyalty program transfer ratios
data/points-valuations.jsonCPP valuations per program (floor/ceiling from TPG, UP, OMAAT, VFTW)
data/partner-awards.jsonWhich programs can book which airlines

When to Use

  • User has award availability (from seats.aero cached search, live search, or manual input)
  • User wants to know "which of my points should I use?"
  • User wants to compare the effective cost across their transferable currencies
  • User asks about transfer partners for a specific airline or program

Workflow

Step 0: Check Current Transfer Bonuses (Always)

Before recommending any transfer, load the transfer-bonuses skill and check data/transfer-bonuses.json for active bonuses on the relevant currency-to-program pair. A 30% bonus turns a 1:1 ratio into 1:1.3, which can flip the cheapest-currency calculation in Step 3 entirely. Bonuses also have expiration dates that affect timing decisions.

Step 1: Get Award Availability

Use seats.aero (API or web) to search for award flights. Each result includes:

  • Source (the loyalty program: "united", "aeroplan", "flyingblue", etc.)
  • Points cost per cabin (e.g., 55,000 business)
Step 2: Map Seats.aero Sources to Transfer Partners

Seats.aero source names map to transfer-partners.json keys:

Seats.aero SourceTransfer Partner KeyPrograms That Transfer In
unitedunitedChase UR (1:1), Bilt (1:1)
aeroplanaeroplanChase UR (1:1), Amex MR (1:1), Bilt (1:1), Capital One (1:1)
flyingblueflying_blueChase UR (1:1), Amex MR (1:1), Bilt (1:1), Capital One (1:1), Citi TY (1:1), Wells Fargo (1:1)
americanamericanCiti TY (1:1)
alaskaalaska_hawaiianBilt (1:1)
virginatlanticvirgin_atlanticChase UR (1:1), Amex MR (1:1), Bilt (1:1), Citi TY (1:1), Wells Fargo (1:1 via Virgin Red)
deltadeltaAmex MR (1:1)
emiratesemiratesBilt (1:1), Amex MR (5:4), Capital One (4:3), Citi TY (5:4)
etihadetihadBilt (1:1), Capital One (1:1), Citi TY (1:1)
singaporesingaporeChase UR (1:1), Amex MR (1:1), Capital One (1:1), Citi TY (1:1)
jetbluejetblueChase UR (1:1), Citi TY (1:1), Wells Fargo (1:1), Amex MR (250:200), Capital One (5:3)
qatarqatarAmex MR (1:1), Bilt (1:1), Capital One (1:1), Citi TY (1:1)
turkishturkishBilt (1:1), Capital One (1:1), Citi TY (1:1)
eurobonus(no direct transfer)N/A
aeromexicoaeromexicoAmex MR (1:1.6), Capital One (1:1), Citi TY (1:1)
smiles(no direct transfer)N/A
finnairfinnairCapital One (1:1)
lufthansa(no direct transfer)N/A
ethiopian(no direct transfer)N/A
saudia(no direct transfer)N/A

Programs with "no direct transfer" can only be booked by earning miles directly or through alliance partner bookings.

Step 3: Calculate Effective Cost

For each award option, calculate the cost in each transferable currency:

effective_cost = award_miles / transfer_ratio

Example: Aeroplan business at 55,000 miles

  • Chase UR: 55,000 / 1.0 = 55,000 UR points
  • Amex MR: 55,000 / 1.0 = 55,000 MR points
  • Capital One: 55,000 / 1.0 = 55,000 Cap One miles

Example: Emirates business at 72,500 miles

  • Bilt: 72,500 / 1.0 = 72,500 Bilt points
  • Amex MR: 72,500 / 0.8 = 90,625 MR points (worse ratio)
  • Capital One: 72,500 / 0.75 = 96,667 Cap One miles (worst ratio)
Step 4: Calculate Opportunity Cost (CPP)

Use points-valuations.json to assess what each currency is "worth":

opportunity_cost = effective_cost × point_value_cpp / 100

This tells you the "cash equivalent" you're giving up. Lower is better.

Step 5: Present Results

Always use markdown tables.

ProgramMiles NeededBest CurrencyPoints NeededCPP ValueCash Equivalent
Aeroplan55,000Chase UR55,0001.7¢$935
United55,000Chase UR55,0001.7¢$935
Alaska37,500Bilt37,5001.7¢$638
Flying Blue57,000Any 1:157,0001.7¢$969

After the table:

  • Recommendation: "Book via Alaska using Bilt points. 37,500 Bilt = $638 opportunity cost vs next best United/Aeroplan at $935."
  • Check balance: Verify the user has enough points in the recommended currency.
  • Transfer bonus? Check if any current transfer bonuses apply (Roame.travel or TPG bonus tracker).

jq Recipes

Find all currencies that transfer to a program
bash
jq -r '
  to_entries | .[] | select(.key != "_meta") |
  .key as $currency | .value.display_name as $name |
  (.value.airlines // {}) + (.value.hotels // {}) |
  to_entries[] | select(.key == "PROGRAM_KEY") |
  "\($name): \(.value.ratio):1 → \(.value.program)"
' data/transfer-partners.json

Replace PROGRAM_KEY with the key (e.g., united, aeroplan, flying_blue).

Calculate effective costs for an award
bash
# Given: 55000 miles via aeroplan
PROGRAM="aeroplan"
MILES=55000
jq -r --arg prog "$PROGRAM" --argjson miles $MILES '
  to_entries | .[] | select(.key != "_meta") |
  .key as $currency | .value.display_name as $name |
  ((.value.airlines // {}) + (.value.hotels // {}))[$prog] // null |
  select(. != null) |
  "\($name): \(($miles / .ratio) | floor) points (ratio \(.ratio):1)"
' data/transfer-partners.json
Find cheapest path for multiple award options
bash
# Given: united at 55000, aeroplan at 55000, alaska at 37500
echo '[
  {"program": "united", "miles": 55000},
  {"program": "aeroplan", "miles": 55000},
  {"program": "alaska_hawaiian", "miles": 37500}
]' | jq -r --slurpfile tp data/transfer-partners.json '
  .[] | .program as $prog | .miles as $miles |
  ($tp[0] | to_entries | .[] | select(.key != "_meta") |
    .value.display_name as $name |
    ((.value.airlines // {}) + (.value.hotels // {}))[$prog] // null |
    select(. != null) |
    {currency: $name, program: $prog, miles: $miles, points_needed: (($miles / .ratio) | floor), ratio: .ratio}
  )
' | jq -s 'sort_by(.points_needed)'

Cross-Alliance Optimization

Sometimes the cheapest path involves booking through a different program than the obvious one. Check data/partner-awards.json for cross-alliance highlights:

  • Virgin Atlantic → ANA: 52.5K business from West Coast. Cheaper than any Star Alliance program.
  • Etihad → American Airlines: Fixed chart often beats AA's dynamic pricing.
  • Flying Blue → Delta: Often cheaper than SkyMiles, plus free stopovers.
  • Alaska → Starlux: Only points booking option for Starlux.

Transfer Timing Risks

Points transfers are irreversible. Timing is the most common cause of lost awards. Transfer only after you've confirmed the exact award, and only when you're ready to ticket immediately.

Most transfers are instant, 24/7 — a handful are not

Instant transfers post within minutes, any day of the week including weekends and holidays (they run over an API, not a business-day batch). Only the slow programs below are exposed to weekend/holiday delay. Do not assume a transfer will land in time for a same-day booking unless it is on the instant list.

Show full SKILL.md (613 more words)Show less
Per-program transfer speeds
ProgramSpeedNotes
AeroplanInstantAny day, via API.
Flying BlueInstantAmex and Chase both post instantly.
United MileagePlusInstantChase, Bilt.
HyattInstantChase, Bilt.
Virgin AtlanticInstantAmex/Chase; rarely up to 48h.
BA / Iberia / Aer Lingus AviosInstantPools instantly across the Avios ecosystem. Lowest-risk transfer.
Qatar AviosInstantBalance display can lag — re-login to see it.
Emirates SkywardsInstantOccasionally 24h from Amex.
JetBlue TrueBlueInstantPoor ratios (Cap One 5:3, Amex/Citi 5:4).
Cathay Asia MilesInstant from Amex; 24h from Capital One
Etihad GuestInstant from Capital OneAmex path ended June 30, 2026.
Avianca LifeMilesInstant from Cap One/CitiAmex posts instantly but the miles lock until the next day (Colombia time) — do not use the Amex path for a same-day booking.
ANA Mileage Club~48 hours (up to 3 days)Amex is the only path. Never same-day.
Singapore KrisFlyerAmex instant; Cap One up to 48h; Chase 1-2 days; Citi up to 5 business daysTransfer only after space is confirmed.
Turkish Miles & SmilesBilt near-instant; Cap One ~24h; Citi up to 5 business daysNo Amex or Chase path.
Marriott Bonvoy~36 hours (up to a week)Slowest mainstream target. Never transfer speculatively.
Atmos Rewards (was Alaska Mileage Plan)Bilt instant; Marriott 3:1 ~2 daysNo Amex, Chase, or Capital One path.
Weekend and holiday delay applies only to the slow programs

The instant programs above are unaffected by weekends. For the slow ones — ANA, Singapore (via Chase/Citi), Turkish (via Citi), Marriott, and Atmos (via Marriott) — a Saturday, Sunday, or holiday submission can add days. If you must use one and seats are at risk, transfer before 5pm ET on the last business day before the weekend or holiday, not the night before.

New loyalty accounts

A brand-new loyalty account can have its first transfer delayed or fraud-flagged, and some programs enforce a hard waiting period: JAL blocks transfers for ~60 days after linking some partners, and Iberia Plus requires the account to be 90 days old. Open any new account well in advance — weeks, not days — and confirm the account number and name match your card profile exactly before transferring.

Hold the seat first when the program allows it

Many programs let you place an award on hold before paying, which removes the transfer-timing risk entirely. Load the award-holds skill for current per-program rules before assuming you have to transfer speculatively.

  • Holds available (hold first, then transfer): American AAdvantage (24h, free, online self-serve), Lufthansa Miles & More (5 days, phone), Flying Blue (3 days, phone), Cathay Asia Miles (up to 3 days, phone), Turkish Miles & Smiles (2 days), Virgin Atlantic (1-2 days), ANA (2 days, phone), Emirates (1 day, phone), Singapore KrisFlyer (agent discretion). AA's free online hold also works for most partner awards.
  • No holds — transfer is speculative: United, Delta, Aeroplan, Atmos (Alaska), British Airways, Iberia, Qatar, Korean, Etihad.

When no hold is available, only transfer once:

  1. You've confirmed the exact award on the airline's own booking site (not just seats.aero)
  2. You're ready to ticket immediately after the miles land
  3. ComputedLastSeen on seats.aero is fresh — a stale cache means the seat may already be gone

Notes

  • Transfer ratios rarely change, but verify against issuer websites before large transfers.
  • Transfers are irreversible. See Transfer Timing Risks above before committing.
  • Some programs run transfer bonuses (10-30% extra). Use the transfer-bonuses skill (live data, weekly auto-refresh) instead of guessing.
  • The "best" currency depends on what you have the most of AND what you value it at. A 1:1 transfer from a currency you value at 2.0 cpp costs more in opportunity than a 1:1 from one you value at 1.5 cpp.

© borski, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in plugins/travel-hacking-toolkit/skills/transfer-partners of borski/travel-hacking-toolkit.

Open the folder on GitHubat commit db82131

Compare with similar skills

Transfer Partners next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Transfer Partners compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Transfer Partners this skillborski/travel-hacking-toolkit688—~3kAutomated safety check: PassMIT
Referralscoreyhaines31/marketingskills54k2 repos~2.6kAutomated safety check: PassMIT
Referral Programfreekmurze/dotfiles1k17 repos~1.8kAutomated safety check: PassNone
Churn Preventionrongxinzy/RongxinAI1543 repos~2.6kAutomated safety check: PassMIT
100m Leadsgetagentseal/founder-playbook729—~2.3kAutomated safety check: PassMIT
Churn Preventionfreekmurze/dotfiles1k13 repos~4.4kAutomated safety check: PassNone

Similar skills

  • Referrals

    coreyhaines31/marketingskills

    When the user wants to create, optimize, or analyze a referral program, affiliate program, or word-of-mouth strategy.

    54k GitHub starsUsed in 2 repos~2.6k tokens
    Marketing & SEOAuto-check passed
  • Referral Program

    freekmurze/dotfiles

    When the user wants to create, optimize, or analyze a referral program, affiliate program, or word-of-mouth strategy.

    1k GitHub starsUsed in 17 repos~1.8k tokens
    Marketing & SEOAuto-check passed
  • Churn Prevention

    rongxinzy/RongxinAI

    Reduce voluntary and involuntary churn through cancel flow design, save offers, exit surveys, and dunning sequences.

    154 GitHub starsUsed in 3 repos~2.6k tokens
    Marketing & SEOAuto-check passed
  • 100m Leads

    getagentseal/founder-playbook

    Builds lead generation systems using Alex Hormozi's Core Four framework (warm outreach, content, cold outreach, paid ads), lead magnets, and Rule of 100.

    729 GitHub stars~2.3k tokensUpdated 2 days ago
    Marketing & SEOAuto-check passed
  • Churn Prevention

    freekmurze/dotfiles

    When the user wants to reduce churn, build cancellation flows, set up save offers, recover failed payments, or implement retention strategies.

    1k GitHub starsUsed in 13 repos~4.4k tokens
    Marketing & SEOAuto-check passed
  • Sms

    coreyhaines31/marketingskills

    When the user wants to plan, build, or optimize SMS, MMS, or WhatsApp marketing — including welcome flows, abandoned cart texts, post-purchase, win-back, promotional sends, or transactional/auth SMS.

    54k GitHub starsUsed in 1 repo~4.6k tokens
    Marketing & SEOAuto-check passed

More from borski/travel-hacking-toolkit

All 46 skills in this repo
  • Amex Travel

    borski/travel-hacking-toolkit

    Search Amex travel portal for cash prices, MR points pricing, IAP discounts, and FHR/THC hotel benefits via Patchright.

    688 GitHub stars~3.1k tokensUpdated 4 days ago
    Auto-check passed
  • Chase Travel

    borski/travel-hacking-toolkit

    Search Chase UR travel portal via Patchright for cash prices, points pricing, Points Boost offers, and Chase Edit hotel benefits.

    688 GitHub stars~2.8k tokensUpdated 4 days ago
    Auto-check passed
  • Deutsche Bahn

    borski/travel-hacking-toolkit

    Deutsche Bahn train schedules, journey planning, and departures across Germany and into neighboring countries (Austria, Switzerland, Netherlands, France, Belgium).

    688 GitHub stars~1.5k tokensUpdated 4 days ago
    Auto-check passed
  • Sutochno

    borski/travel-hacking-toolkit

    Search Sutochno.ru (СУТОЧНО.РУ), a Russian short-term apartment-rental platform where you book directly from owners and pay in rubles (Mir card / bank transfer).

    688 GitHub stars~2.1k tokensUpdated 4 days ago
    Auto-check passed
  • Ticketsatwork

    borski/travel-hacking-toolkit

    Search TicketsAtWork (EBG corporate perks) for hotels, theme park tickets, attractions, and rental cars via Patchright.

    688 GitHub stars~4.2k tokensUpdated 4 days ago
    Auto-check passed
  • Vrbo

    borski/travel-hacking-toolkit

    Search VRBO (Vrbo / Expedia Group) vacation rentals including entire homes, condos, and cabins via Patchright browser automation.

    688 GitHub stars~1.7k tokensUpdated 4 days ago
    Auto-check passed

Categories

Questions about Transfer Partners

What does Transfer Partners do?

Credit card to loyalty program transfer ratios. An agent skill from borski/travel-hacking-toolkit. Transfer Partners is an agent skill from borski/travel-hacking-toolkit. Credit card to loyalty program transfer ratios.

When should I use Transfer Partners?

Transfer Partners fits situations like: tasks that involve Referral and retention marketing.

How do I install Transfer Partners in Claude Code?

Run `npx skills add borski/travel-hacking-toolkit --skill transfer-partners -a claude-code`. Or copy the skill folder (plugins/travel-hacking-toolkit/skills/transfer-partners in borski/travel-hacking-toolkit) into .claude/skills/transfer-partners in your project. Claude Code loads it when a task matches its description.

How do I install Transfer Partners in Codex?

Run `npx skills add borski/travel-hacking-toolkit --skill transfer-partners -a codex`. Or copy the skill folder (plugins/travel-hacking-toolkit/skills/transfer-partners in borski/travel-hacking-toolkit) into .agents/skills/transfer-partners in your project. Codex loads it when a task matches its description.

Can I use Transfer Partners in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add borski/travel-hacking-toolkit --skill transfer-partners -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/transfer-partners, .gemini/skills/transfer-partners, .github/skills/transfer-partners and .opencode/skills/transfer-partners in your project.

What does Transfer Partners need to run?

Going by SKILL.md and its folder, Transfer Partners needs the command-line tools its instructions call (jq) and credentials named PROGRAM_KEY. Our summary lists: A credential in PROGRAM_KEY.

Does Transfer Partners access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Transfer Partners safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Transfer Partners use?

Transfer Partners is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Transfer Partners use?

About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Transfer Partners?

Skills that share tags, products or a category with Transfer Partners: Referrals (coreyhaines31/marketingskills, 54k stars), Referral Program (freekmurze/dotfiles, 1k stars), Churn Prevention (rongxinzy/RongxinAI, 154 stars) and 100m Leads (getagentseal/founder-playbook, 729 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Transfer Partners?

borski (a GitHub user) maintains it in borski/travel-hacking-toolkit, which has 688 GitHub stars. The repository holds 46 skills in this directory. The repository was last updated on October 5, 2026.

Source: borski/travel-hacking-toolkit on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.