The easy way to containerize your AI agents.
Get StartedAbyss is the easy way to integrate with your agents across networked boundaries like Docker.
It's a playpen for AI. You choose what you want to copy in, what you want to actually expose, and Abyss takes care of managing the container for you.
You can even manage separate agents, with separate containers and resources. Swap seamlessly between them with Zed, or any of your other favorite ACP clients.

Keep secrets from your agent. Abyss only makes things visible to your agent when you tell it to, otherwise your agent lives in the dark.

Abyss intercepts ACP requests for filesystem and shell access and executes them inside the container.

Easily copy files, create bind mounts, and execute setup scripts all as part of your agent definition.
This config file is all you need to get started:
docker:
# This is a pre-built image with Abyss and Pi pre-installed
image: "ghcr.io/sethcurry/abyss-pi:latest"
# Abyss speaks ACP, so we invoke Pi via pi-acp
agent_command:
- pi-acp
host_mounts:
# This mounts the current directory inside the container.
# It doesn't take a target path because ACP sends a `cwd`
# so we need the paths to line up between the host and
# container
- source: "./"
# This mounts your .pi directory so that the agent has
# API keys for your LLM, prior sessions, plugins, etc.
#
# You can put this in the `copy_files` config section
# which will prevent the LLM from modifying your config files
# but your sessions won't end up on your host PC so the session
# files are lost when the container gets deleted.
- source: "~/.pi"
destination: "/root/.pi"Learn more in the Docs.