Senior Software Engineer with a background in Java backend.
The projects here are built entirely in my personal time — driven by curiosity about what it takes to make AI-powered systems reliable, not just impressive in a demo.
Most AI tooling focuses on the exciting parts. I tend to build the parts underneath: provenance-preserving retrieval pipelines, embedding evaluation frameworks, anti-hallucination prompt pipelines, and static analysis tools that give LLMs accurate context instead of letting them guess.
The theme: build things you can measure and trust, not just things that look like they work.
🧩 agents_fleet · TypeScript
Local-first “mission control” for AI coding agent CLIs (and any shell commands): launches sessions inside a repo via a local Node/Express server, streams an interactive PTY terminal to a React web UI (xterm.js), and persists session metadata + raw PTY history to SQLite for faithful replay/scrollback — with optional token/USD budget enforcement and a roadmap focused on hardening + per-session artifacts.
🔍 jidra · Python
CLI and MCP server for Java codebase analysis. Builds a static call graph via AST parsing, validates against Spring beans to remove phantom edges, generates minimal noise-free context for LLM workflows. Proven: 87-95% token reduction (10,811→869 tokens) with zero false negatives and 100% business logic coverage.
⚙️ localops_mcp_server · Rust
Rust MCP server exposing local machine capabilities to AI clients over stdin/stdout — file I/O, shell execution, system stats, macOS notification triage, port management. Namespaced tool API, path traversal guards, strict command validation, symlink protection, and integration tests.
🧠 local_first_LLM · Python
Toolkit for production-grade LLM usage patterns: a LiteLLM wrapper with retry/backoff and typed error taxonomy; a three-stage Architect → Judge → Polisher prompt pipeline with faithfulness checking; and an idea-to-epic planner with strict JSON output, schema validation, and auto-repair loop.
📈 trade_desk · Python
Streamlit trading research dashboard backed by a live XGBoost 5-day return model — trained offline in a separate trade_ml pipeline, then run in-process for any ticker via real-time feature computation, not just the backtested set. Verdict engine blends technical signals with split-half stability validation (no live/dead edge shown without both halves of history agreeing); a Top Movers page ranks the full S&P 500 live; and a Paper Trading module locks the model's predictions against real entry prices to track hit-rate over time — literally back-testing the model against itself, going forward. LLM-assisted trade rationale via local Ollama or Claude Haiku, with per-call cost tracking.
