Awesome-omni-skill effect-module-request
Guidance for `effect/Request` focused on APIs like of, fail, and succeed. Load after `effect-skill-router` when this module is the primary owner.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/development/effect-module-request" ~/.claude/skills/diegosouzapw-awesome-omni-skill-effect-module-request && rm -rf "$T"
manifest:
skills/development/effect-module-request/SKILL.mdsource content
Effect Module Request
Owned scope
- Owns only
.effect/Request - Source of truth:
.packages/effect/src/Request.ts
What it is for
- The
module provides a way to model requests to external data sources in a functional and composable manner. Requests represent descriptions of operations that can be batched, cached, and executed efficiently.Request
API quick reference
offailsucceedServicesfailCausemakeEntryisRequestAnyClassEntryErrorResulttaggedRequestSuccesscompleteVarianceConstructor- Full API list:
references/api-reference.md
How to use it
- Start with constructor-style APIs to build values/services before composing operations.
- Use the reference docs to select the smallest API surface that solves your task.
- Validate behavior against existing tests before introducing new usage patterns.
Starter example
import type { Request } from "effect"; // Define a request that fetches a user by ID interface GetUser extends Request.Request<string, Error> { readonly _tag: "GetUser"; readonly id: number; } // Define a request that fetches all users interface GetAllUsers extends Request.Request<ReadonlyArray<string>, Error> { readonly _tag: "GetAllUsers"; }
Common pitfalls
- Prefer explicit, typed combinators over ad-hoc casting or unchecked assumptions.
Not covered here
- Adjacent modules in
andeffect/*
are out of scope for this owner.effect/unstable/*
Escalate to
for routing and ownership checks.effect-skill-router
Reference anchors
- Module source:
packages/effect/src/Request.ts - Representative tests:
packages/effect/test/Request.test.ts - API details:
references/api-reference.md - Usage notes:
references/usage-reference.md - Ownership mapping:
references/owner.md