Skip to content

Releases: AetherAI3/Unlimited-Context-LLM

v0.3.1 - the README the registries actually show

Choose a tag to compare

@AetherAI3 AetherAI3 released this 04 Sep 13:15
Immutable release. Only release title and notes can be modified.
f62f6dd

Docs-only release. No runtime change β€” aether_context is untouched apart from the version string.

It exists because the PyPI and npm project descriptions were rendering the old README with three broken images and eight dead links, and a registry only re-reads the description on upload.

Fixed

  • Every link and image in the README is absolute. The three images that lived on GitHub user-attachments are committed under assets/ and served from raw.githubusercontent.com, so they render on GitHub, PyPI and npm alike, and are versioned with the repo.

Added

  • assets/demo.gif β€” a real captured npx aether-context setup / doctor / status session against a live Ollama, now the README hero.
  • A project landing page at https://aetherai3.github.io/Unlimited-Context-LLM/, with Open Graph and Twitter card tags so a shared link unfurls.

Changed

  • README rebuilt around the install: it had been at line 310 of 386, below five separate pool/RAM tables that are now one Sizing section. Every caveat kept.

Removed

  • docs/superpowers/ and docs/plans/ β€” internal build plans and specs for unshipped work. History keeps them.

Also ships the publish-npm.yml YAML fix, tests/test_workflow_yaml.py, the registry badges and the RELEASING.md rewrite that had been sitting in [Unreleased].

Full notes: CHANGELOG.md

v0.3.0 β€” first release on PyPI and npm

Choose a tag to compare

@AetherAI3 AetherAI3 released this 04 Sep 01:36
Immutable release. Only release title and notes can be modified.
e51686e

First release published to a package registry. aether-context 0.3.0 is on PyPI and npm, both cut from this commit.

pip install aether-context
aether-context setup
npx aether-context setup

Added

aether-context setup β€” the guided first run, in three steps: size the pool, check for a local model, then verify the engine with a real encode/retrieve round trip. The verification runs against the mock model in a throwaway directory, so it passes with no daemon, no network and no model pulled, and leaves the pool you just configured empty. --pool N --yes makes it fully non-interactive, so it is safe in a Dockerfile or a CI step.

npm launcher (packages/npm-cli). npx aether-context finds a Python 3.10+ interpreter, builds a private virtualenv under the OS cache directory, installs the matching PyPI release into it, and forwards every argument through. Nothing is written to global site-packages and nothing needs sudo. Zero npm dependencies, published with provenance.

aether_context.ui β€” the CLI's presentation seam, stdlib only (the core stays numpy-only). Color is emitted only to a real tty and obeys NO_COLOR / FORCE_COLOR / TERM=dumb; VT100 mode is enabled explicitly on Windows and styling is dropped if that fails. Box-drawing, glyphs and prose all degrade to ASCII when the stream's encoding cannot represent them, so a cp1252 console gets readable text instead of ? characters or a UnicodeEncodeError.

Changed

The distribution now ships aether_context only. aether_agent/ stays in the repo and in the test suite, but is no longer packaged, and the aether / aether-smoke console scripts are gone from this distribution. PyPI's aether-agent already owns that import path and the aether command, and pip does not detect file conflicts across distributions β€” shipping a second copy would have silently overwritten the other package's files on any machine that installed both. Install the terminal from its own package: pip install aether-agent or npm install -g aether-agents.

The version is declared once, in aether_context.__version__, and read dynamically by the build. A release-parity test pins the npm launcher's version to it.

init, doctor and status render through the new presentation seam. The status column layout and the doctor's [ok] / [warn] / [fail] / [skip] bracket text are unchanged β€” both are scraped by scripts.

Full changelog: https://github.com/AetherAI3/Unlimited-Context-LLM/blob/main/CHANGELOG.md
Compare: v0.2.0...v0.3.0

v0.2.0 β€” pin a fact, and it survives restart

Choose a tag to compare

@AetherAI3 AetherAI3 released this 13 Aug 15:13
Immutable release. Only release title and notes can be modified.
859a99d

Pin the handful of things a long-running agent must never lose, and they stay reachable after a restart.

  • Session.pin() β€” a slice that is never faded and never evicted, re-pinned from the pool when the session reopens
  • Retrieval now follows the connected thread rather than isolated nearest neighbours β€” thread recall@8 0.15 β†’ 0.78
  • Long, write-heavy runs no longer pay a full index rebuild on every search

Pinned facts survive a restart

Before this release, a session reopened against an existing pool started with an empty witness β€” every previously pinned slice came back as ordinary content and faded on the first long run. Which is exactly when a durable memory is supposed to prove itself.

from aether_context import Session

# run once, then exit the process entirely
s = Session("ollama/qwen2.5", pool_dir="~/.aether/demo")
s.pin("The API base URL is https://internal.example/v2 β€” never hardcode a region.")
s.close()
# a new process, later
s = Session("ollama/qwen2.5", pool_dir="~/.aether/demo")
s.run("What's our API base URL?")   # the pinned constraint is still resident

Permanence is re-derived from the slices' own tags rather than tracked in a second file that could disagree with them.

Retrieval follows the thread

The MPO context chain links a session's slices into one connected structure. When cosine pulls an entry slice, the chain pulls in the slices most coupled to it β€” widening the working set with the connected thread instead of isolated nearest neighbours. Cosine remains the retrieval mechanism; the chain improves selection.

On by default, deterministic, numpy-only, and fail-soft β€” it degrades to plain cosine. Disable with Session(mpo_chain=False) or --no-mpo-chain.

Reproduce the number yourself:

python -m bench.chain_recall
threads=40 size=5 distractors=400 k=8
  cosine-only thread recall@8: 0.150
  + MPO chain   thread recall@8: 0.775

Also in this release

  • Witness temporal lock-in β€” a freshly paged-in slice carries a short-lived eviction bonus, breaking the evict β†’ cold-miss β†’ re-page flap. Deliberately small: it beats comparable-salience churn but never overrides a genuinely load-bearing slice, and it affects eviction ordering only.
  • Incremental HNSW inserts β€” the index adds rows in O(new) instead of rebuilding the whole graph in O(N) on every search-after-add. Removes the quadratic insert cost on long runs.
  • --index tiered no longer makes a silent capability claim β€” it was always falling back to flat, and now says so.
  • CI is green across all 16 checks on Linux, Windows and macOS for Python 3.10–3.13.

Install

Install straight from GitHub β€” this is the supported path today:

pip install git+https://github.com/AetherAI3/Unlimited-Context-LLM.git@v0.2.0

aether-context is not on PyPI yet, so pip install aether-context will not work. Requires Python 3.10+. Apache-2.0. Full detail in CHANGELOG.md.