Open source

What is listed here can be checked. Unlike the client work on the references page, the source code is open and the history is visible.

Articles

Seven months searching for an editor

From VS Code via terminal editors and gpui to Zig. Eleven attempts with eight UI libraries, and why tool limits for an AI agent belong in the code.

An AI agent tests my editor without a window

Test-driven development of a native desktop app: headless mode, JSON-RPC as a remote control and screenshots the agent looks at itself.

Photograph the invoice, check the data

Reading garage invoices with Mistral: OCR and schema in two stages, checks in code and a guard against success messages without a tool call.

Three programs or one of my own

Why I built my own document archive with OCR, tags and chat, instead of connecting three programs, and when Paperless-ngx is the better choice today.

Contributions to other projects

  1. Cobenian/shai-hulud-detect

    Six merged changes to a scanner for the npm supply chain attacks: running under Git Bash and WSL, Windows line endings, two fixes to the data exfiltration detection.

    View contribution history

Own projects

  1. Zig

    zid

    A code editor with its own UI: wgpu, pinned to the Vulkan backend in the renderer, Clay for layout, a custom glyph atlas and GPU text renderer via FreeType. Text storage comes from flow-core, syntax highlighting from flow-syntax, the terminal from Ghostty, PDF from mupdf. Plus a built-in agent working against a local language model.

  2. Rust

    freshview

    The terminal editor Fresh as a library in an egui UI, with PDF and image preview via mupdf in floating windows.

  3. Rust

    neoview

    Neovim embedded in a UI built with gpui, the framework behind Zed.

  4. Rust

    editor-framework

    Scaffold for an editor on gpui, with Lua for plugins.

  5. V

    v-gui-editor

    Editor prototype in the GUI framework of the V language, with explorer, tab bar and status bar.

  6. Rust

    shai-hulud-detect-rust

    My own Rust version of the scanner whose Bash original I helped maintain.

  7. Rust

    agent-session-manager

    Session manager for Claude Code in the terminal.

  8. TypeScript

    wartungsheft

    Car service book as a PWA with Vue 3 and self-hosted InstantDB. Garage invoices, vehicle registrations and service books are photographed and read via Mistral.

  9. TypeScript

    ai-proxy

    Keeps a model key on the server side, counts usage and enforces plan limits.

  10. TypeScript

    dms

    Document archive with Vue 3 and Supabase: Mistral OCR, tags and fields via a language model, hybrid search with pgvector and a chat over all documents that cites its sources.