From f405534cba6a76bdddad21b1374af12559f53eac Mon Sep 17 00:00:00 2001 From: Earson Date: Wed, 28 Oct 2026 14:43:18 +0800 Subject: [PATCH] Update Codex and Cursor plugin listings to 0.1.1 Append new plugin revisions pinned to the LayerFS Docker API negotiation fix, preserve the 0.1.0 entries, and refresh links and verification limits. Both listings pass the official online checker. Production LOC: 102763 -> 102763 (delta +0). Scope: core 38395, engine 61709, api 2659; reference absent (retired R9c; last counted 65417 at tree 498dd1917812). Counted with tools/production_loc.py --json; only listing files changed, so parent and staged production trees are identical. --- plugins/codex-parallel-verify/README.md | 6 ++++++ plugins/codex-parallel-verify/install.md | 2 +- plugins/codex-parallel-verify/plugin.json | 10 ++++++++++ plugins/cursor-agents/README.md | 16 +++++++++++----- plugins/cursor-agents/plugin.json | 10 ++++++++++ 5 files changed, 38 insertions(+), 6 deletions(-) diff --git a/plugins/codex-parallel-verify/README.md b/plugins/codex-parallel-verify/README.md index c3f23cd2b..4400a2549 100644 --- a/plugins/codex-parallel-verify/README.md +++ b/plugins/codex-parallel-verify/README.md @@ -63,3 +63,9 @@ Forked candidates stay in the baseline after `discard`, because a worktree workf - Exit 125 from the CLI means LayerFS refused the call. `Exists` on a second `init` of the same name is not a prompt to retry. - `discard` and `keep` do not delete commits. Discarded losers stay as deduplicated history. Unmounting with discard drops an uncommitted overlay and copies nothing. - A Cursor plugin, the DeepSeek Harness UI, and changes to LayerFS itself are out of scope. + +## 0.1.1 verification + +The implementation passed 43 tests and a real Linux run on Docker 29.1.3 (Engine API 1.52): initialize with an install, fork two Branches, edit the same file differently, and run `verify-all --jobs 2`. One candidate passed and one failed as expected. Both completed one mount, exec, commit and unmount without cleanup errors; unchanged verification state returned `UpToDate`. + +The 0.1.1 metadata update passed the affected tests. These checks do not qualify macOS or the Windows-host worker route, and are not performance measurements. The listing remains `preview`. diff --git a/plugins/codex-parallel-verify/install.md b/plugins/codex-parallel-verify/install.md index 326ba8e1d..c5261e2f3 100644 --- a/plugins/codex-parallel-verify/install.md +++ b/plugins/codex-parallel-verify/install.md @@ -14,7 +14,7 @@ node --input-type=module -e 'import { loadSdk } from "./src/load.js"; const sdk Success prints `function function`. If it does not, stop. Do not import `@layerfs/agent/internal`. -6. A live init needs a Linux `layerfs-daemon` and a runtime image built from commit {{layerfs.commit}}. Build them the way `api/README.md` and `api/how-to-use/runtime.md` in the LayerFS checkout describe (`npm --prefix "$LAYERFS_REPO/api" run build:native` builds the addon on a macOS or Linux host). Then set `LAYERFS_HOME` (for example `$HOME/.layerfs-codex`), `LAYERFS_IMAGE` to that image's sha256 id, and `LAYERFS_DAEMON` to the absolute path of `layerfs-daemon`. On macOS and Windows also set `LAYERFS_BUNDLE` to the sealed Linux bundle from that same commit (it contains `layerfs-daemon`, `layerfs.node`, and `manifest.json`). The CLI calls `runtime.worker.start()` once and sets `LAYERFS_WORKER_ENDPOINT` to `$LAYERFS_HOME/worker/endpoint.json`. Do not start a second worker for the same home. On Linux, leave `LAYERFS_WORKER_ENDPOINT` unset so Store calls stay in-process. On Windows, pass `--wsl-distro`, `--wsl-user`, `--wsl-node`, and `--wsl-home` when the runtime defaults (Ubuntu, root, `/usr/local/bin/node`) are wrong. +6. A live init needs a Linux `layerfs-daemon` and a runtime image built from commit {{layerfs.commit}}. Build them the way `api/README.md` and `api/docs/runtime.md` in the LayerFS checkout describe (`npm --prefix "$LAYERFS_REPO/api" run build:native` builds the addon on a macOS or Linux host). Then set `LAYERFS_HOME` (for example `$HOME/.layerfs-codex`), `LAYERFS_IMAGE` to that image's sha256 id, and `LAYERFS_DAEMON` to the absolute path of `layerfs-daemon`. On macOS and Windows also set `LAYERFS_BUNDLE` to the sealed Linux bundle from that same commit (it contains `layerfs-daemon`, `layerfs.node`, and `manifest.json`). The CLI calls `runtime.worker.start()` once and sets `LAYERFS_WORKER_ENDPOINT` to `$LAYERFS_HOME/worker/endpoint.json`. Do not start a second worker for the same home. On Linux, leave `LAYERFS_WORKER_ENDPOINT` unset so Store calls stay in-process. On Windows, pass `--wsl-distro`, `--wsl-user`, `--wsl-node`, and `--wsl-home` when the runtime defaults (Ubuntu, root, `/usr/local/bin/node`) are wrong. 7. Initialize once from the plugin checkout: ```bash diff --git a/plugins/codex-parallel-verify/plugin.json b/plugins/codex-parallel-verify/plugin.json index 9036b7883..9afe81ca2 100644 --- a/plugins/codex-parallel-verify/plugin.json +++ b/plugins/codex-parallel-verify/plugin.json @@ -32,6 +32,16 @@ }, "status": "preview", "versions": [ + { + "version": "0.1.1", + "commit": "259fed402f84db273929f3a83ad7a8ce32888217", + "date": "2026-10-28", + "layerfs": { + "version": "v1.1.0", + "commit": "4b5276216a2e9f780194a554ef9f0c33f9b6ba6d" + }, + "notes": "Update SDK checkout paths and pin LayerFS with Docker API negotiation (#476); Linux API 1.52 two-candidate verification passed." + }, { "version": "0.1.0", "commit": "e440813d6ca2cc973ddae517319addeb52b694b6", diff --git a/plugins/cursor-agents/README.md b/plugins/cursor-agents/README.md index d412129ab..f54b968fa 100644 --- a/plugins/cursor-agents/README.md +++ b/plugins/cursor-agents/README.md @@ -1,12 +1,12 @@ Cursor coding agents work on LayerFS Branches and Workspaces instead of git worktrees. One task gets one Branch. File edits go through `fs.*`. Bash runs as `workspace.mount`, then `exec`, `commit`, and `unmount`. Each LayerFS call is attempted once. -Plugin id: `cursor-agents`. Package: `layerfs-cursor-agents` `0.1.0`. This repository is for Cursor only. It does not install Claude Code skills, hooks, or configuration, and it does not ship a history dashboard. +Plugin id: `cursor-agents`. Package: `layerfs-cursor-agents` `0.1.1`. This repository is for Cursor only. It does not install Claude Code skills, hooks, or configuration, and it does not ship a history dashboard. -The LayerFS commit this version was built against is `commit` in [`layerfs.json`](https://github.com/earsonlau/layerfs-cursor-agents/blob/1802b525cca2ff9730678c01f8aefcc107223940/layerfs.json): `ad78914e36b258b360daf13aec164b5655814689` (LayerFS v1.1.0). +The LayerFS commit this version was built against is `commit` in [`layerfs.json`](https://github.com/earsonlau/layerfs-cursor-agents/blob/66aafb319a6bf05a4745763c325b87cb6016587f/layerfs.json): `4b5276216a2e9f780194a554ef9f0c33f9b6ba6d` (LayerFS v1.1.0). ## What it adds -- A Cursor skill at [`.cursor/skills/layerfs-agent/SKILL.md`](https://github.com/earsonlau/layerfs-cursor-agents/blob/1802b525cca2ff9730678c01f8aefcc107223940/.cursor/skills/layerfs-agent/SKILL.md). The same skill is at [`.agents/skills/layerfs-agent/SKILL.md`](https://github.com/earsonlau/layerfs-cursor-agents/blob/1802b525cca2ff9730678c01f8aefcc107223940/.agents/skills/layerfs-agent/SKILL.md) for agents that look there. +- A Cursor skill at [`.cursor/skills/layerfs-agent/SKILL.md`](https://github.com/earsonlau/layerfs-cursor-agents/blob/66aafb319a6bf05a4745763c325b87cb6016587f/.cursor/skills/layerfs-agent/SKILL.md). The same skill is at [`.agents/skills/layerfs-agent/SKILL.md`](https://github.com/earsonlau/layerfs-cursor-agents/blob/66aafb319a6bf05a4745763c325b87cb6016587f/.agents/skills/layerfs-agent/SKILL.md) for agents that look there. - `layerfs-cursor-setup`, which checks out that LayerFS commit, links the official `layerfs` command onto `PATH`, and writes `LAYERFS_*` settings. - On Linux, Store calls stay in the agent process. On macOS and Windows the setup starts the home worker with `@layerfs/runtime` and sets `LAYERFS_WORKER_ENDPOINT`. @@ -18,7 +18,7 @@ The skill is the procedure. Short form: 2. `branch.fork` one Branch for the task. Do not add a git worktree. 3. Edit with `fs.write`, `fs.edit`, `fs.apply`, and the other `fs.*` calls. 4. Run bash as `sandbox.create` (when you need a Sandbox), then `workspace.mount`, `workspace.exec`, `workspace.commit`, and `workspace.unmount`. Unmount in `finally`. On `Conflict`, stay in that Workspace until you resolve it or discard it. -5. On `Conflict`, `Busy`, or `NoSuchSandbox`, follow [`refusals.md`](https://github.com/earsonlau/layerfs-cursor-agents/blob/1802b525cca2ff9730678c01f8aefcc107223940/.cursor/skills/layerfs-agent/references/refusals.md) once. Do not replay the refused call. +5. On `Conflict`, `Busy`, or `NoSuchSandbox`, follow [`refusals.md`](https://github.com/earsonlau/layerfs-cursor-agents/blob/66aafb319a6bf05a4745763c325b87cb6016587f/.cursor/skills/layerfs-agent/references/refusals.md) once. Do not replay the refused call. `examples/task-branch.mjs` forks a Branch (or keeps it if the name is taken) and writes one file. It imports the public SDK from `LAYERFS_REPO`. @@ -61,4 +61,10 @@ When `LAYERFS_REPO` points at the pinned checkout, the same command also imports ## License -MIT. See [LICENSE](https://github.com/earsonlau/layerfs-cursor-agents/blob/1802b525cca2ff9730678c01f8aefcc107223940/LICENSE). +MIT. See [LICENSE](https://github.com/earsonlau/layerfs-cursor-agents/blob/66aafb319a6bf05a4745763c325b87cb6016587f/LICENSE). + +## 0.1.1 verification + +The implementation passed 27 tests, with the optional Docker test skipped in that run, then passed the real Docker Workspace round-trip separately on Linux with Docker 29.1.3 (Engine API 1.52). The installer regression suite also passed after checking the relocated CLI install target. + +The 0.1.1 metadata update passed the affected tests. These checks do not qualify macOS or the Windows-host worker route, and are not performance measurements. The listing remains `preview`. diff --git a/plugins/cursor-agents/plugin.json b/plugins/cursor-agents/plugin.json index 289521144..df4f7f76c 100644 --- a/plugins/cursor-agents/plugin.json +++ b/plugins/cursor-agents/plugin.json @@ -32,6 +32,16 @@ }, "status": "preview", "versions": [ + { + "version": "0.1.1", + "commit": "66aafb319a6bf05a4745763c325b87cb6016587f", + "date": "2026-10-28", + "layerfs": { + "version": "v1.1.0", + "commit": "4b5276216a2e9f780194a554ef9f0c33f9b6ba6d" + }, + "notes": "Update setup, package links, CLI and addon paths for the upstream directory split; real Linux API 1.52 Workspace round-trip passed." + }, { "version": "0.1.0", "commit": "1802b525cca2ff9730678c01f8aefcc107223940",