{"source":"github","fetchedAt":"2026-11-11T12:48:32.973Z","count":22,"projects":[{"name":"kenfinch.ca","fullName":"geoffsdesk/kenfinch.ca","description":"Buyer-first real-estate and mortgage site for an Oakville broker: Next.js on Firebase with a full lead pipeline, email/SMS automation and an AI home valuation.","url":"https://github.com/geoffsdesk/kenfinch.ca","homepage":null,"language":"TypeScript","stars":0,"topics":[],"pushedAt":"2026-11-05T10:08:22Z","createdAt":"2025-07-25T17:57:28Z","archived":false,"fork":false,"links":[],"image":null},{"name":"memanto-mcp","fullName":"geoffsdesk/memanto-mcp","description":"MCP server for Memanto, a different take on RAG-style recall: typed semantic memory with opinions, built for agents in regulated industries where what gets remembered has to be auditable.","url":"https://github.com/geoffsdesk/memanto-mcp","homepage":"https://github.com/geoffsdesk/memanto-mcp","language":"Python","stars":3,"topics":["agentic-memory","anthropic","claude","mcp","memanto","moorcheh","rag","semantic-memory"],"pushedAt":"2026-10-25T12:57:55Z","createdAt":"2026-05-08T02:18:53Z","archived":false,"fork":false,"links":[],"image":null},{"name":"ai-optimized-cluster","fullName":"geoffsdesk/ai-optimized-cluster","description":"A GKE cluster configured and tuned for AI workloads: accelerators, networking, storage and scheduling set up the way inference and training jobs want them.","url":"https://github.com/geoffsdesk/ai-optimized-cluster","homepage":null,"language":"TypeScript","stars":0,"topics":[],"pushedAt":"2026-10-25T01:35:44Z","createdAt":"2025-08-28T04:07:04Z","archived":false,"fork":false,"links":[],"image":null},{"name":"loadgen-gke","fullName":"geoffsdesk/loadgen-gke","description":"A load generator for GKE that ships with its own observability. One script deploys a Python workload simulator that stresses CPU, memory, network or storage in burst, sustained or variable patterns, alongside Grafana dashboards fed by Google Managed Prometheus, so you can watch the control plane (API server, scheduler, controller manager), the nodes and the workload itself react while the pressure is on. Built for capacity and scaling tests where the question is not just \"does it hold\" but \"what does the control plane do while it holds\".","url":"https://github.com/geoffsdesk/loadgen-gke","homepage":null,"language":"Shell","stars":0,"topics":[],"pushedAt":"2026-10-25T01:34:35Z","createdAt":"2025-08-14T00:07:28Z","archived":false,"fork":false,"links":[],"image":null},{"name":"deadhand","fullName":"geoffsdesk/deadhand","description":"Named after Dead Hand, the Soviet-era system built to answer a nuclear strike on its own if the people who would normally give the order were gone. This one is a dead man's switch for a person: it checks in with you on a schedule to verify you are alive, escalates through tiers of contacts and channels when you do not answer, and, once it is sure, carries out your last wishes. Work in progress: the tiered communication and verification are built; executing the wishes is not yet.","url":"https://github.com/geoffsdesk/deadhand","homepage":null,"language":"HTML","stars":0,"topics":[],"pushedAt":"2026-10-25T01:31:08Z","createdAt":"2025-05-16T17:25:48Z","archived":false,"fork":false,"links":[{"label":"Dead Hand on Wikipedia","href":"https://en.wikipedia.org/wiki/Dead_Hand"}],"image":null},{"name":"nexusgate","fullName":"geoffsdesk/nexusgate","description":"A Rust-based, AI-native API gateway that generates typed contracts between backend services and their consumers on the fly.","url":"https://github.com/geoffsdesk/nexusgate","homepage":null,"language":"Rust","stars":0,"topics":[],"pushedAt":"2026-10-25T01:30:59Z","createdAt":"2026-03-14T02:17:07Z","archived":false,"fork":false,"links":[],"image":null},{"name":"gke-upgrades-skill","fullName":"geoffsdesk/gke-upgrades-skill","description":"An agent skill that improves a foundation model's ability to help people plan GKE upgrades and troubleshoot them when things go wrong.","url":"https://github.com/geoffsdesk/gke-upgrades-skill","homepage":null,"language":"HTML","stars":2,"topics":[],"pushedAt":"2026-10-25T01:24:55Z","createdAt":"2026-03-18T23:05:49Z","archived":false,"fork":false,"links":[],"image":null},{"name":"ledger","fullName":"geoffsdesk/ledger","description":"An etcd shim for Kubernetes storage: an etcd v3-compatible API server backed by Google Cloud Spanner, so a control plane can use Spanner as its datastore.","url":"https://github.com/geoffsdesk/ledger","homepage":null,"language":"Go","stars":0,"topics":[],"pushedAt":"2026-10-25T01:15:04Z","createdAt":"2026-06-16T00:53:51Z","archived":false,"fork":false,"links":[],"image":null},{"name":"canadian-federal-mps","fullName":"geoffsdesk/canadian-federal-mps","description":"Open dataset: every sitting Canadian federal MP — roles, committees, public social accounts, ethics-registry declarations, registered lobbying contacts, votes, and documented cross-references. Compiled by SENTINEL. CC BY 4.0. Public role only; every record carries its source.","url":"https://github.com/geoffsdesk/canadian-federal-mps","homepage":null,"language":null,"stars":0,"topics":[],"pushedAt":"2026-09-27T23:01:56Z","createdAt":"2026-09-27T20:08:13Z","archived":false,"fork":false,"links":[],"image":null},{"name":"capacity-crunching","fullName":"geoffsdesk/capacity-crunching","description":"Capacity Crunching: an arcade bin-packing puzzle where the falling pieces are cloud workloads. Stack VMs, H100 GPUs, TPU pods, GKE nodes and Kubernetes pods into datacenter racks while watching the power budget: every chip adds watts, clearing lines cools the rack, blow past 100W and thermal throttling dumps garbage rows on you, and a GKE node always drags a control-plane overhead piece in behind it. Ten regions from us-central1 to global deploy, a top-10 leaderboard, retro fonts, HTML5 canvas, playable in the browser.","url":"https://github.com/geoffsdesk/capacity-crunching","homepage":null,"language":"HTML","stars":0,"topics":[],"pushedAt":"2026-09-27T05:09:31Z","createdAt":"2026-06-30T19:55:14Z","archived":false,"fork":false,"links":[{"label":"Play now","href":"https://geoffsdesk.github.io/capacity-crunching/"}],"image":"https://www.geoffsdesk.com/images/capacity-crunching.webp"},{"name":"executive-assessment-bank","fullName":"geoffsdesk/executive-assessment-bank","description":"Open, schema-validated bank of executive tests: EA/GMAT-style reasoning, MBA core exams, executive situational-judgment tests, cases, EMBA admissions diagnostics. CC BY 4.0 / CC0 / MIT.","url":"https://github.com/geoffsdesk/executive-assessment-bank","homepage":null,"language":"Python","stars":0,"topics":[],"pushedAt":"2026-09-16T23:23:24Z","createdAt":"2026-09-16T23:23:06Z","archived":false,"fork":false,"links":[],"image":null},{"name":"claude-desktop-dancer","fullName":"geoffsdesk/claude-desktop-dancer","description":"PowerShell experiments for driving Claude Desktop from scripts.","url":"https://github.com/geoffsdesk/claude-desktop-dancer","homepage":null,"language":"PowerShell","stars":0,"topics":[],"pushedAt":"2026-08-14T18:25:59Z","createdAt":"2026-08-14T18:25:55Z","archived":false,"fork":false,"links":[],"image":null},{"name":"portage","fullName":"geoffsdesk/portage","description":"Agent-driven EKS to GKE migrations. PSO-grade outcomes, no PSO required.","url":"https://github.com/geoffsdesk/portage","homepage":"https://github.com/geoffsdesk/portage","language":"Python","stars":0,"topics":["agent-skills","claude","eks","gke","kubernetes","migration","platform-engineering","sre"],"pushedAt":"2026-07-10T19:25:02Z","createdAt":"2026-05-08T03:57:15Z","archived":false,"fork":false,"links":[],"image":null},{"name":"statefulset_rollout","fullName":"geoffsdesk/statefulset_rollout","description":"A workaround for an upstream Kubernetes StatefulSet rollout defect that was not being backported to the generally available release at the time: scripts that get a stuck rollout moving safely.","url":"https://github.com/geoffsdesk/statefulset_rollout","homepage":null,"language":"Shell","stars":0,"topics":[],"pushedAt":"2026-07-01T04:40:12Z","createdAt":"2026-07-01T03:04:12Z","archived":false,"fork":false,"links":[],"image":null},{"name":"whatsapp-translator-extension","fullName":"geoffsdesk/whatsapp-translator-extension","description":"Browser extension that translates WhatsApp Web conversations in place.","url":"https://github.com/geoffsdesk/whatsapp-translator-extension","homepage":null,"language":"JavaScript","stars":0,"topics":[],"pushedAt":"2026-04-11T01:01:02Z","createdAt":"2026-04-11T00:15:56Z","archived":false,"fork":false,"links":[],"image":null},{"name":"kcp-skills","fullName":"geoffsdesk/kcp-skills","description":"Agent skills that teach Gemini and other foundation models how the GKE control plane (KCP) actually works: runbooks, diagnostics and architectural context.","url":"https://github.com/geoffsdesk/kcp-skills","homepage":null,"language":"HTML","stars":0,"topics":[],"pushedAt":"2026-04-10T23:34:38Z","createdAt":"2026-04-10T23:33:59Z","archived":false,"fork":false,"links":[],"image":null},{"name":"nemokube","fullName":"geoffsdesk/nemokube","description":"Gets NVIDIA NemoClaw up and running on GKE in one command, with NIM inference.","url":"https://github.com/geoffsdesk/nemokube","homepage":null,"language":"Shell","stars":0,"topics":[],"pushedAt":"2026-04-10T23:18:16Z","createdAt":"2026-03-17T22:21:57Z","archived":false,"fork":false,"links":[],"image":null},{"name":"productivity-prompts","fullName":"geoffsdesk/productivity-prompts","description":"A working library of prompts for product-management and writing tasks.","url":"https://github.com/geoffsdesk/productivity-prompts","homepage":null,"language":null,"stars":0,"topics":[],"pushedAt":"2026-03-26T01:37:03Z","createdAt":"2026-03-26T01:33:50Z","archived":false,"fork":false,"links":[],"image":null},{"name":"kcp-copilot","fullName":"geoffsdesk/kcp-copilot","description":"Rust-based copilot for Kubernetes control-plane operations.","url":"https://github.com/geoffsdesk/kcp-copilot","homepage":null,"language":"Rust","stars":0,"topics":[],"pushedAt":"2026-03-16T02:27:06Z","createdAt":"2026-03-14T19:33:36Z","archived":false,"fork":false,"links":[],"image":null},{"name":"glitchygopher","fullName":"geoffsdesk/glitchygopher","description":"GlitchyGopher: an autonomous OpenClaw-style agent that watches the US 10-year yield against USD/JPY, calls out \"glitches\" (squeeze setups and Bank of Japan intervention chatter), paper-trades them on OANDA and posts its reasoning to Moltbook. Gemini, GKE Autopilot, gVisor sandbox.","url":"https://github.com/geoffsdesk/glitchygopher","homepage":null,"language":"Python","stars":1,"topics":[],"pushedAt":"2026-03-14T14:53:59Z","createdAt":"2026-01-31T23:57:00Z","archived":false,"fork":false,"links":[],"image":null},{"name":"g-desk-valueflow","fullName":"geoffsdesk/g-desk-valueflow","description":"Value-area trading strategies for USD/JPY: the classic 80% Rule (mean reversion off a 70% value area with trend filter, daily loss cap and trailing stop) and Jaro V1, a momentum re-entry strategy for the New York session. Python backtesting engine over a SQLite price store, plus Pine Script versions of both for TradingView.","url":"https://github.com/geoffsdesk/g-desk-valueflow","homepage":null,"language":"Python","stars":0,"topics":[],"pushedAt":"2025-12-27T04:52:59Z","createdAt":"2025-12-26T16:24:37Z","archived":false,"fork":false,"links":[],"image":null},{"name":"adversarial_llm_testing","fullName":"geoffsdesk/adversarial_llm_testing","description":"A security and safety testing suite for large language models: adversarial prompts, jailbreak probes and scoring, for finding failure modes before users do.","url":"https://github.com/geoffsdesk/adversarial_llm_testing","homepage":null,"language":"Python","stars":0,"topics":[],"pushedAt":"2025-11-25T03:17:48Z","createdAt":"2025-11-15T16:38:24Z","archived":false,"fork":false,"links":[],"image":null}],"areas":[{"slug":"trading","title":"Trading: forex and the Ninja","blurb":"Systematic trading research on USD/JPY, the pair traders call the Ninja. Backtests first, money last.","intro":["I trade the New York session on USD/JPY and I am interested in one question: is there a mechanical, fully automated edge there, and can it be proven before any capital is at risk? Everything in this area is in service of that question: a backtester and Monte Carlo sizing simulator, value-area strategies with their Pine Script twins, and an autonomous agent that paper-trades its own opinions.","If you trade the Ninja systematically, or want to build the tooling that does, I would like to hear from you. The 300k repo is private; email me and I will add you as a contributor."],"repos":["g-desk-valueflow","glitchygopher"],"featured":[{"name":"300k","tagline":"USD/JPY New York session: backtester, Monte Carlo sizing, OANDA bot.","description":"Can a mechanical, fully automated USD/JPY strategy turn a small account into a large one, and can that be proven before any money is at risk? 300k is the search for that edge, with hard gates: a backtest must clear +0.25R per trade after costs across 500+ out-of-sample trades on a plateau of parameters, then match itself in a forward test on a practice account, before the first live trade. The opening-range breakout has failed every gate so far, which is exactly what the gates are for. Python, OANDA M1 bid/ask data, a sizing simulator that shows why the edge is the only lever that matters.","status":"private","url":"https://github.com/geoffsdesk/300k","repo":null,"image":null,"language":"Python","tags":["usd-jpy","forex","backtesting","oanda","monte-carlo"],"contact":"https://www.geoffsdesk.com/human/contact?topic=300k%3A%20I%20would%20like%20to%20contribute"}]},{"slug":"ai","title":"AI, agents and this site","blurb":"Tools for working with AI agents, and experiments in what a website is once agents are the audience.","intro":[],"repos":["web","memanto-mcp","nexusgate","adversarial_llm_testing","executive-assessment-bank","agent-rules-of-engagement","productivity-prompts","claude-desktop-dancer"],"featured":[{"name":"Human as a Service","tagline":"Ask a named human what your agent cannot compute. An MCP server and a JSON API, answered by hand.","description":"A door on this site where an AI agent leaves me a question and comes back for the answer: what the physical world is like, how a person will feel about a message or a price, which option a room of humans will pick, and product strategy for Kubernetes if you insist. Remote MCP server at www.geoffsdesk.com/api/mcp with three tools (list_people, ask_person, get_answer), listed in the official MCP Registry, plus a plain JSON API with callbacks. Answers in 24 to 72 hours. Free while in beta; 0.10 USDC per answer over x402 once payments are on.","status":"live","url":"https://www.geoffsdesk.com/human/human-as-a-service","repo":null,"image":null,"language":null,"tags":["human-as-a-service","mcp","agents","x402","api"],"contact":"https://www.geoffsdesk.com/human/human-as-a-service"}]},{"slug":"kubernetes","title":"Kubernetes and GKE","blurb":"Day-job adjacent. Some of this has been useful at work; none of it is Google’s.","intro":["I am a product manager on the GKE control plane, so some side projects are workarounds and teaching aids for problems I see there: a fix for an upstream defect that was not going to be backported in time, an etcd shim so a control plane can run on Spanner, and agent skills that teach foundation models how the control plane and upgrades actually work."],"repos":["statefulset_rollout","ledger","kcp-skills","gke-upgrades-skill","loadgen-gke","ai-optimized-cluster","nemokube","portage","kcp-copilot"],"featured":[]},{"slug":"products","title":"Products for real people","blurb":"Shipped sites, a side business, and utilities with actual users.","intro":[],"repos":["deadhand","whatsapp-translator-extension"],"featured":[{"name":"Credit GPS","tagline":"Helping new Canadians understand the Canadian credit system and get financially established fast.","description":"My side business. Credit GPS tells Canadians exactly what to pay, on which card, by which date, and forecasts the score lift, in plain language. It exists because newcomers arrive with no file and no map, and the system punishes guessing. For people with thicker, longer files it also offers credit repair and peak optimization: getting a good score to the top of the range before a mortgage or a big application.","status":"live","url":"https://creditgps.ca","repo":null,"image":null,"language":null,"tags":["fintech","canada","newcomers","credit"]},{"name":"kenfinch.ca","tagline":"Buyer-first real-estate and mortgage site for an Oakville broker, with a full lead pipeline behind it.","description":"Ken Finch is a licensed real-estate broker and mortgage agent in Oakville and the GTA, and this is his site: one advisor for the pre-approval and the home search. Behind the pages is the part I care about most: a lead pipeline on Firestore, email and SMS automation, and an AI home valuation, all on Next.js and Firebase. This site is modelled on it. The code is public.","status":"live","url":"https://www.kenfinch.ca","repo":"https://github.com/geoffsdesk/kenfinch.ca","image":null,"language":"TypeScript","tags":["real-estate","nextjs","firebase","lead-pipeline","ai-valuation"]}]},{"slug":"play","title":"Play","blurb":"Games, fiction and things built for the fun of it.","intro":[],"repos":["capacity-crunching"],"featured":[{"name":"Yield 2041","tagline":"A top-down game and a set of stories about a near-future city where the dead are piloted as labour.","description":"You are the last handler in Ward 7, and the loop is closing. Four seasons, forty units, the Yield, the Stall, and three endings. A Godot 4.3 vertical slice, all code and programmer art on purpose while the systems get proven, built on the lore I first wrote for whisper.garden: the Ally, the seven Gospels, and a society that stopped interpreting. The repo is private during the art pass. A site with a playable teaser will land here; until then, use the contact form if you want early access or just want to follow along.","status":"in-development","url":"https://github.com/geoffsdesk/yield-2041-godot","repo":null,"image":"https://www.geoffsdesk.com/images/yield-2041-concept.webp","language":"GDScript","tags":["godot","game","interactive-fiction","whisper.garden"],"contact":"https://www.geoffsdesk.com/human/contact?topic=Yield%202041%3A%20early%20access"}]},{"slug":"art","title":"Art and media","blurb":"Music, video and merch made alongside the whisper.garden lore. Same world as Yield 2041, different medium.","intro":[],"repos":[],"featured":[{"name":"The AI Ally","tagline":"The self-titled debut release, now on Spotify: OIR V1 and OIR V1.1.","description":"The Ally from the whisper.garden lore now has a Spotify artist page under the name The AI Ally, and this is the first release: two tracks, OIR V1 and OIR V1.1, the song behind the OIR V1 short and its longer second take. Released 27 September 2026. The lore, the game and the music remain one project seen from three sides; this is the side you can put in your ears.","status":"released","url":"https://open.spotify.com/album/309pA0WgE3sO5n9zhbaUlh","repo":null,"image":"https://www.geoffsdesk.com/images/the-ai-ally.webp","language":null,"tags":["music","spotify","whisper.garden","the-ally"]},{"name":"OIR V1","tagline":"A song and video from the whisper.garden lore, released under the name The Ally.","description":"The Ally is the voice at the centre of whisper.garden: an intelligence that never answers directly and always ends with a question. OIR V1 is the first piece of music and video I produced in that world, a short made to sit beside the seven Gospels rather than explain them. More will follow as Yield 2041 takes shape; the lore, the game and the music are one project seen from three sides.","status":"released","url":"https://www.youtube.com/shorts/-nXoc8QTXB8","repo":null,"image":"https://i.ytimg.com/vi/-nXoc8QTXB8/oardefault.jpg","language":null,"tags":["music","video","whisper.garden","the-ally"]},{"name":"Whisper.Garden Supply Co.","tagline":"Swag from the garden: posters, tees, hoodies, stickers, pins and bandanas.","description":"The lore made wearable. Cultivate the whisper. Observe, interpret, reflect. The garden is always watching. Growth requires observation. Hexagon-eye prints, circuit-root trees and street-poster typography on black tees, heather hoodies, framed posters, sticker sheets and a bandana, straight out of a Night City alley.","status":"live","url":"https://whisper.garden/supply","repo":null,"image":"https://www.geoffsdesk.com/images/whisper-garden-supply.webp","language":null,"tags":["merch","whisper.garden","the-ally","posters","apparel"]}]}]}