github esengine/DeepSeek-Reasonix v1.0.0
Reasonix CLI v1.0.0

latest release: desktop-v1.0.0
5 hours ago

Changelog

  • 3483681 docs(changelog): mark 1.0.0 released (#2789)
  • 6dd32af fix(desktop): build a universal macOS app, drop the Intel runner (#2787)
  • 96881ce fix(release): distinguish CLI vs desktop releases; shield the updater from prereleases (#2784)
  • 59d74a8 fix(desktop): bump CI pnpm to 10 for the frontend build (#2783)
  • 424a563 fix(release): don't push the Homebrew cask for prereleases (#2782)
  • 71a6645 fix(desktop): use a numeric version for the installer/versioninfo (#2781)
  • 053f2b9 fix(desktop): keep the NSIS installer script ASCII (#2780)
  • 4755e22 fix(desktop): stamp the release version into the build (#2779)
  • 2ad62ff fix(plugin): drain detached MCP stats writers in Host.Close (#2777)
  • e438908 feat(desktop): commit explicit Windows installer icon.ico (#2776)
  • 45927ce feat(release): npm + Homebrew distribution for the CLI (#2775)
  • 01b720d fix(test): make Windows statusline and symlink tests portable (#2772)
  • 6b6bdfc fix(desktop): restore full-path hover on workspace tree rows (#2773)
  • 5b8d54f feat(agent): gate final-answer readiness (with mutation-driven test coverage) (#2771)
  • d4abfa1 fix(desktop): remove redundant tooltips (#2769)
  • 7839cdd fix memory quick-add hash prompt handling (#2767)
  • b543649 feat(net): exponential-backoff retry with clear error UX (#2765)
  • 3277b06 style(config): trim SetLanguage doc comment to one line (#2763)
  • fd64aa3 feat(desktop): workspace Add to Chat context + Changed view (#2762)
  • c9c16e6 feat(cli): add /language command to switch UI language (#2760)
  • 21ac7c0 fix(serve): sidebar resume/compact/model-switch with a race-safe controller swap (#2758)
  • 6807b89 refactor(desktop): trim onboarding comments, fix stale timeout note (#2759)
  • 686f050 feat(agent): enforce project instruction receipts (#2753)
  • 5cdfbe9 feat(desktop): first-run onboarding overlay for default provider API key (#2752)
  • 5ba50cc refactor(desktop): drop duplicate session-path validation on delete (#2756)
  • da84e11 feat(cli): render LaTeX math as Unicode in chat output (#2757)
  • 3c95429 Manage Recent Sessions from the Desktop Sidebar (#2746)
  • 9ee4fed fix(serve): cache session titles and match current session on Windows (#2745)
  • e98f14d feat(serve): overhaul HTTP SSE sidebar and add session titles (#2742)
  • 3141c3a fix(cli): chain into argument menu right after accepting a command (#2744)
  • e2f9f66 fix(cli): setup always offers the built-in provider catalog (#2743)
  • af1f6a7 fix(desktop): complete the live-stream state so the frontend builds (#2741)
  • b343da5 fix(cli): don't OSC-probe the terminal on a runtime /theme auto
  • 08e76c3 feat(theme): wire mode and accent themes (#2734)
  • 2f6461b fix(cli): setup wizard — fetch /models, dedupe key prompts, stable entry names (#2739)
  • 04ee7b5 perf(desktop): stop re-rendering the whole transcript on every streamed token
  • 2639389 feat(desktop): autosave the session after each turn
  • bc520ac fix(boot): surface why a model is empty instead of failing silently
  • 6b35939 fix(windows): stop subprocesses flashing a console window
  • 26d348d fix(cli): let Esc cancel a running turn even with the completion menu open (#2733)
  • eb6f60b feat(cli): show a live "working · Ns" line under a running tool (#2729)
  • 2e16a97 fix(control): don't draft or gate on a plan in bypass/YOLO mode
  • 3a8d79c feat(cli): interactive /resume picker with keyboard navigation (#2726)
  • b02f353 feat(cli): add theme switching (#2727)
  • f92ea80 fix(control): cancel the per-turn context on normal turn completion
  • 482d9d4 perf(tools): cache each tool's canonical schema at registration
  • 229f3bc perf(tools): stop read_file scanning the whole file for a windowed read
  • c9c6ef2 test(bash): widen cancel/kill timing margins to stop load flakes (#2724)
  • 33c76cd fix(tools): skip macOS TCC-protected dirs in recursive glob/grep walks (#2723)
  • 2c7f7e1 feat: reasoning effort controls (/effort) (#2722)
  • 3a9aeca fix(desktop): allow read-only history preview while running (#2711)
  • 271dd84 fix(cli): copy via OSC 52 when the platform clipboard tool fails (tmux/SSH) (#2719)
  • 3a3f861 fix(jobs): mark a killed job Killed synchronously (#2715)
  • c2cbb97 feat(tui): clear composer on single Ctrl+C when input is non-empty (#2712)
  • 4903fd2 feat(plugin): tier-based MCP loading with cache-aware lazy placeholders (#2713)
  • 23f4220 test: goroutine-leak guard (goleak) + fix the leaks it found (#2709)
  • ae49ba8 fix(doctor): surface warnings at the top of the report (#2710)
  • c7da554 fix(doctor): report effective sandbox availability, not just mode (#2708)
  • 418f1ca fix(desktop): restore reasoning in resumed history (#2705)
  • e7bd279 ci: add a -race job and run the prompt-cache prefix guard (#2707)
  • a2e0a3e chore: clear staticcheck findings across internal packages (#2706)
  • 46ee765 Define a cohesive desktop light and dark theme system (#2636)
  • 462e340 Polished Slash Command Views (#2521)
  • 50b9907 feat(plugin): persist handshake schema & startup latency to user cache (#2703)
  • ae0d890 fix(skill): make relevant inline skills mandatory, keep subagent judgment-based (#2704)
  • ac0ec00 feat(proxy): auto-detect the Windows system proxy (IE/PAC/WPAD) (#2702)
  • 2160fa6 fix(cli): recall submitted input with arrow keys (#2700)
  • 963fe55 feat(plugin): defer prompts/resources to a background phase (#2701)
  • 1bc5181 refactor(desktop): share sessionActivityTime helper (#2699)
  • 3cd755c fix(desktop): keep session list stable on resume (#2697)
  • 757c4aa feat: add configurable network proxy settings (#2690)
  • e6833d5 feat(plugin): unify StartAll/StartAvailable with timeout & concurrency cap (#2675)
  • 0768c9b refactor(config): share skill-path canonicalization, fold case on Windows (#2698)
  • 25ea517 feat(desktop): manage agent skill sources
  • c7b119e fix(io): fall back to copy when an atomic-write rename hits a cross-device link (#2696)
  • 684e17e style(memory): drop redundant docSeen.add comment (#2695)
  • 0806779 fix(memory): deduplicate symlinked memory docs (#2688)
  • 062c568 fix(desktop): wire up tool_progress so live bash output doesn't blank the app (#2693)
  • 7e2e4ce feat(desktop): surface crashes instead of blanking to a white screen (#2691)
  • 862803a fix(bash): suppress the console window for shell commands on Windows (#2686)
  • d73df5d perf(tools): stream read_file instead of slurping the whole file
  • fa7d154 fix(config): merge [[plugins]] across config files instead of replacing (#2684)
  • cfb91d0 refactor(desktop): share the transcript re-pin logic across resize sources (#2676)
  • d3a2b86 ci: run the root test matrix on windows-latest (#2674)
  • b7bc55e fix(tools): make native grep/glob walks interruptible
  • 3d73243 fix(desktop): keep transcript pinned when approval shelf appears (#2670)
  • 781916f fix: resolve stdio MCP commands with effective PATH (#2665)
  • 42c7c7f fix(cli): expand tabs and fix header detection in diff/stream rows
  • 6f0a631 chore(desktop): drop approval i18n keys orphaned by the shelf refactor (#2669)
  • 1a5d6a4 fix(desktop): repair module build and add CI coverage (#2668)
  • d35199f fix(desktop): compact approval shelf (#2663)
  • f1f4406 perf(cli): coalesce buffered agent events into one re-render
  • 4e9b893 fix(doctor): redact the home directory from report paths
  • 52249d9 feat(cli): add doctor diagnostics command (#2631)
  • b1a7c04 perf(cli): bound live reasoning to a trailing view
  • 4e6d8fc feat(grep): complete .gitignore parity — nested negation + core.excludesFile
  • 71b5b4c test(bash): regression test that cancel interrupts a running command
  • 100cd82 perf(cli): bound bash live-output to a tail, not the whole stream
  • 3bf6a61 feat(deepseek): support thinking effort controlsFeat/deepseek thinking effort (#2648)
  • 27b0d4f feat(grep): match ripgrep — nested .gitignore + skip hidden files
  • e91cfd6 fix(desktop): tighten IME confirm-Enter grace to 100ms
  • c01ce22 fix(desktop): don't submit on IME confirm Enter (#2632)
  • 44e84ec feat(grep): native search honors .gitignore
  • e41e1b4 test(builtin): make GBK round-trip test self-contained (#2655)
  • 650bec6 feat: restore GBK/GB18030 file encoding support (#2637) (#2645)
  • a4ce28c feat(bash): interruptible runs with live streamed output
  • 496c03d feat(cli): tie streamed thinking to a ⎿ connector
  • 30ce0b7 feat(grep): optional ripgrep engine for the search tool
  • 0dfcc7d feat(bash): richer PowerShell guidance, steer to native tools
  • f744c55 feat(cli): Claude-style tool cards, diff view, and live reasoning
  • dde7b9c feat(attach): drag/paste files as @refs, inline deletable image tokens
  • 543717d chore(desktop): tighten jumpTo comment to the load-bearing why (#2641)
  • 9741597 feat(desktop): refine memory drawer management (#2635)
  • 0a0231d chore(desktop): drop dead PastedBlock.lines field and demo gif (#2638)
  • 7698782 chore(desktop): drop committed workspace layout demo gif (#2639)
  • 46060e4 chore(desktop): drop dead MCP group-title strings and CSS (#2640)
  • 350f49e fix(desktop): improve pasted text composer preview (#2633)
  • aff4a45 Refine desktop workspace panel layout (#2629)
  • 8366eda feat(desktop): improve MCP drawer details and skill metadata badges (#2634)
  • fd18a96 fix(evidence): bind complete_step receipts to the signed todo identity (#2604)
  • b7e7f11 fix(control): harden interface boundaries against typed-nil panics (#2607)
  • 2a0d6da fix(agent): load sessions with a >4MiB message instead of failing to resume
  • cdd078a feat(desktop): dock regular tool approvals above the composer (#2627)
  • 3308924 feat(desktop): refine MCP & skills drawer hierarchy (#2621)
  • a1cd061 fix(agent): guard tailStart against a session with no message after the head
  • 437a0ac chore(desktop): drop orphaned composer.noProject locale string (#2626)
  • a4e4814 fix: remove no-project workspace option (#2624)
  • aba2e9f fix(sandbox): bound the bash probe with a timeout (#2625)
  • e4c0b9f fix(cli): prefer numeric choices in tool approval prompts (#2601)
  • ddfdfe7 fix: bash tool WSL launcher probe fallback to Git Bash (#2620)
  • 4c2b6a2 fix(boot): detach codegraph background install from the Build context (#2612)
  • 27764d1 fix(tool): block CGNAT 100.64.0.0/10 in web_fetch SSRF guard
  • f7363e1 fix(tool): drop outputs/execution_count when notebook_edit retypes a cell to markdown
  • 351d772 fix(tool): read_file decodes BOM-marked UTF-16 and UTF-8 instead of rejecting it
  • 97683f1 fix(control): surface errors from /branch and /switch slash commands (#2610)
  • 211ede8 chore(desktop): tidy plan-approval dock follow-ups (#2619)
  • 01f6047 fix(desktop): dock plan approval controls (#2616)
  • 379b6e8 fix(config): correct MiMo Token Plan base_url, model, pricing; render models[] (#2613)
  • 4e6b8b4 fix(tool): normalize forward-slash glob patterns to the OS separator
  • e71b837 fix(tool): delete a multi-line var/const's whole value, not just its name line
  • 639be6f feat(memory): forget tool, fallible recall, richer index, UI surface + same-session apply (#2599)
  • 256a2f5 feat(desktop): Claude-style workspace layout, file preview, capabilities drawer (#2561)
  • ccece7e perf(tool): skip vendor/VCS dirs in grep and glob walks
  • 75aa034 fix(agent): serialize the session pointer against concurrent frontend access
  • 0344cec fix(agent): make the plan-mode flag atomic
  • ee2117c fix(agent): make per-turn usage/cache telemetry atomic
  • 6e40153 fix(agent): guard Session.Messages so a frontend read can't race a turn's append
  • 3567f28 feat(ci): mutation testing for the diff bot — behavioral signal for additive PRs (#2600)
  • 7318757 fix(diff): cap Myers edit distance so a large rewrite can't OOM the preview
  • 1441a4a fix(plugin): guard Host's mutable state with a mutex against hot-add races
  • da59857 feat(ci): harden e2e diff bot — coverage, regression, retries, safety (#2593)
  • eaa95e9 feat(ci): surface generated tests + per-test differential in diff report (#2592)
  • 0c68cab fix(frontmatter): parse YAML list values so imported skills keep tool scoping
  • 3ddc5ee feat(agent): guard todo completion transitions (#2576)
  • 3e3b9c5 feat(ci): tune diff test-gen — higher step cap, clearer report (#2587)
  • 622ab03 fix(codegraph): reject extraction symlinks that escape the cache dir
  • 0ee09d7 fix(serve): require application/json on command POSTs to block CSRF
  • b90b587 fix(lsp): cap the LSP frame size to stop an OOM on a corrupt Content-Length
  • 5843535 fix(ci): build the e2e harness from the default branch, not the PR head (#2584)
  • f38ea2c feat(ci): e2e benchmark bot triggered by a PR comment (#2574)
  • 3688b21 feat(tui): add /quit slash command for session exit (#2577)
  • fc8af2e fix(tool): block web_fetch from reaching internal addresses (SSRF)
  • 50c2c32 fix(agent): keep signed reasoning original when PostLLMCall transforms it
  • 8e00ae5 test(jobs): fix a race in TestWaitAllRunning
  • 49e99d7 fix(tool): delete a symbol's doc comment along with it
  • 6b30efd fix(tool): reject delete_range with identical anchors instead of duplicating a line
  • 6fd8c39 fix(plugin): unblock a cancelled stdio MCP call when the server hangs
  • 25b148d fix(jobs): surface a finished task job's answer via bash_output
  • 4ed3d71 feat(desktop): async startup — non-blocking boot.Build + parallel plugin init (#2563)
  • b20a410 feat: add PostLLMCall hook for post-model-turn reasoning transform (#2568)
  • 22d5f00 feat(agent): verify completed steps against todos (#2569)
  • be584c8 fix(agent): stop auto-compaction re-firing every turn (#2571)
  • b05e7cb Auto Plan Gate for Complex Tasks / 复杂任务自动计划门 (#2457)
  • 21e28da feat(agent): verify step evidence receipts (#2540)
  • 81623ea feat(tui): stream answer to scrollback by completed paragraph
  • 82bfea0 fix(cli): drop duplicate bubbletea import in chat_tui_test
  • 7f67c06 fix(provider): repair dangling tool_call pairing before send
  • d411fe1 fix(tui): echo user message instantly on send
  • b301730 feat(tui): require double Ctrl+C to quit when idle, preventing accidental exits (#2501)
  • ffd3357 [v2] Add reusable mock provider for agent tests (#2412)
  • 55308f0 fix: @目录引用递归列出子目录 + glob简单模式自动递归回退 (#2506)
  • 682f66f feat(agent): segment read-only tool batch execution (#2541)
  • 19bf187 fix(openai): surface MiniMax-M3 inline as reasoning
  • 6f70d12 feat(desktop): add MCP & Skills drawer with connector management
  • acd8dc5 feat(control): add DisconnectMCPServer for session-only MCP toggling
  • 61deefe fix(tui): restore Ctrl+C to interrupt/quit, copy via right-click
  • ba47567 feat(lsp): add Language Server Protocol code-intelligence tools
  • 57359d5 feat(cli): collapse thinking with a live marker + duration summary (#2562)
  • 2021a52 feat(composer): fold long pasted text in CLI and desktop (#2517)
  • 5bc6790 fix(desktop): shorten Windows cwd in the status breadcrumb (#2547)
  • cfb6955 fix(cli): render CJK bold (**) hugging full-width punctuation (#2476)
  • 2df002e test(desktop): make sessionTitlesPath test platform-agnostic (#2546)
  • 5c0da4f test(boot): disable codegraph in the MCP-failure test (#2545)
  • f4beb8d feat(desktop): indent layered-plan sub-steps in the todo panel (#2544)
  • 6da057d fix(plan): parse numbered-heading phases so layering survives real plans (#2543)
  • 5904043 feat(mcp): support manual connect for configured servers (#2503)
  • b885bed feat(plan): layered two-level plans (phases → sub-steps) (#2539)
  • 3d27db6 feat(mcp): keep startup resilient to server failures (#2502)
  • 0f914c1 fix(sandbox): make shell-resolution tests host-independent (#2536)
  • 60a9803 test(cli): exercise /resume through the slash dispatcher end-to-end (#2534)
  • e8fb992 test(sandbox): cover the no-bash → PowerShell fallback deterministically (#2533)
  • a704fa7 fix(tool): make the shell tool work on Windows without bash (#2532)
  • 384714e feat(cli): add in-chat /resume to switch saved sessions live (#2531)
  • ff9221f fix(model): skip providers without an API key in all model pickers (#2519)
  • 0048df6 TUI: alt-screen transcript viewport with scrollbar, selection, and copy (#2524)
  • 9891a32 feat(cli): read clipboard images on Windows and Linux (#2525)
  • 9e78bac feat(desktop): image attachments via paste and drag-drop (#2504)
  • 8d71037 feat(cli): image attachments via paste and dragged file paths (#2508)
  • 4cb0690 fix(desktop): save provider/config to global user config, surviving workspace switch (#2516)
  • 8e0db65 fix(desktop): protect [ spacing and swap | for \vert in math (#2514)
  • c8c15ce fix(desktop): pin vite dev server to 127.0.0.1 (fix Windows blank window) (#2511)
  • a76345a fix(desktop): render LaTeX with ( ) and [ ] math delimiters (#2510)
  • 1021c17 feat(desktop): render LaTeX math in markdown via KaTeX (#2509)
  • 1d5703a test: make path and codegraph tests Windows-portable (#2507)
  • 9dc00c1 build: add Go-native git hooks (make hooks) (#2505)
  • 09a941c feat(provider): forward reasoning_effort from the openai-compatible provider (#2408)
  • 5b1a88a test(builtin): make resolveIn absolute-path test cross-platform (#2500)
  • bdbb81c feat(tool): add delete_range and delete_symbol editing tools (#2410)
  • 6104602 feat(permission): auto-skip approval for known read-only bash commands (#2411)
  • 0886375 feat(tool): add slash_command for model-invoked slash commands (#2494)
  • ceae6df Fix desktop transcript streaming autoscroll (#2487)
  • 7d62fbb fix(cli): /model switch breaks terminal + garbles streaming output (#2486)
  • e045307 Conversation Branch Tree for Chat Sessions / 对话分支树管理 (#2460)
  • fb5ee94 fix(tool): repair notebook_edit test compile error (#2492)
  • df5764a ci: add release cache hit guard (#2470)
  • 1a2c53b feat(tool): add notebook_edit for Jupyter .ipynb cells (#2491)
  • 606f9df Clarify CLI Tool Approval Prompts (#2484)
  • 9ccc3f5 feat(cli): custom status line via a user command
  • 605aa1f feat(outputstyle): selectable persona/tone output styles (#2482)
  • 4b80e83 docs: drop external-agent references from two comments (#2480)
  • 801645b feat(hooks): add lifecycle hook events + compaction focus & headroom (#2478)
  • 021df86 fix(cli): /model switch no longer corrupts the terminal (#2472)
  • 4660ec2 feat(subagent): configurable model overrides for subagent skills (#2451)
  • 9cf7939 fix(ask): reject blank and duplicate option labels (#2426)
  • c81bffe feat(compaction): surface context compaction as a card across CLI, desktop, headless (#2477)
  • f3f7835 fix(tui): add shift+enter to InsertNewline key binding (#2425)
  • c15e114 style: gofmt storm_test.go to unblock CI (#2475)
  • 451777f fix(agent): break the same-tool, same-error retry loop (#2474)
  • bf4f3f8 refactor: deduplicate compactArgs between agent and cli (#2449)
  • 20b9f31 refactor: extract shared frontmatter parser into internal/frontmatter (#2446)
  • 7141612 feat(sandbox): add Linux bubblewrap support (#2447)
  • 66888b2 test(sandbox): platform-split tests + golangci-lint v2 config (#2444)
  • c616572 test(desktop): add workspace.go and settings_app.go helper tests (#2458)
  • 4b0640b test(cli): add tests for visibleWidth, padRight, and boxed helpers (#2455)
  • 3dac4d2 test(acp): add tests for newSessionID, mcpSpecs, transcriptPath, and acpSession (#2445)
  • bff6027 test(skill): add edge case tests for IsValidName, splitFrontmatter, parseAllowedTools, parseRunAs, and helpers (#2443)
  • d3dfd28 test(provider): add comprehensive unit tests for provider package (#2418)
  • f81035b feat(provider): support Anthropic extended thinking round-trip (#2471)
  • ef65698 feat(provider): add Anthropic Messages API provider (#2469)
  • 7ae5ca1 test(builtin): add dedicated tests for write_file, edit_file, multi_edit, and confine (#2433)
  • f80615f test(builtin): add dedicated tests for read_file, ls, glob, and grep tools (#2432)
  • dbfa74d test(agent): add comprehensive session, save, load, and preview tests (#2454)
  • 8a66ef9 test(serve): add endpoint tests for cancel, approve, new, compact, index, malformed input (#2453)
  • d9f06bd test(desktop): add wire.go and sessions.go tests (#2452)
  • c905bf2 test(command): add edge case tests for splitFrontmatter, Render, and Load (#2442)
  • e45e8e2 test(jobs): add timeout, edge case, and helper tests (#2441)
  • 8637b79 test(permission): add edge case tests for ParseDecision, matchGlob, Subject, and rememberRule (#2440)
  • 5ef8c43 test(billing): add edge case tests for symbol, Display, and Fetch error paths (#2439)
  • a644085 test(diff): add edge case tests for splitLines, isBinary, CRLF, large files, and helpers (#2438)
  • 134caab test(memory): add tests for splitFrontmatter, slug, oneLine, render, and store edge cases (#2437)
  • f431da9 test(hook): add comprehensive runner, format, and payload tests (#2430)
  • 2987bc8 fix: replace silent error discards with structured logging (#2421)
  • 55d408d feat(desktop): use a fresh signing key; add genkey/verify (#2467)
  • f56d655 fix(subagent): tighten inherited tool boundaries (#2434)
  • 1775743 fix(plugin): log prompt/resource listing failures in Host.Add (#2448)
  • 93ab240 feat(desktop): add release pipeline and self-updater (#2466)
  • d84fbab fix(openai): drain error response body for HTTP connection reuse (#2450)
  • 5a1ac12 feat(serve): graceful shutdown, request logging, CORS opt-in (#2459)
  • fa0a75f feat(glob): add ** recursive pattern support (#2423)
  • 0c2db1e docs: add CONTRIBUTING.md (#2427)
  • 2c267aa feat(checkpoint): persist turn boundaries so rewind/fork survive resume
  • c8d1bc5 test(event): add unit tests for the event package (#2417)
  • ca5c6a2 fix(gitignore): update ignores for the Go v2 layout (#2415)
  • 3710ca5 fix(checkpoint): surface rewind/fork/summarize failures as a notice
  • f3282e5 fix(desktop): rewind menu — one open at a time + click-outside to close
  • c338437 fix(desktop): rewind ⟲ opens a vertical dropdown (fork/summarize were clipped)
  • df8eccf Canonicalize MCP JSON schemas for stable cache prefixes (#2403)
  • 35c20e2 fix(desktop): make the per-message rewind ⟲ always visible (dim), not hover-only
  • ee44f47 feat(checkpoint): summarize-from/up-to-here, completing the Claude Code menu (Phase 2)
  • 9b2adaf feat(checkpoint): fork-from-here (Phase 2)
  • d931bc7 Stabilize tool schema ordering for prompt cache reuse (#2402)
  • 2be0d9e feat(checkpoint): desktop hover-rewind (Phase 2)
  • 492dcad feat(checkpoint): list /rewind in slash completion and help
  • 813d937 ci: auto-label issues/PRs with v1/v2 version line
  • df3d477 feat(checkpoint): CLI rewind picker — Esc-Esc / /rewind (Phase 1 complete)
  • 490f1ce feat(checkpoint): snapshot store + capture seam + Controller.Rewind (Phase 1 core)
  • 539d1d1 docs: design for checkpoints & rewind (snapshot-based, Claude Code-aligned)
  • f60cb56 fix: skip saving empty conversations to history when switching workspace/model (#2401)
  • cd66da6 refactor(codegraph): fetch on first use into a cache instead of bundling
  • 4630f94 docs: npm stays the install channel for the Go build (wraps the native binary)
  • 2c8f8bd docs: announce the Go rewrite (v2) — README banners, migration guide, changelog
  • c626efa style: gofmt cachehit_e2e_test.go (unblock CI gofmt gate)
  • fd0dfff ci: add CI and release workflows
  • 68cc0be feat(plan): add complete_step tool for evidence-backed step sign-off
  • 1e68e2e feat(codegraph): integrate CodeGraph as a built-in MCP server
  • cff33da refactor(cli): use x/ansi for width/truncate/wrap, drop hand-rolled helpers
  • 364c74d feat(cli): two-row status line so context/cache info isn't truncated
  • 6b01b39 fix(cli): auto-repaint after resize to clear inline-mode border ghosts
  • 18bc7ad fix(cli): drop the resize ClearScreen that doubled the frame
  • 37d64ed fix(cli): clear the screen on terminal resize so the TUI drops border ghosts
  • fa1e969 fix(cli): clamp the chat status line to terminal width so it never wraps
  • a79f2a5 fix(config): read ~/.env as a fallback so CLI and desktop share one key
  • 9d30eb8 fix(desktop): keyboard nav scrolls the active item into view in / @ and arg menus
  • 540d654 feat(status): show single-turn AND session-aggregate cache-hit rates
  • f03884b feat(agent): reply in the user's own language, per message
  • 49be067 test(cache): prefix-stability regression + live DeepSeek cache probes
  • b5d07bf perf(provider): stop re-uploading reasoning_content in requests
  • 9a6567d fix(desktop): saving a key failed with read-only fs — GUI launch starts in "/"
  • b5df761 i18n: localize the slash management listings (/skill /hooks /mcp /memory /model)
  • 3f0cd7d i18n: localize the slash menu (commands + sub-command hints), CLI & desktop
  • 911b386 fix(desktop): /skill list menu lingered — empty Go slice serialized to JSON null
  • 231a217 fix(desktop): also drop no-op slash-arg suggestions in the composer
  • d19ca8d fix: slash-arg menu lingered on a fully-typed subcommand (/skill list)
  • 1014232 feat: shared slash-arg completion + readable desktop notice listings
  • 5530273 fix(desktop): /skill and other notice-only commands read seconds forever
  • eea749c fix(desktop): Enter never submitted — slash-menu guard tested the wrong var
  • ec1d47b feat: in-session /model + parity slash commands (CLI & desktop)
  • 08196ca test: prove /init (and skills) surface in the slash menu
  • d4df4cf feat: skills, hooks, in-session /init, and cross-tool asset conventions
  • 9b7f3e0 feat: YOLO/bypass permission mode with a Shift+Tab mode cycle
  • 28e1b5d feat: background jobs (run_in_background, bash_output, kill_shell, wait)
  • 4173660 feat: optional per-provider wallet balance + cache-hit rate in the status bar
  • 6479624 feat(desktop): localize the UI (en/zh) and fix settings provider editor
  • b897121 feat(desktop): session history, project folder picker, and a settings panel
  • ba92bfd feat(cli,desktop): un-send on early cancel, live MCP management, slash arg completion
  • 1e59c69 test(boot): cover memory-into-prompt wiring
  • 806f584 docs(readme): port the homepage README to v2 (badges, support, contributors)
  • d06c8a0 feat: ask tool, unified plan approval, and richer desktop/CLI tool UX
  • 7da1e4e fix(desktop): return non-nil slices from App.Memory
  • c3c338d merge(v2): fold in the persistent memory feature (feat/memory-v2)
  • 9cb7561 feat(desktop): bottom model switcher
  • 7038101 feat(config): a provider can expose multiple models
  • 1c1ab5b feat(memory): desktop memory panel (drawer) on v2's Wails frontend
  • 0b88afe feat(memory): wire # quick-add and /memory into the chat TUI
  • edd4156 feat(memory): wire persistent memory into kernel + CLI on v2
  • e6710b0 feat(desktop): welcome screen, copy buttons, app icon, and fixes
  • 5fe7b09 feat(desktop): composer autocomplete for / commands and @ files
  • 507103a feat(desktop): Wails + React desktop shell
  • 6c7ae70 refactor(cli): extract controller assembly into internal/boot
  • c1c22b2 feat(acp): support session/load to resume saved sessions
  • da1de32 feat(acp): persist transcripts and add end-to-end tests
  • e87b9cb feat(acp): drive the control.Controller and wire the reasonix acp command
  • 5d40158 feat(acp): add stdio JSON-RPC adapter layer (phase A)
  • 4dad578 feat(serve): expose the controller over HTTP+SSE
  • 8991bf1 refactor(control): fold slash-command and @-reference resolution into the controller
  • cdeb4de fix(provider/openai): always serialize message content so DeepSeek accepts tool-call turns
  • 982e832 feat(control): transport-agnostic session controller (events + commands)
  • 32d7218 merge(v2): desktop-harness foundations (diff preview, introspection, config writes, per-agent workdir)
  • 1fb0f9f refactor(cli): chat TUI consumes the typed event stream directly
  • fc60496 feat(core): desktop-harness foundations — diff preview, introspection, config writes, per-agent workdir
  • cb5f5f1 refactor(agent): emit a typed event stream instead of writing ANSI
  • ba04db8 fix(tui): keep scrollback commits screen-bounded so the inline renderer can't drift
  • 7de6a24 feat: import Go implementation as v2 kernel (renamed duo → reasonix)
  • 32a4c02 chore: initialize v2 — ground-up rewrite

Don't miss a new DeepSeek-Reasonix release

NewReleases is sending notifications on new releases.