# AIStor Memory (aimem) RELEASE.2026-10-30T18-15-12Z

Released: 2026-10-30

The AIStor Memory (aimem) Memory Bucket commands are now top-level, so `aimem bucket create my-project` becomes
`aimem create my-project`, and `aimem delete` asks for the bucket name before it deletes anything. On an AIStor server
with object annotations switched off, which is the default, an annotation write made with `tee` now fails with
"Operation not supported" instead of an I/O error, and `aimem history --annotations` shows the history instead of
failing.

---

## Downloads

### Binaries

| Platform | Architecture | Download                                                                                                                            |
| -------- | ------------ | ----------------------------------------------------------------------------------------------------------------------------------- |
| Linux    | amd64        | [aimem.RELEASE.2026-10-30T18-15-12Z](https://dl.min.io/aistor/aimem/release/linux-amd64/archive/aimem.RELEASE.2026-10-30T18-15-12Z) |
| Linux    | arm64        | [aimem.RELEASE.2026-10-30T18-15-12Z](https://dl.min.io/aistor/aimem/release/linux-arm64/archive/aimem.RELEASE.2026-10-30T18-15-12Z) |

The setuid `aimem-fusermount` mount helper, the `aimem-bio` binary that `aimem bio` runs, and the Kubernetes CSI node
driver are published beside it:

| Binary             | Architecture | Download                                                                                                                                                  |
| ------------------ | ------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `aimem-fusermount` | amd64        | [aimem-fusermount.RELEASE.2026-10-30T18-15-12Z](https://dl.min.io/aistor/aimem/release/linux-amd64/archive/aimem-fusermount.RELEASE.2026-10-30T18-15-12Z) |
| `aimem-fusermount` | arm64        | [aimem-fusermount.RELEASE.2026-10-30T18-15-12Z](https://dl.min.io/aistor/aimem/release/linux-arm64/archive/aimem-fusermount.RELEASE.2026-10-30T18-15-12Z) |
| `aimem-bio`        | amd64        | [aimem-bio.RELEASE.2026-10-30T18-15-12Z](https://dl.min.io/aistor/aimem/release/linux-amd64/archive/aimem-bio.RELEASE.2026-10-30T18-15-12Z)               |
| `aimem-bio`        | arm64        | [aimem-bio.RELEASE.2026-10-30T18-15-12Z](https://dl.min.io/aistor/aimem/release/linux-arm64/archive/aimem-bio.RELEASE.2026-10-30T18-15-12Z)               |
| `aimem-csi-driver` | amd64        | [aimem-csi-driver.RELEASE.2026-10-30T18-15-12Z](https://dl.min.io/aistor/aimem/release/linux-amd64/archive/aimem-csi-driver.RELEASE.2026-10-30T18-15-12Z) |
| `aimem-csi-driver` | arm64        | [aimem-csi-driver.RELEASE.2026-10-30T18-15-12Z](https://dl.min.io/aistor/aimem/release/linux-arm64/archive/aimem-csi-driver.RELEASE.2026-10-30T18-15-12Z) |

Each binary has `.sha256sum`, `.minisig`, and `.asc` files at the same path. These links point into `archive/`, where a
release's files stay after a newer release ships, so they always serve this build. The unversioned
`…/linux-{arch}/aimem` path serves whatever release is newest.

### Packages

`.deb`, `.rpm`, and `.apk` install the `aimem` client, the setuid `aimem-fusermount` mount helper
(`/usr/bin/aimem-fusermount`, mode 4755), and `aimem-bio`. They also install a disabled example `mnt-aimem.mount`
systemd unit and the `/sbin/mount.aimem` helper it needs.

| Format | Architecture | Download                                                                                                                                    |
| ------ | ------------ | ------------------------------------------------------------------------------------------------------------------------------------------- |
| DEB    | amd64        | [aimem_20261030181512.0.0_amd64.deb](https://dl.min.io/aistor/aimem/release/linux-amd64/archive/aimem_20261030181512.0.0_amd64.deb)         |
| DEB    | arm64        | [aimem_20261030181512.0.0_arm64.deb](https://dl.min.io/aistor/aimem/release/linux-arm64/archive/aimem_20261030181512.0.0_arm64.deb)         |
| RPM    | amd64        | [aimem-20261030181512.0.0-1.x86_64.rpm](https://dl.min.io/aistor/aimem/release/linux-amd64/archive/aimem-20261030181512.0.0-1.x86_64.rpm)   |
| RPM    | arm64        | [aimem-20261030181512.0.0-1.aarch64.rpm](https://dl.min.io/aistor/aimem/release/linux-arm64/archive/aimem-20261030181512.0.0-1.aarch64.rpm) |
| APK    | amd64        | [aimem_20261030181512.0.0_x86_64.apk](https://dl.min.io/aistor/aimem/release/linux-amd64/archive/aimem_20261030181512.0.0_x86_64.apk)       |
| APK    | arm64        | [aimem_20261030181512.0.0_aarch64.apk](https://dl.min.io/aistor/aimem/release/linux-arm64/archive/aimem_20261030181512.0.0_aarch64.apk)     |

The packages depend only on libc (`libc-bin` / `glibc-common`); no `libfuse` is needed.

### Container Images

```bash
# The aimem client, pinned to this release:
docker pull quay.io/minio/aistor/aimem:RELEASE.2026-10-30T18-15-12Z

# The Kubernetes CSI node driver, pinned to this release:
docker pull quay.io/minio/aistor/aimem-csi-driver:RELEASE.2026-10-30T18-15-12Z
```

The `latest` tag of each image also points at this release, but moves when the next one ships. To verify a build, pin
the release tag or a `@sha256:` digest, never `latest`.

Mounting from a container needs `/dev/fuse`. As root, it also needs `CAP_SYS_ADMIN` (or `--privileged`). As a non-root
user, the container needs `SYS_ADMIN` added to its capabilities and `allowPrivilegeEscalation: true`, so the setuid
helper can run.

### Verification

Each binary is signed with minisign (preferred) and GPG, and has a sha256sum file.

```bash
BASE=https://dl.min.io/aistor/aimem/release/linux-amd64/archive
curl -fsSLO $BASE/aimem.RELEASE.2026-10-30T18-15-12Z
curl -fsSLO $BASE/aimem.RELEASE.2026-10-30T18-15-12Z.minisig
curl -fsSLO $BASE/aimem.RELEASE.2026-10-30T18-15-12Z.sha256sum

# minisign
minisign -Vm aimem.RELEASE.2026-10-30T18-15-12Z \
  -P RWTx5Zr1tiHQLwG9keckT0c45M3AGeHD6IvimQHpyRywVWGbP1aVSGav

# sha256: the checksum file names the versioned binary, so keep that file name
sha256sum -c aimem.RELEASE.2026-10-30T18-15-12Z.sha256sum
```

The minisign public key above is the MinIO release-signing key, used across the AIStor product line.

---

## Changes since RELEASE.2026-10-27T17-44-57Z

### New Features

- **Memory Bucket commands are top-level.** `create`, `convert`, `list`, `get`, `delete` and `credentials` now follow
  `aimem` directly, as in `aimem create my-project` or `eval "$(aimem credentials my-project)"`. The older
  `aimem bucket <command>` and `aimem cortex <command>` forms still work and print a deprecation notice on stderr.
  (#270)
- **`aimem delete` asks before it deletes.** On an interactive terminal it asks you to type the bucket name. A new
  `--yes` (`-y`) flag skips the question. Commands run without a terminal, such as in CI, are not asked. (#270)

### Bug Fixes

#### Object annotations

- On an AIStor server with annotations switched off, writing a note under `.aimem/annot/<path>/@<name>` failed with a
  generic I/O error (`EIO`). It now fails with "Operation not supported" (`ENOTSUP`), so agents and scripts can tell
  that the feature is off rather than that the path is wrong. The `aimem` skill now tells agents to stop retrying in
  that case, and to write notes with `tee`, because a shell `>` redirection does not report the failure. (#271)
- `aimem history --annotations` failed outright on such a server. It now prints the version history without annotations,
  and says on stderr that annotations are unsupported. (#271)

### Behaviour Changes

- **Six new reserved bucket names.** A bucket named `create`, `convert`, `list`, `get`, `delete` or `credentials` can no
  longer be mounted as `aimem <name> <mountpoint>`, because that now runs the command. Mount such a bucket as
  `aimem s3://<name>/ <mountpoint>`. `aimem create` now refuses every command name as a bucket name; `aimem convert`
  still accepts one and prints how to mount it. (#270)
- **Known issue — Kubernetes:** the CSI driver passes the bucket name bare, so a volume whose bucket is one of these six
  names, and that sets no `prefix`, fails to mount on this release. Fixed in
  [RELEASE.2026-10-30T22-40-52Z](https://dl.min.io/aistor/aimem/release/notes/release-notes-RELEASE.2026-10-30T22-40-52Z.md);
  use that driver instead. (#270, #272)
- **Object annotations are a tech preview.** AIStor ships them switched off. They can be enabled for a deployment under
  guidance from MinIO support. Avoid using them with production data until annotations are generally available. (#271)

### Security Updates

- **Build-time only: `libz-sys` 1.1.31** for [RUSTSEC-2026-0418](https://rustsec.org/advisories/RUSTSEC-2026-0418.html)
  (GHSA-8p3x-q3q3-q3v5). The flaw leaks the build environment into the build directory; `libz-sys` runs only while
  building `aimem` and `aimem-bio` and is not part of either binary, so the published files were not exposed. This
  update clears it from scanner reports. (#271)

### Platform / Compatibility

- Linux amd64 and arm64, glibc 2.34 or later.
- Mounting needs `/dev/fuse`. As root, or with `CAP_SYS_ADMIN`, aimem mounts directly; any other user mounts through the
  setuid `aimem-fusermount` helper. FUSE passthrough also needs `CAP_SYS_ADMIN`; without it, a mount serves ordinary
  FUSE reads.

---

## Security & Compliance

Software bills of materials (SBOMs) for this release, generated from the `Cargo.lock` files at the release tag:

| Component          | SPDX                                                                                                                                              | CycloneDX                                                                                                                                       |
| ------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `aimem`            | [aimem-RELEASE.2026-10-30T18-15-12Z.spdx.json](https://dl.min.io/aistor/aimem/release/notes/aimem-RELEASE.2026-10-30T18-15-12Z.spdx.json)         | [aimem-RELEASE.2026-10-30T18-15-12Z.cdx.json](https://dl.min.io/aistor/aimem/release/notes/aimem-RELEASE.2026-10-30T18-15-12Z.cdx.json)         |
| `aimem-bio`        | [aimem-bio-RELEASE.2026-10-30T18-15-12Z.spdx.json](https://dl.min.io/aistor/aimem/release/notes/aimem-bio-RELEASE.2026-10-30T18-15-12Z.spdx.json) | [aimem-bio-RELEASE.2026-10-30T18-15-12Z.cdx.json](https://dl.min.io/aistor/aimem/release/notes/aimem-bio-RELEASE.2026-10-30T18-15-12Z.cdx.json) |
| `aimem-csi-driver` | [aimem-csi-RELEASE.2026-10-30T18-15-12Z.spdx.json](https://dl.min.io/aistor/aimem/release/notes/aimem-csi-RELEASE.2026-10-30T18-15-12Z.spdx.json) | [aimem-csi-RELEASE.2026-10-30T18-15-12Z.cdx.json](https://dl.min.io/aistor/aimem/release/notes/aimem-csi-RELEASE.2026-10-30T18-15-12Z.cdx.json) |

For `aimem`, also the
[crate list](https://dl.min.io/aistor/aimem/release/notes/aimem-RELEASE.2026-10-30T18-15-12Z.crates.txt) and
[dependency tree](https://dl.min.io/aistor/aimem/release/notes/aimem-RELEASE.2026-10-30T18-15-12Z.cargo-tree.txt).

---

## Upgrade Instructions

- **Mounts of a bucket named after a command:** before upgrading, change any mount command, systemd unit or fstab entry
  whose bucket is `create`, `convert`, `list`, `get`, `delete` or `credentials` to use `s3://<name>/` as the bucket. On
  Kubernetes, see the known issue above.
- **Scripts:** `aimem bucket <command>` keeps working, but change it to `aimem <command>`. A script that runs
  `aimem delete` (or `aimem bucket delete`) from an interactive terminal now stops to ask for the name; add `--yes`.
- **Kubernetes:** pin both image references in the DaemonSet to
  `quay.io/minio/aistor/aimem-csi-driver:RELEASE.2026-10-30T18-15-12Z`.

## Documentation

- Hosted docs: <https://docs.min.io/aimem/>

## Support

- Security disclosures: security@min.io
- Licensed customers and contributors: contact MinIO support.
