by happier-dev
Web, Desktop & Mobile client for Codex, Claude Code, OpenCode, Kimi, Augment Code, Qwen, fully end-to-end encrypted
# Add to your Claude Code skills
git clone https://github.com/happier-dev/happierRun Claude Code, Codex, Gemini, OpenCode (and more) on your computerand continue seamlessly from your phone, browser, or desktop app.
End-to-end encrypted. Self-hostable. Built by developers, for developers.
We are iterating fast and adding new features, improvements and bug fixes constantly.
Make sure to star the repo and subscribe to the announcements channel to be informed of all the latest changes.
You can also join the Discord channel to ask any questions or report any issues that you might have.
This project exists because we needed it ourselves, and we want it to evolve through real feedback. We aim to keep the community welcoming, and contributor-friendly, whether you’re signaling an issue or proposing a larger idea.
If something feels broken, missing, or awkward, we really want to hear about it. Happier grows through shared experience and collaboration.
Learn more about the best ways to contribute in CONTRIBUTING.md.
Happier is an open-source, end-to-end encrypted companion app for AI coding agents.
It lets you run AI coding sessions locally on your computer, then continue and control them remotely — from your phone, web UI, or desktop app, without losing context.
Whether you’re stepping away for a coffee or switching devices mid-task, Happier keeps your AI coding sessions alive and accessible.
No comments yet. Be the first to share your thoughts!
Play Store app is in private beta, to access it:
curl -fsSL https://happier.dev/install | bash
Windows:
iwr https://happier.dev/install.ps1 -useb | iex
If you specifically want the npm package instead of the installer-managed lanes:
npm install -g @happier-dev/cli
happier auth login
Recommended first run:
happier instead of claude, codex or opencode# Instead of: claude
# Use: happier
happier
# Instead of: codex
# Use: happier codex
happier codex
# Instead of: opencode
# Use: happier opencode
happier opencode
# More providers:
happier gemini
happier kilo
happier kimi
happier qwen
Code solo, or invite a friend to jump into the session with you. Happier acts as a secure bridge between your local development environment and your other devices.
We originally started as contributors to Happy, submitting fixes, improvements, and new features upstream.
We were using it daily for work and genuinely loved the concept.
Over time, we realized that our own needs required faster iteration that we could not comfortably explore within the main project.
So we started building them for ourselves.
After weeks of refining, fixing, and extending the foundation, we decided to share Happier so others could try it, use it, and help shape what comes next.
Happier is about exploring a faster-moving, more collaborative direction, while remaining deeply grateful for the foundation Happy provided. We loved and still love Happy. ❤️ Happier would not exist without it.
Broad provider support Works with Claude Code, Codex, OpenCode, Gemini, GitHub Copilot, Kiro, Pi, Kilo, Kimi, Qwen, Augment, and any custom ACP-compatible CLI — all from one unified interface.
Browse, follow, and take over existing sessions Open any existing Codex, Claude, or OpenCode session on your machine directly in Happier, follow a live session started outside the app in real time, or take control and import it into Happier with full continuity.
Session forking and replay Fork a session at any message without losing context. Uses provider-native forking when available (OpenCode, Codex); falls back to Happier Replay for any provider.
Session handoff between machines Move a live session — including provider state and project directory — to another machine. The same session ID stays in place; the active machine changes.
Attach to a running session
Start a session from the app and later reconnect to it in your terminal with happier attach, or the other way around — switch between local CLI control and remote app control at any time.
Persistent sessions Resume sessions after restarts; archive and return to them later. Supports tmux-backed resume for terminal-started sessions.
Seamless switching Move between terminal, desktop app, web, and mobile while keeping full session context. Multi-device continuity is built in.
Collaborative sessions Share a live session with teammates or via view-only public links. Friends can be added by username directly in the app.
Agents, subagents, and Claude teams Launch parallel review, plan, or delegate runs from any session. Create and manage Claude teams, send messages to individual teammates, and monitor all subagents from the Agents panel.
Voice assistant — a real AI colleague, not just speech-to-text The voice agent is a first-class assistant backed by the same action system as the UI and CLI. It monitors all your running sessions, can switch focus between them, reads pending permission requests and answers them on your behalf, sends messages to any session you dictate to, and discusses what your agents are doing with full access to recent session context. Every action it can take maps to a Happier action that can be individually approval-gated. Runs on a daemon-backed AI brain (Claude or any configured backend) or a local OpenAI-compatible endpoint, with ElevenLabs realtime, BYO ElevenLabs, Kokoro neural TTS, and device/Google STT as the voice layer.
Inbox
A global attention center for permission requests, user-action prompts (AskUserQuestion, ExitPlanMode), approval-gated actions, and unread sessions — across all sessions and machines at once.
Pending queue Queue messages while the agent is busy, offline, or not yet ready. Edit, reorder, and remove queued messages before they run. The queue is session-wide and shared with collaborators.
Steering and interrupts Steer compatible sessions while they are running. New messages are injected into the active turn when the backend supports it; otherwise they queue safely.
Git and file browser Full repository-aware workspace inside sessions and projects: browse files, review diffs, edit files, and run complete Git operations (commit, pull, push, branch, stash, worktrees, remotes) without leaving the app.
Projects and worktrees Persistent repository surfaces outside sessions. Browse a repo, inspect source control state, collect review comments, switch between worktrees, and then launch a session into the exact checkout context.
Embedded terminal A live shell backed by your connected machine, dockable in the bottom panel, sidebar, or as a full-screen — shared across session and project views.
Attachments Attach files and images to any message in new or existing sessions. Works across desktop, web, and mobile.
MCP servers Define MCP servers once in Happier and reuse them across all providers, all machines, and all sessions. Previews the effective tool surface before you start. Works with native-MCP and shell-bridge providers alike.
Prompts and skills
Manage reusable system prompts and skill bundles in one synced library. Attach them to coding agents, voice, or profiles; install/export to provider-native locations; integrate with skills.sh registries.
Connected services and quota monitoring Link Codex, Claude, and other provider subscriptions once; reuse credentials across backends and machines. Monitor usage and quota snapshots directly in the app.
Profiles
Save named backend configurations (endpoint, auth scheme, environment variables, secrets) and select them at session start or via --profile from the CLI.
Custom ACP backends Add any ACP-compatible CLI as a selectable backend — internal tools, review bots, planning agents — without modifying Happier's source.
Local memory search Build a machine-local i