~ / rigs / happier-dev / happier

happier-dev/happier

Web, Desktop & Mobile client and orchestrator for Codex, Claude Code, OpenCode, Pi, Cursor, Grok, Antigravity, Kimi, Augment Code, Qwen, fully end-to-end encrypted

↗ GitHub ★ 1,856 mit updated 5d ago project Claude CodeCodexCursor
share on X
ARCHETYPE
Fort Knox
Deny lists, pre-tool hooks, sandboxing. Nothing touches prod without a signature.
CONTEXT TAX · EVERY TURN
~28.4k tokens
Context hog · median rig: 2.3k · breakdown
GUARDRAILS
5/5
Blocks destructive commands · Protects secrets · Pre-tool screening hook · No YOLO mode · Sandbox or ask-first rules · details

Copy this rig

# review before running: this installs third-party code
$ claude mcp add sequential-thinking -- npx -y @modelcontextprotocol/server-sequential-thinking
$ claude mcp add --transport http sentry https://mcp.sentry.dev/mcp
$ npx degit happier-dev/happier/.claude ./rig-happier  # inspect, then merge into .claude/

MCP servers are added to Claude Code at local scope; env vars are shown as YOUR_… placeholders — we never store values. Files are fetched with degit into a separate folder so you can review before merging.

$ claude mcp add sequential-thinking -- npx -y @modelcontextprotocol/server-sequential-thinking
$ claude mcp add --transport http sentry https://mcp.sentry.dev/mcp
$ npx degit happier-dev/happier/.agents/skills/attack-conclusion .claude/skills/attack-conclusion
$ npx degit happier-dev/happier/.agents/skills/decompose-gates .claude/skills/decompose-gates
$ npx degit happier-dev/happier/.agents/skills/handoff-report .claude/skills/handoff-report
$ npx degit happier-dev/happier/.agents/skills/happier-ci-stabilize .claude/skills/happier-ci-stabilize
$ npx degit happier-dev/happier/.agents/skills/happier-commit-worktree .claude/skills/happier-commit-worktree
$ npx degit happier-dev/happier/.agents/skills/happier-compatibility .claude/skills/happier-compatibility
$ npx degit happier-dev/happier/.agents/skills/happier-diagnose .claude/skills/happier-diagnose
$ npx degit happier-dev/happier/.agents/skills/happier-docs .claude/skills/happier-docs
$ npx degit happier-dev/happier/.agents/skills/happier-github-ops .claude/skills/happier-github-ops
$ npx degit happier-dev/happier/.agents/skills/happier-implement-plan .claude/skills/happier-implement-plan
$ npx degit happier-dev/happier/.agents/skills/happier-implement .claude/skills/happier-implement
$ npx degit happier-dev/happier/.agents/skills/happier-instruction-eval .claude/skills/happier-instruction-eval
$ npx degit happier-dev/happier/.agents/skills/happier-issue-diagnose .claude/skills/happier-issue-diagnose
$ npx degit happier-dev/happier/.agents/skills/happier-issue-triage .claude/skills/happier-issue-triage
$ npx degit happier-dev/happier/.agents/skills/happier-plan .claude/skills/happier-plan
$ npx degit happier-dev/happier/.agents/skills/happier-port-0-2-to-0-3 .claude/skills/happier-port-0-2-to-0-3
$ npx degit happier-dev/happier/.agents/skills/happier-pr-steward .claude/skills/happier-pr-steward
$ npx degit happier-dev/happier/.agents/skills/happier-profile-and-optimize .claude/skills/happier-profile-and-optimize
$ npx degit happier-dev/happier/.agents/skills/happier-release-notes .claude/skills/happier-release-notes
$ npx degit happier-dev/happier/.agents/skills/happier-release-promote .claude/skills/happier-release-promote
$ npx degit happier-dev/happier/.agents/skills/happier-release-validation-review .claude/skills/happier-release-validation-review
$ npx degit happier-dev/happier/.agents/skills/happier-release-validation .claude/skills/happier-release-validation
$ npx degit happier-dev/happier/.agents/skills/happier-release .claude/skills/happier-release
$ npx degit happier-dev/happier/.agents/skills/happier-review .claude/skills/happier-review
$ npx degit happier-dev/happier/.agents/skills/happier-session-control .claude/skills/happier-session-control
$ npx degit happier-dev/happier/.agents/skills/happier-testing .claude/skills/happier-testing
$ npx degit happier-dev/happier/.agents/skills/verify-claims .claude/skills/verify-claims
$ curl -fsSL --create-dirs -o .claude/agents/api-builder.md https://raw.githubusercontent.com/happier-dev/happier/dev/apps/stack/.claude/agents/api-builder.md
$ curl -fsSL --create-dirs -o .claude/agents/code-reviewer.md https://raw.githubusercontent.com/happier-dev/happier/dev/apps/stack/.claude/agents/code-reviewer.md
$ curl -fsSL --create-dirs -o .claude/agents/component-builder.md https://raw.githubusercontent.com/happier-dev/happier/dev/apps/stack/.claude/agents/component-builder.md
$ curl -fsSL --create-dirs -o .claude/agents/database-architect.md https://raw.githubusercontent.com/happier-dev/happier/dev/apps/stack/.claude/agents/database-architect.md
$ curl -fsSL --create-dirs -o .claude/agents/e2e-tests-engineer.md https://raw.githubusercontent.com/happier-dev/happier/dev/apps/stack/.claude/agents/e2e-tests-engineer.md
$ curl -fsSL --create-dirs -o .claude/agents/feature-implementer.md https://raw.githubusercontent.com/happier-dev/happier/dev/apps/stack/.claude/agents/feature-implementer.md
$ curl -fsSL --create-dirs -o .claude/agents/test-engineer.md https://raw.githubusercontent.com/happier-dev/happier/dev/apps/stack/.claude/agents/test-engineer.md
$ curl -fsSL --create-dirs -o .claude/agents/i18n-translator.md https://raw.githubusercontent.com/happier-dev/happier/dev/apps/ui/.claude/agents/i18n-translator.md

Merge into .claude/settings.json (project) or ~/.claude/settings.json (user). Hook commands reference scripts in the source repo — copy those too.

{
  "permissions": {
    "deny": [
      "Read(./.env*)",
      "Edit(./.env*)",
      "Write(./.env*)",
      "Bash(sudo:*)",
      "Bash(rm -rf /:*)",
      "Bash(mkfs:*)",
      "Bash(dd:*)",
      "Read(./.env*)",
      "Edit(./.env*)",
      "Write(./.env*)",
      "Bash(sudo:*)",
      "Bash(rm -rf /:*)",
      "Bash(mkfs:*)",
      "Bash(dd:*)"
    ],
    "ask": [
      "Bash(git push:*)",
      "Bash(git tag:*)",
      "Bash(docker push:*)",
      "Bash(git push:*)",
      "Bash(git tag:*)",
      "Bash(docker push:*)"
    ]
  },
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "*",
        "hooks": [
          {
            "type": "command",
            "command": "$CLAUDE_PROJECT_DIR/.claude/hooks/prevent-destructive-git.sh"
          },
          {
            "type": "command",
            "command": "$CLAUDE_PROJECT_DIR/.claude/hooks/prevent-destructive-git.sh"
          }
        ]
      }
    ]
  }
}

MCP servers (3)

serversourceest. tokens
Context7 local / custom 1.2k
Sequential Thinking · "sequential-thinking" npm 900
Sentry remote · remote 4.5k

Skills (27)

Subagents (8)

api-builderDeprecated placeholder. Do not use; follow root AGENTS.md and package instructions instead.
code-reviewerDeprecated placeholder. Do not use; follow root AGENTS.md and package instructions instead.
component-builderDeprecated placeholder. Do not use; follow root AGENTS.md and package instructions instead.
database-architectDeprecated placeholder. Do not use; follow root AGENTS.md and package instructions instead.
e2e-tests-engineerDeprecated placeholder. Do not use; follow root AGENTS.md and package instructions instead.
feature-implementerDeprecated placeholder. Do not use; follow root AGENTS.md and package instructions instead.
test-engineerDeprecated placeholder. Do not use; follow root AGENTS.md and package instructions instead.
i18n-translator
model: opus
Use this agent when you need to add new translatable strings to the application or verify existing translations. This includes: adding new UI text that needs to be translated, ensuring translations ar

Hooks (2)

eventmatcherruns
PreToolUse*$CLAUDE_PROJECT_DIR/.claude/hooks/prevent-destructive-git.sh
PreToolUse*$CLAUDE_PROJECT_DIR/.claude/hooks/prevent-destructive-git.sh

Slash commands (74)

/edison.list/edison.plan-mode/edison.qa-audit/edison.qa-bundle/edison.qa-new/edison.qa-promote/edison.qa-round/edison.qa-show/edison.qa-transition/edison.qa-validate/edison.read/edison.rules-current/edison.rules-tdd/edison.session-context/edison.session-list/edison.session-next/edison.session-show/edison.session-start/edison.session-status/edison.task-allocate-id/edison.task-audit/edison.ta<redacted>/edison.task-blocked/edison.task-claim/edison.task-done/edison.task-link/edison.task-list/edison.task-new/edison.task-ready/edison.task-relate/edison.task-remediate-audit/edison.task-show/edison.task-similar/edison.task-split/edison.task-status/edison.task-transition/edison.task-waves/edison.list/edison.plan-mode/edison.qa-audit/edison.qa-bundle/edison.qa-new/edison.qa-promote/edison.qa-round/edison.qa-show/edison.qa-transition/edison.qa-validate/edison.read/edison.rules-current/edison.rules-tdd/edison.session-context/edison.session-list/edison.session-next/edison.session-show/edison.session-start/edison.session-status/edison.task-allocate-id/edison.task-audit/edison.ta<redacted>/edison.task-blocked/edison.task-claim/edison.task-done/edison.task-link/edison.task-list/edison.task-new/edison.task-ready/edison.task-relate/edison.task-remediate-audit/edison.task-show/edison.task-similar/edison.task-split/edison.task-status/edison.task-transition/edison.task-waves

Cursor rules (10)

context · alwaysdelegation · alwaysedisonimplementation · alwaysvalidation · alwayscontext · alwaysdelegation · alwaysedisonimplementation · alwaysvalidation · always

Permissions

deny (14)
Read(./.env*)
Edit(./.env*)
Write(./.env*)
Bash(sudo:*)
Bash(rm -rf /:*)
Bash(mkfs:*)
Bash(dd:*)
Read(./.env*)
Edit(./.env*)
Write(./.env*)
Bash(sudo:*)
Bash(rm -rf /:*)
Bash(mkfs:*)
Bash(dd:*)
ask (6)
Bash(git push:*)
Bash(git tag:*)
Bash(docker push:*)
Bash(git push:*)
Bash(git tag:*)
Bash(docker push:*)
allow (42)
Read(./**)
Edit(./**)
Write(./**)
Glob(./**)
Grep(./**)
Bash(git:*)
Bash(ls:*)
Bash(cat:*)
Bash(grep:*)
Bash(find:*)
Bash(sed:*)
Bash(awk:*)
Bash(mkdir:*)
Bash(cp:*)
Bash(mv:*)
Bash(rm:*)
Bash(chmod:*)
Bash(touch:*)
Bash(pwd:*)
WebSearch
WebFetch
Read(./**)
Edit(./**)
Write(./**)
Glob(./**)
Grep(./**)
Bash(git:*)
Bash(ls:*)
Bash(cat:*)
Bash(grep:*)
Bash(find:*)
Bash(sed:*)
Bash(awk:*)
Bash(mkdir:*)
Bash(cp:*)
Bash(mv:*)
Bash(rm:*)
Bash(chmod:*)
Bash(touch:*)
Bash(pwd:*)
WebSearch
WebFetch

Similar rigs

copied ✓