AboutAIprqOpen sourceProjectsJourneyStackNowContact

Filippo Menghi

16 y/o developer from Milan.Author of PromptQuery. 32 merged PRs into LiteLLM, aider and the Anthropic ecosystem.

About

Self-taught since 11. No bootcamps, no courses. Documentation, projects, and a bias toward shipping things that work in production.

I integrate Claude, GPT, and open-weight models into real systems — a personal music recommender, an iOS security tool, a macOS behavioral profile pipeline, an algorithmic trading bot. AI is a primitive in a verified pipeline, not a chat surface I bolt onto a product.

I contribute upstream when I hit real issues in real dependencies. Four PRs merged into LiteLLM this month alone. More on the open-source page.

AI Integration

Claude, GPT, MCP, multi-model

Audio ML

CLAP, MERT, EffNet, MLX

iOS Security

pymobiledevice3, hardening

Algo Trading

regime detection, MT5 bridge

Open source

LiteLLM, pdfplumber, MusicKit

AI as engineering

I've been integrating Claude, GPT, and open-weight models into real products since before this was a job spec. The pattern is consistent: AI as a primitive in a verified pipeline, not a magic box you ask questions to.

Integration over chatbots

LLMs are useful when they disappear into a pipeline. Most of my AI work is invisible: a model picking the right routing decision, scoring an audio embedding, validating a profile change, generating a hardening recommendation. The chat surface is the last resort.

Verify, don't trust

I read the code AI writes and check it against the real system — psql, runtime logs, git status. AI is a fast pair, not an oracle. The good ones get corrected weekly. That's the discipline that lets me ship things that don't break in production.

Multi-model by default

GPT, Claude, and open-weight models all have their own failure modes. Every serious AI integration I build has a provider abstraction and a fallback. SmarTaste blends three audio embedding models. scrape-gen routes between GPT-5.4 and Claude Opus. The future is plural.

Own the harness

I built my own Claude Code workflow: custom hooks, session orientation, statusline, per-project memory, state externalization. Tooling that adapts to me, not the other way around.

AI in production — where the integration shows up

PromptQuery (prq)natural-language SQL for Postgres

a four-stage retrieval pipeline in front of the model — TF-IDF, a cheap LLM table selector, FK-graph expansion, then generation over 25 tables instead of 675. Enum-aware prompts and execution-guided self-repair took execution accuracy from 58% to 72% on the heron benchmark, with hard DB errors at 0/100.

OpenAI ·Anthropic ·sqlglot ·PostgreSQL ·Python
SmarTasteaudio-ML music recommender

multi-model audio embedding pipeline (CLAP + MERT + EffNet, 1280-dim) blended with a 7-dimension taste profile. Hybrid GPU mode — local via ngrok, cloud via Modal.

CLAP ·MERT ·EffNet ·PyTorch ·Modal ·FastAPI
musicmind-mcpMCP server for Apple Music

Anthropic's Model Context Protocol bridging Apple MusicKit to Claude — library queries, playlist generation, history surfacing from chat.

MCP ·Apple MusicKit ·Claude ·Python
iphone-auditiOS audit + hardening

LLM advisor for hardening recommendations with a rule-based fallback when no API key is configured. Synthesizes findings into a `HardeningRecommendation` schema the rest of the pipeline consumes.

OpenAI ·Pydantic ·pymobiledevice3 ·SwiftUI
customosmacOS behavioral profile

longitudinal user profile built from on-device signals (Biome, knowledgeC, Spotlight, Safari, shell history). Two LLM providers behind a clean abstraction. Local-only by design.

Anthropic ·OpenAI ·uv ·FastAPI
scrape-genOSINT password wordlist

LLM enrichment after heuristic generation — proposes additional bases, writes a narrative rationale.md tracing every guess back to a scraped fact. Authorized-pentest use only.

OpenAI ·Anthropic ·BeautifulSoup ·httpx
SpowieBotXAUUSD trading bot (private)

Claude API decision engine on top of a deterministic ML stack (regime detection, spread-adjusted RR). Dual-engine live/backtest architecture with cross-file impact discipline.

Claude ·MetaTrader 5 ·Wine ·SQLite
Flagship project

PromptQueryprq

natural-language SQL for production-scale Postgres · Apache-2.0 · prq.menghi.dev

A CLI that turns plain English into one correct, read-only Postgres query — engineered for the schemas people actually have, with hundreds of FK-linked tables, not five-table demos. Introspect, retrieve, generate, validate, confirm, run. Shipped on PyPI as pip install promptquery, currently at v0.3.0.

72%
Execution acc.
211
Tables in schema
0
Hard DB errors

EX@1 on heron, the tool-neutral benchmark I built alongside it — 100 audited questions, gpt-4o, temperature 0, scored by execution-equality against a seeded 4.4M-row Postgres database. Rank 1 of 5 tools on a 68.7 Grade, ahead of Vanna (61.9), a raw-gpt-4o full-schema baseline (56.8), MAC-SQL (48.2) and DIN-SQL (47.9).

Retrieval-first
TF-IDF → LLM selector → FK expansion, 25-table cap
Read-only
Two independent layers — session + sqlglot guard
Token economy
4.7k tokens/query vs 15.3k for the full-schema baseline
Deterministic
Temperature 0 by default, SQL shown before it runs

Stuffing a 675-table schema into a prompt costs ~85k tokens and still misses joins. prq narrows in four stages instead: stemmed TF-IDF surfaces ~50 candidate tables in microseconds, a cheap LLM selector cuts to ~15 (it resolves what lexical match can't — "invoice" → account_move, "shipment" → stock_picking), FK-graph expansion walks one hop in and out for join targets the question never named, capped at 25. The frontier model sees 25 tables, not 675.

Python 3.10+PostgreSQLsqlglotTF-IDFOpenAIAnthropicRichPyPI

Open source

Real PRs against real issues in the AI-tooling ecosystem. I file upstream when I hit a problem in a dependency I rely on — not for stars, not for cosmetic fixes.

32
Merged PRs
20
Open PRs
9
Upstream Repos

Counts are upstream PRs only — my own repositories are excluded. Last synced with GitHub on 2026-08-04.

serversmodelcontextprotocol/servers

89k+

Anthropic's reference Model Context Protocol servers. Fixed invalid JSON in the Zed context_servers config snippets — copy-paste-broken docs for anyone wiring MCP into Zed.

open#4231docs(time, git): fix invalid JSON in Zed `context_servers` config snippets
2026-05-22

implicitbenfred/implicit

3.8k

Fast collaborative filtering for implicit feedback datasets — the recommender library behind SmarTaste's candidate generation.

open#757Truncate recommend() result to caller's N when filter_items is set (#736)
2026-05-22

am-lyricsbinimum/am-lyrics

Apple Music lyrics utility. Contributed reliability and memory leak fixes plus a click-seek bug fix.

merged#13fix fetch reliability, memory leaks, and click-seek bug
2026-04-10

Projects

AI-integrated systems I've built and shipped. Each one solves a problem I personally had.

SmarTaste

audio-ML music recommender · MIT · music.menghi.dev

Personal music discovery built on a multi-model audio embedding pipeline. Three models in parallel, a seven-dimension taste profile, hybrid local/cloud GPU. Used by me and a small group of friends. The work that taught me everything I know about shipping AI to production.

3
Embedding Models
1280
Embed Dim
7
Taste Dims
Multi-model
CLAP + MERT + EffNet, weighted scoring
Hybrid GPU
Local via ngrok / cloud via Modal
Multi-provider
Apple Music + Spotify, blended
Production
Railway, branch-tied envs, real users

Tracks are passed through three audio embedding models in parallel — CLAP, MERT, and an EffNet-based scalar model — producing a 1280-dim representation that captures sonic, harmonic, and timbral signal. Cached per ISRC. Hybrid GPU mode runs locally via ngrok or in the cloud on Modal depending on load.

PythonFastAPIPostgresSQLAlchemyPyTorchModalRailwayApple MusicKitSpotifyCLAPMERT

More projects

scrape-gen

OSINT-driven password wordlist generator with per-entry rationale tracking. GPT-5.4 / Claude Opus enrichment. Authorized pentest use only.

Python ·OpenAI ·Anthropic ·BeautifulSoup
foodiy

Smart calorie tracking with an OpenAI-first parser. Type or speak what you ate, model handles the rest. PIN-based account creation, no email collection.

TypeScript ·Next.js ·OpenAI ·Railway
Smart-igcse-platform

Personal IGCSE 0580 + 0654 exam-prep platform with hybrid OpenAI-powered ingestion. 200GB Railway volume.

Python ·Flask ·Postgres ·OpenAI
igcse-revision-toolkit

Self-hosted revision dashboard for Cambridge IGCSE students. Engine-only — bring your own papers and notes. Python stdlib server, vanilla JS UI.

Python ·stdlib HTTP ·vanilla JS
PowairX

STEM Racing team I co-founded. Engineering, manufacturing, sponsors. Best Enterprise Project at regional qualifiers.

OpenFOAM ·ANSYS ·Rhino 3D ·CNC ·Brand strategy
SniperbotPrivate

Separate sniper-style trading project — distinct architecture from SpowieBot.

Python ·MetaTrader 5

Full list on GitHub.

The journey

2016

First experiments

Started with Scratch at 6. Simple animations and games. First time making a screen do what I wanted.

2019

First real code

Self-taught Python at 9, then HTML and CSS. No courses, just curiosity and a laptop.

2020

Hardware meets software

JavaScript, small tools. Arduino and micro:bit — connecting code to the physical world.

2021-24

H-FARM Campus

Four summers: robotics, content creation, AI storytelling, smart solutions. First real intersection of coding skills and AI.

2024

First production trading system

Built an ML-powered XAUUSD scalper. Learned more about discipline and risk from markets than from any textbook.

2024

First iOS product

Native iOS app for real-time voice AI. Custom WebSocket backend, bespoke Swift UI. First complete product cycle.

2025

PowairX — STEM Racing

Co-founded a competitive engineering team. Led engineering and enterprise. Passed regional qualifiers, won Best Enterprise Project.

Q1 2026

SmarTaste in production

Shipped a personal music recommender on FastAPI + Postgres + Modal. Multi-model audio embedding pipeline (CLAP + MERT + EffNet). Real users. Live at music.menghi.dev.

Q1 2026

musicmind-mcp

Built an MCP server bridging Apple MusicKit to Claude. Early-adopter implementation of Anthropic's open protocol.

Apr 2026

Open-source contribution cadence

Started filing real upstream PRs systematically — pdfplumber, am-lyrics, then LiteLLM. The goal: a credible GitHub graph built from real work, not stars.

May 2026

4 LiteLLM PRs merged

Sanitized empty text blocks on /v1/messages (#27832), added Bedrock cross-region inference profile for claude-sonnet-4-6 (#27831), added blocked-flag pause/resume from the proxy + UI (#27927, #28151). LiteLLM gateways AI for thousands of teams.

May 2026

Four public repos shipped

Released iphone-audit (iOS hardening), scrape-gen (OSINT wordlist), customos (macOS behavioral profile), igcse-revision-toolkit. All AI-integrated, all production-ready.

May 2026

PromptQuery v0.1 → v0.2

Started prq: a CLI that turns plain English into read-only Postgres SQL over schemas with hundreds of tables. The v0.2 LLM table selector took retrieval from 76% to 100% on a 675-table Odoo schema at 12× fewer tokens than dumping the schema into the prompt.

Jun 2026

heron — a benchmark I'm allowed to be measured by

Built a tool-neutral NL→SQL benchmark in its own repo: 211 FK-linked tables in one multi-tenant Postgres schema, 4.4M deterministically seeded rows, 100 audited gold questions, execution-equality scoring, and CI that re-runs every submitted query instead of trusting it. prq is one adapter among five.

Jun 2026

PromptQuery v0.3.0 — 58% → 72%

Enum-aware schema prompts and execution-guided self-repair. Same benchmark, same model, same 100 questions: execution accuracy 58% → 72%, hard DB errors 7/100 → 0/100. Rank 1 on heron at a 68.7 Grade.

Jun 2026

25 LiteLLM PRs merged in a month

A sustained upstream run across the router, proxy, provider transformations, spend logging, alerting and the pricing map — Retry-After on 429s (#30098), TPM accounting for embeddings (#30105), Bedrock IAM pass-through deployments (#30111), Anthropic streaming content_block_start synthesis (#30115).

Present

Open to stages and OSS collaboration

Studying Cambridge IGCSE in Milan. Available for technical stages, OSS contributions, and AI-integration work. Remote, hybrid, or in Milan / Switzerland / Berlin.

Stack

Tools I use regularly, with the context where they show up. Hover for the where.

AI & ML

Claude APIprimary LLM, dailyOpenAI APIGPT integration in appsMCPModel Context Protocol (Anthropic)LiteLLMLLM gateway · upstream contributorHuggingFaceHub ecosystem, authenticated as CyberfiloPyTorchaudio embedding pipelinesMLXApple Silicon ML, LoRA fine-tuningCLAPaudio-text embeddings (SmarTaste)MERTmusic representation (SmarTaste)Essentia / librosaaudio preprocessingPydanticstructured LLM outputs

Languages

Pythondaily — backend, ML, automationTypeScriptNext.js, this site, foodiySwiftiOS + macOS native (iphone-audit, BetterDock)JavaScriptdashboards, scriptsMQL5MetaTrader expert advisors

Backend & data

FastAPIMusicMind backend, customos APIFlasksmaller surfaces (SpowieBot dashboard, IGCSE)PostgreSQLprimary OLTPSQLAlchemyORM, including the type-coercion gotchasDuckDBembedded analytics (customos)SQLitelocal stores (SpowieBot, iphone-audit cache)uvPython packaging (customos)

Infra & deploy

RailwayPaaS daily — branch-tied environmentsModalserverless GPU burstsCloudflare Pagesthis siteDockerworker / backend splitGitHub ActionsCI + Modal deploysngroktunneling local GPU as production worker

iOS & macOS

SwiftUIdeclarative UI, iphone-audit frontendpymobiledevice3iOS device introspectionJSON-RPC over Unix socketPython ↔ Swift bridgeApple MusicKitmusicmind-mcp + SmarTasteWine on macOSrunning MT5 for SpowieBot

Frontend

Next.js 16this site, static exportReact 19MusicMind dashboardTailwind v4styling systemViteMusicMind frontend bundler

Integrations

Spotify Web APISmarTasteDeezer APIISRC pre-resolutionMetaTrader 5SpowieBot live tradingTelegram Bot/Client APIsalerts + utilitiesResendtransactional email

Tooling

Claude Codedaily — with custom hooks + harnessGit + gh CLIper-edit commits, real upstream PRsObsidiannotes + a plugin I wroteVS Codeprimary editorXcodeSwift / iOS builds

Beyond Code

Team Leadership

Leading means resolving conflict, not assigning tasks. The best technical solution is worthless if you can't get five people aligned.

Selling an Idea

Cold emails, pitch decks, presenting to professionals twice my age. Most said no. The ones who said yes made it worth it.

Defending Decisions

Industry judges question every choice, every budget line. You don't just build. You justify. That pressure builds critical thinking.

Learning from Failure

Our car failed at qualifiers. I didn't make excuses. I analyzed what went wrong and documented it. That's the only productive response.

Ship Over Perfect

The projects that made it are the ones where I set a deadline, cut scope, and committed.

Comfort with Unknowns

Every project starts with something I haven't done before. The skill isn't knowing everything. It's figuring it out fast.

Now

August 2026

PromptQuery v0.4 — value/literal linking and window-function composition, the two places v0.3.0 measurably loses on heron.

Opening heron to external submissions: the adapter flow and the verification bot are live, the board is still all my own adapters.

Upstream PRs to LiteLLM — 29 merged, 7 still open and waiting on review.

Preparing a sanitized public architecture template for SpowieBot.

Studying for Cambridge IGCSE 0580 (Mathematics) and 0654 (Coordinated Sciences).

Open to technical stages and OSS collaboration — [email protected].