Snail

From The Hei Canon

snail"a snail always carries its home, a shell, on its back" — is the fleet's container-based sandboxing environment for AI code agents. Provides isolated, reproducible execution environments with session management across Docker and Kubernetes backends.

Stack: Go. Private repo.

Integrates with an orchestration system (core) to spawn containers for autonomous AI tasks.

Presets

Preset Description
default Full dev environment with dotfiles, nvim, tmux, oh-my-posh
vanilla Languages + tools without personal dotfiles
builder Minimal: essentials, dotfiles, python, nodejs, docker
hooks Default + Signal CLI + message hooks for Claude Code
signal Default + Signal CLI + signal-mcp for MCP-based messaging
llamafactory Vanilla + LLaMA-Factory
dev-gpu GPU-enabled dev environment, batteries included
dev-builder Docker-in-Docker dev environment, batteries included
dev-web Frontend dev environment with Playwright MCP, browser-use, DinD

Profiles

Profiles at ~/.config/snail/profiles/ define session configurations, including which repos to clone. The dev profiles use dynamic repo discovery — SNAIL_DEV_REPOS_ORG / SNAIL_DEV_REPOS_USER environment variables clone all unarchived repos via the GitHub API.

snail run dev-gpu:my-session
snail run dev-builder:my-session
snail run dev-web:my-session

Secrets (Signal phone number, etc.) live separately in ~/.config/snail/secrets.yaml.

Volume mounts

Session volume mounts to /home/me. Anthropic config (~/.anthropic), a shared cache volume, and a models directory ($MODELS or ~/.cache/huggingface) are also automounted.

Sources

See also

  • core — orchestration system that spawns snail containers.
  • unleash — agent CLI runner inside the sandbox.
  • signal-integration — Signal CLI + MCP for the signal preset.