Prerequisites: Install the CLI
This skill drives the rakuten-travel-pp-cli binary. You must verify the CLI is installed before invoking any command from this skill. If it is missing, install it first:
- Install via the Printing Press installer. It defaults binaries to
$HOME/.local/binon macOS/Linux and%LOCALAPPDATA%\Programs\PrintingPress\binon Windows:npx -y @mvanhorn/printing-press-library install rakuten-travel --cli-only - Verify:
rakuten-travel-pp-cli --version - Ensure the reported install directory is on
$PATHfor the agent/runtime that will invoke this skill.
If the npx install fails (no Node, offline, etc.), fall back to a direct Go install (requires Go 1.26.6 or newer). This installs into $GOPATH/bin (default $HOME/go/bin), so add that directory to $PATH instead:
go install github.com/mvanhorn/printing-press-library/library/travel/rakuten-travel/cmd/rakuten-travel-pp-cli@latest
If --version reports "command not found" after install, the runtime cannot see the binary directory on $PATH. Do not proceed with skill commands until verification succeeds.
Search Rakuten Travel public pages, inspect property details and compare bounded date alternatives. Keep room and plan identities, source price labels and booking links intact.
Build from source
From this repository directory:
go build -o bin/rakuten-travel-pp-cli ./cmd/rakuten-travel-pp-cli
export PATH="$PWD/bin:$PATH"
The public website backend needs no API credentials or browser.
When to Use This CLI
Use for accommodation discovery in Japan, dated room-plan inspection, or bounded hotel/date comparisons on Rakuten Travel. The user completes booking on Rakuten.
Anti-triggers
Use another workflow for cross-provider comparisons, reservation/payment/cancellation execution, account management, automatic destination translation, radius search, or unequal party allocations across rooms.
Workflow
- Establish destination or hotel, check-in/out dates, room count, adults per room and the six child categories. Resolve missing details before inventory search. Counts are per room; rooms must share the same party. Confirm category choices rather than infer ages.
- Resolve source IDs with
areas listorhotels search. Keep ambiguous area choices visible. Japanese labels and English literal keywords may return different coverage. Continue when candidates have hotel IDs and source URLs. - Inspect shortlisted properties with
hotels show, including amenities, access and fee/policy notes. Continue when material requirements are verified or explicitly unknown. - Run
offers searchwith explicit dates and party. Preserve hotel/plan/room IDs and source quote units. Follow returned within-page offset before the next source page when more results are needed; keep the request budget bounded. - Inspect a chosen tuple with
offers show. Usecompareonly for an explicit matrix of hotel IDs and check-in dates with equal stay length and party, at most nine cells. Keep failed and empty cells distinct. - Present source-labelled prices, dates, per-room party, meals, material unknown fees/policies, freshness and the returned Rakuten link. Complete when each recommended option has enough evidence for the traveler to confirm and book on Rakuten.
For price units, cache states, policy scope or ambiguous empty results, read the data contract before interpreting output.
Unique Capabilities
- Date alternatives —
comparepreserves every bounded matrix cell's status. - Whole-stay quote evidence —
offers searchretains source room-stay totals. - Child-aware occupancy —
offers searchkeeps six child categories separate. - Policy and fee inspection —
offers showseparates property notes from unknown plan rules. - Exact offer handoff —
offers showpreserves the room/plan tuple and dated source link.
Recipes
Compact candidates
rakuten-travel-pp-cli hotels search --query 品川 --limit 3 --agent --select results.hotel_id,results.name
Resolve IDs with a bounded payload.
Property notes
rakuten-travel-pp-cli hotels show --hotel 51870
Inspect amenities, access and property fee notes.
Date alternatives
rakuten-travel-pp-cli compare --hotels 51870 --checkins 2026-11-08,2026-11-09 --nights 2 --rooms 1 --adults-per-room 2
Compare explicit equal-length stays with the same party.
Agent Mode
Default stdout is compact JSON. --agent retains the focused result envelope; --select narrows fields. Read .results for data and .meta for query, source/freshness, coverage and request statistics. Diagnostics are on stderr.
Use --help for current flags and limits. Use --dry-run to inspect local command wiring without source requests. Live inventory is uncached by default; explicit inventory caching is short and timestamped. A page-contract error or throttle is not evidence of sold-out inventory.
Auth Setup
The public website backend requires no API credentials or browser. The separately documented official APIs require an application ID and access key and are not used by these commands.
Run rakuten-travel-pp-cli doctor to verify setup.
Direct Use
rakuten-travel-pp-cli doctor --json
rakuten-travel-pp-cli offers search --help
doctor checks setup. The live dated offer command checks inventory. Verification evidence is in docs/verification.md.