UltraContext CLI

UltraContext collects Claude Code, Codex and OpenClaw sessions in one place so agents can see each other's context.

  • 441 ★ on the repository
  • Last commit
  • Apache-2.0
CLI

Broad access

Why this level

  • The daemon reads every agent session and sends its contents to the Context API, including any secrets and private code.
  • The Context API key opens access to all stored agent history.
All reasons and checks

ultracontext/ultracontext

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add cli/ultracontext

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The daemon reads every agent session and sends its contents to the Context API, including any secrets and private code.
  • The Context API key opens access to all stored agent history.

This is third-party code. Review the repository files before installing.

What it does

The `ultracontext` CLI reads Claude Code, Codex and OpenClaw sessions in the background and stores them in the Context API with versions. A terminal dashboard shows what agents are doing right now. From that store any agent can learn through the MCP server what another one did: what Codex did last, which sessions ran in this project, what a teammate is working on. The MCP server exposes three tools: `list_contexts` with filters by agent, host, project and time, `get_context_messages` and `get_recent_activity`. The Claude Code plugin adds a `/switch codex` command that moves the current Claude Code session into Codex with full history (and back) by converting the session file locally. Developers also get the Context API with JavaScript and Python SDKs.

Who it is for. Developers who work in Claude Code and Codex in parallel and lose context when moving between them.

Good fit when

  • A plan Claude Code wrote should be implemented by Codex.
  • A Claude Code session must continue in Codex with the full message history.
  • You want to ask an agent what the team did in a project over the last day.
  • Agent context should be stored with versions and rolled back to an earlier state.

Not a fit when

  • Sessions contain secrets that must not go to a cloud store.
  • Only one session needs moving: the plugin with `/switch` is enough without the rest of the sync.
  • The agent is not Claude Code, Codex or OpenClaw.

Example request

Grab the last plan Claude Code made from UltraContext and implement it in Codex.

Limitations

Requires Node.js 22 or newer. The MCP server needs a Context API key in `~/.ultracontext/config.json`, created by the `ultracontext config` wizard. Automatic session capture sends conversation contents to the Context API, so keys, passwords and private code present in sessions end up there too. The plugin install command in the README downloads the repository into a temporary folder and copies a SKILL.md from it, so read what is copied before running. The MCP server itself is started in the docs through `npx tsx` from a repository clone.

How to disable. Stop the daemon with `ultracontext stop`, remove the package with `npm uninstall -g ultracontext` and the ultracontext entry from the MCP configuration. Delete the ~/.ultracontext folder with the key by hand.

FAQ

How do I install UltraContext?

Run `npm install -g ultracontext` and start `ultracontext`. The command launches the daemon and terminal dashboard, and the `ultracontext config` wizard sets up the key.

What does /switch codex do?

It reads the Claude Code session file from disk, converts it to the Codex format, writes it to `~/.codex/sessions/` and opens Codex with the same conversation. No API calls are made; conversion is local.

Which tools does the MCP server provide?

`list_contexts`, `get_context_messages` and `get_recent_activity`. They answer questions like what Codex did last or which sessions ran in this project.

Is there a remote MCP mode?

Yes, the Context API has a built-in `/mcp` endpoint for Streamable HTTP clients. Requests carry an `Authorization: Bearer` header.

Is a key needed for the SDK?

Yes, the JavaScript and Python SDKs call the Context API with a key of the form `uc_live_`. The key is created in the UltraContext service.

Discussion

No questions or reviews yet.

CLI tools

A long-term memory plugin and server for Claude Code and Codex: decisions and handoffs move between sessions and agents

PluginBroad access1.6KRepository stars

A local context store for coding agents that captures project knowledge and reuses it across Codex, Claude Code and OpenCode

CLIExtended access1.3KRepository stars

An MCP server that preserves Claude Code context between sessions: decisions, checkpoints and a file cache kept in local SQLite.

MCP serverExtended access136Repository stars

Shared memory for coding agents: messages in SQLite, old context compacted into a summary tree and MCP tools to search it.

PluginExtended access60Repository stars

ECX ties Claude Code and Codex together with shared memory so each sees the other latest messages, plus 19 skills and 21 hooks.

PluginBroad access84Repository stars

An MCP server that keeps large tool output out of the agent's context window and stores session memory in SQLite

MCP serverExtended access33.9KRepository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
UltraContext (this card)no441
session-migrateno176moves a session between agents; UltraContext also stores versioned history and serves it to all agents through MCP
SessionBridge: a temporary bridge to 1C over RDPnoAPI key0an MCP for session exchange; this one adds background capture, a dashboard and a Context API with SDKs

README in short

The project describes itself as open context infrastructure for agents with three parts: the CLI, the MCP server and a Git-like Context API of five methods (create, get, append, update, delete) with automatic versioning and time travel across history.

README badge

Report a problem