Skip to content

Atelier Studio v1.3.0

Choose a tag to compare

@tofunori tofunori released this 13 Jul 01:30
· 1510 commits to main since this release

Atelier Studio 1.3.0

Atelier Studio 1.3 is a substantial platform and reliability release. It moves the desktop app to a Rust-first local agent runtime, establishes a shared protocol for desktop and companion clients, adds the first complete mobile and remote-access foundations, and delivers a broad refinement pass across chat, the scientific gallery, editors, project navigation, accessibility, and release engineering.

Highlights

  • The Rust sidecar is now the default desktop backend, with the Node backend retained as a compatibility and soak fallback.
  • Claude, Codex, Grok, OpenCode, OpenAI-compatible APIs, and image-generation providers are represented by the unified runtime and protocol layer.
  • A shared atelier-protocol package and deterministic fixtures now cover desktop, Rust, and mobile event semantics.
  • The new remote gateway provides authenticated device pairing, scoped access, replay protection, and a foundation for secure companion connections.
  • The iOS companion foundation includes project and thread browsing, streaming chat state, composer flows, reconnect handling, protocol tests, and native Tauri packaging.
  • The desktop workspace received a full “Precision Native” refinement pass with clearer hierarchy, calmer motion, improved accessibility, and responsive layouts.

Rust-first agent runtime

  • Added the Rust protocol, health endpoint, WebSocket transport, persistent stores, and provider registry.
  • Added durable thread, history, highlight, settings, workspace, terminal, Git, Zotero, and local-file operations.
  • Added a common provider harness with deterministic fake-provider coverage for send, queue, steer, interrupt, permission, and completion flows.
  • Added Claude CLI stream-json support and Codex app-server JSON-RPC support.
  • Added Grok, OpenCode, OpenAI-compatible API, and Seedream image-provider paths.
  • Added provider health reporting based on the live Rust runtime rather than static configuration.
  • Added release-only soak tooling, PID isolation, orphan detection, backend-policy checks, and restart guardrails.
  • Kept the Node runtime available while the Rust backend completes its production soak period.

Remote access and mobile companion

  • Added the atelier-remote Rust crate and desktop remote-gateway lifecycle integration.
  • Added authenticated pairing, device records, token handling, replay protection, rate limits, and security tests.
  • Added remote project, thread, event, attachment, and command routes.
  • Added a shared TypeScript protocol package with fixtures and parity tests against the Rust implementation.
  • Added the Atelier Companion application foundation for iOS, including navigation, chat state, streaming updates, reconnection, and mobile-focused UI tokens.
  • Added mobile build staging, secret scanning, type checks, tests, and static assets to the desktop bundle pipeline.
  • Added documentation for mobile architecture, threat modeling, protocol contracts, and release readiness.

Chat and workspace experience

  • Added a structured activity timeline, clearer request/result anatomy, and compact result capsules.
  • Improved completed-turn folding, tool summaries, streaming recovery, sticky auto-scroll, and interrupted-response cleanup.
  • Added a hierarchical composer with effort controls, keyboard-friendly menus, attachment handling, and one clear primary action.
  • Added persistent per-project provider, model, and effort selection.
  • Added goal controls in the composer, including edit, pause, resume, stop, and blocked-goal recovery.
  • Added durable highlights and a notebook-style highlight view.
  • Added project-aware thread movement and provider handoff with full-context replay.
  • Added Mermaid rendering, improved Markdown typography, task lists, and clickable file references.
  • Added the Research Home, active-project Research Navigator, workspace-local headers, inspectors, and improved project switching.
  • Added browser, terminal, Git, bibliography, generator, settings, and Atelier surface lazy loading with retry protection.

Scientific gallery and editors

  • Added the scientific gallery command bar, grouped filters, active-filter chips, selection, inspector, workflow states, recent items, and health tools.
  • Added durable favorites, ratings, tags, collections, hidden rules, and workflow state through project-owned .fig_state.json files.
  • Fixed favorites appearing to disappear after restart when their file format was hidden; Favorite view now overrides the general format mask without changing normal filters.
  • Added live gallery refresh and stale-server identity checks to prevent old gallery bundles from surviving app rebuilds.
  • Migrated editor surfaces toward CodeMirror 6 while preserving the shared compatibility facade and diff contracts.
  • Added asynchronous large-diff rendering, background gutter computation, explicit intervention history, durable restore, and safer reconciliation.
  • Added LaTeX comments with colors, batch actions, chat transfer, source/PDF synchronization, editor-only mode, and improved error states.
  • Reduced the line-number gutter width in both CodeMirror 6 and fallback editor modes.
  • Fixed the Wrap menu so it chooses the visible side of the status bar and remains clamped inside the editor viewport.
  • Refined the SVG editor with zoom, pan, inline text editing, typography controls, shape styling, durable anchored edits, and Matplotlib-friendly replay.

Command palette and interface polish

  • Redesigned the command palette as a smaller, denser navigation surface with a restrained active-item indicator.
  • Removed the oversized orange input outline and replaced it with a contained focus treatment.
  • Prevented the top-bar Search control from retaining mouse focus after opening the palette while preserving keyboard accessibility.
  • Added graphite theme tokens, bundled Inter and Monaspace typography, quieter depth, and a reduced motion budget.
  • Simplified project and chat headers, moved workspace actions to their owning surfaces, and removed redundant controls and status badges.
  • Added accessible settings navigation, responsive settings layouts, destructive-action confirmations, keyboard focus states, and deterministic visual fixtures.

Reliability, security, and distribution

  • Embedded a pinned Node.js 22.22.3 runtime for packaged gallery and compatibility services.
  • Added strict local-origin controls, gallery tokens, nonce propagation, safe path handling, and protocol boundary tests.
  • Added sidecar startup backoff, single-instance protection, stale-lock recovery, and health convergence checks.
  • Prevented runtime writes inside the signed .app bundle, avoiding macOS TCC startup stalls.
  • Added a stable development signing identity path and documented first-launch TCC behavior.
  • Added CI coverage for frontend, sidecar, gallery, Rust, shared protocol, mobile, and gallery browser tests.
  • Added a tag-driven Apple Silicon release workflow that creates a draft GitHub release and verifies the embedded Node artifact.

Validation coverage

The repository now exposes a unified verification surface covering:

  • TypeScript type checking and production Vite builds.
  • Frontend and sidecar unit/integration suites.
  • Python gallery regression tests, Node/Python route parity, and diff-suite contracts.
  • Rust desktop and workspace tests.
  • Shared protocol fixtures and desktop/mobile parity tests.
  • Mobile type checking, tests, production build, and secret scanning.
  • Gallery Playwright end-to-end tests in the release workflow.
  • Release bundle construction and embedded Node architecture/version checks.

Upgrade notes

  • Existing project-owned gallery state remains compatible. Favorites, ratings, tags, collections, hidden rules, and workflow state continue to load from .fig_state.json.
  • The Rust sidecar is the default backend. Set ATELIER_BACKEND=node only when explicitly testing the compatibility fallback.
  • Gallery servers are project-scoped and must be restarted when changing bundled gallery code. Follow the repository relaunch protocol to avoid stale processes.
  • The remote gateway and mobile companion are foundations for controlled local/remote use; review the mobile threat model and deployment documentation before exposing any service beyond the trusted configuration.

Platform and prerequisites

  • macOS on Apple Silicon.
  • Claude Code CLI 2.1.139 or newer for Claude sessions.
  • Codex CLI for Codex sessions.
  • Node.js and the gallery runtime are bundled in the packaged desktop app.

If Gatekeeper blocks an unsigned downloaded build, run:

xattr -cr "/Applications/Atelier.app"