feat: add /weigh approach-comparison command to draft welcome

Add /weigh as a draft chip and command for the moment before planning —
when you know what to build but not how. Its hidden prompt investigates
the code, then lays out 2-3 genuinely distinct approaches with trade-offs
(complexity, risk, blast radius, effort) and a clear recommendation,
without writing a plan or code.

Follows the established command pattern: visible + hidden magic prompts
wired into command autocomplete, the submit handler, draft preset chips,
and the Magic Prompts settings page, with i18n across all locales. Adds a
scales-3 icon to the sprite.
This commit is contained in:
Bohdan Triapitsyn
2026-05-30 02:04:32 +03:00
parent d524842935
commit b09c6b7047
22 changed files with 120 additions and 1 deletions
+3
View File
@@ -448,6 +448,7 @@ export const dict: Record<I18nKey, string> = {
'chat.draftPresets.explore.label': 'Explore the codebase',
'chat.draftPresets.explore.prompt': 'Give me a high-level tour of this codebase — the architecture, the main modules, and how they fit together.',
'chat.draftPresets.catchup.label': 'Catch me up',
'chat.draftPresets.weigh.label': 'Weigh my options',
'chat.draftPresets.plan.label': 'Start feature planning',
'chat.draftPresets.debug.label': 'Debug an issue',
'chat.draftPresets.review.label': 'Review my changes',
@@ -513,6 +514,7 @@ export const dict: Record<I18nKey, string> = {
'chat.commandAutocomplete.command.featurePlanDescription': 'Rozpocznij prowadzoną, interaktywną sesję planowania nowej funkcji.',
'chat.commandAutocomplete.command.catchUpDescription': 'Przywróć kontekst: nad czym pracowałeś i od czego kontynuować.',
'chat.commandAutocomplete.command.debugDescription': 'Prowadzone badanie pierwotnej przyczyny błędu przed zaproponowaniem poprawki.',
'chat.commandAutocomplete.command.weighDescription': 'Rozważ 2-3 podejścia z kompromisami i rekomendacją, zanim się zdecydujesz.',
'chat.commandAutocomplete.badge.skill': 'skill',
'chat.commandAutocomplete.badge.command': 'polecenie',
'chat.commandAutocomplete.badge.system': 'system',
@@ -921,6 +923,7 @@ export const dict: Record<I18nKey, string> = {
'chat.chatInput.toast.planFeatureFailed': 'Nie udało się rozpocząć planowania funkcji',
'chat.chatInput.toast.catchUpFailed': 'Nie udało się przywrócić kontekstu',
'chat.chatInput.toast.debugFailed': 'Nie udało się rozpocząć debugowania',
'chat.chatInput.toast.weighFailed': 'Nie udało się rozważyć opcji',
'chat.chatInput.toast.sendAttachmentsFailed': 'Nie udało się wysłać załączników. Spróbuj użyć mniejszej liczby plików lub mniejszych obrazów.',
'chat.chatInput.toast.someFilesSkipped': 'Pominięto niektóre pliki:\n{summary}',
'chat.chatInput.toast.summaryFailed': 'Nie udało się wygenerować podsumowania',