Skip to content
This repository was archived by the owner on Feb 14, 2026. It is now read-only.

Commit 5d3f1a6

Browse files
authored
Merge pull request #128 from Scoteezy/feat/acp-integration
2 parents 5c0a56f + 13c1500 commit 5d3f1a6

29 files changed

Lines changed: 2719 additions & 519 deletions

README.md

Lines changed: 99 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Happy
22

3-
Code on the go controlling claude code from your mobile device.
3+
Code on the go — control AI coding agents from your mobile device.
44

55
Free. Open source. Code anywhere.
66

@@ -12,6 +12,8 @@ npm install -g happy-coder
1212

1313
## Usage
1414

15+
### Claude (default)
16+
1517
```bash
1618
happy
1719
```
@@ -21,44 +23,133 @@ This will:
2123
2. Display a QR code to connect from your mobile device
2224
3. Allow real-time session sharing between Claude Code and your mobile app
2325

26+
### Gemini
27+
28+
```bash
29+
happy gemini
30+
```
31+
32+
Start a Gemini CLI session with remote control capabilities.
33+
34+
**First time setup:**
35+
```bash
36+
# Authenticate with Google
37+
happy connect gemini
38+
```
39+
2440
## Commands
2541

26-
- `happy auth` – Manage authentication
42+
### Main Commands
43+
44+
- `happy` – Start Claude Code session (default)
45+
- `happy gemini` – Start Gemini CLI session
2746
- `happy codex` – Start Codex mode
47+
48+
### Utility Commands
49+
50+
- `happy auth` – Manage authentication
2851
- `happy connect` – Store AI vendor API keys in Happy cloud
2952
- `happy notify` – Send a push notification to your devices
3053
- `happy daemon` – Manage background service
3154
- `happy doctor` – System diagnostics & troubleshooting
3255

56+
### Connect Subcommands
57+
58+
```bash
59+
happy connect gemini # Authenticate with Google for Gemini
60+
happy connect claude # Authenticate with Anthropic
61+
happy connect codex # Authenticate with OpenAI
62+
happy connect status # Show connection status for all vendors
63+
```
64+
65+
### Gemini Subcommands
66+
67+
```bash
68+
happy gemini # Start Gemini session
69+
happy gemini model set <model> # Set default model
70+
happy gemini model get # Show current model
71+
happy gemini project set <id> # Set Google Cloud Project ID (for Workspace accounts)
72+
happy gemini project get # Show current Google Cloud Project ID
73+
```
74+
75+
**Available models:** `gemini-2.5-pro`, `gemini-2.5-flash`, `gemini-2.5-flash-lite`
76+
3377
## Options
3478

35-
- `-h, --help` - Show help
36-
- `-v, --version` - Show version
79+
### Claude Options
80+
3781
- `-m, --model <model>` - Claude model to use (default: sonnet)
3882
- `-p, --permission-mode <mode>` - Permission mode: auto, default, or plan
39-
- `--claude-env KEY=VALUE` - Set environment variable for Claude Code (e.g., for [claude-code-router](https://github.com/musistudio/claude-code-router))
83+
- `--claude-env KEY=VALUE` - Set environment variable for Claude Code
4084
- `--claude-arg ARG` - Pass additional argument to Claude CLI
4185

86+
### Global Options
87+
88+
- `-h, --help` - Show help
89+
- `-v, --version` - Show version
90+
4291
## Environment Variables
4392

93+
### Happy Configuration
94+
4495
- `HAPPY_SERVER_URL` - Custom server URL (default: https://api.cluster-fluster.com)
4596
- `HAPPY_WEBAPP_URL` - Custom web app URL (default: https://app.happy.engineering)
4697
- `HAPPY_HOME_DIR` - Custom home directory for Happy data (default: ~/.happy)
4798
- `HAPPY_DISABLE_CAFFEINATE` - Disable macOS sleep prevention (set to `true`, `1`, or `yes`)
4899
- `HAPPY_EXPERIMENTAL` - Enable experimental features (set to `true`, `1`, or `yes`)
49100

101+
### Gemini Configuration
102+
103+
- `GEMINI_MODEL` - Override default Gemini model
104+
- `GOOGLE_CLOUD_PROJECT` - Google Cloud Project ID (required for Workspace accounts)
105+
106+
## Gemini Authentication
107+
108+
### Personal Google Account
109+
110+
Personal Gmail accounts work out of the box:
111+
112+
```bash
113+
happy connect gemini
114+
happy gemini
115+
```
116+
117+
### Google Workspace Account
118+
119+
Google Workspace (organization) accounts require a Google Cloud Project:
120+
121+
1. Create a project in [Google Cloud Console](https://console.cloud.google.com/)
122+
2. Enable the Gemini API
123+
3. Set the project ID:
124+
125+
```bash
126+
happy gemini project set your-project-id
127+
```
128+
129+
Or use environment variable:
130+
```bash
131+
GOOGLE_CLOUD_PROJECT=your-project-id happy gemini
132+
```
133+
134+
**Guide:** https://goo.gle/gemini-cli-auth-docs#workspace-gca
135+
50136
## Contributing
51137

52138
Interested in contributing? See [CONTRIBUTING.md](CONTRIBUTING.md) for development setup and guidelines.
53139

54140
## Requirements
55141

56142
- Node.js >= 20.0.0
57-
- Required by `eventsource-parser@3.0.5`, which is required by
58-
`@modelcontextprotocol/sdk`, which we used to implement permission forwarding
59-
to mobile app
143+
144+
### For Claude
145+
60146
- Claude CLI installed & logged in (`claude` command available in PATH)
61147

148+
### For Gemini
149+
150+
- Gemini CLI installed (`npm install -g @google/gemini-cli`)
151+
- Google account authenticated via `happy connect gemini`
152+
62153
## License
63154

64155
MIT

0 commit comments

Comments
 (0)