con un clic
haskell
// Use this when writing or reviewing Haskell code. Covers error handling, type safety, idiomatic patterns, HLint compliance, Aeson usage, and testing.
// Use this when writing or reviewing Haskell code. Covers error handling, type safety, idiomatic patterns, HLint compliance, Aeson usage, and testing.
Enter talk mode — conversation and research, no repo changes. ONLY invoke when the user explicitly types `/talk` or `$talk`; never auto-select from a natural-language question or design discussion.
Vira's design system — TailwindCSS conventions, color palette, typography, spacing, components, and accessibility rules. Use when working on UI components, styling, or layout in this project (Lucid HTML in Haskell sources under packages/vira).
Review code for quality, simplicity, and common mistakes before declaring work complete.
| name | haskell |
| description | Use this when writing or reviewing Haskell code. Covers error handling, type safety, idiomatic patterns, HLint compliance, Aeson usage, and testing. |
undefined or error as placeholdersMaybe/Either cases explicitly — no silent ignoringText over Stringnewtype wrappers for domain typeshead, tail, and other partial functionsOverloadedRecordDot (add pragma to modules that use the syntax)DisambiguateRecordFields and DuplicateRecordFields for simple field namesencode/decode on itIf .hlint.yaml exists in the project root, run hlint on every modified file. Fix ALL warnings before considering the task complete.
If ghcid.txt exists in the project, check it after every code change for compile errors. Do not proceed until it is clean. If this file does not exist, use whatever build workflow the project documents.
When adding or deleting .hs modules: update the .cabal file, or run hpack if package.yaml exists.
If the project uses relude (check .cabal or package.yaml dependencies), also follow RELUDE.md for idiomatic substitutions.