-
released this
2026-08-12 12:12:28 -05:00 | 56 commits to main since this releaseMail's tool names now follow the same verb-first convention the calendar settled on in
0.10.1. Three renames, no behaviour change:Was Now mark_readupdate_message_readmark_unreadupdate_message_unreadflag_messageupdate_message_flagBreaking in the one way that matters day to day: Claude's per-tool permission toggles
are keyed to tool names, so the three reset to defaults and have to be set back to ask.
That cost is why this shipped as its own release rather than riding along with the next
change — and why the remaining names were left alone rather than churned again later.Changed
-
mark_andflag_were the strays. The connector lists tools alphabetically, so the
prefix is the only lever on how they group for the reader. Mail's eleven now sort into
delete_,get_×3,list_×2,move_,search_,update_×3, and the three write
tools that change a message's state sit together instead of scattering across the list. -
The client methods were renamed to match —
ICloudMailClient.update_message_readand
.update_message_flag. Deliberate: grepping a tool name off a connector screenshot should
land on the implementation, and it did not before. -
A test now pins the convention rather than leaving it to review.
mark_readwas named
in a release that also renamed the calendar's strays for exactly this reason, which is
what a convention with no test looks like.
Notes
-
mark_read/mark_unreadstayed two tools rather than collapsing into one
update_message(read=…). Uniformity argued for the collapse; the split survives because
a boolean is what a model passes backwards, andupdate_message(read=false)reads correct
while doing the opposite. The uniformity was available without paying that. -
move_messageandsearch_messageskeep their own verbs. Folding the move into
update_messagewould give one tool two return contracts — passing a destination returns
a newmessage_idand the flag arguments do not — and folding search intolist_messages
would erase the distinction that tells a model it forgot a search term. Both were
considered and rejected on those grounds rather than on taste.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-