apply
Sync Steamworks sections to approved values: run a dry-run diff, confirm changes, then write safely. Never publishes; store tags go live only if agreed.
Instructions
Make Steam match the approved values of one section. Always call with dry_run=true first and show the user the changes; write (dry_run=false, user_confirmed=true) only after they agreed. Nothing is ever published: BROWSER writes are drafts the user reviews and publishes in Steamworks. The one exception is "store_tags": Steam applies tags at once, so it also needs goes_live_now=true, and only after the user agreed to exactly that.
Sections: "leaderboards" (Web API, publisher key), "build" (uploads the SteamPipe scripts with steamcmd), and with the BROWSER mode: "cloud", "installation", "achievements" (main game), "store_text" (short and long description in every approved language), "store_page" (the store page form: links, support info, legal line, system requirements, platforms, language table, genres, categories, third-party DRM/accounts; empty fields never clear Steam's), "store_assets" (uploads prepare_images' capsules and library images into the slots Steam has no image for yet; never replaces one, and also sets the library logo position), "depots" (OS, architecture and language of depots that already exist, through the Depots page's own Save), "store_tags" (store.tags in order, through the Tag Wizard; live at once; community tags are never removed). Every call saves a snapshot of what Steam had first.
Args: path: Folder that holds steamworks.yaml. section: What to apply. app: main, demo or playtest (each has its own app id). dry_run: Only show the differences (default). user_confirmed: The user saw the dry-run changes and agreed. remove_extra: Also delete rows that exist only in Steam. Only when the user explicitly asks for it. upload_icons: achievements: also upload the icons (prepared from achievements.*.icon). goes_live_now: store_tags: the user agreed that the tags go live on the store at once.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| app | No | main | |
| path | Yes | ||
| dry_run | No | ||
| section | Yes | ||
| remove_extra | No | ||
| upload_icons | No | ||
| goes_live_now | No | ||
| user_confirmed | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||