0.8.0
Pre-release
Pre-release
Canv 0.8.0
Downloads
| File | Platform |
|---|---|
Canv-0.8.0-arm64.dmg |
macOS (Apple Silicon) |
Canv-0.8.0.dmg |
macOS (Intel) |
Canv-Setup-0.8.0.exe |
Windows (NSIS installer) |
Canv-0.8.0.exe |
Windows (portable) |
Canv-0.8.0.AppImage |
Linux (x86_64) |
canv_0.8.0_amd64.deb |
Linux Debian / Ubuntu (amd64) |
canv-0.8.0.x86_64.rpm |
Linux Fedora / RHEL / openSUSE (x86_64) |
macOS builds are unsigned. On first launch right-click the app and choose Open to bypass Gatekeeper.
Features
- Extensions — a sandboxed add-on system. Install extensions per workspace to extend the app through six contribution types:
- Panels in the left sidebar or bottom dock, custom file viewers/editors (
fileHandler), language/syntax support, commands, file-tree context-menu items, and status-bar widgets. - A phased, sandboxed runtime exposing a controlled
canv.*API; bottom-dock panels also surface in the pop-out window. - Install from a folder or a packaged file, with an install-consent step that discloses each extension's capabilities (
workspace.write,activeDoc.read,net,ai, …) and the network hosts it may reach. - A two-layer trust gate — workspace trust plus per-extension trust — so opening someone else's workspace never runs code silently. Enable/disable, reload, crash recovery, and uninstall from the Extensions tab.
- Panels in the left sidebar or bottom dock, custom file viewers/editors (
- Theme system overhaul. A proper theme catalogue replaces the old dark/light radio and accent picker:
- New themes — Dracula, Synthwave '84, Solarized Dark / Light, Nord, Tokyo Night, Gruvbox, Dark 2026, and an Alucard light variant — chosen from a single dropdown in Settings → Appearance, plus a Match system option.
- Semantic colour tokens across the whole UI (enforced by a
canv/no-raw-colorlint rule). The window titlebar overlay now syncs to the active theme and persists the last pair, so launch paints in-theme from the first frame.
- @-mention file picker in chat. Type
@in the chat box to fuzzy-find a workspace file and drop a reference to it into your message — full keyboard and click flow, with parity in the popped-out dock. - Generative sites. Ask the assistant to build a small interactive view (timeline, board, chart) as a static site under
.canv/sites/; it's registered in the Sites panel and served back at a local URL. - Services & contributions architecture. A typed
ICanvServicesregistry with aServicesProvider, a contribution loader, andDisposable/DisposableStoreprimitives.App.tsxis split into focused contributions — theme/accent application, idle autosnapshot, app commands, the dock bridge, extension keybindings, and the quota-error toast. - Editor & filesystem hardening. Inline selection tracking in the floating toolbar; per-cursor-move large-string allocations eliminated; debounced word-count with a gated recompute window; autosave widened to 5s. The filesystem layer now preserves EOL/BOM, refuses non-UTF-8 and oversize files behind a single
MAX_OPEN_BYTESlimit, and threads encoding through tool writes. - Settings. A schema-driven settings form, an MCP server configuration UI, model pricing overrides, and a per-agent model picker.
- Removed: remote (SSH) workspaces. Remote-workspace support is gone — the renderer UI, Electron main support, the remote filesystem service, preload branches, and the
ssh2/ssh-configdependencies are all removed, andWorkspaceKindcollapses to a single local kind. For remote files, use a file-sync tool (rsync, sshfs, your sync of choice) with a local Canv workspace on the synced folder.
Fixes
- Sidebar provider/model picker — empty-state now hides unconfigured providers and models, and the placeholder is shortened so it no longer clips.
Chores
- App version is interpolated from
package.jsoninto the welcome chrome (migration modal and empty-state) via Vite'sdefine, so the version on screen always matches the build. - Docs — the user guide was regenerated against 0.7.x/0.8.0: new pages for connecting an AI (including local Ollama) and for extensions plus the trust model; all remote-workspace content removed; appearance/themes and the chat @-mention picker documented.