Skip to content

kzsh/orka

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

orka

Latest: 2026-07-11

Orka runs LLM coding agents inside containers. Each session gets only the file-system context you choose to mount. This gives you agent sessions that don't have unrestricted access to your home directory.

Three runtimes are supported: pi, claude-code, and Codex.

The container image is built on each run first run and cached for subsequent runs.

See getting started, what is orka, or how it works for more details.

Install

Download the binary for your platform from Releases, make it executable, and put it on your PATH:

curl -Lo orka https://github.com/kzsh/orka/releases/latest/download/orka-x86_64-unknown-linux-musl
chmod +x orka
mv orka ~/.local/bin/
File Platform
orka-x86_64-unknown-linux-gnu Linux x86_64 (glibc)
orka-x86_64-unknown-linux-musl Linux x86_64 (static)
orka-aarch64-unknown-linux-gnu Linux ARM64 (glibc)
orka-aarch64-unknown-linux-musl Linux ARM64 (static)

Usage

Run orka from a project directory to mount it into the container and start the agent:

orka

Mount specific files instead of the entire directory:

orka -f src/main.rs -f Cargo.toml

Use a temporary directory as the workdir (persists after the container exits):

orka --tmp

Use a named scratch directory (created at ~/.local/share/orka/scratch/<NAME> (XDG_DATA_HOME)):

orka --scratchpad my-task

Options

Flag Description
--runtime Agent runtime: pi (default), claude, codex
--preset <NAME> Apply a named preset from environments.yaml. Repeatable.
--env <KEY=VALUE> Inject an env var into the container. Repeatable.
--file / -f <FILE> Mount a specific file instead of the CWD. Repeatable.
--tmp Use a temporary directory as the container workdir.
--scratchpad <NAME> Use a named persistent scratch directory as the workdir.
--harness-version / -v Pin the agent version to install (pi only).
--no-browser Skip installing agent-browser and Chromium (pi only).
--preserve-container Keep the container after it exits instead of removing it automatically.
--no-cache Rebuild the agent image without Docker layer cache.
--dry-run Print Docker commands without running them.
--verbose Show Docker build output (suppressed by default).
--print-license Print the license text and exit.

Presets

Presets are named configurations defined in ~/.config/orka/environments.yaml. Each preset can specify volumes to mount and environment variables to inject. Presets can be stacked with multiple --preset flags.

See config/environments.yaml for the format.

About

No description, website, or topics provided.

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors