Brokk (the Norse god of the forge) is the first code assistant that understands code semantically, not just as chunks of text. Brokk is designed to allow LLMs to work effectively on large codebases that cannot be jammed entirely into working context.
There is a Brokk Discord for questions and suggestions.
- Sign up at Brokk.ai
- Follow the instructions to install jbang and run Brokk
Brokk documentation is at https://brokk.ai/documentation/.
Brokk uses sbt (Scala Build Tool) since it has a Scala component. To build Brokk,
- Install sbt (e.g. with sdkman)
- Run the sbt repl:
sbt
(with JDK 21 or newer) - In the sbt repl, run individual commands:
run
,clean
,test
,assembly
, etc.
To debug PATH issues, inspect the environment from the shell Brokk uses.
-
On Linux/macOS (
/bin/sh
)/bin/sh -c env
-
On Windows (
cmd
)cmd /C set
If you're using WSL or Git Bash on Windows, you may still be using a Unix-like shell, and
/bin/sh -c env
would apply.
If sbt
does not appear in the output of these commands, Brokk won't be able to find it during execution.
We recommend using the official sbt installer, as it configures the PATH correctly on most systems.
There are documents on specific aspects of the code in src/main.
To explore available Look and Feel icons for UI development:
- GUI browser:
sbt "runMain io.github.jbellis.brokk.gui.SwingIconUtil icons"
- Console list:
sbt "runMain io.github.jbellis.brokk.gui.SwingIconUtil"
Use SwingUtil.uiIcon("IconName")
to safely load icons with automatic fallbacks.