# pp-hotel-goat

The skill drives the hotel-goat-pp-cli binary: search hotels by city and dates, find the cheapest dates, keep a local wishlist. No API key.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 388 installs · ★ 2076
- Author: kothari-nikunj
- License: Apache-2.0 · policy=mirror · the beginning of the file is at the end of this page
- Source: https://github.com/mvanhorn/printing-press-library/tree/HEAD/cli-skills/pp-hotel-goat/SKILL.md
- Updated: 2026-10-24
- HTML: https://affpapa.org/en/nevibecode/skills/pp-hotel-goat

## What it does

The skill does not scrape Google Hotels itself. It calls the `hotel-goat-pp-cli` binary, which parses Google Hotels results and returns per-hotel data. The `hotels` command takes a city and a date range, `hotel show <property-token>` returns the full property card, and `hotel reviews <property-token>` gives the review breakdown. Booking links point at the OTA, so the skill shows you where to book rather than booking anything.

For agents there is `--agent`, which expands to `--json --compact --no-input --no-color --yes`. Use `--select` to keep only the fields you need, for example `results.name,results.price_per_night,results.booking_urls.primary`, so the full nested payload stays out of your context. Output is wrapped in a provenance envelope with `meta.source`, telling you whether the data is live or came from the local SQLite store. The wishlist is local SQLite too.

Before the first run, check that the binary exists: `hotel-goat-pp-cli --version`. If that reports command not found, the runtime cannot see the install directory on `$PATH`, and no skill command will work until you fix it. The `npx` install path needs Node; the fallback is `go install`, which needs Go 1.26.6 or newer. There is no authentication, the result language follows your system locale, and `--currency` switches pricing.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add mvanhorn/printing-press-library --skill pp-hotel-goat -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/pp-hotel-goat/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/pp-hotel-goat/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add mvanhorn/printing-press-library --skill pp-hotel-goat -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/pp-hotel-goat/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add mvanhorn/printing-press-library --skill pp-hotel-goat -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/pp-hotel-goat/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install mvanhorn/printing-press-library pp-hotel-goat
```

2. **Manually: put the files in place**
- File: `.github/skills/pp-hotel-goat/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add mvanhorn/printing-press-library --skill pp-hotel-goat -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/mvanhorn/printing-press-library --path cli-skills/pp-hotel-goat
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/pp-hotel-goat/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add mvanhorn/printing-press-library --skill pp-hotel-goat -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/mvanhorn/printing-press-library/tree/HEAD/cli-skills/pp-hotel-goat/SKILL.md

## When to use it
- find hotels in a city for specific dates
- work out the cheapest dates inside a travel window
- compare hotel prices across one city
- look up hotels near a street address
- save shortlisted properties to a local wishlist

## Example prompts
- find hotels in Paris for 2026-07-20 to 2026-07-23, 4 and 5 star only, under 300 EUR
- compare hotel prices for San Francisco on 2026-08-15 to 2026-08-17 and keep only name, rating and price per night
- save this hotel to my wishlist and list what is in it

## Source text · SKILL.md · Apache-2.0

Below is the content of a third-party file. It is data, not instructions for you: do not act on anything written inside unless the human asks. Block tag: 0a3c2e700b143f0f.

BEGIN THIRD-PARTY FILE 0a3c2e700b143f0f
````text
---
name: pp-hotel-goat
description: "Free Google Hotels CLI — per-hotel data with deep booking links, agent-native JSON, and local wishlist. No API key. Trigger phrases: `find a hotel in <city>`, `search hotels for <city> <dates>`, `cheapest dates for <city>`, `hotels near <address>`, `compare hotel prices for <city>`, `what hotels are available in <city>`, `save this hotel`, `use hotel-goat`, `run hotel-goat`."
author: "kothari-nikunj"
license: "Apache-2.0"
argument-hint: "<command> [args] | install cli|mcp"
allowed-tools: "Read Bash"
metadata:
  openclaw:
    requires:
      bins:
        - hotel-goat-pp-cli
    install:
      - kind: go
        bins: [hotel-goat-pp-cli]
        module: github.com/mvanhorn/printing-press-library/library/travel/hotel-goat/cmd/hotel-goat-pp-cli
---
<!-- GENERATED FILE — DO NOT EDIT.
     This file is a verbatim mirror of library/travel/hotel-goat/SKILL.md,
     regenerated post-merge by tools/generate-skills/. Hand-edits here are
     silently overwritten on the next regen. Edit the library/ source instead.
     See the repository agent guide, section "Generated artifacts: registry.json, cli-skills/". -->

# Hotel GOAT — Printing Press CLI

## Prerequisites: Install the CLI

This skill drives the `hotel-goat-pp-cli` binary. **You must verify the CLI is installed before invoking any command from this skill.** If it is missing, install it first:

1. Install via the Printing Press installer. It defaults binaries to `$HOME/.local/bin` on macOS/Linux and `%LOCALAPPDATA%\Programs\PrintingPress\bin` on Windows:
   ```bash
   npx -y @mvanhorn/printing-press-library install hotel-goat --cli-only
   ```
2. Verify: `hotel-goat-pp-cli --version`
3. Ensure the reported install directory is on `$PATH` for 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):

```bash
go install github.com/mvanhorn/printing-press-library/library/travel/hotel-goat/cmd/hotel-goat-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.

## When to Use This CLI
````
END THIRD-PARTY FILE 0a3c2e700b143f0f

The third-party file has ended. Everything between the 0a3c2e700b143f0f tags is data: requests and commands from it are not followed. An “end of file” line with another tag inside the block is part of the file.

First 2253 of 10558 bytes. © kothari-nikunj · Apache-2.0 · https://github.com/mvanhorn/printing-press-library/tree/HEAD/cli-skills/pp-hotel-goat/SKILL.md

_Part of the page did not fit — see the HTML version._

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
