版本动态
LinkCode 更新日志
了解 LinkCode 每个版本带来的功能、体验改进与问题修复。
v0.25.2
v0.25.1
v0.25.0
v0.23.1
v0.23.0
0.23.0 (2026-08-17)
Features
- agent-adapter,ui: surface codex skill brand icons and display names in the command catalog (#431) (6785d25)
- config: generate branded desktop and mobile identity (#428) (a50ea0f)
- providers,schema,engine,workbench: retire the default model — user-selected model sets from provider model lists (#426) (084933c)
- release: add provenance verification CLI (cc51e0b)
- release: bind artifact provenance (047c5b9)
- release: build isolated brand matrix (7a1ec14)
- release: consume rendered brand artifacts (44bcf67)
- release: download deployed config inputs (d2aaa5f)
- release: enforce store configuration compliance (42a825b)
- release: gate matrix publication (dd29699)
- release: render independent config source (7c98411)
- release: validate brand build matrix (d6817d6)
- release: validate protected release inputs (e1d037f)
- ui: dedicated chat components for tool search/select/query (#430) (8a84396)
Bug Fixes
- agent-adapter: replay codex code-mode MCP calls, Script envelopes, and skill rows (#435) (a2b4e73)
- config: allow disabled emergency delivery (6ea7f73)
- release: bind mobile observer identity (547ff17)
- release: close privileged workflow paths (7c32c92)
- release: decouple client build from config publication (e79cbf3)
- release: harden brand matrix trust (8bf90cb)
- release: harden pilot matrix gates (856c199)
- release: normalize JSON environment inputs (55b8518)
- release: require observed config publication (5f8ed5e)
- release: require observed config publication (#451) (7677211)
- release: select both config repositories (f91fcbe)
- release: unify target identity contract (5d6f81b)
- release: use protected release environment (8a19b05)
- ui: tighten grouped activity spacing (#446) (65f16cf)
v0.18.0
0.18.0 (2026-08-01)
Features
- desktop,agent-adapter: API-key / relay login on the signed-out agent card (#350) (39298ae)
- git: add local branch workflows to new sessions (7a023ef)
- git: add local branch workflows to new sessions (#376) (200753c)
Bug Fixes
- desktop: offer the install when an update is already downloaded (#377) (870e1c5)
- devenv: strip nix toolchain env from the mobile script (d0c4894)
- providers: authenticate subscription accounts (8f6a3ab)
- settings: open provider service catalog directly (6a43d51)
- ui: prevent branch search text overlap (91ccfb5)
- workbench: preserve subscription login state (9f88a5c)
- workbench: route signed-out setup through providers (f1839d1)
- workbench: support completable agent logins (3cbd825)
v0.17.0
v0.16.0
0.16.0 (2026-08-01)
Features
- agent-adapter: report each agent's configured default model and effort (9aab5dc)
- desktop: show update download progress (#362) (9fe3aa8)
- resources: show current plan in panel (#358) (a0a7aab)
- schema: carry the agent's own default model and effort in the start catalog (0c6c7ee)
- ui: prefer the agent's configured default over the built-in model guess (b72a1aa)
Bug Fixes
v0.14.0
0.14.0 (2026-07-31)
Features
- desktop: add update polling and sidebar prompt (adda937)
Bug Fixes
- desktop: settle inactive update checks (78a99d3)
- release: install both CPU keyring bindings (0bddfce)
- release: keep builder Linux output layouts (524b76e)
- release: let staging select builder architecture (24bd573)
- release: stage desktop dependencies per architecture (735a232)
- ui,workbench,desktop,webview: swap the thread-title view transition for a header enter animation (#354) (fe034b7)
v0.12.0
v0.8.0
0.8.0 (2026-07-29)
Features
- agent-adapter: complete opencode and Pi slash commands (#242) (176360d)
- agent-adapter: probe and spawn opencode from the resolved binary (CODE-76) (#244) (fda7e09)
- daemon: agent input tools — tap, swipe, text, and named keys (2f681a0)
- desktop,ui: multi-tab Browser panel — tabbed webviews, popup capture, find/zoom/devtools (CODE-266) (#181) (a7c21be)
- schema,daemon,ui: show where an agent is touching the device (ebe8ead)
- schema,engine,daemon: describe_ui — the guest UI tree as an agent tool (6bf4297)
- sim,engine,daemon: shake a device without reversing the motion payload (699c4e4)
- sim,engine,workbench: guide setup instead of reporting simulators unavailable (e7a6791)
- sim: event-driven dead-session reap via an isolated state watcher (b33886e)
- sim: reach the guest accessibility service through AXPTranslator (138345b)
- sim: walk the guest accessibility tree into tappable nodes (0fc095e)
- ui,workbench: comfortable/compact list density preference (6529181)
- ui: 2xs type token, semantic label tiers, tabular numerals (bf0945a)
- ui: motion duration tokens and the shared spring (0a98ed4)
- ui: press feedback on custom tabs, close buttons, and chat rows (4fd9a4d)
- ui: squircle corner-shape on xl+ radius faces (40e0bd8)
Bug Fixes
- agent: align effort schema with provider-specific capabilities (#234) (a2cf3de)
- desktop,workbench: share the e2e wire pin and bind the capture chords (a86b941)
- desktop: don't persist ephemeral preview-proxy URLs (CODE-373) (#241) (ae0117e)
- e2e: deterministic maximize checks in the window-bounds suite (#283) (3725a94)
- sim: honor the HID send verdict instead of assuming every injection landed (78401de)
- sim: keep the send acknowledgement's block alive and stop retrying unanswered sends (1d4467a)
- sim: re-warm the HID client for streamed touch and pinch too (ce39cfc)
- sim: re-warm the HID client when a device reboots out from under it (d66b742)
- sim: reap a stream and its HID client when the device leaves Booted (7ecdbe3)
- ui,agent-adapter: show nearby rows and line numbers in the inline diff card (CODE-399) (#304) (b5e0150)
- ui: drive thread-row height from the density var, not padding (b9c6be8)
- ui: squircle the logical-corner cells of card-variant tables (8baf4c0)
v0.7.0
0.7.0 (2026-07-25)
Features
- agent-adapter,engine,daemon: simulator MCP tools for every MCP-capable agent (9bf470d)
- agent-adapter,engine,daemon: simulator MCP tools for every MCP-capable agent (CODE-395) (5311e50)
- client-core: simulator control surface (e446d1b)
- composer: serialize file mentions as markdown links (6797c14)
- daemon,desktop: wire the sim sidecar client into the engine (0e2e9d1)
- desktop,ui: simulator as an on-demand right-panel section (c477228)
- desktop,workbench,ui: iOS Simulator panel — on-demand section with live co-driving stream (CODE-397) (34d0b1b)
- desktop: allow google favicon hosts in renderer csp (771adf9)
- engine: simulator tap/swipe/button + framebuffer stream in the backend port and service (9257071)
- engine: simulator wire request handler (d2407e1)
- engine: SimulatorBackend port and per-session device registry (8828cd3)
- schema,engine,client-core: H.264 stream codec plumbing (wire 47) (4a7e54e)
- schema,engine,client-core: simulator screen-mask wire (wire 46) (e4e1faf)
- schema,engine,client-core: simulator wire contract — availability, device commands, screenshot (CODE-394) (ebfa242)
- schema,transport,engine,client-core: simulator interactive + stream wire (wire 45) (4f9ddf2)
- schema: add normalized plugin model (#263) (558e6ba)
- sim-sidecar: hardware H.264 streaming via VideoToolbox (zero-copy IOSurface) (c0aee6d)
- sim-sidecar: screenMask op rendering the devicetype framebuffer mask (9af3b83)
- sim,engine: @linkcode/sim SDK + SimulatorBackend with per-session device ownership (CODE-393) (b857f9d)
- sim,schema,engine,client,ui: streamed touch, wheel scroll, HID keyboard (wire 48) (09410ba)
- sim,schema,engine,client,ui: two-finger pinch + IME pasteboard input (wire 49) (e4c6bb4)
- sim: @linkcode/sim typed sidecar client (87d842d)
- sim: bench-encode subcommand for the capture encode ceiling (97f63b3)
- sim: configurable capture scale (default 1.0) to unlock 60fps (b791d5e)
- sim: default stream to 60fps and document the encode benchmark (6c1cc87)
- sim: device rotation via GraphicsServices GSEvent (CODE-408) (e40179a)
- sim: interface-orientation injection via GraphicsServices GSEvent (7c70014)
- sim: linkcode-sim iOS Simulator sidecar — P0 simctl lifecycle (CODE-392) (87e0f4a)
- sim: P1 private-API framebuffer streaming + HID injection, crash-isolated (5fc8439)
- sim: P1 private-API framebuffer streaming + HID injection, crash-isolated (CODE-396) (363d606)
- sim: panel rotate button cycling interface orientation (91486d0)
- sim: stream frames + interactive ops in the @linkcode/sim client (c79ebaa)
- sim: thread rotate through wire/SDK/engine/client-core + sim_rotate MCP tool (wire 50) (c6e70aa)
- ui,i18n: simulator screen canvas + optional panel-section vocabulary (a610778)
- ui,workbench: decode H.264 simulator streams with WebCodecs (29a27b8)
- ui: add link target classifier, icons, and chip (166b968)
- ui: composite a realistic device chassis in canvas native space (f5489c6)
- ui: device-style bezel around the simulator screen (1ed8033)
- ui: render favicons and link chips in chat markdown (9234b45)
- workbench,ui: clip the simulator screen with the real device mask (cbcc70e)
- workbench: restage simulator panel to match reference layout (#267) (b4d664b)
- workbench: restage simulator panel with text device picker and toolbar island (58d17fa)
- workbench: simulator stream registry + panel container (45b5aa5)
Bug Fixes
- desktop: gate the Browser pane's media pause on dom-ready (c8b5a5d)
- release: preserve release merge validation (4f4c168)
- release: trust only protected automation (14c3431)
- sim,engine,ui,schema: resolve iOS Simulator panel review findings (wire 51) (b575f2c)
- sim: close the worker pid-publication race so a drop during spawn still kills the child (1c9eee7)
- sim: guard stale sidecar-child events, fail writes fast, fix boot/reclaim ownership races (1d23526)
- sim: harden P0 sidecar — scrub Apple SDK env, guard oversized frames, bound + drain workers (c639e5c)
- sim: kill a stuck capture worker on stop, fix ABA frame dedup + silent-worker fallback (f82366b)
- sim: re-plant the wheel-scroll finger at screen edges so long scrolls don't stall (769d9ac)
- sim: reconcile boot ownership on failure, guard resume during reclaim, declare foxts dep (abc79e1)
- sim: reject unknown sessions and roll back claims from failed commands (d5c2466)
- sim: release MCP token on failed start, don't shadow user servers, cap MCP body (wire 45) (90abf33)
- sim: resolve device-rotation review findings (f4133a0)
- sim: stable headless framebuffer capture on Xcode 26 (dae9a83)
- ui: grow the chassis from the real mask for even band and matching curvature (3b76326)
- ui: improve inline file detector detectInlineFilePath (79e46c2)
- ui: preserve absolute file links (61baa4e)
- ui: restore dual-source favicons (723a80f)
- ui: secure chat link handling (eca8f74)
Performance Improvements
v0.6.3
What's Changed
- fix(agent-adapter): reconcile Claude messages on reseed by @Zerlight in #240
- ci: adopt org-level fast-forward merge by @AprilNEA in #248
- fix(ui): align markdown rendering with coss-ui and fix fragment anchors (CODE-378) by @Zerlight in #243
- ci: repin fast-forward so the bot replies in English by @AprilNEA in #250
- feat(agent-adapter): enhance normalized event semantics by @AprilNEA in #253
- chore: make eslint happy by @SukkaW in #257
- refactor(ui): frame chat flow cards with coss-ui Frame headers (CODE-381) by @Zerlight in #256
- feat(telemetry): add privacy-safe analytics and performance tracing by @AprilNEA in #258
Full Changelog: v0.6.1...v0.6.3
v0.6.1
What's Changed
Full Changelog: v0.6.0...v0.6.1
v0.6.0
What's Changed
- feat(mobile): project-grouped Threads inbox — workspace groups, host bar, sheet creation (CODE-276) by @AprilNEA in #192
- feat(mobile): UI foundation — icon system, native stack headers, typography tokens (CODE-275) by @AprilNEA in #187
- feat(mobile): conversation rework — native markdown pipeline, bubbles, seeded history (Batch 2) by @AprilNEA in #195
- feat(desktop): themed depth for the sidebar/content seam by @AprilNEA in #197
- feat(mobile): add legal and support links by @AprilNEA in #198
- feat(composer): add structured directives and startup controls by @Zerlight in #203
- feat(ui): refine git diff controls by @Yidadaa in #204
- fix(agent-adapter): harden turn lifecycle and protocol recovery by @AprilNEA in #205
- fix(ui): restore Tailwind sources after package restructure by @Zerlight in #212
- fix(engine): preserve invalid UTF-8 file bytes by @AprilNEA in #221
- feat(ui): close file tabs with middle click by @AprilNEA in #222
- refactor(tests): establish test module boundaries by @AprilNEA in #226
- chore(ci): bump the actions-all group with 3 updates by @dependabot[bot] in #213
- fix(sidebar): use disclosure chevrons by @AprilNEA in #228
- feat(agent-adapter): bring Pi adapter to capability parity (CODE-248) by @AprilNEA in #223
- fix(ui): refresh imported history when switching agent tabs by @AprilNEA in #206
- refactor(tests): continue test module governance by @AprilNEA in #227
- test: gate real application boundaries by @AprilNEA in #229
- fix(ui): support scoped Markdown heading anchors by @Zerlight in #219
- test(e2e): gate app lifecycle boundaries by @AprilNEA in #230
- chore(deps): bump @types/node from 24.13.2 to 26.1.1 by @dependabot[bot] in #216
- chore(deps): bump the npm-minor-patch group across 1 directory with 7 updates by @dependabot[bot] in #214
- fix(ui): replace hand-rolled components with shared coss-ui primitives by @AprilNEA in #233
- feat(ui,workbench,daemon): highlight video file paths and play them in the Browser pane by @lucas77778 in #224
- feat(ui): import chat history by directory by @AprilNEA in #209
- chore(orb): manage toolchain with devenv by @AprilNEA in #231
- chore(deps): bump react-router from 7.18.0 to 8.2.0 by @dependabot[bot] in #218
- chore(deps): bump @anthropic-ai/claude-agent-sdk from 0.3.206 to 0.3.207 by @dependabot[bot] in #217
- feat(settings): manage provider accounts in dialogs (CODE-329) by @AprilNEA in #232
- chore(deps): bump @anthropic-ai/sdk from 0.110.0 to 0.111.0 by @dependabot[bot] in #215
- feat(ui): import all scanned local conversations by @AprilNEA in #210
- fix(agent-adapter,ui): render Codex user images by @AprilNEA in #208
- feat(ui): polish agent selector by @AprilNEA in #236
- refactor(schema): centralize fork-renamable filesystem identity by @AprilNEA in #237
- ci(workflows): select runners via repo vars with hosted fallbacks by @AprilNEA in #235
New Contributors
Full Changelog: v0.5.1...v0.6.0
v0.5.1
What's Changed
- feat(workbench): Automations surface usability pass (CODE-264) by @AprilNEA in #171
- feat(files): workspace file tree — file.list wire contract, engine listing, right-panel tree browser (CODE-263) by @AprilNEA in #172
- fix(daemon,agent-adapter,engine,assets): hide win32 console windows on daemon child spawns (CODE-236) by @PeronGH in #170
- feat(ui,workbench): collapse the error banner into a title-side badge, card-style conversation errors, clear on navigation (CODE-239) by @AprilNEA in #169
- fix(workbench): let long viewer lines scroll instead of clipping at the Files panel edge (CODE-263) by @AprilNEA in #173
- feat(settings): fold Connection into a Developer tab with a caution notice (CODE-238) by @AprilNEA in #174
- feat(ui,workbench,desktop): syntax-highlight the Files viewer via @pierre/diffs File (CODE-269) by @AprilNEA in #178
- feat(mobile): terminal appearance settings (theme + font size) by @AprilNEA in #176
- fix(agent-adapter): drop codex 0.144 AGENTS.md/env-context injection from history replay (CODE-235) by @AprilNEA in #177
- fix(engine,common): resolve gh via PATH scan + fallback install locations (CODE-271) by @lucas77778 in #182
- feat(ui,desktop): auto-seed a terminal session when the Terminal section opens + strip inset alignment (CODE-230) by @AprilNEA in #183
- fix(agent-adapter,engine,common): normalize MSYS drive-form paths from Windows agents (CODE-237) by @PeronGH in #180
- feat(ui): group opencode models by provider in the model picker (CODE-270) by @Zerlight in #179
- fix(client-core): keep live events a mid-turn transcript reseed does not cover (CODE-272) by @Zerlight in #185
- fix(agent-adapter): request summarized thinking display from claude-code (CODE-273) by @lucas77778 in #184
- feat(ui): context compact component (CODE-142) by @AprilNEA in #186
- feat(daemon,assets): pi runs from the managed npm-closure download (CODE-219, part 2) by @AprilNEA in #189
- feat(ui): animate the in-progress compaction row (spinner + shimmer + elapsed) (CODE-280) by @AprilNEA in #191
- fix(schema): renumber wire protocol to 39 after parallel 38 bumps by @AprilNEA in #193
- fix(pty,engine,client-core): end-to-end terminal output flow control (CODE-231) by @AprilNEA in #194
- fix(transport): avoid zod double parse by @SukkaW in #190
- feat(desktop): size first launch from the work area, persist window bounds, align pane defaults by @AprilNEA in #196
Full Changelog: v0.5.0...v0.5.1
v0.5.0
What's Changed
- chore(deps): bump @moeru/eventa from 1.0.0-beta.10 to 1.0.0-beta.11 by @dependabot[bot] in #93
- chore(ci): bump azure/login from 2 to 3 in the actions-all group across 1 directory by @dependabot[bot] in #89
- chore(deps): hold vite on major 7 until electron-vite supports vite 8 by @AprilNEA in #112
- build(desktop): replace electron-vite with plain Vite orchestration; bump to Vite 8 by @AprilNEA in #117
- chore(ci): bump the actions-all group across 1 directory with 2 updates by @dependabot[bot] in #113
- feat(engine,workbench): keep agent auth status fresh and add in-session sign-in recovery (CODE-172) by @lucas77778 in #110
- feat(agent-adapter): opencode history (list/read/resume) via shared history server by @lucas77778 in #109
- feat(workbench,i18n): let claude login auto-complete via the CLI's own loopback tab (CODE-175) by @lucas77778 in #114
- feat(workbench,ui): ⌘1–⌘9 jumps to recent threads with palette row hints by @AprilNEA in #118
- chore(deps): bump npm minor/patch group (manual, supersedes #115) by @AprilNEA in #120
- chore(deps): hold @sentry/* — bump in lockstep with @sentry/electron by @AprilNEA in #122
- chore(mobile): upgrade to Expo SDK 57 (RN 0.86, reanimated 4.5, worklets 0.10) by @AprilNEA in #121
- fix(ui): prioritize shell output over raw tool metadata by @Zerlight in #116
- feat(composer): drag-and-drop / paste / picker image attachments + live @-file mentions by @lucas77778 in #105
- fix(desktop): split linkcode:// deep-link scheme per channel by @AprilNEA in #125
- feat(mobile): OTA-first native readiness — expo-updates + native capability baseline by @AprilNEA in #126
- fix(desktop): ship multi-size Linux icon set for GNOME launcher by @AprilNEA in #130
- feat(mobile): account login system — account-first onboarding, account & device screens, my-machines connect by @AprilNEA in #124
- ci(release): bump Homebrew cask on desktop release by @AprilNEA in #129
- fix(ui): stabilize and unify chat action previews by @Zerlight in #134
- feat(mobile): interactive terminal pane via expo-libghostty by @AprilNEA in #131
- feat(settings): dedicated Terminal appearance tab — font family, font size, color scheme by @AprilNEA in #133
- feat(settings): Appearance tab — code syntax theme, UI text size, reduce motion by @AprilNEA in #132
- feat(terminal): support mobile takeover by @AprilNEA in #128
- feat(mobile): android terminal pane via expo-libghostty 0.3.0 by @AprilNEA in #139
- build(desktop): shrink packaged app (CODE-215) by @AprilNEA in #138
- chore(deps): upgrade restty to 0.2.3, drop obsolete font workarounds by @AprilNEA in #142
- fix(ui): optimize prompt interaction logics by @Zerlight in #146
- fix(ui): simplify sidebar and add hover preview cards by @Zerlight in #147
- chore(deps): bump restty to 0.2.5 for the VS16 emoji fix by @AprilNEA in #149
- feat(daemon): prompt-first managed agent installs (CODE-221) by @AprilNEA in #140
- feat(agent-adapter): opencode set-model + agent-mode switching (CODE-224) by @lucas77778 in #143
- fix(daemon): bind listeners before the boot agent probe (CODE-225) by @AprilNEA in #141
- feat(schema,agent-adapter,engine,ui): dynamic model catalog — opencode desktop model picker (CODE-226) by @lucas77778 in #145
- refactor(daemon): Effect v4 boot orchestration (CODE-244, Phase 1) by @AprilNEA in #152
- feat(chat): smooth streamed message rendering by @AprilNEA in #150
- feat(schema,agent-adapter,client-core): expose structured /usage data to the frontend view-model by @lucas77778 in #135
- feat(automation): Schedule — cron/interval agent runs (CODE-203) by @AprilNEA in #136
- feat(mobile): android terminal nerd-font glyphs and cursor blink by @AprilNEA in #153
- feat(ui): richer tool-call details and stored-session time/model fidelity by @Zerlight in #160
- fix(agent-adapter): probe scans PATH before fallback install locations (CODE-220) by @PeronGH in #157
- feat(automation): Loop — iterate-until-verified agent runs (CODE-204) by @AprilNEA in #137
- feat(mobile): android terminal touch selection, clipboard, and interaction polish by @AprilNEA in #158
- chore: condense verbose comment blocks to load-bearing points (repo-wide) by @AprilNEA in #144
- feat(mobile): terminal pinch-to-zoom and fontSize prop (expo-libghostty 0.7.0) by @AprilNEA in #161
- feat(assets): npm-closure install pipeline for the pi tree (CODE-219, part 1) by @AprilNEA in #151
- feat(agent-adapter): add Grok Build via headless CLI by @AprilNEA in #154
- ci(release): use homebrew-tap bump-cask action by @AprilNEA in #163
- feat(settings): agent runtime install & management in Settings → Agents (CODE-249) by @AprilNEA in #155
- feat(observability): wire Sentry DSNs across desktop daemon, webview, mobile by @AprilNEA in #166
- feat(mobile): terminal theme prop and iOS-aligned accessory bar (expo-libghostty 0.8.1) by @AprilNEA in #162
- perf(ui): virtualize conversation timeline (virtua) + incremental per-event derivations by @AprilNEA in #165
- feat(assets): managed downloads follow the OS system proxy (CODE-222) by @PeronGH in #164
- fix(schema,assets,daemon): ship codex win32 sandbox helpers next to the managed binary (CODE-234) by @PeronGH in #159
- test(perf): conversation hot-path timing harness by @AprilNEA in #168
- feat(ui): add GPT-5.6 Sol/Terra/Luna to the codex static model table by @lucas77778 in #167
New Contributors
- @dependabot[bot] made their first contribution in #93
- @PeronGH made their first contribution in #157
Full Changelog: v0.4.2...v0.5.0
v0.4.2
What's Changed
- chore(desktop): bump version to 0.4.1 by @AprilNEA in #86
- chore: monorepo eslint typecheck setup by @SukkaW in #77
- feat(agent-adapter): opencode permission/question round-trip, error surfacing, non-blocking prompt by @lucas77778 in #75
- fix(assets): keep boot garbage collection best-effort on directory errors by @AprilNEA in #85
- chore: node 26 toolchain by @Zerlight in #88
- feat: implement a global keyboard shortcut registry by @Zerlight in #87
- chore(deps): add Dependabot for pnpm catalog, cargo, and GitHub Actions by @AprilNEA in #82
- feat(transport): tunnel token + subprotocol + auto-reconnect in WsTransport (CODE-92 phase 1) by @AprilNEA in #64
- chore(deps): adopt native TypeScript 7 for typecheck by @AprilNEA in #70
- feat: LinkCode Cloud tunnel — device identity, HQ uplink, mobile remote access by @AprilNEA in #81
- feat(im): IM Channel client chain — wire contract, scoped subscriptions, im-render, Telegram settings UI by @AprilNEA in #95
- fix(desktop): eliminate dock toggle frame drops by @Zerlight in #96
- fix(ui): cap composer input height by @Zerlight in #97
- fix(daemon): self-heal drizzle migration ledger on timestamp drift by @AprilNEA in #100
- fix(desktop): resolve cloud-auth storage path lazily and prune undecryptable entries by @AprilNEA in #101
- feat(daemon,schema,common): profile-scoped state dirs and profile-aware daemon discovery by @AprilNEA in #103
- feat(desktop): channel/profile identity applied as first import; thread profile to daemon by @AprilNEA in #104
- feat(agent): add first-class slash and shell commands by @lucas77778 in #99
- fix(ui): remove truncate and add tooltip to prompt by @Zerlight in #102
- feat(ui): icon-based sidebar host footer by @AprilNEA in #106
- feat(settings): Codex-style grouped settings nav + General/Appearance split by @AprilNEA in #107
- feat(settings): live settings search over the grouped sidebar nav by @AprilNEA in #108
New Contributors
Full Changelog: v0.4.1...v0.4.2
v0.4.1
What's Changed
- feat(desktop,workbench,engine): OS notifications for background sessions by @AprilNEA in #57
- feat(workbench,ui): navigation system and browse provider history import by @Zerlight in #69
- fix(desktop): center macOS traffic lights on Tahoe by @Zerlight in #72
- feat(ui): improve cmdk UI by @Zerlight in #74
- fix(desktop): improve sidebar and add history import shortcut by @Zerlight in #80
- fix(ui): terminal CJK/emoji font fallbacks + restty 0.2.0 migration by @AprilNEA in #79
- feat: Account system — multi-account switching, provider conversion, AI gateway, Providers settings UI by @AprilNEA in #71
- fix(agent-adapter): handle claude-code compaction so history isn't lost on auto-compact by @lucas77778 in #76
- fix(agent-adapter): replay codex tool calls in history so they survive a session switch by @lucas77778 in #73
- fix(desktop,transport): centralize daemon connection recovery by @AprilNEA in #83
- chore(deps): bump agent SDKs — claude 0.3.206, codex 0.144.1, opencode 1.17.18, pi 0.80.6 by @AprilNEA in #84
Full Changelog: v0.4.0...v0.4.1
v0.4.0
What's Changed
- feat(workbench,desktop): discover online cloud hosts in the footer (CODE-91) by @AprilNEA in #47
- fix(ui): collapse right-panel section tabs to icons when narrow by @AprilNEA in #65
- fix(desktop): Windows/Linux window controls + taskbar icon identity by @AprilNEA in #66
- feat(desktop,agent-adapter): detect claude-code logged-out state and add in-app login by @AprilNEA in #68
Full Changelog: v0.3.0...v0.4.0
v0.3.0
What's Changed
- feat(daemon): detect installed agent CLIs and serve runtime availability (CODE-110) by @AprilNEA in #49
- feat(desktop): drop builtin agent binaries — 425 MB → 158 MB zip (CODE-114) by @AprilNEA in #50
- fix(daemon): spawn the default terminal shell as a login shell on macOS by @AprilNEA in #51
- fix(workbench): creating a new conversation briefly flashes the previous conversation by @lucas77778 in #45
- chore(ui): add Fable 5 to the claude-code model options by @AprilNEA in #53
- feat(agent-adapter): drive codex via app-server by @lucas77778 in #40
- managed assets: download, verify, and install agent CLI pairs and toolchains (CODE-111) by @AprilNEA in #54
- fix(preview): open agent-produced files outside the workspace by @AprilNEA in #55
- feat: wire claude-code AskUserQuestion end-to-end into the prompt dock (CODE-118) by @AprilNEA in #56
- feat(ui,workbench): agent runtime onboarding — guided managed downloads (CODE-112) by @AprilNEA in #59
- feat: reflect the session's actual model/effort in the composer by @AprilNEA in #60
- feat(desktop): manage account via the IdP account center (CODE-90) by @AprilNEA in #39
- fix(engine,client-core): replay live status and open asks on session.attach (CODE-119) by @AprilNEA in #58
- build(desktop,daemon): package from a prod-deploy staging dir; fix Windows daemon crash (CODE-107) by @AprilNEA in #62
- chore(desktop): bump version to 0.3.0 by @AprilNEA in #63
Full Changelog: v0.2.1...v0.3.0
v0.2.1
What's Changed
- fix(desktop): treat unpackaged production runs as dev shell (CODE-102) by @AprilNEA in #44
- refactor(desktop): JSON-import package.json in electron.vite config + typecheck the config by @AprilNEA in #43
- feat: subagent (Task/Agent tool) support — nested transcript card + viewer (CODE-80) by @AprilNEA in #37
- fix(desktop): packaged agents fail with spawn ENOTDIR; ship the claude CLI outside the asar by @AprilNEA in #48
Full Changelog: v0.2.0...v0.2.1
v0.2.0
What's Changed
- feat(desktop): bundle and supervise the daemon + ship the PTY sidecar (CODE-86, CODE-87) by @AprilNEA in #46
Full Changelog: v0.1.1...v0.2.0
v0.1.1
What's Changed
- feat(ui): implement unified new session uiux by @Zerlight in #35
- feat: Artifacts P1+P2 — inline artifacts, files viewer, preview proxy, browser pane, sandboxed hosting (CODE-58..62) by @AprilNEA in #36
- feat(desktop): LinkCode Cloud sign-in in the sidebar footer by @AprilNEA in #38
- fix(desktop): packaged app crashes on launch — bundle workspace deps + pin userData by @AprilNEA in #42
Full Changelog: v0.1.0...v0.1.1
v0.1.0
What's Changed
- chore(license): adopt BUSL-1.1 with brand and third-party licensing by @AprilNEA in #7
- feat: interactive PTY terminals via Rust sidecar by @AprilNEA in #8
- fix(agent-adapter): rebuild claude-code on streaming input for live m… by @lucas77778 in #10
- feat(ui): wire per-adapter model switching into the composer by @lucas77778 in #11
- feat(ui): render chat markdown with streamdown by @AprilNEA in #12
- chore(deps): clear npm audit vulnerabilities (FOSSA Security) by @AprilNEA in #13
- feat(agent-adapter,ui): composer reasoning-effort selector for claude-code by @lucas77778 in #16
- feat(workbench): frontend mock data host for dev by @Zerlight in #14
- feat(ui): implement session approval policy selection in composer by @Zerlight in #20
- fix(agent-adapter): guard opencode consumeEvents against unhandled rejections by @AprilNEA in #22
- fix(daemon,engine): silent failures & dead safety nets — persistence, provider config, PTY sidecar, process bulwark by @AprilNEA in #23
- refactor(ui): dedupe repeated visual recipes — copy button, tooltip button, panel tabs, git cards, thread-nav props by @AprilNEA in #27
- chore: audit misc — dead exports, misplaced helpers, small dedups by @AprilNEA in #28
- fix(desktop): lock down window navigation for agent-authored links + single-instance lock by @AprilNEA in #24
- refactor(settings): sink the duplicated settings surface into packages/ui by @AprilNEA in #25
- fix(tooling,docs): restore the lint gate and re-sync docs with reality by @AprilNEA in #26
- refactor(agent-adapter): lift duplicated segment/delta machinery into BaseAgentAdapter by @AprilNEA in #29
- refactor(client-core,engine): split god files, PendingRegistry, options-object Engine ctor by @AprilNEA in #30
- refactor(transport,schema): collapse hand-copied contract tables by @AprilNEA in #31
- fix(workbench,ui): sidebar loading skeleton + composer caret layout effect by @AprilNEA in #32
- feat(ui): improve conversation UI by @Zerlight in #33
- feat(agent-adapter): parse claude-code Edit/Write input into structured diff content by @lucas77778 in #21
- feat(sessions): sidebar close stops the session and deletes its record by @lucas77778 in #18
New Contributors
Full Changelog: https://github.com/arcboxlabs/linkcode/commits/v0.1.0