hapi README

The project's README from github.com/tiann/hapi. As one markdown file: README.md.

HAPI

Run official Claude Code / Codex / Cursor Agent / Grok Build / OpenCode / Kimi / Copilot / Antigravity / Pi / DeepSeek Harness sessions and control them remotely through a Web / PWA / Telegram Mini App.

Why HAPI? HAPI is a local-first alternative to Happy. See Why Not Happy? for the key differences.

Features

Demo

https://github.com/user-attachments/assets/38230353-94c6-4dbe-9c29-b2a2cc457546

Getting Started

npx @twsxtd/hapi hub --relay     # start hub with E2E encrypted relay
npx @twsxtd/hapi                 # run claude code

hapi server remains supported as an alias.

The terminal will display a URL and QR code. Scan the QR code with your phone or open the URL to access.

The relay uses WireGuard + TLS for end-to-end encryption. Your data is encrypted from your device to your machine.

For self-hosted options (Cloudflare Tunnel, Tailscale), see Installation

Docs

Native apps (iOS / Android)

Fully native SwiftUI and Kotlin Compose clients are in development under ios/ and android/. They pair with your hub by scanning the same terminal QR code as the web app, and follow the same protocol — see the client contract docs.

Build from source

Requires Bun 1.4.0.

bun install
bun run build:single-exe

Credits

HAPI means "哈皮" a Chinese transliteration of Happy. Great credit to the original project.

hapi (tiann/hapi)

kimi
Searching Database…

5.3K ·GitHub
What is this?HAPI lets you run official Claude Code, Codex, Cursor Agent, Grok Build, OpenCode, Kimi, Copilot, Antigravity, Pi or DeepSeek Harness coding-agent sessions on your machine and then control them remotely from a web browser, PWA, or Telegram Mini App.
Is this a replacement for my coding agent, or just a remote control layer?HAPI wraps your existing AI agent instead of replacing it, so you keep the same terminal, experience and muscle memory while gaining remote access.
How do I start using it?Run the hapi server command on your machine; it prints a URL and QR code in the terminal, and scanning that code (or opening the URL) connects your phone or browser to the session.
Are the native iOS and Android apps ready to use?Not yet — fully native SwiftUI (iOS) and Kotlin Compose (Android) clients are still under development; for now you connect through the web/PWA by scanning the same terminal QR code.
Does it only work with one coding agent?No — it's built to support Claude Code, Codex, Cursor Agent, Grok Build, OpenCode, Kimi, Copilot, Antigravity, Pi and DeepSeek Harness, so switching agents doesn't change your remote workflow.
Can I self-host it instead of relying on the default relay?Yes — HAPI documents self-hosted setups using Cloudflare Tunnel or Tailscale as alternatives to the built-in relay.
Is my session data encrypted when I connect remotely?Yes — the relay connection uses WireGuard plus TLS, encrypting your data end-to-end from your device to your machine.
Why not just use the original Happy project?HAPI is described as a local-first alternative to Happy, and the README points to a dedicated 'Why Not Happy?' document explaining the key differences between the two.
Can I limit which folders a remote session can touch?Yes — starting the runner with one or more --workspace-root flags opts into a Workspace Browser that scopes remote file access to only the allowed subdirectories.
Does it support hands-free voice control?Yes, HAPI includes a built-in voice assistant so you can talk to your AI agent without typing.
Where does the name HAPI come from?HAPI stands for '哈皮', a Chinese transliteration of 'Happy', crediting the original Happy project that inspired it.
Creator
tiann
Size
108.5 MB
Stars
5.3K
Age
9mo
Commits · 90 Days