Skip to content

Latest commit

 

History

History
44 lines (27 loc) · 1.65 KB

File metadata and controls

44 lines (27 loc) · 1.65 KB

AGENTS.md

Effect Solutions Usage

The Effect Solutions CLI provides curated best practices and patterns for Effect TypeScript. Before working on Effect code, check if there's a relevant topic that covers your use case.

  • effect-solutions list - List all available topics
  • effect-solutions show <slug...> - Read one or more topics
  • effect-solutions search <term> - Search topics by keyword

Local Effect Source: The Effect repository is cloned to ~/.local/share/effect-solutions/effect for reference. Use this to explore APIs, find usage examples, and understand implementation details when the documentation isn't enough.

Code Style

  • Runtime: Bun only. No Node.js, npm, pnpm, vite, dotenv.
  • TypeScript: Strict mode enabled. ESNext target.
  • Effect: Use Effect.gen for async code, BunRuntime.runMain for entry points.
  • Imports: External packages first, then local. Use .ts extensions for local imports.
  • Bun APIs: Prefer Bun.file, Bun.serve, bun:sqlite, Bun.$ over Node equivalents.
  • Testing: Use bun:test with import { test, expect } from "bun:test".

Scripts

  • run bun check to check for errors

Error Handling

  • Use Effect's error channel for typed errors.
  • Use Effect.tryPromise for async operations, Effect.try for sync.
  • Pipe errors through Effect combinators, don't throw.

btca

When the user says "use btca", use btca before you answer the question. It will give you up to date information about the technology.

Run:

  • bun cli ask -t -q ""

Available : svelte, tailwindcss, opentui, runed, effect, shiki