---
title: "Projects - Carlos Garavito"
description: "Eight shipped projects: a multi-model code review and remote agent sandboxes on Cloudflare, agent runtimes and MCP servers in Python and TypeScript, a Shopify agent and a Slack agent on Cloudflare Workers, a motion-graphics shorts pipeline, and a gallery of live agent widgets."
canonical_url: "https://cgaravito.dev/en/projects"
last_updated: "2026-09-10T00:00:00.000Z"
locale: "en"
---

# Projects

Eight projects I have built and shipped, with what each one does.

- Swarm code review - GitHub App on Cloudflare Workers that reviews each pull request with three model families on a full checkout in a disposable sandbox, and posts an inline comment only for the findings a verifier from another family confirms. The brief is read at the base commit, so a pull request cannot rewrite the instructions its own review follows, and evaluations against a sealed answer key measure its recall and false-positive rate.
- Remote agent sandboxes - Runs coding-agent sessions in Cloudflare Sandbox containers instead of on the laptop, with a CLI that starts each session, attaches it to a local Pi terminal and pulls the result back as a git commit on top of the commit the session started from. The task sandbox denies outbound traffic by default, and the Codex subscription credential never enters it, because a Durable Object holds it and brokers each request.
- LangChain on coding subscriptions - Runs LangChain and LangGraph programs on a Claude Code, Codex or OpenCode subscription, with tool calling and streaming. Python and TypeScript twins published on PyPI and npm; the TypeScript build sits on a zero-dependency Claude Code core. ([GitHub](https://github.com/cgaravitoq/open-langchain))
- Shopify agent on Telegram - Multi-tenant agent that runs any Shopify store from Telegram, whatever the sector, on Workers, D1, R2, Durable Objects and Queues. The production model was chosen with a bench of 18 scenarios across four models, 18/18 at about $0.0015 per turn.
- Slack agent runtime - Self-hosted agent runtime for Slack on Workers, Durable Objects, D1 and Workers AI: streamed replies, one durable conversation per thread and a sliding retention that destroys the conversation when it expires. Retention is 7 days for DMs and 15 for channels; the output sanitizer redacts Slack tokens and secret-looking assignments before anything reaches the thread. ([GitHub](https://github.com/cgaravitoq/agentic-slack))
- Remote MCP servers - Three OAuth 2.1 MCP servers on Cloudflare Workers with dynamic client registration, used daily from Claude and Codex. 15 tools across the three servers.
- Motion-graphics shorts pipeline - Local-first monorepo that turns a script into vertical 9:16 motion-graphics shorts with Hyperframes and GSAP scenes, ElevenLabs voice and a headless Chrome plus ffmpeg render. 39 typed scene types; uploads to Cloudflare R2 through a Worker, with the infrastructure defined in Effect and Alchemy. ([GitHub](https://github.com/cgaravitoq/motion-shorts))
- Live agent widgets - Static Astro gallery on an assets-only Cloudflare Worker for widgets that show live data from the agents in daily use, starting with the token usage island on this site. Each card plays a clip recorded from the live widget with puppeteer-core and ffmpeg, in light and dark, and a widget enters only if it shows live data where it runs. ([Live agent widgets](https://widgets.cgaravito.dev))
