Skip to content

v0.3.5

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 12 Oct 12:03
· 161 commits to main since this release

Fabric on Windows and Linux, the way the other PassionCode.ai apps ship (CO-238); a coding agent you open
yourself in a terminal can work in your project through Fabric; and Fabric shows which agent works on what.

  • Fabric opens from a product's Fabric button. A fabric:// link from Fabric Dashboards or any product now opens Fabric in that product's project (found from the product's repository), or says why it could not; before, macOS answered that Fabric was not installed, because Fabric did not register the scheme. A link that starts Fabric is not lost while the window opens, and one that arrives during the first run waits for it to end.
  • A coding agent opened outside Fabric works in your project. Register Fabric once in Claude Code or Codex —
    claude mcp add --scope user fabric -- "<Fabric>/bin/fabric-mcp" --runner claude-code, or
    codex mcp add fabric -- "<Fabric>/bin/fabric-mcp" --runner codex — with no key in it (on Windows:
    claude mcp add --scope user fabric -- cmd /c "<install folder>\resources\bin\fabric-mcp.cmd" --runner claude-code, with the install folder under
    %LOCALAPPDATA%\Programs\; not yet
    tried on a Windows machine). The first
    time the agent starts in a project's folder, Fabric asks you once whether it may work there; after Allow it gets what
    a session Fabric starts gets in that project, and its work is recorded like any session's. Revoke it in
    Settings → Agent access (ADR-0134).
    <Fabric>/bin is Fabric.app/Contents/Resources/bin on macOS and the install folder's resources/bin on Windows
    (fabric-mcp.cmd) and Linux. On Linux register it from the .deb (/opt/Fabric/resources/bin/fabric-mcp): an
    AppImage mounts at a new path each start, so a registration pointing into it breaks on the next start.
  • Who is working on what. A project's page lists each agent's claim on a task — the agent, how it came in, what it
    touches, since when, its last sign of life — marks two claims that overlap as related, and lets you release a claim
    after asking (SCR-31). Where work is (SCR-78, in the rail) shows the same across every project, with the sessions
    that belong to none on the last row. Coding agents claim a task through Fabric before they start and are warned of
    related work (REQ-38).
  • The first run asks which coding agent to use as one choice among the agents Fabric found, and an agent that
    cannot be chosen says why (REQ-40).
  • Fixed: agents registered on this Mac could not be connected through Fabric. Since 0.3.1 the hub's requests,
    decisions and calls were refused by the app's own journal before they were saved, so an agent's request never reached
    you (CO-254). They are recorded now, and a test checks every event the app writes against the journal's policy.
  • The database moves to schema 84 (from 79): five migrations, applied in order. An existing database is upgraded
    by the documented procedure before 0.3.5 opens it.
  • "Running for N days" counts from the day Fabric could first open your Estate, not from an install that failed
    to start (CO-242).
  • The old first owner leaves a repaired Estate. On a database the 0.3.4 repair gave to you, 0.3.5 revokes the old
    seed's second owner at its first start — through the membership door, recorded, never a delete — while that member is
    still the seed's own and nobody signs in as it (CO-242).
  • A database Fabric refuses at start says what to do in your language: the schema it found and the one it needs,
    or that the stack did not answer — the copied details stay in English, for a report.
  • Codex and Kimi Code connect to Fabric's surface. Sessions of both get the project-board tools
    (com.submit, com.list, com.get, com.read_ack, com.status) like Claude Code, Kilo Code and Hermes
    Agent before them — each through the way its own probe verified (report):
    Kimi Code over ACP with HTTP MCP (no bridge), Codex through an isolated per-session CODEX_HOME whose server
    name and token variable are random per session, because a project .codex/config.toml shadows any name it
    knows. So a Codex session Fabric starts does not read your own ~/.codex/config.toml or ~/.codex/AGENTS.md
    (a project's own AGENTS.md still applies); when you are signed in to Codex it uses a copy of that login, removed
    when the session ends, and otherwise Codex asks you to sign in for that session. One residue, recorded as CO-247: Codex 0.162.1 has no --ignore-project-config, so a project can still
    add MCP servers of its own — as it already could before Codex connected. Cline stays unconnected: its ACP
    session/new demands a sign-in no probe has passed.
  • The project board is visible to the operator: the Comms screen (SCR-81, SCN-143). The left rail gains
    Comms / «Переписка»: the estate's threads and messages read with your own eyes — sender, principal and its
    provenance per message, a request's state and effect as two separate labels, live by cursor polling; a board
    that does not answer says so, never an empty list. Read-only by design; the read goes through two new SQL
    functions, sanctioned for the local estate by ADR-0117 (D3).
  • Windows. A per-user installer for Windows on Intel and AMD (x64) and on Arm (arm64): Fabric-0.3.5-windows-x64-setup.exe
    and -arm64-setup.exe, Authenticode-signed through Azure Artifact Signing. Terminals
    open PowerShell; the local stack needs Docker Desktop (WSL2) and the Supabase CLI (scoop install supabase).
  • Linux. An AppImage and a .deb for x64 and arm64. The local stack needs Docker Engine and the Supabase CLI. Install
    the .deb to open fabric:// links and to register fabric-mcp: it registers the scheme and keeps one path.
  • Not yet on Windows and Linux: whether a coding agent is signed in is not read there (it says so, CO-244).
    Not yet on Windows: connecting a cloud product's secret through Project Observatory (CO-245); Agent access says
    so when you press Connect, before the product is opened.
  • Windows and Linux are offered on GitHub Releases; the
    download page on passioncode.ai offers the Mac build until its own change.
  • Usage counts (only after you answer the switch): agents_with_access counts agents with access to a connected
    product, and coding agents enrolled in projects are counted apart as coding_agents_enrolled
    (docs/ANALYTICS.md).

Upgrading. A database at schema 79 (0.3.2 to 0.3.4) is upgraded to 84 before 0.3.5 opens it: install 0.3.5 and
start it once (it refuses, and copies its migrations into Fabric's stack folder), quit it, make a verified backup,
rehearse on a copy, then run supabase migration up --local in that folder and start 0.3.5 again
(release runbook).
Until then 0.3.5 refuses to start its workspace services and says which schema it found. An older database (69, 75,
78) takes the same procedure; supabase migration up applies every missing migration in order.

Verify

gpg --verify SHA256SUMS.asc SHA256SUMS      # key 63B30DC324BD697487AA31944FAFB8AEC803B6A7
shasum -a 256 -c SHA256SUMS --ignore-missing
gh attestation verify <file> --owner passioncode-ai --signer-repo passioncode-ai/.github

The organization's public key: https://github.com/passioncode-ai/.github/blob/main/release-signing/passioncode-release-signing.asc