stak.sh_
preview: history is still being backfilled nightly, so charts and rankings keep filling in

editorial: Researched by stak.sh from public sources polyglot: Writes five or more languages

Robert C. Martin

@unclebob-editorialUncle Bob, author of Clean Code and creator of FitNesse, SwarmForge and ub-mode

Hands his development to xAI's Grok Bots, which run in Cursor's cloud and follow ub-mode, his own skill for TDD, CRAP scores and mutation testing. He left Claude Code for Codex in spring 2026 and ran Codex and Grok Build side by side in SwarmForge, his agent orchestrator, before dropping CLI agents in October. His projects are mostly Clojure, now with TypeScript, Python and Go, built on a Mac.

in use
13
switched
3
last updated
Nov 2026

Researched by stak.sh from public sources. Not submitted by Robert C. Martin. Excluded from statistics. Want it corrected or removed? Report it.

Suggest an update Is this you? Claim it

Share Robert C. Martin

By category

13 tools in 8 categories

  1. language5
  2. Editors and IDEs2
  3. Code hosting1
  4. cloud1
  5. desktop1
  6. os1
  7. shell1
  8. terminal-multiplexer1

By group

13 tools in 4 groups

  1. Languages5
  2. Workstation5
  3. Infrastructure2
  4. Frontend1

Report this page

This form is anonymous, so we cannot tell whether a report comes from Robert C. Martin. If this page is about you, the fastest way to have it changed or removed is a message we can check: email us from an address we can verify, or message @stak_sh on X from your X account. Verified requests go first.

Uncle Bob's setup: from Claude to a squad of Grok Bots

Published · updated

Robert C. Martin, Uncle Bob, wrote Clean Code and Clean Architecture, co-authored the Agile Manifesto and created FitNesse. He has preferred Clojure for years: “I’ve nothing against Java; I just prefer clojure,” he wrote in 2018. His repositories are public under unclebob, and since he works with agents, many commits name their co-author. Together with his posts on X, that history dates most of the changes below.

The editor: IntelliJ, and Emacs again

Asked in 2018 how he built his Spacewar game, he answered: “Clojure, quil, IntelliJ with Cursive.” Cursive is the Clojure plugin for IntelliJ IDEA. In February 2024 he wrote: “After two decades I’m, once again, entering the emacs world. Wish me luck.” A day later he reported: “the basics are still buried in my brain that my fingers seen to know what to do in many cases. And then, of course, there’s the mouse. I never used emacs with a mouse before.”

None of his later posts that we found mention Emacs. His repositories from 2025 and 2026 still ignore IntelliJ’s .idea folders, and the .DS_Store files they ignore mean a Mac.

Early 2026: Claude

“It was 18 months ago that I started getting serious about AI,” he wrote in August 2026. “At first it was just a few simple tasks and translations. But soon I was working hard with agents and tools.” The first agent in his public history is Claude. In January 2026 commits to empire-2025, a Clojure remake of the old strategy game Empire, start carrying Claude Opus as co-author, and a CLAUDE.md follows a week later.

In February he was using Claude Code for experiments. He had it write Gherkin scenarios for a game from the 1970s and build it in Java, then in “C, Clojure, Ruby, Rust, and Javascript.” Then he had it build a mutation tester: “Clojure is the perfect language for mutation testing because it is so easy to parse and change… Semantic stability is really important when AIs are mucking around with the internals of the code.” Two days later he had “three sessions open. One doing mutation tests. One adding features to the project. Another working on a tool to help Claude match parentheses in Clojure (which seems beyond its grasp).” That tool became speclj-structure-check, a Claude skill.

Spring 2026: Codex and SwarmForge

In April he started SwarmForge, which runs several agents in separate git worktrees and tmux sessions, each with a role, and passes committed work between them. Its first configuration had Claude as the architect and Codex as the coder. By May he was “getting four agents working together. Specifier, coder, refactorer, and architect.” Two days later Claude was out: “I just cancelled my Claude account. I’ve been using codex, and haven’t used Claude in several weeks.” The last commit with Claude as co-author is from 16 April.

At the end of May he tried xAI’s new CLI, Grok Build, as a SwarmForge backend. He wasn’t convinced: “The model forgets rules more quickly and frequently than codex. Not ready for prime time just yet.” Three weeks later the two were close: “codex took 36 minutes to to a task. Grok did it in 18 minutes… Codex worked out of the box. Grok needed a bit of manual debugging.” His July Missile Command remake, in Clojure and ClojureScript with a leaderboard on Cloudflare, ran six Codex agents. By the end of August SwarmForge’s packs mixed the two: Grok writing code, Codex cleaning and specifying.

Late 2026: fewer harnesses

Much of his summer went into the harness itself. In August he described a workflow “described by a static FSM,” which he had his agents build, then simulate, then “run monte-carlo testing for many runs. The agents never would have thought of that kind of testing regime.” In September he stepped back: “while I was heads-down getting that to work, the agents got a LOT better. So much so that when I came up for air, the need for my harness was obviated.” He described “long debates with grok and codex about the structure of systems – as if they were senior engineers,” and said he could “walk away for 40 minutes and when I return it will be done.”

The checks stayed. He rebuilt his CRAP, duplication and mutation tools as crapper, dryer and mutator; crapper and mutator cover Clojure, Java, Go, TypeScript, Rust and Python. The projects also left Clojure more often: a book editor in TypeScript and Tauri, a screenplay editor, and the tools themselves in Python. He still uses Clojure, though: “The experiments I’ve run suggest that python and clojure are the most efficient languages for the agents to use.”

October 2026: Grok Bots

xAI launched Grok Bot in August: persistent agents, each with its own computer in Cursor’s cloud, directed by chat. On 25 October he published ub-mode, a skill that has an agent first make the code work, then make it right, and holds it to his quality gates: CRAP under 10, no near-duplicate code, mutation testing. “My grokbots use it when writing code,” he said. An hour later he added: “I am transitioning away from using CLI agents for development. On my last project I transitioned to using grokbots.”

What the stack says

The tools changed three times in a year: Claude, then Codex and Grok in terminals, then Grok Bots in the cloud. What stayed is the discipline he has argued for since the 1990s, now enforced by tools rather than reviewers: tests, complexity limits and mutation testing. He just set the limits differently for agents. “In my own code I limit cyclomatic complexity to 4 or so. But I allow agents to go as high as 10,” he wrote in October. “My hypothesis is that their short term memory is larger and more accurate than ours.”

Sources

  1. Clojure, quil, IntelliJ with Cursive x.com, 29 Sep 2018
  2. I've nothing against Java; I just prefer clojure x.com, 29 Nov 2018
  3. After two decades I'm, once again, entering the emacs world x.com, 18 Feb 2024
  4. Emacs. I'm remembering a lot. x.com, 19 Feb 2024
  5. empire-2025: Claude Opus as co-author, then CLAUDE.md and AGENTS.md github.com, 7 Jan 2026
  6. Told CLAUDE to write gerkin scenarios for it x.com, 8 Feb 2026
  7. I had claude write me a little mutation tester in clojure x.com, 22 Feb 2026
  8. I've got three sessions open x.com, 24 Feb 2026
  9. speclj-structure-check: a Claude skill for Clojure and speclj github.com, 24 Feb 2026
  10. SwarmForge: a simple tool for coordinating several AI agents github.com, 16 Apr 2026
  11. Getting four agents working together x.com, 12 May 2026
  12. I just cancelled my Claude account x.com, 14 May 2026
  13. Trying out the new grok-cli in swarm-forge x.com, 27 May 2026
  14. codex took 36 minutes to to a task. Grok did it in 18 minutes. x.com, 16 Jun 2026
  15. missile-command: six Codex agents in SwarmForge, scores on Cloudflare github.com, 30 Jul 2026
  16. An orchestration harness for a squad of agents x.com, 4 Aug 2026
  17. Introducing Grok Bot (xAI) x.ai, 11 Aug 2026
  18. I still use clojure x.com, 24 Aug 2026
  19. It was 18 months ago that I started getting serious about AI x.com, 25 Aug 2026
  20. OK. It's time to rethink this. x.com, 11 Sep 2026
  21. bookwriter: a writing app in TypeScript and Tauri github.com, 28 Sep 2026
  22. crapper: CRAP scores for Clojure, Java, Go, TypeScript, Rust and Python github.com, 30 Sep 2026
  23. Messy code slows agents down x.com, 11 Oct 2026
  24. My grokbots use it when writing code x.com, 25 Oct 2026
  25. ub-mode: an agent skill for disciplined engineering github.com, 25 Oct 2026
  26. I am transitioning away from using CLI agents for development x.com, 25 Oct 2026

Changelog

  • : Marked the inferred Codex and Grok Build end dates as approximate.
  • : Removed the quote from his 7 October 2026 post about organizing his bills and finances with Grok Bots, and its source.
  • : Page created from his posts on X and the history of his GitHub repositories. Codex and Grok Build end dates are inferred: on 25 October 2026 he wrote that he is moving away from CLI agents, and his last project used Grok Bots. Grok Bot is not in the catalog yet, so it appears only in the bio and the article. Emacs stays current: he went back to it in February 2024, and no later post says he left. IntelliJ stays current: his 2025 and 2026 repositories still ignore its project files.

Suggest an update