diff --git a/README.md b/README.md new file mode 100644 index 0000000..0c070ff --- /dev/null +++ b/README.md @@ -0,0 +1,60 @@ +# hako + +sandboxing claude code in a very primitive manner. + +## protects against + +- you accidentally letting claude run `rm -rf /` + +## DOES NOT PROTECT AGAINST + +- claude generating OR running malicious code +- container escapes + +## install + +### requirements + +- docker +- git repository (must be run within a git project) +- go 1.x (for building from source) + +```sh +go build -o hako +``` + +## usage + +### setup + +```sh +# build the main base container image +hako init + +# build a lang-specific container image (supports go for now) +hako init go +``` + +### actually sandboxing + +```sh +cd to/your/project + +hako up # spins a container up w/ the base image +hako up go # spins a container up w/ the lang-specific image + +# stop the container +hako down + +# list running containers +hako ps + +# download files from the container into cwd +hako sync +``` + +## configuration + +Configuration files are stored in `~/.config/hako/`: +- `Dockerfile.base` - Base Docker image configuration +- `Dockerfile.{lang}` - Language-specific Docker configurations