API Documentation Lookup

This skill should be used when the user asks to "look up Effect API", "check the Effect docs", "find Effect function signature", "what does Effect.X do", "how to use Effect.X", "Effect API reference", "fetch Effect documentation", or needs to look up specific function signatures, parameters, or usage examples from the official Effect-TS API documentation.

16 stars

Best use case

API Documentation Lookup is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

This skill should be used when the user asks to "look up Effect API", "check the Effect docs", "find Effect function signature", "what does Effect.X do", "how to use Effect.X", "Effect API reference", "fetch Effect documentation", or needs to look up specific function signatures, parameters, or usage examples from the official Effect-TS API documentation.

Teams using API Documentation Lookup should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/api-documentation-lookup/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/documentation/api-documentation-lookup/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/api-documentation-lookup/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How API Documentation Lookup Compares

Feature / AgentAPI Documentation LookupStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

This skill should be used when the user asks to "look up Effect API", "check the Effect docs", "find Effect function signature", "what does Effect.X do", "how to use Effect.X", "Effect API reference", "fetch Effect documentation", or needs to look up specific function signatures, parameters, or usage examples from the official Effect-TS API documentation.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Effect-TS API Documentation Lookup

## Overview

Use WebFetch to retrieve API documentation directly from the official Effect-TS documentation site at `https://effect-ts.github.io/effect/`.

## URL Patterns

### Core Effect Modules

For modules in the main `effect` package:

```
https://effect-ts.github.io/effect/effect/{Module}.ts.html
```

**Common modules:**
| Module | URL |
|--------|-----|
| Effect | `https://effect-ts.github.io/effect/effect/Effect.ts.html` |
| Schema | `https://effect-ts.github.io/effect/effect/Schema.ts.html` |
| Stream | `https://effect-ts.github.io/effect/effect/Stream.ts.html` |
| Layer | `https://effect-ts.github.io/effect/effect/Layer.ts.html` |
| Context | `https://effect-ts.github.io/effect/effect/Context.ts.html` |
| Schedule | `https://effect-ts.github.io/effect/effect/Schedule.ts.html` |
| Fiber | `https://effect-ts.github.io/effect/effect/Fiber.ts.html` |
| Queue | `https://effect-ts.github.io/effect/effect/Queue.ts.html` |
| Ref | `https://effect-ts.github.io/effect/effect/Ref.ts.html` |
| Scope | `https://effect-ts.github.io/effect/effect/Scope.ts.html` |
| Option | `https://effect-ts.github.io/effect/effect/Option.ts.html` |
| Either | `https://effect-ts.github.io/effect/effect/Either.ts.html` |
| Chunk | `https://effect-ts.github.io/effect/effect/Chunk.ts.html` |
| HashMap | `https://effect-ts.github.io/effect/effect/HashMap.ts.html` |
| HashSet | `https://effect-ts.github.io/effect/effect/HashSet.ts.html` |
| Duration | `https://effect-ts.github.io/effect/effect/Duration.ts.html` |
| Config | `https://effect-ts.github.io/effect/effect/Config.ts.html` |
| ConfigProvider | `https://effect-ts.github.io/effect/effect/ConfigProvider.ts.html` |
| Match | `https://effect-ts.github.io/effect/effect/Match.ts.html` |
| Data | `https://effect-ts.github.io/effect/effect/Data.ts.html` |
| Cause | `https://effect-ts.github.io/effect/effect/Cause.ts.html` |
| Exit | `https://effect-ts.github.io/effect/effect/Exit.ts.html` |
| Random | `https://effect-ts.github.io/effect/effect/Random.ts.html` |
| Clock | `https://effect-ts.github.io/effect/effect/Clock.ts.html` |
| Tracer | `https://effect-ts.github.io/effect/effect/Tracer.ts.html` |
| Metric | `https://effect-ts.github.io/effect/effect/Metric.ts.html` |
| Logger | `https://effect-ts.github.io/effect/effect/Logger.ts.html` |
| Sink | `https://effect-ts.github.io/effect/effect/Sink.ts.html` |
| PubSub | `https://effect-ts.github.io/effect/effect/PubSub.ts.html` |
| Deferred | `https://effect-ts.github.io/effect/effect/Deferred.ts.html` |
| Semaphore | `https://effect-ts.github.io/effect/effect/Semaphore.ts.html` |
| Request | `https://effect-ts.github.io/effect/effect/Request.ts.html` |
| RequestResolver | `https://effect-ts.github.io/effect/effect/RequestResolver.ts.html` |
| Cache | `https://effect-ts.github.io/effect/effect/Cache.ts.html` |
| TestClock | `https://effect-ts.github.io/effect/effect/TestClock.ts.html` |
| Runtime | `https://effect-ts.github.io/effect/effect/Runtime.ts.html` |
| ManagedRuntime | `https://effect-ts.github.io/effect/effect/ManagedRuntime.ts.html` |

### Scoped Packages

For `@effect/*` packages:

```
https://effect-ts.github.io/effect/{package-name}/{Module}.ts.html
```

**Examples:**
| Package | Module | URL |
|---------|--------|-----|
| @effect/platform | HttpClient | `https://effect-ts.github.io/effect/platform/HttpClient.ts.html` |
| @effect/platform | FileSystem | `https://effect-ts.github.io/effect/platform/FileSystem.ts.html` |
| @effect/platform | KeyValueStore | `https://effect-ts.github.io/effect/platform/KeyValueStore.ts.html` |
| @effect/cli | Command | `https://effect-ts.github.io/effect/cli/Command.ts.html` |
| @effect/sql | SqlClient | `https://effect-ts.github.io/effect/sql/SqlClient.ts.html` |

## How to Look Up Documentation

### Step 1: Identify the Module

Determine which module contains the API:
- `Effect.map` → Effect module
- `Schema.Struct` → Schema module
- `Stream.fromIterable` → Stream module
- `Layer.provide` → Layer module

### Step 2: Construct the URL

Use the URL pattern for the identified module:

```typescript
// For Effect.retry
const url = "https://effect-ts.github.io/effect/effect/Effect.ts.html"

// For Schema.transform
const url = "https://effect-ts.github.io/effect/effect/Schema.ts.html"
```

### Step 3: Fetch with Targeted Prompt

Use WebFetch with a specific prompt to extract the relevant information:

```
WebFetch(
  url: "https://effect-ts.github.io/effect/effect/Effect.ts.html",
  prompt: "Find the documentation for Effect.retry. Include the function signature, description, parameters, and any usage examples."
)
```

## Example Queries

### Looking up a specific function

**User asks:** "What are the parameters for Effect.retry?"

**Action:**
```
WebFetch(
  url: "https://effect-ts.github.io/effect/effect/Effect.ts.html",
  prompt: "Find documentation for the retry function. Include its complete type signature, all parameters and options, and usage examples."
)
```

### Looking up a type/interface

**User asks:** "What fields does Schedule have?"

**Action:**
```
WebFetch(
  url: "https://effect-ts.github.io/effect/effect/Schedule.ts.html",
  prompt: "Describe the Schedule type and its main combinators. List common schedule functions like exponential, spaced, recurs, etc."
)
```

### Looking up a module overview

**User asks:** "What functions are available in the Stream module?"

**Action:**
```
WebFetch(
  url: "https://effect-ts.github.io/effect/effect/Stream.ts.html",
  prompt: "List the main categories of functions in this module with brief descriptions of each category."
)
```

### Looking up related functions

**User asks:** "What are all the catch* functions in Effect?"

**Action:**
```
WebFetch(
  url: "https://effect-ts.github.io/effect/effect/Effect.ts.html",
  prompt: "Find all error handling functions that start with 'catch'. Include catchAll, catchTag, catchTags, catchSome, etc. with their signatures and purposes."
)
```

## Prompt Patterns

Use these prompt patterns for effective documentation extraction:

### For function signatures:
```
"Find the complete type signature for {functionName}. Include all overloads if they exist."
```

### For usage examples:
```
"Find documentation and code examples for {functionName}. Focus on practical usage patterns."
```

### For understanding parameters:
```
"Explain the parameters and options for {functionName}. What does each parameter do?"
```

### For finding related functions:
```
"List all functions related to {topic} in this module. Include brief descriptions."
```

### For module overview:
```
"Provide an overview of this module. What are the main categories of functions and types?"
```

## Tips

1. **Be specific in prompts** - Ask for exactly what you need (signature, examples, parameters)
2. **Use the right module** - Effect functions are in Effect.ts, Schema functions in Schema.ts, etc.
3. **Check related functions** - The docs include "See also" links to related functions
4. **Look for examples** - Most functions include practical code examples with expected output
5. **Note version info** - Functions show "Since v2.0.0" or similar version information

## Documentation Site Index

The main documentation index is at:
```
https://effect-ts.github.io/effect/
```

Use this to discover available packages and modules if unsure which module contains a specific API.

## Best Practices

1. **Start with the right module** - Identify which module contains the API before fetching
2. **Use targeted prompts** - Ask for specific information (signature, examples, parameters)
3. **Check for overloads** - Many Effect functions have multiple signatures
4. **Look for "Since" annotations** - Verify the API is available in your Effect version

## Additional Resources

For comprehensive Effect documentation beyond API signatures, consult `${CLAUDE_PLUGIN_ROOT}/references/llms-full.txt` which contains tutorials, guides, and in-depth explanations.

Related Skills

documentation-templates

16
from diegosouzapw/awesome-omni-skill

Documentation templates and structure guidelines. README, API docs, code comments, and AI-friendly documentation.

documentation-structure-validator

16
from diegosouzapw/awesome-omni-skill

Validate documentation structure, check for missing sections, verify markdown syntax, ensure consistency with templates. Use when user mentions docs validation, structure check, README review, documentation quality, or wants to verify documentation completeness.

documentation-standards

16
from diegosouzapw/awesome-omni-skill

Clear technical documentation with JSDoc, READMEs, Mermaid diagrams, ISMS policy references, and comprehensive code examples

documentation-specialist

16
from diegosouzapw/awesome-omni-skill

文档专家。专注于技术文档编写、API 文档生成、README 优化和文档维护。提供清晰的文档结构、规范的格式和用户友好的内容。

documentation-research

16
from diegosouzapw/awesome-omni-skill

Enforces documentation research before implementation. Auto-loads when implementing features to ensure current best practices are followed. Researches official docs first.

documentation

16
from diegosouzapw/awesome-omni-skill

Technical writing, API docs, and documentation best practices

Documentation Hygiene

16
from diegosouzapw/awesome-omni-skill

This skill should be used when the user asks to perform "documentation hygiene", "update docs for change", "mark historical docs", "add deprecation headers", "documentation migration", or when making significant changes that affect multiple documentation files (like license migrations, tier changes, or API changes).

documentation-guidelines

16
from diegosouzapw/awesome-omni-skill

Write or update backend feature documentation that follows a repo's DOCUMENTATION_GUIDELINES.md (or equivalent) across any project. Use when asked to create/update module docs, API contracts, or backend documentation that must include architecture, endpoints, payloads, Mermaid diagrams, and seeding instructions.

documentation-generation-doc-generate

16
from diegosouzapw/awesome-omni-skill

You are a documentation expert specializing in creating comprehensive, maintainable documentation from code. Generate API docs, architecture diagrams, user guides, and technical references using AI...

create-oo-component-documentation

16
from diegosouzapw/awesome-omni-skill

Create comprehensive, standardized documentation for object-oriented components following industry best practices and architectural documentation standards.

code-documentation

16
from diegosouzapw/awesome-omni-skill

Writing effective code documentation - API docs, README files, inline comments, and technical guides. Use for documenting codebases, APIs, or writing developer guides.

code-documentation-doc-generate

16
from diegosouzapw/awesome-omni-skill

You are a documentation expert specializing in creating comprehensive, maintainable documentation from code. Generate API docs, architecture diagrams, user guides, and technical references using AI...