ClaudeForge 2026.3.708
Downloads
| Platform | Architecture | File |
|---|---|---|
| Windows | x64 | ClaudeForge-win-x64.zip |
| Windows | ARM64 | ClaudeForge-win-arm64.zip |
| Linux | x64 | ClaudeForge-linux-x64.tar.gz |
| Linux | ARM64 | ClaudeForge-linux-arm64.tar.gz |
| macOS (Intel) | x64 | ClaudeForge-osx-x64.tar.gz |
| macOS (Apple Silicon) | ARM64 | ClaudeForge-osx-arm64.tar.gz |
The version (2026.3.708) is encoded in the release tag rather than in
the archive filenames — publish.ps1 produces unversioned artefact names
so local dev builds and CI builds share one filename pattern.
Linux: Extract, then run the bundled linux-setup.sh to install a per-user .desktop entry so Wayland compositors render the window icon correctly:
tar -xzf ClaudeForge-linux-x64.tar.gz -C ~/ClaudeForge
cd ~/ClaudeForge
./linux-setup.sh
./ClaudeForgemacOS: The binary is unsigned. Use the bundled allow-app-to-run.sh to strip the Gatekeeper quarantine xattr from every file in the extracted directory:
tar -xzf ClaudeForge-osx-arm64.tar.gz -C ~/ClaudeForge
cd ~/ClaudeForge
./allow-app-to-run.sh
./ClaudeForgeWhat's Changed
ClaudeForge — changes (2026‑07‑07 → 07‑08)
Hooks — schema descriptions, SDK‑first
- Surfaced hook event, command‑type, and field descriptions from the schema through the SDK (
IHooksAccessor), so headless callers and the editor share one source. New Core typesHookEventInfo/HookEventCatalog/HookCommandVariantInfo;SchemaRegistrygainedGetHookEvents/GetHookCommandVariants; killed the hardcodedCommandTypeInfosmirror. - Bug fixed: event descriptions never rendered in the app — the GUI builds its client via
FromExistingWorkspace(noOpenAsync), soSchemaHookEvents()read an empty_cachedSchemaNodes. Added a bundled‑schema fallback + regression tests.
Hooks — new "Flow" tab
- Added a Flow tab between Properties and Effective, hosting your
hooks-lifecycle.svg, via theIGroupTabCustomizermechanism (now threads aSelectTabdeep‑link callback). - Added
Svg.Controls.Skia.Avalonia 12.0.0.13(+Svg.Skia→ 5.1.1) for a native<svg:Svg>control; newHooksFlowViewwith zoom (Ctrl+wheel cursor‑anchored, ±, Fit‑width, Reset), scroll, natural‑size render, and a floating overlay toolbar (so the diagram scrolls under the pane, not under a band). - New localized strings (
HeaderTabFlow,LinkHookFlowDiagram, zoom labels) across all 8 locales.
Hooks — Properties polish
- Event header → 2‑line (name + Add hook on row 1, full wrapped description below); Add‑hook now sits right after the event name.
- "View flow diagram" link moved up to the "Hooks" property‑name header via a new generic
HeaderActionslot on the basePropertyEditorViewModel(compiled‑bound, reusable by any editor).
Model catalog / effort levels
- Refreshed schema narrowed the settings‑file
effortLevelto[low, medium, high, xhigh](max/ultracode are session‑only); fixed the parity test. - Added
ultracodeas a session‑only, non‑persisted tier to mirror Claude Desktop's slider, on models with the full xhigh+max range (Fable 5, Opus 4.8, Sonnet 5, Opus 4.7).
Bundled schema
- Refreshed
claude-code-settings.jsonfrom schemastore.org to current (+~1,200 lines)
Test infra
- Fixed the order‑dependent flake
DeleteFootprintAsync_NoDialogService_DeletesImmediately: theAsyncLocaltest‑home override didn't propagate from the sync[TestInitialize]into the async test'sTask.Run(which readsClaudeHomeon a pool thread), so it deleted from the wrong home. Re‑asserted the override inNewFakeClient(); keptAsyncLocal(Sdk.Tests runs parallel and needs it). Backed out anAsyncLocal→static attempt that caused ~48 races/run in Sdk.Tests.
Full Changelog: v2026.3.701...v2026.3.708