Adjusted the recommended models in documentation.
prompt_new() gains an overwrite argument. When overwrite = TRUE,
an existing prompt for the given chore will be overwritten with the provided contents (#103).
Adjusted the default recommended models in documentation (#98).
Reduced the cli helper prompt from ~4,100 to ~2,300 tokens for compatibility with default context window lenth of ollama and LM Studio, 4096. Previously, those applications would silently truncate the prompt, resulting in the model not receiving access to critical instructions about response format and appearing to ignore it entirely. The other default helper prompts were already well below the default limit.
Introduced chores.chat and chores.dir as the preferred option names, following standard R package option naming conventions. The legacy options .chores_chat and .chores_dir continue to work and will not be deprecated (#99).
Bumped the minimum version of the streamy package to 0.2.1, which will resolve an issue where some newlines were removed from multi-line file writes in Positron (#96).
In the helper selection app, clicking a helper in the selectize will now submit the selected choice. Previously, the user would have to click the helper to select it and then submit the selected choice by pressing Return/Enter (#87). This change aligns behavior in the UI when selecting helpers with a mouse click versus the up/down arrows.
Users no longer need to call directory_load() manually after adding new
custom helpers; the helper selection app will refresh the list of available
helpers on app launch (#88).
Early adopters of the package will note a few changes made shortly before the release of the package to CRAN:
The package was renamed from pal to chores, and the grammar surrounding the package shifted a bit in the process: "a pal from the pal package with a given role" is now "a helper from the chores package for a given chore."
The configuration options .pal_fn and .pal_args have been
transitioned to one option, .chores_chat. That option takes an ellmer Chat,
e.g. options(.chores_chat = ellmer::chat_claude()).
There is no longer a default ellmer model. Early in the development
of chores, if you had an ANTHROPIC_API_KEY set up, the addin would
"just work." While this was convenient for Claude users, but it means that the
package spends money on the users behalf without any explicit opt-in.