Repository navigation
feat: add x402check action provider (TS + Python) - #1613
Open
nwilliams005 wants to merge 3 commits into
Open
nwilliams005 wants to merge 3 commits into
nwilliams005 wants to merge 3 commits into
Conversation
🟡 Heimdall Review Status
|
nwilliams005
force-pushed
the
feat/x402check-action-provider
branch
from
October 31, 2026 22:04
e625797 to
b2390d7
Compare
Adds x402checkActionProvider / x402check_action_provider with preflight_check and verify_payto so agents can trust-check an x402 seller URL (ok|caution|avoid + history) before signing USDC. Also exports createX402checkBeforePayment, a beforePayment-compatible helper for the hook in coinbase#1402 / coinbase#1454 (fails closed; provider-neutral). Billing note: each check is $0.002 Exact USDC on Base via x402 v2; pass a payment-wrapped fetch or PAYMENT-SIGNATURE headers. Refs: coinbase#1402 coinbase#1454
nwilliams005
force-pushed
the
feat/x402check-action-provider
branch
from
October 31, 2026 22:05
b2390d7 to
7a6fc4a
Compare
caiovicentino
added a commit
to caiovicentino/jev-risk-check-provider
that referenced
this pull request
Nov 1, 2026
…402check/agentkit (guarded AgentKit wallet) @x402check/ai-sdk 0.1.0: x402checkApproval, a toolApproval policy for generateText and streamText. A mapper names the counterparties in a value-moving tool's input; allow -> approved, warn -> user-approval (or denied), block and not_verified -> denied, with x402check's reasons. The check's context is the latest user message and the tool results after it, plus the call; context: false sends nothing. An approval replay reuses the call's verdict for five minutes. x402checkTool lets the model check an address on its own. @x402check/agentkit 0.1.0: guardWalletProvider wraps an AgentKit EvmWalletProvider in a Proxy that routes every signature through the client's guardAccount (AgentKit's x402 payments sign typed data through toSigner()); sendTransaction and nativeTransfer are simulated and checked, and sendTransaction sends the checked copy; raw hashes and other members that sign or send refuse. x402checkActionProvider adds check_counterparty without decorators or AgentKit telemetry, with AgentKit's own zod. Both verify each attestation against its request with x402check's key pinned and fail closed. CI runs both. The thread watch follows coinbase/agentkit#1613, an "x402check" provider for x402check.dev, a different service. ElizaOS waits: its registry closed on 2026-09-23 and no wallet plugin has a pre-sign hook. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
caiovicentino
added a commit
to caiovicentino/jev-risk-check-provider
that referenced
this pull request
Nov 1, 2026
…coinbase/agentkit#1613 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…on shape Make createX402checkBeforePayment / create_x402check_before_payment return the exact X402BeforePaymentDecision shape from coinbase#1454 ({ abort, reason?, code? }) so x402check drops into X402Config.beforePayment. - Map ok|caution|avoid (+ live payTo/network vs history) into decision codes - abortOnCaution + failOpen policy knobs; payTo mismatch always aborts - Local compatible context/decision types (no unmerged coinbase#1454 imports) - Python parity helper + tests; README one-line drop-in example - Keep standalone x402check action provider Related: coinbase#1402, coinbase#1454
Update provider copy, READMEs, and payment-hint text to match the live x402check.dev unit price (was $0.002).
This branch has not been deployed
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.
Summary
Adds an x402check action provider so AgentKit agents can preflight an x402 seller endpoint before paying (trust verdict + payTo/price/uptime history).
Also exports a drop-in
beforePaymenthelper that returns the exact#1454decision shape ({ abort, reason?, code? }), so x402check plugs into the neutral pre-payment seat without a second surface. Standalonepreflight_check/verify_paytoactions remain available.TypeScript (
typescript/agentkit)x402checkActionProviderwithpreflight_checkandverify_paytoactionscreateX402checkBeforePayment— returns#1454'sX402BeforePaymentDecisionshape (local compatible types until that PR merges; no unmerged imports)avoid, optional abort oncaution, always abort on livepayTo≠ contextpayTo, fail-closed by default (failOpenopt-in)typescript/.changeset/x402check-action-provider.mdPython (
python/coinbase-agentkit)X402checkActionProvider+create_x402check_before_payment+ schemas + README + pytestchangelog.d/1402.feature.mdDesign notes
https://x402check.dev(overridable)Test plan
Related: #1402, #1454
Implements the
#1454X402BeforePaymentDecisionshape as a drop-in helper; does not land the neutral hook itself (that lives in #1454). Happy for maintainers to review the two PRs separately.