
happy는 Claude Code나 Codex를 모바일과 웹으로 이어서 다룰 수 있게 만드는 오픈소스 레포다. 겉으로는 “모바일 클라이언트”처럼 보이지만, 실제 핵심은 기존 CLI를 대체하는 래퍼와 이를 원격 제어하는 동기화 구조에 있다. 그래서 이 레포는 단순 앱 소개보다, AI 코딩 세션을 여러 디바이스에서 끊김 없이 이어 붙이는 방식에 더 주목해서 보는 편이 낫다.
Happy는 claude나 codex를 직접 호출하는 대신 happy claude, happy codex처럼 자체 CLI를 앞단에 두고, 그 세션을 모바일·웹 앱에서 이어서 제어하는 구조를 가진다. 저장소 소개만 보면 “iOS/Android/Web 앱”이 먼저 보이지만, 구조상 더 중요한 것은 아래 세 가지다.
README에서도 앱 설치 후 npm install -g happy로 CLI를 설치하고, 이후 claude나 codex 대신 happy를 사용하도록 안내한다. 즉, 제품의 진입점은 앱이 아니라 CLI 래퍼다.
이 레포가 겨냥하는 문제는 꽤 실용적이다. AI 코딩 에이전트가 장시간 작업하는 동안 사용자는 늘 책상 앞에 붙어 있지 않다. 그런데 실제로는 승인 요청, 에러, 중간 상태 확인 같은 순간이 자주 생긴다. Happy는 그 틈을 메우기 위해 만들어졌다.
README 기준으로 Happy가 내세우는 포인트는 다음과 같다.
핵심은 “새로운 AI 코딩 도구”를 만드는 것이 아니라, 기존 CLI 기반 에이전트 사용 경험의 이동성과 연속성을 보강하는 데 있다.
이 저장소를 처음 볼 때 가장 먼저 잡아야 할 포인트는, 모바일 앱이 본체가 아니라는 점이다. 실제 동작의 중심은 happy-cli에 있다.
패키지 구조를 보면 모노레포 안에 다음 컴포넌트가 들어 있다.
happy-app: React Native + Expo 기반 모바일/웹 클라이언트happy-cli: Claude Code, Codex를 감싸는 Node.js CLIhappy-agent: 원격 에이전트 제어happy-server: 암호화 동기화를 위한 백엔드루트 package.json에서도 이 패키지들이 워크스페이스로 묶여 있고, 웹·CLI·서버 실행 스크립트가 각각 분리되어 있다. 즉, 이 프로젝트는 단일 앱이 아니라 클라이언트 + CLI + 서버 + 프로토콜 문서가 맞물린 시스템으로 보는 편이 맞다.
docs/ 폴더를 보면 단순 사용 가이드가 아니라 내부 프로토콜과 아키텍처 설명 문서가 꽤 촘촘하게 정리돼 있다.
예를 들면 이런 문서들이 있다.
protocol.md: WebSocket 기반 wire protocolrealtime-sync-and-rpc.md: 실시간 동기화와 RPC 흐름encryption.md: 암호화 경계와 wire encodingbackend-architecture.md: 서버 내부 구조cli-architecture.md: CLI와 데몬 구조session-protocol.md: 암호화된 세션 이벤트 프로토콜voice-architecture.md: 음성 기능 구조즉, 이 레포는 “앱 코드만 있는 프로젝트”가 아니라, 프로토콜을 가진 멀티클라이언트 시스템에 가깝다. AI 코딩 툴을 단순 UI로 감싸는 수준을 넘어서, 세션 이동과 동기화를 별도 문제로 다루고 있다는 점이 흥미롭다.
happy-app은 React Native + Expo 기반이고, 웹 클라이언트까지 함께 가져간다. 반면 CLI는 Node.js 기반으로 별도 패키지로 존재한다. 이 분리는 꽤 현실적이다.
즉, “모바일에서 바로 코드를 돌린다”보다 “내 컴퓨터에서 돌아가는 AI 세션을 다른 디바이스에서 본다”에 가깝다. 이 점을 먼저 이해하면 저장소 구조가 훨씬 쉽게 읽힌다.
README에는 종단간 암호화를 전면에 내세우고 있고, 문서 폴더에도 encryption.md, permission-resolution.md, deployment.md, multi-process.md 같은 운영·보안·장애 대응 성격의 문서가 있다. 이건 단순 데모성 프로젝트와 다른 지점이다.
특히 이 구조는 사용자의 코드와 세션 상태가 네트워크를 타기 때문에, 앱 UX보다 먼저 암호화 경계, 권한 모델, 세션 동기화 실패 시 동작이 중요해진다. 이 레포가 별도 문서로 그 부분을 관리하는 건 꽤 좋은 신호다.
Happy는 다음 같은 사람에게 특히 흥미롭다.
반대로, 아직 CLI 기반 AI 코딩 워크플로우 자체를 거의 안 쓰는 사람에게는 바로 체감되는 도구라기보다 한 단계 앞선 운영형 도구에 가깝다. 앱보다 먼저 기존 작업 방식이 있어야 가치가 커진다.
이 레포를 처음 볼 때는 아래 순서가 효율적이다.
README.mdpackage.jsondocs/README.mddocs/cli-architecture.md, docs/backend-architecture.md, docs/protocol.mddocs/encryption.md, docs/permission-resolution.md장점만 있는 레포는 아니다. 확인 가능한 범위에서 보면 몇 가지 포인트가 있다.
즉, 단순 생산성 앱이라기보다 AI 코딩 워크플로우를 하나의 분산 시스템처럼 다루는 프로젝트다. 그래서 “쉽게 써볼 앱”으로 보기보다, “AI 코딩 제품을 어떻게 시스템화할 수 있는지 보여주는 구현체”로 보면 더 재미있다.
Happy는 모바일 앱이 눈에 먼저 들어오지만, 실제로는 happy CLI를 중심으로 앱·서버·에이전트·프로토콜이 얽힌 구조를 가진다. 이 레포의 핵심 가치는 UI보다 세션 연속성, 원격 제어, 암호화된 동기화, 멀티디바이스 UX에 있다.
그래서 이 저장소는 두 가지 관점에서 볼 만하다.
AI 코딩 툴 자체보다, 그 위에 붙는 운영 경험과 디바이스 전환 UX에 관심이 있다면 꽤 참고할 만한 레포다.