Things I've built
Live products, open source contributions, and tools — most with real users today.
AI Products
SignalizeAI
Sales-research browser extension on the Chrome and Firefox stores — AI-based prospecting and outreach with batch analysis and CSV export.
- —Side panel flows for quick analysis, saved prospects, search, and filters
- —Batch prospecting for file uploads and pasted URLs
- —CSV and Excel export for bulk outreach generation
Agent Suite
Five live AI agents — Resolvd, Tracecase, Webhands, Bridgekit, and Greenlite — covering support triage, incident debugging, browser automation, integrations, and code review.
- —Five production agents deployed and running end-to-end
- —Built on n8n workflows and the Claude API
- —Supabase persistence with Cloudflare Workers delivery
AashiNyra
Fashion discovery and affiliate commerce platform — curated collections with affiliate-powered checkout.
- —Curated fashion discovery feeds
- —Affiliate commerce integration
- —Fast, image-heavy storefront experience
MCP-audit
A security scanner and linter for MCP servers, like npm audit but for the Model Context Protocol. Connects over stdio or HTTP, runs 18 rules, and emits SARIF so it drops straight into GitHub code scanning.
- —Connects to live MCP servers over stdio and HTTP/SSE, plus a static manifest mode
- —18 rules across permissions, schema hygiene, prompt injection, secret exposure, and transport
- —Terminal, JSON, and SARIF 2.1.0 reporters with CI exit codes
Evalgate
Prompt and agent regression CI: the build fails when your prompt gets dumber. Runs an eval suite on every PR, compares to the base branch, and comments the quality delta.
- —10 scorers: exact, regex, JSON-schema, embedding similarity, LLM-judge, latency, cost, rubric
- —Baseline and delta engine that flags per-case regressions and pass-flips
- —GitHub Action that upserts a PR comment with the delta table
Ctxlens
A context-window profiler for AI agents. Parses session transcripts and shows exactly what is eating your context per turn, flags duplicated and stale content, and recommends what to cut.
- —Parses Claude Code, Codex, and generic OpenAI chat transcripts with auto-detection
- —Per-turn breakdown, growth curve, high-water mark, and duplication detection
- —Rule-based recommendations with estimated token savings
Answerproof
Verifiable, tamper-evident receipts for RAG answers. Records which sources were retrieved and cited, under whose permissions, with a Merkle root and an Ed25519 signature anyone can verify independently.
- —Real Merkle tree with selective-disclosure inclusion proofs
- —Ed25519 signing over a deterministic canonical serialization
- —Citation binding that flags claims with no supporting source
Injection-arena
A self-hostable prompt-injection challenge game. Ten progressively harder levels stack real defenses; players try to make a guarded agent leak its secret, and a server-side judge scores every crack.
- —10 levels composing system-guard, input/output filters, roleplay-block, encoding-guard, and canaries
- —Deterministic offline mock agent so it is fully playable with no API key
- —Server-side judge with canary detection and obfuscation scanning, never trusts the client
RelayG
Support triage as a LangGraph state machine: typed state, SQLite checkpointing, and a human-in-the-loop interrupt that pauses the graph mid-run for refund approvals.
- —Agent modeled as an explicit state machine, not a vague loop
- —SQLite checkpointer records exactly where a run paused
- —Human-in-the-loop interrupt for risky actions, then resume
Resolvd
An end-to-end inbox operator: it auto-resolves support within policy and escalates the rest with a proposed action, so a human only handles what actually needs judgment.
- —Auto-resolves within policy, escalates the rest
- —Every escalation comes with a proposed action
- —Built to act, not just draft replies
Tracecase
CI for AI agents: record agent runs, replay them against prompt and model changes, and catch regressions before they ship.
- —Record and replay real agent runs
- —Diff behavior across prompt and model changes
- —Catch regressions in CI, not in production
Webhands
A computer-use agent for tools with no API. It operates a real browser and refuses any write until you confirm it.
- —Drives a real browser for tools that have no API
- —Refuses any write action until you confirm it
- —Human gate before anything irreversible
Bridgekit
A scoped MCP server that exposes company tools to agents with per-client permission boundaries and an append-only audit log of every call.
- —Per-client permission boundaries on every tool
- —Append-only audit log of every call
- —Any agent can call it safely
Greenlite
Approve your agents from your phone: a one-tap human-in-the-loop cockpit for agent escalations, on web and mobile.
- —One-tap approve or reject for agent escalations
- —Web and mobile approval cockpit
- —Keeps a human in the loop without slowing agents down
Casebook MCP
A live Model Context Protocol server that makes the AgentPostmortem failure registry queryable by any agent, over streamable HTTP, plus a Claude Agent SDK investigator.
- —Makes a real failure registry queryable by any agent
- —Streamable HTTP transport with a set of tools
- —Ships with a Claude Agent SDK investigator
Casebook Chat
A streaming investigation assistant that tool-calls the Casebook MCP server and answers with cited real case IDs, rendering tool invocations inline as it thinks.
- —Tool-calls the Casebook MCP server live
- —Answers with cited real case IDs, not vibes
- —Renders tool invocations inline as it reasons
AgentPostmortem
A public registry documenting real AI-agent failures, so teams can learn from them instead of repeating them. The registry behind Casebook MCP and Chat.
- —Public, structured registry of real agent failures
- —Each case documented so others do not repeat it
- —Backs the Casebook MCP server and chat assistant
Vaultrag
Permission-aware RAG where the access-control check lives inside the retrieval query. A gold-set eval fails CI on any leak: delete the predicate and leak rate goes from 0% to 81.8% while recall stays at 100%.
- —Access control enforced inside the retrieval query, not filtered afterwards
- —Hybrid vector plus full-text search fused with reciprocal rank fusion
- —Gold-set eval that fails CI on any leak, with recall reported beside it
Agentrace
Observability for AI agents. Parses Claude Code session transcripts with no instrumentation and flags results you should not trust, every check drawn from a real failure across 152 production runs.
- —No-instrumentation parsing of agent session transcripts
- —Flags hedged claims, missing output contracts, and silent errors
- —Every check derived from a real production failure
Voiceeval
Evaluation for voice agents. Timed turns with a truth field per case, catching misheard numbers, missing confirmations, and blown latency budgets that text evals miss.
- —Asserts on the fact, not the wording (fifteen vs fifty)
- —Latency budget per turn and dead-air detection
- —no_confirmation checks for actions never read back
Open Source & Tools
PennyRush
A private money hub: activity, receipt scans, imports, plans, and spending insights. Statements and receipts are parsed in memory and discarded, only the extracted fields are ever stored.
- —Receipt and statement parsing in memory, nothing raw is stored
- —Activity, imports, plans, and spending insights
- —Kotlin and Jetpack Compose Android app plus a web companion
Kabootar
Offline mesh messenger: chat with no internet, no servers, no SIM. Messages hop phone to phone over Bluetooth and Wi-Fi as a delay-tolerant network.
- —Delay-tolerant mesh: messages relay hop to hop and deliver when the recipient is reachable
- —Epidemic routing with id-based dedup, TTL bounds, and end-to-end delivery acks
- —Bluetooth and Wi-Fi transport, built in Flutter for Android and iOS
Tiny Day
A cozy, offline-first daily planner for Android: gentle scheduling, focus, replanning, and no accounts.
- —Offline-first: works fully without an account or a network connection
- —Gentle scheduling, focus sessions, and easy replanning
- —Private by design, data stays on the device
Water
VS Code extension that estimates the water footprint of your AI usage — making the environmental cost of LLM calls visible in the editor.
- —Live water-footprint estimates for AI-assisted coding
- —Per-session and cumulative usage tracking
- —Lightweight status bar integration
Drupal Chatbot
Built during Google Summer of Code 2023 — an AI chatbot integrated into Drupal to assist new contributor onboarding.
- —Integrated OpenAI and RapidAPI for intelligent contributor Q&A
- —Drupal module architecture for seamless CMS integration
- —Top 2% selection from 160 countries in GSoC 2023
DENT Network OS — Docs & Automation
Network documentation and Ansible automation for the DENT Network Operating System at the Linux Foundation.
- —Authored DENT documentation across the TCP/IP protocol stack
- —Configured 30+ networking topologies in GNS3 and DENT Labs
- —Top 6% globally (874/14,024) in LFX Mentorship 2023–24