Ordered by value per effort. Each item names the owner scope and the doc to update when it lands.
Engine (model/fish )#
- Bring up the implemented-but-unverified families with real files:
Qwen 2.5 1.5B, Qwen 3 0.6B, Phi-3.5 mini, Gemma 2 2B, Mixtral (MoE). Fix
what breaks, add rows to
docs/.engine/ ARCHITECTURES.md - Prefill kernel throughput (currently ~100 tok/s on 1B): process 2–4 weight
rows per activation load; AVX-512 VNNI (
vpdpbusd) and AVX2-VNNI paths; ARM NEONsdotkernels for Apple silicon and phones (the scalar path is the only ARM path today). - KV cache in f16 (halves memory, lets the planner give longer context).
- IQ2/IQ3 and TQ quant kernels so the smallest files run on 4 GB devices.
- True tiered residency: pinned staging buffers, explicit per-layer load
queue with a byte budget instead of relying on the OS page cache;
MADV_DONTNEEDafter use on Linux. Then expert-level prefetch for MoE after routing. - GPU: Vulkan compute (works on NVIDIA/AMD/Intel/Android) for the matmuls, keeping the same int8 activation format; CUDA later. This is the real "VRAM arena" from the original design.
- Speculative decoding with a tiny draft model;
deepseek2(MLA) andgemma3. - LoRA adapter at load (
docs/E1, in progress 2026-11-02): merge the tuning channel's 22 MB adapter GGUF into the quantised weights at load so a run no longer needs an 800 MB merged file.tuning/ REQUESTS.md
Server and bindings (services, model/*.py )#
- Frontend API requests: persona
tone/prompt, settings defaults for customisation and voice, per-session context tokens, download progress on/, session search, regenerate (api/ events docs/).frontend/ API-REQUESTS.md - Voice server:
/,api/ voice/ status /(whisper.cpp-class model, multilingual: en/hi/bn/de…),transcribe /(Piper-class local TTS with comfortable voices per language); CSPspeak media-src 'self' blob:. Until then the UI uses the browser's speech APIs. --hostforwarded to the bind address (docs/#5).setup/ CODE-REQUESTS.md - Pytest coverage for the turn runner, tools and bindings (today the
tests/files are runnable scripts).
Frontend (frontend/design-lab )#
See docs/ for what shipped; open items are in
docs/ (needs server) and the "Not verified" list
(real engine, real speech, pywebview/WebView2, Firefox/Safari, touch).
Setup#
- Linux/macOS run of
run.sh/run.command, pywebview GTK/Qt notes, signed builds, and a CI matrix that builds the engine on all three OSes.