clui-cc-claude-overlay

clui-cc-claude-overlay — an installable skill for AI agents.

By reason-machines · 1,296 installs

npx skills add reason-machines/trending-skills --skill clui-cc-claude-overlay

Source repository · Upstream listing

Clui CC — Claude Code Desktop Overlay Skill by [ara.so](https://ara.so) — Daily 2026 Skills collection. Clui CC wraps the Claude Code CLI in a transparent, floating macOS overlay with multi tab sessions, a permission approval UI (PreToolUse HTTP hooks), voice input via Whisper, conversation history, and a skills marketplace. It requires an authenticated claude CLI and runs entirely local — no telemetry or cloud dependency. Prerequisites Requirement Minimum Notes macOS 13+ Overlay is macOS only Node.js 18+ LTS 20 or 22 recommended Python 3.10+ Needs setuptools on 3.12+ Claude Code CLI any Must be authenticated Whisper CLI any For voice input Installation Recommended: App installer (non developer) On first launch macOS may block the unsigned app — go to System Settings → Privacy & Security → Open Anyway . Developer workflow Command scripts Key Shortcuts Shortcut Action ⌥ + Space Show / hide the overlay Cmd + Shift + K Fallback toggle (if ⌥+Space is claimed) Architecture Process flow 1. Each tab spawns claude p output format stream json as a subprocess. 2. RunManager parses NDJSON; EventNormalizer normalizes events. 3. ControlPlane manages tab lifecycle: connecting → idle → running → completed/failed/dead . 4. Tool permission requests arrive via HTTP hooks to PermissionServer (localhost only). 5. Renderer polls backend health every 1.5 s and reconciles tab state. 6. Sessions resume with resume <session id . Project structure IPC API ( window.clui ) The preload bridge exposes window.clui in the renderer. Key methods: Working with Tabs and Sessions Creating a tab and sending a prompt (renderer) Resuming a past session Permission Approval UI Tool calls are intercepted by PermissionServer via PreToolUse HTTP hooks before execution. The renderer receives a permission request event and must resolve it. Voice Input Voice input uses Whisper locally. It is installed automatically by install app.command or via brew install whisper cli . No API key is needed — transcription runs entirely on device. Skills Marketplace Install skills (plugins) from Anthropic's GitHub repos without leaving the UI. Network calls made by the marketplace: Endpoint Purpose Required raw.githubusercontent.com/anthropics/ Skill catalog (5 min cache) No — graceful fallback api.github.com/repos/anthropics/ /tarball/ Skill tarball download No — skipped on failure Theme Configuration Custom CSS properties are applied to :root and can be overridden in renderer stylesheets: Adding a Custom Skill Skills are auto loaded from ~/.clui/skills/ . A skill is a directory with a skill.js entry: Troubleshooting Self check Common issues App blocked on first launch → System Settings → Privacy & Security → Open Anyway node pty fails to compile claude not found Whisper not found Port conflict on PermissionServer The HTTP hook server runs on localhost only. If another process occupies its port, restart with: setuptools missing (Python 3.12+) Overlay not showing Try the fallback shortcut: Cmd + Shift + K Check that Clui CC has Accessibility permission: System Settings → Privacy & Security → Accessibility Tested Versions Component Version macOS 15.x Sequoia Node.js 20.x LTS, 22.x Python 3.12 (+ setuptools) Electron 33.x Claude Code CLI 2.1.71 References [Claude Code docs](https://docs.anthropic.com/en/docs/claude code) [Architecture deep dive](docs/ARCHITECTURE.md) [Troubleshooting guide](docs/TROUBLESHOOTING.md) [MIT License](LICENSE)