I thought it's worth sharing a wrap-up of new/new-ish work that is publicly available, and a cleaned-up publications list.

Publications #

Aardvark: sifting through differences in a mound of variants

A new approach to benchmarking genomic variants by comparing reconstructed haplotype sequence rather than relying only on exact VCF representations. I contributed some of my remaining hap.py expertise to the work - if you're a hap.py user and are tired of running a container with Python 2.7, this is a nice, modern and more precise alternative. The peer-reviewed version of the paper appeared in Genome Biology: doi:10.1186/s13059-026-04165-0, and the code is available on GitHub: github.com/PacificBiosciences/aardvark.

Reimagining Clinical Data for a Digital-First Future

After joining a Future Focus workshop at the PHUSE US Connect 2025, I contributed to a cross-industry perspective on making clinical-development data more connected, interoperable and usable for automation and AI. Available at Applied Clinical Trials.

The data sharing talk

I gave this talk twice at different events in Basel, once at the BBS Seminar on the essentials of medical data sharing, May 16th, 2024, and once at the Personalized Health Series Workshop - May 15th, 2025. It contains an overview of approaches for working with privacy-sensitive data.

GitHub #

A few repos from experimenting with AI & coding:

  • repljail, an MCP tool for isolated R session spin-up and command execution. Uses Docker or process isolation + has functionality to network-isolate the session. Made to experiment with R code generation before coding harnesses & models got good at that - or had good sandboxes. Also uses nanonext for communication with the container, which I think is a really neat package.

  • project-sandbox, a container/microVM-based sandbox for coding agents. Apart from supporting various security models (including LLM gateways, network isolation, microVMs on Apple), the idea here is to think about a local-first agentic development workflow with deterministic versioning integration: sessions can be supervised or headless, and it supports different harnesses + git worktrees or Jujutsu VCS (jj) workspaces for versioning. As a bonus, you get a hardened devcontainer config and credential pass-through.

  • agentgateway-locally, a script to run agentgateway.dev locally in a container to supplement project-sandbox with a mode where we 1) don't have credentials in the agent container, and 2) can use a wider range of models, including locally hosted ones.

  • jj-parallel-agents-skill, a skill-building experiment: Most coding agents can use worktrees & parallel agents with git - this skill makes that work on Jujutsu VCS (jj) repos too. I made this for two reasons: 1) I (subjectively) think jj works better than git for agentic workflows - especially for creating diffs that are meaningful as a unit for review + doing stacked PRs & complex merges, 2) I wanted to explore how to systematically test skills using evals (which is where it connects nicely with project-sandbox, which can be used to run these evals safely).

  • toy-hover-battle. There is a tendency among AI enthusiasts to vibe-code vibe-coding tools. To break the pattern, I did a small modern redo of a game I made when I was in high school. Times have changed since hand-optimized assembler sprite-blitting for 320x200 VGA and Mode X. My main observations doing this were: 1) Rust is a great language for AI-based coding - thanks to static analysis & compile-time safety there is much less need to run endless verify / validate / check loops because the agent didn't quite think through some corner case, 2) when run in a sandbox where models can't see what they are building, they sometimes come up with neat ideas to make tests - such as creating a closed-loop simulator for testing.