Valtteri Harmainen

Bruce Hauman Has Done It Again

Post cover image

Back in 2014, Bruce Hauman transformed ClojureScript development forever with Figwheel and that legendary Flappy Bird demo—live coding in the browser with instant feedback that felt like magic. Now he's done it again. The creator of Figwheel has built something that fundamentally changes how AI can help with Clojure development, and it's not just another coding assistant that struggles with parentheses.

Why AI Struggles with Clojure DevelopmentLink to Why AI Struggles with Clojure Development

AI coding tools have a dirty secret when it comes to Lisp-family languages: they're terrible at them. The reason isn't just the infamous parentheses problem, though that's real enough. LLMs consistently produce unbalanced forms and lose track of nested scope. The deeper issue is that Clojure development is fundamentally different from the file-based, compile-and-run workflows that most AI tools assume.

Clojure development happens in the REPL. You build understanding incrementally, testing small pieces of code against live data, exploring APIs interactively, and maintaining state across evaluations. Traditional AI assistants operate on static files, offering suggestions in a vacuum without any understanding of your running system, current namespace, or the data flowing through your application.

The result? AI suggestions that look plausible but break when you actually try to use them, because they lack the contextual awareness that makes Clojure development productive.

AI with Direct REPL AccessLink to AI with Direct REPL Access

Clojure MCP changes everything by giving AI direct access to your running REPL through Anthropic's new Model Context Protocol. Instead of working with static code files, Claude (or other AI assistants) can evaluate expressions, inspect results, explore your codebase, and iterate on solutions just like an experienced Clojure developer would.

This isn't just AI generating code—it's AI doing actual REPL-driven development, complete with the exploratory, incremental workflow that makes Clojure development so powerful.

How It Actually WorksLink to How It Actually Works

The magic happens through a live nREPL connection that persists throughout your AI conversation. When Claude needs to understand your data, it evaluates expressions and sees the actual results. When it suggests a function, it can test it immediately against real data. When it encounters an error, it can debug iteratively just like a senior Clojure developer would.

The tool also includes Clojure-aware editing with built-in linting from clj-kondo, proper formatting with cljfmt, and structure-aware transformations that prevent the syntax errors that plague other AI coding tools. It understands defmethod dispatch, complex nested forms, and the subtleties of Clojure's data structures.

Beyond the REPL integration, Clojure MCP can generate project summaries that give AI context about your codebase architecture, manage files with proper validation, and even commit changes to version control when you're satisfied with the results.

Why This Changes EverythingLink to Why This Changes Everything

This isn't just a better AI tool for Clojure—it's a demonstration of how AI assistance should work for dynamic, REPL-driven languages. Instead of fighting against Clojure's development model, it embraces and enhances it.

The implications extend beyond just individual productivity. Teams can use this for collaborative exploration of complex codebases, onboarding new developers with AI-guided discovery sessions, and maintaining the kind of tight feedback loops that make Clojure development enjoyable while getting AI assistance that actually understands the context.

More broadly, Clojure MCP shows how thoughtful integration can overcome the "training data disadvantage" that niche languages face with AI tools. Quality tooling with live feedback beats pattern matching from static examples every time.

Getting StartedLink to Getting Started

The tool is still in alpha, but it's already transformative for those willing to try it. You'll need Claude Desktop, a basic Clojure setup, and about ten minutes to configure the connection between your nREPL and the MCP server.

Bruce has open-sourced everything and is actively seeking contributors. If you've been disappointed by AI coding tools' handling of Clojure, this is your chance to see what's actually possible when AI and REPL-driven development work together instead of against each other.

The future of AI-assisted Clojure development is here, and it looks a lot like the REPL-driven workflow we already love—just with an AI pair programmer that works the same way experienced Clojure programmers do.

Valtteri Harmainen

Contact