docs(bankr): weekly skill sync — NFT bids and listings, contract deploy, holders endpoint, gateway daily budget - #641
Open
sidrisov wants to merge 2 commits into
Open
docs(bankr): weekly skill sync — NFT bids and listings, contract deploy, holders endpoint, gateway daily budget#641sidrisov wants to merge 2 commits into
sidrisov wants to merge 2 commits into
Conversation
Shipped this week: - NFT: collection-wide bids (create/view/cancel), best-offer lookup with a "no offers" answer, and offer/listing support on every EVM chain - Contract deployment + source verification via the agent - GET /tokens/holders — holders joined to Bankr identity, paginated - LLM gateway daily spend budget (402 daily_budget_exceeded, /v1/credits view) - New gateway models (grok-4.6, qwen3.8-max) and Sonnet 5's permanent rate - Avantis v2: TP/SL that actually lands, unreachable levels refused up front, ~118 pairs, no TP/SL in wallet mode - Exact-output swaps on same-chain Solana - x402: $0 challenges are payable; a multi-rail 402 is priced on the rail we sign Gaps caught while syncing: - NFT listing management (list/cancel/view) was never documented, and the NFT chain list was three chains behind - Arbitrary-transaction chain table was missing four chains - bankr webhooks was entirely undocumented — new references/webhooks.md - bankr files mv/rename/info, wallet sign/submit forms, login siwe, update - /tokens/* public endpoints - token.balance is a string, not a number - x402 smart-account payers: deployed ERC-1271 and EIP-7702 are accepted, counterfactual ERC-6492 is rejected (the skill claimed 6492 worked) - CLI email logins are listed and revocable in Active sessions - Max Mode out-of-credits behaviour, gateway 503 provider_unavailable, the Anthropic error envelope on /v1/messages, and the stripped OpenRouter routing controls
…ope claims Review pass over the weekly sync caught three claims that didn't hold: - NFT operations are Base / Ethereum / Polygon / Unichain / Arbitrum / Robinhood Chain, not every EVM chain. World Chain and BNB Chain have no marketplace coverage, so a collection on either is rejected. The tools' supported-chains metadata is tool availability, not marketplace reach — reading it as coverage was the error. - Exact-output swaps target the output, they don't guarantee it. The input is sized from a theoretical price on both EVM and Solana and pool impact then applies to the fill, so the delivered amount lands close to the target rather than on it. Point readers at minBuyAmount for a hard floor. - The Anthropic error envelope on /v1/messages covers request and streaming errors only. Auth and billing errors (401/402/403) use the OpenAI envelope on every surface — which is where the insufficient_credits vs daily_budget_exceeded check reads from. Also: Avantis pair count is live-fetched and drifts, so 100+ rather than a fixed figure; session revocation propagates within seconds and the MFA step-up covers any session, not just someone else's; webhook names cap at 47 chars; the daily budget applies to Max Mode runs specifically, since ordinary agent runs don't draw on LLM credits; dropped a gateway instance-count aside.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Weekly sync of the
bankrskill against what the platform can actually do. Split into what shipped this week and pre-existing gaps the sync surfaced.Shipped this week
NFTs — the sell and bid sides are now usable end to end
Deploy and verify contracts
msg.senderinside the constructor is the proxy, not your wallet — a constructor that assigns ownership or mints tomsg.senderattributes those to the proxy. Address is deterministic and known pre-broadcast; deploys carry no native value; not for token launches.GET /tokens/holdersfilter=bankrfor the Bankr users who hold it,filter=allfor the full on-chain ranking annotated where we recognise the address. Documented alongside the caveats:balanceis a raw integer string, cursors are query-scoped, and it's a live feed rather than a snapshot (the agent's holder snapshot stays the right tool for airdrop targeting).LLM gateway — daily spend budget
dailyBudgetshape on/v1/credits, that it's omitted entirely when uncapped, that over-budget spend returns402 daily_budget_exceeded(distinct frominsufficient_credits, and needing a different fix), that read-onlyGETs keep working so you can find out when you're unblocked, and that it's a guardrail with a small overshoot rather than an accounting boundary.Gateway models: added
grok-4.6andqwen3.8-max.Avantis (v2)
Exact-output swaps on same-chain Solana — "buy exactly N TOKEN" now sizes the input there too, rather than throwing.
x402 —
$0challenges are signed rather than rejected as unparseable, and a multi-rail 402 is priced and bounded on the rail Bankr will actually sign, so a seller listing an unsupported rail first no longer makes a payable endpoint read as unpriceable.Gaps caught while syncing
These were already true; the skill just didn't say so (or said the wrong thing).
bankr webhookswas undocumented — a whole command family for deploying handlers that turn an external event into an agent run. Newreferences/webhooks.mdcovering the handler contract, provider templates, the REST surface, and the security point that matters: the trigger URL is public, thegenerictemplate verifies nothing, and every accepted POST is an agent run on your wallet.bankr files mv|rename|info, the realbankr wallet sign/wallet submit tx|jsonforms,bankr login siwe,bankr update./tokens/*endpoints (search,trending,balance,balances) weren't listed at all.token.balanceis a string, not a number — parsing it as a float rounds high-decimal tokens up, and a max-size trade built from a rounded balance reverts on-chain.invalid_permit2_signature, because such a payment would verify and then fail to settle.bankr logoutonly clears the local config — it revokes nothing server-side.503 provider_unavailable, the two distinct causes of a402, the OpenRouter routing controls that are stripped rather than forwarded, and which errors on/v1/messagesuse the Anthropic envelope versus the OpenAI one.Review pass
The second commit corrects three claims from the first that didn't survive verification, worth calling out since two were newly introduced rather than inherited:
supportedChainsmetadata as marketplace coverage; it's tool availability. World Chain and BNB Chain carry no OpenSea chain mapping, so collections there are rejected outright.minBuyAmountis the hard floor; the exact-output amount isn't./v1/messagescovers request and streaming errors only. Auth and billing errors use the OpenAI envelope on every surface — which is exactly where theinsufficient_credits/daily_budget_exceededdistinction is read from, so the original phrasing would have misled anyone acting on it.Plus smaller precision fixes: the Avantis pair count is live-fetched and drifts (so no fixed figure), session revocation propagates within seconds rather than instantly and the MFA step-up covers any session, webhook names cap at 47 characters, and the daily budget applies to Max Mode runs specifically since ordinary agent runs don't draw on LLM credits.
Files
SKILL.mdplusreferences/:nft-operations,arbitrary-transaction,llm-gateway,market-research,leverage-trading,token-trading,portfolio,files,safety,x402-cloud, and a newwebhooks.