2026-09-24 20:24:22 UTC
1.28 GB
1
HERMES_HOME/opt/data
HERMES_LAZY_INSTALL_TARGET/opt/data/lazy-packages
HERMES_TUI_DIR/opt/hermes/ui-tui
HERMES_WEB_DIST/opt/hermes/hermes_cli/web_dist
HERMES_WRITE_SAFE_ROOT/opt/data
PATH/opt/hermes/bin:/opt/hermes/.venv/bin:/opt/data/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PLAYWRIGHT_BROWSERS_PATH/opt/hermes/.playwright
PYTHONDONTWRITEBYTECODE1
PYTHONUNBUFFERED1
XDG_RUNTIME_DIR/tmp/hermes-runtime
npm_config_install_linksfalse
[#000] sha256:307f8152a55ef1e9eeb1acbbee7bc81232615329eaeb00d8dd93b46be297f34c - 3.59% (47 MB)
[#001] sha256:92e3937f622905f865096b01104deee60257f75ab685e12d36fea018e0c7c89f - 29.42% (385 MB)
[#002] sha256:879d36b91c26d2258f83950401562b226d8331e8fb7b46b4ff24bcea7e56f00b - 16.25% (213 MB)
[#003] sha256:2d6d9c8f8bc6d3de008eaa7d2469e10c2a790d8476b0b5ed5486db2b1bbcecc6 - 0.07% (883 KB)
[#004] sha256:a60b541d562ce1d710991eaedb6504591cc836f78073371d67bd7f8dfbba8147 - 0.0% (12.8 KB)
[#005] sha256:9fc23699ab19652129c8aaadf777106532041f6125a5ae460712a5402b36c874 - 0.2% (2.68 MB)
[#006] sha256:cd2ec0f471b18451c4b1ef1b41814d40788b64e4e7541365565bf35f28b41794 - 0.0% (1.42 KB)
[#007] sha256:7a05828aaeed8fb1add8f42d9c24f51cf6ad66723c40c2aa2e7de3b02fbecead - 0.0% (3.25 KB)
[#008] sha256:1a9e7f2aa2a91b87caa9a97a80769dc0df9555cece686f5564408c71a5bea4bd - 1.78% (23.3 MB)
[#009] sha256:387ea9a6aa6fdaf42e00426d2589b44acdfbf650c258960c0b5b22fe651c21d7 - 3.65% (47.8 MB)
[#010] sha256:dcab5a3c8b62d458288c28b9b958cb25e49d5bfa5d96c6f0e5d964ba7e621b84 - 0.22% (2.91 MB)
[#011] sha256:d61c9e29b962e21b35343723ef8931d40700a907f2db32bc01f467d7807e870a - 0.0% (212 Bytes)
[#012] sha256:71b7db0130ceb6c412d2df41f8b76eb43f520b95e3cfa63b1c084a1b93116ce6 - 0.0% (115 Bytes)
[#013] sha256:63eabb0b528dd95042d3cfde267513b3b56c3fb27c9e68fb9a2196060ec2679c - 0.01% (159 KB)
[#014] sha256:a2ed8fc84bec43dc993a5242fcbe4a230ff7f1982cf31967172a8a442c64f71b - 0.0% (810 Bytes)
[#015] sha256:55a30d586bdcc930e3f75fcf299709b1edd19d00ca698876a477e2152f16e7a0 - 0.0% (706 Bytes)
[#016] sha256:83ae0236cb5b1a2e55071bc15da7715718e05412640a6f4492e228de6e11eb4e - 0.03% (410 KB)
[#017] sha256:3950565ed33872798e8a330d426e0a0b5fa50138b785f0e81557727a94783131 - 0.01% (184 KB)
[#018] sha256:79b5740ec0bc41e07c1f9f2269b54d2051c39d1da87e9b3c7f72a9b57f2b3725 - 19.96% (261 MB)
[#019] sha256:b72bd041c4b52643b96c910f8026cfc90e5d6ceedd6dab6777432227566e391c - 13.66% (179 MB)
[#020] sha256:d94c7eb4d6834dc80285b62e7d25dec8d4df0d74f9eceff835a32643f022bf8e - 0.0% (15.6 KB)
[#021] sha256:4b7a91318c303aa6c79e9672b2badee048d5cfa9487c399d05efffcecff11054 - 1.17% (15.3 MB)
[#022] sha256:7bed810463597c746e19f0bbfe2d5908d54de740ef6f7f47e4dc2c7459271976 - 0.02% (217 KB)
[#023] sha256:9aa08cb261dac1951469c70e5549f1ec8fd5f22ef60c189be4122d875bf9c0e6 - 0.0% (155 Bytes)
[#024] sha256:1e68d05c9bc2662eb3ce96bda8a390f6a3095ec2049ef3f4909ee25718d75a4e - 8.17% (107 MB)
[#025] sha256:9273b32eca7e044e4af039a5f7cf54f00fd8f92a46430eef1f384f8670dba34b - 0.08% (1.1 MB)
[#026] sha256:b6e45afc28da3de1a0b01fbf305bb2a5ed79412f3f9caa34ee1c39ea4b3a77d1 - 0.05% (626 KB)
[#027] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#028] sha256:a480a4e5ff83700eebcf99e477fe50c0b968a393f2105caaba2dfaf1ba6ebef5 - 0.31% (4.04 MB)
[#029] sha256:e89afbc6207c7da4fe4a6f8dcb5b6ff33a56734effd56dbd4d99b1a79d4c96e1 - 0.0% (116 Bytes)
[#030] sha256:cf40426729f0545050892435af0b4816a27e283334f2ea9510a8af195c432963 - 0.0% (128 Bytes)
[#031] sha256:c8108c954f3536036103e5115337b9733b264fb4b238c0c8124c36b739adf43f - 1.35% (17.7 MB)
[#032] sha256:da79c60460a8a12393471ad866f37da70fef25a17eef0077f7667cb35d42955d - 0.0% (31.5 KB)
[#033] sha256:4ddbcd3b4bdd5bac928e2e1ff5f88e18b14370323c7605514b4119a9bc976ff9 - 0.0% (1.93 KB)
[#034] sha256:f29d185460a8ec487f48e5c9f7c5d70416a9d2f9657d99faef27937cd5d7a385 - 0.0% (348 Bytes)
[#035] sha256:7147d556773b6a0591f4b615d93dfd83f9f3d8353b9ad22aeb5d0eb5d3a2bc9b - 0.0% (2.68 KB)
[#036] sha256:862c6fb9c9144c92bf9d419d4dd21a810e3c6509f135b40f1ba75dc663c9679a - 0.0% (208 Bytes)
[#037] sha256:458ecc101d0972e5886b4d6fa02464ccde2058e1b00638261b072298d4c230ec - 0.0% (1.9 KB)
[#038] sha256:f6897ed529fdf3aac0d86105bd99ef3ed95e99f75a0f9408af082e456f506a22 - 0.0% (1.19 KB)
[#039] sha256:91a99c9bc5d652b125f679c849901dc4bd16533229f92a03e88fc3669863c240 - 0.0% (1.89 KB)
[#040] sha256:8da01d131dd976853c68955100958512137b59ed8241e515f04222be97fcfab8 - 0.0% (809 Bytes)
[#041] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
# debian.sh --arch 'amd64' out/ 'trixie' '@1777939200'
2026-08-27 20:50:45 UTC (buildkit.dockerfile.v0)ENV PYTHONUNBUFFERED=1
2026-08-27 20:50:45 UTC (buildkit.dockerfile.v0)ENV PYTHONDONTWRITEBYTECODE=1
2026-08-27 20:50:45 UTC (buildkit.dockerfile.v0)ENV PLAYWRIGHT_BROWSERS_PATH=/opt/hermes/.playwright
2026-08-27 20:50:45 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c apt-get -o Acquire::Retries=3 update && apt-get -o Acquire::Retries=3 install -y --no-install-recommends ca-certificates curl iputils-ping python3 python-is-python3 ripgrep ffmpeg gcc g++ make cmake python3-dev python3-venv libffi-dev libolm-dev libatomic1 procps git openssh-client docker-cli xz-utils && rm -rf /var/lib/apt/lists/* # buildkit
2026-08-27 20:50:45 UTC (buildkit.dockerfile.v0)ARG HERMES_BOT_DESKTOP=1
2026-09-24 20:22:44 UTC (buildkit.dockerfile.v0)RUN |1 HERMES_BOT_DESKTOP=1 /bin/sh -c if [ "$HERMES_BOT_DESKTOP" = "1" ]; then apt-get -o Acquire::Retries=3 update && DEBIAN_FRONTEND=noninteractive apt-get -o Acquire::Retries=3 install -y --no-install-recommends tigervnc-standalone-server xfce4-panel xfwm4 xfdesktop4 xfce4-settings xfce4-terminal dbus-x11 x11-xserver-utils x11-utils x11-xkb-utils xauth fonts-dejavu-core chromium && rm -rf /var/lib/apt/lists/*; fi # buildkit
2026-09-24 20:22:44 UTC (buildkit.dockerfile.v0)COPY /opt/sqlite-fixed/lib/libsqlite3.so.3.53.4 /usr/local/lib/ # buildkit
2026-09-24 20:22:44 UTC (buildkit.dockerfile.v0)RUN |1 HERMES_BOT_DESKTOP=1 /bin/sh -c ln -sf libsqlite3.so.3.53.4 /usr/local/lib/libsqlite3.so.0 && ln -sf libsqlite3.so.3.53.4 /usr/local/lib/libsqlite3.so && printf '/usr/local/lib\n' > /etc/ld.so.conf.d/000-sqlite-fixed.conf && ldconfig && python3 -c "import sqlite3, sys; v = sqlite3.sqlite_version_info; sys.exit(f'linked SQLite {sqlite3.sqlite_version} still has the WAL-reset bug') if v < (3, 51, 3) else None; db = sqlite3.connect(':memory:'); db.execute(\"CREATE VIRTUAL TABLE docs USING fts5(content, tokenize='trigram')\"); db.execute(\"INSERT INTO docs VALUES ('hermes')\"); sys.exit('SQLite FTS5 trigram self-test failed') if db.execute(\"SELECT count(*) FROM docs WHERE docs MATCH 'erm'\").fetchone()[0] != 1 else None; db.close()" # buildkit
2026-09-24 20:22:44 UTC (buildkit.dockerfile.v0)ARG TARGETARCH=amd64
2026-09-24 20:22:44 UTC (buildkit.dockerfile.v0)ARG S6_OVERLAY_VERSION=3.2.3.0
2026-09-24 20:22:44 UTC (buildkit.dockerfile.v0)ARG S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf
2026-09-24 20:22:44 UTC (buildkit.dockerfile.v0)ARG S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563
2026-09-24 20:22:44 UTC (buildkit.dockerfile.v0)ARG S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581
2026-09-24 20:22:44 UTC (buildkit.dockerfile.v0)ARG S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e
2026-09-24 20:22:44 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c set -eu; case "${TARGETARCH:-amd64}" in amd64) s6_arch="x86_64"; s6_arch_sha="${S6_OVERLAY_X86_64_SHA256}" ;; arm64) s6_arch="aarch64"; s6_arch_sha="${S6_OVERLAY_AARCH64_SHA256}" ;; *) echo "Unsupported TARGETARCH=${TARGETARCH} for s6-overlay" >&2; exit 1 ;; esac; base="https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}"; curl -fsSL --retry 3 -o /tmp/s6-overlay-noarch.tar.xz "${base}/s6-overlay-noarch.tar.xz"; curl -fsSL --retry 3 -o /tmp/s6-overlay-symlinks-noarch.tar.xz "${base}/s6-overlay-symlinks-noarch.tar.xz"; curl -fsSL --retry 3 -o /tmp/s6-overlay-arch.tar.xz "${base}/s6-overlay-${s6_arch}.tar.xz"; { printf '%s %s\n' "${S6_OVERLAY_NOARCH_SHA256}" /tmp/s6-overlay-noarch.tar.xz; printf '%s %s\n' "${s6_arch_sha}" /tmp/s6-overlay-arch.tar.xz; printf '%s %s\n' "${S6_OVERLAY_SYMLINKS_SHA256}" /tmp/s6-overlay-symlinks-noarch.tar.xz; } > /tmp/s6-overlay.sha256; sha256sum -c /tmp/s6-overlay.sha256; tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz; tar -C / -Jxpf /tmp/s6-overlay-arch.tar.xz; tar -C / -Jxpf /tmp/s6-overlay-symlinks-noarch.tar.xz; rm /tmp/s6-overlay-*.tar.xz /tmp/s6-overlay.sha256 # buildkit
2026-09-24 20:22:44 UTC (buildkit.dockerfile.v0)COPY --chmod=0755 docker/tini-shim.sh /usr/bin/tini # buildkit
2026-09-24 20:22:44 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c useradd -u 10000 -m -d /opt/data hermes # buildkit
2026-09-24 20:22:44 UTC (buildkit.dockerfile.v0)COPY --chmod=0755 /usr/local/bin/uv /usr/local/bin/uvx /usr/local/bin/ # buildkit
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)COPY --chmod=0755 /usr/local/bin/node /usr/local/bin/ # buildkit
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)COPY /usr/local/lib/node_modules/npm /usr/local/lib/node_modules/npm # buildkit
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c ln -sf /usr/local/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm && ln -sf /usr/local/lib/node_modules/npm/bin/npx-cli.js /usr/local/bin/npx # buildkit
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)WORKDIR /opt/hermes
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)COPY package.json package-lock.json ./ # buildkit
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)COPY web/package.json web/ # buildkit
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)COPY ui-tui/package.json ui-tui/ # buildkit
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)COPY ui-tui/packages/hermes-ink/ ui-tui/packages/hermes-ink/ # buildkit
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)COPY apps/shared/ apps/shared/ # buildkit
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)ENV npm_config_install_links=false
2026-09-24 20:23:02 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c npm install --prefer-offline --no-audit --fetch-retries=5 && for i in 1 2 3; do npx playwright install --with-deps chromium --only-shell && break || { [ "$i" = 3 ] && exit 1; echo "playwright headless-shell install failed (attempt $i); retrying in 10s"; sleep 10; }; done && npm cache clean --force # buildkit
2026-09-24 20:23:07 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c if [ "$HERMES_BOT_DESKTOP" = "1" ]; then for i in 1 2 3; do npx playwright install chromium && break || { [ "$i" = 3 ] && exit 1; echo "playwright chromium install failed (attempt $i); retrying in 10s"; sleep 10; }; done; fi # buildkit
2026-09-24 20:23:07 UTC (buildkit.dockerfile.v0)COPY plugins/platforms/photon/sidecar/package.json plugins/platforms/photon/sidecar/package-lock.json plugins/platforms/photon/sidecar/patch-spectrum-mixed-attachments.mjs plugins/platforms/photon/sidecar/ # buildkit
2026-09-24 20:23:12 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c cd plugins/platforms/photon/sidecar && npm ci --no-audit --fetch-retries=5 && npm cache clean --force # buildkit
2026-09-24 20:23:12 UTC (buildkit.dockerfile.v0)COPY pyproject.toml uv.lock ./ # buildkit
2026-09-24 20:23:12 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c touch ./README.md # buildkit
2026-09-24 20:24:04 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c uv sync --frozen --no-install-project --extra all --extra messaging --extra otlp --extra anthropic --extra bedrock --extra azure-identity --extra matrix --extra google-chat # buildkit
2026-09-24 20:24:05 UTC (buildkit.dockerfile.v0)COPY web/ web/ # buildkit
2026-09-24 20:24:05 UTC (buildkit.dockerfile.v0)COPY ui-tui/ ui-tui/ # buildkit
2026-09-24 20:24:05 UTC (buildkit.dockerfile.v0)COPY apps/shared/ apps/shared/ # buildkit
2026-09-24 20:24:15 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c cd web && npm run build && cd ../ui-tui && npm run build # buildkit
2026-09-24 20:24:15 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c mkdir -p /tmp/.X11-unix && chmod 1777 /tmp/.X11-unix # buildkit
2026-09-24 20:24:15 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c mkdir -p /tmp/hermes-runtime && chmod 0700 /tmp/hermes-runtime # buildkit
2026-09-24 20:24:16 UTC (buildkit.dockerfile.v0)COPY --chmod=a+rX,go-w . . # buildkit
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c uv pip install --no-cache-dir --no-deps -e "." # buildkit
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)USER root
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c mkdir -p /opt/hermes/bin && cp /opt/hermes/docker/hermes-exec-shim.sh /opt/hermes/bin/hermes && chmod 0755 /opt/hermes /opt/hermes/bin/hermes && printf 'docker\n' > /opt/hermes/.install_method # buildkit
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)ARG HERMES_GIT_SHA=749220ef0007f8d87bd1531f1c24b0fe93816385
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)RUN |8 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e HERMES_GIT_SHA=749220ef0007f8d87bd1531f1c24b0fe93816385 /bin/sh -c set -eu; if [ -n "${HERMES_GIT_SHA}" ]; then printf '%s\n' "${HERMES_GIT_SHA}" > /opt/hermes/.hermes_build_sha; fi; mkdir -p /etc/hermes; HERMES_GIT_SHA="${HERMES_GIT_SHA}" python3 -c 'import json, os, pathlib, tomllib; project = tomllib.loads(pathlib.Path("/opt/hermes/pyproject.toml").read_text(encoding="utf-8"))["project"]; marker = pathlib.Path("/etc/hermes/image-provenance.json"); marker.write_text(json.dumps({"schema": 1, "deployment_kind": "image", "manager": "docker", "image": "nousresearch/hermes-agent", "version": project["version"], "revision": os.environ.get("HERMES_GIT_SHA") or None}, sort_keys=True, separators=(",", ":")) + "\n", encoding="utf-8"); marker.chmod(0o444)' # buildkit
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)COPY docker/s6-rc.d/ /etc/s6-overlay/s6-rc.d/ # buildkit
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)RUN |8 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e HERMES_GIT_SHA=749220ef0007f8d87bd1531f1c24b0fe93816385 /bin/sh -c mkdir -p /etc/cont-init.d && printf '#!/command/with-contenv sh\nexec /opt/hermes/docker/stage2-hook.sh\n' > /etc/cont-init.d/01-hermes-setup && chmod +x /etc/cont-init.d/01-hermes-setup # buildkit
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)COPY --chmod=0755 docker/cont-init.d/015-supervise-perms /etc/cont-init.d/015-supervise-perms # buildkit
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)COPY --chmod=0755 docker/cont-init.d/02-reconcile-profiles /etc/cont-init.d/02-reconcile-profiles # buildkit
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)ENV HERMES_WEB_DIST=/opt/hermes/hermes_cli/web_dist
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)ENV HERMES_TUI_DIR=/opt/hermes/ui-tui
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)ENV HERMES_HOME=/opt/data
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)ENV HERMES_WRITE_SAFE_ROOT=/opt/data
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)ENV HERMES_DISABLE_LAZY_INSTALLS=1
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)ENV HERMES_LAZY_INSTALL_TARGET=/opt/data/lazy-packages
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)ENV XDG_RUNTIME_DIR=/tmp/hermes-runtime
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)COPY --chmod=0755 docker/hermes-exec-shim.sh /opt/hermes/bin/hermes # buildkit
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)COPY --chmod=0755 docker/entrypoint-dispatch.sh /opt/hermes/docker/entrypoint-dispatch.sh # buildkit
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)ENV PATH=/opt/hermes/bin:/opt/hermes/.venv/bin:/opt/data/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)RUN |8 HERMES_BOT_DESKTOP=1 TARGETARCH=amd64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e HERMES_GIT_SHA=749220ef0007f8d87bd1531f1c24b0fe93816385 /bin/sh -c mkdir -p /opt/data # buildkit
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)VOLUME [/opt/data]
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/opt/hermes/docker/entrypoint-dispatch.sh"]
2026-09-24 20:24:22 UTC (buildkit.dockerfile.v0)CMD []
2026-09-24 20:25:26 UTC
1.27 GB
1
HERMES_HOME/opt/data
HERMES_LAZY_INSTALL_TARGET/opt/data/lazy-packages
HERMES_TUI_DIR/opt/hermes/ui-tui
HERMES_WEB_DIST/opt/hermes/hermes_cli/web_dist
HERMES_WRITE_SAFE_ROOT/opt/data
PATH/opt/hermes/bin:/opt/hermes/.venv/bin:/opt/data/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PLAYWRIGHT_BROWSERS_PATH/opt/hermes/.playwright
PYTHONDONTWRITEBYTECODE1
PYTHONUNBUFFERED1
XDG_RUNTIME_DIR/tmp/hermes-runtime
npm_config_install_linksfalse
[#000] sha256:b5d74b688654dda99557234223479d1600781c2797759908abb12a2e782ab1ad - 3.64% (47.4 MB)
[#001] sha256:1ea2de9e8b4d4515aeb33a7044bf891a0a668c6a7f93d0f3fddf4a56673bd2e7 - 28.43% (370 MB)
[#002] sha256:cdcfd63d918d73825288d068268ba98320d754caff1fdac6666709229bb4548c - 16.66% (217 MB)
[#003] sha256:40fd6dabeb994e150f988ed832472b308b2ae46a4aed3bd415c2f859c763a5f0 - 0.07% (871 KB)
[#004] sha256:a96d75f7319aa4a8152e75f8b116c4c73302b89f8eef77c27f73467060612bf4 - 0.0% (13.2 KB)
[#005] sha256:c580994f5f7f2bca589793756f83c6079b9dcb3a9b7e5d42a8d9c35a2b7cb7e6 - 0.24% (3.12 MB)
[#006] sha256:0c14788d0bddb36037c80a7007353304e47899bc8058a3dd31c650f5f25659f2 - 0.0% (1.42 KB)
[#007] sha256:4080b7282834b62c0a2da3ad856589dd4c3edefc6560fea9c535d8dc2a084da0 - 0.0% (3.25 KB)
[#008] sha256:efb2f17ceaff656c1495ba722d80d47753ac2a15ecccb96035a360d02300e7e7 - 1.71% (22.3 MB)
[#009] sha256:d2bc0eda791f060aedf6edaf95490da527fd33affac7957ec585b743232032ac - 3.68% (48 MB)
[#010] sha256:04296e94f4ebd270804cf9493cba5e32f6935a79c7ca1ab46ccfc05e65cbc0af - 0.22% (2.91 MB)
[#011] sha256:2a6a4a211d6d362cfc6122d2e726409bca2a24e0008c44927f7108afae98be09 - 0.0% (210 Bytes)
[#012] sha256:c89e441aafc1ec7177a30f3caa4839d4df6fe108a8bd362b99c58c71caa51a10 - 0.0% (116 Bytes)
[#013] sha256:bf737aabdacd283ed972c3d887ffc97ef14edde0b5642dddded921768d659db0 - 0.01% (159 KB)
[#014] sha256:e5723a89286207aad3bf66d89ab17c784ddeb3ed9bff8b8f8d74c70e23abc68e - 0.0% (810 Bytes)
[#015] sha256:ff5808508285eabcda58c8b7e9d8109041f721527607c7034b771cdc3c08b902 - 0.0% (706 Bytes)
[#016] sha256:5bd0d965958e06430dc7f081b7c30a1f2a2037fcc0782f6a396c06ec49e29a96 - 0.03% (410 KB)
[#017] sha256:2a87bfc8d7c8648be200172cd670c1753eab213e336271e3356f55ed2f279898 - 0.01% (184 KB)
[#018] sha256:e0a6bc95a871b102df2c171c3b94f4da09264828f792c9644f36cf4dd57db5cd - 20.13% (262 MB)
[#019] sha256:7d6a5b3294f9e770346bd95b43825953cfe23c4480a552addcfc3bd345f24fe2 - 14.08% (183 MB)
[#020] sha256:c2641f52f87090df637cde7473ef15e383a271b7a8617198997fe5f3c7ac9d46 - 0.0% (15.6 KB)
[#021] sha256:0c5ae6b2a672ce171ab5f429df704abe6afbe04dcb12e0fe867eeabb7b0b9944 - 1.17% (15.3 MB)
[#022] sha256:91c25d51b3d445421c10d25bc82210837a7c671d8bd718b4b8469e976d4d37ed - 0.02% (217 KB)
[#023] sha256:8923aa26e642f117442bcd8d11f40f455a9d1fcdef03c7203da074849d9c6127 - 0.0% (153 Bytes)
[#024] sha256:b03837b01bea78faec3e2221e3b4b9341e49aa98fd4eaf3fe6160e9e44c7782f - 8.1% (106 MB)
[#025] sha256:2de8481567fa9aad619f63ef6da6c45c374c5b59668d503484de5402f8aae5ce - 0.08% (1.1 MB)
[#026] sha256:6ec1ad70260bbbb53aa95d0bb66e6e7166228b7856281ce70bd957a806511455 - 0.05% (626 KB)
[#027] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#028] sha256:2fb9e2fd3125bd59b3a844182fe2e9fd322c072b00587520606e44049cafa904 - 0.31% (4.05 MB)
[#029] sha256:51edbec77de3ac9019182d81c7b8bae357980df28c1983dcd47a51e2c2faa96c - 0.0% (116 Bytes)
[#030] sha256:e7f9b9031c8c0a0bb6807e71e9fb200e3405b3f20ffb0cc3af6fc86b287d8e73 - 0.0% (128 Bytes)
[#031] sha256:a1b05d1e33ddace33d5ef1e61c236d07bd9dfdf30a53ea6fa6c0321fcc2beab1 - 1.36% (17.7 MB)
[#032] sha256:2bd6d8d34fd41415d441516324e592da193576b859a40c4e1235e0ad8dca68c3 - 0.0% (31.7 KB)
[#033] sha256:8b4876c006f0cb941d31862b870db8a9a479d3fedc4d45d260049fd27f807898 - 0.0% (1.93 KB)
[#034] sha256:8a7adc44a36785b3b699d182ec59dff2bee8fff5898c704df016171bcce831fe - 0.0% (348 Bytes)
[#035] sha256:a5c3861eeb2c469a9d663f459e4038d2590a0d0c3b783076f5cfe303565bfd63 - 0.0% (2.68 KB)
[#036] sha256:5dadb88c1751356adbf1d847d14f3fc7d3fef9a54b0c6a630cbc61e4d11845ff - 0.0% (210 Bytes)
[#037] sha256:ec2a2d2a70065351fda03eda1b39d55f5e8e48426c213ff44e30555fbe41f6b7 - 0.0% (1.9 KB)
[#038] sha256:229f95c196a41e66e2ccb9cb3486a93a758b5e9f8c32f027609890803f4433c6 - 0.0% (1.18 KB)
[#039] sha256:cf62918e0af7fc510f2fa7d14b404ae0bc481da6c43e2f573b464376cbab32c5 - 0.0% (1.89 KB)
[#040] sha256:8e73e20b3e4169df372a0abb5c74f99fd5e52ca50d983e54501ad9126ace648a - 0.0% (811 Bytes)
[#041] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
# debian.sh --arch 'arm64' out/ 'trixie' '@1777939200'
2026-08-02 03:11:00 UTC (buildkit.dockerfile.v0)ENV PYTHONUNBUFFERED=1
2026-08-02 03:11:00 UTC (buildkit.dockerfile.v0)ENV PYTHONDONTWRITEBYTECODE=1
2026-08-02 03:11:00 UTC (buildkit.dockerfile.v0)ENV PLAYWRIGHT_BROWSERS_PATH=/opt/hermes/.playwright
2026-08-02 03:11:00 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c apt-get -o Acquire::Retries=3 update && apt-get -o Acquire::Retries=3 install -y --no-install-recommends ca-certificates curl iputils-ping python3 python-is-python3 ripgrep ffmpeg gcc g++ make cmake python3-dev python3-venv libffi-dev libolm-dev libatomic1 procps git openssh-client docker-cli xz-utils && rm -rf /var/lib/apt/lists/* # buildkit
2026-08-02 03:11:00 UTC (buildkit.dockerfile.v0)ARG HERMES_BOT_DESKTOP=1
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)RUN |1 HERMES_BOT_DESKTOP=1 /bin/sh -c if [ "$HERMES_BOT_DESKTOP" = "1" ]; then apt-get -o Acquire::Retries=3 update && DEBIAN_FRONTEND=noninteractive apt-get -o Acquire::Retries=3 install -y --no-install-recommends tigervnc-standalone-server xfce4-panel xfwm4 xfdesktop4 xfce4-settings xfce4-terminal dbus-x11 x11-xserver-utils x11-utils x11-xkb-utils xauth fonts-dejavu-core chromium && rm -rf /var/lib/apt/lists/*; fi # buildkit
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)COPY /opt/sqlite-fixed/lib/libsqlite3.so.3.53.4 /usr/local/lib/ # buildkit
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)RUN |1 HERMES_BOT_DESKTOP=1 /bin/sh -c ln -sf libsqlite3.so.3.53.4 /usr/local/lib/libsqlite3.so.0 && ln -sf libsqlite3.so.3.53.4 /usr/local/lib/libsqlite3.so && printf '/usr/local/lib\n' > /etc/ld.so.conf.d/000-sqlite-fixed.conf && ldconfig && python3 -c "import sqlite3, sys; v = sqlite3.sqlite_version_info; sys.exit(f'linked SQLite {sqlite3.sqlite_version} still has the WAL-reset bug') if v < (3, 51, 3) else None; db = sqlite3.connect(':memory:'); db.execute(\"CREATE VIRTUAL TABLE docs USING fts5(content, tokenize='trigram')\"); db.execute(\"INSERT INTO docs VALUES ('hermes')\"); sys.exit('SQLite FTS5 trigram self-test failed') if db.execute(\"SELECT count(*) FROM docs WHERE docs MATCH 'erm'\").fetchone()[0] != 1 else None; db.close()" # buildkit
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)ARG TARGETARCH=arm64
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)ARG S6_OVERLAY_VERSION=3.2.3.0
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)ARG S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)ARG S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)ARG S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581
2026-09-24 20:22:45 UTC (buildkit.dockerfile.v0)ARG S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e
2026-09-24 20:22:46 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c set -eu; case "${TARGETARCH:-amd64}" in amd64) s6_arch="x86_64"; s6_arch_sha="${S6_OVERLAY_X86_64_SHA256}" ;; arm64) s6_arch="aarch64"; s6_arch_sha="${S6_OVERLAY_AARCH64_SHA256}" ;; *) echo "Unsupported TARGETARCH=${TARGETARCH} for s6-overlay" >&2; exit 1 ;; esac; base="https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VERSION}"; curl -fsSL --retry 3 -o /tmp/s6-overlay-noarch.tar.xz "${base}/s6-overlay-noarch.tar.xz"; curl -fsSL --retry 3 -o /tmp/s6-overlay-symlinks-noarch.tar.xz "${base}/s6-overlay-symlinks-noarch.tar.xz"; curl -fsSL --retry 3 -o /tmp/s6-overlay-arch.tar.xz "${base}/s6-overlay-${s6_arch}.tar.xz"; { printf '%s %s\n' "${S6_OVERLAY_NOARCH_SHA256}" /tmp/s6-overlay-noarch.tar.xz; printf '%s %s\n' "${s6_arch_sha}" /tmp/s6-overlay-arch.tar.xz; printf '%s %s\n' "${S6_OVERLAY_SYMLINKS_SHA256}" /tmp/s6-overlay-symlinks-noarch.tar.xz; } > /tmp/s6-overlay.sha256; sha256sum -c /tmp/s6-overlay.sha256; tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz; tar -C / -Jxpf /tmp/s6-overlay-arch.tar.xz; tar -C / -Jxpf /tmp/s6-overlay-symlinks-noarch.tar.xz; rm /tmp/s6-overlay-*.tar.xz /tmp/s6-overlay.sha256 # buildkit
2026-09-24 20:22:46 UTC (buildkit.dockerfile.v0)COPY --chmod=0755 docker/tini-shim.sh /usr/bin/tini # buildkit
2026-09-24 20:22:46 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c useradd -u 10000 -m -d /opt/data hermes # buildkit
2026-09-24 20:22:46 UTC (buildkit.dockerfile.v0)COPY --chmod=0755 /usr/local/bin/uv /usr/local/bin/uvx /usr/local/bin/ # buildkit
2026-09-24 20:22:46 UTC (buildkit.dockerfile.v0)COPY --chmod=0755 /usr/local/bin/node /usr/local/bin/ # buildkit
2026-09-24 20:22:46 UTC (buildkit.dockerfile.v0)COPY /usr/local/lib/node_modules/npm /usr/local/lib/node_modules/npm # buildkit
2026-09-24 20:22:46 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c ln -sf /usr/local/lib/node_modules/npm/bin/npm-cli.js /usr/local/bin/npm && ln -sf /usr/local/lib/node_modules/npm/bin/npx-cli.js /usr/local/bin/npx # buildkit
2026-09-24 20:22:46 UTC (buildkit.dockerfile.v0)WORKDIR /opt/hermes
2026-09-24 20:22:46 UTC (buildkit.dockerfile.v0)COPY package.json package-lock.json ./ # buildkit
2026-09-24 20:22:46 UTC (buildkit.dockerfile.v0)COPY web/package.json web/ # buildkit
2026-09-24 20:22:46 UTC (buildkit.dockerfile.v0)COPY ui-tui/package.json ui-tui/ # buildkit
2026-09-24 20:22:46 UTC (buildkit.dockerfile.v0)COPY ui-tui/packages/hermes-ink/ ui-tui/packages/hermes-ink/ # buildkit
2026-09-24 20:22:47 UTC (buildkit.dockerfile.v0)COPY apps/shared/ apps/shared/ # buildkit
2026-09-24 20:22:47 UTC (buildkit.dockerfile.v0)ENV npm_config_install_links=false
2026-09-24 20:23:15 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c npm install --prefer-offline --no-audit --fetch-retries=5 && for i in 1 2 3; do npx playwright install --with-deps chromium --only-shell && break || { [ "$i" = 3 ] && exit 1; echo "playwright headless-shell install failed (attempt $i); retrying in 10s"; sleep 10; }; done && npm cache clean --force # buildkit
2026-09-24 20:23:21 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c if [ "$HERMES_BOT_DESKTOP" = "1" ]; then for i in 1 2 3; do npx playwright install chromium && break || { [ "$i" = 3 ] && exit 1; echo "playwright chromium install failed (attempt $i); retrying in 10s"; sleep 10; }; done; fi # buildkit
2026-09-24 20:23:21 UTC (buildkit.dockerfile.v0)COPY plugins/platforms/photon/sidecar/package.json plugins/platforms/photon/sidecar/package-lock.json plugins/platforms/photon/sidecar/patch-spectrum-mixed-attachments.mjs plugins/platforms/photon/sidecar/ # buildkit
2026-09-24 20:23:26 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c cd plugins/platforms/photon/sidecar && npm ci --no-audit --fetch-retries=5 && npm cache clean --force # buildkit
2026-09-24 20:23:26 UTC (buildkit.dockerfile.v0)COPY pyproject.toml uv.lock ./ # buildkit
2026-09-24 20:23:26 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c touch ./README.md # buildkit
2026-09-24 20:24:59 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c uv sync --frozen --no-install-project --extra all --extra messaging --extra otlp --extra anthropic --extra bedrock --extra azure-identity --extra matrix --extra google-chat # buildkit
2026-09-24 20:24:59 UTC (buildkit.dockerfile.v0)COPY web/ web/ # buildkit
2026-09-24 20:24:59 UTC (buildkit.dockerfile.v0)COPY ui-tui/ ui-tui/ # buildkit
2026-09-24 20:24:59 UTC (buildkit.dockerfile.v0)COPY apps/shared/ apps/shared/ # buildkit
2026-09-24 20:25:19 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c cd web && npm run build && cd ../ui-tui && npm run build # buildkit
2026-09-24 20:25:19 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c mkdir -p /tmp/.X11-unix && chmod 1777 /tmp/.X11-unix # buildkit
2026-09-24 20:25:19 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c mkdir -p /tmp/hermes-runtime && chmod 0700 /tmp/hermes-runtime # buildkit
2026-09-24 20:25:20 UTC (buildkit.dockerfile.v0)COPY --chmod=a+rX,go-w . . # buildkit
2026-09-24 20:25:25 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c uv pip install --no-cache-dir --no-deps -e "." # buildkit
2026-09-24 20:25:25 UTC (buildkit.dockerfile.v0)USER root
2026-09-24 20:25:25 UTC (buildkit.dockerfile.v0)RUN |7 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e /bin/sh -c mkdir -p /opt/hermes/bin && cp /opt/hermes/docker/hermes-exec-shim.sh /opt/hermes/bin/hermes && chmod 0755 /opt/hermes /opt/hermes/bin/hermes && printf 'docker\n' > /opt/hermes/.install_method # buildkit
2026-09-24 20:25:25 UTC (buildkit.dockerfile.v0)ARG HERMES_GIT_SHA=749220ef0007f8d87bd1531f1c24b0fe93816385
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)RUN |8 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e HERMES_GIT_SHA=749220ef0007f8d87bd1531f1c24b0fe93816385 /bin/sh -c set -eu; if [ -n "${HERMES_GIT_SHA}" ]; then printf '%s\n' "${HERMES_GIT_SHA}" > /opt/hermes/.hermes_build_sha; fi; mkdir -p /etc/hermes; HERMES_GIT_SHA="${HERMES_GIT_SHA}" python3 -c 'import json, os, pathlib, tomllib; project = tomllib.loads(pathlib.Path("/opt/hermes/pyproject.toml").read_text(encoding="utf-8"))["project"]; marker = pathlib.Path("/etc/hermes/image-provenance.json"); marker.write_text(json.dumps({"schema": 1, "deployment_kind": "image", "manager": "docker", "image": "nousresearch/hermes-agent", "version": project["version"], "revision": os.environ.get("HERMES_GIT_SHA") or None}, sort_keys=True, separators=(",", ":")) + "\n", encoding="utf-8"); marker.chmod(0o444)' # buildkit
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)COPY docker/s6-rc.d/ /etc/s6-overlay/s6-rc.d/ # buildkit
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)RUN |8 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e HERMES_GIT_SHA=749220ef0007f8d87bd1531f1c24b0fe93816385 /bin/sh -c mkdir -p /etc/cont-init.d && printf '#!/command/with-contenv sh\nexec /opt/hermes/docker/stage2-hook.sh\n' > /etc/cont-init.d/01-hermes-setup && chmod +x /etc/cont-init.d/01-hermes-setup # buildkit
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)COPY --chmod=0755 docker/cont-init.d/015-supervise-perms /etc/cont-init.d/015-supervise-perms # buildkit
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)COPY --chmod=0755 docker/cont-init.d/02-reconcile-profiles /etc/cont-init.d/02-reconcile-profiles # buildkit
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)ENV HERMES_WEB_DIST=/opt/hermes/hermes_cli/web_dist
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)ENV HERMES_TUI_DIR=/opt/hermes/ui-tui
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)ENV HERMES_HOME=/opt/data
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)ENV HERMES_WRITE_SAFE_ROOT=/opt/data
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)ENV HERMES_DISABLE_LAZY_INSTALLS=1
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)ENV HERMES_LAZY_INSTALL_TARGET=/opt/data/lazy-packages
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)ENV XDG_RUNTIME_DIR=/tmp/hermes-runtime
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)COPY --chmod=0755 docker/hermes-exec-shim.sh /opt/hermes/bin/hermes # buildkit
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)COPY --chmod=0755 docker/entrypoint-dispatch.sh /opt/hermes/docker/entrypoint-dispatch.sh # buildkit
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)ENV PATH=/opt/hermes/bin:/opt/hermes/.venv/bin:/opt/data/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)RUN |8 HERMES_BOT_DESKTOP=1 TARGETARCH=arm64 S6_OVERLAY_VERSION=3.2.3.0 S6_OVERLAY_NOARCH_SHA256=b720f9d9340efc8bb07528b9743813c836e4b02f8693d90241f047998b4c53cf S6_OVERLAY_X86_64_SHA256=a93f02882c6ed46b21e7adb5c0add86154f01236c93cd82c7d682722e8840563 S6_OVERLAY_AARCH64_SHA256=0952056ff913482163cc30e35b2e944b507ba1025d78f5becbb89367bf344581 S6_OVERLAY_SYMLINKS_SHA256=a60dc5235de3ecbcf874b9c1f18d73263ab99b289b9329aa950e8729c4789f0e HERMES_GIT_SHA=749220ef0007f8d87bd1531f1c24b0fe93816385 /bin/sh -c mkdir -p /opt/data # buildkit
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)VOLUME [/opt/data]
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/opt/hermes/docker/entrypoint-dispatch.sh"]
2026-09-24 20:25:26 UTC (buildkit.dockerfile.v0)CMD []
Please be careful as this will not just delete the reference but also the actual content!
For example when you have latest and v1.2.3 both pointing to the same image
the deletion of latest will also permanently remove v1.2.3.