I build generative decoders that reconstruct 3D spatial structure from fMRI, and I contribute fixes to GPU and scientific software.
My recent research asks how the brain represents and infers the space around us: recovering the layout of rooms from fMRI and camera motion, letting predictive coding carry full posterior distributions instead of single point estimates, and understanding when associative memory defines a well-behaved energy and why sampling-based predictive coding generalizes.
| 🦥 unsloth | Fixes padding mask handling so left-padded prompts produce consistent text with cached Llama and Qwen3 attention. Added CPU regression tests for both decoders and ran the test command and Qwen2.5-0.5B-Instruct generation on an RTX 5090. PR → |
| 🤗 sentence-transformers | MaxSim scoring now stays within the memory budget when a batch mixes long and short queries. With 200 queries of 16 tokens, one query of 2,000 tokens and four documents of 1,000 tokens, extra peak CUDA memory fell from 869.7 MiB to 18.3 MiB with identical scores. PR → |
| 🌲 xgboost | XGBoost now rejects masked NumPy inputs that could silently corrupt training data. Tests confirm masked inputs raise a clear error, while arrays with no masked elements remain accepted. PR → |
Dapr Runtime Contributor, issued by the Dapr maintainers for dapr/dapr#10776
All 105 projects with my merged pull requests
🤖 AI and machine learning (16)
100-Days-Of-ML-Code, awesome-YuE, awesome-mlx, DocsGPT, agent-device, xgboost, gufo, pytorch-image-models, hypit, kornia, lancedb, FunASR, openchamber, recommenders, stanza, burn
🧊 3D, vision and graphics (15)
Babylon.js, 3d-tiles, CloudCompare, ImageMagick, K3D-jupyter, orillusion, AliceVision, Meshroom, colmap, model-viewer, openFrameworks, splat-transform, supersplat, postprocessing, Pillow
⚡ GPU, HPC and scientific computing (14)
Symbolics.jl, MultiQC, MatX, cccl, cudf, OpenBLAS, cp2k, highway, mpi4py, nextflow, ohpc, openmc, numpyro, oneTBB
✨ Other (39)
ANTs, ATSynEdit, UniGetUI, DroidDeck, evox, EllesmereUI, saw-script, Indy, MaaAssistantArknights, DALI, kaolin, Slicer, apexcharts.js, assistant-ui, brian2, cdk, workers-sdk, doodle, dapr, openarm, fairlearn, engine, sentence-transformers, joern, zig-esp-idf-sample, Nim, nullclaw, remotion, scikit-bio, DiPlay, sql.js, taskflow, uccl, unsloth, USearch, xsimd, node-red-contrib-home-assistant-websocket, zwasm, zxing
All 20 personal projects
🤖 Coding agents and AI tooling (5)
| Project | What it does | Stars |
|---|---|---|
| Cliffhanger | Stop hook and skill that keeps Claude Code from ending the turn with work still owed, and | 1 |
| ToolCallCheck | Check nested tool arguments, streamed calls and the result handoff on a chat endpoint. | 1 |
| ModelShift | Find model IDs in your repo that retire soon, replay real prompts on the replacement, and | 0 |
| AgentLeaks | Find, redact and block the API keys in Claude Code, Codex, Cursor, Gemini CLI, Cline and A | 0 |
| Graticule | A cartography skill for coding agents. It checks a map against 25 rules (raw counts, Merca | 0 |
🧠 Local LLMs and GPUs (2)
| Project | What it does | Stars |
|---|---|---|
| Rumbleback | Replay any past earthquake in the browser: P and S wavefronts from the iasp91 model, real | 2 |
| LLMDoctor | brew doctor for local LLMs: dedupe Ollama, LM Studio, HF and MLX weights, catch stale temp | 1 |
📚 Documents, study and research (4)
| Project | What it does | Stars |
|---|---|---|
| DoclingGuard | Offline provenance validation and regression checks for Docling JSON | 2 |
| SnipMD | Hotkey, drag a box, get Markdown or LaTeX on your clipboard. Offline Mathpix Snip alternat | 2 |
| Cardsmith | Offline flashcards from PDFs, slides, and notes. Generate locally, study with SM-2, export | 1 |
| PaperCompass | Recommendations over your own arXiv library, offline after setup. Not another digest bot. | 0 |
🌐 Web and JavaScript debugging (5)
| Project | What it does | Stars |
|---|---|---|
| Sunspill | Plan a room on an OpenStreetMap building and see where sunlight falls through the day and | 14 |
| ChitWeave | Turn a two-person LINE chat export into a woven picture of when you talk, one row a day an | 1 |
| Deadpan | Passport photos that pass. A live camera guide in your browser checks head size against th | 1 |
| OohAlive | Draw an arrow on a photo and it flows that way. Download the loop as a GIF. Free, in your | 0 |
| GlyphSprout | A browser workshop for turning handwriting pages into editable Latin, Han and kana font su | 0 |
⚙️ Git, CI and build (2)
| Project | What it does | Stars |
|---|---|---|
| WorktreePortCheck | Check whether a port listener runs from the Git worktree you are testing | 0 |
| GHARerunLedger | Inspect GitHub Actions rerun attempts and replay saved metadata offline. | 0 |
🧩 Other tools (2)
| Project | What it does | Stars |
|---|---|---|
| Unwedged | Plan and replay furniture turning routes in a measured floor plan. | 2 |
| Reachbloom | Explore dated transit timetables, reachable stops and two origins on a map | 0 |








