Skip to content

v0.16.0

Latest

Choose a tag to compare

@IMNMV IMNMV released this 14 Sep 05:47
· 3 commits to main since this release

R package 0.16.0 · clauder-mcp 0.16.0 · clauder 0.1.0

Agents can now work in a live Python session as well as an R one, and both
halves work in Positron as well as RStudio.

Python sessions

import clauder
clauder.start()

The agent executes code in that session, where your loaded dataframes and
fitted models already are, and sees the figures it draws. Works in Positron,
Jupyter, VS Code, or a bare REPL. clauder is a separate PyPI package, so R
users never install it and Python users never need R.

Sessions announce their language, so one bridge reaches both and an agent picks
either by name:

Active sessions (2):
  analysis [python] — port 8790, pid 8088, started 2026-09-14T10:50:09
  modelling [r] — port 8787, pid 84615, started 2026-09-14T09:12:44

A Python session gets the live environment, plots, logging with attribution,
and multi-agent coordination. It does not get the editor or the manuscript
audit tools, which drive the IDE through rstudioapi and have no Python
equivalent. The 27 tools that run R code now say so plainly instead of
returning a Python syntax error. Full matrix in the README.

Positron

R in Positron needs nothing special, but three things were stopping it, and two
of them also affected RStudio.

  • Editor tools required a non-empty ctx$id. Positron returns a usable
    editor context whose id is NULL, and every rstudioapi call here treats
    id = NULL as the current document, so all four editor tools refused to work
    there. Where RStudio fills an id in, behaviour is unchanged.
  • A supplied path could not open a file into an empty editor, because the
    context check ran first. It now opens the path, then reads the context.
  • documentOpen falls back to navigateToFile, which Positron implements.

suggest_edit stages the change unsaved rather than using
showEditSuggestion(), which Positron does not implement. Accept by saving,
reject with undo.

Fixes

  • search_project_code could hang R for minutes. It walked root_dir
    recursively with no bound, and root_dir defaults to ".". In a session
    whose working directory was the home folder it read every R file on the
    machine, with no output and no way to tell what was wrong. It now refuses the
    home directory and / rather than walking them by accident, skips vendored
    directories, and caps the scan with a partial-search notice. Pass
    allow_wide = TRUE to do it deliberately.
  • The coordination roster listed agents from weeks earlier. The log is
    append-only, so a reused session name accumulates every agent that ever wrote
    to it. Agents not seen for a day are now omitted; the log is untouched and
    hide_after_s = Inf shows all of it.
  • A busy port now moves to the next free one instead of failing.

Citation

citation("ClaudeR") prints a formatted reference and BibTeX entry, and GitHub
shows a "Cite this repository" button.

Install

devtools::install_github("IMNMV/ClaudeR")

Restart R afterwards. For the bridge, uvx --refresh clauder-mcp. For Python
sessions, pip install clauder.