Effect Schema conventions and patterns. Triggers on Schema class creation, tagged unions, enums, type guards, or test fixtures using Effect Schema.
Enforces Effect Schema conventions for instantiation, type guards, and enum definitions.
/plugin marketplace add jasonkuhrt/claude-marketplace/plugin install effect@jasonkuhrtThis skill inherits all available tools. When active, it can use any tool Claude has access to.
ALWAYS use Schema.make() for creating instances:
// ✅ GOOD - Use Schema.make()
const user = Schema.make(User)({ name: 'Alice', age: 30 })
// ❌ BAD - Manual construction
const user = { _tag: 'User', name: 'Alice', age: 30 }
ALWAYS use Schema.is() or static .is method:
// ✅ GOOD
if (Standard.is(value)) { ... }
if (Schema.is(Standard)(value)) { ... }
// ❌ BAD - manual _tag check
if (value._tag === 'Standard') { ... }
ALWAYS inline enum values directly in Schema.Enums():
// ✅ GOOD - inline values, use .enums for runtime access
export const Status = Schema.Enums({
active: 'active',
inactive: 'inactive',
})
export type Status = typeof Status.Type
// Runtime: Status.enums.active
// ❌ BAD - separate const object
export const StatusValues = {
active: 'active',
inactive: 'inactive',
} as const
export const Status = Schema.Enums(StatusValues)
Schema.make() for type-safe instantiationSchema.is() for type predicates, never manual _tag checksSchema.Enums().enums propertyThis skill should be used when the user asks to "create a hookify rule", "write a hook rule", "configure hookify", "add a hookify rule", or needs guidance on hookify rule syntax and patterns.
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.