Cursor rule Cursor
Creating and running tests.
Cursor rule Cursor
Creating and running tests.
Cursor rule Cursor
architecture from PaulJPhilp/EffectiveAgent.
Cursor rule Cursor
This codebase enforces a layered service hierarchy to ensure separation of concerns, maintainability, and clear dependency direction. Each service must belong to exactly one layer.
Cursor rule Cursor
To build an idiomatic service in this codebase, an AI agent MUST.
Cursor rule Cursor
effect-filesystem: Patterns for using FileSystem with Effect in TypeScript agent-testing: Creating and running tests.
Cursor rule Cursor
Cursor rule "clean-code-rules" from PaulJPhilp/EffectiveAgent, covering clean code guidelines, constants over magic numbers, meaningful names, smart comments and single responsibility.
Cursor rule Cursor
Cursor rule "code-quality" from PaulJPhilp/EffectiveAgent, covering code quality guidelines, verify information, file-by-file changes, no apologies and no understanding feedback.
Cursor rule Cursor
Cursor rule "effect-best-practices" from PaulJPhilp/EffectiveAgent, covering effect best practices, core patterns, service architecture, effect generation & composition and error handling.
Cursor rule Cursor
Patterns for using FileSystem with Effect.
Cursor rule Cursor
Guidelines for creating and testing effect-based services.
Cursor rule Cursor
Cursor rule "effect-composition" from PaulJPhilp/EffectiveAgent, covering effect layer composition rule, effect service anti-patterns, biome rules and mocking rules.
Cursor rule Cursor
// config.ts import as Config from "@effect/io/Config".
Cursor rule Cursor
Guidelines for using Effect's Config service to load and validate configuration data.
Cursor rule Cursor
// api.ts export interface MyServiceApi { readonly doSomething: (input: string) => Effect.Effect }.
Cursor rule Cursor
Cursor rule "vercel-ai-provider" from PaulJPhilp/EffectiveAgent, covering vercel ai provider rules and llm call execution.
Cursor rule Cursor
// DO: Define specific error types class DatabaseError extends EffectiveError { constructor(params: { description: string code: string retryable: boolean module: string method: string cause?: unknown }) { super({ description: params.description, module: params.module, method: params.method, cause: params.cause }) } }.
Cursor rule Cursor
Cursor rule "clean-code" from PaulJPhilp/EffectiveAgent, covering clean code guidelines, project setup, anti-patterns and functions & logic.
Cursor rule Cursor
// Good import { EffectiveError } from "@/effective-error.js".
Cursor rule Cursor
Effect is our core async and concurrency library.
Cursor rule Cursor
My build system is bun. My testing framework is vitest. I am building AI agents using LangGraph in TypeScript and Node.js. I am using the Vercel AI SDK for model interactions. When I ask about programming concepts (e.g., "What is a hook?"), give me a direct and clear explanation. I am using TypeScript for development.…
Cursor rule Cursor
typescript from PaulJPhilp/EffectiveAgent.
Cursor rule Cursor
Always use interface for defining object shapes unless you have a specific reason to use type. This includes.
Cursor rule Cursor
When: You have an Effect that yields an Option (e.g., after a findById call, or any operation that might not return a value), and you need to perform different effectful actions based on whether the Option is Some or None.
Cursor rule Cursor
ai-collaboration from PaulJPhilp/EffectiveAgent.