Skip to content

Feat/actions - #12

Merged
rattle99 merged 6 commits into
masterfrom
feat/actions
May 22, 2026
Merged

Feat/actions#12
rattle99 merged 6 commits into
masterfrom
feat/actions

Conversation

@rattle99

Copy link
Copy Markdown
Owner

No description provided.

rattle99 added 6 commits May 22, 2026 16:10
- shell out to `claude plugin <verb>`, 60s timeout
- bindings u/t/x; ConfirmModal for uninstall, ActionResultModal on failure
- --actions flag (off by default; flipped in a later commit)
- binding U; serial worker reports per-plugin progress via app.sub_title
- confirm modal when N > 5
- subtitle restored in try/finally; final summary toast at end

Textual 8.x has a documented ModalScreen dismissal-deadlock for modals containing scrollable progress content (issues #5596, #5008, #4552), so the subtitle approach gives live progress without the deadlock surface.
- binding M: current plugin's marketplace, or all if not on a Plugin row
- all action workers share group="claude-plugin-write" (serialises claude state writes across single / bulk / marketplace)
- _rescan_and_rebuild(notify=False) avoids duplicate toast after each action
- --scope picked from installation.scope, not bucket label (managed/local installs need their actual scope)
- Scope literal extended to include "managed" (claude plugin update accepts it)
- clearer error when no install matches current cwd ([O]-marker case lists the dirs to cd into)
- previously gated behind --actions; flipped after Phase 0 verified every verb works headlessly
@rattle99
rattle99 merged commit f150be2 into master May 22, 2026
4 checks passed
@rattle99
rattle99 deleted the feat/actions branch June 1, 2026 07:55
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