feat(recommend-dont-menu): add skill + integrate into project-bootstrap [v0.1.0 / v1.9.0]

- Add `recommend-dont-menu` skill: overrides superpowers:brainstorming
  to give single argued recommendations instead of menus
- Integrate into project-bootstrap:
  - Add "recommend, don't menu" trigger to CLAUDE.md template
  - Add row to Step 5.6 trigger→fulfiller table
- Bump project-bootstrap 1.8.0 → 1.9.0 (MINOR — adds trigger)

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-05-06 22:49:56 +03:00
parent 215afddfa7
commit 011a8b42f2
7 changed files with 98 additions and 4 deletions

View File

@@ -222,9 +222,9 @@ version: 0.1.0
**Reference:** правило выкристаллизовалось в брейнсторме interns 2026-05-05, проверено многократно в `.meeting-room/` сессиях. Source content до удаления memory лежал в `feedback_brainstorm_recommend_dont_menu.md` (memory была удалена 2026-05-06 после переноса в `~/.claude/CLAUDE.md`, который сам теперь временный). **Reference:** правило выкристаллизовалось в брейнсторме interns 2026-05-05, проверено многократно в `.meeting-room/` сессиях. Source content до удаления memory лежал в `feedback_brainstorm_recommend_dont_menu.md` (memory была удалена 2026-05-06 после переноса в `~/.claude/CLAUDE.md`, который сам теперь временный).
**Status:** ready **Status:** 🟢 Done
**Where I stopped:** (not started) **Where I stopped:** trigger-line `recommend, don't menu` добавлен в `project-bootstrap/assets/CLAUDE.md.template`; ряд добавлен в Step 5.6 trigger→fulfiller table; override уже был упомянут в `recommend-dont-menu/SKILL.md` секция "## Override"; `project-bootstrap` bumped 1.8.0 → 1.9.0 (MINOR — adds trigger to canon set); rebuilt + installed, version 1.9.0 confirmed on disk.
**Next action:** skill-creator: подобрать имя (recommend-dont-menu vs alternatives), выбрать trigger-фразу, создать SKILL.md, добавить triger-line в project-bootstrap template, убрать дубликат из ~/.claude/CLAUDE.md. **Next action:** (none — kept until merged)
**Branch:** n/a **Branch:** n/a
<!-- created-by: OpeItcLoc03@DESKTOP-NSEF0UK / from: .meeting-room / 2026-05-06T18:31:57.105Z --> <!-- created-by: OpeItcLoc03@DESKTOP-NSEF0UK / from: .meeting-room / 2026-05-06T18:31:57.105Z -->

Binary file not shown.

BIN
dist/recommend-dont-menu.skill vendored Normal file

Binary file not shown.

View File

@@ -1,6 +1,6 @@
--- ---
name: project-bootstrap name: project-bootstrap
version: 1.8.0 version: 1.9.0
description: > description: >
Initializes or upgrades a project in the current folder: git, .gitignore, README.md, Initializes or upgrades a project in the current folder: git, .gitignore, README.md,
.wiki/ using Karpathy's method, .tasks/ for task tracking, CLAUDE.md with skill triggers. .wiki/ using Karpathy's method, .tasks/ for task tracking, CLAUDE.md with skill triggers.
@@ -444,6 +444,7 @@ Mismatch between template and map → silent gaps in the recommendation.
| `pull remote before work` | `pulling-before-work` | skill | `~/.claude/skills/pulling-before-work/SKILL.md` | `bash scripts/install.sh pulling-before-work` | | `pull remote before work` | `pulling-before-work` | skill | `~/.claude/skills/pulling-before-work/SKILL.md` | `bash scripts/install.sh pulling-before-work` |
| `follow project discipline` | `project-discipline` | skill | `~/.claude/skills/project-discipline/SKILL.md` | `bash scripts/install.sh project-discipline` | | `follow project discipline` | `project-discipline` | skill | `~/.claude/skills/project-discipline/SKILL.md` | `bash scripts/install.sh project-discipline` |
| `delegate to interns when allowed` | `using-interns` | skill | `~/.claude/skills/using-interns/SKILL.md` | `bash scripts/install.sh using-interns` | | `delegate to interns when allowed` | `using-interns` | skill | `~/.claude/skills/using-interns/SKILL.md` | `bash scripts/install.sh using-interns` |
| `recommend, don't menu` | `recommend-dont-menu` | skill | `~/.claude/skills/recommend-dont-menu/SKILL.md` | `bash scripts/install.sh recommend-dont-menu` |
| `we're on Windows` / `we're on Linux` / `we're on macOS` | `active-platform` | skill | `~/.claude/skills/active-platform/SKILL.md` | `bash scripts/install.sh active-platform` | | `we're on Windows` / `we're on Linux` / `we're on macOS` | `active-platform` | skill | `~/.claude/skills/active-platform/SKILL.md` | `bash scripts/install.sh active-platform` |
### Algorithm ### Algorithm

View File

@@ -9,4 +9,5 @@ check across all projects
pull remote before work pull remote before work
follow project discipline follow project discipline
delegate to interns when allowed delegate to interns when allowed
recommend, don't menu
we're on Windows we're on Windows

View File

@@ -0,0 +1,32 @@
# recommend-dont-menu
One recommendation, not a menu. When the user asks "what should we do?", give your best choice with reasoning and trade-offs — don't enumerate A/B/C/D options.
## What it does
Overrides the `superpowers:brainstorming` default of presenting multiple options. Instead, respond with:
```
Я рекомендую X, потому что Y₁, Y₂. Trade-off: Z. Возражения?
```
Only mention alternatives when they're genuinely competitive or carry an important trade-off.
## When to use
During design discussions, architecture reviews, brainstorming, or any "what should we do" question.
## Installation
```bash
bash scripts/install.sh recommend-dont-menu
```
## Trigger line
Add to `CLAUDE.md`:
```
prefer single recommendations
```
Or use `project-bootstrap` (v1.9.0+) which includes this trigger in its template.

View File

@@ -0,0 +1,60 @@
---
name: recommend-dont-menu
version: 0.1.0
description: >
Use during design discussions, brainstorming, architecture reviews, or any
"what should we do" question — give one argued recommendation with explicit
trade-offs, not a multiple-choice menu. Override of superpowers:brainstorming
default. Works on any agent — pure response-style rule, no tool mappings needed.
---
# recommend-dont-menu
> One recommendation, not a menu. When the user asks "what should we do?" or "which is better?", give your best choice with reasoning and trade-offs. Don't enumerate A/B/C/D options — menus slow down decision-making when one option is clearly better.
## When this runs
**At session start** — when `CLAUDE.md` contains any trigger line:
- `prefer single recommendations`
- `recommend, don't menu`
- `argued recommendations`
- `give me your best shot`
**On explicit reference** — when user says "give me a recommendation", "don't menu", "what do you think?", or close variants.
## Default mode
For design questions, architecture choices, "what should we do" queries:
```
Я рекомендую X, потому что Y₁, Y₂. Trade-off: Z. Возражения?
```
**Only mention alternatives if:**
- They're genuinely close to the recommended option, OR
- They carry an important trade-off the user should weigh
Then, briefly:
```
Если важно W — лучше X', но добавляет сложность; иначе X.
```
**Don't enumerate options** for the sake of appearing comprehensive. Menus are noise when one option dominates — they force the user to read through losing choices and bury your reasoning behind an oblique list instead of a responsible recommendation.
## Override
This skill **overrides** `superpowers:brainstorming` where that skill prefers multiple-choice options. User instructions > skill defaults.
If `superpowers:brainstorming` is active in the session, this skill's response style takes precedence for design/brainstorming questions.
## Cross-agent applicability
This skill is **pure response-style** — it works on any agent (Claude, Gemini, Copilot) without tool mappings. No `references/copilot-tools.md` or equivalent needed.
## Why this exists
The pattern emerged from iterative refinement across `claude-skills` brainstorm sessions and `.meeting-room/` discussions. When agents dump 4-option menus for every question, users skim or disengage. A single argued recommendation with clear trade-offs leads to faster convergence and better decisions. When alternatives are genuinely competitive, mention them — but don't manufacture variants.
## Reference
Original rule lived in `~/.claude/CLAUDE.md` as a per-machine instruction. Moving to a skill makes it portable: all machines bootstrapped with `project-bootstrap` inherit it, and cross-agent compatibility is explicit.