Skip to content
View th3nolo's full-sized avatar

Block or report th3nolo

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
th3nolo/README.md

Manuel Parra

Forward deployed AI engineer · lead IC
I work with clients to put document AI and model inference into production, and I build the backend around it.
Remote from UTC-4. English and Spanish. Open to senior and lead IC roles.

th3nolo.com · Engineering notes · Open-source log · CV · LinkedIn


Most of my client work is private, so the results below link to case studies and write-ups. The public projects further down are code you can clone and run.

Measured results

System Result Source
Financial document AI, Arabic and English audited statements 34% → 94% on an internal extraction and calculation evaluation. One 22-page filing in 97 s for USD 0.30 to 0.42 case study
semgate: permission gate for coding agents, TypeSafe Jev judge 0 of 47 harmful-allow base cases on a 355-case set (95% upper bound 6.2%). 83.0% of benign actions auto-allowed (95% CI 78.4% to 87.5%) evals
LangGraph RAG chat, JEV-first routing 0.981 vs 0.957 accuracy on 322 labeled messages note
Small-model fine-tune (LoRA), training-data repair Valid plans 1/81 → 75/81, strict pairwise F1 0.01 → 0.88 on 81 development cases note
GLM-5.2-504B on 8× RTX PRO 6000 (vLLM, SM120) 240K-token context after a sparse-attention layer fix note

Public projects

Project What it does
semgate Permission gate for coding agents. Deterministic rules decide the certain cases, a typed Jev judge handles the rest, and every doubt goes to the human. Hooks into Claude Code, Codex, OpenCode, Gemini CLI, Antigravity, Copilot CLI, and more. 2,958 tests and TLA+ models. Host hook behavior measured with hookconf. Python
quake-reunite Search API and map for people and aid centers after the June 2026 La Guaira earthquake. Mistral OCR and Gemma 4 on Cerebras read WhatsApp lists, hospital-list photos, and PDFs, then merge duplicate people across sources. Live Python
openrouter-mcp Stateless MCP 2026-07-28 server and CLI for OpenRouter. 13 tools, 1 resource, HTTP and stdio. TypeScript
sqlbench-harness Benchmark for LLM-generated SQL on BIRD, KaggleDBQA, Defog SQL-Eval, and Spider 2.0. Treats benchmark text as untrusted prompt input. Reports accuracy, errors, tokens, and cost. Python
verifiable-exchange-demo Limit-order engine. Anyone can replay its history from signed orders, Merkle proofs, and on-chain anchors. Live demo Rust
dep-age-gate Refuses dependency versions younger than 72 hours. Lockfile audit, pre-commit hook, and GitHub Action. Python

Upstream contributions

  • My PR #85 to the OpenClaw installer was merged (commit bfc0bd9). It rewrote the Windows install checks, and three of those functions still run in the live install.ps1.
  • In hiero-sdk-js, I showed that the published @hashgraph/sdk still pulled in protobufjs 8.0.0 (GHSA-xq3m-2v4x-88gg, a remote code execution bug) after the upstream fix. The issue was closed as completed.
  • In openai/codex#34801, I traced broken image thumbnails to the desktop app fetching signed URLs without the Bearer token.
  • I also reproduced 19 bugs in Codex, Claude Code, and OpenCode. The open-source log has the evidence for each one.

Latest engineering notes

Python · TypeScript · Rust · Go · Solidity. FastAPI, NestJS, PostgreSQL, vLLM, Docker, GitHub Actions

Pinned Loading

  1. semgate semgate Public

    Catches your AI agent doing things you never asked it to do. Built for OpenCode, Pi, GitHub Copilot CLI, oh-my-pi and Antigravity CLI.

    Python 2 1

  2. quake-reunite quake-reunite Public

    Search API and map for people and aid centers after the June 2026 La Guaira earthquake in Venezuela. Mistral OCR and Gemma 4 on Cerebras merge duplicate records.

    Python

  3. openrouter-mcp openrouter-mcp Public

    Stateless MCP server and CLI for OpenRouter (MCP 2026-07-28): use any OpenRouter model from Claude Code and other MCP clients. 13 tools, 1 resource, HTTP and stdio.

    TypeScript 13 9

  4. sqlbench-harness sqlbench-harness Public

    Benchmark harness for LLM-generated SQL (BIRD, KaggleDBQA, Defog SQL-Eval, Spider 2.0). Runs the model's SQL and the benchmark's known-correct SQL on the same database, reports accuracy and cost.

    Python

  5. verifiable-exchange-demo verifiable-exchange-demo Public

    A replayable exchange demo with signed orders, independent validation, Merkle proofs, and on-chain anchors.

    Rust

  6. dep-age-gate dep-age-gate Public

    Refuse dependency versions younger than 72 hours: lockfile audit, install-time wrappers, pre-commit hook and GitHub Action for npm/pnpm/bun/yarn, pip/uv, cargo, Gradle/Maven

    Python 1