skills/effect-schema/SKILL.md
Define Effect schemas that are verified against domain types. Use when authoring or updating Effect Schema definitions, or when the user mentions schema/type parity, satisfies, or tsafe Equals checks.
npx skillsauth add morgs32/skills effect-schemaInstall 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.
interface), then define the schema and assert parity.satisfies Schema.Schema<YourType, any> on the schema.assert<Equals<typeof YourSchema.Type, Readonly<YourType>>>() using tsafe.assert<Equals<...>> isn't typed correctly but the satisfies is, you can optionally add the _check1/_check2 assignments with void (see ZerospinCommandSchema).validateUnknown from zerospin if available.import type { Equals } from 'tsafe';
import { Schema } from 'effect';
import { assert } from 'tsafe';
export interface IFoo {
bar: string;
}
export const ZFoo = Schema.Struct({
bar: Schema.String,
}) satisfies Schema.Schema<IFoo, any>;
const _check1: typeof ZFoo.Type = {} as IFoo;
const _check2: IFoo = {} as typeof ZFoo.Type;
void _check1;
void _check2;
assert<Equals<typeof ZFoo.Type, Readonly<IFoo>>>();
development
Create and map ZerospinError instances for Effect-based code in zerospin. Use when defining error codes/messages, wrapping causes, mapping/catching errors in Effects, or returning structured errors from Effect.gen/Effect.fn or promise boundaries.
data-ai
Update agent skills in this repo or another.
development
TypeScript type-safety rules and guidance.
devops
Fix and update Turborepo (Turbo) configuration and task setup. Use for turbo.json errors, schema updates (pipeline -> tasks), and package-level config issues like missing extends.