plugins/tui-master/skills/tui-troubleshooting/SKILL.md
Use this skill when a terminal UI freezes, hangs, shows a blank screen, corrupts terminal state, leaves raw mode stuck, stops responding to input, garbles output, breaks colors/cursor state, fails over SSH/tmux/screen, behaves differently on Windows/ConPTY, or needs deep root-cause analysis for subtle terminal failure modes. PROACTIVELY activate for: TUI freeze, terminal hang, blank TUI, raw mode stuck, stdin paused, no input events, alternate screen stuck, mouse mode stuck, bracketed paste markers, garbled terminal output, corrupted cursor/colors, partial renders, resize races, terminal state cleanup bugs, npm run tui froze, and debugging terminal gotchas. Provides: freeze/hang diagnosis, terminal recovery, startup and cleanup lifecycle checks, platform triage, and fix patterns.
npx skillsauth add JosiahSiegel/claude-plugin-marketplace tui-troubleshootingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill when the user reports that a TUI "froze", "hung", "blanked the terminal", "stopped accepting input", "left the terminal broken", or "works in one terminal but not another". Treat these reports as terminal lifecycle failures until proven otherwise.
Do not give a shallow checklist. Establish the failure class, inspect startup and cleanup order, and look for a concrete lifecycle bug:
Prioritize these before exotic terminal protocol issues:
process.stdin.pause() followed by raw mode without resume() prevents data events; the UI may wait forever.Ask for or inspect:
When a terminal is stuck, tell the user how to recover before deeper debugging:
stty sane
reset
printf '\033[?1049l\033[?25h\033[?1000l\033[?1002l\033[?1003l\033[?1006l\033[?2004l\033[?1004l\033[0m'
On Windows PowerShell, closing the tab is sometimes the fastest recovery when a child process left ConPTY in a bad state.
Every TUI should use one lifecycle owner:
references/freeze-hang-diagnosis.md - Root causes, symptoms, diagnostics, fix sketches, and prevention patterns for startup and runtime hangs.references/terminal-state-corruption.md - Garbled display, wrong colors, cursor bugs, partial renders, interleaved writes, and resize/render races.references/diagnostic-playbook.md - Decision trees with concrete commands for freezes, stuck terminal state, no input, SSH/tmux, Windows, and garbled output.development
Use for Clerk sessions, tokens, webhooks, orgs, and security. PROACTIVELY activate for session tokens, JWT templates, getToken(), custom claims, pending sessions, multi-session UX, organizations, roles, permissions, system vs custom permissions, features/plans, MFA/passkeys/password policy/bot protection, Clerk webhooks, Svix signatures, verifyWebhook(), user/org sync, retries/replays, environment variables, custom domains, secret rotation, logs, and auth security reviews. Provides token semantics, webhook idempotency, authorization defaults, and hardening checklist.
tools
Use for Clerk in Next.js. PROACTIVELY activate for @clerk/nextjs setup, App Router auth()/currentUser(), clerkMiddleware(), proxy.ts/middleware.ts, createRouteMatcher(), protected pages/layouts/Route Handlers/Server Actions/API routes/tRPC, auth.protect() role/permission/token checks, ClerkProvider placement, server-only clerkClient, Link prefetch, redirects, 401/404 auth failures, custom domains, __clerk proxy paths, and deployment gotchas. Provides file patterns, server/client boundary rules, matcher templates, and production checks.
development
Use for Clerk frontend auth flows. PROACTIVELY activate for React, JavaScript, Vue, Nuxt, Astro, Expo, React Router, TanStack React Start, or SPA setup; ClerkProvider and publishable-key wiring; SignIn/SignUp/UserButton/UserProfile/OrganizationSwitcher; custom useUser/useAuth/useClerk/useSignIn/useSignUp/useSession/useOrganization flows; multi-session UX; cross-origin getToken() fetches; loading states, redirects, routing, CORS/cookies, or hydration bugs. Provides SDK selection, UI patterns, token-fetch templates, and frontend gotchas.
development
Use for Clerk dev/prod readiness, deployment, and multi-language implementation planning. PROACTIVELY activate for environment variables, pk_test/sk_test vs pk_live/sk_live, local dev, preview/staging/prod instances, domains/DNS, redirects, OAuth credentials, custom domains/proxy, authorizedParties, CSP, CORS/cookies, webhooks/tunnels, Vercel/Netlify/Cloudflare/API gateways, monitoring/troubleshooting, and backends in Node/Express/Fastify, Python/FastAPI/Django/Flask, Go, Ruby/Rails, Java/Spring, .NET, PHP/Laravel. Provides checklists, rollout plans, and language-portable patterns.