Full image

psyb0t/aicodebox:latest-full is the minimal image plus a general development toolchain, for agents that need to build and test code in many languages. It is built from Dockerfile.full on top of the minimal image from the same CI run, so both tags of a release carry the same base.

FROM psyb0t/aicodebox:latest-full

The entrypoint, workspace layout, Python package and modes are the same as latest. A child image picks one parent per variant and adds only its agent CLI, adapter and configuration. AICODEBOX_IMAGE_VARIANT=full is set inside the full image.

What it adds

Group Tools
Go Go 1.27.2, golangci-lint 2.14.0, gopls, dlv, staticcheck, gomodifytags, impl, gotests, gofumpt
Python flake8, black, isort, autoflake, pyright, mypy, vulture, pytest, pytest-asyncio, pytest-cov, requests, beautifulsoup4, lxml, pyyaml, toml, pipenv, poetry
Node pnpm, yarn, TypeScript, ts-node, eslint with the TypeScript plugin, prettier, nodemon, pm2, create-react-app, Vue CLI, Angular CLI, express-generator, newman, http-server, serve, lighthouse, Storybook CLI
Cloud and repos gh 2.102.0, Terraform 1.16.5, kubectl 1.37.1, Helm 3.22.0
Build and debug build-essential, make, cmake, pkg-config, clang-format, valgrind, gdb, strace, ltrace
Shell nano, vim, htop, tmux, zip, unzip, tree, fd, ripgrep, bat, eza, ag, shellcheck, shfmt, httpie, ping, dig
Databases sqlite3, psql, mysql, redis-cli

How the versions are pinned

Source Pin
Go toolchain and the release binaries (golangci-lint, gh, Terraform, kubectl, Helm) Version and SHA-256 per architecture in Dockerfile.full.
Go tools full-go/: go.sum locks the module graph, tools.txt lists what gets built. gopls has its own module in full-go/gopls/.
Node tools full-node/: exact versions in package.json, a frozen pnpm-lock.yaml, install scripts off, and a seven-day minimum release age in .npmrc.
Python tools full-python/requirements.txt, installed with --require-hashes, resolved from requirements.in with a fixed release-date cutoff.

The Node tools come with known advisories in their dependency trees. Optional Node tool advisories lists them and what they expose. Use the minimal image when you do not need these tools.

Building it locally

make build-full
make test-full-image

make build-full builds the minimal image first and passes it in as BASE_IMAGE. make test-full-image checks the variant marker, the user, the versions of the main tools and that every listed command runs. The lock refresh targets are in Development.


Table of contents