General
PromptBeginner5 minmarkdown
Untitled Skill
185
Last verified: 2026-02-14
Loading actions...
Main instructions and any bundled files for this skill.
Last verified: 2026-02-14
Implements the two-pane plugin manager interface using Bubble Tea's Elm Architecture (Model-Update-View).
NewModel(client, workingDir) -> *Model, implements tea.Model interfaceclaude.Client implementation. Terminal with reasonable size (handles resize).Model struct contains all state (no nested sub-models)map[string]Operation tracks pending operations per pluginOpInstall, OpUninstall, OpMigrate, OpUpdate, OpEnable, OpDisable, OpScopeChangeModeMain, ModeProgress, ModeSummary, ModeDoc, ModeConfig, ModeScopeDialogPluginState.InstalledScopes is map[Scope]bool (not single scope). Operation.Scopes is []Scope for multi-scope targets; Operation.UninstallScopes holds scopes to remove in OpScopeChangeS key opens ModeScopeDialog for installed plugins, showing checkboxes for user/project/local. Produces OpScopeChange with install and uninstall scope listsPluginState entries with IsGroupHeader=trueGetAllEnabledPlugins to build complete scope map per plugin[-> LOCAL], [-> ENABLED])model.go - Model struct, Init, message types, plugin stateupdate.go - Update logic for all modes and inputsview.go - View rendering for all modes and modalsstyles.go - Lip Gloss style definitionskeys.go - Key binding definitionsfilteredIdx maps visible index to plugins slice indexe opens the scope dialog instead of toggling directlyTypeScript and ESLint rules that MUST be followed when creating, modifying, or reviewing any file under apps/frontend/, including .ts, .tsx, .js, and .jsx files. Also apply when discussing frontend li...
risks