mirror of
https://github.com/Ark0N/Codeman.git
synced 2026-09-30 20:49:41 +02:00
Compare commits
2
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
71ffbf18e4 | ||
|
|
826ddaa9aa |
@@ -1,5 +1,28 @@
|
||||
# aicodeman
|
||||
|
||||
## 1.24.4
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- The Compose deployment image ships the Docker CLI instead of the whole Docker engine.
|
||||
|
||||
`docker/server.Dockerfile` installed Debian's `docker.io` to get a client for the mounted
|
||||
host socket. That package is the full **engine**: even with `--no-install-recommends` it
|
||||
pulls 15 packages including containerd, runc, dmsetup and iptables, none of which a
|
||||
container that only talks to a socket can use. It also ships Docker 20.10.24, from 2023.
|
||||
|
||||
The CLI and the buildx plugin are now copied from the official `docker:29-cli` image
|
||||
instead. Measured on the same `node:22-bookworm-slim` base: **266 MB → 108 MB**, a 158 MB
|
||||
saving, with the current CLI (29.7.2) in place of a two-year-old one.
|
||||
|
||||
Verified by building the real image and running it: the binaries are static Go builds, so
|
||||
they work on this glibc image even though they come from an Alpine one, and `docker
|
||||
--version`, `docker ps` and `docker build` all succeed against a mounted host socket as
|
||||
the unprivileged runtime user. buildx is copied deliberately — `scripts/build-agent-image.mjs`
|
||||
shells out to `docker build` and Codeman auto-builds the agent image on the first Docker
|
||||
case, which without the plugin falls back to the classic builder Docker has deprecated.
|
||||
`docker-compose` is not copied; Codeman never shells out to it.
|
||||
|
||||
## 1.24.3
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -75,7 +75,7 @@ When user says "COM":
|
||||
|
||||
CI runs `npm run check:lockfile` on every push/PR, so lockfile drift fails the build even if the `version-packages` script is bypassed.
|
||||
|
||||
**Version**: 1.24.3 (must match `package.json`)
|
||||
**Version**: 1.24.4 (must match `package.json`)
|
||||
|
||||
## Project Overview
|
||||
|
||||
|
||||
@@ -29,7 +29,6 @@ RUN apt-get update \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
ca-certificates \
|
||||
curl \
|
||||
docker.io \
|
||||
git \
|
||||
openssh-client \
|
||||
procps \
|
||||
@@ -37,6 +36,27 @@ RUN apt-get update \
|
||||
tmux \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# The Docker CLI, taken from the official image rather than Debian's `docker.io`.
|
||||
# That package is the full ENGINE: with --no-install-recommends it still pulls 15
|
||||
# packages including containerd, runc, dmsetup and iptables, none of which a
|
||||
# client that only talks to a mounted socket can use. Measured on top of this
|
||||
# base image: `docker.io` costs 266 MB and ships Docker 20.10.24 (2023), while
|
||||
# these two files cost 108 MB and ship the current CLI (493 MB vs 335 MB total).
|
||||
#
|
||||
# The binaries are STATIC Go builds, so they run on this glibc image even though
|
||||
# the image they come from is Alpine (verified: `docker --version`, `docker ps`
|
||||
# and `docker build` all work here against a mounted host socket).
|
||||
#
|
||||
# buildx is copied on purpose. `scripts/build-agent-image.mjs` shells out to
|
||||
# `docker build` — Codeman auto-builds the agent image on the first Docker case —
|
||||
# and without the plugin that silently falls back to the CLASSIC builder, which
|
||||
# Docker has deprecated and will eventually drop. `docker-compose` is NOT copied:
|
||||
# Codeman never shells out to it.
|
||||
COPY --from=docker:29-cli /usr/local/bin/docker /usr/local/bin/docker
|
||||
COPY --from=docker:29-cli \
|
||||
/usr/local/libexec/docker/cli-plugins/docker-buildx \
|
||||
/usr/local/libexec/docker/cli-plugins/docker-buildx
|
||||
|
||||
# Keep credentials out of the image. Users authenticate these CLIs at runtime
|
||||
# through Codeman sessions, and the configured host bind mount retains state.
|
||||
RUN npm install --global \
|
||||
|
||||
Generated
+2
-2
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "aicodeman",
|
||||
"version": "1.24.3",
|
||||
"version": "1.24.4",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "aicodeman",
|
||||
"version": "1.24.3",
|
||||
"version": "1.24.4",
|
||||
"hasInstallScript": true,
|
||||
"license": "MIT",
|
||||
"workspaces": [
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "aicodeman",
|
||||
"version": "1.24.3",
|
||||
"version": "1.24.4",
|
||||
"description": "Mission control for AI coding agents - run 20 autonomous agents with real-time monitoring and session persistence",
|
||||
"type": "module",
|
||||
"main": "dist/index.js",
|
||||
|
||||
Reference in New Issue
Block a user