mirror of
https://github.com/Ark0N/Codeman.git
synced 2026-10-30 12:49:33 +01:00
Compare commits
2
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
71ffbf18e4 | ||
|
|
826ddaa9aa |
No files matched your search
@@ -1,5 +1,28 @@
|
|||||||
# aicodeman
|
# 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
|
## 1.24.3
|
||||||
|
|
||||||
### Patch Changes
|
### 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.
|
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
|
## Project Overview
|
||||||
|
|
||||||
|
|||||||
@@ -29,7 +29,6 @@ RUN apt-get update \
|
|||||||
&& apt-get install -y --no-install-recommends \
|
&& apt-get install -y --no-install-recommends \
|
||||||
ca-certificates \
|
ca-certificates \
|
||||||
curl \
|
curl \
|
||||||
docker.io \
|
|
||||||
git \
|
git \
|
||||||
openssh-client \
|
openssh-client \
|
||||||
procps \
|
procps \
|
||||||
@@ -37,6 +36,27 @@ RUN apt-get update \
|
|||||||
tmux \
|
tmux \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& 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
|
# Keep credentials out of the image. Users authenticate these CLIs at runtime
|
||||||
# through Codeman sessions, and the configured host bind mount retains state.
|
# through Codeman sessions, and the configured host bind mount retains state.
|
||||||
RUN npm install --global \
|
RUN npm install --global \
|
||||||
|
|||||||
Generated
+2
-2
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "aicodeman",
|
"name": "aicodeman",
|
||||||
"version": "1.24.3",
|
"version": "1.24.4",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "aicodeman",
|
"name": "aicodeman",
|
||||||
"version": "1.24.3",
|
"version": "1.24.4",
|
||||||
"hasInstallScript": true,
|
"hasInstallScript": true,
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"workspaces": [
|
"workspaces": [
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "aicodeman",
|
"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",
|
"description": "Mission control for AI coding agents - run 20 autonomous agents with real-time monitoring and session persistence",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "dist/index.js",
|
"main": "dist/index.js",
|
||||||
|
|||||||
Reference in new issue
Block a user