-
Notifications
You must be signed in to change notification settings - Fork 0
Customization Extensions
Extensions add extra tools on top of an existing agent image. They are defined locally under
~/.aicage-custom/extensions/.
Extensions are the normal answer when software or tools are missing inside the container.
After you add an extension under ~/.aicage-custom/extensions/, rerun aicage <agent> and select
it in the Extensions view.

The setup screen lists the extensions it finds locally and saves your selection in the project config when you accept the overview.
git clone https://github.com/aicage/aicage-custom-samples.git $HOME/.aicage-customThen rerun aicage <agent> and select the extension you want.
~/.aicage-custom/extensions/<EXTENSION>/
├─ extension.yml (or extension.yaml)
├─ Dockerfile # optional
└─ scripts/ # optional
├─ 01-setup.sh
└─ 02-install.sh
Define at least one of scripts/ or shares.
Only scripts in scripts/ are executed, in alphabetical order.
name: "Display name"
description: "Short description of what the extension adds."
shares: # optional
- ~/.config/my-tool
- ~/.cache/my-tool:roshares can be used to define host mounts. Each entry uses the same syntax as --share: HOST
or HOST:ro. The host path must already exist.
Scripts run inside the image build. Use bash, keep them non-interactive, and fail fast on
errors.
If present, your Dockerfile replaces the built-in extension Dockerfile. The build args provided
are BASE_IMAGE and EXTENSION.