AtMem 2.3.7 beta 1 — reliable Windows onboarding

AtMem 2.3.7b1 is a prerelease correction for native Windows and Windows Store Python installations. It makes dashboard and companion discovery use the active Python user installation, replaces POSIX-only process and durability assumptions, and lets atmem init provision the Bun runtime required by the separately packaged AtFlows dashboard. AtMem 2.3.6 remains the stable recommendation while this beta receives clean-install review.

Install or upgrade

In the intended Python environment:

python -m pip install --pre --upgrade atmem==2.3.7b1
atmem --version
atmem init
atmem status

pip install installs AtMem, atmem-atbot==0.1.0, and atflows==0.1.2; it does not execute a post-install downloader or start a service. If compatible Bun 1.1 or newer is absent, the subsequent atmem init command clearly announces and downloads the pinned official Bun 1.4.2 archive, verifies its release-pinned SHA-256 before extraction, and stores the executable under ~/.atmem/runtime/bun/1.4.2. It does not require administrator rights or modify global PATH. A compatible system Bun is reused instead.

The matching OpenClaw bridge is openclaw-memory-atmem@2.3.7-beta.1. Existing OpenClaw users should run:

atmem openclaw upgrade
atmem control verify --probe

What changed from 2.3.6

Automatic, verified Bun provisioning at initialization

atmem init now provisions Bun only when AtFlows needs it and no compatible runtime is available. AtMem pins the official release URL and SHA-256 for the supported Windows, Linux, and macOS x64 and ARM64 archives, enforces a 200 MiB download limit, extracts only the single Bun executable, verifies its reported version, and records source metadata beside the private runtime. Download and verification progress goes to stderr so atmem init --json keeps valid JSON on stdout.

atmem status identifies the Bun version, path, and whether it is a system or AtMem-managed runtime. The managed path is added only to the environment of the AtFlows process started by AtMem. AtFlows remains a separate service and data store; installing or initializing AtMem does not configure any application to send telemetry.

Windows Store Python launch and process fixes

Windows Store Python commonly installs console scripts and packages in its user scheme. AtMem now discovers the exact nt_user scripts directory for the AtFlows launcher. The dashboard daemon no longer hides the user-site package with isolated-mode startup; instead it removes PYTHONPATH and PYTHONHOME, uses AtMem's private runtime directory as its working directory, and marks the detached process non-interactive. This prevents a background AtBot setup prompt while preserving the safe deterministic fallback. Its bounded readiness window also accommodates the slower first import from a cold Windows wheel environment.

Process status uses the Windows process API instead of the unsupported POSIX-style os.kill(pid, 0) probe. The shared implementation is used by the dashboard, Home service, AtBot service, and delegated provider lifecycle.

Portable durability and private-file checks

Directory fsync operations now use a portable helper: POSIX retains directory fsync, while Windows treats unsupported directory handles as a platform limitation after file flush and atomic replacement complete. The encrypted evidence-key path no longer rejects a regular Windows file merely because NTFS ACLs are not represented as Unix 0600 bits; POSIX mode-bit enforcement is unchanged. Other optional provider/configuration paths retain their existing platform constraints in this beta. No cryptographic format or authorization rule changes.

Migration and compatibility

  • No database, Home, evidence, memory, or account migration is required.
  • Existing Home data and companion configuration are preserved.
  • Existing compatible system Bun installations remain preferred and are not modified.
  • A previously provisioned AtMem-managed Bun runtime is reused after its recorded executable digest and version validate; normal package downgrade does not silently delete it.
  • AtBot remains atmem-atbot==0.1.0; model-assisted intelligence remains opt-in and the safe deterministic fallback remains available.
  • AtFlows remains atflows==0.1.2. Its first web-runtime preparation may still need network access for its locked JavaScript dependencies.
  • Python 3.10–3.13 remains supported. The native Windows CI smoke on Python 3.14 is an early portability check, not an expanded support promise.
  • OpenClaw, framework, memory, retrieval, evidence, and authorization semantics are otherwise unchanged from 2.3.6.

Honest beta limitations

  • Automatic Bun provisioning occurs during atmem init, not during pip's wheel installation. Python packaging intentionally has no reliable post-install hook for this external runtime.
  • Provisioning requires HTTPS access to the pinned official GitHub release. A blocked or offline download leaves AtMem core memory usable but AtFlows stopped, with an actionable error.
  • Automatic assets cover Windows, Linux, and macOS on x64 and ARM64. Other platforms must install compatible Bun independently.
  • The managed Bun executable does not place bun on the user's global PATH; it is private to AtMem-managed AtFlows.
  • Some optional delegated-provider setup and broader Unix-oriented tests still assume POSIX permission bits. This beta qualifies core onboarding, Home, dashboard, AtFlows, process, and durability paths on Windows; it does not claim every optional provider lifecycle is native-Windows complete.
  • AtMem records and governs supported agent boundaries; it still cannot prove external side effects without independent receipts.

Roll back

To return to the stable release:

python -m pip install --upgrade atmem==2.3.6
atmem openclaw upgrade
atmem status

Downgrading changes executable behavior but does not rewrite Home data or delete the private Bun runtime. It can be removed manually while AtFlows is stopped if it is no longer wanted.