[BUG] `/terminal-setup` failes for Ghostty nix os config files

Resolved 💬 5 comments Opened Dec 25, 2025 by jpmcb Closed Feb 24, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

When running /terminal-setup in Ghostty, I always get the following failure with an uncaught error:

This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason:
Error: Failed to install Ghostty Shift+Enter key binding
    at _MD (/$bunfs/root/claude:357:310)
    at _MD (/$bunfs/root/claude:354:754)
    at wtR (/$bunfs/root/claude:335:91870)
    at wtR (/$bunfs/root/claude:335:92449)

If I had to guess, I _believe_ this is because I have my Ghostty config built from my Nix home-manager configs:

❯ ll ~/.config/ghostty/config
lrwxr-xr-x@ 1 jpmcb  staff    85B Dec 22 08:44 /Users/jpmcb/.config/ghostty/config@ -> /nix/store/l04mf07crnxfcb5zlgn85qgnpdccqhlx-home-manager-files/.config/ghostty/config

and Claude code isn't following the link appropriately. At the least, a more helpful error message would help.

---

Possibly related:

Steps to Reproduce

  1. Use a nixOS linked file for the ghotty config. For me, this lives in my MacOS home manager config and gets rebuilt during darwin-rebuild -- switch
  2. Run claude code
  3. Run /terminal-setup

---

  • Ghostty: 1.2.3
  • Claude Code: 2.0.76 (Claude Code)
  • MacOS: 15.6.1
  • Nix: (if you're really curious, my configs are here: https://github.com/jpmcb/configs)
  • Unstable packages
  • Darwing nix

View original on GitHub ↗

This issue has 5 comments on GitHub. Read the full discussion on GitHub ↗