[0.6.0] — 2026-08-21
Changed
Breaking: five Drive tools became one.
list_folder,search_drive,create_folder,copy_docandupdate_docare removed, replaced bydrive({ cmd, args }). Anything calling them by name must be updated.
- Drive navigation is now a filesystem (#44). The five Drive tools became
drive({ cmd, args })speakingls/find/mkdir/cp/mv— 36 tools down to 32. Paths are/or~(My Drive),/shared/<drive name>,/shared-with-meand/lost+found; anything else is read as a Drive id or URL, so ids from other tools paste straight in. A whole path resolves in a singlefiles.listcall. - Drive is not a filesystem in three ways, and each refuses rather than half-working (#44). Two files may share a name in one folder and matching folds case, so an ambiguous path is refused with the candidates listed — and
cp/mvrefuse to create that state.cp -rdoes not exist: Drive'sfiles.copyrejects folders outright.mvinto/shared/…transfers ownership irreversibly, so it requiresacceptOwnershipTransfer. mvkeepsupdate_doc's guard asexpectName, and covers rename and move together the way a filesystem does: an existing folder as the destination means "into it", anything else means "to that name" (#44).- Flags and operands parse in any order, as a terminal accepts them:
cp -r a b,cp a b -randcp a -r bare one command, and--ends the options. What an unrecognised-tokenmeans is set per command, because the commands disagree —ls -la /Workwants the flag ignored,find -2026wants-2026searched for (#44). cpkeeps the source name. Drive'sfiles.copydefaults to "Copy of …", which is its UI convention;cp file /diron a filesystem producesfile(#44).ls /lost+foundreplaceslist_folder({ folder: "orphaned" })— Unix's name for exactly this (#44, #46).- No destructive command ships. There is none in the surface to collapse, and host permissions are granted per tool name: allowlisting
drivesolsstops prompting would allowlistrmtoo. Conditions that would change that are in #47 (#44).
Added
- Files in no folder are listable —
ls /lost+found. A parentless file opens and turns up in a search, but nothing that browses the tree will ever show it, so it is found only by someone who already remembers it exists. Drive has no query operator for "has no parent", so the scan pages the files you own and reportsscanned/completerather than passing a silent cap off as the whole answer. Re-home one withmv(#46). - The README shows what to ask for. Two chained examples — filling a template without rebuilding it, and a whole review pass in one instruction — now sit above the tool table, where the only pointer to
docs/recipes.mdused to be a blockquote below it.docs/recipes.mdgains a Whole jobs section above the single-tool recipes (#44).