You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Compatibility passes for iTerm2, Kitty, and WezTerm #13
Implemented on the v0.16 branch (PR #303): passive iTerm2, Kitty and WezTerm capability profiles on the shared TerminalHost probe, reattach fixtures across hosts, and native cursor backends for Kitty (and Ghostty).
Remaining scope: physical compatibility passes in real iTerm2, Kitty and WezTerm windows (keys, selection, hyperlinks, images, cursor effects). Automated coverage cannot certify those hosts.
Goal
Validate and fix NMSh compatibility with iTerm2, Kitty, and WezTerm using capability-driven behavior, without leaking host-specific assumptions into NMSh core.
Why
These three terminal hosts collectively cover a large portion of the macOS developer audience. Post-abstraction (#10), verifying each host's capability level and behavior ensures NMSh remains genuinely host-agnostic.
Scope
For each host (iTerm2, Kitty, WezTerm):
Define the capability set (enhancedKeyboard, graphicsProtocol, etc.)
Run full NMSh compatibility pass
Identify and fix any rendering or behavioral regressions
Document any host-specific capability benefits
Use capability-driven behavior throughout — do not add host-name conditionals to NMSh core.
Non-goals
Making every host feature-equivalent to Ghostty
Supporting hosts with fundamentally incompatible terminal behavior
Acceptance criteria
Core NMSh features work on iTerm2, Kitty, and WezTerm
No crash or rendering corruption on any of the three hosts
Capability sets for each host documented
Human verification
Open NMSh in each host (iTerm2, Kitty, WezTerm)
Run commands across all four presentation modes
Verify editor, history, passthrough, and /copy function correctly
Dependencies
Requires #10 (TerminalHost capability abstraction) and #11 (Terminal.app baseline).
Resuming milestone #10 from frozen PR #261 (a0b4751) on feature/v010-host-profiles. Capability profiles remain isolated under src/host and reuse the bounded startup probe. Physical host validation remains pending; this continuation remains an unmerged stack. Project status could not be updated because the token lacks read:project.
Passive iTerm2/Kitty/WezTerm capability profiles reuse TerminalHost and the shared probe. Reattach fixtures switch Ghostty → baseline → Kitty → iTerm2 → WezTerm while preserving the persistent shell environment. No new configuration adapters. Physical QA remains pending; additive checklist is in docs/testing/v010-physical-qa.md.
Verification: focused tests passed; full suite 785/785 with NO_COLOR removed and concurrency 4; build/typecheck/diff-check and benchmark-script typing passed. No matching helper/test processes or private nt-* roots remained. Package + lockfile are 0.7.0. Prior failed color/environment run, resize fixture correction, and isolated native-completion timing retry are documented in docs/development/v0.10.0-checkpoint.md.
Disk: 6.3 GiB at preflight; fell below 3 GiB to 3,170,304,000 bytes (2.9526 GiB), triggering the required stop. Last check recovered to 4,714,766,336 bytes (4.3910 GiB). Repeated rapid drops make continued suite work unsafe; no unrelated data deleted. Tracked checkout is clean; pre-existing untracked .serena/ remains untouched. Project status unavailable because token lacks read:project.
Remaining: #150 OSC 8; #151 research/optional justified child; #14 harness/matrix; #15 research/optional generic child; cumulative hardening/performance; final acceptance/docs PR and cumulative CI. No findings/child issues published for #151 or #15 yet.
Next: restore stable disk headroom, verify this branch/SHA and CI, then branch #150 from feature/v010-host-profiles. Do not restart v0.10, modify frozen predecessors, merge, close human-QA issues, bump versions, or begin v0.11.
Checkpoint CI update: workflow-dispatch run 36927072090 passed both Node 22 and Node 26 at ae66506. https://github.com/raiseCatError/notMyShell/actions/runs/36927072090 . PR #262 remains open and unmerged; physical QA is pending. Disk recovered to 5.35 GiB after the recorded 2.95 GiB safety stop; no further milestone implementation was started.
Code and automated coverage for iTerm2, Kitty, WezTerm (and Windows Terminal via WSL) shipped in v0.17: capability profiles, host launchers, multiplexer/dumb-terminal degradation, passthrough restoration and fixtures (#309). No real window of these hosts was used; the physical pass is tracked in #310. Closing this issue as implemented.
Activity
raiseCatError commentedon Oct 1, 2026
Resuming milestone #10 from frozen PR #261 (a0b4751) on feature/v010-host-profiles. Capability profiles remain isolated under src/host and reuse the bounded startup probe. Physical host validation remains pending; this continuation remains an unmerged stack. Project status could not be updated because the token lacks read:project.
raiseCatError commentedon Oct 1, 2026
Resource checkpoint: #13 implementation is published in PR #262, targeting frozen #261. No merge/release/issue closure.
Top branch: feature/v010-host-profiles
Top SHA: ae66506
Review order: #258 → #259 → #260 → #261 → #262
Passive iTerm2/Kitty/WezTerm capability profiles reuse TerminalHost and the shared probe. Reattach fixtures switch Ghostty → baseline → Kitty → iTerm2 → WezTerm while preserving the persistent shell environment. No new configuration adapters. Physical QA remains pending; additive checklist is in docs/testing/v010-physical-qa.md.
Verification: focused tests passed; full suite 785/785 with NO_COLOR removed and concurrency 4; build/typecheck/diff-check and benchmark-script typing passed. No matching helper/test processes or private nt-* roots remained. Package + lockfile are 0.7.0. Prior failed color/environment run, resize fixture correction, and isolated native-completion timing retry are documented in docs/development/v0.10.0-checkpoint.md.
Node 22/26 CI dispatched, result pending: https://github.com/raiseCatError/notMyShell/actions/runs/36927072090
Disk: 6.3 GiB at preflight; fell below 3 GiB to 3,170,304,000 bytes (2.9526 GiB), triggering the required stop. Last check recovered to 4,714,766,336 bytes (4.3910 GiB). Repeated rapid drops make continued suite work unsafe; no unrelated data deleted. Tracked checkout is clean; pre-existing untracked .serena/ remains untouched. Project status unavailable because token lacks read:project.
Remaining: #150 OSC 8; #151 research/optional justified child; #14 harness/matrix; #15 research/optional generic child; cumulative hardening/performance; final acceptance/docs PR and cumulative CI. No findings/child issues published for #151 or #15 yet.
Next: restore stable disk headroom, verify this branch/SHA and CI, then branch #150 from feature/v010-host-profiles. Do not restart v0.10, modify frozen predecessors, merge, close human-QA issues, bump versions, or begin v0.11.
raiseCatError commentedon Oct 1, 2026
Checkpoint CI update: workflow-dispatch run 36927072090 passed both Node 22 and Node 26 at ae66506. https://github.com/raiseCatError/notMyShell/actions/runs/36927072090 . PR #262 remains open and unmerged; physical QA is pending. Disk recovered to 5.35 GiB after the recorded 2.95 GiB safety stop; no further milestone implementation was started.
raiseCatError commentedon Oct 4, 2026
Code and automated coverage for iTerm2, Kitty, WezTerm (and Windows Terminal via WSL) shipped in v0.17: capability profiles, host launchers, multiplexer/dumb-terminal degradation, passthrough restoration and fixtures (#309). No real window of these hosts was used; the physical pass is tracked in #310. Closing this issue as implemented.