Appearance
CLI Reference
The @valoranchi/riot-client package includes the riotclient command-line executable. It connects to the local Riot Client session and writes structured JSON to standard output.
Overview
Commands can be invoked directly if installed globally, or via npx:
bash
riotclient <command> [options]
npx @valoranchi/riot-client <command> [options]All mutations run in dry-run mode by default. Pass --yes to authorize live changes, and both --yes and --confirm for operations that alter currency balances, dodge queues, or leave active matches.
Exit Codes
| Code | Symbol | Meaning |
|---|---|---|
0 | SUCCESS | Successful execution. Output JSON is printed to stdout. |
1 | UNEXPECTED | Unhandled error or runtime crash. |
2 | RIOT_CLIENT_NOT_RUNNING | Riot Client lockfile was not found. Start Riot Client and log in. |
3 | RIOT_CLIENT_NOT_READY | Riot Client is running but local loopback API is not yet ready. |
4 | REGION_UNKNOWN | Active region and shard could not be determined. |
5 | RIOT_API_ERROR | Remote Riot PVP service returned an HTTP error. |
6 | VALIDATION | Local pre-flight validation check failed. |
Command Reference
The command and option tables below are generated automatically at build time from the source definition in src/cli.ts.
Account
| Command | Description |
|---|---|
whoami | Print signed-in player profile and region |
owned-items | Print owned inventory items |
collection-value | Calculate estimated VP and Radianite value of owned collection |
loadout | Print currently equipped loadout |
wallet | Print VP, Radianite, and Kingdom Credits balances |
xp | Print account level, XP progression and recent match XP history |
contracts | Print progression across agent, battlepass and event contracts |
missions | Print active daily and weekly missions and objectives |
penalties | Print active penalties and restrictions |
favourites | Print favorited weapon skins |
session | Print current client session loop state and playtime |
config | Print shared client configuration mapping |
client | Print client identity, locale, region, and Valorant running state |
settings | Print cloud player settings (--raw for unprocessed dump) |
settings-save | Save player settings from JSON file (<file.json>, requires --yes --confirm) |
equip | Equip skins, buddies, sprays, card, title, border, flex (dry-run, --yes to apply) |
equip-collection | Equip a collection of skins (<skinUuid,...>) (dry-run, --yes to apply) |
loadout-export | Export current loadout as a preset JSON |
loadout-diff | Compare current loadout against preset JSON file (<preset.json>) |
loadout-apply | Apply loadout preset from JSON file (<preset.json>, dry-run, --yes to apply) |
contract-activate | Activate an agent contract (<uuid>) (dry-run, --yes to apply) |
favourite-add | Add skin to favourites (<skin>) (dry-run, --yes to apply) |
favourite-remove | Remove skin from favourites (<skin>) (dry-run, --yes to apply) |
privacy | Update account privacy toggles (--badge on|off, --leaderboard on|off) |
Social
| Command | Description |
|---|---|
friends | Print friends roster and presence |
friend-requests | Print incoming and outgoing friend requests |
blocked | Print blocked players |
conversations | Print whisper and match chat conversations |
messages | Print chat messages (filter with --cid <id>) |
participants | Print chat participants (filter with --cid <id>) |
send | Send chat message (--to <puuid|name#tag|cid> --text <msg>) |
friend-request | Send friend request (<name#tag>) |
friend-accept | Accept friend request (<puuid>) |
friend-decline | Decline friend request (<puuid>) |
friend-cancel | Cancel friend request (<puuid>) |
friend-remove | Remove friend (<puuid>) |
block | Block player (<puuid|name#tag>) |
unblock | Unblock player (<puuid>) |
Store
| Command | Description |
|---|---|
store | Print storefront (daily, night market, bundles, accessories) |
store-history | Print recorded daily store rotations [--days <n>] |
store-seen | Print when a skin was last seen in daily store (<skin>) |
offers | Print full item offers catalog and pricing |
order <id> | Print store order details |
night-market-reveal | Reveal night market offers (dry-run, --yes to apply) |
buy | Purchase offer or bundle (--offer <id> | --bundle <id>, requires --yes --confirm) |
Matches
| Command | Description |
|---|---|
matches | Print recent match history summaries |
matches-sync | Synchronize match history to local cache [--pages <n>] |
match <id> | Print full match details by ID |
mmr | Print current rank, rating, and MMR breakdown |
rank-history | Print competitive rating adjustments and tier changes |
live | Print live pregame or in-game lobby status and loadouts |
matches-for <puuid> | Print recent match history summaries for player |
mmr-for <puuid> | Print rank, rating, and MMR for player |
rank-history-for <puuid> | Print competitive updates for player |
leaderboard | Print competitive leaderboard [--season] [--start] [--size] [--query] |
content | Print active act, episode and live events |
premier | Print premier eligibility, roster, and season info |
trend | Print competitive rating streak, net RR gains, and climbing pace |
summary | Print player performance summary across recent matches [--count n] [--queue q] |
assess [puuid] | Assess player rank anomalies, streaks, and warning flags |
agent-select | Select an agent in pregame (<uuid|name>) (dry-run, --yes to apply) |
agent-lock | Lock in an agent in pregame (<uuid|name>) (dry-run, --yes to apply) |
dodge | Dodge pregame agent select (requires --yes --confirm) |
leave-match | Leave active in-game match (requires --yes --confirm) |
Party
| Command | Description |
|---|---|
party | Print current party details and members |
queues | Print matchmaking queue configurations |
custom-game-configs | Print custom game configuration options |
party-invite | Invite player to party (<name#tag>) |
party-kick | Kick member from party (<puuid>) |
party-promote | Promote member to party owner (<puuid>) |
party-code | Generate or revoke party invite code [--revoke] |
party-join | Join party by invite code or party ID (<partyId|code>) |
party-invites | Print incoming party invites |
party-requests | Print incoming party join requests |
party-decline-invite | Decline party invite (<id>) (dry-run, --yes to apply) |
party-request | Request to join party (<partyId>) (dry-run, --yes to apply) |
party-decline-request | Decline party join request (<id>) (dry-run, --yes to apply) |
custom-game | Convert party into a custom game (dry-run, --yes to apply) |
custom-game-settings | Configure custom game (--map <name> --mode <name> [--server <id>] [--rule k=v...]) |
custom-game-team | Set member custom game team (<puuid> <team>) (dry-run, --yes to apply) |
custom-game-start | Start custom game match (dry-run, --yes to apply) |
custom-game-balance | Balance custom game teams (dry-run, --yes to apply) |
party-default | Set party default queue (<queue>) (dry-run, --yes to apply) |
party-servers | Set preferred game servers (<id,...>) (dry-run, --yes to apply) |
party-moderator | Set member moderator status (<puuid> on|off) (dry-run, --yes to apply) |
party-refresh | Refresh party member pings and identity (dry-run, --yes to apply) |
party-ready | Set party ready state (on|off) |
party-queue | Change party queue (<queue>) |
party-access | Set party accessibility (open|closed) |
party-start | Start party matchmaking |
party-stop | Stop party matchmaking |
party-leave | Leave current party |
Raw (unsupported)
| Command | Description |
|---|---|
local | Send raw request to local Riot client API (<get|post|put|delete> <path> [--body json]) |
riot | Send raw request to remote Riot game servers (<get|post|put|delete> <url> [--body json]) |
Events
| Command | Description |
|---|---|
watch | Stream real-time events as JSON lines until interrupted |
watch-match | Stream match lifecycle events until interrupted |
watch-friends | Stream friend activity and presence events until interrupted |
Server
| Command | Description |
|---|---|
serve | Start local HTTP server with SSE events and OpenAPI docs [--port 47800] [--host 127.0.0.1] [--allow-remote] |
Options
| Option | Description |
|---|---|
--yes | Execute write command (default is dry-run) |
--confirm | Confirm write action (required with buy, dodge, leave-match, settings-save) |
--offer <id> | Store offer ID to purchase |
--bundle <id> | Store bundle ID to purchase |
--badge <on|off> | Hide or show act rank badge |
--leaderboard <on|off> | Anonymize or reveal leaderboard presence |
--season <uuid> | Season ID for leaderboard |
--start <n> | Leaderboard starting index |
--size <n> | Leaderboard page size (max 510) |
--query <text> | Leaderboard player search query |
--revoke | Revoke party invite code (used with party-code) |
--to <target> | Message recipient (puuid, name#tag, or cid) |
--text <msg> | Message text |
--gun <spec> | Gun to equip: <weapon>=<skin>[:level[:chroma]] (repeatable) |
--buddy <spec> | Buddy to equip: <weapon>=<buddy|none> (repeatable) |
--spray <spec> | Spray to equip: <slot>=<uuid|none> (repeatable) |
--card <uuid> | Player card UUID |
--title <uuid> | Player title UUID |
--flex <uuid|none> | Flex item UUID or none |
--border <uuid> | Level border UUID |
--incognito <on|off> | Enable or disable incognito |
--hide-level <on|off> | Hide or show account level |
--count <n> | Number of matches or rank history entries to fetch |
--queue <queue> | Queue filter (e.g. competitive, unrated) |
--ranks | Fetch MMR and rank for each player in live match |
--no-loadouts | Skip fetching player loadouts in live match |
--map <name> | Map name or path for custom game |
--mode <name> | Game mode name or path for custom game |
--server <id> | Server pod ID for custom game |
--rule <spec> | Game rule override: <name>=<value> (repeatable) |
--body <json> | JSON request body for local and riot raw commands |
--only <events> | Comma-separated list of event names to print |
--raw | Include raw client event frames or unformatted settings |
--cid <id> | Conversation ID for filtering messages or participants |
--language <lang> | Catalogue language (default: en-US) |
--cache <seconds> | Reuse Riot responses younger than this many seconds |
--port <n> | Port to bind HTTP server (default: 47800) |
--host <ip> | Host address to bind HTTP server (default: 127.0.0.1) |
--allow-remote | Allow binding HTTP server to non-loopback address |
--pretty | Pretty-print JSON output |
--help | Show usage instructions |
--version | Show version number |