Changelog

Public ctx CLI release history.

Entries below describe the behavior of their dated historical releases. A feature recorded here may no longer be part of the current product surface. See Blame and Install for current use.

2.2.7

Released: 2026-10-02

Fixed

  • Incremental imports reuse validated ownership for unchanged Codex rollouts, avoiding repeated reads of large metadata prefixes. Changed and replaced files still validate ownership before publishing history.
  • Telemetry accepts Sift output-hook integration events.

Release: v2.2.7.

2.2.6

Released: 2026-10-02

Added

  • ctx import --all --incremental runs one catch-up using existing checkpoints, without enabling automatic indexing. Ordinary imports remain exhaustive, and selected sources still get membership and deletion checks.

Fixed

  • Foreground imports recover the original request after lost acknowledgements while their owned worker is still alive, instead of giving up after three retries. Cancellation and explicit failures remain intact.

Release: v2.2.6.

2.2.5

Released: 2026-10-01

Changed

  • The ctx skill restores its original guidance to search prior agent work before starting unfamiliar work, resuming a task, or revisiting an investigation. It also explains when to query an indexed code graph.
  • Existing managed skills refresh automatically after upgrading. Locally edited skills are preserved.

Fixed

  • Imports work after OpenCode’s SQLite migration, including repeat imports and retained session evidence.
  • Blame attribution works for supported primary agent sessions.
  • Requested imports that fail return a failing exit status instead of reporting success.

Release: v2.2.5.

2.2.4

Released: 2026-09-30

Added

  • Optional telemetry now covers Graph, Sift, and Server: timing, failures, result completeness, measured output savings, request delivery, and background sync.
  • Standalone Graph and Sift deliver telemetry without setting up history search. Existing opt-out settings still apply; queries, paths, command arguments, code, and tool-output content are not collected.

Release: v2.2.4.

2.2.3

Released: 2026-09-30

Fixed

  • History imports can finish long-running phases without failing because progress counters have not changed. Startup waits for the worker to become ready, with cancellation and worker-exit handling preserved.
  • History stored behind directory symlinks works on Unix. An unreadable provider no longer prevents other providers from refreshing, and previously indexed history is retained.
  • Failed provider configuration changes no longer repeatedly refresh unchanged sources. Source and configuration changes can still trigger another attempt.
  • Imports can recover when a previous index generation has lost a required manifest but the active index is intact. Missing manifests report the missing generation directly.

Release: v2.2.3.

2.2.2

Released: 2026-09-30

Fixed

  • Includes the interrupted-upgrade and installer recovery fixes from 2.2.1 in the normal-performance build.
  • Older installations move through the smaller 2.2.1 compatibility bridge before joining the current update channel. Current installations update directly to 2.2.2.

Release: v2.2.2.

2.2.1

Released: 2026-09-30

Fixed

  • Rerunning the installer can recover early 2.x installations that were checking an older update channel. Existing history, settings and disabled integrations are preserved.
  • Interrupted upgrades finish their installation transaction before clearing recovery state, and retain the daemon restart acknowledgements needed to resume other data roots.
  • PowerShell installer retries use the original verified installation attempt.

Upgrade compatibility

  • This release is a full-feature compatibility bridge for older updaters with a 128 MiB executable limit. It uses compact parser tables and compressed tokenizer data. Graph parsing can be slower, and the first Sift operation initializes the tokenizer in memory. Subsequent upgrades use the current release channel and return to the normal build.

Release: v2.2.1.

2.2.0

Released: 2026-09-30

Added

  • Export and restore portable history archives. Use a backup tool such as restic for encrypted filesystem or object-storage backups.
  • Run a ctx server to share selected sessions with your team. Hosted history is beta and opt-in; ordinary local search and indexing keep working as before.
  • Enroll with an invitation or an administrator-issued credential file, choose which sessions to upload, and search shared history from the CLI or MCP. Administrators can revoke access and control collection permissions.
  • Queue selected history for upload while offline and send it when the server is available again.

Fixed

  • Managed history state honors an explicit CTX_DATA_ROOT, keeping custom data roots isolated.
  • Service tooling uses updated undici dependencies.

Release: v2.2.0.

2.1.4

Released: 2026-09-29

Fixed

  • Large history refreshes avoid repeated source lookups. Linux refreshes resolve source paths with fewer filesystem calls while retaining replacement and symlink checks.
  • Changed history sources reuse unchanged indexed records instead of deleting and rebuilding them. Edits and deletions remain visible, including older OpenCode messages.
  • Graph indexing accepts YAML streams and reports local document extraction failures correctly.
  • Disk-space errors show readable sizes and the additional space needed.

Added

  • ctx status explains the current history refresh stage and what triggered it.
  • ctx status --sample 5 produces a plain-text CPU and activity report. Add --format json for structured output. Reports include recorded refresh timings, scheduler activity, Blame progress, and semantic job status, without transcript content, file paths, or source identifiers. Missing or stale measurements remain unknown.

Source commit: e6207bc397a2.

2.1.3

Released: 2026-09-29

Fixed

  • Codex history watching on Linux and macOS ignores ordinary files that cannot contain transcripts, avoiding unnecessary refreshes while preserving transcript updates.
  • Automatic source discovery recognizes Codex session directories containing many transcript files.
  • Codex refresh avoids a redundant file-validation pass. Blame uses a small in-memory lookup index to reduce repeated disk reads for large source inventories.
  • OpenCode refresh reuses prepared SQL statements when scanning changed databases.
  • SQLite-backed history detects committed edits and deletions after rolled-back writes reuse WAL frames.

Source commit: ef3f4cf16f4a.

2.1.2

Released: 2026-09-29

Fixed

  • History index merges preserve cached verification when removing shared segment files, avoiding unnecessary full-index hashing for concurrent searches.

2.1.1

Released: 2026-09-29

Fixed

  • Sift hooks use ctx sift run, so intercepted shell commands execute correctly and preserve their exit status.
  • History refresh retains readers safely during publication and keeps verified index files reusable across managed link changes, avoiding false corruption errors and unnecessary full-index hashing.
  • Blame rebuilds a corrupt derived manifest from retained history. Doctor reports the failure, and foreground setup shows the active writer's progress.
  • Interrupted install and uninstall attempts no longer leave a fresh reinstall stuck in migration state. Other pending upgrades retain ownership of their recovery.
  • Uninstall recognizes current managed ctx skills while preserving edited skills. New manual-page directories install correctly with a group-writable shell umask.
  • Agent configuration updates preserve large JSON numbers and recognize valid inline TOML tables and owned renamed executables.
  • MCP reports missing history generations consistently, rejects non-object tool arguments, and documents its input and output limits accurately.
  • Installer and release tooling use undici 7.29.1 to address GHSA-3wwx-pv8p-q78v.

2.1.0

Released: 2026-09-28

Changed

  • Blame indexing supports histories with more than 16,384 sources. Large source inventories are processed in pages with temporary disk storage.

Fixed

  • Incremental history refresh calculates free-space requirements from the data it needs to write or copy, avoiding unnecessary full-index reservations.
  • Disk-full failures keep previously indexed history searchable and retain the failure reason while retries back off.
  • Installers distinguish a successful binary install from failed history setup. ctx setup --wait returns a nonzero status if the requested refresh fails.
  • Uninstalling and reinstalling preserves your automatic or manual indexing preference.
  • A verified new installation no longer reports upgrade errors from an older installation.
  • On macOS, retained history files keep stable identities across reboots.

Commits and PRs

  • Source commit: dcbbe02b.
  • Full diff: v2.0.5...dcbbe02b.
  • #1076 — scale Blame indexing and fix history refresh and setup.
  • #1075 — keep macOS retained file identities stable across reboots.
  • #1078 — remap build paths in release binaries.

2.0.5

Released: 2026-09-27

Fixed

  • Move current releases to a separate update feed so older installations can receive a small bridge release before downloading ctx 2.x.
  • New installs use the current feed directly. Existing 2.x installations that miss the transition can update by rerunning the installer; their history is retained.

2.0.4

Released: 2026-09-27

Fixed

  • Search uses less memory by avoiding full copies of index dictionaries and releasing query readers before formatting compact references.
  • Active Claude and Cursor transcripts can grow during refresh without blocking other sessions from updating. Incomplete trailing records are picked up on the next refresh.
  • Refresh avoids repeated manifest reloads and uses faster lookups for unchanged sources.

Commits and PRs

  • #1070 — reduce search memory and keep active transcript refresh moving.
  • Full diff: v2.0.2...v2.0.4.

2.0.2

Released: 2026-09-25

Changed

  • ctx sift is the single command for output filtering and recall. Use ctx sift recall for retained output; the older root ctx run, ctx compact, ctx restore, ctx recall, and ctx output aliases are removed.

Fixed

  • Upgrades from a core-only ctx installation now complete without an integration ownership reconciliation warning.
  • Large imports keep queryable Blame facts from unaffected events and report bounded omissions instead of losing the whole page.
  • Index cleanup preserves certification when it discards unchanged candidates.

Commits and PRs

  • Source commit: cff9cadb.
  • Full diff: v2.0.0...v2.0.2. The earlier v2.0.1 tag remained a prerelease.
  • #1055 — repair core-only upgrades.
  • #1056 — retain index certification.
  • #1059 — make ctx sift the sole output CLI.
  • #1060 — retain Blame facts on large imports.

2.0.0

Released: 2026-09-24

Added

  • ctx graph indexes a chosen codebase and answers symbol, dependency, and impact questions from a local SQLite graph. Existing .graf/index.db databases can be used without conversion.
  • ctx sift compacts tool output locally. Supported agent hooks can be installed explicitly; the optional Jev selector remains off unless enabled.

Changed

  • Agent-history search, Blame, code graph, and Sift now ship in one ctx executable. Search and Blame remain available after the ordinary setup. Graph indexing and Sift hooks are opt-in.
  • The README now introduces the unified workflows, including the Graphify comparison and migration path.

Fixed

  • Devin sessions with repeated rejected subagent lineages no longer block Devin history indexing. Compacted sidekick handoffs remain connected to the original lineage.

Commits and PRs

  • Source commit: d7b1da6f.
  • Full diff: v1.6.3...d7b1da6f.
  • #1044 — repair Devin history imports across compaction.
  • #1047 — unify history, graph, and Sift for ctx 2.0.
  • #1048 — align macOS release checks with graph DNS imports.
  • #1049 — align the README opening with ctx.rs.
  • #1050 — align Windows release checks with graph system imports.
  • #1051 — accept the unified executable size in release staging.
  • #1052 — accept ctx 2.0 in hosted release verification.
  • #1053 — qualify the current installer feed before ctx 2.0.

1.6.3

Released: 2026-09-22

Added

  • Blame indexing remains enabled by default. Set enabled = false in the [blame] section of config.toml to stop new foreground and background indexing passes. Existing results remain readable; an active pass may finish. Re-enable it and run ctx import --all to catch up retained history.
  • ctx import --no-blame skips Blame completion for that import, without changing the configuration or stopping an independently enabled daemon.
  • Imports and ctx setup --wait report Blame preparation, indexing and publication progress. Status shows active work separately from the last committed index's readiness. Plain and JSON progress are supported; --progress none remains silent.

Commits and PRs

1.6.2

Released: 2026-09-22

Fixed

  • When one logical history source exceeds its bounded staging spool, ctx keeps other providers available and retains that source's last good data when possible. Diagnostics identify the affected source path and exceeded limit.

Commits and PRs

1.6.1

Released: 2026-09-22

Added

  • ctx now discovers and imports conversations from Devin CLI's standard local history store. Main and compacted history, linked subagent sessions, and tool activity are available to ctx search and replay. Hosted Devin history and unlinked background threads are not included.

Changed

  • The website and documentation describe Blame as part of the open-source ctx CLI and remove retired commercial-product pages.

Fixed

  • When an index refresh lacks disk space, ctx reports the required and available capacity and backs off instead of repeatedly retrying it as an internal failure.
  • Status and doctor output no longer label a confirmed running daemon unhealthy solely because its scheduler heartbeat is old. The heartbeat age remains available as a diagnostic in JSON output.
  • OpenCode-family imports reject only the affected logical record when an individual SQLite value exceeds 16 MiB, while valid sibling history continues to import.
  • Hosted installs accept setup results with multiline progress output, avoiding false setup failures after a successful import.
  • Windows hosted installs accept valid multiline transaction receipts, avoiding a false installer failure after a successful upgrade.

Commits and PRs

  • Source commit: 6ba80f7e.
  • Full diff: v1.5.0...6ba80f7e.
  • #1017 — add Devin as a history provider.
  • #1024 — isolate oversized OpenCode-family history rows.
  • #1032 — stop low-headroom refresh retry loops and correct status diagnostics.
  • #1033 — prepare the 1.6.1 release.
  • #1037 — accept valid multiline Windows hosted transaction receipts.
  • #1038 — support file-backed macOS release-signing secrets.

1.5.0

Released: 2026-09-21

Changed

  • Blame is built into the open-source ctx CLI, including source and package-manager builds. File, commit, and pull-request attribution retains the short and explicit CLI forms and the MCP blame tool, with citations and text and structured results. Blame no longer requires a Pro companion, trial, activation, machine fingerprint, or subscription.
  • Blame, its build tools, the installer, and the documentation site now live in the public ctx repository.
  • Automatic indexing maintains attribution alongside local history. Run ctx setup --wait or ctx import --all to complete it explicitly, including in manual mode or when history is already current. Setup's --no-daemon option continues to suppress refresh.
  • ctx status and ctx doctor report attribution readiness and coverage. Blame queries read the existing index without starting a rebuild. A current index remains ready when no attribution evidence is available. History remains searchable while attribution catches up.
  • Existing retained history and citations are preserved. Blame uses the unencrypted local search/attribution/ index; old encrypted Pro data and keys are left untouched and unused. Upgrading does not cancel an existing subscription.
  • For hosted installs from 1.5 onward, uninstalling with no option or --keep-data preserves history, attribution, and legacy data and keys. --delete-data is rejected before changes are made; rerun without that option. Package-manager and source installs use their original removal method. There is no native ctx uninstall command.
  • Restored the original “search it with ctx” banner and updated documentation and bundled agent skills for included Blame, without trial or purchase instructions.

Commits and PRs

  • Source commit: 137f60fe.
  • Full diff: v1.4.12...137f60fe.
  • #1018 — include native Blame in the public ctx 1.5 product.
  • #1020 — renew bounded paste/lru exceptions and allow omitted Windows install evidence.

1.4.12

Released: 2026-09-20

Fixed

  • Blame reports missing or locked credentials and the corresponding recovery action instead of an invalid-response error. This applies to CLI and MCP requests.

Commits and PRs

1.4.11

Released: 2026-09-20

Fixed

  • OpenClaw imports schema v19 databases while retaining schema and agent-ownership checks.
  • On Linux under a non-root user, OpenCode, Kilo, and MiMo Code imports copy conversation tables without copying unrelated SQLite event logs. Other platforms and Linux root retain full-database snapshots.
  • fx imports current conversation logs and their retained tool output. Resume-cache files no longer prevent discovery, and older recovery checkpoints and permission state remain readable.
  • Codex rollouts retain explicit fork and delegation parents after a revert changes their history base.
  • Managed upgrades remove obsolete CLI and companion downloads. After installing this release, run ctx upgrade again to clear downloads left by older updaters.

Commits and PRs

  • Source commit: c3fbd8b4.
  • Full diff: v1.4.10...c3fbd8b4.
  • #1010 — remove obsolete upgrade downloads.
  • #1011 — preserve explicit Codex parent links.
  • #1015 — restore provider imports and prepare 1.4.11.

1.4.10

Released: 2026-09-16

Fixed

  • Upgrades recognize stopped daemons even when another process has reused their process ID.
  • Daemon status no longer requests a restart solely because another shell has different locale, temporary-directory, or session settings.
  • Windows manual upgrades and semantic-runtime repairs record completion before restarting background indexing. Resume preserves the installed environment and data-root path.
  • Windows scheduled tasks wait for fresh daemon ownership when process IDs are reused.
  • Hosted installers accept supported existing semantic and named-source settings.

Commits and PRs

  • Source commit: 31109e1d.
  • Full diff: v1.4.9...31109e1d.
  • #1006 — restore daemon availability after upgrades and shell changes.
  • #1007 — preserve Windows task ownership across upgrades.
  • #1008 — prepare the 1.4.10 patch release.

1.4.9

Released: 2026-09-16

Fixed

  • Hosted setup waits for the first searchable history index before completing, including when indexing is configured as manual or progress output is disabled. Manual mode stays manual after the foreground refresh.
  • Setup no longer reports background indexing as queued when background work is disabled. Installer paths that do not start ctx pro print the ctx pro CTA.

Commits and PRs

1.4.8

Released: 2026-09-16

Fixed

  • Upgrade warnings preserve line breaks in human-readable output while escaping terminal control characters. JSON warning values are unchanged.
  • On Linux, when systemd reports that the ctx user service has hit its start limit, ctx clears that service's failure state and retries the start once. Other failures do not trigger a reset, and daemon ownership checks still apply after the retry.

Commits and PRs

1.4.7

Released: 2026-09-15

Fixed

  • On Linux, daemon status reports a responsive daemon as running when ctx cannot inspect its executable, with executable identity marked unavailable. If the daemon does not respond, its owner remains unverified instead of being reported as a stale lock.
  • Imports and waits can keep using an authenticated connection to a matching daemon when executable inspection is denied. Denied inspection does not trigger a service handoff or allow forced termination.

Commits and PRs

1.4.6

Released: 2026-09-15

Changed

  • Background refresh diagnostics distinguish supported filesystem and resource failures using typed causes, without collecting paths or error text.
  • Telemetry upload recovery reports distinguish supported connection, timeout, response-read and local queue failures. Older clients can continue sharing the same queue. Unknown causes remain unspecified; retry behavior is unchanged.

Fixed

  • In 1.4.6, managed installation, upgrade and uninstall accept user-owned 755 and 775 executable directories and preserve their permissions and unrelated tools. The shell installer no longer changes an existing bin to 700.
  • Installer failures stop progress output before showing the error and tell users to resolve the reported problem before retrying. Already-installed older CLIs still apply their old permission checks during upgrade; their errors are now shown without changing shared directory permissions.
  • On Linux, ctx pro credentials use the existing /run/user/<uid> session directory when XDG_RUNTIME_DIR is unset.

Commits and PRs

1.4.4

Released: 2026-09-15

Fixed

  • File filters recognize literal filenames from Codex tool arguments encoded as JSON strings and from direct or nested patch headers. Original content is preserved, and available source logs are reparsed for existing indexes.
  • Background refresh diagnostics preserve typed coverage-block reasons through recovery and retain complete partial-source classifications, without changing refresh or retry behavior.
  • Updated rustls to 0.23.45 to enforce TLS 1.3 handshake encryption boundaries (RUSTSEC-2026-0285).

Changed

  • Repository-local Rust toolchain settings consistently select Rust 1.97.1. The declared minimum supported Rust version remains unchanged.
  • Windows source-build instructions explain the MSVC C++ tools, Windows SDK and Bash prerequisites, which are not needed for prebuilt installations.

Commits and PRs

1.4.3

Released: 2026-09-14

Fixed

  • History on tmpfs and supported eCryptfs encrypted-home filesystems can be indexed. eCryptfs requires an inspectable backing filesystem that meets the existing local-filesystem requirements.
  • Rejected source roots retain their filesystem or permission error instead of being reported as symlink problems. ctx doctor JSON now reports incomplete source discovery, matching the human-readable output.
  • ctx doctor no longer recommends retrying a completed import solely because some records were rejected.
  • MCP clients can list event metadata when an event is too large to inline.

Changed

  • Failed background refreshes retain coarse failure-stage and error-family diagnostics. These do not include error text or paths, change retry behavior, or retroactively diagnose earlier failures.

Commits and PRs

1.4.2

Released: 2026-09-12

Fixed

  • Fixed a macOS folder-watcher shutdown race that could leave background refresh stuck while the list of watched folders was being updated.
  • Background refresh on macOS now detects appended history even when a folder notification is missed.
  • Readers and recovery processes prepare their file limits before opening an index. Stalled refresh requests return an actionable error instead of waiting indefinitely, and ctx doctor explains disk-space and file-limit failures.
  • Semantic search keeps large source catalogs within the manifest size limit and reports runtime startup failures instead of showing continued preparation.
  • Fixed SQLite lock handling during Semantic indexing and local usage recording.
  • Codex imports preserve oversized prompts and history after a revert. Goose imports accept database versions 9, 15 and 16, and Cursor imports retain native turn timestamps.
  • Fixed Cargo subprocess-test compilation.

Commits and PRs

1.4.1

Released: 2026-09-10

Fixed

  • Restores the telemetry recovery fix from 1.3.2 that was missing in 1.4.0. After reporting a partial backlog, the client now reports recovery when the remaining events finish sending, including after a restart.
  • Restores installation and recovery guidance, including PATH checks, retry commands, custom install locations, and the distinction between installing the companion and activating Pro.

The original update feed remains frozen at the 1.3.2 bridge. Current managed installations receive 1.4.1 through the newer feed.

Commits and PRs

1.4.0

Released: 2026-09-09

Changed

  • The seven in-repo SDKs now use agent-history-v2, with schema version 1. The generic localOnly status property is removed. CLI status and setup JSON use schema version 3; generic usage/error, index and daemon envelopes use schema version 2. Update consumers that require the old field or check these versions; the migration guide covers the affected APIs. Operation-specific Semantic diagnostics retain their execution-location information.

Fixed

  • Semantic search shows and cites the passage that earned the result's score.
  • Semantic document chunks no longer lose their final tokens to tokenizer truncation.
  • Codex imports preserve distinct item and tool-call identities when both are present in a transcript.
  • Failed index rebuilds clean up their abandoned candidate files. Disk-pressure reports use the observed free space.

GitHub downloads contain unmanaged Core-only binaries. The hosted installer installs the managed Core and Pro pair. Existing managed installations move through the 1.3.2 bridge before 1.4.0. Windows 0.25.0 users must stop any opted-in legacy ctx daemon and rerun the PowerShell installer.

Commits and PRs

1.3.2

Released: 2026-09-09

ctx 1.3.2 improves managed upgrades, refresh recovery, Windows installation, and Semantic packaging while retaining the existing JSON and SDK interfaces.

Changed

  • Stable managed releases now require the complete source-bound semantic model and runtime asset set before stable metadata can advance.
  • Existing managed installations upgrade through 1.3.2 before moving to later stable releases. Ordinary ctx upgrade handles the transition, except on Windows 0.25.0: rerun the PowerShell installer because that old executable's self-upgrader cannot complete the update. Stop any opted-in legacy ctx daemon before reinstalling.
  • The legacy local_only JSON and localOnly SDK fields remain available but are deprecated. Use operation-specific Semantic diagnostics to understand execution location; the legacy marker is not a network or privacy guarantee.

Fixed

  • Managed Core and Pro upgrades preserve a truthful applied result and recover safely when post-commit finalization or restart work is interrupted.
  • Windows managed-pair replacement now handles access-control changes, candidate cleanup, and path identity correctly.
  • Windows installers preserve command exit codes and diagnostic output in PowerShell 5.1 and 7, including successful commands that write to stderr.
  • The PowerShell installer recovers managed Windows 0.25.0 installations using the authenticated release, without relying on the old broken self-upgrader.
  • Windows background processing handles private-directory permissions and concurrent readers correctly.
  • Refresh restart recovery preserves source-authoritative predecessor rebuilds and retained readers without reviving obsolete protocol paths.
  • Refresh jobs report completion only after the terminal journal write is confirmed; an unconfirmed write remains pending for retry.
  • Telemetry reports recovery once queued events finish sending, including when delivery resumes after a restart.
  • Installer downloads and decompression have bounded work and preserve useful failures instead of hanging indefinitely.
  • Managed-pair protocol output and automatic-upgrade warnings again follow terminal output ownership, including raw and machine-readable modes.

GitHub Release downloads are unmanaged ctx Core-only binaries; the hosted installer at ctx.rs/install provides the managed Core and Pro installation path.

Commits and PRs

1.3.1

Released: 2026-09-02

ctx 1.3.1 improves background work, managed upgrades, and snapshot reads while making partial history results easier to understand.

Changed

  • Semantic maintenance now gets bounded opportunities to make progress during continuous Core refresh activity.
  • Partial history labels now distinguish files that were not indexed from individual records that were skipped.
  • The persistent daemon now delivers queued telemetry in the background, so foreground CLI and MCP commands do not perform telemetry network delivery.

Fixed

  • Certified unchanged SQLite histories are reused without snapshot copies or logical rescans.
  • Managed upgrades safely refresh existing ctx-owned skills and installer-owned man pages while leaving uncertain or modified installs untouched.
  • Artifact redirects remain bound to the signed artifact origin while retaining existing transport and integrity checks.
  • Snapshot reads can reopen a certified retained predecessor after legitimate publication metadata changes without accepting unrelated stale state.

The binaries attached to the GitHub Release provide ctx Core only. The hosted installer remains the recommended path for a managed Core and Pro installation.

Commits and PRs

1.3.0

Released: 2026-09-01

ctx 1.3.0 adds configurable external semantic embedding executors and makes foreground imports finish only after enabled semantic indexing reaches the imported generation. It also tightens cross-platform daemon ownership, source access, and release checks.

Added

  • Semantic search can use a configured external HTTP embedding executor and custom embedding spaces.

Changed

  • ctx import now waits for both lexical and enabled semantic indexing, so a successful return means the imported generation is ready to query.
  • Daemon-free semantic commands can query a ready semantic index without launching a daemon.
  • Built-in semantic throttling is enabled by default and can be disabled in config for bounded maximum throughput; status reports both configured and effective state.

Fixed

  • Failed semantic activation no longer takes Core search offline, and foreground Core ML execution without a daemon uses the stable CPU path.
  • Foreground import cancellation stops only the finite worker started by that command.
  • Refresh returns after verified publication instead of waiting on stale request bookkeeping.
  • Windows source traversal and index pointer replacement retain tighter ownership and data-integrity checks.
  • Native ONNX loader errors retain useful path diagnostics.
  • Windows release checks allow the exact crypt32.dll import used by native certificate verification while continuing to reject unexpected PE imports.
  • Managed Windows installs resolve their lifecycle root from the user profile without requiring unrelated roaming or local app-data folders.

The binaries attached to the GitHub Release provide ctx Core only. The hosted installer remains the recommended path for a managed Core and Pro installation.

Commits and PRs

1.2.4

Released: 2026-08-29

ctx 1.2.4 keeps search results current immediately after refresh and improves background telemetry delivery and failed-source retry behavior.

Fixed

  • Search now waits for semantic indexing to catch up with a refresh before returning results, avoiding a brief window where search could use the previous generation.
  • Background telemetry now has more time to send and drain queued events, while interactive commands keep their short delivery timeout.
  • When no provider can handle a source, ctx retries once and then pauses that route instead of retrying indefinitely. Source changes, upgrades, and manual imports allow another attempt.

The binaries attached to the GitHub Release provide ctx Core only. The hosted installer remains the recommended path for a managed Core and Pro installation.

Commits and PRs

1.2.3

Released: 2026-08-29

ctx 1.2.3 fixes OpenCode history imports and restores managed upgrades to signed Core-only releases.

Fixed

  • OpenCode file and attachment parts without indexable text no longer interrupt history import or expose attachment metadata as indexed content. Malformed and unsupported SQLite rows now produce bounded diagnostics.
  • Existing managed installations can upgrade to newer signed Core-only releases that do not include optional Semantic Search assets.

The binaries attached to the GitHub Release provide ctx Core only. The hosted installer remains the recommended path for a managed Core and Pro installation.

Commits and PRs

1.2.2

Released: 2026-08-28

ctx 1.2.2 makes background indexing recover more safely, avoids repeated full-index verification during watcher recovery, and improves setup and import diagnostics.

Changed

  • Setup follows daemon-owned startup indexing and reports its progress instead of returning before the initial handoff is complete.
  • Import summaries report net additions and removals so incremental changes are easier to understand.
  • Upgrades no longer need the temporary RFC 2544 fake-IP setting. Existing copies of that retired setting are removed from config.toml automatically.

Fixed

  • Repeated background failures pause only the affected source after confirmation, while healthy sources and the last verified index remain available. Source changes, upgrades, and manual imports re-arm the route.
  • Watcher recovery no longer repeats an exhaustive logical audit of an already published index, reducing avoidable CPU and memory use reported in #804 and #805.
  • Daemon shutdown stays bounded when active indexing work is stuck and preserves the last published generation.
  • Semantic catch-up uses the verified generation identity so recovery cannot attach vectors to the wrong index generation.
  • Oversized JSONL history records are read in full rather than treated as truncated input, and native watchers ignore access-only filesystem events that do not change history.
  • SQLite-backed providers and terminal refresh reporting now publish a single coherent completion or failure result.

The binaries attached to the GitHub Release provide ctx Core only. The hosted installer remains the recommended path for a managed Core and Pro installation.

Commits and PRs

1.2.1

Released: 2026-08-28

ctx 1.2.1 fixes Core CLI upgrades on VPN and TUN networks that resolve the official release service into the RFC 2544 benchmarking range.

Fixed

  • ctx upgrade can use official signed release artifacts when cli.ctx.rs resolves into 198.18.0.0/15 after the user explicitly enables:

    [upgrade]
    allow_rfc2544_fake_ip = true

    The option is off by default and applies only to signed release artifacts fetched over HTTPS from the official ctx release service.

The binaries attached to the GitHub Release provide ctx Core only. The hosted installer remains the recommended path for a managed Core and Pro installation.

Commits and PRs

1.2.0

Released: 2026-08-27

ctx 1.2.0 expands semantic-search controls and makes local history ingestion more resilient across providers and large corpora.

Added

  • Manage semantic indexing directly with ctx semantic enable, ctx semantic status, and ctx semantic disable; repair missing runtime components and wait for manual semantic refreshes to finish.
  • Native fx history support and aggregate local Blame usage in ctx stats.

Changed

  • Semantic backfills run in batches, with clearer CUDA and backend reporting on WSL2.
  • History health, search-result identity, missing import paths, and local timestamps are clearer.
  • Upgrades and installs better support read-only third-party locations, daemon-owned automatic scheduling, and Windows verbatim and managed paths.

Fixed

  • Claude, Codex, and Cursor imports better handle duplicate identities, large archives, top-level roles, divergent transcript copies, paginated plan completions, and rejected-record diagnostics.
  • Incremental indexing and refresh better handle large segment topologies, bounded lossless watcher recovery, source-tree failures, duplicate-identity quarantine, scoped retries, and SQLite file-descriptor headroom.

Commits and PRs

1.1.3

Released: 2026-08-26

ctx 1.1.3 improves multi-root support, makes large Codex archives import reliably, and makes new Pro setup flows tell the truth about when access is ready.

Changed

  • Setup and status now give a concise summary of configured history folders and import health; concise human ctx sources output keeps configured roots visible while hiding irrelevant automatic empty locations, while JSON and --all preserve the full inventory.
  • More valid large Codex records are retained, with concise diagnostics for skipped records and source failures.
  • New Pro browser handoffs keep browser and terminal completion in sync: interactive ctx pro waits for durable local acceptance, retries dropped responses safely, and returns a bounded, actionable error when Linux keyring access is locked.

Fixed

  • Large Codex archives no longer stop at 10,000 entries during discovery.
  • Claude Code histories keep the latest compatible observation when resumed sessions reuse an event UUID.
  • Interrupted Pro catch-up recovers safely when its pre-lease Core generation has already been collected.
  • Large valid indexes with more than 64 internal segments continue refreshing instead of being mislabeled as corrupt.

Commits and PRs

1.1.1

Released: 2026-08-25

ctx 1.1.1 makes first-run setup more reliable when indexing, daemon maintenance, and Pro activation overlap. It also improves result diversity for broad searches across large histories.

Changed

  • Broad searches spread bounded results across more sessions and sources before returning additional matches from the same history.

Fixed

  • Ordinary commands reuse a healthy same-version daemon instead of reconciling its native service from each invoking shell's environment.
  • Pro setup treats an index generation rollover as transient, retries the open, and no longer reports the race as corrupted history.
  • If Pro activation completes but the remaining setup does not, the installer preserves that activation and prints the correct ctx setup retry command.

Commits and PRs

1.1.0

Released: 2026-08-25

ctx 1.1 adds multi-root support, so histories from separate Codex, Claude, Cursor, and other workspaces can live in one index and be searched independently. It also adds JSONL v2 custom-history support and a broad set of fixes for imports, index recovery, upgrades, and Windows.

Added

  • Added multi-root support. Multiple roots from the same provider can remain in one index and be selected with --source-root or --source-group, including through JSON and MCP requests.
  • Custom history now uses the strict JSONL v2 envelope and carries provider, source, and session identities through CLI, JSONL, locate, show, and MCP output.

Changed

  • Privacy settings now apply consistently across Core, Pro CLI, and MCP.

Fixed

  • Large SQLite histories are admitted according to available disk space instead of a fixed 2 GiB snapshot ceiling.
  • Malformed records and broken transcript sources are isolated so healthy histories continue importing.
  • Duplicate native JSONL records are rejected individually instead of aborting the complete import.
  • Resumed Gemini recordings retain distinct identities when Gemini reuses a session ID.
  • Replaced roots retire old members correctly, and timestamp-only JSONL changes no longer create duplicate content.
  • New index generations are integrity-checked before activation.
  • Cursor transcript discovery is limited to known layouts, avoiding unrelated filesystem traversal.
  • Cold Codex imports capture the complete available history while a session is still active, then import new content during the next refresh.
  • Repaired Windows upgrade and uninstall compatibility across retained runtimes, legacy private state, install paths, and process identities.
  • Same-version upgrades repair missing or corrupt signed semantic runtimes.
  • Daemon refresh failures no longer leave stale requests in progress.
  • Automatic upgrades remain active when daemon indexing is disabled.
  • Index recovery preserves recoverable generations and retries transient cleanup races.
  • Corrected result accounting that could report valid partial semantic results as contradictory failures.

Commits and PRs

1.0.2

2026-08-21

Changed

  • Setup now advances the sessions, messages, tool-call, and data-scanned counters throughout large Codex history scans, reducing long apparent pauses while retaining the ingestion pipeline's bounded batching and throughput.
  • Cold indexing now merges wider groups of lexical segments, reducing merge overhead on large histories.
  • Expired ctx pro browser handoffs now lead users back to a safe recovery path instead of leaving them in a stale sign-in flow.

Fixed

  • Simplified error propagation for quarantined Codex rollouts and parallel ingestion failures, preserving the original actionable error.

Commits and PRs

1.0.0

2026-08-20

ctx 1.0 is our first major stable release and brings serious performance and correctness improvements. Cold ingestion of a 4 GB history corpus fell from 44 minutes to 2m22s, about 18x faster, and incremental refresh fell from 4.0s to 0.35s, about 12x faster. The release also adds automatic indexing across more than 40 local agent-history sources, tracks parent, subagent, fork, and copied-session lineage, and introduces ctx blame, a ctx pro command that connects files, commits, and pull requests to the agent sessions that produced them.

Indexing and storage

  • Replaced the legacy SQLite/FTS history store with immutable, self-contained Tantivy Core generations.
  • Complete normalized records now live in Core, so searches and transcript reads do not reopen provider databases or files.
  • Publications are verified and activated as complete generations. Interrupted refreshes retain the last verified generation and safely retry.
  • Semantic search now uses optional memory-mapped flat-F32 generations instead of sqlite-vec.
  • Core, semantic, and pro state are bound to committed generations, preventing mixed or partially updated results.
  • Added route-local incremental refresh, unchanged-source admission, bounded generation verification, and writerless no-op refreshes.
  • Malformed or conflicting Codex rollouts can be quarantined individually while valid sibling histories continue importing.

Search and structured access

  • Added content-aware ranking and explicit all, transcript, calls, and outputs scopes.
  • Added deterministic event queries through ctx list events, with chronology, provider, source, session, lineage, agent, workspace, and file filters.
  • Added generation-bound JSON and streaming JSONL output for structured queries and exports.
  • Added exact MCP server/tool attribution and policy-selected invocation search.
  • Added provider-neutral parent, child, fork, and copied-session relationships. Proven copies are suppressed from default search without becoming inaccessible.
  • Added ctx show event and expanded session rendering with text, Markdown, JSON, and JSONL output.
  • Added transcript export through ctx show session --out.

Examples:

ctx list events --provider codex --event-type message \
  --content full --format jsonl > codex-messages.jsonl

ctx list events --since 2026-08-01T00:00:00Z \
  --until 2026-08-02T00:00:00Z --format jsonl

ctx show session <session-id> --mode full \
  --format markdown --out transcript.md

ctx pro

  • Added file, commit, and pull-request blame for connecting code changes to the agent sessions that produced them.
  • Added ctx blame <target> shorthand with explicit --type file|commit|pr overrides.
  • Added bounded verified evidence context to blame results.
  • Added exact Git operation lineage for amend, rebase, and cherry-pick attribution.
  • Added explicit attribution outcomes when evidence is absent, ambiguous, stale, or unverifiable.
  • pro consumes committed Core generations directly and does not rescan provider histories.
  • First setup can automatically start a 14-day trial without requiring an account or card.
  • Added a browser handoff for connecting an account, retaining access after the trial, or subscribing.
  • Core remains fully usable when ctx pro is unavailable.

Setup, indexing, and terminal UX

  • First setup now coordinates Core indexing and optional pro trial setup while preserving Core-first, fail-soft behavior.
  • Added automatic and manual indexing modes through ctx index mode auto|manual.
  • Added whole-run progress and estimated completion time.
  • Added continuously updating session, message, tool-call, and data-scanned counters.
  • Added live terminal resize handling and persistent structured callouts.
  • Hardened daemon recovery, concurrent publication, reinstall supervision, service ownership, and idempotent reinstall behavior.
  • Added the universal ctx agent plugin and migrated the managed skill and command to it.

Provider support and import reliability

  • Added or completed support for Hermes, Grok Build, DeepSeek Harness, current and legacy OpenClaw history, OpenHands CLI, Cline SDK stores, Mux archives, Shelley, and compressed Codex rollouts.
  • Fixed streamed Kimi assistant content and corrected wire semantics.
  • Restored Factory Droid discovery and stabilized retry identities.
  • Hardened Cursor, Copilot CLI, OpenCode, Codex, Claude, Pi, and other importers against sockets, symlinks, active writes, malformed optional metadata, duplicate identities, and partial records.
  • Supported readable provider histories are now discovered and imported automatically.

Performance

WorkloadBeforectx 1.0Result
4 GB cold ingestion (#306)44m 33s2m 22sAbout 18x faster
648 MB incremental refresh4.015s0.345sAbout 12x faster
35 GB ordinary appendFull-route work469ms p50, 535ms p95Under 0.5s median
5.44 GB lexical cold build30.60s7.65s75% faster
Lexical filesystem output3.87 GB240.8 MB16x smaller
Broad-term lexical query115.23ms1.178ms98x faster
20.8 GB Core ingestion21m 49.8s15m 04.5s30.9% faster
20.8 GB Core to pro completion28m 33.2s21m 47.4s23.7% faster
Four-CPU, 192-source refresh21.23s / 189.9 MB13.06s / 131.2 MB38.5% faster, 30.9% less memory
33 GB unchanged refresh13.26s7.29s45% faster
16,384-document publication3.141s84.5ms37x faster

The final live-counter implementation measured an approximately 0.6% wall-time difference, within run variance, and an identical 1.31s incremental-refresh median.

Platforms and distribution

Official artifacts are available for:

  • Linux x86-64 and ARM64, targeting a GLIBC 2.28 ceiling.
  • macOS x86-64 and Apple Silicon.
  • Windows x86-64.

Official installs verify signed metadata and artifact hashes. Windows artifacts are Authenticode-signed, and macOS artifacts are signed and notarized. Source and package-manager installations remain fully supported as Core-only installations.

Breaking changes and upgrade notes

  • On first run, ctx 1.0 automatically builds a new immutable Core generation from your existing provider histories. It does not convert the legacy index in place. The new generation is verified before activation, interrupted builds can safely retry, and your original agent history is never modified. No manual migration is required.
  • ctx sql and its persistent relational projection have been removed. Common structured-access workflows remain available through indexed ctx list events filters, JSON/JSONL, jq, MCP, and the SDKs. Arbitrary SQL is gone, but provider, source, session, lineage, chronology, role, event-type, workspace, and file selection have typed indexed equivalents.
  • The legacy --json shortcut has been removed; use --format json.
  • Windsurf support was removed because its available source was hook-generated output rather than automatically discoverable native history.
  • Trae support was removed because its history contract could not be supported reliably.

Contributors

External code contributors:

  • @j2h4u: bounded provider imports, OpenClaw refresh efficiency, and OpenCode empty-value handling
  • @rNoz: macOS path safety, Cursor and Copilot CLI source handling, Factory Droid discovery, and daemon upgrade recovery
  • @rcny: Kimi streamed assistant content and corrected transcript semantics
  • @createsomethingtoday: macOS stat metadata normalization
  • @atharva-patill: source-backed indexing documentation

The Factory Droid discovery fix was integrated through a maintainer change and retains rNoz as its commit author.

Issue reports and product feedback also came from:

Thank you to everyone who tested ctx against real histories, reported failures, supplied benchmarks, and contributed fixes.

Full changelog

ctx 1.0 includes 391 merged PRs since v0.25.0.

View the full v0.25.0 to v1.0.0 changelog.

0.25.0

2026-07-13

Added

  • Added an opt-in background daemon that keeps local history fresh, owns semantic indexing, and serves search queries without reopening the index for each command.
  • Added opt-in hybrid semantic search using the pinned intfloat/multilingual-e5-small model across the supported release matrix. Apple Silicon can use Core ML acceleration; managed ONNX Runtime sidecars provide the CPU path on Linux, macOS, Windows, and FreeBSD.
  • Added MiMo Code integration installers and coarse local hardware capability telemetry for release planning.

Changed

  • Lexical search now uses OR semantics by default and ranks conversational user and assistant messages ahead of lower-value event records.
  • Native refresh skips unchanged histories, avoids rescanning full-text rows, and bounds bulk import and WAL recovery work more carefully on large indexes.
  • macOS release binaries are now Developer ID signed and notarized.

Fixed

  • Updated Factory Droid, AstrBot, CodeBuddy, Junie, NanoClaw, and related native importers for current on-disk formats.
  • Fixed canonical handling for workspace and file filters, made upgrade errors visible in text status, and cleaned completed scheduled-upgrade state.
  • Cleaned temporary semantic model download state after verified installation and tightened cross-platform runtime validation.

Daemon maintenance and semantic search remain disabled by default in 0.25.0. After opting in through ~/.ctx/config.toml, run ctx setup; ctx status reports daemon state and semantic indexing coverage. Windows binaries are protected by signed release metadata and SHA-256 verification but are not yet Authenticode-signed.

Commits and PRs

0.23.0

2026-07-08

Added

  • Added multilingual scriptgram search so unspaced and mixed-script CJK, Kana, Hangul, Thai, Myanmar, and Indic queries can recall matching session and event text that SQLite FTS tokenizes poorly.
  • Added a v45 local schema migration that rebuilds the scriptgram search sidecars during normal CLI migration.

Changed

  • ctx setup now keeps valid local sessions searchable when nearby provider files are empty or malformed.
  • Native import manifest handling now records malformed per-file failures without treating every file in the source as failed.

Fixed

  • Fixed bundled skill installs created before .ctx-skill.json metadata so known legacy ctx-agent-history-search copies upgrade as ctx-managed stale installs.
  • Fixed default skill installation so a custom same-name detected agent skill is preserved without failing the whole public installer flow.
  • Fixed Codex setup imports so an empty or malformed session file does not skip the entire Codex sessions source.
  • Fixed Antigravity setup imports so malformed transcript JSONL files are skipped while other valid Antigravity transcripts are indexed.
  • Fixed completed progress rendering so final plain and JSON progress reports show 100% completion instead of 0% ... done.

Commits and PRs

0.22.0

2026-07-08

Added

  • Added ctx integrations install/status mcp for supported coding-agent MCP configs, including structured config updates and conflict handling.
  • Added ctx integrations install slash-commands for supported command-file agents, with project and global scopes.
  • Added real harness smoke coverage for MCP, bundled skill, and slash-command integration flows.

Changed

  • Moved bundled agent skill install and status under ctx integrations install/status skills.
  • Native provider imports now use the updated public import policy defaults, retaining conversation text and safe metadata while skipping successful raw outputs and diffs.
  • The explicit-metadata development installer is now named scripts/dev-install-from-metadata.sh.
  • Public CI and release artifact checks now run through the hosted Buildkite pipeline configuration.

Fixed

  • Fixed oversized SQLite and JSONL handling so invalid or oversized records are skipped and reported without aborting nearby importable content.
  • Fixed OpenCode and Kilo message-part imports.
  • Fixed Python SDK handling of invalid UTF-8 from the local CLI.
  • Tightened README and install documentation around the current hosted and unmanaged install paths.

Commits and PRs

0.21.0

2026-07-07

Added

  • Added Linux ARM64 release asset support with the ctx-linux-aarch64 artifact name in the hosted release matrix.
  • Added public CI coverage and Bazel-modeled Rust crate checks for the public CLI repository.

Changed

  • ctx setup, ctx status, and ctx sources now share a clearer local-source inventory and scale better as supported provider coverage grows.
  • Added --quiet output handling for setup/status workflows so scripted installs can suppress non-essential success output.
  • Native imports are source-atomic by default, and provider identities are scoped by source so multiple local history roots stay distinct.
  • Provider listings now focus on importers that are supported by the public CLI.
  • Local redaction and share-safety state was removed from CLI storage, JSON output, and SDK contracts; local payloads and previews are stored directly.
  • Install documentation now covers unmanaged GitHub release assets, checksums, mise, Homebrew, and source-build behavior for the current release line.

Fixed

  • ctx status is now strictly read-only and will not initialize or repair local state.
  • Metadata-only provider imports are rejected before they create searchable history.
  • Setup, upgrade, and install diagnostics now report clearer lifecycle state.
  • Public CI setup, clippy coverage, and release-build environment handling were hardened for the current provider matrix.

Commits and PRs

0.20.0

2026-07-06

Added

  • Added native ctx skill install and ctx skill status support for the bundled ctx-agent-history-search skill.
  • Added installer setup integration for the bundled skill, including the universal .agents location and detected agent-specific skill folders.
  • Expanded supported local agent-history imports to 40 supported entries, including Warp, Windsurf, AstrBot, OpenClaw, Hermes Agent, NanoClaw, Shelley, Continue, OpenHands, Tabnine, Zed, Cline, Roo Code, and more.

Changed

  • Improved installer output and first-run setup guidance with clearer setup status and get-started commands.
  • Made source listing UX scale better as supported agent coverage grows by summarizing missing long-tail sources.
  • Updated docs and README references for native skill install and supported local agent history imports.

Fixed

  • Fixed --since overflow handling.
  • Fixed Windows home-directory discovery for provider locations.
  • Fixed read-only commands so they avoid unnecessary store initialization.
  • Fixed explicit import path and history-source manifest validation.
  • Fixed native JSONL import behavior for files without importable session headers.
  • Fixed whitespace-only search filters.
  • Fixed OpenCode import to index actual session messages.
  • Fixed MCP tool results to return readable text in content[0].text.
  • Fixed empty provider session validation.
  • Added parser, path, SQLite, timestamp, manifest, and resource-bound hardening across CLI/provider import paths.

Commits and PRs

0.18.0

2026-07-03

Added

  • Added hosted installer handoff marker support so managed installs can connect an install attempt to later CLI lifecycle events without copying marker contents into event properties.
  • Added a setup-start lifecycle event before setup completion.

Changed

  • Managed upgrades now preserve hosted installer handoff markers when rewriting install sidecars.

Commits and PRs

0.17.0

2026-07-03

Added

  • Added exact file-only search behavior for path-scoped queries.
  • Added SDK validation and error coverage for required search intent across the generated clients.

Changed

  • ctx search now requires explicit search intent; empty queries no longer fall back to broad results.
  • Native path imports now require an explicit provider.
  • Provider provenance is scoped by source so multi-source imports preserve distinct event and file-touch identities.
  • Local preview redaction docs now clarify that search output is local private transcript text, not share-safe redacted text.

Fixed

  • Hardened malformed config handling so invalid config fails loudly.
  • Hardened read-only search, doctor, upgrade diagnostics, and upgrade locking paths.
  • Skipped unreadable child directories while probing provider roots.
  • Initialized empty stores in refresh-off CLI tests.

Commits and PRs

0.16.0

2026-07-02

Added

  • Added ctx-history-jsonl-v1 imports for explicit JSONL interchange files.
  • Added local history-source plugins: a manifest plus script or binary command that streams ctx-history-jsonl-v1 records to stdout.
  • Added custom history-source filters and cursor handoff to CLI and MCP source/search flows.

Changed

  • ctx sources, ctx import, ctx search, and MCP source/search flows now understand custom history sources.
  • Search-time refresh can run enabled custom history plugins before querying.
  • Plugin docs are linked from the README, embedded docs, and ctx.rs site.
  • README and import-source UX were tightened.

Fixed

  • Fixed plugin timeout handling when helper descendants keep stdout or stderr open past the configured source timeout.
  • Improved the error for nonexistent import paths.

Commits and PRs

0.15.0

2026-07-01

Added

  • Added first-class local history import and search support for OpenClaw, Hermes, NanoClaw, and AstrBot.

Changed

  • Updated provider docs and fixture coverage for the new native sources.

Commits and PRs

0.14.0

2026-07-01

Added

  • Added experimental in-repo agent-history SDKs while keeping them non-publishing.
  • Added privacy-safe telemetry device identity support.

Changed

  • Cross-built macOS CLI artifacts from Linux with pinned Zig and cargo-zigbuild tooling.
  • Hardened release and archive coverage.
  • Renamed SDK contracts and docs around the agent-history naming.

Fixed

  • Fixed Swift SDK full-toolchain tests.
  • Cleaned up a clippy fixture issue in store archive-validation tests.

Commits and PRs

0.13.0

2026-07-01

Added

  • Added embedded docs for SQL, MCP, and upgrade topics.
  • Added ctx doctor progress output.
  • Added richer agent skill guidance for advanced ctx workflows.

Changed

  • ctx search excludes subagent sessions by default, with --include-subagents for explicit subagent coverage.
  • Search filter state and legacy JSON output were cleaned up.
  • Provider display names and provider filter docs were clarified.
  • Darwin CLI artifact generation can run from Linux through cargo-zigbuild.

Fixed

  • Fixed catalog import checkpoint state.
  • Kept checkpoint helper tests clippy-clean.
  • Suppressed weak embedded-doc search matches and added recovery suggestions.

Commits and PRs

0.12.0

2026-06-30

Added

  • Added ctx sql for one bounded, read-only SQL statement over the local store.
  • Added the MCP sql tool for advanced agent queries.
  • Added stable read-only views: ctx_sessions, ctx_events, ctx_files_touched, and ctx_sources.
  • Added SQL input from an argument, stdin, or --file.

Changed

  • SQL execution is bounded by rows, columns, SQL size, value size, SQLite allocation, and timeout limits.

Commits and PRs

0.11.0

2026-06-30

Added

  • Added signed managed upgrade checks and apply flow through ctx upgrade.
  • Added background auto-upgrade checks for hosted-installer-managed installs.
  • Added built-in documentation through ctx docs.
  • Added generated man pages through ctx docs man.

Changed

  • Hosted Unix and PowerShell installers verify signed CLI metadata, write managed install markers, and install generated Unix man pages.
  • Release metadata carries explicit self-upgrade and auto-upgrade policy flags.

Commits and PRs

0.10.0

2026-06-30

Added

  • Added touched-file metadata ingestion where provider transcripts expose file paths through tool calls, patches, commands, or native fields.
  • Added ctx search --file <path> examples and JSON contract notes for touched-file matches and citations.
  • Added the README token-efficiency chart.

Changed

  • Search output is described as local/private transcript text, not share-safe redacted text.
  • Older data roots can refresh derived search projections and re-read original provider transcripts when they still exist.
  • Agent skill docs were refreshed.

Commits and PRs

0.8.0

2026-06-29

Changed

  • Removed redundant top-level ctx list, ctx export, and ctx validate commands.
  • Kept ctx doctor as the storage health command.
  • Moved transcript file writing to ctx show session --out.
  • Updated docs, JSON contracts, security notes, and installed agent instructions for the smaller command surface.

Commits and PRs

0.7.0

2026-06-29

Changed

  • Removed the public top-level ctx research command and MCP research tool.
  • Kept history research as an agent workflow composed from ctx search, scoped ctx search --session, and ctx show.
  • Updated docs and agent skill instructions to use the composable commands.

Commits and PRs

0.6.0

2026-06-29

Added

  • Added the read-only MCP stdio server.
  • Added deterministic research packets and performance gates.
  • Added real-corpus search quality benchmarks.

Changed

  • Default search output became more compact and action-oriented, including inspect commands for follow-up retrieval.
  • Session transcript rendering defaults toward lite output.
  • ctx status source counting is faster.
  • Installed agent skill/plugin instructions were synced with the refined CLI flow.

Fixed

  • Satisfied strict clippy for the CLI UX changes.
  • Kept session metrics scoped to session-search results.

Commits and PRs

0.5.0

2026-06-27

Changed

  • Moved indexed history item counting into the store so setup/search checks no longer had to enumerate every session and event.
  • Avoided doing that count unless search had no results and needed a useful next step.
  • Updated package versions and public artifact checks for the release.

Commits and PRs

0.4.0

2026-06-26

Changed

  • Made search refresh incrementally import discovered native provider sources.
  • Preserved Codex tail state through recataloging.
  • Avoided global FTS rebuilds during normal refresh.

Fixed

  • Added regression and performance coverage for no-op and tail-refresh paths.

Commits and PRs

0.3.0

2026-06-26

Added

  • Added clearer provider source discovery and importability reporting for ctx sources.
  • Added Codex incremental import performance coverage.

Changed

  • Improved search refresh controls and freshness reporting.
  • Tightened hosted installer setup and search behavior.

Fixed

  • Fixed an incremental performance clippy lint.

Commits and PRs

0.2.0

2026-06-25

Added

  • Shipped the local SQLite index for agent-history sessions and events.
  • Supported setup, source discovery, import, search, show, locate, doctor, and JSON output for agent workflows.
  • Included native local-history imports for the first supported coding-agent formats.
  • Published hosted installers and cross-platform CLI artifacts.

Fixed

  • Fixed OpenCode import sequencing before the stable metadata refresh.

Commits and PRs