weishu 680a37071e refactor(sync): split SyncEngine into modular services
Extracted five focused modules from SyncEngine to improve maintainability
and separation of concerns:
- EventPublisher: handles event broadcasting and listener management
- SessionCache: manages session state and lifecycle
- MachineCache: manages machine state and lifecycle
- MessageService: handles message storage and retrieval
- RpcGateway: handles RPC communication with sessions and machines
- aliveTime: utility for clamping and validating alive timestamps

Removed unused members (sessionMessages cache, fetchMessages,
getSessionMessages, setPermissionMode, setModelMode) that added
complexity without clear value.

SyncEngine now orchestrates these services as a lightweight facade,
improving code organization and testability.
2026-01-03 16:27:35 +08:00
2026-01-03 11:05:14 +08:00
2026-01-03 16:13:01 +08:00
2026-01-03 14:43:59 +08:00
2026-01-03 16:13:01 +08:00
2026-01-03 14:43:59 +08:00
2026-01-02 16:26:40 +08:00
2025-12-16 15:03:50 +08:00

HAPI

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

Run Claude Code / Codex / Gemini sessions locally 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

  • Seamless Handoff - Work locally with native Claude Code or Codex, switch to remote when needed, switch back anytime.
  • Start AI coding sessions from any machine.
  • Monitor and control sessions from your phone or browser.
  • Approve or deny tool permissions remotely.
  • Browse files and view git diffs.
  • Track session progress with todo lists.
  • Supports multiple AI backends: Claude Code, Codex, and Gemini.

Getting Started

npx @twsxtd/hapi server # start the server locally
npx @twsxtd/hapi # run claude code 

Open http://<server-ip>:3006 and login with the token, if you need to access it remotely, see Remote access

More options: Quick Start | Installation

Docs

Build from source

bun install
bun run build:single-exe
S
Description
GitHub 镜像: wu736139669/hapi(每日自动同步)
Readme AGPL-3.0
103 MiB
Languages
TypeScript 99.5%
CSS 0.2%
JavaScript 0.2%
HTML 0.1%