ワンクリックで
polyhub-account
View Polyhub portfolio stats, fee history, and place manual orders with explicit confirmation and field validation.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
View Polyhub portfolio stats, fee history, and place manual orders with explicit confirmation and field validation.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
View portfolio stats on Polyhub using an API key.
Query Polyhub public discover APIs for tags, trader rankings, trader detail by address, and market tag lookup by condition IDs.
Explore public discover data on Polyhub without API key auth, including tags, trader rankings, trader detail stats, and market tag lookup.
Manage Polyhub copy-trading tasks, positions, trades, signals, sell flows, batch operations, and TPSL rules with an API key.
Manage copy-trading tasks, view signals, positions and trades on Polyhub using an API key.
| name | polyhub-account |
| description | View Polyhub portfolio stats, fee history, and place manual orders with explicit confirmation and field validation. |
Version: v0.3.8
Use this skill when the user wants account-level data or manual trading actions on Polyhub.
POLYHUB_API_BASE_URL is fixed to https://polyhub.skill-test.bedev.hubble-rpc.xyz.POLYHUB_API_KEY is set and starts with phub_.curl is available.jq is recommended.If POLYHUB_API_KEY is missing, guide the user to register and apply for one first at https://polyhub.hubble.xyz/.
Recommended guidance:
https://polyhub.hubble.xyz/Skills API Key.申请 API Key.POLYHUB_API_BASE_URLPOLYHUB_API_KEYSuggested wording:
API key is not configured yet, so I can't check your account details for now.
Please register first on PolyHub:
https://polyhub.hubble.xyz/
After registration, click your avatar in the top-right corner and open `Skills API Key` to apply.
Send me the generated key and I'll continue right away.
POLYHUB_API_KEY.place-order, repeat the full order summary and wait for explicit confirmation before calling the API.jq -n for payload construction.BASE="https://polyhub.skill-test.bedev.hubble-rpc.xyz"
AUTH=(-H "Authorization: Bearer $POLYHUB_API_KEY" -H "Content-Type: application/json")
GET /api/v1/portfolio/statsGET /api/v1/user/feesPOST /api/v1/positions/sellPOST /api/v1/place-orderField semantics:
positionsValue: official Polymarket positions valueavailableBalance: official USDC balance minus unsettledFeestotalPnL: official Polymarket total PnLunsettledFees: unsettled Polyhub fees in USDCinvestedCapital: Polyhub-calculated invested capital for copy-task historyUI alignment:
poly_copy portfolio header uses this endpointUSDC Balance uses availableBalanceAccount Value uses availableBalance + positionsValuecurl -sS --fail-with-body "${AUTH[@]}" \
"$BASE/api/v1/portfolio/stats"
Validation:
limit must be positive.offset must be zero or greater.curl -sS --fail-with-body "${AUTH[@]}" \
"$BASE/api/v1/user/fees?limit=20&offset=0"
Always ask for:
tokenIdsizesideapiKeyapiSecretapiPassphraseAlways confirm:
organizationIdsignWithsafeAddressDecision rules:
isMarketOrder=true.price and isMarketOrder=false.side to uppercase.PAYLOAD="$(jq -n \
--arg organizationId "..." \
--arg signWith "..." \
--arg safeAddress "0x..." \
--arg tokenId "..." \
--arg side "BUY" \
--arg apiKey "..." \
--arg apiSecret "..." \
--arg apiPassphrase "..." \
--argjson size 10 \
--argjson isMarketOrder true \
'{
organizationId: $organizationId,
signWith: $signWith,
safeAddress: $safeAddress,
tokenId: $tokenId,
size: $size,
side: $side,
isMarketOrder: $isMarketOrder,
apiKey: $apiKey,
apiSecret: $apiSecret,
apiPassphrase: $apiPassphrase
}')"
curl -sS --fail-with-body "${AUTH[@]}" \
-X POST "$BASE/api/v1/place-order" \
-d "$PAYLOAD"
Sell the entire position for a given token ID. Partial sell is not supported.
Required field: TokenId
Before calling: confirm with the user. This action is irreversible.
PAYLOAD="$(jq -n \
--arg TokenId "..." \
'{TokenId: $TokenId}')"
curl -sS --fail-with-body "${AUTH[@]}" \
-X POST "$BASE/api/v1/positions/sell" \
-d "$PAYLOAD"
Response: success, totalAmount, soldPositions[] (with marketTitle, outcome, amount, price, totalPnl, marketUrl), skippedPositions[] (with reason).
Use /positions/sell when the user wants to sell a specific position directly by token ID. Use /copy-tasks/{taskId}/sell when managing positions within a copy task.
400: invalid payload401: missing or invalid API key404: delegated access not registered5xx: server error