effect

Integrate Effect v4 and effect-smol into TypeScript projects with typed workflows.

2|Updated Apr 3, 2026
One-click install
npx skills add https://github.com/ingbyr/lzcode --skill effect-ingbyr
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: effect
Source: https://github.com/ingbyr/lzcode/tree/main/.opencode/skills/effect
Command: npx skills add https://github.com/ingbyr/lzcode --skill effect-ingbyr

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Effect v4 / effect-smol patterns are powerful but complex to adopt across a TypeScript codebase; this skill provides guidance and patterns to integrate Effect into your project.

Core Features & Use Cases

  • Type-safe workflow composition using Effect.gen and Effect.fn patterns.
  • Guidance on modeling domain errors with Schema.TaggedErrorClass and branded IDs.
  • Practical examples for building services and pipelines with effect-smol.

Quick Start

Load this skill and begin composing a typed Effect v4 workflow in your TypeScript project.

Frequently Asked Questions about effect

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build type-safe workflows with Effect v4 in TypeScript?

To build type-safe Effect v4 workflows in TypeScript, use Effect.gen for generator-style pipelines and Effect.fn to create named effects. This enables structured composition for reliable domain logic.

What is the best way to model domain errors using Effect schema?

The best way to model domain errors in Effect is using Schema.TaggedErrorClass to define typed errors. This ensures type-safe error handling and structured tracing across your workflow pipelines.

How does effect-smol integrate with existing microservices and monorepos?

Effect-smol integrates with microservices and monorepos by applying Effect.gen and Schema-based data shapes to compose type-safe services. This provides consistent functional programming patterns across distributed boundaries.

Can I use branded IDs with Effect schema for data validation?

Yes, you can use branded IDs with Effect Schema to define precise data shapes. This enforces type-safety at compilation, preventing invalid data from entering your Effect workflow pipelines.

When should I use Effect.fnUntraced instead of Effect.fn for named effects?

Use Effect.fnUntraced for named effects when you need to optimize performance by skipping runtime tracing overhead. Use standard Effect.fn when maintaining full execution tracing is required for debugging.

What are the limitations of adopting Effect patterns across a TypeScript codebase?

Adopting Effect patterns across a TypeScript codebase introduces complexity due to its functional programming paradigm and generator-style workflows. Teams must understand Effect composition and Schema modeling to maintain reliability.