Skip to content

feat: Add schema 2.0 storage, stable workspace IDs, and machine APIs#2

Merged
maximkrouk merged 1 commit into
mainfrom
release/0.2.0
Jul 23, 2026
Merged

feat: Add schema 2.0 storage, stable workspace IDs, and machine APIs#2
maximkrouk merged 1 commit into
mainfrom
release/0.2.0

Conversation

@maximkrouk

Copy link
Copy Markdown
Member

Summary

Release fxcodex 0.2.0 with stable workspace identities, schema 2.0 storage, expanded machine-readable APIs, and improved Raycast integration.

Highlights

  • Assign stable UUIDs to workspaces so references survive renames.
  • Migrate schema 1.0 storage to schema 2.0 while preserving existing workspace data.
  • Move managed workspace directories from name-based paths to stable ID-based paths.
  • Add resumable migration state, storage locking, and migration validation.
  • Add versioned JSON responses with lower snake case API keys.
  • Add machine APIs for workspace operations, integration attributes, and supported Raycast installation commands.
  • Add --workspace-id support for opening workspaces.
  • Make commands interactive when required arguments are omitted where appropriate.
  • Improve command help and keep the current workspace first in interactive selection.
  • Add integration-owned JSON attribute storage.
  • Improve universal builds and compatibility with Xcode 27.
  • Expand test coverage across migrations, storage, CLI behavior, JSON output, updates, and integrations.

Raycast integration

  • Update the extension for the 0.2.0 workspace and status APIs.
  • Keep preferences, status, and diagnostics available when the CLI fails.
  • Read diagnostics directly where possible and make them copyable.
  • Cache workspace results to avoid empty loading flashes.
  • Disable destructive actions while a workspace is running instead of hiding them.
  • Add workspace name, ID, path, and PID copy actions.
  • Improve action labels and status presentation.

The bundled Raycast binary will be replaced with the 0.2.0 release artifact after the CLI release is published.

Documentation

  • Update the README, data layout, migration guidance, command examples, and table of contents.
  • Document stable workspace identities and the extension-facing API.
  • Document commands intentionally excluded from the 0.2.0 machine API.

Machine API exceptions

The following remain intentionally terminal-only in 0.2.0:

  • cli and exec, because they launch the potentially interactive Codex CLI.
  • Root uninstall, because it removes the executing binary.
  • Raycast sync and uninstall.

Breaking changes

  • Schema 2.0 storage is not readable by fxcodex 0.1.x.
  • Managed workspace directories now use stable workspace IDs instead of workspace names.
  • Frontends should use the documented 0.2.0 JSON API and stable workspace IDs.

Validation

  • All 123 CLI and client tests pass.
  • Universal arm64 and x86_64 builds pass.
  • The project builds with the Xcode 27 Swift toolchain.
  • Raycast extension build and lint checks pass.

@maximkrouk maximkrouk self-assigned this Jul 23, 2026
@maximkrouk
maximkrouk merged commit 819cd33 into main Jul 23, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant