Installation

This section covers how to install Clojure and set up your development environment for agentic engineering. We are going to use tools from Node.js and Python as well.

Prerequisites

All of the below dependencies can be installed via this homebrew Brewfile.

brew "pandoc"
brew "qemu"
brew "clojure/tools/clojure"
brew "borkdude/brew/babashka"
brew "babashka/brew/bbin"
brew "clojure-lsp/brew/clojure-lsp-native"
brew "node"
brew "pipx"
brew "anomalyco/tap/opencode"
brew bundle

Each tool is defined with specific install instructions.

SDKMAN

This manual assumes a Unix style operating system, MacOS or Linux.

You will need the JVM installed. We suggest that you use the SDKMAN project to manage your different JVM instances. For this work, we are going to use the latest version of GraalVM

curl -s "https://get.sdkman.io" | bash

After we have installed SDKMAN, let’s go ahead and install GraalVM 25.

sdk install java 25.0.2-graalce

Pandoc

Pandoc is a power tool for document transformation and validation. We are going to use pandoc in our manual.

brew install pandoc

Qemu

We are going to use Qemu with Gondolin. Its a native dependency installed via brew.

brew install qemu

Clojure

Installing Clojure

Now let’s install the Clojure command line tools. If you use Homebrew, you can install the Clojure command line tools with the following command:

brew install clojure/tools/clojure

See the Clojure documentation for more details

Install Babashka

Babashka is a native Clojure interpreter for scripting with fast startup.

brew install borkdude/brew/babashka

Install bbin

Bbin is a tool for installing Babashka scripts

brew install babashka/brew/bbin

Install clojure-lsp

brew install clojure-lsp/brew/clojure-lsp-native

NodeJS

Install NodeJS

There are a lot of AI tools written in NodeJS. Now let’s install Node.js:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.4/install.sh | bash
nvm install 24

Gondolin

npm install -g @earendil-works/gondolin

Python

Install Python

Python is one of the default languages for working with LLM Agents. There are serveral important libraries and tools that we are going to be reviewing for this manual. There are lot of Python build tools, but we are going to use pipenv.

Lets install pipx for install global python tools.

brew install pipx
pipx install pipenv
pipx install llm

Verifying Your Installation

Let’s make sure everything is installed correctly.

Verify Java

java --version

Verify Clojure

clojure --version

Verify Node.JS

node --version