Releases: plandex-ai/plandex
Releases · plandex-ai/plandex
Release server/v1.0.0
☄️ gpt-4o is the real deal for coding
- gpt-4o, OpenAI's latest model, is the new default model for Plandex. 4o is much better than gpt-4-turbo (the previous default model) in early testing for coding tasks and agent workflows.
- If you have not used
plandex set-model
orplandex set-model default
previously to set a custom model, you will now be use gpt-4o by default. If you have used one of those commands, useplandex set-model
orplandex set-model default
and select the newgpt-4o-latest
model-pack to upgrade.
🛰️ Reliability improvements: 90% reduction in syntax errors in early testing
- Automatic syntax and logic validation with an auto-correction step for file updates.
- Significantly improves reliability and reduces syntax errors, mistaken duplication or removal of code, placeholders that reference other code and other similar issues.
- With a set of ~30 internal evals spanning 5 common languages, syntax errors were reduced by over 90% on average with gpt-4o.
- Logical errors are also reduced (I'm still working on evals for those to get more precise numbers).
- Plandex is now much better at handling large files and plans that make many updates to the same file. Both could be problematic in previous versions.
- Plandex is much more resilient to incorrectly labelled file blocks when the model uses the file label format incorrectly to explain something rather than for a file. i.e. "Run this script" and then a bash script block. Previously Plandex would mistakenly create a file called "Run this script". It now ignores blocks like these.
🧠 Improvements to core planning engine: better memory and less laziness allow you to accomplish larger and more complex tasks without errors or stopping early
- Plandex is now much better at working through long plans without skipping tasks, repeating tasks it's already done, or otherwise losing track of what it's doing.
- Plandex is much less likely to leave TODO placeholders in comments instead of fully completing a task, or to otherwise leave a task incomplete.
- Plandex is much less likely to end a plan before all tasks are completed.
🏎️ Performance improvements: 2x faster planning and execution
- gpt-4o is twice as fast as gpt-4-turbo for planning, summarization, builds, and more.
- If you find it's streaming too fast and you aren't able to review the output, try using the
--stop / -s
flag withplandex tell
orplandex continue
. It will stop the plan after a single response so you can review it before proceeding. Useplandex continue
to proceed with the plan once you're ready. - Speaking of which, if you're in exploratory mode and want to use less tokens, you can also use the
--no-build / -n
flag withplandex tell
andplandex continue
. This prevents Plandex from building files until you runplandex build
manually.
🪙 2x cost reduction: gpt-4o is half the per-token price of gpt-4-turbo
- For the same quantity of tokens, with improved quality and 2x speed, you'll pay half-price.
👩💻 New plandex-dev
and pdxd
alias in development mode
- In order to avoid conflicts/overwrites with the
plandex
CLI andpdx
alias, a newplandex-dev
command andpdxd
alias have been added in development mode.
🛠️ Bug fixes
- Fix for a potential panic during account creation (#76)
- Fixes for some account creation flow issues (#106)
- Fix for occasional "Stream buffer tokens too high" error (#34).
- Fix for potential panic when updating model settings. Might possibly be the cause of or somehow related to #121 but hard to be sure (maybe AWS was just being flakey).
- Attempted fix for rare git repo race condition @jesseswell_1 caught that gives error ending with:
Exit status 128, output
* Fatal: unable to write new_index file
📚 Readme updates
- The readme has been revamped to be more informative and easier to navigate.
🏡 Easy self-contained startup script for local mode and self-hosting
git clone https://github.com/plandex-ai/plandex.git
cd plandex/app
./start_local.sh
- Sincere thanks to @ZanzyTHEbar aka @daofficialwizard on Discord who wrote the script! 🙏🙏
🚀 Upgrading
- As always, cloud has already been updated with the latest version. To upgrade the CLI, run any
plandex
command (likeplandex version
orplandex help
or whatever command you were about to run anyway 🙂)
📆 Join me for office hours every Friday 12:30-1:30pm PST in Discord, starting May 17th
- I'll be available by voice and text chat to answer questions, talk about the new version, and hear about your use cases. Come on over and hang out!
- Join the discord to get a reminder when office hours are starting: https://discord.gg/plandex-ai
Release cli/v1.0.0
- CLI updates for the 1.0.0 release
- See the server/v1.0.0 release notes for full details
Release server/v0.9.1
- Improvements to auto-continue check. Plandex now does a better job determining whether a plan is finished or should automatically continue by incorporating the either the latest plan summary or the previous conversation message (if the summary isn't ready yet) into the auto-continue check. Previously the check was using only the latest conversation message.
- Fix for 'exit status 128' errors in a couple of edge case scenarios.
- Data that is piped into
plandex load
is now automatically given a name incontext ls
via a call to thenamer
role model (previously it had no name, making multiple pipes hard to disambiguate).
Release cli/v0.9.1
- Fix for occasional stream TUI panic during builds with long file paths (#105)
- If auto-upgrade fails due to a permissions issue, suggest re-running command with
sudo
(#97 - thanks @kalil0321!) - Include 'openrouter' in list of model providers when adding a custom model (#107)
- Make terminal prompts that shouldn't be optional (like the Base URL for a custom model) required across the board (#108)
- Data that is piped into
plandex load
is now automatically given a name inplandex ls
via a call to thenamer
role model (previously it had no name, making multiple pipes hard to disambiguate). - Still show the '(r)eject file' hotkey in the
plandex changes
TUI when the current file isn't scrollable.
Release server/v0.9.0
- Support for custom models, model packs, and default models (see CLI 0.9.0 release notes for details).
- Better accuracy for updates to existing files.
- Plandex is less likely to screw up braces, parentheses, and other code structures.
- Plandex is less likely to mistakenly remove code that it shouldn't.
- Plandex is now much better at working through very long plans without skipping tasks, repeating tasks it's already done, or otherwise losing track of what it's doing.
- Server-side support for
plandex diff
command to show pending plan changes ingit diff
format. - Server-side support for archiving and unarchiving plans.
- Server-side support for
plandex summary
command. - Server-side support for
plandex rename
command. - Descriptive top-line for
plandex apply
commit messages instead of just "applied pending changes". - Better message in
plandex log
when a single piece of context is loaded or updated. - Fixes for some rare potential deadlocks and conflicts when building a file or stopping astream.
Release cli/v0.9.0
Major file update improvements 📄
- Much better accuracy for updates to existing files.
- Plandex is much less likely to screw up braces, parentheses, and other code structures.
- Plandex is much less likely to mistakenly remove code that it shouldn't.
Major improvements to long plans with many steps 🛤️
- Plandex's 'working memory' has been upgraded. It is now much better at working through very long plans without skipping tasks, repeating tasks it's already done, or otherwise losing track of what it's doing.
'plandex diff' command ⚖️
- New
plandex diff
command shows pending plan changes ingit diff
format.
Plans can be archived 🗄️
- If you aren't using a plan anymore, but you don't want to delete it, you can now archive it.
- Use
plandex archive
(orplandex arc
for short) to archive a plan. - Use
plandex plans --archived
(orplandex plans -a
) to see archived plans in the current directory. - Use
plandex unarchive
(orplandex unarc
) to restore an archived plan.
Custom models!! 🧠
Use Plandex with models from OpenRouter, Together.ai, and more
- Use
plandex models add
to add a custom model and use any provider that is compatible with OpenAI, including OpenRouter.ai, Together.ai, Ollama, Replicate, and more. - Anthropic Claude models are available via OpenRouter.ai. Google Gemini 1.5 preview is also available on OpenRouter.ai but was flakey in initial testing. Tons of open source models are available on both OpenRouter.ai and Together.ai, among other providers.
- Some built-in models and model packs (see 'Model packs' below) have been included as a quick way to try out a few of the more powerful model options. Just use
plandex set-model
to try these. - You can use a custom model you've added with
plandex set-model
, or add it to a model pack (see 'Model packs' below) withplandex model-packs create
. Delete custom models you've added withplandex models delete
. - The roles a custom model can be used for depend on its OpenAI compatibility.
- Each model provider has an
ApiKeyEnvVar
associated with it, likeOPENROUTER_API_KEY
,TOGETHER_API_KEY
, etc. You will need to have the appropriate environment variables set with a valid api key for each provider that you're using. - Because all of Plandex's prompts have been tested against OpenAI models, support for new models should be considered experimental.
- If you find prompting patterns that are effective for certain models, please share them on Discord (https://discord.gg/plandex-ai) or GitHub (https://github.com/plandex-ai/plandex/discussions) and they may be included in future releases.
Model packs 🎛️
- Instead of changing models for each role one by one, a model packs let you switch out all roles at once.
- Use
plandex model-packs create
qto create your own model packs. - Use
plandex model-packs
to list built-in and custom model packs. - Use
plandex set-model
to load a model pack. - Use
plandex model-packs delete
to remove a custom model pack.
Model defaults ⚙️
- Instead of only changing models on a per-plan basis, you can set model defaults that will apply to all new plans you start.
- Use
plandex models default
to see default model settings andplandex set-model default
to update them.
More commands 💻
plandex summary
to see the latest plan summaryplandex rename
to rename the current plan
Quality of life improvements 🧘♀️
- Descriptive top-line for
plandex apply
commit messages instead of just "applied pending changes". - Better message in
plandex log
when a single piece of context is loaded or updated. - Abbreviate really long file paths in
plandex ls
. - Changed
OPENAI_ENDPOINT
env var toOPENAI_API_BASE
, which is more standardized.OPENAI_ENDPOINT
is still quietly supported. - guides/ENV_VARS.md now lists environment variables you can use with Plandex (and a few convenience variables have been addded) - thanks @knno! → #94
Bug fixes 🐞
- Fix for potential crash in
plandex changes
TUI. - Fixes for some rare potential deadlocks and conflicts when building a file or stopping a plan stream.
Release server/v0.8.4
- Add support for new OpenAI models:
gpt-4-turbo
andgpt-4-turbo-2024-04-09
- Make
gpt-4-turbo
model the new default model for the planner, builder, and auto-continue roles -- in testing it seems to be better at reasoning and significantly less lazy than the previous default for these roles,gpt-4-turbo-preview
-- any plan that has not previously had its model settings modified will now usegpt-4-turbo
by default (those that have been modified will need to be updated manually) -- remember that you can always useplandex set-model
to change models for your plans - Fix for handling files that are loaded into context and later deleted from the file system (#47)
- Handle file paths with ### prefixes (#77)
- Fix for occasional race condition during file builds that causes error "Fatal: Unable to write new index file"
Release cli/v0.8.3
- Add support for new OpenAI models:
gpt-4-turbo
andgpt-4-turbo-2024-04-09
- Make
gpt-4-turbo
model the new default model for the planner, builder, and auto-continue roles -- in testing it seems to be better at reasoning and significantly less lazy than the previous default for these roles,gpt-4-turbo-preview
-- any plan that has not previously had its model settings modified will now usegpt-4-turbo
by default (those that have been modified will need to be updated manually) -- remember that you can always useplandex set-model
to change models for your plans - Fix for
set-model
command argument parsing (#75) - Fix for panic during plan stream when a file name's length exceeds the terminal width (#84)
- Fix for handling files that are loaded into context and later deleted from the file system (#47)
- Fix to prevent loading of duplicate files, directory trees, or urls into context (#57)
Release server/v0.8.3
- SMTP_FROM environment variable for setting from address when self-hosting and using SMTP (#39)
- Add support for OPENAI_ENDPOINT environment variable for custom OpenAI endpoints (#46)
- Add support for OPENAI_ORG_ID environment variable for setting the OpenAI organization ID when using an API key with multiple OpenAI organizations.
- Fix for unhelpful "Error getting plan, context, convo, or summaries" error message when OpenAI returns an error for invalid API key or insufficient credits (#32)
Release cli/v0.8.2
- Fix root level --help/-h to use custom help command rather than cobra's help message (re: #25)
- Include 'survey' fork (https://github.com/plandex-ai/survey) as a proper module instead of a local reference (#37)
- Add support for OPENAI_ENDPOINT environment variable for custom OpenAI endpoints (#46)
- Add support for OPENAI_ORG_ID environment variable for setting the OpenAI organization ID when using an API key with multiple OpenAI organizations.