Skip to content

Comments

Add truffile delete command to remove apps from device#9

Merged
notabd7-deepshard merged 1 commit intodeepshard:mainfrom
robsltd:add-delete-command
Feb 8, 2026
Merged

Add truffile delete command to remove apps from device#9
notabd7-deepshard merged 1 commit intodeepshard:mainfrom
robsltd:add-delete-command

Conversation

@robsltd
Copy link
Contributor

@robsltd robsltd commented Feb 8, 2026

Why

While building and iterating on a Whoop Focus App, each truffile deploy created a new app instance on the device. There was no way to remove the old ones. After a few iterations, the device had 7 duplicate apps (3 Whoop + 3 Research + 1 test).

The TruffleOS Desktop app lists installed apps but doesn't currently offer a delete option, and there's no CLI command for it either. The only way to clean up was the gRPC Apps_DeleteApp endpoint, which the SDK already has protobuf stubs for but never exposed.

What

Adds an interactive truffile delete CLI command that lists all installed focus and ambient apps, lets you select which to remove (by number, comma-separated, or all), and deletes them via the Apps_DeleteApp gRPC endpoint.

Screenshot 2026-02-08 at 16 50 40

Changes

  • truffile/client.py — Add delete_app(app_uuid) method to TruffleClient using DeleteAppRequest/DeleteAppResponse from the existing protobuf stubs
  • truffile/cli.py — Add cmd_delete with interactive numbered selection, register delete subcommand in argparse, and add to help text

Usage

$ truffile delete

✓ Connecting to truffle-7416

Installed Apps:

  1. Research (focus)
     Tools to help your Truffle research and gather info...
  2. Whoop (focus)
     Access health and fitness tools powered by Whoop. 
  3. Whoop (focus)
     Access health and fitness tools powered by Whoop. 

Select apps to delete (e.g. 1,3,5 or 'all'): 2,3

✓ Deleting Whoop
✓ Deleting Whoop

✓ Deleted 2 app(s)

Adds an interactive delete command that lists all installed focus and
ambient apps, lets you select which to remove (by number, comma-separated,
or 'all'), and deletes them via the Apps_DeleteApp gRPC endpoint.

- Add delete_app() method to TruffleClient
- Add cmd_delete to CLI with interactive selection
- Register 'delete' subcommand in argparse and help text
@notabd7-deepshard
Copy link
Collaborator

lgtm

@notabd7-deepshard notabd7-deepshard merged commit 8d1d104 into deepshard:main Feb 8, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants