Feature flags

All defaults

Developer-only controls for this tab. Select a feature to tweak it. Changes preview instantly. Shortcut: Ctrl+Alt+Shift+F (macOS: Control+Command+Shift+F).

Global appearance. Shared visual language. Default: Technical.

Ricardo Casía Moka

Senior Software Engineer

I build developer tools that shorten the loop between writing code and trusting it.

I maintain Neovim tooling for testing, debugging, and UI infrastructure, and I'm currently exploring deterministic guardrails for agentic coding.

Portrait of Ricardo Casía Moka

Now experimenting

Deterministic guardrails around non-deterministic agents: pre-commits and checks stay fixed while agents write the code; skills only where a flow needs one. Testing whether TCR (test && commit || revert) makes agents more reliable. RFC plus early POC, measuring token cost and failure modes.

agentic-tcr-poc(early)

Each one shortens that loop in a different place.

  1. ascii-ui.nvim

    Neovim plugin UIs as components, not buffer juggling: state, diffing, and input via a fiber reconciler. Hooks, layout primitives, live reload, zero dependencies.

    A real ASCII metro map rendered by an ascii-ui.nvim example.
    • Lua
    • Neovim
  2. neotest-java

    Run JUnit 5 tests from Neovim: discovery, execution, and DAP debugging. Compiles through the LSP instead of owning build logic, so Maven and Gradle multi-module projects stay fast and compatible.

    Neovim showing the neotest-java test tree beside Java test code and JUnit output.
    • Lua
    • Neovim
    • Java
    • JUnit 5
  3. neotest-bash

    Test Bash scripts from Neovim via bashunit: discovery, execution, and results in the editor. Infers the runner and passes through coverage flags.

    Neovim showing a Bash test file beside bashunit results with passing tests.
    • Lua
    • Neovim
    • Bash
    • bashunit

latest note