Terminal agentic coding assistant
wakil
wakil is a terminal agentic coding assistant. It runs its tools in a hisn sandbox, works with the model endpoints you configure, and keeps memory and skills between sessions.
$ cd ~/projects/myapp && wakil
sandbox: backend=hisn
> add a test for the config loader
tool read_file src/config.go
tool search_files "LoadConfig"
tool run_shell go test ./...
confirm shell command? [y/N] y
ran inside the hisn sandbox
Install
Quick install
curl -fsSL https://github.com/treeol/wakil/releases/latest/download/install.sh -o install.sh && sh install.sh
It verifies checksums and installs wakil and the hisn sandbox into ~/.local/bin; see sh install.sh --help.
Manual install
With a Go toolchain, install the wakil binary into your Go bin directory. A go install build is not pinned to a sandbox image; run wakil version to check.
go install github.com/treeol/wakil/cmd/wakil@latest
Sandbox: hisn 0.4.1
wakil runs its tools in the hisn sandbox. wakil needs hisn 0.4.1 or newer to use it; with an older or missing hisn it falls back to Docker. The commands below are for Linux amd64 (use hisn-aarch64-linux-gnu on arm64).
V=https://github.com/treeol/hisn/releases/download/v0.4.1
curl -fsSLO "$V/hisn-x86_64-linux-gnu" && curl -fsSLO "$V/SHA256SUMS" &&
sha256sum --check --ignore-missing SHA256SUMS &&
sudo install -m 0755 hisn-x86_64-linux-gnu /usr/local/bin/hisn &&
hisn check
Then run wakil doctor in a project to check the runtime, config and image.
Release archives
Release archives (.tar.gz, .deb, .rpm, .apk) and the checksums.txt with its cosign signature are on the releases page. The README Quickstart shows how to verify a release and set up the model endpoint in ~/.config/wakil/config.json.
Features
-
Sandboxed tools
Shell, file and background-process tools run in hisn, in Docker, or directly on the host if you opt out.
-
Your model endpoints
Works with the model endpoints you configure in
~/.config/wakil/config.json. -
Memory and skills
Durable memory is kept per project and skills are shared across projects, so a new session starts with what earlier ones learned.
-
MCP connectors
Tools from MCP servers, over stdio or HTTP, are listed under
mcp_serversand shown by/mcp. -
Reasoning control
Set how much reasoning the model spends, per model or per role, and change it during a session with
/think. -
Headless runs
Run one task without the terminal UI using
wakil run; it exits with a status code.
How it works
-
Run wakil in a project
Change into a repository and start
wakil, or pass the project directory as an argument. -
The model works through tools
The model reads files, searches, and runs commands with its tools. Shell commands and workspace writes ask for your confirmation unless you turn on auto-approval.
-
Tools run in a sandbox
By default tools run in a hisn sandbox when it is usable, otherwise in Docker. Running without a sandbox is an explicit opt-in, and the confirmation prompt stays on.