# pulse:reset-fresh-start > Reset all PULSE features, progress, and lessons to clean state. Requires CONFIRM to proceed. - Author: Damion Davy - Repository: drddavi/PULSE - Version: 20260126085815 - Stars: 1 - Forks: 0 - Last Updated: 2026-02-06 - Source: https://github.com/drddavi/PULSE - Web: https://mule.run/skillshub/@@drddavi/PULSE~pulse:reset-fresh-start:20260126085815 --- --- name: pulse:reset-fresh-start description: Reset all PULSE features, progress, and lessons to clean state. Requires CONFIRM to proceed. --- # Fresh Start **DESTRUCTIVE ACTION** - Wipes all features, progress, and lessons. ## Process ### 1. Check Project Exists ```bash ls .pulse/CONFIG.json 2>/dev/null ``` If not found: ``` Error: No PULSE project found. Nothing to reset. ``` Exit. ### 1b. Ensure Config Complete Merge any missing CONFIG.json keys from the reference template. **Reference:** `~/.claude/skills/pulse-project-init/templates/CONFIG.json` ```bash jq --slurpfile ref <(cat ~/.claude/skills/pulse-project-init/templates/CONFIG.json) ' ($ref[0].settings + .settings) as $settings | ($ref[0].verification + .verification) as $verification | ($ref[0].models + .models) as $models | . + {settings: $settings, verification: $verification, models: $models} ' .pulse/CONFIG.json > .pulse/CONFIG.tmp && mv .pulse/CONFIG.tmp .pulse/CONFIG.json ``` If keys were added, display: `Config updated: Added {list of keys}` ### 2. Count What Will Be Deleted ```bash # Count features FEATURE_COUNT=$(cat .pulse/PULSE_FEATURES.json | jq 'length') # Count feature folders FOLDER_COUNT=$(ls -1 .pulse/features/ 2>/dev/null | wc -l | tr -d ' ') # Count lessons LESSON_COUNT=$(cat .pulse/PULSE_LESSONS.json | jq '.total_lessons') ``` ### 3. Show Warning Display prominently: ``` ╔═══════════════════════════════════════════════════════════════════════════╗ ║ ║ ║ ██ ██ █████ ██████ ███ ██ ██ ███ ██ ██████ ║ ║ ██ ██ ██ ██ ██ ██ ████ ██ ██ ████ ██ ██ ║ ║ ██ █ ██ ███████ ██████ ██ ██ ██ ██ ██ ██ ██ ██ ███ ║ ║ ██ ███ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ║ ║ ███ ███ ██ ██ ██ ██ ██ ████ ██ ██ ████ ██████ ║ ║ ║ ║ DESTRUCTIVE ACTION ║ ║ ║ ╚═══════════════════════════════════════════════════════════════════════════╝ This will PERMANENTLY DELETE: • {FEATURE_COUNT} features from PULSE_FEATURES.json • {FOLDER_COUNT} feature folders from .pulse/features/ (includes all PLAN.md, SUMMARY.md, VERIFICATION.md, screenshots) • {LESSON_COUNT} lessons from PULSE_LESSONS.json • All progress data from PULSE_PROGRESS.json ╔═══════════════════════════════════════════════════════════════════════════╗ ║ THIS CANNOT BE UNDONE ║ ╚═══════════════════════════════════════════════════════════════════════════╝ ``` ### 4. Ask for Confirmation Use AskUserQuestion with text input: ``` To proceed, type CONFIRM (case insensitive): ``` Options: - **Cancel** - Abort the reset - **Other** - User types confirmation ### 5. Validate Confirmation Check user input: ``` INPUT = user_response.trim().toUpperCase() if INPUT != "CONFIRM": Display: "Reset cancelled. You typed: '{input}'" Exit. ``` ### 6. Execute Reset **Only if user typed CONFIRM:** ```bash # 1. Get real timestamp NOW=$(date -u +"%Y-%m-%dT%H:%M:%SZ") # 2. Delete all feature folders rm -rf .pulse/features/* ``` **3. Reset JSON files from central templates:** Read each template from `~/.claude/skills/pulse-project-init/templates/` and write to `.pulse/`: | Template | Target | |----------|--------| | `~/.claude/skills/pulse-project-init/templates/PULSE_FEATURES.json` | `.pulse/PULSE_FEATURES.json` | | `~/.claude/skills/pulse-project-init/templates/PULSE_PROGRESS.json` | `.pulse/PULSE_PROGRESS.json` | | `~/.claude/skills/pulse-project-init/templates/PULSE_LESSONS.json` | `.pulse/PULSE_LESSONS.json` | **Variable substitution in templates:** - `YYYY-MM-DDTHH:MM:SSZ` → current ISO timestamp (from `$NOW`) ### 7. Confirm Success ``` ╔═══════════════════════════════════════════════════════════════════════════╗ ║ RESET COMPLETE ║ ╚═══════════════════════════════════════════════════════════════════════════╝ Deleted: • {FEATURE_COUNT} features • {FOLDER_COUNT} feature folders • {LESSON_COUNT} lessons Reset to defaults: • .pulse/PULSE_FEATURES.json → [] • .pulse/PULSE_PROGRESS.json → idle, 0 features • .pulse/PULSE_LESSONS.json → empty Project is ready for new features. Next: Edit .pulse/feature_updater.md and run /pulse:features-from-file ``` ## Edge Cases ### Empty Project If already empty (0 features, 0 lessons): ``` Project already clean. Nothing to reset. • Features: 0 • Feature folders: 0 • Lessons: 0 ``` Exit without prompting. ### Cancelled If user selects "Cancel" or types anything other than CONFIRM: ``` Reset cancelled. No changes made. ```