Skip to content

Releases: devclone20/cloneframe_app_executable

0.5.4 — ITSandbox reaches the terminal, PILOT sessions get names

Choose a tag to compare

@devclone20 devclone20 released this 31 Aug 20:35

0.5.4 — 2026-08-31

ITSandbox reaches the terminal, fail-open

The pty layer now recognizes an owner-enabled ITSandbox: when the sandbox is on
(or a caller explicitly asks for it), a session's command line is wrapped in
Seatbelt isolation and given its own workdir before it ever spawns — the
shell-guard still runs on the original, unwrapped command first. If the sandbox
module is missing or a wrap fails, the terminal falls straight through to a
normal session: a sandbox fault can never take it down. The permission gate
matches — an agent may read whether the sandbox fence is on, never switch off
its own isolation; that stays the owner's call alone.

Owner slash commands ship to the headless agent

/inft, /show, /sandbox — the owner-facing commands — now load into every
headless RPC session the same way the standing extension does, so they work
whether the owner is typing in CODE or the agent is running unattended in PILOT.

PILOT sessions get names, and BRAIN can clear one at a time

Each PILOT run now carries a run id and a short title derived from what was
actually ordered, so successive autonomous runs fold separately in BRAIN →
Thoughts instead of blurring into one bucket — and CLEAR SELECTED can target a
single run's thoughts by that id without touching the rest of the session.

Self-update reports what's actually newest

Checking for a new pi build now asks the registry directly and reports the
answer either way — "already the newest build" becomes a verifiable claim
instead of a guess — and each resync step (workspace, extension, launcher)
reports its own success instead of one flag for all three.

v0.5.3 — near-constant pi, orders mid-session, Thoughts folds + Trash, selectable text

Choose a tag to compare

@devclone20 devclone20 released this 09 Aug 23:28

Near-constant work · orders mid-session · folded Thoughts with a Trash · selectable text

  • PILOT works near-constantly: cycle after cycle with a two-minute breath, plus standing watch duties — check whether what the owner promised has arrived, probe one part of CLONE FRAME each cycle, keep suggestions flowing through the BRAIN.
  • SEND TO PI: drop a new order into the RUNNING session — queued mid-cycle, immediate when idle. No more restarting the session to change its work.
  • Thoughts fold per session (newest open), with checkboxes, DELETE SELECTED and CLEAR ALL — deleted thoughts move to the Trash in BRAIN Settings, volatile like the ring, where EMPTY TRASH — FOREVER means it. Every row carries its iNeural region chip.
  • Text is selectable everywhere — copy anything with the mouse; only true drag surfaces (canvas, cells, window headers, tabs, dock) opt out.

Suite: 1613 tests green.

Verify your download

shasum -a 256 -c SHA256SUMS.txt

v0.5.2 — the agent grows its own mind; a trillion-neuron sky

Choose a tag to compare

@devclone20 devclone20 released this 09 Aug 12:40

The agent grows its own mind · a trillion-neuron sky · two tabs, one truth

  • neural.grow — the agent mints room when it needs it (reason-labeled, tagged BY YOUR AGENT in Settings) and expands its own cubes at the 64-cube ceiling; removal stays owner-only. Per-cube capacity: ten billion neurons.
  • The field starts at one trillion neurons — beyond the human brain's ~1e11 peak — and grows tenfold whenever the mind fills a quarter of it. The empty space is the point.
  • Thoughts ↔ iNeural sealed: every Thoughts row carries a region chip from the SAME router that places that thought's spark in the 3D mind; live-feed handlers are fenced so one malformed event never breaks the panel.
  • The ineural skill teaches the learning loop: grow when full → record through the BRAIN → the memory prints into the grown cube.

Suite: 1594 tests green.

Verify your download

shasum -a 256 -c SHA256SUMS.txt

v0.5.1 — OFF lands safely; the mind at the brain 100e9 peak

Choose a tag to compare

@devclone20 devclone20 released this 09 Aug 12:03

OFF is a landing · the mind at the brain's peak · the agent taught

  • Safe OFF: turning PILOT off now aborts the running cycle politely, waits for it to unwind, then ends the conversation with its scratch purged — the next session starts clean, never confused.
  • 100e9 neurons — the human brain at its peak (the newborn count, before pruning trims it to the adult ≈86e9). Default cubes now hold 100 million neurons; minted cubes reach one billion each.
  • The ineural skill and curriculum §21 teach the agent the new scale and the safe-OFF law: never assume continuity between cycles — what must survive goes into the BRAIN.

Suite: 1563 tests green.

Verify your download

shasum -a 256 -c SHA256SUMS.txt

v0.5.0 — iNeural: the mind became visible

Choose a tag to compare

@devclone20 devclone20 released this 09 Aug 11:49

iNeural — the mind became visible, expansible, and switchable

BRAIN → iNeural: your agent's mind as a living 3D structure, fed by the same volatile stream as Thoughts — nothing simulated. Regions carry the app's real surface names (CODE · LAB · iT · MATRIX · BROWSER · EMAIL · FOLDERS · AUTOMATIONS), the golden belt is the BRAIN itself, the core holds the permission gates. Two views of one truth: 3D and iM (the magic cube). Click any cube or string for its card and ledger — what it did, what traveled through it. Real memories print as engrams; a crowded belt births new cubes; the stage fills the whole window.

Settings, organized by topic (MEMORY / MODELS / INEURAL / AGENT). INEURAL brings WIRES (calm/all/off), the region map, definitions, and + ADD CUBE — mint reserved cortex into any region, up to 100 million neurons per cube (new zero-dep bridge/neural.mjs). The FRAME FIELD grounds the mind on the canvas itself, counted live — the frame universe is unbounded.

PILOT (Settings → AGENT): turn pi ON and it works by itself in 15-minute cycles on its real crafts — the Virtuals ACP agent economy, Robinhood Chain, OKX — or on a directive you write, thinking visibly in iNeural. The permission gates govern every action; it proposes through the BRAIN instead of acting outward. Talking to it in CODE needs no switch.

Suite: 1580 tests green, including a 500-subtest expansion-law matrix.

Verify your download

shasum -a 256 -c SHA256SUMS.txt

v0.4.0 — the palette answers, the dock behaves, MY MACHINE explains itself

Choose a tag to compare

@devclone20 devclone20 released this 01 Aug 13:26

One file. Download CLONE-FRAME-HUB-0.4.0.zip, unzip, double-click install.command.

96 confirmed defects closed since v0.3.8, plus four new surfaces. This is a minor
version, not another patch — v0.3.8 to here is two unreleased fix waves and a
feature wave.


The shortcut the app printed and did not answer

COMMAND PALETTE · ⌘⇧P is written in the iT sidebar. Pressing it did nothing — and
not because the shortcut was missing.

A window's shortcuts are bound to the window, and a key event goes to whatever holds
focus. Clicking a workspace row, a section header, or the padding between two
controls — none of which accept focus — left the keyboard on the page body, and from
that moment every shortcut that window advertised stopped working. Silently. It
was worse with no bridge running: iT's only focusable element is its terminal, so the
keyboard never entered the window at all.

A window now takes the keyboard when you click it and once when it opens. And ⌘⇧P
opens the command palette from anywhere
, not only inside iT.

The dock

The two little handles are gone. Drag it by its body, resize it by either end.
The cursor tells you which, and nothing is drawn on it.

Hovering lifts the icons, it does not only grow them. The icon under the pointer
rises out of the slab and its neighbours rise less, on one shared curve, with a
shadow — the way the macOS dock does it. The old curve never reached zero, so every
icon was permanently a little magnified and the whole row crept as you moved.
Spacing is now proportional to the icon size and stays proportional as you change it.

Right-click works. On an icon: Open · Keep in Dock · Remove from Dock · Dock
Settings. On the dock itself: magnification · position · hide. Keep in Dock does
what it does on macOS — the app stays on the strip whether or not it is running.

Three things that were broken and are not: the menu opened underneath the dock;
moving the dock to another edge parked it hundreds of pixels short of that edge; and
dragging the dock silently erased every dock setting you had changed.

Settings → Dock

New room. Icon size, spacing, magnification with its growth, lift and spread,
position, glass, the apps you have kept, and a reset that keeps them.

MY MACHINE, rebuilt

It was one wall of text. It is now four boxes that each answer one question: am I
connected · who is my model · how do I get a token · can something do this for me.

The last two are new — per-system instructions for macOS, Linux and Windows with
a copy button on every command, and a prompt you can hand to any model. It has
everything needed to walk you through pairing, and it tells the model the one thing
it must never ask you for.

You can switch your machine off now, and delete the token

The app could pair and it could rotate. It could never stop, and never forget.

OFF keeps the token and stops using it. REMOVE destroys it — and that word is
now true. Removing used to clear the token the app sends over HTTP and leave a second
copy in the page, which is exactly the copy the terminal, the browser and the agent
channel read. Of those three, only two checked whether the app was connected before
opening a socket, so a window whose token you had removed could still open an
authenticated connection to your own machine.

Switching off also used to make the app say "not paired" — sending you to re-pair a
machine you had just deliberately disconnected from, in about twenty places at once.
It says what it means now.

Smaller

  • A new canvas starts with a CODE square in the top-left corner instead of an
    "Agent" tile in the middle. "Agent" was never a panel; it only ever opened CODE.
    If you have the old square and have not touched it, it moves once.

Verify what you downloaded

c4da4295153b1062ee10aae98b09952edbc1227c8150eb349aaa4f6a181d0ae7  CLONE-FRAME-HUB-0.4.0.zip
f111cc35ad4f4ac14c5e9972285c01374790251f0d6c30190a33b89d68478ccc  clone-frame-hub-0.4.0.html

shasum -a 256 CLONE-FRAME-HUB-0.4.0.zip should print the first line. SHA256SUMS.txt
is attached here too.

Gates on this build: 1037 tests pass · 0 fail · BUILD-CHECK OK · SMOKE OK.

v0.3.8 — the audit's six

Choose a tag to compare

@devclone20 devclone20 released this 01 Aug 00:47

⬇️ The download

CLONE-FRAME-HUB-0.3.8.zip — unzip, double-click install.command. Updating: Trash the old app, run this
installer. Your data lives in ~/CloneFrame and ~/.clone-frame-hub, never inside the app.


An adversarial audit read this release from six angles — the download path, the release zip,
the installer, the window model, the iT close path, and every checkable claim in the
published docs — and confirmed 33 findings out of 40 examined. This release closes the six
that cost you something, including a blocker introduced two versions ago, and the
documentation that sent you to screens that were demolished.

A parked BROWSER could vanish with no square to bring it back

Dock BROWSER. Close it with its ✕. Reopen it from anywhere that is not its square. Dock it
again — and the window hid behind a square that was never actually created. No icon on
the canvas, nothing to click, nothing written to disk. Your pages were still loaded, still
using memory, and completely unreachable.

v0.3.6 taught the frame to refuse duplicate squares. That was right. The code that docks a
window never read the refusal. Reproduced against the published v0.3.7 build, driving the
real interface, before a line was changed:

ghost cell  6,8 → research      a key to a hidden window, on a square with no tile

If there is nowhere to put a window now, it folds in place where you can still see it,
rather than disappearing.

Five more that were costing you something

  • it was broken in every installed copy. The shim the daemon writes carried a
    percent-encoded path, so inside CLONE FRAME HUB.app — two spaces in the name — it
    pointed at a file that does not exist. Latent for years in a developer's checkout, and
    guaranteed from the moment the installer began putting the daemon inside a bundle.
  • The uninstaller was not in the app, while the installer told you, in consecutive
    lines, to run it and to Trash the folder holding it. It now travels with the app, and a
    copy lands in ~/Applications where you will find it.
  • The uninstaller killed whatever held port 8765 — a dev server, a tunnel, anything —
    while its own comment claimed it only ever stopped the HUB. It now checks.
  • Removing one frame square could close a window another square still pointed at,
    taking your CODE session and every agent running in it.
  • Closing an iT workspace you had restored but never opened left its shells running,
    with nothing left that could ever name them.
  • ⌘T / ⌘L / ⌘F kept reaching a browser you had just parked, invisibly.

The front door pointed at rooms that had been demolished

docs/CONNECT.md — the guide the README sends you to — told you to open CLI ECONOMY OS
to connect a wallet, and to install EXO LAB from an INTEGRATIONS tab. None of those
exist. Wallet sign-in is the button in the header (and MY AGENTS → Connect wallet); the
local cluster is MATRIX, one of the four top-bar rooms. HOW-IT-WORKS.md gave both
demolished rooms a full guided tour.

All retargeted at what shipped. The tools that were never bundled are now marked as a design
note instead of instructions. ARCHITECTURE.md's terminal-session cap corrected from 12 to
the real 24.

Not in this release: roughly twenty smaller documentation findings from the same audit —
a stale BYOK-storage claim in SECURITY.md, a catastrophic-guard promise the live terminal
does not keep, a bundled-integrations table in the README, a token-lifetime claim in
INSTALL.md. They are listed rather than quietly dropped, and they are next.


sha256  e842392f1535348b5cb261158988a9b575f549157eb4f4a6be6b9498fcdd708c

929 tests pass upstream.

v0.3.7 — no invisible windows

Choose a tag to compare

@devclone20 devclone20 released this 01 Aug 00:33

⬇️ The download

CLONE-FRAME-HUB-0.3.7.zip — unzip, double-click install.command, and CLONE FRAME HUB lands in
~/Applications with the whole program inside the bundle. The folder you downloaded can then
go in the Trash. Updating: Trash the old app, run this installer — your data lives in
~/CloneFrame and ~/.clone-frame-hub, never inside the app.


No invisible windows that should not be there

A harness drove the app through the sequence you actually perform — add a panel, add it
again, dock it, add it while docked, close it, take its square away — and checked five
things after every step:

  1. no window is invisible without being docked
  2. every hidden window is still claimed by a square
  3. no panel has two windows
  4. no panel has two squares
  5. no square points at a window that no longer exists

The last one fired. Docking NOTES destroys its window — only iT and BROWSER survive hidden
behind their square — but the square kept holding a handle to it. Harmless today only by
luck: a single-window panel gets the same key back, so the dead handle happens to point at
the right window again. That is luck, not design. The square now lets go.

Eleven steps after the fix, nothing flagged. Including the two that cost you something if
they are wrong:

BROWSER docked, then its square removed    square gone AND the hidden window closed
3 iT windows, 2 docked, one hidden iT's
square removed                             that exact window closed; the other hidden
                                           one kept its square; shells 3 -> 2

Your agent was told none of this, and now knows it

Both the curriculum it reads and the extension it loads carry the counts:

windows frame squares
iT as many as you want one per window
every other panel exactly one exactly one

…and what docked means: invisible on purpose and still alive, its terminals still
running. So it will not report a panel you parked as closed, and it will not offer you a
second NOTES window, because there cannot be one.

Also corrected: the field guide listed compare and cookbook as panels you could open.
Both were removed from the app, and the extension already said so in the same breath — two
documents your agent reads, contradicting each other.


sha256  e82a6f9b6463c872858c1e600cd2976575e0f1d4f80eb7007f95782f6f4b3fa3

929 tests pass upstream.

v0.3.6 — one square per app

Choose a tag to compare

@devclone20 devclone20 released this 01 Aug 00:22

⬇️ The download

CLONE-FRAME-HUB-0.3.6.zip — unzip, double-click install.command, and CLONE FRAME HUB lands in
~/Applications with the whole program inside the bundle. The folder you downloaded can then
go in the Trash. START HERE.txt inside says the same, for when you are looking at the folder
rather than at this page.

Updating: Trash the old app, run this installer. Your data lives in ~/CloneFrame and
~/.clone-frame-hub, never inside the app, so an update never touches it.


One square per app on your frame. iT keeps as many as you park.

A frame square is a handle to a panel, and there is one of each panel — so there should be one
square for each. There was not. Adding NOTES from the + menu stamped a second NOTES logo,
then a third, each on its own square, all of them pointing at the same single window. Nothing
looked broken, because clicking any of them opened that one window. The canvas just filled up
with repeated icons you could not tell apart.

The second time is now "go to it", not "add". The square you already have pulses, so
you can see where on the canvas it is — a frame is large, and silently doing nothing is not
an answer — and the square you clicked stays empty.

iT is untouched and still infinite. Park three folders, get three terminals and three
squares. That is what iT is for, and it is the only panel that works that way.

Your existing frame is tidied, not left as it was

Squares collected under the old behaviour are collapsed the next time you launch — on screen
and on disk
, so they do not come back — and you are told how many went. Which duplicate
survives is not arbitrary: a square still pointing at a live docked window outlives one that
points at nothing, so nothing you had parked is stranded.

Why it happened, since it explains the shape of the fix

Four places hand a square to a panel: the + menu, a dragged HUB tab, docking a window, and
iT parking a terminal. Only one of them ever asked whether that panel was already on the
frame. The fix is not three more checks — a convention kept by four call sites is not an
invariant. It is one guard in the single function all four pass through, so a fifth caller
written next year cannot bring it back.

The root cause was a scope accident: the fact that iT is the exception was declared inside
the window manager, where the module that hands out squares could not see it. That module
therefore had no rule at all. It is now one declaration both can read.

Measured, in the running app

Clicked the way a person clicks — two clicks to arm a square and open its menu, then the panel:

NOTES added to three different squares      1 square,  1 window
iT    added to three different squares      3 squares, 3 windows
research · tasks · settings · email, ×2     1 square each, zero duplicates
a frame seeded with 6 NOTES, 4 EMAIL and
7 iT squares, then reloaded                 1, 1, 7 — on screen AND on disk

sha256  58b2353964cd47e41564b61db6e3b4d7ccdca11894a15049c3163f3a868f1442

shasum -a 256 index.html must print that line. 929 tests pass upstream, and the six new
assertions were each watched failing against the bytes v0.3.5 shipped.

v0.3.5 — the pass that never ran

Choose a tag to compare

@devclone20 devclone20 released this 31 Jul 23:49

⬇️ The download

CLONE-FRAME-HUB-0.3.5.zip — unzip it, double-click install.command, and CLONE FRAME HUB
lands in your ~/Applications with the whole program inside the bundle. The folder you
downloaded can then go in the Trash.

If Finder refuses the first double-click that is Gatekeeper, not a broken file: right-click
install.commandOpenOpen, once. START HERE.txt in the zip says the same.

clone-frame-hub-0.3.5.html is also attached, for anyone who only wants to read the app
file. It is byte-identical to index.html in the repository, and it is not installable on
its own — the app needs its local daemon to touch your machine at all, and that is what the
zip carries.


A fix to v0.3.4,
found by re-reading yesterday's own change instead of trusting it.

One of the three reap passes had never run

When you close an iT window, 0.3.4 ends its shells three ways. The third covers the
workspaces you restored but never opened — no terminal on screen, because iT builds a
workspace the first time you visit it, yet their shells are real and still running from
before your last reload.

That pass was guarded on a flag meaning this window owns the saved layout. The flag is
cleared by the first statement of the same function. So by the time the third pass
looked, it was always false. It never ran once since it was written.

It reviewed correctly and it tested green, because the test pinned the line:

assert.match(dispose, /if\(primary&&!w\.grid&&w\.spec\)specPsids/)

A line cannot see what ran before it. The test now pins the order, and was watched
failing against the bytes v0.3.4 shipped.

Measured on the fix, against a real daemon: three workspaces saved, page reloaded, iT
reopened as the layout owner — three restored, one terminal on screen, three live shells.
Closed the window: nothing left, including the two with no terminal at all.

If you only ever use the workspaces you can see, v0.3.4 already reaped them. This
closes the case where you had parked work in a workspace and had not been back to it yet.

Also corrected

  • The curriculum the agent reads claimed "27 panels" in two places while its own
    generated table listed 20 — and the same wrong number sat in the daemon's app-control
    header and in the extension. There are 20. Every claim says so now, and the
    generated docs were rebuilt from the code rather than hand-edited.
  • open_panel's description in the curriculum now states the one-window rule, which the
    extension already carried and the curriculum did not.
  • Two comments in the browser panel still described a second ⧉ window.

Why a new version instead of replacing v0.3.4's file

v0.3.4 publishes a sha256 and tells you to check it. Someone may already have downloaded
that file. Swapping it silently would make the number on that page a lie, so this is its
own release.


sha256  fc234feb88219b6e01d5660decc94e37b89567aa9ee1b910aaca25aa2a8df975

shasum -a 256 index.html must print that line. 923 tests pass upstream.