← Package directory
Available on winget

Install Letta Code

The memory-first coding agent

Install with winget
winget install --id Letta.LettaCode
Upgrade
winget upgrade --id Letta.LettaCode
Uninstall
winget uninstall --id Letta.LettaCode

About Letta Code

Letta Code is a memory-first coding harness, designed for long-lived agents that can learn from experience. Instead of working in independent sessions, you work with a persisted agent whose memory is portable across models (Claude, GPT, Gemini, GLM, Kimi, and more).

What's new in 0.29.12

What's Changed - chore: upgrade pi-ai for Claude Opus 5 by @sarahwooders in https://github.com/letta-ai/letta-code/pull/3550 - fix(channels): route shared reload command by @overlord-letta in https://github.com/letta-ai/letta-code/pull/3528 - fix(slack): avoid repeated bot thread context by @devanshrj in https://github.com/letta-ai/letta-code/pull/3551 - fix(channels): compact persisted channel reminders by @devanshrj in https://github.com/letta-ai/letta-code/pull/3552 - fix(slack): enforce loading message limit by @cpacker in https://github.com/letta-ai/letta-code/pull/3553 - feat(mcp): add per-agent client-side MCP with OAuth by @letta-integration[bot] in https://github.com/letta-ai/letta-code/pull/3549 - fix(mcp): publish reusable client declarations by @letta-integration[bot] in https://github.com/letta-ai/letta-code/pull/3557 - chore: bump version to 0.29.12 by @github-actions[bot] in https://github.com/letta-ai/letta-code/pull/3558 Full Changelog: https://github.com/letta-ai/letta-code/compare/v0.29.11...v0.29.12

Read release notes

Version history

Version Updated Notes
0.29.12 Unknown What's Changed - chore: upgrade pi-ai for Claude Opus 5 by @sarahwooders in https://github.com/letta-ai/letta-code/pull/3550 - fix(channels): route shared reload command by @overlord-letta in https://github.com/letta-ai/...
0.28.17 Unknown What's Changed - fix(providers): expose base URL field for local endpoint providers by @cpacker in https://github.com/letta-ai/letta-code/pull/3456 - fix(cli): point users at --backend local for local-only connect provid...
0.28.12 Unknown What's Changed - fix(headless): rebuild stale approval input on resync by @jnjpng in https://github.com/letta-ai/letta-code/pull/3403 - fix(slack): hide generic tool activity from status by @cpacker in https://github.com...
0.28.11 Unknown What's Changed - fix(slack): stop download-file from wedging turns on slow or stalled transfers by @cpacker in https://github.com/letta-ai/letta-code/pull/3382 - fix(models): disable Kimi K3 reasoning controls by @just-c...
0.28.4 Unknown What's Changed - fix(memfs): never gpg-sign harness git commits in memory repos by @cpacker in https://github.com/letta-ai/letta-code/pull/3322 - fix(local): use native model inventory with curated presets [LET-9598] by...
0.28.0 Unknown What's Changed - refactor(slack): progress rides the assistant status line; markdown replies with web footnotes [LET-9559] by @cpacker in https://github.com/letta-ai/letta-code/pull/3279 - feat(reflection): a/b eval setu...
0.27.29 Unknown What's Changed - fix: retire the node experiment (x-letta-node from LETTA_NODE env only) by @cpacker in https://github.com/letta-ai/letta-code/pull/3262 - fix(channels): keep tool error output out of progress row titles...
0.27.11 Unknown What's Changed - fix(agent): accept canonical image content in tool-return type guard by @tanner-caffrey in https://github.com/letta-ai/letta-code/pull/2943 - feat(mods): wire mod events through listener tool preparation...
0.27.9 Unknown What's Changed - fix: bump pi-ai for Fable local backend support by @overlord-letta in https://github.com/letta-ai/letta-code/pull/2806 - docs: fix README feature links by @overlord-letta in https://github.com/letta-ai/l...
0.27.8 Unknown What's Changed - fix(security): 2 improvements across 1 files by @tomaioo in https://github.com/letta-ai/letta-code/pull/2577 - fix(skills): keep bundled scripts self-contained by @cpacker in https://github.com/letta-ai/...
0.27.7 Unknown What's Changed - fix(permissions): honor settings permission mode by @cpacker in https://github.com/letta-ai/letta-code/pull/2768 - fix(local): sync model token limits from pi catalog by @cpacker in https://github.com/le...
0.27.5 Unknown What's Changed - feat(extensions): coalesce runtime diagnostics writes by @carenthomas in https://github.com/letta-ai/letta-code/pull/2727 - fix(agent): preserve Letta Code origin tags by @sarahwooders in https://github....
0.27.3 Unknown What's Changed - fix(tui): remove orphaned tool calls at end_turn instead of showing "Cancelled" by @carenthomas in https://github.com/letta-ai/letta-code/pull/2699 - feat(agent): version managed system prompts by @sarah...
0.26.5 Unknown What's Changed - docs(tools): clarify ViewImage description by @kl2806 in https://github.com/letta-ai/letta-code/pull/2601 - fix(toolsets): use Codex tools for local ChatGPT OAuth models by @cpacker in https://github.com...
0.25.10 Unknown 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...
0.25.8 Unknown 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 @carentho...
0.24.13 Unknown What's Changed - feat(channel): support dynamic channel plugins by @cpacker in #2021 - fix(reflection): trim launch context and clarify the system prompt by @devanshrj in #2031 - test: harden mock module isolation checks...