Skip to content

Releases: simonpcouch/chores

chores 0.3.1

04 Mar 22:26

Choose a tag to compare

  • Adjusted the recommended models in documentation.

    • Anthropic: Claude Sonnet 3.7 -> Claude Haiku 4.5.
    • OpenAI: Updated documentation to reflect GPT 4.1 and GPT 4.1 mini model names.
    • Google: Added Gemini 3 Flash as a recommended model.
  • prompt_new() gains an overwrite argument. When overwrite = TRUE,
    an existing prompt for the given chore will be overwritten with the provided contents (#103).

chores 0.3.0

09 Dec 21:36
e4a41b6

Choose a tag to compare

  • Adjusted the default recommended models in documentation (#98).

    • Local models: At the time of chores' last release, open-weights models that could reasonably run on a high-end laptop didn't do the trick for powering chores helpers. The Qwen3 4B Instruct 2507 release changed this; the model provides high-accuracy responses with low latency on high-end laptops. See the "Getting started with chores" vignette for more information.
    • OpenAI: GPT-4o and GPT-4o-mini transitioned to GPT 4.1 and GPT 4.1 mini, respectively.
    • Anthropic: Claude Sonnet 3.5 -> Claude Sonnet 3.7. Note that Sonnet 3.7 is not the newest available minimally-thinking model from Anthropic. The newer models like Sonnet and Haiku 4.5 tend to introduce backticks in responses and struggle to strictly follow the requested output format.
  • 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).

chores 0.2.0

30 Apr 15:11
9f47541

Choose a tag to compare

  • 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).

chores 0.1.0

21 Feb 14:04
7d56f6a

Choose a tag to compare

  • Initial CRAN submission.

Notable changes pre-CRAN submission

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.

  • Up until CRAN submission, custom prompts were stored in a default
    user-level directory ~/.config/chores (which could be changed using
    the .chores_dir option). CRAN doesn't allow for default behavior that writes
    to the user's filespace, so the package will now error at prompt_new() if
    there's no .chores_dir option set.