fantomas-lint

star 33

Ensure F# source code is formatted cleanly with Fantomas before finishing a task. Use when writing or editing any F# source file, before committing changes, or when CI lint failures need to be fixed. Run Fantomas to reformat, then verify tests still pass.

iwillspeak By iwillspeak schedule Updated 4/19/2026

name: fantomas-lint description: "Ensure F# source code is formatted cleanly with Fantomas before finishing a task. Use when writing or editing any F# source file, before committing changes, or when CI lint failures need to be fixed. Run Fantomas to reformat, then verify tests still pass."

Fantomas Lint Check

CI runs Fantomas to enforce consistent F# formatting. Any diff that introduces formatting violations will fail the lint step, even if all tests pass.

Steps

Always perform these steps after editing F# source files, before considering a task complete:

1. Reformat with Fantomas

Run the repo reformat script from the workspace root:

bash reformat.sh

This restores the .NET local tools, runs fantomas on the whole workspace, and runs dotnet format. It is safe to re-run; it is idempotent when the code is already clean.

Alternatively, to just check without modifying files (matches the CI check):

dotnet tool restore
dotnet tool run fantomas --check .

If --check reports violations, run bash reformat.sh to fix them.

2. Verify tests still pass

dotnet test

Both steps must succeed before the task is done.

Notes

  • Fantomas is a .NET local tool declared in .config/dotnet-tools.json; always run dotnet tool restore before invoking it directly.
  • The VS Code task reformat (defined in .vscode/tasks.json) runs bash reformat.sh and can be used instead of the terminal command.
  • Do not skip the reformat step even for small one-line edits — Fantomas enforces indentation, blank lines, and spacing rules that are easy to violate by hand.
Install via CLI
npx skills add https://github.com/iwillspeak/feersum --skill fantomas-lint
Repository Details
star Stars 33
call_split Forks 1
navigation Branch main
article Path SKILL.md
More from Creator