rune.build · quick start · hack on rune
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.
curl -fsSL https://rune.build/install.sh | shgit clone git@github.com:unstablebuild/rune.gitThen run:
go run ./cmd/runeTo create a macOS application bundle:
make rune-dmgSee prerequisites for more details.
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 headerThe 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.
See CONTRIBUTING.md.
To report a security issue, see SECURITY.md.
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.
Rune is licensed under the GNU General Public License, version 3 or, at your option, any later version.