Initialization
The cc-deck image init command scaffolds a build directory with everything you need to start building a custom image.
Usage
cc-deck image init <directory-name>
This creates a directory with:
my-image/
├── cc-deck-build.yaml # The manifest (source of truth)
├── .gitignore # Ignores .build-context/ and Containerfile
└── .claude/
├── commands/ # AI-driven slash commands
│ ├── cc-deck.build.md
│ ├── cc-deck.extract.md
│ ├── cc-deck.push.md
│ └── cc-deck.settings.md
└── scripts/ # Helper scripts
├── update-manifest.sh
└── validate-manifest.sh
The Manifest
The generated cc-deck-build.yaml contains your image name and the default base image, with all other sections commented out as examples:
version: 1
image:
name: my-image
base: quay.io/cc-deck/cc-deck-base:latest
# tag: latest
# tools:
# - "Go compiler >= 1.22"
# - "Python 3.12 with uv package manager"
# plugins:
# - name: sdd
# source: marketplace
You populate the manifest using the Claude Code commands or by editing it directly.