Repository navigation
feat(app): delete a bot or a crew from its menu - #56
Merged
Merged
Conversation
Archiving keeps the rows. Deleting removes the bot with its chat, approvals, the messages it received, its routines, browser sites and tasks, in one transaction; what it sent to other bots stays without a sender.
The methods, the bot.deleted and crew.deleted notifications, the fake daemon and the app store, which drops a deleted bot with its routines, tasks and deliveries.
bots.delete and crews.delete work on active and archived items (spec 7.6). The process is killed at once and the supervisor forgets the bot; the database loses the bot and what was its own; folders stay on disk (spec 5). Other bots are told about the unfinished tasks a deleted bot leaves, and a message of its that still waited arrives as from a deleted bot. The spec row that said archiving deletes the workspace was never true and now says what happens.
useBotActions holds the items of the bot's menu and the dialogs they open, so another menu can offer exactly the same.
The menu opens at the pointer (or from the keyboard's menu key), without opening the bot, with the same actions as the header's menu. ContextMenu reuses the rows of Menu, stays inside the window and walks with the arrow keys; Menu gets the arrow keys too.
Delete is the last action of the bot's menu (header and right-click) and of the crew's menu. The confirmation names the bot or crew and says what goes (the conversation, routines and tasks, for good) and what stays (the folder, with its path). A message from a bot that left, archived or deleted, reads as from a bot no longer in the crew.
This was referenced Sep 30, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Delete in the app, for bots and crews.
useBotActions.Tests
features/bots/delete.test.tsx(new), withFakeBotloft: the bot's confirmation and what it says, the bot gone from the sidebar and the crew page back; cancel; from the right-click menu on a bot that is not open; the chief warning; a failed delete keeps the bot and says so; the sender label in the timeline; the crew's confirmation for 0, 1 and more bots, the crew gone with its bots while another crew stays; the last crew deleted goes back to the welcome screen.features/crews/botMenu.test.tsx: the right-click menu and the header's menu still offer the same list, now with Delete.pnpm checkpasses (206 tests). Rust is unchanged from feat: delete bots and crews (daemon and protocol) #54.Checked in the preview (
pnpm dev, FakeBotloft, Portuguese): Delete in the right-click menu and in the crew's menu, the bot's confirmation, the bot leaving the sidebar, and its message in another bot's chat reading "Um bot que não está mais na equipe".Still to see with real Claude Code
With the dev daemon (
BOTLOFT_HOME) and a real bot:claude.exeis gone from Task Manager and does not come back, and its folder is where the confirmation said.%USERPROFILE%\Botloft\<crew>.