Skip to content

rune

rune.build · quick start · hack on rune

latest stable release total GitHub release downloads GPLv3 license Linux tests macOS tests Join us on Discord Rune subreddit follow @unstablebuild on X


rune-github-readme-18.mp4

Rune is a fast, GPU-accelerated, full-featured IDE and terminal multiplexer, suitable both for automatic and manual programming.

  • continue working from anywhere: All your Rune instances form an e2e-encrypted network of peers, powered by our headscale network. Connect to your workstation from your laptop, and to your laptop from your workstation.
  • batteries included: Production-grade language intelligence, out-of-the-box. Check the list of supported languages.
  • a new organizing model: Stay in the flow for longer. Rune's UI is a screen multiplexer that allows you to organize it freely. Nine workspace slots. Infinite terminals, tabs and windows. A built-in agent or IDE-grade skills for yours.
  • plugins and extensions: Extend Rune's functionality with official packages → or install community ones straight from a Git repository pkg install github.com/unstablebuild/rune-extension-themebuilder.
  • native application: A native graphics pipeline: OpenGL on Linux, Metal on macOS. No Electron.

install

curl -fsSL https://rune.build/install.sh | sh

development

git clone git@github.com:unstablebuild/rune.git

Then run:

go run ./cmd/rune

To create a macOS application bundle:

make rune-dmg

See prerequisites for more details.

Makefile

The Makefile has a few rules for common operations needed during development.

make                 # build all binaries into bin/
make debug           # build with the race detector and debug-only commands enabled
make clean           # remove bin/ and target/

# individual binaries
make rune            # the editor (bin/rune)
make rune-agent      # the agent extension binary (bin/rune-agent)

# testing and code quality
make test            # run the test suite with the race detector
make test-e2e        # also run the e2e suites (requires docker)
make test-no-race    # run the test suite without the race detector
make coverage        # generate a coverage report
make lint            # run golangci-lint
make format          # run go fmt
make generate        # regenerate generated files (protobufs, mocks, docs)

# license headers
make license         # add the license header to files that are missing one
make assert_license  # fail if any file is missing the canonical header

The remaining targets (dist, release, rune-dmg*, *-docker-*, *-notarize, *-dist*) drive Unstable Build's internal release, packaging, and cloud deployment pipelines and are not expected to work outside that environment.

Contributing

See CONTRIBUTING.md.

To report a security issue, see SECURITY.md.

Sponsorship

Rune is developed by Unstable Build, LLC, a self-funded organization. If you'd like to financially support us, you can do so via GitHub Sponsors; we might even send you some swag.

License

Rune is licensed under the GNU General Public License, version 3 or, at your option, any later version.

Releases

Sponsor this project

Used by

Contributors

Languages