Agents & apps

Everything I build and use, agents first: the agent systems, the harness tooling they run on, and the apps that practice produces. Most of it is open source.

Agents

  • LicitaBotPython · agents

    Multi-skill agent for Spanish public procurement: parses PLACSP CODICE XML, maps CPV codes, scores eligibility against Ley 9/2017, extracts requirements from tender PDFs, and answers over WhatsApp.

  • Claude Agent SDK for n8nTypeScript · n8n community node

    Runs Claude Agent SDK and Claude Code tasks inside self-hosted n8n workflows: tool use, MCP integration, and multiple providers (Anthropic, OpenRouter, LiteLLM) behind one node.

  • SmartBe

    provisions and manages AI servers: Hetzner API, cloud-init, Tailscale

Agent CLIs & harness tooling

  • Mercadona CLIGo · 317 stars · 29 forks

    Unofficial shopping CLI for tienda.mercadona.es: search the catalog, read prices, build a cart and prepare checkout from the terminal. A single static binary with --json on every command, designed so an agent can drive it.

  • sxrPython · open source

    Session x-ray: every Claude Code and Codex session on a machine becomes a searchable corpus. Grep across transcripts, pull the exact command a past session ran, zoom into any event. Built for agents to use on themselves.

  • the contract, runtime and scaffold for CLIs an agent can drive

  • generates a repo's agent harness: hooks, rules, verification verbs

  • turns an authenticated browser HAR into a redacted HTTP contract, ready to package as a CLI

  • detects and removes AI-generated code patterns from branches

  • structural convention linter for Python codebases

  • command-line client for O'Reilly Answers, with real citations

Apps

  • PresentDockmacOS · beta

    Menu-bar toolbox for live sessions: draw on screen, read a private teleprompter, take audience questions, share a canvas with viewers. Everything juggled mid-presentation, one dock.

iOS apps

Six in one summer, none hand-written: I ran coding agents against tight specs with acceptance criteria and release gates, the same way I build agent systems for a bank by day. Two live on the App Store, one in TestFlight, three in progress.

Quiet Recall's Today screen with a ready review session and backlog recovery

Quiet Recall

iOS · Education · pay once · App Store

Understand difficult flashcards instead of memorizing them blindly.

A calm spaced-repetition queue paired with private, on-device AI explanations: when a card keeps failing, the app explains it instead of just rescheduling it. No account, no ads, no tracking, no subscription.

The backlog problem gets its own design: instead of the guilt-wall of 400 due cards, Quiet Recall offers a five-minute recovery session that records normal reviews and leaves the rest for later.

Shipped through 1.2 with two rounds of App Store screenshot and ASO iteration, all run from a metadata-as-code directory in the repo.

SwiftUI · on-device Apple Intelligence · spaced repetition · StoreKit

View on the App Store
Keepclip's clipboard history with typed entries and a hidden vault item

Keepclip

iOS + macOS · Productivity · App Store

Paste manager and secret vault.

Clipboard history that understands what it holds: links, code, colors and text are typed and searchable, sensitive entries live in a biometric-gated vault that renders as dots everywhere else.

The real engineering is the surface area: one shared core feeding six targets. The iOS app, a custom keyboard, Safari and share extensions, an action extension, and a Mac companion all have to agree about typing, dedup and vault rules.

SwiftUI · App Intents · keyboard/Safari/share/action extensions · macOS companion

NoteWhisper transcribing a voice note into structured text

NoteWhisper

iOS + API · TestFlight · Beta

Voice in, organized notes out.

Speak, and get organized notes back: Whisper and GPT-4o transcription, AI summaries, and Qdrant vector search across everything you've ever said. Spanish translation built in.

The backend is the interesting half: audio processing runs serverless on Modal, and Langfuse tracing plus Sentry were wired in from day one, so every transcription is a traced, debuggable pipeline run instead of a black box.

Swift · Whisper · GPT-4o · Qdrant · Modal · Langfuse · Sentry

GlossProof job flow for capturing before and after evidence

GlossProof

iOS · Business · in progress · In progress

Before-and-after proof for detailers.

For solo mobile detailers: one job records the customer and vehicle, before-evidence, service scope and visible condition marks, then aligned after-evidence and a reviewable completion proof to hand the customer.

Local-first, with a complete manual fallback for every capture step: scan, alignment and AI assists are conveniences, never requirements. It sells a factual handoff, not a legal damage inspection.

The 1.0 cut was ruthless on purpose: 28 features kept, 29 deferred, frozen in a launch-cut manifest so scope creep had to argue with a file, not a feeling.

SwiftUI · Vision · aligned photo capture · PDF reports

QuoteWalk's estimate builder populated with room line items

QuoteWalk

iOS · Business · in progress · In progress

Walk the rooms. Speak the scope. Send the quote.

Voice-first estimating for residential painters: walk a bedroom saying "two coats on these walls, repair three holes, exclude the ceiling" and watch it become catalog-backed line items and a Good/Better/Best quote.

The AI boundary is the product: the model structures spoken scope and maps it to the painter's own deterministic price catalog, but it never invents dimensions, labor rates, coverage, taxes or a final price. Pricing judgment stays with the human.

SwiftUI · SpeechAnalyzer · Foundation Models · deterministic pricing catalog · PDF

EventLead's lead screen pairing scanned contact data with a structured voice note

EventLead

iOS · Business · in progress · In progress

Scan the badge. Remember the conversation.

Event teams collect contact details but lose the conversation: the objection, the team size, the promised follow-up. EventLead pairs a badge or card scan with a ten-second voice note and structures it into the user's own qualification fields.

Follow-ups get scheduled before the next attendee arrives, and the pipeline exports as clean CSV and vCard. Speech and AI are capability-gated: manual entry and typed notes keep the app complete without them.

SwiftUI · Vision · SpeechAnalyzer · App Intents · AlarmKit