effect-foundations

Write idiomatic Effect TypeScript with data-first pipes and typed TaggedError handling.

Updated Nov 20, 2025
One-click install
npx skills add https://github.com/mepuka/adjunct --skill effect-foundations
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: effect-foundations
Source: https://github.com/mepuka/adjunct/tree/main/.claude/skills/effect-foundations
Command: npx skills add https://github.com/mepuka/adjunct --skill effect-foundations

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

A compact, go-to checklist for idiomatic Effect TypeScript patterns and a strong typing discipline.

Core Features & Use Cases

  • Data-first pipe style
  • Effect.gen for sequential logic
  • Clear error handling with TaggedError and catch
  • When to provide layers and how to structure

Quick Start

Start new Effect tasks with a minimal, typed template focusing on readability.

Frequently Asked Questions about effect-foundations

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

FAQPage Schema
How do I structure idiomatic Effect TypeScript with a pipe style?

Idiomatic Effect TypeScript uses a data-first pipe style with explicit error and context channels. Start with a typed template, apply Effect.gen for sequential logic, use Effect.all for parallelism, and maintain explicit layers when R is not never.

What's the best way to handle errors in Effect TypeScript?

Use typed errors with Data.TaggedError for explicit error definitions. Combine with catch patterns and a clean lift/recovery approach using Effect.succeed and Effect.fail to maintain type safety across your pipeline.

When should I use Effect.gen versus Effect.all in TypeScript?

Use Effect.gen for sequential logic where one operation depends on the result of another. Use Effect.all when you need to run multiple operations in parallel and combine their results.

How do I know when to provide layers in Effect TypeScript?

Provide explicit layers when R is not never—that is, when your Effect requires a context or environment to execute. Layers structure dependencies and services needed by your Effect pipelines.

What operators should I use for mapping and chaining in Effect?

Use map for transformations, flatMap or andThen for chaining dependent effects, and tap for side effects. Select based on whether you need to chain another Effect (flatMap/andThen) or just transform the value (map).

Do I need existing Effect knowledge to start with these foundations?

No. This covers core Effect foundations suitable for tasks starting an Effect project or selecting operators. It provides a minimal typed template and guidance on structuring sequential and parallel pipelines from scratch.