What problem does it solve? Building authentication UI in Jac client code fails silently when developers misuse the @jac/runtime auth helpers: jacSignup returns a dict rather than a bool, signup does not establish a session, and un-awaited async calls or undeclared variables cause runtime errors that pass compilation. This Skill encodes the correct call patterns so auth flows work on the first attempt. ## Core Features & Use Cases - Correct helper usage: Documents the exact return types of jacSignup (dict), jacLogin (bool), jacLogout (sync), and jacIsLoggedIn (sync), including the truthy-dict pitfall that makes if not signup_result useless. - Signup-then-login sequencing: Enforces the three awaited steps (signup, login, then privileged server calls) so def:priv endpoints receive an authenticated session instead of a 401. - Route protection: Shows AuthGuard-based layout protection for file-based route groups plus inline jacIsLoggedIn() guards, and SSO login via jacSsoLogin with server-side provider configuration. - Use Case: When adding a registration form that also saves a user profile, follow the Skill's pattern to await signup, await login, then call the privileged save endpoint, avoiding the silent unauthenticated-request failure. ## Quick Start Add a login and signup flow to my Jac app using the @jac/runtime auth helpers, with an AuthGuard protecting the dashboard route.