# ClipCoffre Secret Clipboard A GNOME Shell extension that unifies a lightweight secrets manager with clipboard favorites/history controls. It is designed as a MVP shell extension for Debian 13 (GNOME 47+) and follows the architecture outlined in `CLAUDE.md`. ## Installation 1. Run `./install.sh` to copy files into `~/.local/share/gnome-shell/extensions/secret-clipboard@gilles` and compile the schema. 2. Enable the extension using GNOME Tweaks or `gnome-extensions enable secret-clipboard@gilles`. 3. Restart GNOME Shell (`Alt+F2`, enter `r`). ## Development Commands - `glib-compile-schemas schemas/` – compiles the GSettings schema so GNOME Shell can read `history_size`, `show_passwords`, and `click_mode`. - `./install.sh` – synchronizes the repo with the extension directory and reruns schema compilation. ## Project Layout - `extension.js` – entry point that wires together UI, services, and storage. - `src/ui/` – popups, panel button, and placeholder UI components. - `src/services/` – clipboard and secret services that talk to storage layers. - `src/storage/` – helpers for settings, JSON persistence, clipboard, and obfuscated secrets ( `key.json`, `secrets.json`, and `clipboard.json`). - `schemas/` – GSettings schema for runtime configuration. - `stylesheet.css` – theme adjustments for the topbar icon. - `install.sh` – deployment helper with schema compilation. ## Testing Notes - No automated tests yet. Use the manual checklist in `MANUAL_TESTS.md` to verify behavior. - For new tests, document the framework and naming pattern (e.g. `*.test.js`). ## Next Steps - Replace placeholder UI components (see `src/ui/`) with real paginated popovers and action buttons. - Implement secure storage as outlined in `CLAUDE.md` (MVP obfuscation with `secretsStore.js`). - Wire GNOME shell clipboard operations and integrate override clicks based on `click_mode`.