Repository navigation
Releases
v0.34.0
Lamprey v0.34.0 — Workspace world model
Lamprey now understands the workspace it is editing. Before any tool call changes a file, it is checked against what is actually on disk, and the checks run outside the model, so a small local model gets them for free.
This is the GAVEL paper (arXiv:2609.19315) built into a coding harness. The paper's result: a deterministic model of the world, placed between the language model and execution, took a compact 8B model from 41% to 92% task success and let it beat much larger models used alone. The target here is the same for open-weight models like Qwen and DeepSeek — finish long-horizon coding work without a frontier-sized model behind it.
What it does
- Verify. Every workspace-changing tool call is checked against the live filesystem first. For a patch, each hunk is replayed against the current bytes, so the exact "did not apply at hunk N" failure is caught and explained before the call runs, not after it half-applies.
- Repair. A wrong path separator, a filename that resolves to exactly one real file, or a hunk that matches except for indentation is corrected on the spot and executed, with no extra model call.
- Batch rollforward. A group of edits is simulated together on a shared view of the workspace, so a plan that contradicts itself (delete a file, then edit it) is rejected before anything on disk changes.
- Follow-through. In the default mode, the goals of a coding request are extracted, tracked in Plans & goals, and drive continued work until they are met or a ceiling stops it. Unmet goals stay visible with the evidence of what was still failing.
- Controls. Settings → Advanced → World model: a four-way mode (
off/verify/repair/full) and budgets. An After-action World-model panel counts verdicts, repairs, and goal outcomes. On by default;offrestores the previous dispatch exactly.
It adds zero bytes to the model's prompt — the intelligence is in deterministic code the model never sees.
Evidence
The mechanism is proven end to end: a behavioral smoke drives the real dispatch pipeline against a real workspace and shows, on actual files, verify blocking a doomed edit (nothing written), repair re-anchoring a whitespace mismatch and applying it, wrong paths corrected and applied, a self-contradicting batch left entirely unexecuted, and goals flipping from unmet to met after the edit. The full test suite is 3493 passing across 15 world-model test files.
The one number not yet in hand is the size of the live speedup on a local Qwen or DeepSeek run. That measurement needs a keyed or local-model machine — the pass margins are fixed in advance in PLANNING/WM_SMOKE_PLAYBOOK.md, and the result goes in PLANNING/WM_AFTER.md when it runs. This release ships a proven mechanism; the magnitude of the win is the owner's to measure and publish.
Still true
- Builds are ad-hoc signed only — no Developer ID certificate, no notarization, unsigned Windows binaries. SmartScreen and Gatekeeper prompts remain expected.
- There is no iOS package. The Apple artifact is a macOS DMG (Apple Silicon).
- Auto-update follows GitHub.
Authored and reviewed by Basho Parks, copyright 2026
v0.33.1
Lamprey v0.33.1 — macOS install fix
The v0.32.0 and v0.33.0 DMGs shipped an app bundle whose code seal was broken during packaging (CI skips signing, and repacking invalidates Electron's upstream ad-hoc seal). On a quarantined download macOS refuses such an app with "Lamprey is damaged and can't be opened" and offers no bypass — reported by users as a corrupt DMG.
What changed
- The build now ad-hoc re-signs the macOS app bundle (and verifies the signature) before the DMG is created. First launch uses the normal unidentified-developer flow: right-click → Open → Open, or approve under System Settings → Privacy & Security.
- Nothing else. Application content is identical to v0.33.0 apart from the version number.
Verified against the corruption reports
All four v0.33.0 installers were byte-verified before this fix was made: the Windows EXE matches the latest.yml sha512, the ZIP content listing matches v0.32.0's, the DMG and AppImage containers are structurally valid, and the CDN mirror is hash-identical to GitHub. The files were never corrupt; the DMG failure was the broken code seal above. The ~15 MB size drop from v0.32.0 is retired launcher icons no longer bundled by the renderer build.
Still true
- Builds are ad-hoc signed only — no Developer ID certificate, no notarization, unsigned Windows binaries. SmartScreen and Gatekeeper prompts remain expected.
- There is no iOS package. The Apple artifact is a macOS DMG (Apple Silicon).
- Auto-update follows GitHub.
Authored and reviewed by Basho Parks, copyright 2026
v0.33.0
Lamprey v0.33.0 — Simpler daily work
This release rebuilds the desktop around one task, one conversation, and an optional workspace. Existing capabilities stay reachable. Existing permission, Steer, Queue and Stop rules are unchanged.
What you will notice
- A task sidebar, conversation column and optional workspace replace the old eleven-card launcher as the daily path.
- The composer keeps text, attachments, a compact model picker and named permission/coding controls. Running turns still show one preferred follow-up action plus Stop.
- Settings are six searchable groups. Old section IDs and familiar names still open the same forms.
- Commands (
Ctrl+K) find tasks, files, tools and settings by their old names.
What did not change
- No claim of complete current-Codex feature parity.
- Builds remain unsigned. There is no iOS package. The Apple artifact is a macOS DMG.
- Auto-update follows GitHub. CDN/R2 closeout (TL-W4) stays open until GitHub, local
dist/and CDN hashes match. - Packaged install-smoke of these v0.33.0 bytes is recorded only after publication.
Responsiveness
On the UX-00 Windows machine, warm task switch median p95 is 57 ms and loading feedback is 39.9 ms after the UX-34 repair. Idle typing median p95 is 77.4 ms; one run measured 100.5 ms.
Downloads
Download URLs are filled when the GitHub release exists. Until then the published installers remain v0.32.0.
Authored and reviewed by Basho Parks, copyright 2026
v0.32.0
Lamprey v0.32.0 — Reliability and verification repairs
This release repairs failures found during the September repository audit and production acceptance. The audit covers recent changes and older code still used by those paths. Findings, focused commits and verification receipts are recorded in PLANNING/LAMPREY_SEPTEMBER_2026_REAUDIT.md and its remediation PSPR.
Runtime and data integrity
- Cancellation stops later tool dispatch, provider retries respond to abort, and application shutdown drains active turns and subagents.
- Unknown MCP tools and invalid arguments fail closed. Plugin connections, schemas, contribution loading and shutdown use consistent ownership.
- Compaction, task forks and backup restore preserve atomicity and recovery. Tool-call compression keeps complete result groups, and workspace access resolves real paths before allowing operations.
- Invalid configuration is preserved instead of silently overwritten. Settings persistence is serialized; model startup waits for the saved selection and exposes retry on failure.
- The production embedding worker is now packaged. Real quantized model inference, document ingestion and native vector retrieval execute end to end; vector keys and typed-array views are serialized correctly.
- Research synthesis rejects uncited output instead of presenting unsupported results as verified research.
Usability and maintenance
- Restored plugin contributions, workflow execution/status navigation, PR controls and external attachment fallback.
- Fixed settings scrolling/focus, API-key error handling, modal Escape behavior, resize cleanup and browser-view lifecycle.
- Both environment panels now use a working commit dialog, preserve failed drafts, expose stale Git state and support retry. Subscription selectors avoid unrelated rerenders.
- Removed verified unreachable code and unused paths. Updated dependencies and replaced the retired Electron rebuild package; the recorded post-update npm audit reports zero advisories.
- Native database tests now execute under the correct Electron ABI and fail when required suites are skipped. Both TypeScript projects are checked explicitly; pre-push verification uses the actual pushed range.
Release verification
Bucket waits for the exact tag workflow to finish, downloads its authoritative build artifacts, validates updater metadata, and verifies final GitHub/CDN bytes against one source-bound manifest. It no longer races a local Windows upload against CI. Partial publication and inaccessible or mismatched downloads fail the gate.
Source acceptance includes 3,007 passing default tests, all 170 native database tests, real Electron acceptance and exact-commit hosted CI/build evidence. Default skips are itemized in PLANNING/evidence/SR34_SKIPS.md; they are not counted as passing tests. Final publication hashes and installed-package smoke evidence are recorded by the release closeout.
Existing limits remain: not every hosted provider credential/playbook was exercised; macOS sandbox execution was not tested on the Windows acceptance host. Builds remain unsigned. No iOS package is provided.
Downloads
| Platform | Package |
|---|---|
| Windows x64 | Installer · Portable ZIP |
| macOS Apple Silicon | DMG |
| Linux x86_64 | AppImage |
Authored and reviewed by Basho Parks, copyright 2026
v0.31.0
Lamprey v0.31.0 — Triple Lane
Released 2026-08-23. Source wrap. Installer artifacts stay on v0.30.0
until Bucket (TL-W4, coordinator).
Lane A — Claude Code refresh
- Inventory pinned to Claude Code 2.1.241 (GitHub tag 2026-08-23).
- Pick list empty (K12). Empty Lane A is success. No product deltas.
Lane B — OpenRouter routing depth
- Opt-in OpenRouter path can send fallbacks plus provider
sort / order / ignore. Empty routing stays{}(K4). openrouter/autois offered when an OpenRouter key is present. It is
not aMODEL_CATALOGrow.- Direct-provider default is unchanged. Catalog still has zero
OpenRouter-brokered aliases.
Lane C — Local endpoint polish
- Settings presets for Ollama, LM Studio, and Unsloth Studio API.
- Connection-refused probes use loud copy instead of a generic fetch
failure. - Live local imports still default tools and vision off. Local tools
still pass approval / snip / gates (K10). - No Unsloth training UI in core (K6).
Non-goals held
- No Unburdening rebuild.
- No
MODEL_CATALOGfabrication. - No plugin-tool runtime.
- No Bucket on this wrap.
Authored and reviewed by Basho Parks, copyright 2026
v0.30.0
Lamprey v0.30.0 — Operability Debt
Released 2026-08-23.
Settlement
- Cap failure, cancel, and the closer now have behavioral tests that call
finalizeTurn/interruptTurn, not only WC-8 source-reading. - A tool-round cap still settles
failed. Cancel still settlescancelled. - The audit event remains
turn.interruptedwith payload
disposition: 'interrupted'. That pair is locked.
Honesty
- R1–R4 live playbooks, live
supportsToolsprobes, and OpenWiki refresh
are parked. Unsigned builds are a permanent non-goal. - Mid-round document/artifact drains stay on the persist path. Comments
say they are not the closer.finalizeTurnstill owns close-drain.
Catalog and persist
- The twelve August 2026 first-party rows live in
electron/services/providers/catalog.ts. The overlay file and
import-timepushloop are gone. tool_searchunlock persist rethrows unexpected SQLite errors.
A missing table still no-ops.
Planning
- Spent P-SPRs moved to
PLANNING/archive/. Audit Closure authority
files stayed at the root.
Authored and reviewed by Basho Parks, copyright 2026
v0.29.0
Lamprey v0.29.0 — Audit Closure
Released 2026-08-22.
Turns
- A tool-round cap settles
failed, notcompleted. Cancel iscancelled. - After a crash, Activity can show
orphaned: truewhen the store still says
running and no live runtime matches. Nothing auto-settles. finalizeTurnis the closer. Ordinarychat:sendsuccess no longer
double-finalizes afterrunHeadlessTurn.
Tools
- Dispatch lives in
electron/services/chat-tool-dispatch.ts. Session tools
(memory_add, plan mode,ask_user_question,create_document) run through
registry handlers. - Loop and Browser Developer packs are stripped from the model surface while
their master toggles are off. Handlers stay fail-closed. - Fallback parsing validates against the dispatch tool list for that round, not
the full catalog. - Unknown model ids and omitted custom
supportsToolsdefault to false.
Catalog and gates
MODEL_CATALOGandRETIRED_MODEL_MAPlive in
electron/services/providers/catalog.ts. No row edits this release.- Pre-push runs
verify:proofonly when the pushed range touches product
paths. Docs-only and ref-delete ranges print why and skip.
Authored and reviewed by Basho Parks, copyright 2026
v0.28.0
Lamprey v0.28.0 — August 2026 catalog and Meta Muse
Released 2026-08-22.
First-party catalog
- 82 pinned chat models. Twelve documented first-party ids released after the
mid-July v0.27.1 roster are now selectable: DeepSeek V4 Flash Vision (exp),
Gemini 3.7 / 3.6 Flash and 3.5 Flash-Lite, Qwen3.8 Max, GLM 5.3, Claude Opus 5,
Claude Fable 5, Grok 4.6, MiniMax M3, and Muse Spark 1.2 / 1.1. - Every new row uses the lab's published API id. No OpenRouter broker aliases.
Anthropic rows still omitreasoningCapOnToolUse(the compat layer ignores it).
Meta Model API
- New built-in provider
metaathttps://api.meta.ai/v1. Paste a Model API key
(LLM|…) under Settings → API Keys → Frontier labs → Meta (Muse). - Muse Spark 1.2 is the current hosted flagship; 1.1 is the earlier checkpoint
and the key-test floor. The contributor training-data tier is not pinned.
What stayed out
- Date-stamped DeepSeek 0731/0813 rows (same API ids as the existing V4 entries).
- Claude Mythos 5 (invite-only), Gemini 3.5 Flash Cyber (limited),
grok-4.6-fast
(not on xAI's table),qwen3.8-27b(no DashScope id),glm-5.3[1m](5.3 is
already 1M), Hy-MT2 (translation).
Authored and reviewed by Basho Parks, copyright 2026
v0.27.1
Lamprey v0.27.1 — Direct-provider routing hotfix
Released 2026-07-19.
Direct provider authority
- All 70 pinned models route through their named provider and independently stored API key.
- No pinned model uses OpenRouter as a broker. OpenRouter remains available only when a user
explicitly saves an OpenRouter key and imports that live catalog. - Kimi K3 routes directly to Moonshot, Grok to xAI, Gemma to Google AI, Claude to Anthropic,
GPT to OpenAI, and every specialist or host model to that provider's own key namespace. - Retired broker aliases for Gemma, Claude, GPT, Grok, and Kimi migrate to direct equivalents.
Unsupported stale defaults fail to a known catalog model instead of an accidental route.
Model menu repair
- Saving or deleting a provider key in Settings immediately synchronizes the chat model menu.
- Opening the menu refreshes provider-key state, so a stored Moonshot key unlocks Kimi K3
without restarting Lamprey. - Large catalogs are bounded to the viewport, scroll normally, and reveal the active model.
- Menu rows expose radio-menu semantics and no longer inherit form submission behavior.
Verification
- A catalog invariant requires zero pinned
openroutermodels. - Direct Gemma and current Moonshot rosters remain exact-source locked.
- Viewport, active-row, key-refresh, and Settings synchronization wiring are regression tested.
Authored and reviewed by Basho Parks, copyright 2026
v0.27.0
Lamprey v0.27.0 — Provider Discovery Expansion v2
Released 2026-07-19.
Added
- API-key acceptance for AIHubMix, FreeLLMAPI, Cohere, MiniMax, NVIDIA API Catalog/NIM,
GitHub Models, SambaNova, SiliconFlow, Reka, SEA-LION, DeepInfra, Hyperbolic, Perplexity
Sonar, Sarvam AI, and Inception Labs. - Current first-party Kimi, Grok 4.20, direct Gemma 4, Cohere, MiniMax, Reka, SEA-LION,
Perplexity, Sarvam, and Mercury model entries. - Provider-owned live-catalog strategies for standard OpenAI lists, bare arrays, GitHub's
catalog, DeepInfra's typed catalog, and providers without a compatible chat-model list. - Filtered bulk import for large live catalogs. Colliding local IDs are namespaced without
changing the model ID sent on the wire. - Editable FreeLLMAPI base URL for local or remote self-hosted instances.
- MiniMax
reasoning_detailspreservation in Lamprey's reasoning-audit channel.
CI repair
- Windows PowerShell AST integration assertions now run only on Windows. Non-Windows CI
explicitly verifies the production policy's fail-closeduninspectableresult when that
parser is unavailable.
Safety and honesty
- Imported models default to tools, vision, and reasoning disabled until capability evidence
is supplied. - Media, embedding, reranking, deprecated, and non-chat catalog entries are excluded where
the provider exposes type metadata. - Providers without stored user keys remain pending-key; this release does not claim live
authentication success for credentials it did not possess.
Authored and reviewed by Basho Parks, copyright 2026