yuu1ch13
On the accessibility point, if you disable transparency effects, the glass parts will respect that. But Calyx won't just become Ghostty. The features beyond glass (tab groups, command palette, session persistence, notifications, browser tabs, git viewer, etc.) are all still there. Glass is the visual layer, not the core of what Calyx adds.
I was a Ghostty user but kept running into the same problem: too many tabs, no way to organize them. Ghostty doesn't have tab groups or a plugin system, so I built Calyx using libghostty as the rendering engine.
The idea is simple — keep Ghostty's speed, but add the workflow features I was missing:
- Tab Groups — color-coded, collapsible groups to organize tabs by project
- Command Palette (Cmd+Shift+P) — search and run any action
- Session Persistence — tabs, splits, and working directories survive restarts
- Notification Badges — OSC 9/99/777 notifications with per-tab badge counts
- Built-in Browser — open docs right next to your terminal
- Terminal Search (Cmd+F) — find text in terminal output
- Git Diff View — inline source control diffs
- IPC MCP Server — programmatic control from tools like Claude Code (Demo: https://youtu.be/LHY-NJEqBTg)
- Scrollbar, cursor-click-to-move, Liquid Glass UI throughout
Happy to answer any questions.Show HN: Two tools to make Claude Code more autonomous
I built two CLI tools to fix friction points with Claude Code:claude-remote-approver – Sends permission prompts (Bash, Write, Edit) as push notifications to your phone via ntfy.sh. Tap Approve/Deny from anywhere. Falls back to terminal on timeout. Supports "Always Approve" for trusted tools.claude-plan-reviewer – Hooks into Claude Code's plan mode and sends plans to a rival AI (OpenAI Codex CLI...
Show HN: Claude-plan-reviewer – Rival AI reviews Claude Code's plans
Claude Code has a plan mode where it writes implementation plans before coding. I built a tool that intercepts those plans and sends them to a competing AI (Codex CLI or Gemini CLI) for adversarial review before Claude is allowed to proceed.When Claude calls `ExitPlanMode`, a `PreToolUse` hook fires, sends the plan to the reviewer, and returns `{ permissionDecision: "deny",...
Show HN: Approve Claude Code permission requests from your phone via ntfy
Claude Code asks for permission before running tools (Bash, Write, Edit, etc.). If you're not at your terminal, it just waits. This tool hooks into Claude Code's PermissionRequest hook and sends each prompt as a push notification to your phone via ntfy.sh. Tap Approve or Deny, and Claude continues.Setup: npm install -g claude-remote-approver claude-remote-approver setup Then scan the QR...
Show HN: Constela – JSON DSL for AI-generated UI with compile-time validation
I built a UI language where you describe UI as JSON, and errors are caught at compile time—not runtime.Why: When AI generates UI, JavaScript is too flexible. You get runtime errors, implicit behavior, hard-to-debug state. Constela constrains the surface area so output is deterministic and validatable.Side effect: 5× faster builds, 5× smaller output than Next.js (same site, measured).Live demo...
Show HN: A minimal wrapper for stable FastAPI WebSockets
https://github.com/yuuichieguchi/capsule-rsc
I built a small Python library to improve WebSocket connection stability in FastAPI apps. fastapi-websocket-stabilizer wraps FastAPI’s native WebSocket with automatic heartbeat (ping/pong) handling to reduce unexpected disconnects caused by idle timeouts or unstable networks. It’s lightweight, easy to integrate, and focused only on keeping long-lived WebSocket connections reliable—no full...
Show HN: Constela – Build web pages using JSON instead of JavaScript
https://github.com/yuuichieguchi/constela
Hi everyone,I’ve been building a programming language called Constela.Constela lets you build web pages using JSON instead of JavaScript. UI structure, state, and events are described as a constrained JSON DSL, which is validated and compiled before execution.The idea is to treat UI not as handwritten code, but as verifiable data. This allows issues like undefined state references, invalid...
Show HN: Enforcing Safe RSC Boundaries
https://github.com/yuuichieguchi/capsule-rsc
React Server Components make it easy to accidentally break server/client boundaries: Dates silently turning into strings, non-serializable values leaking across the boundary, or runtime errors when a function slips through.CapsuleRSC is a framework focused on one thing: mechanically enforcing RSC boundaries instead of relying on conventions.It enforces safety at three layers: - Type-level:...