Stable on GitHub Releases · Apple silicon · macOS 14 and later

Models larger than your memory, on your Mac.

Set one memory ceiling. When a mixture-of-experts model does not fit, Astronomical streams the experts the router selects from your SSD, keeps the precision the model declares, and answers every request on this Mac.

your memory ceiling
Fig. 1. Solid experts are in memory. Below the ceiling they wait on the SSD; hatched ones are streaming in for this token.
11 GBthe ceiling that was set
21.61 GBthe model on disk, still generating
0cloud accounts

One captured development run of Qwen3.6-35B-A3B-oQ4e-mtp. It demonstrates the operating mode; it is not a throughput claim. Results vary by model, context, storage, and Mac.

On this Mac

Install it. Open the Library. Launch your coding agent.

Astronomical is a local model runner for one person on Apple silicon. Open the app and the runner goes live on this Mac; three surfaces show and use it.

The menu
Effective memory, expert residency, graphics-processor use, prompt progress, and prompt reuse, while you work.
Observatory
The local console on the same loopback address: install from the Library, watch status, and send a chat without a separate monitoring stack.
The local API
OpenAI-compatible Chat Completions, Responses, embeddings, and image generation, plus Anthropic-compatible Messages, over loopback only. astronomical launch claude, codex, or opencode starts the agent already pointed at this Mac. Connect a coding agent →

Stable is on GitHub Releases — open it and the local runner goes live on this Mac; Observatory is the local console for the Library, status, and interim chat.

Capabilities

What the app does today.

Shipped product surfaces. Speed still depends on the model, context, storage, and the memory you leave for the rest of the Mac.

Chat locally
Observatory or any local OpenAI- or Anthropic-compatible client. Tool calls, Responses, and Messages share the same loopback server.
Vision in the same chat
Attach an image; a vision-capable model sees it on this Mac and the image does not leave the laptop.
Generate an image
A text prompt becomes one lossless PNG through the local image endpoint or astronomical image, served by the same app.
Install from the Library
Download a curated public model; Astronomical verifies the payload before the model becomes discoverable.
One memory ceiling
Set the model RAM your laptop can spare. Complete experts stay resident when they fit; selected experts stream from storage when the request needs room.
No hidden quantization
A tighter ceiling never silently downgrades the model. Paging keeps the artifact's declared types; unsupported files fail validation instead of being guessed from a name.
Launch a coding agent
astronomical launch claude, codex, or opencode runs the agent on a local model for one session, with the model's real context window declared, without touching the agent's own settings.
Embed text
The embeddings endpoint or astronomical embed turns text into vectors for search and retrieval that stay on this Mac.
Drive it from the terminal
astronomical respond answers one prompt, models lists and downloads, status shows the worker and resident model, and doctor checks which instance the command line talks to.

How it decides

Fully in memory when it fits. Streamed when it does not.

You never pick a mode. The runner projects what the next request needs, keeps every expert resident when the whole sparse payload fits, and pages router-selected experts from the SSD when live context needs the room. When the room comes back, the complete expert layers do too.

Model coreExperts in memoryExperts streamingLive contextYour ceiling

Claims need receipts.

Each field note separates architecture facts, acceptance evidence, and open questions. Failed ideas stay on the record.

  1. R-001 A repeated prefix skipped 2,048 prompt tokens. Prompt reuse · Verified
  2. Next Ten thousand tokens in, five hundred out, memory beside speed. Measurement · Planned

Evidence standard

Fast is a measurement, not an adjective.

  1. Representative work. Performance claims use at least 10,000 input tokens and about 500 output tokens, the shape of a coding-agent turn, after a small warmup, on an optimized build, with the exact workload disclosed.
  2. Memory beside speed. Throughput is reported with model precision, effective memory ceiling, and peak MLX memory.
  3. Cold and warm separated. Operating-system file reuse is not presented as SSD performance, and throughput runs disable the persistent prompt cache so a cache hit never passes for speed.
  4. Failed ideas stay visible. A smaller command count or a prettier trace is not a win unless end-to-end behavior improves.

The laptop is the deployment target.