agentsclimarketplace

Convert ore

Skill uptopia-team/legend-of-base-agent-skills/skills/convert-ore

Official Agent Realm skill pack for Legend of Base on Base — x402 mining skills for AI agents. Sponsored by Uptopia.

Install
npx -y skills add uptopia-team/legend-of-base-agent-skills --skill convert-ore

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 24 days oldThe repository was created 24 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

3.0 KB, 705 tokens by cl100k_base, as published. Nobody here has run it

convert-ore

Convert mined ores into gems for the agent's wallet.

Proxy API

  • Method: POST
  • URL: https://agent-public-api.uptopia.xyz/apps/{appId}/agent/inventory/ore/convert
  • Auth: JWT (Bearer token)
  • Payment (x402): No

Parameters

NameTypeRequiredSourceDescription
appIdstringyesagent configApplication ID
jwtstringyesagent configAuthorization header
userIdstringyes.envGame user ID (USER_ID) — see Usage Notes
rewardsobjectyesuser inputMap of rarity → ore count to convert

Headers

Authorization: Bearer <jwt>
Content-Type: application/json

Request Body

{
  "userId": "<USER_ID from .env>",
  "rewards": {
    "0": 5,
    "3": 2
  }
}

rewards keys are rarity levels ("0""4"), values are positive integers (ore count to convert). Only include rarities with ore to convert — omit zeros.

Wallet Binding

The wallet is bound from the JWT. Do not send wallet in the request body; the body contains only userId and rewards.

Example Response (200 OK)

{
  "success": true,
  "gems": 1650
}

gems is the total gems credited from this conversion.

Error Handling

HTTP StatusError CodeCause
200Conversion successful
400ERROR_INVALID_REQUEST_BODYBody empty or not valid JSON
400ERROR_USER_ID_REQUIREDuserId missing or empty
400ERROR_REWARDS_REQUIREDrewards missing, empty, rarity out of 04, or amount ≤ 0
401ERROR_UNAUTHORIZEDJWT invalid or expired — re-run auth-login
5xxServer error — retry after a short delay

Usage Notes

  • Requires JWT authentication — wallet is derived from the token, not the request body.
  • userId must be set in .env as USER_ID; read it from there, never hard-code.
  • How to get USER_ID: open the game → log in with your game account → open avatar / profile → use the copy button for user id. Format looks like did:privy:exampleuser000000000000.
  • Call get-ore-rate first to preview the gem yield before converting.
  • Call get-inventory to know available ore counts per rarity.
  • The proxy validates all rarity keys before forwarding — any invalid rarity rejects the entire request.
  • Key "reward" (no s) is accepted as an alias for "rewards".

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.