Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add borski/travel-hacking-toolkit --skill transfer-partnersgit clone --depth 1 https://github.com/borski/travel-hacking-toolkitWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/borski/travel-hacking-toolkit/transfer-partners)<a href="https://agentmods.dev/skills/borski/travel-hacking-toolkit/transfer-partners"><img src="https://agentmods.dev/badge/skills/borski/travel-hacking-toolkit/transfer-partners/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/borski/travel-hacking-toolkit/transfer-partners"><img src="https://agentmods.dev/badge/skills/borski/travel-hacking-toolkit/transfer-partners.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00047 | $0.03371 |
| Opus 5 | $0.00023 | $0.01685 |
| Sonnet 5 | $0.00009 | $0.00674 |
| Haiku 4.5 | $0.00005 | $0.00337 |
Grade A, and why
transfer-partners scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 224 lines — stays where its author put it; the contents beside it link to each section on GitHub.
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
| File | Purpose |
|---|---|
data/transfer-partners.json |
Credit card → loyalty program transfer ratios |
data/points-valuations.json |
CPP valuations per program (floor/ceiling from TPG, UP, OMAAT, VFTW) |
data/partner-awards.json |
Which 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 Source | Transfer Partner Key | Programs That Transfer In |
|---|---|---|
united |
united |
Chase UR (1:1), Bilt (1:1) |
aeroplan |
aeroplan |
Chase UR (1:1), Amex MR (1:1), Bilt (1:1), Capital One (1:1) |
flyingblue |
flying_blue |
Chase UR (1:1), Amex MR (1:1), Bilt (1:1), Capital One (1:1), Citi TY (1:1), Wells Fargo (1:1) |
american |
american |
Citi TY (1:1) |
alaska |
alaska_hawaiian |
Bilt (1:1) |
virginatlantic |
virgin_atlantic |
Chase UR (1:1), Amex MR (1:1), Bilt (1:1), Citi TY (1:1), Wells Fargo (1:1 via Virgin Red) |
delta |
delta |
Amex MR (1:1) |
emirates |
emirates |
Bilt (1:1), Amex MR (5:4), Capital One (4:3), Citi TY (5:4) |
etihad |
etihad |
Bilt (1:1), Capital One (1:1), Citi TY (1:1) |
singapore |
singapore |
Chase UR (1:1), Amex MR (1:1), Capital One (1:1), Citi TY (1:1) |
jetblue |
jetblue |
Chase UR (1:1), Citi TY (1:1), Wells Fargo (1:1), Amex MR (250:200), Capital One (5:3) |
qatar |
qatar |
Amex MR (1:1), Bilt (1:1), Capital One (1:1), Citi TY (1:1) |
turkish |
turkish |
Bilt (1:1), Capital One (1:1), Citi TY (1:1) |
eurobonus |
(no direct transfer) | N/A |
aeromexico |
aeromexico |
Amex MR (1:1.6), Capital One (1:1), Citi TY (1:1) |
smiles |
(no direct transfer) | N/A |
finnair |
finnair |
Capital One (1:1) |
lufthansa |
(no direct transfer) | N/A |
ethiopian |
(no direct transfer) | N/A |
saudia |
(no direct transfer) | N/A |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 224 lines · 47 tokens per session scan A 5ae5ef1510bd
transfer-partners is a skill published in the GitHub repository borski/travel-hacking-toolkit (654 stars, last pushed 2d ago), licensed MIT. It adds 47 tokens to every session and 3,371 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
stock-liquidity
Analyze stock liquidity using bid-ask spreads, volume profiles, order book depth, market impact estimates, and turnover ratios via Yahoo Finance data. Use this skill whenever the user asks about liquidity, trading costs, bid-ask spread, market depth, volume analysis, slippage, market impact, turnover ratio, or how…
company-valuation
Estimate the intrinsic value of a public company using DCF, relative (peer multiple) and sum-of-parts (SOTP) methods, then triangulate to an implied share price with upside/downside versus the current market price. Use this skill whenever the user asks: "what is AAPL worth", "valuation of NVDA", "fair value of TSLA"…
fintel-data
Query Fintel (fintel.io) institutional market intelligence via the REST API at https://api.fintel.io/v1 with FINTELAPIKEY (X-API-KEY header), or the official MCP server at https://mcp.fintel.io/mcp. Read-only data: short interest, borrow rate/fee and shares available to borrow, daily short volume, fails-to-deliver…
earnings-recap
Generate a post-earnings analysis for any stock using Yahoo Finance data. Use when the user wants to review what happened after earnings, understand beat/miss results, see stock reaction, or get an earnings recap. Triggers: "AAPL earnings recap", "how did TSLA earnings go", "MSFT earnings results", "did NVDA beat…
estimate-analysis
Deep-dive into analyst estimates and revision trends for any stock using Yahoo Finance data. Use when the user wants to understand analyst estimate direction, how EPS or revenue forecasts changed over time, compare estimate distributions, or analyze growth projections across periods. Triggers: "estimate analysis for…
twitter-reader
Read Twitter/X for financial research using opencli (read-only). Use this skill whenever the user wants to read their Twitter feed, search for financial tweets, view bookmarks, look up user profiles, or gather market sentiment from Twitter/X. Triggers include: "check my feed", "search Twitter for", "show my…