pp-airbnb
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseAirbnb — Printing Press CLI
Airbnb — Printing Press CLI
Prerequisites: Install the CLI
前提条件:安装CLI
This skill drives the binary. You must verify the CLI is installed before invoking any command from this skill. If it is missing, install it first:
airbnb-pp-cli- Install via the Printing Press installer:
bash
npx -y @mvanhorn/printing-press install airbnb --cli-only - Verify:
airbnb-pp-cli --version - Ensure (or
$GOPATH/bin) is on$HOME/go/bin.$PATH
If the install fails (no Node, offline, etc.), fall back to a direct Go install (requires Go 1.23+):
npxbash
go install github.com/mvanhorn/printing-press-library/library/travel/airbnb/cmd/airbnb-pp-cli@latestIf reports "command not found" after install, the install step did not put the binary on . Do not proceed with skill commands until verification succeeds.
--version$PATH本技能基于二进制文件运行。在调用本技能的任何命令之前,必须确认CLI已安装。如果未安装,请先执行以下步骤:
airbnb-pp-cli- 通过Printing Press安装程序安装:
bash
npx -y @mvanhorn/printing-press install airbnb --cli-only - 验证:
airbnb-pp-cli --version - 确保(或
$GOPATH/bin)已添加到$HOME/go/bin环境变量中。$PATH
如果安装失败(无Node环境、离线等情况),可改用Go直接安装(要求Go 1.23及以上版本):
npxbash
go install github.com/mvanhorn/printing-press-library/library/travel/airbnb/cmd/airbnb-pp-cli@latest如果安装后提示“command not found”,说明安装程序未将二进制文件添加到中。请完成验证后再执行技能命令。
--version$PATHWhen to Use This CLI
何时使用本CLI
Reach for this CLI when an agent or user names an Airbnb listing URL, asks about Airbnb fees or direct-booking savings, mentions 'book direct,' or wants to plan a trip across listings. The cheapest command is the headline; plan and compare extend it. The local store accumulates listings, hosts, and price history across sessions, so re-running queries gets faster and richer over time.
当代理或用户提供Airbnb房源URL、询问Airbnb费用或直订优惠、提及“直接预订”,或需要跨房源规划行程时,可使用本CLI。命令是核心功能;和是其扩展功能。本地存储会跨会话累积房源、房东和价格历史数据,因此重复运行查询会更快、结果更丰富。
cheapestplancompareWhen Not to Use This CLI
何时不使用本CLI
Do not activate this CLI for requests that require creating, updating, deleting, publishing, commenting, upvoting, inviting, ordering, sending messages, booking, purchasing, or changing remote state. This printed CLI exposes read-only commands for inspection, export, sync, and analysis.
请勿在需要创建、更新、删除、发布、评论、点赞、邀请、下单、发送消息、预订、购买或更改远程状态的请求中激活本CLI。本CLI仅提供用于查看、导出、同步和分析的只读命令。
Unique Capabilities
独特功能
These capabilities aren't available in any other tool for this API.
以下功能是同类API工具所不具备的。
Host-direct arbitrage
房东直订差价获取
-
— Given an Airbnb or VRBO listing URL, find the host's direct booking site and report the cheapest of three sources.
cheapestWhen a user names an Airbnb/VRBO listing, this is the right tool to reach for. Returns a structured comparison of OTA fees vs direct booking with actionable URLs.bashairbnb-pp-cli cheapest 'https://www.airbnb.com/rooms/37124493?check_in=2026-05-16&check_out=2026-05-19' --agent -
— Search Airbnb and VRBO in parallel for a city/dates/budget, then run cheapest on the top results, return a ranked-by-savings list.
planThe agent-friendly trip planner. One call returns ranked results across both platforms with direct-booking URLs and savings amounts.bashairbnb-pp-cli plan 'Lake Tahoe' --checkin 2026-05-16 --checkout 2026-05-19 --guests 4 --budget 1500 --agent -
— Side-by-side: OTA total (with cleaning + service + tax fees) vs direct booking total, with dollar and percent savings.
compareUse when an agent needs to justify a booking recommendation with concrete savings numbers.bashairbnb-pp-cli compare 'https://www.airbnb.com/rooms/37124493' --checkin 2026-05-16 --checkout 2026-05-19 --json -
— Reverse image search a listing's photos to find the same property on direct booking sites or alternate platforms.
find-twinWhen host extraction fails (vague host name), reverse image search is the most reliable signal.bashairbnb-pp-cli find-twin 'https://www.airbnb.com/rooms/37124493' --json
-
— 给定Airbnb或VRBO房源URL,查找房东的直订网站并报告三个渠道中的最低价。
cheapest当用户提供Airbnb/VRBO房源时,这是首选工具。返回OTA费用与直订价格的结构化对比结果及可操作的URL。bashairbnb-pp-cli cheapest 'https://www.airbnb.com/rooms/37124493?check_in=2026-05-16&check_out=2026-05-19' --agent -
— 并行搜索Airbnb和VRBO的城市/日期/预算房源,然后对热门结果执行
plan命令,返回按优惠幅度排序的列表。cheapest适合代理使用的行程规划工具。一次调用即可返回跨平台的排序结果,包含直订URL和优惠金额。bashairbnb-pp-cli plan 'Lake Tahoe' --checkin 2026-05-16 --checkout 2026-05-19 --guests 4 --budget 1500 --agent -
— 并排对比:OTA总价(含清洁费+服务费+税费)与直订总价,显示优惠金额和百分比。
compare当代理需要用具体的优惠数据证明预订建议合理性时使用。bashairbnb-pp-cli compare 'https://www.airbnb.com/rooms/37124493' --checkin 2026-05-16 --checkout 2026-05-19 --json -
— 对房源图片进行反向图片搜索,在直订网站或其他平台找到同一房源。
find-twin当房东信息提取失败(房东名称模糊)时,反向图片搜索是最可靠的方法。bashairbnb-pp-cli find-twin 'https://www.airbnb.com/rooms/37124493' --json
Cross-platform
跨平台功能
-
— Given a listing on Airbnb (or VRBO), find the same property on the other platform via geocode + amenities + photo signal.
matchCross-platform price discrimination is real; the same condo can cost 15 percent less on VRBO. This finds it.bashairbnb-pp-cli match 'https://www.airbnb.com/rooms/37124493' --json
-
— 给定Airbnb(或VRBO)的房源,通过地理编码+设施+图片信息在另一平台找到同一房源。
match跨平台价格差异真实存在:同一套公寓在VRBO上的价格可能低15%。本命令可找到这类房源。bashairbnb-pp-cli match 'https://www.airbnb.com/rooms/37124493' --json
Local state that compounds
可累积的本地状态
-
— Add saved listings to a watchlist with target prices; daily sync checks for drops; cron-friendly exit codes signal hits.
watchUse when a user is shopping a specific listing and waiting for a price drop. Schedule watch check daily; act on exit code 7.bashairbnb-pp-cli watch add 'https://www.airbnb.com/rooms/37124493' --max-price 350 --checkin 2026-05-16 --checkout 2026-05-19 -
— Given a host or property management company name, list every known listing under them across Airbnb and VRBO.
host portfolioDiscover bulk patterns: which PMCs operate in this city, which have direct sites, where to focus arbitrage.bashairbnb-pp-cli host portfolio 'Vacasa' --json --select listings.title,listings.location -
— Track price changes on Airbnb wishlists over time; report which saved listings dropped, by how much, and over what window.
wishlist diffUser saved a listing months ago and forgot. This surfaces price movement so they can act before booking.bashairbnb-pp-cli wishlist diff --since 2026-04-01 --json -
— Stable hash from photos + amenities + host + city; used by match for dedupe; exposed for power-user export workflows.
fingerprintBuild your own external joins on listings; stable across sessions.bashairbnb-pp-cli fingerprint 'https://www.airbnb.com/rooms/37124493'
-
— 将收藏的房源添加到监视列表并设置目标价格;每日同步检查价格下降情况;支持cron的退出码会提示是否触发降价。
watch当用户正在关注特定房源并等待降价时使用。每日安排监视检查,当退出码为7时表示价格已低于设定值。bashairbnb-pp-cli watch add 'https://www.airbnb.com/rooms/37124493' --max-price 350 --checkin 2026-05-16 --checkout 2026-05-19 -
— 给定房东或物业管理公司名称,列出其在Airbnb和VRBO上的所有已知房源。
host portfolio发现批量模式:哪些物业管理公司在该城市运营,哪些有直订网站,以及套利重点方向。bashairbnb-pp-cli host portfolio 'Vacasa' --json --select listings.title,listings.location -
— 跟踪Airbnb心愿单的价格变化;报告收藏房源的降价幅度和时间窗口。
wishlist diff用户数月前收藏了房源但已遗忘。本命令可显示价格变动,方便用户在预订前采取行动。bashairbnb-pp-cli wishlist diff --since 2026-04-01 --json -
— 基于图片+设施+房东+城市生成的稳定哈希值;用于
fingerprint命令去重;为高级用户导出工作流提供支持。match可构建自定义的房源外部关联;跨会话保持稳定。bashairbnb-pp-cli fingerprint 'https://www.airbnb.com/rooms/37124493'
Discovery Signals
发现信号
This CLI was generated with browser-observed traffic context.
- Capture coverage: 66 API entries from 299 total network entries
- Protocols: rpc_envelope (80% confidence), rest_json (75% confidence)
- Auth signals: api_key — headers: X-Airbnb-API-Key, X-Goog-Api-Key
- Generation hints: has_rpc_envelope, weak_schema_confidence
- Candidate command ideas: create_GetViewportInfo — Derived from observed POST /$rpc/google.internal.maps.mapsjs.v1.MapsJsInternalService/GetViewportInfo traffic.; create_StaysPdpSections — Derived from observed POST /api/v3/StaysPdpSections/{hash} traffic.; create_get_data_layer_variables — Derived from observed POST /api/v2/get-data-layer-variables traffic.; create_js — Derived from observed POST /js/ traffic.; create_marketing_event_tracking — Derived from observed POST /api/v2/marketing_event_tracking traffic.; create_messages — Derived from observed POST /tracking/jitney/logging/messages traffic.; create_realtimeconversion — Derived from observed POST /track/realtimeconversion traffic.; get_GetConsentFlagsQuery — Derived from observed GET /api/v3/GetConsentFlagsQuery/{hash} traffic.
- Caveats: empty_payload: API-looking request returned an empty or null payload; schema confidence is weak.; empty_payload: API-looking request returned an empty or null payload; schema confidence is weak.; empty_payload: API-looking request returned an empty or null payload; schema confidence is weak.; empty_payload: API-looking request returned an empty or null payload; schema confidence is weak.; empty_payload: API-looking request returned an empty or null payload; schema confidence is weak.; empty_payload: API-looking request returned an empty or null payload; schema confidence is weak.; empty_payload: API-looking request returned an empty or null payload; schema confidence is weak.; empty_payload: API-looking request returned an empty or null payload; schema confidence is weak.; empty_payload: API-looking request returned an empty or null payload; schema confidence is weak.; empty_payload: API-looking request returned an empty or null payload; schema confidence is weak.
本CLI基于浏览器观测到的流量上下文生成。
- 捕获覆盖范围:299条网络请求中的66条API请求
- 协议:rpc_envelope(80%置信度)、rest_json(75%置信度)
- 认证信号:api_key — 请求头:X-Airbnb-API-Key、X-Goog-Api-Key
- 生成提示:has_rpc_envelope、weak_schema_confidence
- 候选命令思路:create_GetViewportInfo — 基于观测到的POST /$rpc/google.internal.maps.mapsjs.v1.MapsJsInternalService/GetViewportInfo流量生成;create_StaysPdpSections — 基于观测到的POST /api/v3/StaysPdpSections/{hash}流量生成;create_get_data_layer_variables — 基于观测到的POST /api/v2/get-data-layer-variables流量生成;create_js — 基于观测到的POST /js/流量生成;create_marketing_event_tracking — 基于观测到的POST /api/v2/marketing_event_tracking流量生成;create_messages — 基于观测到的POST /tracking/jitney/logging/messages流量生成;create_realtimeconversion — 基于观测到的POST /track/realtimeconversion流量生成;get_GetConsentFlagsQuery — 基于观测到的GET /api/v3/GetConsentFlagsQuery/{hash}流量生成。
- 注意事项:empty_payload:类API请求返回空或null负载;schema置信度较低;(重复多次)
Command Reference
命令参考
airbnb_listing — Airbnb listings (search and detail) via SSR HTML scrape (openbnb pattern, no auth required).
- — Get full Airbnb listing detail (amenities, house rules, location, highlights, description, policies, host) via SSR...
airbnb-pp-cli airbnb_listing get - — Search Airbnb listings by location, dates, and guest count via the public SSR HTML page (openbnb pattern). Walks...
airbnb-pp-cli airbnb_listing search
airbnb_wishlist — Airbnb wishlists (read user's saved listings; requires auth login --chrome).
- — Get items in a specific wishlist by listing IDs.
airbnb-pp-cli airbnb_wishlist items - — List the user's wishlists via Airbnb's GraphQL persisted query.
airbnb-pp-cli airbnb_wishlist list
host — Host identity extraction (the linchpin of host-direct arbitrage).
- — Extract the host's brand or display name from a listing URL across both platforms. Uses propertyManagement.name...
airbnb-pp-cli host extract - — List every known listing under one host or PMC across Airbnb and VRBO from the local store.
airbnb-pp-cli host portfolio
vrbo_listing — VRBO listings (search and detail) via /graphql with Akamai warmup pattern.
- — Get full VRBO property detail via the propertyDetail GraphQL operation (operation name discovered at runtime). Falls...
airbnb-pp-cli vrbo_listing get - — Search VRBO properties via the propertySearch GraphQL operation. Uses Akamai warmup (GET / first, wait 1.5s, then POST).
airbnb-pp-cli vrbo_listing search
airbnb_listing — 通过SSR HTML抓取获取Airbnb房源(搜索和详情)(openbnb模式,无需认证)。
- — 通过SSR获取Airbnb房源的完整详情(设施、房屋规则、位置、亮点、描述、政策、房东)...
airbnb-pp-cli airbnb_listing get - — 通过公开SSR HTML页面(openbnb模式)按位置、日期和客人数搜索Airbnb房源...
airbnb-pp-cli airbnb_listing search
airbnb_wishlist — Airbnb心愿单(读取用户收藏的房源;需要通过--chrome登录认证)。
- — 通过房源ID获取特定心愿单中的项目。
airbnb-pp-cli airbnb_wishlist items - — 通过Airbnb的GraphQL持久化查询列出用户的心愿单。
airbnb-pp-cli airbnb_wishlist list
host — 房东身份提取(房东直订差价获取的关键)。
- — 跨平台从房源URL中提取房东品牌或显示名称。使用propertyManagement.name...
airbnb-pp-cli host extract - — 从本地存储中列出同一房东或物业管理公司在Airbnb和VRBO上的所有已知房源。
airbnb-pp-cli host portfolio
vrbo_listing — 通过/graphql和Akamai预热模式获取VRBO房源(搜索和详情)。
- — 通过propertyDetail GraphQL操作获取VRBO房源的完整详情(操作名称在运行时发现)...
airbnb-pp-cli vrbo_listing get - — 通过propertySearch GraphQL操作搜索VRBO房源。使用Akamai预热(先GET /,等待1.5秒,再POST)。
airbnb-pp-cli vrbo_listing search
Freshness Contract
新鲜度约定
This printed CLI owns bounded freshness only for registered store-backed read command paths. In mode, those paths check and may run a bounded refresh before reading local data. never refreshes. reads the API and does not mutate the local store. Set to skip the freshness hook without changing source selection.
--data-source autosync_state--data-source local--data-source liveAIRBNB_PP_NO_AUTO_REFRESH=1Covered paths:
airbnb-pp-cli airbnb_wishlistairbnb-pp-cli airbnb_wishlist itemsairbnb-pp-cli airbnb_wishlist list
When JSON output uses the generated provenance envelope, freshness metadata appears at . Treat it as current-cache freshness for the covered command path, not a guarantee of complete historical backfill or API-specific enrichment.
meta.freshness本CLI仅对已注册的基于存储的只读命令路径提供有限的新鲜度保证。在模式下,这些路径会检查,并可能在读取本地数据前执行有限刷新。模式从不刷新。模式读取API且不修改本地存储。设置可跳过新鲜度钩子,无需更改数据源选择。
--data-source autosync_state--data-source local--data-source liveAIRBNB_PP_NO_AUTO_REFRESH=1覆盖的路径:
airbnb-pp-cli airbnb_wishlistairbnb-pp-cli airbnb_wishlist itemsairbnb-pp-cli airbnb_wishlist list
当JSON输出使用生成的来源信封时,新鲜度元数据会显示在中。将其视为所覆盖命令路径的当前缓存新鲜度,而非完整历史回填或API特定增强的保证。
meta.freshnessFinding the right command
查找合适的命令
When you know what you want to do but not which command does it, ask the CLI directly:
bash
airbnb-pp-cli which "<capability in your own words>"which02--help当你知道要做什么但不知道用哪个命令时,可直接询问CLI:
bash
airbnb-pp-cli which "<用你自己的语言描述功能>"which02--helpRecipes
使用示例
Find the cheapest way to book a saved Airbnb listing
查找预订收藏Airbnb房源的最便宜方式
bash
airbnb-pp-cli cheapest 'https://www.airbnb.com/rooms/37124493' --checkin 2026-05-16 --checkout 2026-05-19 --json --select savings,direct.url,direct.total,airbnb.totalReturns just the savings and price comparison fields, not the full host-extraction trace.
bash
airbnb-pp-cli cheapest 'https://www.airbnb.com/rooms/37124493' --checkin 2026-05-16 --checkout 2026-05-19 --json --select savings,direct.url,direct.total,airbnb.total仅返回优惠金额和价格对比字段,不包含完整的房东提取跟踪信息。
Plan a 4-guest Tahoe trip across both platforms
规划适合4人的太浩湖跨平台行程
bash
airbnb-pp-cli plan 'Lake Tahoe' --checkin 2026-05-16 --checkout 2026-05-19 --guests 4 --budget 1500 --agentFans out across Airbnb + VRBO + direct discovery; ranks by total savings.
bash
airbnb-pp-cli plan 'Lake Tahoe' --checkin 2026-05-16 --checkout 2026-05-19 --guests 4 --budget 1500 --agent在Airbnb + VRBO + 直订渠道中搜索,按总优惠幅度排序。
Watch for price drops on saved listings
监视收藏房源的价格下降情况
bash
airbnb-pp-cli watch add 'https://www.airbnb.com/rooms/37124493' --max-price 350 && airbnb-pp-cli watch checkAdd to watchlist, then check with cron — exits 7 when any drop is under threshold.
bash
airbnb-pp-cli watch add 'https://www.airbnb.com/rooms/37124493' --max-price 350 && airbnb-pp-cli watch check添加到监视列表,然后通过cron定期检查——当价格低于阈值时退出码为7。
Find a Vacasa property in Austin and book direct
在奥斯汀找到Vacasa的房源并直接预订
bash
airbnb-pp-cli host portfolio 'Vacasa' --city Austin --agent --select listings.title,listings.direct_urlBulk discovery of one PMC's portfolio with direct URLs already resolved.
bash
airbnb-pp-cli host portfolio 'Vacasa' --city Austin --agent --select listings.title,listings.direct_url批量发现某物业管理公司的房源组合,且已解析直订URL。
Compare deeply nested response
对比深层嵌套响应
bash
airbnb-pp-cli airbnb get 37124493 --agent --select listing.title,listing.coordinate.latitude,listing.coordinate.longitude,pricingQuote.structuredStayDisplayPrice.primaryLine.price,pricingQuote.structuredStayDisplayPrice.secondaryLine.priceUse --select with dotted paths to narrow Airbnb's deeply nested SSR Apollo cache to just the high-gravity fields.
bash
airbnb-pp-cli airbnb get 37124493 --agent --select listing.title,listing.coordinate.latitude,listing.coordinate.longitude,pricingQuote.structuredStayDisplayPrice.primaryLine.price,pricingQuote.structuredStayDisplayPrice.secondaryLine.price使用--select和点路径将Airbnb深层嵌套的SSR Apollo缓存缩小到关键字段。
Auth Setup
认证设置
Public search and listing detail need no auth. Authenticated features (Airbnb wishlists, trip history) use cookie import via auth login --chrome. The web-search backend is pluggable: Parallel.ai (paid, best), DuckDuckGo HTML (free default), Brave Search API (free tier), or Tavily (free tier).
Run to verify setup.
airbnb-pp-cli doctor公开搜索和房源详情无需认证。需认证的功能(Airbnb心愿单、行程历史)通过导入cookie实现。网络搜索后端支持插件:Parallel.ai(付费,最佳)、DuckDuckGo HTML(免费默认)、Brave Search API(免费 tier)或Tavily(免费 tier)。
auth login --chrome运行验证设置。
airbnb-pp-cli doctorAgent Mode
代理模式
Add to any command. Expands to: .
--agent--json --compact --no-input --no-color --yes-
Pipeable — JSON on stdout, errors on stderr
-
Filterable —keeps a subset of fields. Dotted paths descend into nested structures; arrays traverse element-wise. Critical for keeping context small on verbose APIs:
--selectbashairbnb-pp-cli airbnb_listing get --agent --select id,name,status -
Previewable —shows the request without sending
--dry-run -
Offline-friendly — sync/search commands can use the local SQLite store when available
-
Non-interactive — never prompts, every input is a flag
-
Read-only — do not use this CLI for create, update, delete, publish, comment, upvote, invite, order, send, or other mutating requests
在任何命令后添加。等效于:。
--agent--json --compact --no-input --no-color --yes-
可管道化 — stdout输出JSON,stderr输出错误信息
-
可过滤 —保留字段子集。点路径可深入嵌套结构;数组可遍历元素。对于冗长的API,这是缩小上下文的关键:
--selectbashairbnb-pp-cli airbnb_listing get --agent --select id,name,status -
可预览 —显示请求但不发送
--dry-run -
离线友好 — 同步/搜索命令可在可用时使用本地SQLite存储
-
非交互式 — 从不提示,所有输入均为标志位
-
只读 — 请勿使用本CLI执行创建、更新、删除、发布、评论、点赞、邀请、下单、发送或其他修改状态的请求
Response envelope
响应信封
Commands that read from the local store or the API wrap output in a provenance envelope:
json
{
"meta": {"source": "live" | "local", "synced_at": "...", "reason": "..."},
"results": <data>
}Parse for data and to know whether it's live or local. A human-readable summary is printed to stderr only when stdout is a terminal — piped/agent consumers get pure JSON on stdout.
.results.meta.sourceN results (live)从本地存储或API读取数据的命令会将输出包裹在来源信封中:
json
{
"meta": {"source": "live" | "local", "synced_at": "...", "reason": "..."},
"results": <data>
}解析获取数据,表示数据来自实时API还是本地存储。当stdout为终端时,仅会向stderr打印人类可读的摘要;管道/代理消费者仅会在stdout获取纯JSON。
.results.meta.sourceN results (live)Agent Feedback
代理反馈
When you (or the agent) notice something off about this CLI, record it:
airbnb-pp-cli feedback "the --since flag is inclusive but docs say exclusive"
airbnb-pp-cli feedback --stdin < notes.txt
airbnb-pp-cli feedback list --json --limit 10Entries are stored locally at . They are never POSTed unless is set AND either is passed or . Default behavior is local-only.
~/.airbnb-pp-cli/feedback.jsonlAIRBNB_PP_FEEDBACK_ENDPOINT--sendAIRBNB_PP_FEEDBACK_AUTO_SEND=trueWrite what surprised you, not a bug report. Short, specific, one line: that is the part that compounds.
当你(或代理)发现本CLI存在问题时,可记录反馈:
airbnb-pp-cli feedback "the --since flag is inclusive but docs say exclusive"
airbnb-pp-cli feedback --stdin < notes.txt
airbnb-pp-cli feedback list --json --limit 10反馈条目存储在本地中。仅当设置了且传递了或设置了时,才会POST反馈。默认行为仅存储在本地。
~/.airbnb-pp-cli/feedback.jsonlAIRBNB_PP_FEEDBACK_ENDPOINT--sendAIRBNB_PP_FEEDBACK_AUTO_SEND=true请写下让你感到意外的内容,而非bug报告。简短、具体、一行内容:这才是有价值的反馈。
Output Delivery
输出交付
Every command accepts . The output goes to the named sink in addition to (or instead of) stdout, so agents can route command results without hand-piping. Three sinks are supported:
--deliver <sink>| Sink | Effect |
|---|---|
| Default; write to stdout only |
| Atomically write output to |
| POST the output body to the URL ( |
Unknown schemes are refused with a structured error naming the supported set. Webhook failures return non-zero and log the URL + HTTP status on stderr.
每个命令都支持。输出会发送到指定的sink,同时(或代替)输出到stdout,以便代理无需手动管道即可路由命令结果。支持三种sink:
--deliver <sink>| Sink | 效果 |
|---|---|
| 默认;仅输出到stdout |
| 原子性地将输出写入 |
| 将输出体POST到指定URL( |
未知的协议会被拒绝,并返回包含支持协议集合的结构化错误。Webhook失败会返回非零退出码,并在stderr记录URL和HTTP状态码。
Named Profiles
命名配置文件
A profile is a saved set of flag values, reused across invocations. Use it when a scheduled agent calls the same command every run with the same configuration - HeyGen's "Beacon" pattern.
airbnb-pp-cli profile save briefing --json
airbnb-pp-cli --profile briefing airbnb_listing get
airbnb-pp-cli profile list --json
airbnb-pp-cli profile show briefing
airbnb-pp-cli profile delete briefing --yesExplicit flags always win over profile values; profile values win over defaults. lists all available profiles under so introspecting agents discover them at runtime.
agent-contextavailable_profiles配置文件是一组保存的标志值,可在多次调用中复用。当调度代理每次运行都使用相同配置调用同一命令时使用——即HeyGen的"Beacon"模式。
airbnb-pp-cli profile save briefing --json
airbnb-pp-cli --profile briefing airbnb_listing get
airbnb-pp-cli profile list --json
airbnb-pp-cli profile show briefing
airbnb-pp-cli profile delete briefing --yes显式标志始终优先于配置文件值;配置文件值优先于默认值。会在下列出所有可用配置文件,以便内省代理在运行时发现它们。
agent-contextavailable_profilesExit Codes
退出码
| Code | Meaning |
|---|---|
| 0 | Success |
| 2 | Usage error (wrong arguments) |
| 3 | Resource not found |
| 4 | Authentication required |
| 5 | API error (upstream issue) |
| 7 | Rate limited (wait and retry) |
| 10 | Config error |
| 代码 | 含义 |
|---|---|
| 0 | 成功 |
| 2 | 使用错误(参数错误) |
| 3 | 资源未找到 |
| 4 | 需要认证 |
| 5 | API错误(上游问题) |
| 7 | 速率限制(请等待后重试) |
| 10 | 配置错误 |
Argument Parsing
参数解析
Parse :
$ARGUMENTS- Empty, , or
help→ show--helpoutputairbnb-pp-cli --help - Starts with → ends with
install→ MCP installation; otherwise → see Prerequisites abovemcp - Anything else → Direct Use (execute as CLI command with )
--agent
解析:
$ARGUMENTS- 为空、或
help→ 显示--help输出airbnb-pp-cli --help - 以开头 → 若以
install结尾 → MCP安装;否则 → 参见上方前提条件mcp - 其他情况 → 直接使用(以标志执行CLI命令)
--agent
MCP Server Installation
MCP服务器安装
- Install the MCP server:
bash
go install github.com/mvanhorn/printing-press-library/library/travel/airbnb/cmd/airbnb-pp-mcp@latest - Register with Claude Code:
bash
claude mcp add airbnb-pp-mcp -- airbnb-pp-mcp - Verify:
claude mcp list
- 安装MCP服务器:
bash
go install github.com/mvanhorn/printing-press-library/library/travel/airbnb/cmd/airbnb-pp-mcp@latest - 在Claude Code中注册:
bash
claude mcp add airbnb-pp-mcp -- airbnb-pp-mcp - 验证:
claude mcp list
Direct Use
直接使用
- Check if installed: If not found, offer to install (see Prerequisites at the top of this skill).
which airbnb-pp-cli - Match the user query to the best command from the Unique Capabilities and Command Reference above.
- Execute with the flag:
--agentbashairbnb-pp-cli <command> [subcommand] [args] --agent - If ambiguous, drill into subcommand help: .
airbnb-pp-cli <command> --help
- 检查是否安装:若未找到,提供安装选项(参见顶部的前提条件)。
which airbnb-pp-cli - 将用户查询与上述独特功能和命令参考中的最佳命令匹配。
- 带标志执行:
--agentbashairbnb-pp-cli <command> [subcommand] [args] --agent - 若存在歧义,查看子命令帮助:。
airbnb-pp-cli <command> --help