Open-source app for Claude Code
Claude Code keeps running on your own computer, signed in with your own Anthropic account. Happier gives it a phone, a browser tab and a desktop window.
How Happier runs Claude Code
Claude Code is the agent Happier can run inside its own terminal interface rather than in front of it. Turn on the unified terminal runtime and Happier starts the real claude TUI in a shared terminal host, streams that session to your devices, and types what you send from the app straight into it — so a correction can land in the turn that is already running instead of waiting for the end of it. Anthropic’s own terminal is the thing accepting the correction, and Happier is holding the keyboard for you; that is a different arrangement from talking to a runner about a session, and it is the reason this page exists.
The default runtime is the Agent SDK one, and for most sessions it is the right one. It resumes a conversation, it lists the Claude Code sessions on that computer, it can carry vendor state to a second computer, and when a usage limit stops you it can go and ask whether the limit has actually cleared instead of leaving you to guess. What it does not do is take a message into a turn that is already running: Anthropic documents the Agent SDK’s streaming input as queued messages that process sequentially, with the ability to interrupt. Choosing between the two runtimes changes that one behaviour and nothing about where your code lives.
Signing in stays Anthropic’s flow, started from wherever you happen to be. The Claude Code provider page runs claude on the computer you picked and sends it /login, so the browser step happens on the computer that will hold the credential rather than on the phone in your hand. Happier looks for the binary where Anthropic’s installer puts it — ~/.local/bin, the versioned directory under ~/.local/share/claude, a Homebrew prefix, ~/.claude/local/cli.js — before it offers to show you an install command, because on most computers it is already there.
What Claude Code does, and what Happier adds
Claude Code is Anthropic’s terminal coding agent: you run claude in a repository and it reads files, edits them and runs commands. Happier does not change any of that. happier claude starts the same binary, in the same directory, under the same login, and mirrors the conversation to every device you are signed in on.
What it buys you is the walk away. Start a refactor at your desk, read the diff on your phone on the way to lunch, answer the permission request it stopped on, and pick the session back up in your terminal when you sit down again. The repository stays on the computer it was already on.
Steering and interrupting are not the same move, and Claude Unified is about the first one. Interrupting stops the turn and starts another; steering adds to the turn that is running. Anthropic documents the Agent SDK’s streaming input as queued messages that process sequentially, with the option to interrupt — which is the default runtime here, and it is the right one for most sessions. Claude Code’s own terminal takes the other kind: type while it is working and the instruction joins the work in progress. Unified drives that terminal, so the app can do it from a phone.
It is one Claude Code process either way. In unified mode the terminal and the app are both live at once — you can be typing in the TUI on the computer while the session is answered from a phone, and neither of you is locked out. That is what “unified” means here: one process, one transcript, two places you can type into it.
happier claudeRead, approve and answer Claude Code from any device
The iOS and Android apps, the desktop app for macOS, Windows and Linux, and app.happier.dev are all clients onto the Claude Code process running on your computer — not read-only mirrors. Answer a permission request, send the next instruction, browse the repository, read the diff. The transcript is end-to-end encrypted before it leaves your computer, so the server carrying it holds ciphertext.
Installing Claude Code the way Anthropic documents it
Happier installs on the computer that already holds your repository, and happier claude starts Claude Code there as an ordinary subprocess, in the directory you point it at, signed in the way you signed it in. There is no gateway between the agent and Anthropic, and no copy of your source anywhere else.
Happier looks for claude on your PATH and runs the copy you installed. Anthropic distributes it with an install script rather than a package; Happier can show you that command, and it will not execute a vendor install script on its own — vendor recipes are refused unless you explicitly allow them.
Anthropic’s own install and sign-in guide is at code.claude.com/docs/en/setup. Happier does not mirror it, because a copy of someone else’s install instructions is a copy that goes stale.
Configuration reference for the Happier side — Claude Code in the Happier docs.
Which account Claude Code runs on
Claude Code is one of the agents Happier can point at a credential you connected once instead of at whatever that computer is logged into. It accepts a Claude subscription or an Anthropic API key.
Connected services are keyed by the credential, not by the agent, so the same Claude subscription is selectable for every agent that can take it, on every computer you have connected — which is also what makes a pool of your own accounts useful across more than one of them. The credential is encrypted and decrypted on your own devices; the docs page carries the per-profile rules, because which kinds of profile each agent accepts is exactly the sort of detail that moves between releases.
One app for Claude Code and 12 other agents
Claude Code is one of 13 command-line coding agents Happier runs, and they share one session list, one permission inbox, one set of keyboard shortcuts and one MCP configuration.
You define an MCP server once and Claude Code receives it as native MCP inventory, next to whatever MCP servers it already had of its own.
That matters most on the days you are running more than one: sessions from different vendors side by side, and a notification tap opening the session that raised the request rather than the app’s front door. The full list is here.
The same Claude Code session in your terminal and in the app
Typing happier claude in a terminal starts the session right where you are standing, and the same session is in the app at the same time. What you read in that shell is Happier’s own display of the session — the transcript, the permission prompts, the tool output — rather than Claude Code’s interface. Nobody has to give up the terminal to get a phone client.
When you want Claude Code’s own TUI, happier attach <session-id> on the computer that owns the session hands it to you inside tmux, with the history already there. On the default runtime that hand-off is exclusive: while the terminal has the session, a message you send from the app waits in the queue rather than being typed underneath you, and it goes through when you hand control back. The unified terminal runtime is the other arrangement — one Claude Code process in a shared terminal host, writable from the terminal and the app at the same time.
The attach guide lists the cases instead of promising all of them.
Questions about running Claude Code through Happier
- Do I need Claude Code installed first?
- Yes. Happier runs the
claudealready on your PATH and prefers that copy over anything else. Anthropic distributes it with an install script; Happier can show you that command, and it will not execute a vendor install script on its own — vendor recipes are disabled unless you explicitly allow them. - Which Anthropic account gets billed?
- The one
claudeis signed in with on that computer. Happier launches the CLI as a subprocess and does not sit between it and Anthropic, so your subscription or API key is used exactly as it is when you runclaudeyourself. - How do I turn the unified terminal runtime on?
- It is a Claude Code provider setting in the app — Settings, Providers, Claude Code, “Use unified terminal runtime” — and it is off until you turn it on, because the Agent SDK runtime is the default. It needs a terminal host to put the TUI in: tmux if you have it, otherwise the zellij Happier bundles. That means macOS and Linux today; on Windows the CLI points you at WSL2. Either way
happier attach <session-id>puts you back at that session in a terminal, and going to your phone afterwards does not start a second one. - What happens if I send a message while Claude is working?
- On the default runtime it is queued or it interrupts, and the app tells you which before you commit to it. With the unified terminal runtime the message is typed into Claude Code’s own composer, so it can join the turn already in flight; when the screen is in a state where that would be unsafe — a dialog is open, or you are mid-draft in the terminal yourself — Happier holds it rather than typing over you.
- Does my CLAUDE.md still apply?
- Claude Code is reading your repository from the same working directory it always was, so
CLAUDE.md, your project settings and your hooks apply unchanged. MCP servers you define once in Happier are handed to it in addition to the ones it already has. - What does Happier cost?
- Nothing. The CLI, the mobile apps, the desktop app, the web app and the relay are MIT-licensed and free. You keep paying Anthropic for Claude Code exactly as you do now.
Get Claude Code onto your phone in two commands
One command on the computer that holds your code, then happier claude in the repository you want to work in.
curl -fsSL https://happier.dev/install | bashWalkthroughs are in the guides. All of it is MIT-licensed, and the relay is one you can run yourself.

