Skip to content

feat(config): add interactive settings center - #24

Merged
wendaining merged 19 commits into
masterfrom
feat/issue-19-config-tui
Sep 12, 2026
Merged

wendaining merged 19 commits into
masterfrom
feat/issue-19-config-tui

Conversation

@wendaining

Copy link
Copy Markdown
Owner

Summary

  • add a bare recall config settings TUI for search bindings, capture rules, appearance, and shell integration
  • save TOML changes losslessly and atomically while preserving comments, permissions, newline style, BOM, and symlink targets
  • unify pane-width persistence in TOML and migrate the legacy SQLite setting only after a successful save
  • support recorded one- or two-chord Ctrl/Alt shortcuts, including Ctrl+Space and PowerShell chord sequences
  • reuse the managed shell setup core for Auto, Hooks, and Remove actions

Validation

  • cargo fmt --check
  • cargo clippy --all-targets -- -D warnings
  • cargo test
  • ./scripts/dev-install.sh --shell zsh
    • verified production installer UI with a locally built release fixture
    • verified automatic proxy and hooks are active
    • exercised all four configuration categories
    • reopened the TUI and confirmed persisted values
    • confirmed output capture and recall doctor
  • ./scripts/dev-install.sh --user
    • completed the interactive upgrade flow without importing history
    • kept the existing config and history database
    • verified the installed binary hash matches target/release/recall
    • opened a new zsh and confirmed proxy, hooks, config TUI, and doctor status

Closes #19

@wendaining
wendaining merged commit 9b5e51e into master Sep 12, 2026
5 checks passed
@wendaining
wendaining deleted the feat/issue-19-config-tui branch September 12, 2026 09:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(tui): interactive setup and configuration wizard (recall config / setup)

1 participant