Skip to content

Improve handler descriptions to show WHY commands are blocked#23

Merged
ldayton merged 4 commits intomainfrom
lily/improve-handler-descriptions
Jan 13, 2026
Merged

Improve handler descriptions to show WHY commands are blocked#23
ldayton merged 4 commits intomainfrom
lily/improve-handler-descriptions

Conversation

@ldayton
Copy link
Copy Markdown
Owner

@ldayton ldayton commented Jan 13, 2026

Summary

Handler descriptions now show the specific flag or action that triggered the confirmation prompt, making it clearer to users WHY a command needs approval.

Changes

Before:

🐤 curl  (generic, unclear why blocked)
🐤 tar   (generic, unclear why blocked)

After:

🐤 curl -d           (shows data upload flag)
🐤 curl POST         (shows HTTP method)
🐤 curl --mail-from  (shows email sending)
🐤 tar create        (shows archive creation)
🐤 awk system()      (shows shell command execution)

Modified Handlers

  • curl: Shows triggering flags (-d, --json, POST, DELETE, --mail-from, etc.)
  • tar: Shows operations (create, extract, append, update, delete)
  • awk: Shows dangerous features (system(), redirects, pipes)
  • wget: Shows download operation

Testing

Added tests/cli/test_descriptions.py with 138 test cases to verify description quality across all modified handlers.

All tests pass across Python 3.11-3.14.

Handlers now include the triggering flag/action in their description:
- curl: shows -d, --json, POST, DELETE, --mail-from, etc.
- tar: shows create, extract, append, update, delete
- awk: shows system(), redirect, pipe
- wget: shows download

Added test_descriptions.py to verify description quality.
Add action context to ask descriptions (e.g., "pytest run" instead of
"pytest", "xargs --interactive" instead of "xargs").
@ldayton ldayton marked this pull request as ready for review January 13, 2026 17:24
@ldayton ldayton merged commit e235cf2 into main Jan 13, 2026
1 check passed
@ldayton ldayton deleted the lily/improve-handler-descriptions branch January 13, 2026 17:25
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.

1 participant