Standard interface for running containers via Colima on macOS.

Install

mkdir -p .claude/skills/colima && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/18025" && unzip -o skill.zip -d .claude/skills/colima && rm skill.zip

Installs to .claude/skills/colima

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Guide to using Colima — container runtimes (Docker, containerd, Kubernetes, Incus) on macOS and Linux via lightweight Lima VMs. Use this skill whenever Colima is (or should be) the container backend: installing Colima; `colima start/stop/status/delete/ssh`; picking or switching a runtime; the `Cannot connect to the Docker daemon at unix:///var/run/docker.sock` error; Docker contexts and socket location; registry mirrors / insecure registries; buildx; bind or volume mounts that show up empty in the container; disk space recovery/resize; reachable VM IP; GPU / AI model workloads; config files, profiles and `COLIMA_HOME`; or a Colima VM that won't start. ALSO use it for **writing scripts that drive Colima** — bootstrap, dev-env, deploy, or CI scripts that bring Colima up non-interactively — because the skill has the correct flags, profile-specific socket paths, idempotent `colima start` guards, and readiness/teardown patterns that hand-written scripts routinely get wrong (e.g. inventing a non-existent flag or hardcoding the wrong docker socket). Prefer this over generic Docker advice whenever Colima is the daemon. This skill is specifically about **Colima** — not Docker Desktop, minikube, Kind, K3d, Rancher Desktop, OrbStack, Podman, or plain `limactl`.
1270 charsno explicit “when” triggerlonger than Claude Code's old 250-char listing cap (fine on current versions)
Beginner

Key capabilities

  • Boot a small VM and provision Docker, containerd, Kubernetes, or Incus inside it
  • Wire up the host client so docker commands work
  • Configure CPU, memory, and disk resources for the VM
  • Switch container runtimes by recreating the VM
  • Set up and run AI models with GPU support on Apple Silicon
  • Troubleshoot Docker daemon connection issues

How it works

Colima runs container runtimes on macOS and Linux by booting a small VM and provisioning the chosen runtime inside it. It then configures the host client to interact with the VM's runtime.

Inputs & outputs

You give it
colima start --runtime containerd
You get back
A VM running containerd, with nerdctl available

When to use colima

  • Start docker container runtime
  • Configure kubernetes with colima
  • Troubleshoot docker daemon connection

About this skill

Colima

Colima runs container runtimes on macOS (and Linux) with minimal setup. It's a higher-level wrapper over Lima: it boots a small VM and provisions Docker, containerd, Kubernetes and/or Incus inside it, then wires up the host client so docker (etc.) "just works".

Scope: the canonical source is the repo's own docs (docs/INSTALL.md, docs/FAQ.md) plus README usage. Behavior is version-gated in many places — keep the vX.Y.Z notes when advising, since users run a range of versions. Check the user's version with colima version.

Quick start

brew install colima      # + docker client if using Docker runtime: brew install docker
colima start             # boots the VM, Docker runtime by default
docker run hello-world   # docker client works with no extra setup

Full install options (MacPorts, Nix, Arch, binary, source) → references/install.md.

Core commands

CommandWhat it does
colima start [profile]Create/start the VM. Flags: --runtime, --kubernetes, --cpu, --memory, --disk, --edit, --env, --dns, --network-address, --vm-type, --foreground
colima stop [--force]Stop the VM. --force recovers a Broken status
colima statusShow running status (incl. Docker socket path)
colima listList profiles and their status/arch/cpus/mem/disk/runtime
colima restartStop + start (needed after editing mounts/config)
colima delete [--data]Delete the VM. --data also deletes container data (since v0.9.0 data lives on a separate disk)
colima ssh [-- <cmd>]Shell into the VM, or run one command
colima start --editStart while editing the YAML config (since v0.4.0)
colima templateEdit the default config template for new instances
colima updateUpdate the container runtime in place (since v0.7.6)
colima nerdctl ...nerdctl wrapper for the containerd runtime
colima model ...Set up / run AI models (GPU, krunkit; since v0.10.0)
colima versionPrint the version (use it before applying version-gated advice)

Profiles isolate independent VMs: colima start work operates on the work profile; default is default. colima --help / colima start --help list everything.

Runtimes — chosen at start

Default is Docker. Switching the runtime requires re-creating the VM — a stop/start alone does not change it: colima delete --data && colima start --runtime <new>.

  • Docker (default): colima startdocker ... works directly. Needs the docker client (brew install docker).
  • Containerd: colima start --runtime containerd → use colima nerdctl ... (run colima nerdctl install to add a nerdctl alias to $PATH).
  • Kubernetes: colima start --kubernetes (needs kubectl). Shares images with the chosen container runtime.
  • Incus (v0.7.0+): colima start --runtime incusincus ....
  • AI models / GPU (v0.10.0+, Apple Silicon, macOS 13+): colima start --runtime docker --vm-type krunkit then colima model run gemma3.

Per-runtime config, socket location, registry mirrors, buildx, nerdctl, AI model registries → references/runtimes.md.

Registry mirror (common task): colima start --registry-mirror <url> (repeatable) or --edit → add under docker.registry-mirrors. For the client to honor mirrors, the host ~/.docker/daemon.json may also need the same entries. Details → references/runtimes.md.

Customizing the VM

Defaults: 2 CPUs, 2 GiB memory, 100 GiB disk. Customize via flags or the config file.

colima start --cpu 4 --memory 8 --disk 100      # at create time
colima stop && colima start --cpu 4 --memory 8  # change an existing VM (disk can only grow)
colima start --vm-type=vz --vz-rosetta          # Rosetta 2 (v0.5.3+, Apple Silicon, macOS 13+)

Config files, profiles, COLIMA_HOME, passing env into the VM, Lima overrides → references/configuration.md.

Writing a bootstrap / CI / deploy script? See references/automation.md for non-interactive patterns: idempotent start (colima status guard), readiness wait (docker info loop), DOCKER_HOST wiring so the rest of the script targets Colima, --foreground for supervisors, teardown, and a GitHub Actions sketch.

Common gotchas (quick)

  • Cannot connect to the Docker daemon at unix:///var/run/docker.sock — an app isn't using Colima's Docker context. Point it at Colima's socket (export DOCKER_HOST="unix://$HOME/.colima/default/docker.sock") or relink the socket. Details + socket location by version → references/troubleshooting.md.
  • Broken status (e.g. after a macOS restart): colima stop --force, then colima start.
  • Docker bind mount shows empty — the host path must be under /Users/$USER, or add it to the mounts section of the config and colima restart. Paths with spaces are unsupported.
  • Won't start / fatal error — re-run with --verbose; common causes are no virtualization support or an x86_64 Homebrew/Colima on Apple Silicon. See references/troubleshooting.md.

Full troubleshooting (no internet/DNS, runc/cgroups error, disk recovery & resize, reachable IP, post-upgrade issues, deleting data) → references/troubleshooting.md.

References

  • references/install.md — all install methods (Homebrew, MacPorts, Nix, Arch, binary, source).
  • references/configuration.md — config file & profiles, file locations & env vars, custom VM env, Lima overrides, autostart.
  • references/runtimes.md — Docker (socket/contexts/registries/buildx), Containerd, Kubernetes, Incus, AI models; comparisons to Lima/minikube/Kind/K3d.
  • references/troubleshooting.md — startup failures, networking, mounts, disk, updates, deleting data.
  • references/automation.md — non-interactive patterns for bootstrap / CI / deploy scripts.

When not to use it

  • When using Docker Desktop, minikube, Kind, K3d, Rancher Desktop, OrbStack, Podman, or plain limactl
  • When the host path for a Docker bind mount contains spaces
  • When a non-existent flag is invented or the wrong docker socket is hardcoded in scripts

Limitations

  • Switching the runtime requires re-creating the VM
  • Disk can only grow, not shrink
  • Paths with spaces are unsupported for Docker bind mounts

How it compares

Colima provides a higher-level wrapper over Lima, simplifying the setup and management of container runtimes within lightweight VMs compared to manual Lima configurations.

Compared to similar skills

colima side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
colima (this skill)01moReviewBeginner
deployment-engineer43moNo flagsAdvanced
devops26moReviewIntermediate
k8s-kind15moReviewBeginner

Try saying

Example prompts that trigger this skill in your AI assistant.

Search skills

Search the agent skills registry