What problem does it solve? Effect-TS codebases often drift into inconsistent patterns: generic errors that lose context, deeply nested Layer compositions that slow the TypeScript language server, and React state managed imperatively. This Skill enforces a single opinionated set of conventions so services, errors, schemas, and atoms stay type-safe, testable, and observable. ## Core Features & Use Cases - Service & Layer Conventions: Mandates Effect.Service with accessors and declared dependencies, Layer.mergeAll for flat composition, and Layer.provideMerge to avoid nested types that degrade LSP performance. - Explicit Error Modeling: Requires Schema.TaggedError with rich context fields and catchTag/catchTags handling, forbidding generic NotFoundError-style collapses so frontends can render specific UI per failure. - Effect Atom React Patterns: Covers Atom.make, families, keepAlive, Result.builder rendering with onErrorTag, mutation loading via result.waiting, and reactivityKeys cache invalidation. - Use Case: When writing a new UserService with Effect.Service, wiring it into the app root with Layer.mergeAll, and building a React profile component with useAtomValue and Result.builder, this Skill ensures every step follows the enforced conventions. ## Quick Start Ask the assistant to review or write Effect-TS code such as a service, error type, layer composition, or atom-based React component following these best practices.