Claude
Skills
Sign in
Back

pp-steam-web

Included with Lifetime
$97 forever

Every Steam Web API endpoint, plus a local SQLite store that turns friend playtimes, achievement progress, and library backlogs into single SQL queries no other tool can answer. Trigger phrases: `what should I play next on steam`, `find friends who own this game`, `easiest steam achievement to unlock`, `audit my steam backlog`, `use steam-web`.

Backend & APIs

What this skill does

<!-- GENERATED FILE — DO NOT EDIT.
     This file is a verbatim mirror of library/media-and-entertainment/steam-web/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/". -->

# Steam Web — Printing Press CLI

## Prerequisites: Install the CLI

This skill drives the `steam-web-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 steam-web --cli-only
   ```
2. Verify: `steam-web-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.3 or newer):

```bash
go install github.com/mvanhorn/printing-press-library/library/media-and-entertainment/steam-web/cmd/steam-web-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

Pick this CLI when an agent is asked to query Steam profile, library, achievement, or news data and the question crosses entities — anything joining friends with owned games, achievements with global rarity, or news with a date filter. The local SQLite store turns those questions into one SQL query instead of an N+1 fanout. Every other Steam tool is single-shot read-once; this one compounds. For pure single-endpoint reads (one player's profile, one app's news), the per-endpoint MCP tools work too — but the novel commands are where this CLI earns its weight.

## Unique Capabilities

These capabilities aren't available in any other tool for this API.

### Local state that compounds
- **`library audit`** — Surface never-launched games, paid titles you bounced off in under 2 hours, and where your hours actually went by genre.

  _Use this when an agent is asked to plan what to play next, justify a refund, or summarize the user's gaming spend._

  ```bash
  steam-web-pp-cli library audit 76561197960287930 --bounce --json
  ```
- **`review-velocity`** — Reviews per day and voted-up share over a rolling window for one app — date-bucket aggregation over the cursor-paginated appreviews stream.

  _Use this when an agent is asked to track sentiment shifts after a patch, sale, or controversy._

  ```bash
  steam-web-pp-cli review-velocity 1245620 --window 30d --json
  ```
- **`news search`** — FTS5 search across the title and contents of every news post you've synced, optionally scoped by appid or date range.

  _Use this when an agent is asked to dig up patch notes, devlog mentions, or news around a specific topic across the user's library._

  ```bash
  steam-web-pp-cli news search 'patch notes' --since 2026-04-01 --json
  ```
- **`play-trend`** — Show concurrent-player count over time for one app as a sparkline plus min/max/last over a rolling window — value scales with how often you sample.

  _Use this when an agent needs to see whether a game's playerbase is growing, falling, or has spiked around an event — sample the count every few hours via cron and the window query becomes meaningful within a week._

  ```bash
  steam-web-pp-cli play-trend 1245620 --window 7d --json
  ```

### Friend-graph intelligence
- **`friends compare`** — Rank everyone in your friend list by hours spent in a specific game, with throttled fan-out so you don't trip Steam's 25 req/s budget.

  _Use this when an agent is asked 'who in my friends has the most hours in <game>' or 'who owns this and never played'._

  ```bash
  steam-web-pp-cli friends compare 1245620 --my-steamid 76561197960287930 --agent --select results.persona_name,results.playtime_hours
  ```
- **`library compare`** — Set operations across two libraries — what's mine-only, what's theirs-only, what's shared with playtime delta.

  _Use this when an agent is asked 'what games do my friend and I both own' or to plan a co-op session._

  ```bash
  steam-web-pp-cli library compare 76561197960287930 --my-steamid 76561197960287930 --shared --json
  ```
- **`currently-playing`** — Show which friends are in-game right now and what they're playing — one batched API call across the friend list, no fanout.

  _Use this when an agent is asked 'who is online and playing what' or to power a status panel._

  ```bash
  steam-web-pp-cli currently-playing --my-steamid 76561197960287930 --json
  ```
- **`achievement-leaderboard`** — Rank your friends by achievement completion percentage for one app, throttled fan-out via the same limiter that powers friends compare.

  _Use this when an agent is asked 'who in my friends is closest to 100% in <game>' or to seed a competitive completion challenge._

  ```bash
  steam-web-pp-cli achievement-leaderboard 1245620 --my-steamid 76561197960287930 --json
  ```

### Achievement intelligence
- **`next-achievement`** — Across your entire library, surface the achievement with the highest global unlock percentage that you still don't have.

  _Use this when an agent is asked 'what should I go unlock next' or to recommend low-effort achievement progress for completionists._

  ```bash
  steam-web-pp-cli next-achievement --steamid 76561197960287930 --limit 10 --json
  ```
- **`achievement-hunt`** — Render the full achievement schema for one app side-by-side with your unlock state and the global rarity of each achievement in one table.

  _Use this when an agent needs the full unlock landscape for one game to plan a completion run._

  ```bash
  steam-web-pp-cli achievement-hunt 1245620 --steamid 76561197960287930 --locked --json
  ```
- **`rare-achievements`** — Surface your rarest achievement unlocks across all owned games — the inverse of the next-achievement query, sorted by ascending global percentage.

  _Use this when an agent is asked to summarize what the user is proud of, or to power a profile-flex panel._

  ```bash
  steam-web-pp-cli rare-achievements --steamid 76561197960287930 --limit 10 --json
  ```

## Command Reference

**iauthentication-service** — Manage iauthentication service

- `steam-web-pp-cli iauthentication-service begin-auth-session-via-credentials` — BeginAuthSessionViaCredentials operation of IAuthenticationService
- `steam-web-pp-cli iauthentication-service begin-auth-session-via-qr` — BeginAuthSessionViaQR operation of IAuthenticationService
- `steam-web-pp-cli iauthentication-service get-auth-session-info` — GetAuthSessionInfo operation of IAuthenticationService
- `steam-web-pp-cli iauthentication-service get-auth-session-risk-info` — GetAuthSessionRiskInfo operation of IAuthenticationService
- `steam-web-pp-cli iauthentication-service get-password-rsapublic-key` — GetPasswordRSAPublicKey operation of IAuthenticationService
- `steam-web-pp-cli iauthentication-service notify-risk-quiz-results` — NotifyRiskQuizResults operation of IAuthenticationService
- `steam-web-pp-cli iauthentication-service poll-auth-session-status` — PollAuthSessionStatus operation of IAuthenticationService
- `steam-web-pp-cli iauthentication-service update-auth-session-with-mobile-confirmation` — UpdateAuthSessionWithMobileConfirmation operation of IAuthenticationService
- `steam-web-pp-cli iauthentication-service update-auth-session-with-steam-guard-code` — UpdateAuthSessionWithSteamGuardCode operation of IAuthenticationService

**ibroadcast-service** — Manage ibroadcast service

- `steam-web-pp-cli ibroadcast-service` — PostGameDataFrameRTMP operation of IBroadcastService

**icheat-reporting-service** — Manage icheat reporting service

- `s

Related in Backend & APIs