Changelog

Every release, documented. 162 versions and counting.

Last generated: July 17, 2026

v0.9.1082026-07-17
Features1
  • Update spectral version in nix package
v0.9.972026-07-15
Features1
  • MAINTAINER global role + bump to 0.9.97
v0.9.952026-07-15
Fixes1
  • test fix
Improvements1
  • cleanup
v0.9.902026-07-14
Fixes1
  • v0.9.90: billing attribution canonical team, dedicated client invites, project origin team, billing test fixes, changelog update
v0.9.882026-07-13
Features2
  • Credit usage event ledger, team usage charts, version bump 0.9.88
  • Bump spectral
v0.9.862026-07-10
Fixes1
  • Add Steps MDX component and remove nextra import from tutorial.mdx
v0.9.852026-07-10
Fixes2
  • Derive LanguageTag from ResolverInputTypes to resolve Zeus enum mismatch
  • Add missing languageTags to PresetFormValues in agent-chat
v0.9.822026-07-07
Improvements2
  • few more changes
  • few more changes
v0.9.812026-07-06
Fixes1
  • OnCheckedChange → onChange in Switch, add missing imageOnly dep
v0.9.792026-07-06
Features2
  • Add desktop entry for spectral nix package
  • Bump spectral
v0.9.782026-07-05
Fixes1
  • Add missing mode arg to openDialog in EditorFTUX, bump to 0.9.78
v0.9.752026-07-04
Features5
  • Add jpeg files to files tracked by lfs
  • Add aac and mp3 to lfs tracked files
  • Bump nix version
  • Add lfs pull to ci
  • Migrate to lfs
v0.9.742026-07-03
Features2
  • Ignore spectral-bin files
  • Update nix hash
v0.9.732026-07-03
Fixes1
  • Add missing plannedCommands to InferenceProgress, bump v0.9.73
v0.9.722026-07-03
Features107
  • Bump spectral
  • Bump npm deps sha
  • Expose all DCP/observational-memory config in settings API and landing UI
  • added presets
  • Machine team assignment via relay + landing Machine Settings dialog
  • Use authenticated user's name when accepting invitation
  • Add nix flake for spectral
  • **seo:** 4-phase expansion — 12 new tools + bugfix, bump to 0.9.44
  • Windows improvements
  • Add windows build
  • **desktop:** Built-in sign-in window for first-launch auth (0.9.38)
  • **agent:** Refactor tool-call display into per-tool renderers with diff, ANSI terminal, grouping, and status animations
  • **electron:** Launch bundled spectral serve with home cwd, splash + CI smoke test
  • **agent:** Live mid-session toggles for primary agent and subagents
  • Teams resolver enhancements, prompt quality updates, schema regeneration
  • Upload latest.json after uploading the binaries
  • Use ubuntu image for electron build as base and add exec on 7zip
  • add task fix
  • **cli-node:** Add browser video recording tools + fix close resource leak
  • Staple release
  • Run macos desktop build on macos
  • Add memory observations to prompt quality evaluation
  • **memory:** Unify compaction into single LLM call with deterministic pruner
  • **cli-node:** Inter-agent observation sharing, observer broadcasts and self-delivery fix; bump to 0.9.16
  • Add admin vision support toggle for built-in models
  • **backend:** Fake-model short-circuit for spectral provider
  • **backend:** Add seed:fake-model for e2e testing
  • **cli-node:** Add compaction e2e tests (pure + mock + live LLM smoke)
  • Add @std/fs to backend import map for Docker build
  • Add Google sign-in for team invites
  • Download page GraphQL resolver + ProjectUsage panel + type fixes
  • **backend:** /api/releases/publish-url endpoint for presigned S3 uploads
  • Electron desktop app + landing download page; bump 0.8.12
  • v0.8.4: Add contextWindow override to Built-in UserModels admin form
  • **cli-node:** Tighten system prompt — agent owns all coding work, never delegates implementation to people
  • Store extracted text for binary cloud documents, pass to AI generation
  • **landing:** Markdown rendering + large scroll in memory details dialog
  • **cli-node,landing:** Memory details dialog with observations & reflections preview
  • **cli-node,landing:** Loop dropdown with max iterations and goal
  • **cli-node:** Memory compaction persistence + UI dropdown + loop mode compat
  • **cli-node:** Integrate observational memory extension, bump to 0.3.8
  • Fork & Compact polish — auto-title, disabled composer, amber icon
  • Fork & Compact frontend — compaction indicator + special send button
  • Fork & Compact — fork session + auto-compact after first turn
  • **agent:** Switch usage display to credits and bump cli to 0.3.3
  • Interactive login + session usage bar below status
  • **cli-node:** Support custom redirectUri in OAuth MCP config
  • **landing:** Add FTUX guide for agent setup when no machine connected
  • Path autocomplete in New Project form
  • **landing:** Add AuthGuard to /agent page and fix login redirect param
  • Machine owner info + CLI OAuth login
  • **landing:** Split token display into input/output/cache read/cache write in agent header and turn footer
  • **agent:** Show context window fill bar alongside session tokens
  • add count-tokens task with frozen [email protected]
  • **agent:** Display total session token count in status bar
  • **agent:** Add mobile sidebar toggle button in composer
  • **agent:** Taller composer textarea on desktop and mobile
  • **agent:** Mobile UI improvements
  • **studio:** Mobile-responsive layout — bottom-sheet RefinePanel, compact header, dvh-safe panel heights
  • **agent:** Mobile-responsive drawer with single-column navigation
  • Cache token tracking + expanded credit rates
  • Credit visibility in team usage analytics
  • Add AgentSession tracking for agent token billing
  • Yellow pulsating dot for active sessions/projects in sidebar
  • new agent version with mcp integration
  • new version
  • devops: rewrite CI pipeline, add cli-node coverage, clean up scripts
  • **admin:** Polish admin panel UX and fix models backend
  • Add developer avatar row to stats section
  • **landing:** Add animated InferenceLoopSVG background to how-it-works section
  • **landing:** Redesign how-it-works section + distillery badges
  • **landing:** Refresh hero sections
  • Landing page updates
  • Together AI Dedicated Endpoints — full implementation
  • Harden fine-tuning flow and add AI Distillery landing
  • Implement batch tool in tool-executor (parallel sub-tool fan-out)
  • Add runAnthropicToolLoop + fix tool_use bypass in messages.ts useAexol path
  • Make Aexol self-eval tool-aware — run tool loop before evaluating text response
  • Add Aexol self-eval to /v1/messages handler with Anthropic format I/O
  • Add /v1/messages proxy for Anthropic Messages API (OpenCode Claude via Zen)
  • Chat-native self-eval loop in runAexolChat
  • Add /v1/responses endpoint — OpenRouter Responses API proxy with native tool calling
  • Handle XML tool calls from Zen/Claude in addition to JSON tool_calls
  • Implement server-side tool execution loop for OpenCode tools
  • Resolve @path mentions server-side before forwarding to LLM
  • **studio:** UX improvements — save status, output log, shortcuts, inference progress
  • Admin users panel — lastLoginAt tracking, DAU/MAU stats, user search/sort UI
  • P0 service readiness — golden paths E2E, provider failure tests, AI lifecycle & UI cleanup
  • E2e tests restructure, backend auth updates, remove .ouro cache files
  • Add built-in models, proxy route, viz page and refactor provider architecture
  • Add video support to WebGL hero backgrounds and update video sources
  • **studio:** Add loading indicator to collapsed RefinePanel bar
  • new landing
  • new version
  • **landing:** Implement comprehensive Google Analytics 4 tracking
  • **landing:** Implement comprehensive SEO optimization
  • **landing:** Enhance hero WebGL with dynamic light sweeps and hidden navbar
  • Complete landing page redesign - AAA+ enterprise startup style
  • Add AuthGuard component for protected routes
  • new gpts
  • new
  • Add file-based guidance system and new AI agent types
  • Add hybrid AI-powered generation to play command
  • Add multi-step workflow implementation with dependency-aware execution
  • implement
  • implementors
  • features
Fixes199
  • **vision:** Handle stream errors and empty responses in spectral-vision-fallback
  • Fix base-models test for restrictedToTeams filter, bump cli-node and electron to v0.9.68
  • landing fix
  • front fix
  • fixes
  • fix codex
  • fix test
  • remove apply patch and fix confilcits
  • sub+toolcalls, need to fix apply_patch
  • **landing:** Fix TypeScript build errors in subscription-models page
  • Resolve all Deno and cli-node test failures
  • v0.9.57: connected accounts, team model connections, subscription-based models, lint fixes
  • **kanban:** Resolve auth & backend URL for local dev
  • **electron:** Restore native window dragging
  • **electron:** Stop inert backdrop from defeating drag header
  • **electron:** Use frameless shell-level drag region
  • **electron:** Force movable window and stronger drag fallback
  • **electron:** Use native title bar dragging per platform
  • **presets:** Relax query access checks, return team+project presets together
  • **electron:** Add JS fallback to ensure window drag region always exists
  • Add missing fromTaskDetailSelector import in use-refinement.ts
  • Close Playwright browser on relay shutdown
  • v0.9.45: crawler dedup fix, SEO extension tools fix, landing SEO improvements
  • **auth:** Validate JWT expiration in CLI/Electron OAuth flow
  • **cli-node:** Avoid duplicate credit usage after refresh
  • **desktop:** Augment PATH for MCP npx/npm and bump to 0.9.37
  • **cli-node:** Add ext.on() to extension test mocks so lifecycle subscriptions don't crash
  • **cli-node:** Resolve Studio binding and MCP config against project cwd in desktop
  • **cli-node:** Make MCP adapter work in Electron/standalone binaries
  • **electron:** Make fixed overlays no-drag so modals close over drag header
  • fix
  • **electron:** Make app window draggable with hidden title bar
  • **download:** Match desktop assets by file suffix, CLI by prefix
  • **ci:** Replace bash += with POSIX string concat in upload:s3 manifest
  • **ci:** Correct mac binary path for x64 in build:electron:mac
  • **standalone:** Guard top-level package.json read in coding-agent config
  • **ci:** Install xauth for xvfb-run in test:electron-smoke
  • **ci:** Make test:electron-smoke self-contained, remove needs dependency
  • **ci:** Quote ERROR: entries in test:electron-smoke so YAML parses as strings
  • fix
  • Scope inter-agent observations to current project in memory popover
  • Landing TeamNotificationSound createdAt type + build-test extension exit-code detection
  • Landing TeamNotificationSound createdAt type + build-test extension exit-code detection
  • 0.9.19: fix TypeScript build error — missing match.query reference in dispatcher
  • fix
  • fix
  • Fix type-checking and build errors after lint cleanup
  • Fix usage analytics and pass quality checks
  • Fix unauthenticated invite acceptance
  • Fix invite acceptance auth token
  • Fix team invite accept URL
  • **releases:** Serve private S3 artifacts via signed download route
  • **releases:** Use configured S3 endpoint for uploads
  • **ci:** Use ZIP for macOS Electron on Linux runners
  • **ci:** Build Electron app before packaging
  • Add Secure flag to Google OAuth state cookie for HTTPS production
  • **ci:** Lazy-load dmg-license for Linux DMG builds
  • **ci:** Install dmg-license for Electron DMG builds
  • **ci:** Let electron-builder produce DMG natively on Linux (remove --dir + manual zip)
  • **ci:** Revert to ZIP for macOS Electron (DMG impossible on Linux CI)
  • **ci:** Use DMG instead of ZIP for macOS Electron release artifacts
  • **electron:** Move dmg-license to optionalDeps, use --force on Linux CI; bump 0.9.3
  • **ci:** Make build:electron optional in release:spectral-standalone needs; bump 0.9.1
  • **electron:** Add dmg-license dependency, disable auto-publish in CI; bump 0.8.13
  • **ci:** Switch release:spectral-standalone to curl API calls (release-cli --no-update conflicts with existing release); bump 0.8.11
  • **ci:** Bun install --ignore-scripts to skip native module compilation; bump 0.8.10
  • **ci:** Exclude browser tests in CI (vi.mock incompatible with createRequire)
  • **ci:** Add missing tag_name to release:spectral-standalone
  • Built-in model drag-and-drop sort order with migration
  • Pre-render /docs pages at build time via generateStaticParams
  • v0.8.3: Fix built-in model contextWindow always null causing per-turn compaction
  • Deno tests + landing build — wrap billing calls in try/catch, add PROJECT_PLAN to ArtifactConfig
  • Correct OpenRouter X-Title to Aexol.ai, bump cli to 0.7.7
  • **cli-node:** Prevent data loss on SCHEMA_VERSION mismatch
  • landing: admin pages, agent-chat, and scalars fixes
  • Add supportsReasoning to test assertions, change CI reporter to list
  • Add missing Long scalar to Models type in axolotl
  • **cli-node:** Add missing SDK deps, fix type errors, bump to 0.7.3
  • landing fixed
  • **landing:** Add missing next-mdx-remote dependency, complete CtaLink→CtaButton migration
  • **cli-node:** Add missing vendored pi dependencies to package.json
  • **tests:** Fix setInterval mock type mismatch in mcp_e2e test
  • **cli-node:** Replace ES2024 target with ESNext to fix esbuild warnings in vitest
  • v0.7.0: relay dispatcher, studio binding, landing agent improvements
  • **mcp:** Prevent binary data from leaking into LLM context
  • **landing:** Subtle memory indicators + session-scoped activity popup
  • **cli-node:** Stronger loop self-evaluation prompt + stricter LOOP_DONE detection
  • **cli-node:** Make dispatcher tests async after handleRestRequest became async
  • Loop mode proactively compacts via bridge.compact() instead of polling
  • Loop mode waits for observational memory compaction before next iteration (v0.4.10)
  • Observer deadlock on large sessions — cap chunk size, advance bound on empty results (#0.4.9)
  • Cli-node tests — guard against SPECTRAL_MCP_URL env var, fix relay timing
  • Landing build (zeus types + usePromptQuality sig), bump cli-node to 0.4.6
  • Left-align system messages, remove spinners
  • Render system segments in standalone system turns
  • Memory extension path resolution and serve-mode registration; inline compaction UI in landing
  • **mcp:** Guard ui.theme.fg call in updateStatusBar against missing Theme method (bump 0.4.2)
  • **agent:** Restore context window usage for old sessions after refresh; bump CLI to 0.3.9
  • Guard compaction state to fork-compact sessions only
  • **agent:** Fallback historical usage credits to legacy cost when creditsUsed is missing
  • **agent:** Avoid tiny-credit rounding to zero in live usage UI; bump cli to 0.3.5
  • Add missing items schema to array types in MCP tool definitions
  • Build errors - unescaped quotes in machines route and landing picker
  • Add upstream error logging & fix vendor-prefixed model ID handling
  • Add GPT-5.x pricing and reasoning support for OpenRouter models
  • Try-catch around onAssistantMessageSkipped and deleteMessage
  • Compute defaultModelId from top available model
  • Skip zero-token usage events to prevent 0% context window on reconnect
  • Context-window tracking after cancel/refresh, bump v0.2.19
  • Update e2e test assertion to match new auth error message
  • **cli-node:** Point oauth landing URL to aexol.ai instead of studio.aexol.ai
  • **cli-node:** Oauth login never opens browser — await was before browser-open
  • Path autocomplete shows full dir contents, not just one match
  • **cli-node:** Remove !state.ui guard from autoAuth so OAuth works via serve
  • **cli-node:** Catch UnauthorizedError from createHttpTransport in OAuth flow
  • fix
  • Context window bar hidden on default model, composer flex, session reconnect streaming
  • **mcp:** Convert images to text + truncate large tool results + rehydrate tool history
  • **serve:** Pi-bridge resolve MCP adapter from bundled dist/mcp/index.js instead of node_modules/pi-mcp-adapter
  • **cli-node:** Bundle MCP adapter into cli-node source tree (v0.2.6)
  • **landing:** Wrap useSearchParams in Suspense boundary for cli-auth and login pages
  • Single vitest worker to avoid EAGAIN on CI
  • fixes
  • **landing:** Context window progress bar now shows even without explicit model selection — falls back to first agent-enabled model
  • **backend:** Update test expectations for contextWindow in availableBaseModels
  • **backend:** Add contextWindow: null to built-in user models in availableBaseModels
  • **agent:** Fix composer bottom padding being overwritten by pb-safe
  • **agent:** Align mobile hamburger + hide image button when unfocused on mobile
  • **agent:** Reduce composer vertical padding on mobile
  • **agent:** Prevent horizontal overflow on mobile
  • **landing:** Mobile viewport, safe-area insets, and dvh support across landing, studio, and agent
  • Agent synthetic user missing isAdmin, emailVerified, createdAt
  • fixed release process
  • Remove COPY src from landing Dockerfile
  • Use global ~/.npmrc for npm auth — matching working CI pattern
  • Use NPM_TOKEN env var — built-in npm auth
  • Use npm config set for auth — .npmrc echo not expanding
  • Remove YAML escape from npm auth token — \$ breaks GitLab expansion
  • Use .npmrc for npm auth, npm config set -- was broken
  • Cliffy v1 no longer has default export, use named Confirm
  • Re-login buildah before push to prevent intermittent auth failures
  • Remove userModelId from FineTuneJob selector (not in GraphQL schema); use userModel.id instead
  • Add missing @aexol/relay-protocol import map and Docker COPY
  • Repair test suite — missing mocks (userModel, getAvailable, refactor provider)
  • Resolve TypeScript errors in zeus client and mcp route DI refactor
  • Add override modifier to toString() in zeus client
  • Improve cli validation, dry-run and task commands
  • Enforce unique visitor identities
  • **prompts:** Merge technical-docs into single file to prevent truncation
  • debug: log tool args, results, and final content extraction in AnthropicToolLoop
  • debug: add minimal self-eval progress logs to runAexolChat
  • Skip Aexol self-eval when request contains tools (fall through to tool loop)
  • Bypass Aexol self-eval on tool_use stop_reason in /v1/messages
  • Use x-api-key header for OpenCode Zen /v1/messages (Anthropic API format)
  • Accept x-api-key header in /v1/messages handler (@ai-sdk/anthropic compat)
  • Route responses API to correct upstream provider (opencode → zen, dynamic URL)
  • Always return 500 for upstream provider errors, not upstream status
  • Intercept tool calls in streaming path by forcing non-stream to upstream
  • debug: log target baseUrl and raw upstream response body
  • debug: log request tools and response finish_reason/tool_calls in proxy
  • Resolve @mention paths relative to cwd basename and parent dir
  • Replace file-based aexol loop with chat-native iterative refinement
  • Strip provider prefix in aexol callProviderViaProxy
  • Strip provider prefix from model name before proxying to upstream
  • Fix opencode zen URL and add built-in model registry
  • Fix test suite: parser keyword-as-identifier + test ignore guards
  • Update Stripe apiVersion to 2026-02-25.clover
  • afix
  • frontend command fixes, team visibility fixes
  • team fix
  • Replace pdfjs-dist with @hyzyla/pdfium for PDF text extraction
  • Resolve boolean | null | undefined type error for visibleInStudio and aexolEnabled
  • Resolve AuthGuard infinite token verification loop
  • **landing:** Add Suspense boundaries for useSearchParams
  • AuthGuard correctly checks user in store after fetchUser
  • AuthGuard now verifies token validity via API call
  • Redirect to login page on auth errors
  • fixes
  • fix
  • fix
  • docker fix
  • some DRY and fixing and technical docs artifact
  • idk how to fix it...
  • idk how to fix it...
  • idk how to fix it...
  • idk how to fix it...
  • Copy node_modules to production stage for Prisma runtime
  • Copy node_modules to production stage for Prisma runtime
  • Copy node_modules to production stage for Prisma runtime
  • play fix
  • zeus fix
  • prisma fix
  • landing fix
  • Use correct Deno cache path for Deno 2.x Docker image
  • prisma fix
  • Resolve race condition in TUI parallel artifact generation
  • landing fix
  • Resolve TypeScript error in webgl-fire component
  • fix?;
Improvements57
  • DRY up isDark theme ternaries across landing components and studio nodes
  • Use OpenRouter automatic Anthropic prompt caching
  • Improve OpenRouter Anthropic prompt caching
  • wizard for spectral
  • before optimizer
  • project bonding v2
  • Tighten type safety: typed stubs, honest UI, narrower message types
  • Revert 'optional: true' — release:spectral-standalone requires build:electron; bump 0.9.2
  • **backend:** Simplify releases publish-url — use AWS SDK credential chain, existing S3 env names
  • v0.8.8: standalone binary support, native extension browser, team invites, user models
  • **billing:** Fully dynamic DB-backed credit-only pricing model
  • **studio:** Move sidebar into route group layout
  • session rename works finally
  • reflections for projects
  • **landing:** Pulse existing memory button instead of separate icon
  • **landing:** Replace MemoryActivityIndicator with pulsing header icon
  • DRY refactor: extract 14 reusable components, consolidate 6 utility functions
  • cli-node: bump version to 0.4.4
  • cli-node: log observational memory notifications in PiBridge
  • refactorings
  • some initial setup with notifications
  • some initial setup with notifications
  • some initial setup with notifications
  • ci update, stop button, loop
  • internal pi adapter and session continuation
  • full mcp adapter support
  • jiti mcp loading
  • agentic working and forgot password
  • Move model management to admin panel
  • Remove server-side @mention resolution
  • Modularize core inference/mcp/tui flows and cleanup dead code
  • frontend pass and teams
  • frontend pass and teams
  • frontend command
  • **landing:** Optimize visualizations with lazy loading and remove expensive blur
  • agentic improvements
  • more work on self-eval
  • gemini flash potwor
  • billing and owner
  • aisdk and not database_url
  • aisdk and not database_url
  • aisdk and not database_url
  • aisdk and not database_url
  • missed migration, idk how it happen?
  • projectid as param
  • tourjs, stylings, to be continued
  • better project opts
  • correct pg config
  • inference generation plan
  • Modernize todo playground with enhanced UI and modular architecture
  • multi step fences
  • streaming fences
  • genration done, codegen works
  • improved chat - moving towards plan tree gen
  • almost copilot for spectral
  • ✨ Update landing page with Phase 1 & 2 achievements
  • ✨ Phase 2 Complete: Execution Planner with Dependency Management
v0.9.692026-07-02
Fixes1
  • **vision:** Handle stream errors and empty responses in spectral-vision-fallback
v0.9.682026-07-02
Fixes3
  • Fix base-models test for restrictedToTeams filter, bump cli-node and electron to v0.9.68
  • landing fix
  • front fix
v0.9.662026-07-02
Features1
  • Bump spectral
Improvements1
  • DRY up isDark theme ternaries across landing components and studio nodes
v0.9.632026-07-01
Improvements1
  • Use OpenRouter automatic Anthropic prompt caching
v0.9.622026-07-01
Fixes5
  • fixes
  • fix codex
  • fix test
  • remove apply patch and fix confilcits
  • sub+toolcalls, need to fix apply_patch
Improvements2
  • Improve OpenRouter Anthropic prompt caching
  • wizard for spectral
v0.9.602026-06-30
Features1
  • Bump npm deps sha
v0.9.592026-06-30
Features1
  • Expose all DCP/observational-memory config in settings API and landing UI
Fixes1
  • **landing:** Fix TypeScript build errors in subscription-models page
v0.9.582026-06-29
Fixes3
  • Resolve all Deno and cli-node test failures
  • v0.9.57: connected accounts, team model connections, subscription-based models, lint fixes
  • **kanban:** Resolve auth & backend URL for local dev
v0.9.552026-06-28
Fixes1
  • **electron:** Restore native window dragging
v0.9.542026-06-28
Fixes1
  • **electron:** Stop inert backdrop from defeating drag header
v0.9.532026-06-28
Fixes1
  • **electron:** Use frameless shell-level drag region
v0.9.522026-06-28
Fixes1
  • **electron:** Force movable window and stronger drag fallback
v0.9.512026-06-28
Fixes1
  • **electron:** Use native title bar dragging per platform
v0.9.502026-06-28
Features1
  • added presets
Fixes1
  • **presets:** Relax query access checks, return team+project presets together
v0.9.492026-06-28
Fixes2
  • **electron:** Add JS fallback to ensure window drag region always exists
  • Add missing fromTaskDetailSelector import in use-refinement.ts