Skip to content

Commit cfed7b0

Browse files
auge2uclaude
andcommitted
feat: add "Feeling Lucky" quick setup option
- Add as first option in both Claude skill and install.sh - Auto-configures standard bundle with smart defaults - Skips all prompts, backs up everything, just works - Add --feeling-lucky CLI flag for scripted installs 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent ecb622f commit cfed7b0

3 files changed

Lines changed: 83 additions & 12 deletions

File tree

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,10 +63,16 @@ Respects your config, shows diffs, backs up before changes.
6363

6464
| Flag | Description |
6565
|------|-------------|
66+
| `--feeling-lucky` | Auto-configure everything with smart defaults |
6667
| `--bundle <name>` | Choose bundle: minimal, standard, full |
6768
| `--non-interactive` | Skip all prompts, use defaults |
6869
| `--help` | Show help |
6970

71+
**Fastest install:**
72+
```bash
73+
./install.sh --feeling-lucky
74+
```
75+
7076
## Updating
7177

7278
```bash

install.sh

Lines changed: 32 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ BACKUP_DIR="$HOME/.claude-dev-kit/backups/$(date +%Y-%m-%d)"
2525
# Flags
2626
BUNDLE=""
2727
NON_INTERACTIVE=false
28+
FEELING_LUCKY=false
2829

2930
# ------------------------------------------------------------------------------
3031
# Utility Functions
@@ -181,21 +182,29 @@ select_bundle() {
181182
fi
182183

183184
echo ""
184-
echo -e "${CYAN}Select installation bundle:${NC}"
185+
echo -e "${CYAN}How would you like to proceed?${NC}"
185186
echo ""
186-
echo " 1) minimal - Shell only (zsh, powerlevel10k, completions)"
187-
echo " 2) standard - Shell + Editor + Git + Templates (recommended)"
188-
echo " 3) full - Everything including Quality and Memory tools"
189-
echo " 4) custom - Choose individual components"
187+
echo -e " ${GREEN}1) Feeling Lucky${NC} - Auto-configure everything with smart defaults"
188+
echo " 2) minimal - Shell only (zsh, powerlevel10k, completions)"
189+
echo " 3) standard - Shell + Editor + Git + Templates"
190+
echo " 4) full - Everything including Quality and Memory tools"
191+
echo " 5) custom - Choose individual components"
190192
echo ""
191193

192-
read -r -p "Enter choice [1-4]: " choice
194+
read -r -p "Enter choice [1-5]: " choice
193195

194196
case "$choice" in
195-
1) BUNDLE="minimal" ;;
196-
2) BUNDLE="standard" ;;
197-
3) BUNDLE="full" ;;
198-
4) select_custom_components ;;
197+
1)
198+
BUNDLE="standard"
199+
FEELING_LUCKY=true
200+
echo ""
201+
echo -e "${GREEN}Feeling Lucky mode activated!${NC}"
202+
echo ""
203+
;;
204+
2) BUNDLE="minimal" ;;
205+
3) BUNDLE="standard" ;;
206+
4) BUNDLE="full" ;;
207+
5) select_custom_components ;;
199208
*) BUNDLE="standard" ;;
200209
esac
201210

@@ -606,6 +615,12 @@ parse_args() {
606615
BUNDLE="$2"
607616
shift 2
608617
;;
618+
--feeling-lucky)
619+
FEELING_LUCKY=true
620+
BUNDLE="standard"
621+
NON_INTERACTIVE=true
622+
shift
623+
;;
609624
--non-interactive)
610625
NON_INTERACTIVE=true
611626
shift
@@ -614,6 +629,7 @@ parse_args() {
614629
echo "Usage: $0 [options]"
615630
echo ""
616631
echo "Options:"
632+
echo " --feeling-lucky Auto-configure everything with smart defaults"
617633
echo " --bundle <name> Install specific bundle (minimal, standard, full)"
618634
echo " --non-interactive Skip prompts, use defaults"
619635
echo " --help Show this help"
@@ -638,17 +654,21 @@ main() {
638654

639655
check_os
640656
check_dependencies
657+
658+
# Ask bundle selection first (includes "Feeling Lucky" option)
659+
select_bundle
660+
641661
detect_environment
642662

663+
# Skip confirmation if Feeling Lucky mode
643664
echo ""
644-
if [ "$MODE" = "adaptation" ] && ! $NON_INTERACTIVE; then
665+
if [ "$MODE" = "adaptation" ] && ! $NON_INTERACTIVE && ! $FEELING_LUCKY; then
645666
if ! confirm "Existing setup detected. Continue with adaptation mode?"; then
646667
log_info "Installation cancelled."
647668
exit 0
648669
fi
649670
fi
650671

651-
select_bundle
652672
create_backup
653673

654674
echo ""

skills/SKILL.md

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,51 @@ Claude-native installer for a comprehensive developer environment. Detects exist
2626

2727
## Installation Flow
2828

29+
### 0. Quick Start Question (First Prompt)
30+
31+
**Ask immediately before anything else:**
32+
33+
```
34+
Welcome to Claude Dev Kit!
35+
36+
How would you like to proceed?
37+
38+
1. 🍀 Feeling Lucky - Auto-configure everything with smart defaults
39+
2. 🎛️ Guided Setup - Walk me through the options
40+
```
41+
42+
**If "Feeling Lucky" selected:**
43+
- Skip all subsequent prompts
44+
- Auto-detect environment (greenfield vs adaptation)
45+
- Install **standard** bundle (shell, editor, git, templates)
46+
- Use these defaults:
47+
- Shell: Install p10k, keep existing aliases
48+
- Editor: Add extensions, merge settings (don't overwrite)
49+
- Git: Add hooks and templates, preserve existing config
50+
- Templates: Create CLAUDE.md if missing
51+
- Quality enforcement: **soft** (warns but allows bypass)
52+
- Backup everything before changes
53+
- Show summary at end
54+
55+
**Feeling Lucky behavior:**
56+
```
57+
🍀 Feeling Lucky mode activated!
58+
59+
Detecting environment... macOS, zsh, VS Code
60+
Mode: Greenfield
61+
62+
Installing standard bundle:
63+
→ Shell (zsh, powerlevel10k, fonts, aliases)
64+
→ Editor (VS Code settings, extensions)
65+
→ Git (hooks, templates, conventions)
66+
→ Templates (CLAUDE.md, .claude/ directory)
67+
68+
Creating backups... done
69+
Installing components... [progress]
70+
71+
✓ Complete! Restart your terminal to activate.
72+
```
73+
2974
### 1. Detect Environment
3075

3176
```bash

0 commit comments

Comments
 (0)