| v0.27.6 | ## What's Changed * fix(cli): prefill provider field placeholders by @carenthomas in https://github.com/letta-ai/letta-code/pull/2748 * feat: generate conversation titles via summary endpoint by @kianjones9 in https://github.com/letta-ai/letta-code/pull/2721 * feat: expose extension permission overlays by @carenthomas in https://github.com/letta-ai/letta-code/pull/2752 * refactor: remove tool_start denial support by @carenthomas in https://github.com/letta-ai/letta-code/pull/2754 * fix: render m | High | 6/6/2026 |
| v0.26.6 | ## What's Changed * refactor(reflection): share subagent launcher by @devanshrj in https://github.com/letta-ai/letta-code/pull/2437 * fix(connect): manage disconnects through provider selector by @cpacker in https://github.com/letta-ai/letta-code/pull/2619 * feat(local): add ChatGPT Fast selector support by @cpacker in https://github.com/letta-ai/letta-code/pull/2620 * fix(codex): make write_stdin polls abortable by @cpacker in https://github.com/letta-ai/letta-code/pull/2627 * fix(codex): disco | High | 5/30/2026 |
| v0.26.1 | ## What's Changed * fix(startup): skip cloud recents when logged out by @carenthomas in https://github.com/letta-ai/letta-code/pull/2466 * fix(startup): keep no-model label on local resume by @carenthomas in https://github.com/letta-ai/letta-code/pull/2465 * feat(tui): add rotating empty-composer prompt hints by @carenthomas in https://github.com/letta-ai/letta-code/pull/2469 * fix(startup): hide reasoning for no-model placeholder by @carenthomas in https://github.com/letta-ai/letta-code/pull/24 | High | 5/22/2026 |
| v0.25.10 | ## What's Changed * refactor(queue): simplify queue edit to Up-arrow-loads-all by @carenthomas in https://github.com/letta-ai/letta-code/pull/2288 * chore: add Bedrock Opus 4.7 support by @jnjpng in https://github.com/letta-ai/letta-code/pull/2284 * fix(cli): refresh secrets before local secret commands by @sarahwooders in https://github.com/letta-ai/letta-code/pull/2292 * fix(local): route MemFS UI to local backend paths by @AriWebb in https://github.com/letta-ai/letta-code/pull/2282 * fix(cli) | High | 5/17/2026 |
| v0.25.8 | ## What's Changed * fix(local): skip hosted Auto quota fallback by @just-cameron in https://github.com/letta-ai/letta-code/pull/2192 * feat(ci): add eyes/rocket reactions to review bot, gate review on lint pass by @carenthomas in https://github.com/letta-ai/letta-code/pull/2196 * feat(cli): add ANSI color parsing to statusline by @kianjones9 in https://github.com/letta-ai/letta-code/pull/2199 * feat(permissions): rename permission modes for clarity, make unrestricted the default by @carenthomas | High | 5/13/2026 |
| v0.25.3 | ## What's Changed * chore(ci): enable review for all authors, add PR context to prompt by @carenthomas in https://github.com/letta-ai/letta-code/pull/2145 * fix: wrap /btw in approval recovery by @jnjpng in https://github.com/letta-ai/letta-code/pull/2133 * fix: openrouter retry by @AriWebb in https://github.com/letta-ai/letta-code/pull/2108 * feat(local): enable local provider connections by @cpacker in https://github.com/letta-ai/letta-code/pull/2126 * feat(local): Add local backend CLI flag b | High | 5/8/2026 |
| v0.24.13 | ## What's Changed * feat(channel): support dynamic channel plugins by @cpacker in https://github.com/letta-ai/letta-code/pull/2021 * fix(reflection): trim launch context and clarify the system prompt by @devanshrj in https://github.com/letta-ai/letta-code/pull/2031 * test: harden mock module isolation checks by @cpacker in https://github.com/letta-ai/letta-code/pull/2033 * feat(ws): write + sync memory file command by @christinatong01 in https://github.com/letta-ai/letta-code/pull/2030 * refacto | High | 5/1/2026 |
| v0.24.7 | ## What's Changed * fix(headless): flush terminal stream-json messages by @cpacker in https://github.com/letta-ai/letta-code/pull/1975 * feat(ws): hot reload permission settings by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1970 * docs: add harness configuration builtin skill `configuring-your-harness` by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1978 * fix(dream): cap reflection startup context by @sarahwooders in https://github.com/letta-ai/letta-code/pull | High | 4/27/2026 |
| v0.23.10 | ## What's Changed * feat(channels): add Discord channel plugin by @cpfiffer in https://github.com/letta-ai/letta-code/pull/1825 * fix(tui): rename reflection to dream by @christinatong01 in https://github.com/letta-ai/letta-code/pull/1856 * feat(listener): add grep_in_files content-search command by @4shub in https://github.com/letta-ai/letta-code/pull/1857 * fix: add prepareScopedToolExecutionContext to processConversation dep array by @christinatong01 in https://github.com/letta-ai/letta-code/ | High | 4/22/2026 |
| v0.23.9 | ## What's Changed * feat(client): add x-letta-node header opt-in via LETTA_NODE env var by @jnjpng in https://github.com/letta-ai/letta-code/pull/1835 * feat: add k2.6 by @AriWebb in https://github.com/letta-ai/letta-code/pull/1851 * feat: create hidden conversations for agent-to-agent and forked-subagent paths by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1838 * feat(permissions): add cross-agent memory guard by @devanshrj in https://github.com/letta-ai/letta-code/pull/1852 * | High | 4/21/2026 |
| v0.23.8 | ## What's Changed * fix(channels): recover pending channel approvals after reconnect by @cpacker in https://github.com/letta-ai/letta-code/pull/1833 * feat(reflection): support AUTO_MEMORY model override by @cpacker in https://github.com/letta-ai/letta-code/pull/1836 * chore: bump version to 0.23.8 by @github-actions[bot] in https://github.com/letta-ai/letta-code/pull/1837 **Full Changelog**: https://github.com/letta-ai/letta-code/compare/v0.23.7...v0.23.8 | High | 4/18/2026 |
| v0.23.7 | ## What's Changed * fix(channels): handle interactive approvals in channel chats by @cpacker in https://github.com/letta-ai/letta-code/pull/1831 * fix: handle PID recycling in container scheduler lease by @cpfiffer in https://github.com/letta-ai/letta-code/pull/1808 * chore: bump version to 0.23.7 by @github-actions[bot] in https://github.com/letta-ai/letta-code/pull/1832 **Full Changelog**: https://github.com/letta-ai/letta-code/compare/v0.23.6...v0.23.7 | High | 4/17/2026 |
| v0.23.6 | ## What's Changed * fix: clarify opus 4.7 reasoning tiers by @kl2806 in https://github.com/letta-ai/letta-code/pull/1816 * Shelley/let 8514 hybrid file index directory listing by @shelleypham in https://github.com/letta-ai/letta-code/pull/1817 * fix: move 'opus' to 4.7 by @AriWebb in https://github.com/letta-ai/letta-code/pull/1818 * fix: add --no-bin-links on Windows for channel runtime installs by @4shub in https://github.com/letta-ai/letta-code/pull/1821 * Revert "fix: add --no-bin-links on W | High | 4/17/2026 |
| v0.23.5 | ## What's Changed * fix(subagent): dev should launch with text loaders for prompt files by @christinatong01 in https://github.com/letta-ai/letta-code/pull/1796 * fix(memory): separate memfs state from local checkout by @cpacker in https://github.com/letta-ai/letta-code/pull/1800 * fix(slack): hydrate prior thread context on first mention by @cpacker in https://github.com/letta-ai/letta-code/pull/1803 * fix(slack): disable outbound web client retries by @cpacker in https://github.com/letta-ai/let | High | 4/16/2026 |
| v0.23.4 | ## What's Changed * fix(channels): scope MessageChannel to bound conversations by @cpacker in https://github.com/letta-ai/letta-code/pull/1793 * chore: bump version to 0.23.4 by @github-actions[bot] in https://github.com/letta-ai/letta-code/pull/1795 **Full Changelog**: https://github.com/letta-ai/letta-code/compare/v0.23.3...v0.23.4 | High | 4/14/2026 |
| v0.23.3 | ## What's Changed * feat: make recall subagent fork parent conversation by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1787 * fix(channels): unify MessageChannel discovery by @cpacker in https://github.com/letta-ai/letta-code/pull/1788 * fix(slack): dedupe threaded mention ingress by @cpacker in https://github.com/letta-ai/letta-code/pull/1789 * fix(channels): return account snapshots before live refresh by @cpacker in https://github.com/letta-ai/letta-code/pull/1790 * fix(liste | Medium | 4/14/2026 |
| v0.23.2 | ## What's Changed * feat: indexing should initiate upon app load by @shelleypham in https://github.com/letta-ai/letta-code/pull/1785 * fix(slack): resolve Bolt App constructor from bundled runtime by @cpacker in https://github.com/letta-ai/letta-code/pull/1784 * chore: bump version to 0.23.2 by @github-actions[bot] in https://github.com/letta-ai/letta-code/pull/1786 **Full Changelog**: https://github.com/letta-ai/letta-code/compare/v0.23.1...v0.23.2 | High | 4/14/2026 |
| v0.23.1 | ## What's Changed * feat: apply real-time sync for filesystem by @shelleypham in https://github.com/letta-ai/letta-code/pull/1755 * fix(channels): restore enabled channel adapters on startup by @cpacker in https://github.com/letta-ai/letta-code/pull/1782 * fix: use correct issue title for Terminal-Bench tracker by @devanshrj in https://github.com/letta-ai/letta-code/pull/1781 * feat: add watcher for CWD auto-detection by @4shub in https://github.com/letta-ai/letta-code/pull/1778 * chore: bump ve | Medium | 4/13/2026 |
| v0.23.0 | ## What's Changed * feat: improve shell command UI remapping by @cpacker in https://github.com/letta-ai/letta-code/pull/1758 * refactor(channels): generalize core channel seams by @cpacker in https://github.com/letta-ai/letta-code/pull/1762 * fix(permissions): allow read-only shell inspection scripts by @cpacker in https://github.com/letta-ai/letta-code/pull/1766 * fix(cli): preserve shell command semantic labels across chained Bash commands by @cpacker in https://github.com/letta-ai/letta-code/ | Medium | 4/13/2026 |
| v0.22.4 | ## What's Changed * fix(auth): suppress repeated keychain read warnings on Linux by @cpacker in https://github.com/letta-ai/letta-code/pull/1663 * fix(cli): dispatch subcommands before TUI initialization by @cpfiffer in https://github.com/letta-ai/letta-code/pull/1725 * fix(server): initialize settings before telemetry in listen subcommand by @cpfiffer in https://github.com/letta-ai/letta-code/pull/1752 * feat(channels): add markdown formatting for outbound Telegram messages by @cpfiffer in http | High | 4/11/2026 |
| v0.22.3 | ## What's Changed * fix: externalize grammY from bundled CLI by @cpacker in https://github.com/letta-ai/letta-code/pull/1749 * feat(server): add OAuth device flow for headless deployments by @cpfiffer in https://github.com/letta-ai/letta-code/pull/1731 * fix(memory): unstage paths after commit hook failure by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1734 * chore: bump version to 0.22.3 by @github-actions[bot] in https://github.com/letta-ai/letta-code/pull/1750 **Full Change | Medium | 4/10/2026 |
| v0.22.2 | ## What's Changed * fix: skip YAML continuation lines in pre-commit frontmatter validator by @kuishou68 in https://github.com/letta-ai/letta-code/pull/1743 * fix: strengthen inbound channel reply prompting by @cpacker in https://github.com/letta-ai/letta-code/pull/1746 * fix(auth): clarify OAuth setup network errors by @cpacker in https://github.com/letta-ai/letta-code/pull/1747 * chore: bump version to 0.22.2 by @github-actions[bot] in https://github.com/letta-ai/letta-code/pull/1748 ## New Co | Medium | 4/10/2026 |
| v0.22.1 | ## What's Changed * chore: cleanup files by @cpacker in https://github.com/letta-ai/letta-code/pull/1742 * feat: add live websocket channel management by @cpacker in https://github.com/letta-ai/letta-code/pull/1744 * chore: bump version to 0.22.1 by @github-actions[bot] in https://github.com/letta-ai/letta-code/pull/1745 **Full Changelog**: https://github.com/letta-ai/letta-code/compare/v0.22.0...v0.22.1 | Medium | 4/10/2026 |
| v0.22.0 | ## What's Changed * feat: don't send self hosted errors to telemetry by @AriWebb in https://github.com/letta-ai/letta-code/pull/1730 * chore(codeowners): add websocket code owners by @cpacker in https://github.com/letta-ai/letta-code/pull/1732 * fix: update /empanada delivery radius from 5 to 10 miles by @cpfiffer in https://github.com/letta-ai/letta-code/pull/1733 * feat(telemetry): track reflection start/end with message id range by @sarahwooders in https://github.com/letta-ai/letta-code/pull/ | Medium | 4/10/2026 |
| v0.21.18 | ## What's Changed * fix(memfs): recover from missing cwd during memory git clone/pull by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1700 * fix: allow SDK request timeout override via LETTA_REQUEST_TIMEOUT_MS by @cpfiffer in https://github.com/letta-ai/letta-code/pull/1696 * feat(web): add history tab search filters by @kianjones9 in https://github.com/letta-ai/letta-code/pull/1681 * feat(memory-palace): show conversation source + allow commands during execution by @kianjones9 i | High | 4/8/2026 |
| v0.21.17 | ## What's Changed * fix(listen): use default task notification path for reflection subagent by @christinatong01 in https://github.com/letta-ai/letta-code/pull/1682 * feat: add per-personality default model, set kawaii to auto-chat by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1687 * fix(memfs): refresh memory git origin before push operations by @cpacker in https://github.com/letta-ai/letta-code/pull/1688 * fix(core): auto-approve memory tools and align acceptEdits by @cpacker | Medium | 4/7/2026 |
| v0.21.16 | ## What's Changed * fix(memfs): retry clone/pull on transient 52x git errors by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1675 * feat: add memory_history and memory_file_at_ref device commands by @shelleypham in https://github.com/letta-ai/letta-code/pull/1637 * fix(cli): disable auto-init for new agents by @devanshrj in https://github.com/letta-ai/letta-code/pull/1679 * chore: bump version to 0.21.16 by @github-actions[bot] in https://github.com/letta-ai/letta-code/pull/1677 | Medium | 4/6/2026 |
| v0.21.15 | ## What's Changed * fix(cli): update insufficient credits error copy by @cpacker in https://github.com/letta-ai/letta-code/pull/1672 * fix(recovery): retry formatted Cloudflare 521 errors by @cpacker in https://github.com/letta-ai/letta-code/pull/1674 * chore: bump version to 0.21.15 by @github-actions[bot] in https://github.com/letta-ai/letta-code/pull/1673 **Full Changelog**: https://github.com/letta-ai/letta-code/compare/v0.21.14...v0.21.15 | Medium | 4/6/2026 |
| v0.21.14 | ## What's Changed * fix(listener): stop sync recovery failures from spamming transcript by @cpacker in https://github.com/letta-ai/letta-code/pull/1669 * fix(listener): relay abort signals for websocket stream retries by @cpacker in https://github.com/letta-ai/letta-code/pull/1668 * chore: bump version to 0.21.14 by @github-actions[bot] in https://github.com/letta-ai/letta-code/pull/1670 **Full Changelog**: https://github.com/letta-ai/letta-code/compare/v0.21.13...v0.21.14 | Medium | 4/5/2026 |
| v0.21.13 | ## What's Changed * fix(skills): resolve memfs skill lookup in Skill tool by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1649 * fix(shell): apply agent git identity for memory-dir commits by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1640 * fix(cron): replace deprecated recursive rmdir by @cpacker in https://github.com/letta-ai/letta-code/pull/1665 * fix(listener): refresh loop status when plan file path changes by @cpacker in https://github.com/letta-ai/letta- | Medium | 4/5/2026 |
| v0.21.12 | ## What's Changed * fix(listener): include plan file path in loop state by @cpacker in https://github.com/letta-ai/letta-code/pull/1662 * fix(permissions): scope memory subagents to memory roots by @cpacker in https://github.com/letta-ai/letta-code/pull/1656 * fix(skills): add pre-commit hook guidance to working-in-parallel by @kianjones9 in https://github.com/letta-ai/letta-code/pull/1655 * chore: bump version to 0.21.12 by @github-actions[bot] in https://github.com/letta-ai/letta-code/pull/166 | Medium | 4/4/2026 |
| v0.21.11 | ## What's Changed * fix(listener): preserve websocket loop error details by @carenthomas in https://github.com/letta-ai/letta-code/pull/1650 * fix(listener): unwind hidden approvals after interrupt by @cpacker in https://github.com/letta-ai/letta-code/pull/1657 * fix(cli): preserve conversation context window on reasoning updates by @jnjpng in https://github.com/letta-ai/letta-code/pull/1652 * revert: "fix(cli): preserve conversation context window on reasoning updates" by @cpacker in https://gi | Medium | 4/4/2026 |
| v0.21.10 | ## What's Changed * fix(ci): restore npm trusted publishing workflow path by @cpacker in https://github.com/letta-ai/letta-code/pull/1635 * fix(context_doctor): align terminology with context constitution by @devanshrj in https://github.com/letta-ai/letta-code/pull/1611 * feat(init): Update init skill by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1609 * fix(ci): skip heavy jobs for version bump releases by @cpacker in https://github.com/letta-ai/letta-code/pull/1636 * fix(ci): | Medium | 4/3/2026 |
| v0.21.9 | ## What's Changed * chore: bump version to 0.21.8 by @github-actions[bot] in https://github.com/letta-ai/letta-code/pull/1630 * feat(listen): Add websocket approval suggestion support by @cpacker in https://github.com/letta-ai/letta-code/pull/1629 * fix(ci): publish releases from merged main commits by @cpacker in https://github.com/letta-ai/letta-code/pull/1631 * chore: bump version to 0.21.9 by @github-actions[bot] in https://github.com/letta-ai/letta-code/pull/1634 **Full Changelog**: https | Medium | 4/2/2026 |
| v0.21.8 | Changes from 0.21.7 to 0.21.8 ## What's Changed * feat: show provider status page links on downstream LLM errors by @cpacker in https://github.com/letta-ai/letta-code/pull/1523 * fix(cli): allow forking default conversation with agent_id param and move to using the SDK by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1524 * Shub/fix indexing 1 by @4shub in https://github.com/letta-ai/letta-code/pull/1527 * feat: add baseten kimi by @AriWebb in https://github.com/letta-ai/letta-c | Medium | 4/2/2026 |
| v0.21.7 | Changes from 0.21.6 to 0.21.7 ## What's Changed * feat: show provider status page links on downstream LLM errors by @cpacker in https://github.com/letta-ai/letta-code/pull/1523 * fix(cli): allow forking default conversation with agent_id param and move to using the SDK by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1524 * Shub/fix indexing 1 by @4shub in https://github.com/letta-ai/letta-code/pull/1527 * feat: add baseten kimi by @AriWebb in https://github.com/letta-ai/letta-c | Medium | 4/1/2026 |
| v0.21.6 | Changes from 0.21.5 to 0.21.6 ## What's Changed * feat: show provider status page links on downstream LLM errors by @cpacker in https://github.com/letta-ai/letta-code/pull/1523 * fix(cli): allow forking default conversation with agent_id param and move to using the SDK by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1524 * Shub/fix indexing 1 by @4shub in https://github.com/letta-ai/letta-code/pull/1527 * feat: add baseten kimi by @AriWebb in https://github.com/letta-ai/letta-c | Medium | 4/1/2026 |
| v0.21.5 | Changes from 0.21.4 to 0.21.5 ## What's Changed * feat: show provider status page links on downstream LLM errors by @cpacker in https://github.com/letta-ai/letta-code/pull/1523 * fix(cli): allow forking default conversation with agent_id param and move to using the SDK by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1524 * Shub/fix indexing 1 by @4shub in https://github.com/letta-ai/letta-code/pull/1527 * feat: add baseten kimi by @AriWebb in https://github.com/letta-ai/letta-c | Medium | 3/31/2026 |
| v0.21.4 | Changes from 0.21.3 to 0.21.4 ## What's Changed * feat: show provider status page links on downstream LLM errors by @cpacker in https://github.com/letta-ai/letta-code/pull/1523 * fix(cli): allow forking default conversation with agent_id param and move to using the SDK by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1524 * Shub/fix indexing 1 by @4shub in https://github.com/letta-ai/letta-code/pull/1527 * feat: add baseten kimi by @AriWebb in https://github.com/letta-ai/letta-c | Medium | 3/30/2026 |
| v0.21.3 | Changes from 0.21.2 to 0.21.3 ## What's Changed * feat: show provider status page links on downstream LLM errors by @cpacker in https://github.com/letta-ai/letta-code/pull/1523 * fix(cli): allow forking default conversation with agent_id param and move to using the SDK by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1524 * Shub/fix indexing 1 by @4shub in https://github.com/letta-ai/letta-code/pull/1527 * feat: add baseten kimi by @AriWebb in https://github.com/letta-ai/letta-c | Medium | 3/30/2026 |
| v0.21.2 | Changes from 0.21.1 to 0.21.2 ## What's Changed * feat: show provider status page links on downstream LLM errors by @cpacker in https://github.com/letta-ai/letta-code/pull/1523 * fix(cli): allow forking default conversation with agent_id param and move to using the SDK by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1524 * Shub/fix indexing 1 by @4shub in https://github.com/letta-ai/letta-code/pull/1527 * feat: add baseten kimi by @AriWebb in https://github.com/letta-ai/letta-c | Medium | 3/29/2026 |
| v0.21.1 | Changes from 0.21.0 to 0.21.1 ## What's Changed * feat: show provider status page links on downstream LLM errors by @cpacker in https://github.com/letta-ai/letta-code/pull/1523 * fix(cli): allow forking default conversation with agent_id param and move to using the SDK by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1524 * Shub/fix indexing 1 by @4shub in https://github.com/letta-ai/letta-code/pull/1527 * feat: add baseten kimi by @AriWebb in https://github.com/letta-ai/letta-c | Medium | 3/27/2026 |
| v0.21.0 | Changes from 0.20.0 to 0.21.0 ## What's Changed * feat: show provider status page links on downstream LLM errors by @cpacker in https://github.com/letta-ai/letta-code/pull/1523 * fix(cli): allow forking default conversation with agent_id param and move to using the SDK by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1524 * Shub/fix indexing 1 by @4shub in https://github.com/letta-ai/letta-code/pull/1527 * feat: add baseten kimi by @AriWebb in https://github.com/letta-ai/letta-c | Medium | 3/27/2026 |
| v0.19.11 | ## What's Changed * feat: show provider status page links on downstream LLM errors by @cpacker in https://github.com/letta-ai/letta-code/pull/1523 * fix(cli): allow forking default conversation with agent_id param and move to using the SDK by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1524 * Shub/fix indexing 1 by @4shub in https://github.com/letta-ai/letta-code/pull/1527 * feat: add baseten kimi by @AriWebb in https://github.com/letta-ai/letta-code/pull/1529 * fix(listener): s | Medium | 3/27/2026 |
| v0.19.10 | Changes from 0.19.9 to 0.19.10 ## What's Changed * fix(listener): stop approval replay after interrupt by @cpacker in https://github.com/letta-ai/letta-code/pull/1521 **Full Changelog**: https://github.com/letta-ai/letta-code/compare/v0.19.9...v0.19.10 | Medium | 3/25/2026 |
| v0.19.9 | Changes from 0.19.8 to 0.19.9 ## What's Changed * feat: add otid to request_start/ok/error logs by @carenthomas in https://github.com/letta-ai/letta-code/pull/1506 * fix: don't finalize streaming line on error when resume will follow by @carenthomas in https://github.com/letta-ai/letta-code/pull/1507 * feat: add secret command by @AriWebb in https://github.com/letta-ai/letta-code/pull/1435 * fix: restore interactive slash bypass while agent is busy by @kianjones9 in https://github.com/letta-ai | Medium | 3/25/2026 |
| v0.19.8 | Changes from 0.19.7 to 0.19.8 ## What's Changed * fix(stream): dedup replayed seq_id chunks across retries by @carenthomas in https://github.com/letta-ai/letta-code/pull/1478 * fix: error string matching for retry by @carenthomas in https://github.com/letta-ai/letta-code/pull/1487 * feat: disable sdk timeout by @carenthomas in https://github.com/letta-ai/letta-code/pull/1490 * feat(cli): add /doctor command for memory context health check by @sarahwooders in https://github.com/letta-ai/letta-c | Medium | 3/24/2026 |
| v0.19.7 | Changes from 0.19.6 to 0.19.7 ## What's Changed * feat: allow users to set cwd by @4shub in https://github.com/letta-ai/letta-code/pull/1480 * fix(memfs): collapse large dirs in reflection snapshot tree by @cpfiffer in https://github.com/letta-ai/letta-code/pull/1481 * fix(memory): add pre-commit guard to validate skill formatting by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1482 * refactor(skill): remove hard-coded file count/size targets from initi… by @kl2806 in https://g | Medium | 3/23/2026 |
| v0.19.6 | Changes from 0.19.5 to 0.19.6 ## What's Changed * feat: add m2.7 by @AriWebb in https://github.com/letta-ai/letta-code/pull/1453 * feat(new): accept optional conversation name argument and polish `/resume` results by @kianjones9 in https://github.com/letta-ai/letta-code/pull/1451 * feat(search): default to current agent scope by @kianjones9 in https://github.com/letta-ai/letta-code/pull/1450 * fix: resume project-specific conversation on bare `letta` startup by @devanshrj in https://github.com | Low | 3/20/2026 |
| v0.19.5 | Changes from 0.19.4 to 0.19.5 ## What's Changed * feat(resume): sort conversations by most recent activity by @kianjones9 in https://github.com/letta-ai/letta-code/pull/1444 * fix: centralize directory and memfs cap tuning by @cpfiffer in https://github.com/letta-ai/letta-code/pull/1377 * fix: respect LETTA_DEBUG env var if set by @kianjones9 in https://github.com/letta-ai/letta-code/pull/1452 **Full Changelog**: https://github.com/letta-ai/letta-code/compare/v0.19.4...v0.19.5 | Low | 3/19/2026 |
| v0.19.4 | Changes from 0.19.3 to 0.19.4 ## What's Changed * fix: fall back to node-pty when Bun is not defined (Electron/Node.js) by @4shub in https://github.com/letta-ai/letta-code/pull/1446 * fix(tools): re-enable memory tool in default toolsets by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1447 * fix(listener): drain queued turns during approval reentry by @cpacker in https://github.com/letta-ai/letta-code/pull/1448 **Full Changelog**: https://github.com/letta-ai/letta-code/compar | Low | 3/19/2026 |
| v0.19.3 | Changes from 0.19.2 to 0.19.3 ## What's Changed * fix(listener): restore desktop permission mode binding for default scope by @cpacker in https://github.com/letta-ai/letta-code/pull/1432 * feat: add zai coding plan byok by @AriWebb in https://github.com/letta-ai/letta-code/pull/1434 * fix(listener): emit corrected device status after permission mode syn… by @4shub in https://github.com/letta-ai/letta-code/pull/1437 * fix(approval): normalize approved client tool results by @cpacker in https:// | Low | 3/19/2026 |
| v0.19.2 | Changes from 0.19.1 to 0.19.2 ## What's Changed * fix(tui): reduce flicker with post-highlight clipping in live previews by @cpacker in https://github.com/letta-ai/letta-code/pull/1423 * chore: default to auto model instead of sonnet by @sarahwooders in https://github.com/letta-ai/letta-code/pull/1429 * fix: wire terminal events through V2 listener [LET-7999] by @4shub in https://github.com/letta-ai/letta-code/pull/1430 * fix(permissions): require approval for ExitPlanMode in bypass mode by @d | Low | 3/18/2026 |
| v0.19.1 | Changes from 0.19.0 to 0.19.1 ## What's Changed * fix(auth): update setup login copy and static auth logo by @cpacker in https://github.com/letta-ai/letta-code/pull/1421 * feat: add GPT-5.4 mini and nano model presets by @kl2806 in https://github.com/letta-ai/letta-code/pull/1422 * fix(subagents): handle CRLF/BOM frontmatter for custom agent files by @devanshrj in https://github.com/letta-ai/letta-code/pull/1424 * feat(listen): isolate permission mode per conversation [LET-8050] by @4shub in h | Low | 3/18/2026 |
| v0.19.0 | Changes from 0.18.4 to 0.19.0 ## What's Changed * fix: index only the user-selected file/dir from @ autocomplete by @shelleypham in https://github.com/letta-ai/letta-code/pull/1388 * fix: TB regression workflow fixes (venv, Modal, warnings) by @devanshrj in https://github.com/letta-ai/letta-code/pull/1385 * fix: improve bash-mode backspace exit behavior by @jnjpng in https://github.com/letta-ai/letta-code/pull/1386 * feat: TB regression — full runs, xhigh models, baselines, and report improvem | Low | 3/17/2026 |
| v0.18.4 | Changes from 0.18.3 to 0.18.4 ## What's Changed * fix: Default conversation system prompt recompilation routing [LET-7976] by @devanshrj in https://github.com/letta-ai/letta-code/pull/1373 * fix(listen): normalize inbound user image payloads by @cpacker in https://github.com/letta-ai/letta-code/pull/1374 * chore: Clean up system prompts directory [LET-7937] by @devanshrj in https://github.com/letta-ai/letta-code/pull/1378 * feat: change lettaignore logic by @shelleypham in https://github.com/l | Low | 3/13/2026 |
| v0.18.3 | Changes from 0.18.2 to 0.18.3 ## What's Changed * feat: allow env to be shared by current directory by @4shub in https://github.com/letta-ai/letta-code/pull/1355 * fix: preserve context window during resume preset refresh by @cpfiffer in https://github.com/letta-ai/letta-code/pull/1353 * feat: file indexing by @shelleypham in https://github.com/letta-ai/letta-code/pull/1352 * fix: update args fallback by @carenthomas in https://github.com/letta-ai/letta-code/pull/1357 * feat: add strict to upd | Low | 3/13/2026 |
| v0.18.2 | Changes from 0.18.1 to 0.18.2 ## What's Changed * fix: guard against undefined input in vendored Ink handleData on Bun/Linux by @cpacker in https://github.com/letta-ai/letta-code/pull/1351 **Full Changelog**: https://github.com/letta-ai/letta-code/compare/v0.18.1...v0.18.2 | Low | 3/11/2026 |
| v0.18.1 | Changes from 0.18.0 to 0.18.1 ## What's Changed * fix(tui): cache plan path before ExitPlanMode arrives by @jnjpng in https://github.com/letta-ai/letta-code/pull/1337 * fix(tui): clean up token counting in subagent display by @cpacker in https://github.com/letta-ai/letta-code/pull/1344 * fix(tui): auto-approve plan mode in YOLO by @jnjpng in https://github.com/letta-ai/letta-code/pull/1345 * fix(tui): trim leading space on word-wrapped continuation lines by @cpacker in https://github.com/letta | Low | 3/11/2026 |