feat(gojnimer6553): add happy module - #1039
Open
gojnimer6553 wants to merge 3 commits into
Open
Conversation
Runs slopus/happy in a Coder workspace: a single app tile shows a QR code and direct link for pairing the Happy mobile/web app to the Claude Code session running in the workspace. Since happy has no non-interactive pairing mode, the module drives its interactive auth-method prompt through a real tmux pty on every click and mints a fresh pairing link each time. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Best-effort installs tmux via the workspace's system package manager (apt-get/dnf/yum/apk/pacman) when running as root or with passwordless sudo, since tmux has no official portable static binary like Node does. Falls back to a clear error when neither privilege path is available. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…convention Reverts the icon default to /icon/happy.svg -- every module in the registry uses this Coder-served path for coder_app/coder_script icons, even when the icon isn't yet in Coder's built-in bundle (it will show broken here until Coder adds it, same as the sibling t3code module). A personal fork URL was an unprecedented, non-durable stopgap. Also fixes README usage examples to start at version 0.0.1, matching how other first-time module submissions are versioned (e.g. matifali/omnigent, coder/agent-firewall), not 1.0.0. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Adds a new
happymodule, wrapping slopus/happy so a Coder workspace can be paired to a running Claude Code session from the Happy mobile/web app, end-to-end encrypted.Happy has no non-interactive pairing mode -- the CLI always renders an interactive prompt and, for the mobile flow, a QR code /
happy://terminal?...deep link in the terminal. Since there's also no way to request a fresh pairing link from an already-paired machine without a full re-pair, the module embraces that: it drives Happy's interactive prompt through a realtmuxpty behind acoder_apptile, and every click mints a brand-new pairing link (rendered as both a scannable QR code and plain text), killing any previously paired session first.tmuxis a genuine runtime dependency (Happy's Ink UI needs a real terminal); the install script best-effort auto-installs it via the workspace's system package manager (apt-get/dnf/yum/apk/pacman) when root or passwordlesssudois available, and fails with a clear message otherwise -- so it works out of the box on most images without requiring a Dockerfile change.Type of Change
Module Information
Path:
registry/gojnimer6553/modules/happyNew version:
v0.0.1Breaking change: [ ] Yes [x] No
Testing & Validation
bun test) -- 15 Terraform native tests (main.tftest.hcl) and 8 TypeScript/Docker tests (main.test.ts), including a real npm install ofhappyand a real pairing cycle against Happy's hosted auth APIbun fmt)happyinstall, real tmux-driven pairing automation, live QR code + deep link rendered, tmux auto-install verified on a clean containerRelated Issues
None