CleanSlate 1.2.0 brings agents, project chats, browser tabs, terminals, files and change review into an MIT-licensed workspace. Its most consequential feature sits alongside that interface: MuscleMemory, a separate service that records successful coding procedures and makes them available to compatible agents.
According to the project’s repository, a procedure learned through Codex can later be recalled by Anthropic’s Claude Code, Cursor or CleanSlate when those agents connect to the same memory namespace. The default path includes several gates: a passing test after the final code change, two separate later passing checks, and user approval before recall.
The project was posted to Hacker News on October 28, 2026. That provides a public-submission date, not a confirmed release timestamp for version 1.2.0, which the repository identifies as the current release.
The practical question is what “verified” means here. CleanSlate documents a useful sequence of checks, but their value still depends on the tests, the relevance of the stored procedure and the person approving it. The other immediate consideration is installation: published desktop builds currently support Apple Silicon Macs, with normal Developer ID signing and notarization temporarily disabled.
What Moves Between Codex, Claude Code and Cursor
MuscleMemory records the steps, edits, test results and failed attempts behind a coding task. It then turns useful parts of that history into a reusable procedure: which files mattered, how the result was checked and which approaches caused trouble.
A later task can receive a short note containing the relevant steps, checks and pitfalls. Ready procedures can also be exported as SKILL.md files for Claude Code or Codex, according to the README.
Here, memory means stored procedures supplied to an agent. The documentation describes an external memory mechanism, not a change to the underlying model’s weights.
The repository’s example is a configuration-loading bug. An agent fixes the problem and runs tests; MuscleMemory can learn the files involved, the edits and the test command. After the later checks and approval, another connected agent can use that procedure as a starting point for a similar fix while checking the current code.
That last condition matters. A useful procedure can preserve a project’s conventions, but its file paths, assumptions or commands may become stale. I’d treat a recalled skill as a well-supported starting point, with the receiving agent still responsible for inspecting the current repository.
The cross-agent feature also has a specific boundary. “Shared” means agents connected to the same MuscleMemory workspace can reuse its skills. It does not mean every installation of Codex, Claude Code or Cursor automatically gains access to the same history.
The Three Gates Before a Procedure Is Recalled
MuscleMemory separates an initial successful task from a procedure that is ready for reuse. The documented default sequence has three distinct gates:
| Gate | Documented requirement | Practical consequence |
|---|---|---|
| Initial learning | A test must pass after the last code change | A successful test from before the final edit cannot qualify that session |
| Later checking | A new skill needs two separate later passing checks | The original success alone is insufficient for recall |
| User approval | Approval is required by default | A person controls whether the checked procedure becomes available for reuse |
The timing of the first test is an important detail. An agent might run a test successfully, make another edit and then finish. Under the documented rule, that earlier pass is insufficient: the test must pass after the final code change.
The two later checks add another hurdle between a one-off success and a reusable skill. They give the system more evidence than the original task provided. Approval then adds a separate decision about whether the procedure belongs in the workspace’s reusable knowledge.
These are the project’s documented rules, not independently tested results. They describe an acceptance process; they do not provide an independently measured success rate for recalled skills.
A Passing Test Has a Limited Scope
A passing check is only as broad as the behavior it exercises. A focused unit test might confirm that a configuration value loads correctly while leaving packaging, deployment or another execution path unchecked.
The approval stage is therefore a useful place to evaluate context as well as the green test result. A reviewer can ask whether the procedure:
- Includes a check that actually exercises the reported problem.
- Depends on a particular directory layout or configuration.
- Describes a reusable technique or an exceptional workaround.
- Preserves a meaningful warning from a failed attempt.
Those are review suggestions, not additional requirements claimed by CleanSlate.
My view is that separating these gates is more consequential than the memory label itself. Recording a successful command is straightforward. Deciding when that command is trustworthy enough to recommend again is the harder product problem. CleanSlate’s documented approach puts that decision behind both additional checks and an explicit approval step.
Local-First Memory Is a Separate Service
MuscleMemory is open source, runs locally by default and is optional. CleanSlate’s workspace does not require it, and installing the desktop app is separate from installing and connecting the memory service.
The repository describes a namespace as the control for which workspace shares memory. Its current integration supports CleanSlate’s built-in desktop agent and CLI; external agents use their own MuscleMemory connections.
That creates two setup responsibilities:
- Connect each intended agent. Installing MuscleMemory for CleanSlate does not automatically configure every other coding tool.
- Choose the intended sharing boundary. Agents must use the same memory namespace to reuse the relevant skills.
I’d make namespace selection part of project setup. Two repositories can use similar test commands while following incompatible configuration or deployment conventions. Keeping unrelated procedures apart reduces the chance that a seemingly relevant skill carries the wrong assumptions into a task.
Local-first storage also needs a precise reading. The documentation says memory is local by default. It separately allows users to bring a model key or use optional CleanSlate Pro managed models. That leaves model-provider connections as a separate consideration; local memory alone is not a promise that the entire coding workflow operates offline.
Connecting CleanSlate to MuscleMemory
The README supplies this setup sequence:
# Requires Python 3.12+ and pipx.
pipx install thewariend-musclememory
musclememory init
musclememory start
# Run from the project you want to connect.
cd your-project
musclememory connect cleanslate
These commands install MuscleMemory, initialize and start its service, then generate connection information for CleanSlate from the selected project directory. your-project is a placeholder for the project’s actual path.
The connection command prints host configuration and SDK module settings. The instructions then require applying those settings and launching CleanSlate from the same terminal. Running the command alone is therefore not the whole connection process. These are the project’s published commands; they have not been executed for this article.
For external tools such as Claude Code, Cursor or Codex, the README directs users to those agents’ own MuscleMemory connections. The commands above specifically connect CleanSlate.
The Desktop Workspace Provides the Inspection Surface
CleanSlate’s desktop application is built on VS Code. It groups conversations by project and provides files, terminals, a browser, changed-file review and artifacts alongside the agent conversation. Its browser tools can let an agent drive a real browser to check its work. The same agent runtime also powers a standalone CLI and SDK, according to the repository.
That interface has a practical relationship to procedural memory: a person approving reuse needs somewhere to inspect the work behind it. Diffs, test output and task artifacts can provide context for that decision.
Frequently Asked Questions
4 questions
1Can Claude Code Reuse a Skill Learned by Codex?
Yes, according to the repository, when both agents have compatible MuscleMemory connections and use the same memory namespace. Skills must pass the documented checks and receive approval by default before recall.






