ai-dotfiles
Keeps AI agent setup portable across machines.
Cross-machine AI agent configuration for Mac and Linux.
Hello, I'm
but everyone calls me Savy
I build reliable backend systems, APIs, and AI-native developer tools. 8 years in, currently in the Bay Area.
Keeps AI agent setup portable across machines.
Cross-machine AI agent configuration for Mac and Linux.
Makes Anthropic SDK calls feel native in Clojure.
Idiomatic Clojure wrapper over the official Anthropic Java SDK. Build a request as a Clojure map, get a Clojure map back.
Centralizes standard identifier validation and formatting.
Unified validation, parsing, and formatting of standard identifier numbers for Clojure.
Brings HuggingFace tokenization into Clojure workflows.
Idiomatic Clojure tokenization over HuggingFace tokenizers via DJL.
Makes OpenAI Responses API calls feel native in Clojure.
Idiomatic Clojure wrapper over the official OpenAI Java SDK, focused on the Responses API.
Packages PostgreSQL connection, pooling, and PostGIS helpers.
PostgreSQL helpers for Clojure: connection specs, HikariCP pooling, next.jdbc coercion, and PostGIS support.
Splits text predictably for RAG and LLM pipelines.
Recursive text splitting for RAG and LLM pipelines, sized by characters or tokens.
Uses a local LLM to keep terminal windows named by context.
AI-powered tmux window auto-renamer using a local LLM via Ollama.
Turns PDF content into plain Clojure data.
Plain-data PDF extraction for Clojure over Apache PDFBox: text, words, objects, and tables as EDN.
Makes Clojure JOSE operations map-shaped and idiomatic.
Idiomatic Clojure JOSE - JWS, JWE, JWK/JWKS, and JWT (signed, encrypted, and nested) over Nimbus JOSE+JWT. Maps in, maps out.
San Jose, CA
Master of Science · Computer Engineering
Aug 2018 - May 2020
Bangalore, India
Bachelor of Engineering · Telecommunications
Sep 2012 - Jun 2016
The occasional deep-dive on something I figured out the hard way.
A macOS warning about Intel apps turned into a careful audit of old runtimes, Homebrew, helpers, databases, and bundled x64 resources. Codex with GPT-5.6-terra medium did the inspection and migration work; I kept the decisions that could destroy data.
Dependabot has no Clojure ecosystem, Renovate only speaks deps.edn, lein-ancient is Leiningen-only. How I landed on antq + GitHub Actions for a fleet of 18 libraries, and Renovate for the one repo where antq ships a build-breaking PR.
Small utilities for working with identifiers and data.
Validate IBAN, VAT, credit card, and national ID numbers across 257 formats, decode GS1-128 barcodes, and work with check digits.
Extract tables from digitally generated PDFs as readable data, CSV, and JSON.
Decode and verify compact JWTs, sign test tokens, and generate JOSE keys.
What I do when I'm not staring at a terminal.