Vis is a coding agent you can adapt to your tools and workflow. Ask it to explore a project, make a change or investigate a failure. Follow the work from your terminal, desktop or phone, with the same sessions on each.
A capable model can write code, but it does not know how your team works: which tests matter, how changes get reviewed or what must be checked before a release. You do. Vis lets you put that knowledge into tools the agent can use, instead of relying on a growing list of reminders.
For example, a function can select and run the right tests for a change. A hook can check the code after an edit and report problems. You define the operations and checks; the model decides how to combine them. Your instructions explain the process, while your code carries out its repeatable parts.
Python connects those steps. Models already use it to work with code and data; Vis lets them use the same language to compose your tools, inspect results and reuse useful helper functions. You can start with the built-in tools and add extensions as you need them.
You can also see how the answer was reached. Activities show actions, results and failures in the conversation. Your extensions choose what to show, so you can read a test result or build summary without deciphering a stream of shell commands. Switch devices to follow the same work, rather than start again.
Read Why I built Vis for the full motivation, or Getting started to try it.
One fictional project, three ways to work. All captures use a fresh demo gateway, database and sessions—no personal work. The linked galleries support buttons, keyboard navigation and swiping; GitHub shows the previews below.
Browse the desktop carousel → · Project tour · Release checklist
Browse the TUI carousel → · Session navigator · Project tour
Install Vis on the computer where your projects live. The default release includes the engine, Python and terminal client; it does not need Java or Git. Native packages support Apple silicon macOS and Linux (x64 or ARM64). See Runtime distributions for source builds and other installation options.
The installer writes to ~/.local/bin and can update your shell profile. You can
read it first.
curl -fsSL https://github.com/Blockether/vis/releases/download/installer/install-vis-agent | bash
Open a terminal in your project:
cd /path/to/project
vis-agent tui
Choose a provider, sign in and select a model. Your provider may charge for model usage; you can also use a supported local model. Try a read-only first task: “Explain how this project is organized. Don't change any files.”
Vis can edit files and run commands within its configured permissions. Review changes before using them. The first-session guide covers setup and what to expect.
Download the app from GitHub Releases:
the universal .dmg for macOS, or the .AppImage matching your Linux architecture.
Already installed the command? vis-agent desktop --track release downloads and
opens the stable app for you. The app connects to a gateway, the Vis service
running your sessions; opening the app does not start that service.
Follow Desktop setup
and Desktop and mobile apps to connect it.
Use your phone to check progress or continue a conversation on the same gateway. Both stores offer public testing without an invitation.
Follow the phone pairing guide.
Questions and beta feedback: contact@blockether.com.
vis-agent update
This selects the latest stable release. Preview and source-build updates need an explicit track; see updates and release tracks.
Use the native release for everyday work, or the JVM source build when developing Vis. The runtime comparison covers requirements, startup time and memory use.
The Python SDK lets you run and inspect sessions from your own programs. Vis is also available as a Clojure library.
Follow Extending Vis to add a tool for your workflow. For a working example of an automatic check, see Check code complexity after edits.
Apache License 2.0 — see LICENSE.
The speech service can install third-party models with separate license terms. THIRD_PARTY_MODELS.md lists their authors and licenses; it is generated from the installer's model manifest.
Can you improve this documentation? These fine people already did:
Karol Wojcik, blockether-deployer & Karol WójcikEdit on GitHub
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |