I build identity and payment infrastructure for the agentic web — end-to-end and solo, under UIG Studios LLC. Shipped deepest on Sui, taking the same settlement-semantics work cross-rail to Solana / SVM and EVM.
The throughline: x402 proves an agent paid · my settlement-receipt binding proves the payment maps to the action · PoR proves the actor is a real, human-backed entity. Together that's a verified agent — and I've shipped a working piece of every layer.
Right now: my x402 Settlement-Receipt Binding extension is open for review in the Linux Foundation's x402 repo, its conformance gate reproduced green by independent issuers across two rails. An outside implementer who ran a clean-room recompute against those vectors pushed back on what a passing signature actually proves; I turned that into normative §5 text — a green gate establishes key custody and byte-integrity, not that the issuer was honest or that the result is an independent finding — and they confirmed it belongs there. Meanwhile the same settlement-semantics work is going cross-rail to Solana / SVM, running end-to-end in an x402 charging agent (an EV that pays for its own charge — mainnet on Sui, settling on Solana devnet).
A Sui-native proof-of-personhood credential: prove you're a real, unique human (passkey + zkLogin onboarding, no personal data captured) and raise your assurance through verifiable real-world actions.
- Live credential, attestor & Move package · SDK on npm →
por-sdk(Apache-2.0) - Device-attested real-world action — App Attest proven on a real iPhone: a walk mints an on-chain Verified Real credential, end-to-end, with a device nullifier that dedupes one credential per device — built and proven; enforcement still gated off during rollout
- por-proof-of-real.netlify.app · mainnet contracts, testnet attestor — personhood, not "sybil-proof"
- x402-sui-stack — the x402 builder stack for Sui (Sui Overflow 2026): the facilitator + tooling + a one-command demo that settles a real $0.01 USDC payment on mainnet and lets anyone recompute it in-browser → live · code
- x402 facilitator that settles on Sui — non-custodial, zero-fee, live on mainnet → sui-x402-facilitator · live facilitator
- First x402 payment on Litecoin — deployed the canonical x402 Permit2 proxies to LitVM (Litecoin's EVM L2, LiteForge testnet) and settled the first payment through them — provable on-chain: the proxy's tx history begins with it → litvm-x402 · testnet; day-one facilitator support planned for their mainnet
- Authoring a proposed x402 standard extension — Settlement-Receipt Binding: bind an on-chain settlement to a signed execution receipt, recomputable from published bytes with an independent verifier — its conformance gate reproduced green by two independent issuers across two rails, plus a live gasless-Sui settlement vector → x402-foundation/x402#2666
- Taking the standard cross-rail — a conformance demo for Solana's
uptoscheme proving settlement-receipt binding on SVM, plus shaping theverify()-soundness invariant on Hedera (#2701) and Solana's allowance-draw design (#2699); one binding, multiple rails (EVM · SVM · Sui) - x402-pilot — an open-source, non-custodial x402 dev tool + conformance MCP (Apache-2.0)
An EV that pays for its own charge, no human in the loop — the whole stack composed in one artifact:
- x402
uptometered billing + my Settlement-Receipt Binding (#2666) over a real-world action — authorize a ceiling, meter the kWh, settle the actual, emit a receipt an independent checker verifies - PoR-gated — only a verified human's agent may charge (the personhood layer, live)
- mainnet-proven on Sui, also settling on Solana devnet; bridged to real charging networks via OCPI (DeCharge / Starpower-ready)
- x402-charging-agent · vehicle + charging network mocked behind their real interfaces
- FairLine — a risk-managed, multi-user liquidity vault on DeepBook Predict ("be the house, verifiably"): senior/junior tranches, capacity cap, on-chain reserve floor + emergency pause, redemption-anchored NAV · testnet, unaudited
- Gulp City — an installable 3D PWA arcade game
- Jamie Buddy — a local-LLM writing assistant
- Yomp — the consumer front door for PoR: walk to prove you're real (Sui testnet). The walk is what mints the credential's real-world-action tier.
8 pull requests merged into repos I don't own, across 5 organisations — someone else's maintainer decided each one was worth carrying:
- openmed (medical NLP) — release signing & supply-chain evidence: the publish workflow now attaches its SLSA provenance bundle and artifact digests to the tagged release and keylessly signs every wheel and sdist with Sigstore, so a release can be verified offline with no round trip to GitHub's attestation API. Structured so evidence generation can never gate the PyPI upload — but evidence that is produced must verify against the exact workflow identity and release commit, or the job fails → #1604. Earlier: an interactive synthetic-data Gradio de-identification demo, and a memory-mapping toggle for the MLX weight-loading path, both with import-safe test coverage → #1023 · #1024
- Tessera — a
recovery_hint()API across the error types of a local-first AI testing IDE (Rust) → #103 - x402 — a cross-SDK
exacterror-code parity fix (the TS SDK was the lone outlier vs Go / Python) → #2744 · the project moved under the Linux Foundation in July 2026, so this now sits in the standard's own repo - huggingface.js — two correctness fixes where the existing tests looked like they covered the contract. The public
language()lookup usedcode in TABLE, andinwalks the prototype chain, solanguage("toString")returnedObject.prototype.toString— a function — out of a signature typedLanguage | null; the invalid-code test passed only because its input wasn't onObject.prototype→ #2320. And in@huggingface/hub, a completed SHA-256 hash left its abort listener attached, so a later abort of that signal terminated a worker already returned to the pool and rejected an already-returned generator. Fixed in one place —cleanup()now drops the listener on every exit path — with a deterministic worker stand-in to reproduce it → #2325 - Nodle rollup — migrated the L1 bridge's deposit & quote paths off the deprecated ZKsync Mailbox to Bridgehub (Solidity). My commits landed with authorship preserved in #122 after the maintainer validated the work against a fork of live-mainnet state and hardened it; the sequencing issue it raised shipped alongside as a withdrawal-replay guard. Originally submitted as #121, closed in favour of the hardened branch · earlier, docs for manual vested-grant claims → #120
Open and in review: a release run-ledger binding build artifacts to their gate decisions in openmed (#1899).
Contributing upstream to Mysten's Sui stack — filed a cached-price payment race in @mysten/walrus that was taking out mainnet writes (ts-sdks#1127), reviewed the maintainer's fix (#1128), and reviewed the MemWal relayer's recovery for the same class of bug. Reported that setSender() was a silent no-op behind Seal's owned-object access pattern, with a two-SDK-version repro (seal#507) — the SDK behaviour it described was fixed in ts-sdks#1136 and shipped in 2.20.3.
Available for contract, consulting, grants & engineering roles — identity and x402 / agentic payments, across Sui, Solana/SVM and EVM. Deepest on Sui, actively building cross-rail.
📫 tjagodka@gmail.com · 𝕏 @DrVelvetFog · 🌐 portfolio · 💼 Algora · 🏢 UIG Studios
Lines I don't cross: no custody · no token-for-money sales · no PII capture · honest labeling (testnet/unaudited stated plainly).

