Skip to content

feat(shell): selectable menus for /gentle:animations and /gentle:background-subagents - #1270

Merged
Alan-TheGentleman merged 1 commit into
mainfrom
feat/selectable-command-menus
Sep 20, 2026
Merged

Alan-TheGentleman merged 1 commit into
mainfrom
feat/selectable-command-menus

Conversation

@Alan-TheGentleman

@Alan-TheGentleman Alan-TheGentleman commented Sep 20, 2026

Copy link
Copy Markdown
Collaborator

Closes #1268

Type

  • Bug fix
  • New feature
  • Documentation only
  • Code refactoring
  • Maintenance/tooling
  • Breaking change

Summary

  • /gentle:animations and /gentle:background-subagents open a native selectable menu (ctx.ui.select) when invoked with no argument, instead of requiring the sub-action to be typed by hand
  • the animations menu lists quality | performance | potato | status with the current policy in the title; the background-subagents menu lists status | enable | disable
  • a dismissed menu (Esc) does nothing; typed sub-actions, invalid-argument warnings, and the headless status fallback keep their exact existing behavior

Changes

File Change
extensions/gentle-shell.ts /gentle:animations no-argument invocation opens the selectable menu and applies the chosen policy; description updated.
extensions/gentle-ai.ts /gentle:background-subagents no-argument invocation opens the selectable menu and applies the chosen sub-action; description updated.
tests/gentle-shell.test.ts Optional select on fakeContext; covers the menu applying the chosen policy and the dismissed-menu no-write/no-notice case.
tests/background-subagents.test.ts selectingContext helper; covers the menu applying the chosen sub-action and the dismissed-menu no-write/no-notice case.

Test Plan

  • node --experimental-strip-types --test tests/gentle-shell.test.ts — 95 passed
  • node --experimental-strip-types --test tests/background-subagents.test.ts — 41 passed
  • pnpm run typecheck — no regressions
  • pnpm test — 2,866 passed, 38 skipped, 0 failed
  • Manually verified the menu shows only with an interactive UI (ctx.hasUI + ctx.ui.select); headless callers keep the status fallback

Contributor Checklist

  • Linked an approved issue
  • Added exactly one type:* label
  • No shell scripts changed; shellcheck is not applicable
  • Skills tested in at least one agent

Summary by CodeRabbit

  • New Features
    • Added interactive menus for background subagent controls, allowing users to view status or enable and disable the feature.
    • Added an interactive menu for animation settings, with options for quality, performance, potato, and status.
    • Cancelling either menu now exits without making changes or displaying notifications.
    • Headless environments and contexts without menu support continue to default to status reporting.

…gents commands

Invoking /gentle:animations or /gentle:background-subagents with no
argument now opens a native selectable menu (ctx.ui.select) instead of
requiring the sub-action to be typed by hand. The animations menu lists
quality/performance/potato/status with the current policy in the title;
the background-subagents menu lists status/enable/disable. A dismissed
menu does nothing; typed sub-actions, invalid-argument warnings, and the
headless status fallback keep their existing behavior.

Closes #1268
@Alan-TheGentleman Alan-TheGentleman added the type:feature New feature label Sep 20, 2026
@coderabbitai

coderabbitai Bot commented Sep 20, 2026

Copy link
Copy Markdown

Review Change StackReview Change Stack

Note

Currently processing new changes in this PR. This may take a few minutes, please wait...

⚙️ Run configuration

Configuration used: Repository UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: df19e3d2-8d09-4bb6-bacf-b5a58e5a8285

📥 Commits

Reviewing files that changed from the base of the PR and between 951ec58 and 830feb5.

📒 Files selected for processing (4)
  • extensions/gentle-ai.ts
  • extensions/gentle-shell.ts
  • tests/background-subagents.test.ts
  • tests/gentle-shell.test.ts
 __________________________________________________________________________________________________________________________________________________
< I've got a very particular set of skills. Skills I have acquired over a very long career. Skills that make me a nightmare for bugs in your code. >
 --------------------------------------------------------------------------------------------------------------------------------------------------
  \
   \   (\__/)
       (•ㅅ•)
       /   づ
✨ Finishing Touches
📝 Generate docstrings
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@Alan-TheGentleman
Alan-TheGentleman merged commit df1159e into main Sep 20, 2026
3 of 4 checks passed
@Alan-TheGentleman
Alan-TheGentleman deleted the feat/selectable-command-menus branch September 20, 2026 15:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type:feature New feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(ux): selectable menus for /gentle:animations and /gentle:background-subagents no-arg invocation

1 participant