docker-nixuser AGENTS.md

Repository guidance for docker-nixuser, a project that builds and publishes Docker images for both standard PC servers and ARM-based systems.

In plain words
What is it for?
Use it when changing the Docker image, Nix build, multi-platform CI, version tags, or GitHub Container Registry publishing.
Why use it?
It explains that publishing happens from version tags and describes the separate build and release behavior in continuous integration.

Instructions file for CodexOpenCode

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/grigio/docker-nixuser/agents-md
Clone the repo
git clone --depth 1 https://github.com/grigio/docker-nixuser

Made for: Codex, OpenCode.

Per session 1,391 This file is loaded in full into every session.
When invoked 1,391 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.01391 $0.01391
Opus 5 $0.00696 $0.00696
Sonnet 5 $0.00278 $0.00278
Haiku 4.5 $0.00139 $0.00139

Measured 2d ago against content hash d325f10edfa1, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

docker-nixuser AGENTS.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

AGENTS.md · 117 lines

How it starts

The opening of the file, as written. The whole thing — 117 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Development Guide

NOTE: Keep it updated with the most useful non-trivial dev info. Keep it minimal.

CI Publishing (CRITICAL)

The publish job runs on v* tag push (push: tags: ['v*']), not on push to master. Push to master only runs build (test, no ghcr.io push). To publish:

git tag vX.Y.Z && git push origin vX.Y.Z

Note: Uses push: tags trigger, not create event — git push --tags triggers it reliably. The tag triggers both build and publish jobs. The publish job builds amd64 + arm64, pushes platform-specific images, then creates multi-arch manifests (version + latest).

Multi-Platform CI Builds

The CI workflow builds Docker images for:

  • linux/amd64 (x86_64)
  • linux/arm64 (aarch64) — built via Nix --system aarch64-linux with QEMU emulation

Multi-platform images use Docker manifests. Platform-specific images are tagged as:

  • ghcr.io/grigio/docker-nixuser:TAG-amd64
  • ghcr.io/grigio/docker-nixuser:TAG-arm64

Arm64 builds use docker/setup-qemu-action for QEMU binfmt registration, allowing Nix to cross-build for aarch64-linux on amd64 runners via nix build .#default --system aarch64-linux.

Arm64 testing in CI uses docker run --platform linux/arm64 (relies on QEMU binfmt from docker/setup-qemu-action for transparent emulation).

Flake Auto-Update

The flake-update-check.yml workflow runs weekly (Sunday 2 AM UTC) and:

  1. Checks if flake.lock is up to date
  2. Updates GitHub status check
  3. Automatically creates a pull request if updates are available

Docker Image

The project creates a Docker image with Nix package manager running as non-root user nixuser.

Build

nix --extra-experimental-features 'nix-command flakes' build .#default

Load Image

docker load < result

Run Container

docker run -it nix-nixuser:latest

Test Nix Installation

docker run --rm nix-nixuser:latest sh -c 'whoami && nix profile add nixpkgs#hello && hello'

Expected output:

nixuser
Hello, world!

Read the full file on GitHub · 117 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 117 lines · 1,391 tokens per session scan A d325f10edfa1

Subscribe to this mod's changes

docker-nixuser AGENTS.md is an instructions file published in the GitHub repository grigio/docker-nixuser (22 stars, last pushed 1mo ago), licensed MIT. It adds 1,391 tokens to every session, about $0.0070 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.