{
  "schemaVersion": "1.0",
  "item": {
    "slug": "steam-community-inventory",
    "name": "Steam Community Inventory",
    "source": "tencent",
    "type": "skill",
    "category": "通讯协作",
    "sourceUrl": "https://clawhub.ai/bluesyparty-src/steam-community-inventory",
    "canonicalUrl": "https://clawhub.ai/bluesyparty-src/steam-community-inventory",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/steam-community-inventory",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=steam-community-inventory",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/steam-community-inventory"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/steam-community-inventory",
    "agentPageUrl": "https://openagent3.xyz/skills/steam-community-inventory/agent",
    "manifestUrl": "https://openagent3.xyz/skills/steam-community-inventory/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/steam-community-inventory/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Steam Community Inventory Skill",
        "body": "Retrieve and browse a Steam user's inventory from steamcommunity.com."
      },
      {
        "title": "Setup",
        "body": "Find your Steam ID (SteamID64):\n\nGo to your Steam profile page\nIf your URL is https://steamcommunity.com/profiles/76561198012345678, your Steam ID is 76561198012345678\nIf your URL uses a vanity name like https://steamcommunity.com/id/myname, visit steamid.io and paste your profile URL to get your SteamID64\n\n\n\nGet your Steam session cookies (required to bypass rate limits when fetching your own inventory):\n\nLog in to steamcommunity.com in your browser\nOpen Developer Tools (F12) > Application tab > Cookies > https://steamcommunity.com\nCopy the value of the steamLoginSecure cookie\n\n\n\nSet environment variables:\nexport STEAM_ID=\"your-steamid64\"\nexport STEAM_COOKIES=\"steamLoginSecure=your-cookie-value\""
      },
      {
        "title": "Usage",
        "body": "All commands use curl to hit the Steam Community inventory endpoint. The context ID is 2 for all standard game inventories."
      },
      {
        "title": "Common App IDs",
        "body": "GameApp IDCS2 / CS:GO730Team Fortress 2440Dota 2570Rust252490PUBG578080Steam Community (trading cards, etc.)753"
      },
      {
        "title": "Get inventory for a game",
        "body": "Replace $APP_ID with the game's App ID (see table above). Context ID is 2 for all standard game inventories.\n\ncurl -s \"https://steamcommunity.com/inventory/$STEAM_ID/$APP_ID/2?l=english&count=2000\" \\\n  -H \"Cookie: $STEAM_COOKIES\" | jq '.'"
      },
      {
        "title": "Get CS2 inventory",
        "body": "curl -s \"https://steamcommunity.com/inventory/$STEAM_ID/730/2?l=english&count=2000\" \\\n  -H \"Cookie: $STEAM_COOKIES\" | jq '.'"
      },
      {
        "title": "Get a summary of items (names and quantities)",
        "body": "curl -s \"https://steamcommunity.com/inventory/$STEAM_ID/730/2?l=english&count=2000\" \\\n  -H \"Cookie: $STEAM_COOKIES\" | jq '[.descriptions[] | {market_hash_name, type}]'"
      },
      {
        "title": "Get item details (asset IDs mapped to descriptions)",
        "body": "curl -s \"https://steamcommunity.com/inventory/$STEAM_ID/730/2?l=english&count=2000\" \\\n  -H \"Cookie: $STEAM_COOKIES\" | jq '{assets: [.assets[] | {assetid, classid, instanceid, amount}], total: .total_inventory_count}'"
      },
      {
        "title": "Paginated fetch (for inventories over 2000 items)",
        "body": "The API returns a last_assetid field when there are more items. Pass it as start_assetid to get the next page:\n\ncurl -s \"https://steamcommunity.com/inventory/$STEAM_ID/730/2?l=english&count=2000&start_assetid=$LAST_ASSET_ID\" \\\n  -H \"Cookie: $STEAM_COOKIES\" | jq '.'\n\nCheck for more pages by looking at the more_items field in the response (equals 1 if there are more)."
      },
      {
        "title": "Response Format",
        "body": "The inventory endpoint returns JSON with these key fields:\n\nFieldDescriptionassetsArray of items with appid, contextid, assetid, classid, instanceid, amountdescriptionsArray of item metadata: market_hash_name, name, type, icon_url, tradable, marketable, tags, etc.total_inventory_countTotal number of items in the inventorymore_items1 if more pages available (absent otherwise)last_assetidLast asset ID returned; use as start_assetid for next pagesuccess1 if the request succeeded\n\nAssets are linked to descriptions via classid + instanceid."
      },
      {
        "title": "Notes",
        "body": "Rate limits: The community endpoint is heavily rate-limited by IP. Using your own cookies bypasses this for your own inventory. Without cookies, expect IP bans after a few requests (cooldown ~6 hours).\nSpacing: If fetching multiple inventories or pages, wait at least 4 seconds between requests.\ncount parameter: Max value is 5000, but 2000 is recommended to avoid issues.\nContext ID: Use 2 for all standard game inventories. Steam Community items (appid 753) also use context ID 6 for some item types.\nPrivate profiles: Inventory must be set to public, or you must be authenticated as the owner."
      }
    ],
    "body": "Steam Community Inventory Skill\n\nRetrieve and browse a Steam user's inventory from steamcommunity.com.\n\nSetup\n\nFind your Steam ID (SteamID64):\n\nGo to your Steam profile page\nIf your URL is https://steamcommunity.com/profiles/76561198012345678, your Steam ID is 76561198012345678\nIf your URL uses a vanity name like https://steamcommunity.com/id/myname, visit steamid.io and paste your profile URL to get your SteamID64\n\nGet your Steam session cookies (required to bypass rate limits when fetching your own inventory):\n\nLog in to steamcommunity.com in your browser\nOpen Developer Tools (F12) > Application tab > Cookies > https://steamcommunity.com\nCopy the value of the steamLoginSecure cookie\n\nSet environment variables:\n\nexport STEAM_ID=\"your-steamid64\"\nexport STEAM_COOKIES=\"steamLoginSecure=your-cookie-value\"\n\nUsage\n\nAll commands use curl to hit the Steam Community inventory endpoint. The context ID is 2 for all standard game inventories.\n\nCommon App IDs\nGame\tApp ID\nCS2 / CS:GO\t730\nTeam Fortress 2\t440\nDota 2\t570\nRust\t252490\nPUBG\t578080\nSteam Community (trading cards, etc.)\t753\nGet inventory for a game\n\nReplace $APP_ID with the game's App ID (see table above). Context ID is 2 for all standard game inventories.\n\ncurl -s \"https://steamcommunity.com/inventory/$STEAM_ID/$APP_ID/2?l=english&count=2000\" \\\n  -H \"Cookie: $STEAM_COOKIES\" | jq '.'\n\nGet CS2 inventory\ncurl -s \"https://steamcommunity.com/inventory/$STEAM_ID/730/2?l=english&count=2000\" \\\n  -H \"Cookie: $STEAM_COOKIES\" | jq '.'\n\nGet a summary of items (names and quantities)\ncurl -s \"https://steamcommunity.com/inventory/$STEAM_ID/730/2?l=english&count=2000\" \\\n  -H \"Cookie: $STEAM_COOKIES\" | jq '[.descriptions[] | {market_hash_name, type}]'\n\nGet item details (asset IDs mapped to descriptions)\ncurl -s \"https://steamcommunity.com/inventory/$STEAM_ID/730/2?l=english&count=2000\" \\\n  -H \"Cookie: $STEAM_COOKIES\" | jq '{assets: [.assets[] | {assetid, classid, instanceid, amount}], total: .total_inventory_count}'\n\nPaginated fetch (for inventories over 2000 items)\n\nThe API returns a last_assetid field when there are more items. Pass it as start_assetid to get the next page:\n\ncurl -s \"https://steamcommunity.com/inventory/$STEAM_ID/730/2?l=english&count=2000&start_assetid=$LAST_ASSET_ID\" \\\n  -H \"Cookie: $STEAM_COOKIES\" | jq '.'\n\n\nCheck for more pages by looking at the more_items field in the response (equals 1 if there are more).\n\nResponse Format\n\nThe inventory endpoint returns JSON with these key fields:\n\nField\tDescription\nassets\tArray of items with appid, contextid, assetid, classid, instanceid, amount\ndescriptions\tArray of item metadata: market_hash_name, name, type, icon_url, tradable, marketable, tags, etc.\ntotal_inventory_count\tTotal number of items in the inventory\nmore_items\t1 if more pages available (absent otherwise)\nlast_assetid\tLast asset ID returned; use as start_assetid for next page\nsuccess\t1 if the request succeeded\n\nAssets are linked to descriptions via classid + instanceid.\n\nNotes\nRate limits: The community endpoint is heavily rate-limited by IP. Using your own cookies bypasses this for your own inventory. Without cookies, expect IP bans after a few requests (cooldown ~6 hours).\nSpacing: If fetching multiple inventories or pages, wait at least 4 seconds between requests.\ncount parameter: Max value is 5000, but 2000 is recommended to avoid issues.\nContext ID: Use 2 for all standard game inventories. Steam Community items (appid 753) also use context ID 6 for some item types.\nPrivate profiles: Inventory must be set to public, or you must be authenticated as the owner."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/bluesyparty-src/steam-community-inventory",
    "publisherUrl": "https://clawhub.ai/bluesyparty-src/steam-community-inventory",
    "owner": "bluesyparty-src",
    "version": "1.0.1",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/steam-community-inventory",
    "downloadUrl": "https://openagent3.xyz/downloads/steam-community-inventory",
    "agentUrl": "https://openagent3.xyz/skills/steam-community-inventory/agent",
    "manifestUrl": "https://openagent3.xyz/skills/steam-community-inventory/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/steam-community-inventory/agent.md"
  }
}