Created
July 28, 2025 14:18
-
-
Save marbemac/924073bdd3e7dbac414410e184e3006e to your computer and use it in GitHub Desktop.
Cursor rule to automatically fetch relevant docs from the effect.guide repo
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --- | |
| description: Guidelines when working with effect ts code, or answering questions about effect ts. | |
| alwaysApply: false | |
| --- | |
| When working with effect ts code, if documentation on any of the topics below would be helpful, always fetch the | |
| relevant doc(s) using the `run_terminal_cmd` tool with `curl` commands. | |
| IMPORTANT: if the user has included the term MAX_EFFECT anywhere in this conversation, it means they want you to have | |
| maximum knowledge of effect while accomplishing the task - thus ALWAYS fetch relevant effect docs as you work through | |
| the task (assuming you have not previously fetched them of course). | |
| **Fetching Strategy:** | |
| - Use the appropriate URL for each module type (use `/usr/bin/curl` instead of `curl` to avoid path issues!), replacing | |
| "{filename}" with the relevant core or platform filename. | |
| - Core modules: | |
| `/usr/bin/curl -s "https://raw.githubusercontent.com/dmmulroy/effect.guide/refs/heads/main/effect/{filename}"` | |
| - Platform modules: | |
| `/usr/bin/curl -s "https://raw.githubusercontent.com/dmmulroy/effect.guide/refs/heads/main/@effect/platform/{filename}"` | |
| - For multiple related docs, prefer using parallel curl commands in the same tool call batch, rather than separate tool | |
| calls | |
| - **IMPORTANT**: Before fetching, check conversation history to avoid requesting docs already retrieved, and only fetch | |
| docs that haven't been fetched yet in the current conversation | |
| - Common combinations (you can make requests for docs outside of these combos, or mix and match differently - just some | |
| common ones): | |
| - Effect-Guide.md + Either-Guide.md + Option-Guide.md + Cause-Guide.md (core error handling) | |
| - Context-Guide.md + Layer-Guide.md + LayerMap.md + ManagedRuntime-Guide.md (service architecture & DI) | |
| - SubscriptionRef-Guide.md + Ref-Guide.md + Effect-Guide.md + Stream-Guide.md (reactive state management) | |
| - Effect-Guide.md + Schema-Guide.md + Data-Guide.md + ParseResult-Guide.md (data validation with effects) | |
| - Stream-Guide.md + Effect-Guide.md + Fiber-Guide.md + PubSub-Guide.md (async data processing) | |
| - Match-Guide.md + Either-Guide.md + Option-Guide.md + Data-Guide.md (pattern matching & control flow) | |
| - Metric-Guide.md + Effect-Guide.md + Logger-Guide.md + Console-Guide.md (observability & monitoring) | |
| - TestContext-Guide.md + TestLive-Guide.md + Layer-Guide.md + Effect-Guide.md (testing patterns) | |
| - Schedule-Guide.md + Effect-Guide.md + Cause-Guide.md + Either-Guide.md (retry patterns & resilience) | |
| - Resource-Guide.md + Scope-Guide.md + Effect-Guide.md + Layer-Guide.md (resource management) | |
| **Available documentation files:** | |
| **Core Effect modules:** | |
| - Arbitrary-Guide.md | |
| - Array-Guide.md | |
| - BigDecimal-Guide.md | |
| - BigInt-Guide.md | |
| - Boolean-Guide.md | |
| - Brand-Guide.md | |
| - Cache-Guide.md | |
| - Cause-Guide.md | |
| - Channel-Guide.md | |
| - ChildExecutorDecision-Guide.md | |
| - Chunk-Guide.md | |
| - Clock-Guide.md | |
| - Config-Guide.md | |
| - Console-Guide.md | |
| - Context-Guide.md | |
| - Cron-Guide.md | |
| - Data-Guide.md | |
| - DateTime-Guide.md | |
| - DefaultServices-Guide.md | |
| - Deferred-Guide.md | |
| - Differ-Guide.md | |
| - Duration-Guide.md | |
| - Effect-Guide.md | |
| - Effectable-Guide.md | |
| - Effectable.md | |
| - Either-Guide.md | |
| - Encoding-Guide.md | |
| - Equal-Guide.md | |
| - Equivalence-Guide.md | |
| - ExecutionPlan.md | |
| - ExecutionStrategy-Guide.md | |
| - Exit-Guide.md | |
| - FastCheck-Guide.md | |
| - Fiber-Guide.md | |
| - FiberHandle.md | |
| - FiberId-Guide.md | |
| - FiberMap.md | |
| - FiberRef-Guide.md | |
| - FiberRefs.md | |
| - FiberRefsPatch.md | |
| - FiberSet.md | |
| - FiberStatus.md | |
| - Function-Guide.md | |
| - GlobalValue.md | |
| - GroupBy.md | |
| - HKT.md | |
| - Hash-Guide.md | |
| - HashMap-Guide.md | |
| - HashSet-Guide.md | |
| - Inspectable.md | |
| - Iterable-Guide.md | |
| - JSONSchema-Guide.md | |
| - KeyedPool.md | |
| - Layer-Guide.md | |
| - LayerMap.md | |
| - List-Guide.md | |
| - LogLevel-Guide.md | |
| - LogSpan-Guide.md | |
| - Logger-Guide.md | |
| - Mailbox-Guide.md | |
| - ManagedRuntime-Guide.md | |
| - Match-Guide.md | |
| - MergeDecision-Guide.md | |
| - MergeState-Guide.md | |
| - MergeStrategy-Guide.md | |
| - Metric-Guide.md | |
| - MetricBoundaries-Guide.md | |
| - MetricHook-Guide.md | |
| - MetricKey-Guide.md | |
| - MetricKeyType-Guide.md | |
| - MetricLabel-Guide.md | |
| - MetricPair-Guide.md | |
| - MetricPolling-Guide.md | |
| - MetricRegistry-Guide.md | |
| - MetricState-Guide.md | |
| - Micro-Guide.md | |
| - MutableHashMap-Guide.md | |
| - MutableHashSet-Guide.md | |
| - MutableList-Guide.md | |
| - MutableQueue-Guide.md | |
| - MutableRef-Guide.md | |
| - NonEmptyIterable-Guide.md | |
| - Number-Guide.md | |
| - Option-Guide.md | |
| - Order-Guide.md | |
| - Ordering-Guide.md | |
| - ParseResult-Guide.md | |
| - ParseResult.md | |
| - Pipeable-Guide.md | |
| - Pool-Guide.md | |
| - Predicate-Guide.md | |
| - Pretty-Guide.md | |
| - PubSub-Guide.md | |
| - Queue-Guide.md | |
| - Random-Guide.md | |
| - RateLimiter.md | |
| - RcMap-Guide.md | |
| - RcRef-Guide.md | |
| - Readable-Guide.md | |
| - Record-Guide.md | |
| - RedBlackTree-Guide.md | |
| - Redacted-Guide.md | |
| - Ref-Guide.md | |
| - RegExp-Guide.md | |
| - Request.md | |
| - RequestBlock.md | |
| - RequestResolver.md | |
| - Resource-Guide.md | |
| - Runtime-Guide.md | |
| - RuntimeFlags.md | |
| - RuntimeFlagsPatch.md | |
| - STM-Guide.md | |
| - Schedule-Guide.md | |
| - ScheduleDecision.md | |
| - ScheduleInterval.md | |
| - ScheduleIntervals.md | |
| - Scheduler.md | |
| - Schema-Guide.md | |
| - SchemaAST-Guide.md | |
| - Scope-Guide.md | |
| - ScopedCache-Guide.md | |
| - ScopedRef-Guide.md | |
| - SingleProducerAsyncInput-Guide.md | |
| - Sink-Guide.md | |
| - SortedMap-Guide.md | |
| - SortedSet-Guide.md | |
| - Stream-Guide.md | |
| - StreamEmit-Guide.md | |
| - StreamHaltStrategy-Guide.md | |
| - Streamable-Guide.md | |
| - String-Guide.md | |
| - Struct-Guide.md | |
| - Subscribable-Guide.md | |
| - SubscriptionRef-Guide.md | |
| - Supervisor-Guide.md | |
| - Symbol-Guide.md | |
| - SynchronizedRef-Guide.md | |
| - TArray-Guide.md | |
| - TDeferred-Guide.md | |
| - TMap-Guide.md | |
| - TPriorityQueue-Guide.md | |
| - TPubSub-Guide.md | |
| - TQueue-Guide.md | |
| - TRandom-Guide.md | |
| - TReentrantLock-Guide.md | |
| - TRef-Guide.md | |
| - TSemaphore-Guide.md | |
| - TSet-Guide.md | |
| - TSubscriptionRef-Guide.md | |
| - Take.md | |
| - TestAnnotation-Guide.md | |
| - TestAnnotationMap-Guide.md | |
| - TestAnnotations-Guide.md | |
| - TestConfig-Guide.md | |
| - TestContext-Guide.md | |
| - TestLive-Guide.md | |
| - TestServices-Guide.md | |
| - TestSized-Guide.md | |
| - Tracer-Guide.md | |
| - Trie-Guide.md | |
| - Tuple-Guide.md | |
| - Types-Guide.md | |
| - UpstreamPullRequest-Guide.md | |
| - UpstreamPullStrategy-Guide.md | |
| - Utils-Guide.md | |
| **Platform modules:** | |
| - Command-Guide.md | |
| - FileSystem-Guide.md | |
| - HttpApi-Guide.md | |
| - HttpClient-Guide.md | |
| - HttpRouter-Guide.md | |
| - HttpServer-Guide.md | |
| - KeyValueStore-Guide.md | |
| - Path-Guide.md | |
| - PlatformLogger-Guide.md | |
| - Runtime-Guide.md | |
| - Socket-Guide.md | |
| - Terminal-Guide.md | |
| - Worker-Guide.md |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment