# === / === # source: frontend/public/index.md --- title: Jesse Anderson description: 30-year coder. I build platforms. Currently obsessed with AI infrastructure. url: / slug: home navLabel: Home summary: orientation, three-paragraph summary --- # Jesse Anderson > Bay Area, California. Fifty. Father of four, grandfather of two. **30-year coder. I build platforms. Currently obsessed with AI infrastructure.** Mornings I run platform engineering at Kora Labs, which builds [ADA Handles](https://handle.me) and [HAL](https://hal.handle.me) on Cardano. Afternoons I'm usually deep in AI work: the Codex CLI fork I tuned to drive a local 9B model, the Discord agent that handles ops for the Handles ecosystem, or the voice bridge that lets my third son redirect his Roblox scenes from across the room. The platforms are at [/work](/work). The rig and the tooling are at [/projects](/projects). The long arc is at [/about](/about). What's on my screen this week is at [/now](/now). This site reads okay for people. It's also built to be read by agents. If that's the angle you came in on, [for-agents](for-agents) documents it. # === /about === # source: frontend/src/pages/about.mdx --- layout: ../layouts/Base.astro title: About · Jesse Anderson description: 30 years of obsessions, four boys, two granddaughters, currently deep in AI infrastructure. slug: about navLabel: About navOrder: 3 summary: non-linear arc, family, what I'm into ---

My arc, multiple passions

  1. Age 8. TI BASIC on a TI-99/4A. The hook set early.
  2. School years. Apple BASIC & LOGO. Found order and passion in violin/fiddle.
  3. 16 - 18 Flight lessons, Civil Air Patrol, Search and Rescue.
  4. U.S. Air Force, 1994-1998. Aerospace Ground Equipment Journeyman
  5. Hawaii, 1997-1999. Two hats: Realtor and the firm's principal IT person.
  6. Tropical Connection, 1999-2001. Part owner of a flowers wholesaler and IS Manager. VB, Visual FoxPro, Magic Btrieve.
  7. Smart Solutions, 2002-2007. C#.NET, MSSQL - my Microsoft years
  8. Pixelsilk, 2007-2012. Part owner and product director, still coding.
  9. Ashford University, 2012. Formal degree is in Education, Language Learning.
  10. Xero, 2013-2018. 100+ two-week sprints on a 2-million-user SaaS.
  11. Capital One, 2018-2022. Master Platform Engineer at a top-10 US bank.
  12. 2021. Kora Labs founded with my son. Cardano picked for the academic discipline, decentralization, and the RealFi mission.
  13. May 2022. Left Capital One full-time for Cardano.
  14. 2022-present. Building ADA Handles, H.A.L., and K.O.R.A. full-time.
  15. Today, PapaGoose LLC. My own AI-focused company. The current immersion.

Proud father of four boys.

Baseball is a multi-generational thread. I played all through school and some adult league. The older boys played, and now I coach the two younger boys.

{/* */}

What I'm into.

# === /for-agents === # source: frontend/src/pages/for-agents.mdx --- layout: ../layouts/Base.astro title: AI Standards · Jesse Anderson description: Every machine-readable surface this site exposes, with live links. slug: for-agents navLabel: For-Agents navOrder: 5 summary: every machine-readable surface this site exposes ---

Surfaces.

Why.

I think coding is getting replaced by AI faster than the rest of the stack is catching up. I'd rather invest in standards, architecture, and machine-legibility than chase ergonomic frameworks for humans. Agents should have first-class access to what's on this site. Engineers should be able to look at the same plumbing and decide for themselves whether I know what I'm doing.

Stack: vanilla Astro (no UI-framework integrations), a Lambda backend, no React, no TypeScript.

# === /projects === # source: frontend/src/pages/projects.mdx --- layout: ../layouts/Base.astro title: Projects · Jesse Anderson description: OpenClaw bridges, Local models, Modified Codex slug: projects navLabel: Projects navOrder: 2 summary: the rig, the forks, codex-local on a 9B model, operating doctrine ---
I built this so my 8-year-old could direct his Roblox, Blender, and Daz scenes through natural language. He says "make Torus.1 50% thinner on the Z-axis," and the live environment updates. Under the hood: an AI helper bridge through OpenClaw driving live scene state. Three things crossed here that I cared about. AI work. My long-running 3DCG interest. A kid who'd already started building in Blender, Roblox Studio, and Suno. codex-local is my Codex CLI fork. I tuned it to babysit a local model through a structured task list. It runs multi-turn agentic coding sessions, edits multiple files, completes the work, and does it with just Qwopus-3.5:9B underneath. What makes this work isn't the model. It's everything I built around it: 1. **Trim the tool menu** — Codex has ~120 tools. Small models get confused by big menus; we show them ~10. 1. **Plain-English tool cheat sheet** — We paste simple "here's how each tool works, with an example" text into the system prompt. 1. **Rewrite shell-ish tool names** — Models call `ls`, `cat`, `grep` like tools. We catch that and convert to a proper `shell` call. 1. **Browser user-agent for curl** — Sites block `curl/8.0`. We auto-add a real browser UA to any curl command. 1. **Web search + web fetch** — No built-in web search in local mode, so we added two tools for looking up real API docs. 1. **Fix broken patches** — Small models mangle patches: (a) write git-diff format, (b) leave `@@ -1,6 +1,6 @@` line numbers, (c) forget `+` prefixes and closing markers. We fix all three automatically. 1. **Better patch error messages** — Default errors are cryptic. We rewrote the common ones to explain what to try next. 1. **Better network errors** — Instead of "error sending request", we show the real cause (DNS, TLS, connection refused, etc.). 1. **Catch announce-without-act** — When the model says "Now I'll do X" and stops, a judge model spots it and we re-prompt "take the action." Up to 3 retries. 1. **Stop repetition** — (a) Same tool + same args 3× → STOP block in next prompt. (b) Same file failing 3× with different commands → same STOP block. 1. **Trim old conversation** — Keep the most recent turn intact, summarize older turns, drop stale file reads, pin errors so the model can't forget them. 1. **Log the model's thinking** — Reasoning text goes to debug logs so we can explain weird behavior later. 1. **Reroute wrong picks** — If the router picked "text-only model" but the conversation has tool calls, we upgrade to the tool-capable Coder. 1. **Diagnostic logs** — Extra logging for "which tools did we pass?", "did the STOP fire?", "what did the bail judge decide?" 1. **LM Studio / OpenAI-compat support** — Ollama and OpenAI-style servers disagree on URLs, payload shape, tool-call encoding, etc. A "flavor" switch lets one codebase talk to both. 1. **Token + time budget knobs** — New per-role `max_tokens` and `timeout_seconds` in `config.toml`. Set either to `0` for unlimited (reasoning models need this). 1. **Pin current file contents** — Models forget a file changed and generate patches based on the old version. We pin live on-disk contents at the top of the prompt. 1. **Catch thinking loops** — Some models spiral: "Actually, wait. Hmm. Let me reconsider." We watch the stream for 6+ self-doubt phrases after half the token budget is burned, abort mid-generation, and re-prompt "stop second-guessing." 1. **Stream the coder's output** — To make the anti-spiral work, we switched from "send, wait, parse" to "open stream, watch tokens, abort if needed." Also lets us log reasoning in real time. 1. **Skip extras in local-only mode** — Normally a router, reasoner, and compactor help the main model. Locally we can't afford extras, so the Coder handles everything. Most local-model coding agents stall the moment a task goes past trivial. With these nudges in place, 9B parameters really work. - **Main workstation:**
  • 3080 10GB + 1080 8GB (Monitor hooked up to Intel iGPU)
  • 13th Gen i9 + 64GB DDR5 6800
- **Laptop:**
  • 3080 8GB (Screen running from Intel iGPU)
  • 11th Gen i7 + 32GB DDR4 3200
- **LLM Servers:**
  • Ollama - main install (Using `OLLAMA_FLASH_ATTENTION=1` and `OLLAMA_KV_CACHE_TYPE=q8_0)
  • llama.cpp - used to try MoE models across both GPUs and CPU offloading
  • LM Studio - used for qwopus (doesn't run in Ollama)
- **Tested Models (3080 10GB):**
  • gemma4:e4b
  • gemma4:e4b-q6_k (Impressive runner-up)
  • qwen3.5:9b-opus-openclaw-distilled-iq4_xs
  • qwen3.5:9b-opus-openclaw-distilled-q4_k_m
  • qwen3.5:9b-opus-openclaw-distilled-q6_k
  • qwen3:14b-iq4_xs
  • qwopus3.5:9b-v3-q6_k (WINNER!) - **Tested Models (3080 8GB):**
  • deepseek-r1:8b
  • qwen3.5:9b-uncensored-aggressive-q4_k_m
- **Tested Models (1080 8GB):**
  • qwen3:4b
  • qwen3:8b
  • qwen3.5:9b-iq4_nl
  • qwen3.5:9b-q4_k_m (works great as a classifier!)
- **Tested Models (3080 + 1080 18GB):**
  • devstral-small-2:Q4_K_M (CPU offload)
  • gemma-4-26b-a4b-it:Q4_K_M (CPU offload)
  • qwen3.5:35b-a3b (CPU offload)
{/* A multi-agent CLI router with the same docs-first discipline. It routes prompts across specialized workers that share context. The starting assumption: no single model is the right choice for every step in a long task. It pairs with codex-local on the local side and with cloud providers when something needs the bigger model. */} - **Find the upstream fix.** Mitigations, fallbacks, band-aids are the worst. If we don't own upstream, then mitigate. - **Docs-first.** Then architecture. Docs are load-bearing artifacts the agent reads on every turn. - **Long autonomous runs are normal.** I let agents work overnight regularly. - **State in files, not in-context.** Long runs survive crashes, context exhaustion, model swaps, and OAuth expirations. The agent rehydrates from disk. - **No green-by-inference.** Verify before declaring done. Check the deployed version, inspect the running process, read the Discord channel. - **AI is infrastructure, the same as a database.** I instrument it, test it in tiers (hermetic, e2e, live-canary), and put silent failures on a heartbeat (OAuth expiry, model health) the same way I'd put a dead database on one. - **Platform-engineering reflexes don't go away just because it's AI.** I want redundancy, failover, quick recovery, auto-scaling, and reproducible deployment, with low operational overhead.
# === /work === # source: frontend/src/pages/work.mdx --- layout: ../layouts/Base.astro title: Work · Jesse Anderson description: The work that shipped. ADA Handles, HAL, K.O.R.A., clicked.bio, Remindsly slug: work navLabel: Work navOrder: 1 summary: ADA Handles, HAL, K.O.R.A., PapaGoose, prior chapters ---
Co-founded with my second-eldest son in 2021. I run platform engineering and the AI ops layer. The platform is a constellation of services across the [github.com/koralabs](https://github.com/koralabs) namespace. The work in impact terms: - **Converted to completely decentralized minting.** Anyone can mint or edit a handle on-chain within the contract's rules. Every major Cardano wallet adopted the new policy. - **Contracts that upgrade in place.** The "withdraw 0" / observer trick. Cardano lets you replace a contract's logic without moving the locked UTxOs anywhere new, if you set it up right. We worked out the technique against live state. It's the reason our cutover doesn't need a state migration or chain downtime. - **NFT-based OAuth where the identity is your handle.** Hold the NFT, sign in to anything that speaks OAuth. Web2 SSO ergonomics on a self-custody wallet, no custodian holding your keys. - **Merkle Patricia Tries inside on-chain code.** Ported the structure into Aiken so contracts can prove membership in a dataset that's far too big to store on chain. - **Browserless dynamic SVG rendering at scale.** Every handle's NFT image is typographic SVG generated server-side. Hundreds of thousands of unique renders across reissues and personalization. - **Serverless Cardano Node on AWS Fargate.** We ran the node, Ogmios, and the Handles API on Fargate plus EFS, picking up redundancy, failover, auto-scaling, and reproducible deployment. The trick that made it work: cross-host node-socket connectivity, solved with `socat` bridging a Unix domain socket to TCP. - **On-chain IPFS content validation.** A Cardano smart contract validates the contents of an IPFS file by matching the CIDv1 embedded hash against bytes supplied in the redeemer. Around the 1KB to 12KB sweet spot for content size. Used live for personalization. - **Discord as a production control plane.** Tickets land there. Deploys go through there. Alerts wake people up there. I built the bot, the CloudWatch alerting pipeline, and the deploy automation that operators trigger from chat threads. The autonomous-agent layer on top of all this is K.O.R.A. - **Two parallel cutovers - contract language and transaction tooling** Smart contracts moving to Aiken: DeMi and SubHandles are there, Personalization next. The TX-building library moved to `@cardano-sdk/*`. - **[marketplace.handle.me](https://marketplace.handle.me)** handles secondary trading on-chain. - **[chat.handle.me](https://chat.handle.me)** runs direct messaging keyed to handle identity. - **[secrets.handle.me](https://secrets.handle.me)** is research-stage, looking at account recovery via social trust graphs. - **[merch.handle.me](https://merch.handle.me)** and [metaverse.handle.me](https://metaverse.handle.me) are announced and in flight. A second product line, built on the on-chain primitives Handles introduced. We expose it as an SDK, a minting engine, and 3D-asset support, so other Cardano teams can ship NFT collections without rebuilding the contracts and orchestration we already worked through. - 5 ASSETS! - each H.A.L. mint comes with four additional assets (five total assets per mint)
- 100 $0 LEGENDARY Handle raffle tickets - randomly selected during the mint
- 100% 3D - each H.A.L. is a 100% 3D asset, equipped with multiple 3D assets, all identified in the datum. The 2D image is a direct Blender render of the 3D H.A.L.
- FOURTEEN 1-OF-1s - 14 available legendary 1-of-1s (24 total including KOLs and Founders)
- Virtual SubHandle Tracking!
  - Each H.A.L. gets a free Virtual SubHandle in the format of $designation@hal that tracks the address of your H.A.L.
  - Two years of Virtual SubHandle subscription costs are covered up-front, after which there is no obligation to continue to use it.
- Unity & Unreal Engine FBX Files and Web GLB files
- $handle ecosystem benefits (discounts, early/final access, etc)
- CIP-68 3D Personalization
- 13 project collaboration (whitelists, custom assets, and a few 1-of-1s)
- OG and 2-character Handle whitelist, and ~1000 project giveaway whitelist spots.
- Expansive lore with factions, battles, ranking, etc
- Royalties greater than 2.5% (for the original artist) go to a H.A.L. community treasury. High royalties during mint and before staking mechanism is live.
- A truly unique, first of it's kind, DECENTRALIZED MINTING experience. All 10K H.A.L.s are minted through smart contracts that also control uniqueness and whitelists. All to be OPEN-SOURCED after launch.
A multi-component, autonomous, self-repair agent running day-to-day ops for the Handles ecosystem interfacing via Discord. She triages tickets, moderates, monitors, responds to alerts, orchestrates deployments, and synthesizes knowledge from the ecosystem history. The pipeline is a chat gate into an AI provider into an executor into a worker. She tests herself in three layers: hermetic with mocks, real-process against test services, live-canary on real data with no side effects. Nothing ships green-by-inference. She uses Discord as the operator UI on purpose. Pinned messages contain the agent's current settings. Operators can use plain language to flip toggles ("turn chat responses off") or turn knobs ("increase GIF responses to 40%"). Alerts post to operator channels with enough metadata for K.O.R.A. to triage them. When someone types "deploy to mainnet" or "troubleshoot this ticket," K.O.R.A. actually does the deploy or looks into the ticket. Two AI-driven products. [clicked.bio](https://clicked.bio) is an AI-driven links and posts platform for content creators and the agencies that manage them. [Remindsly](https://remindsly.com) is an AI-driven reminder system that keeps after you until the task gets done. ### Capital One, Master Platform Engineer, 2018 to 2022 I designed an autoscaled serverless Fargate platform that streamed 25,000 synthetic Kafka records per second from our ML team's synthetic data models. Day-to-day I owned vulnerability monitoring and threat scoring across our team's systems. ### Xero, Senior SWE and DevOps, 2013 to 2018 Five years and roughly a hundred two-week sprints on a 2-million-user SaaS accounting and payroll platform. I built the contextual auto-complete search: two million indexed objects on AWS ElasticSearch, queried dozens of times per second.