fsharp-diagnostics

Identify parse errors, type errors, and inferred type hints for modified F# sources.

1.2k|334|Updated Oct 13, 2022
One-click install
npx skills add https://github.com/dotnet/dotnet --skill fsharp-diagnostics
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: fsharp-diagnostics
Source: https://github.com/dotnet/dotnet/tree/main/src/fsharp/.github/skills/fsharp-diagnostics
Command: npx skills add https://github.com/dotnet/dotnet --skill fsharp-diagnostics

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires dotnet, nc, git, shasum, and includes scripts (resource) components.

What problem does it solve?

After modifying F# files, developers need quick feedback on syntax errors, type errors, and available symbol references to reduce iteration time.

Core Features & Use Cases

  • Parse-only diagnostics to quickly validate syntax after edits.
  • Full type-check with inferred type hints and symbol reference lookup for impacted code.
  • Use Case: When updating core F# compiler components, run diagnostics to catch errors early and locate all call sites and type derivations.

Quick Start

Run GetErrors on a changed F# file to see parse errors, type warnings, and symbol references.

Frequently Asked Questions about fsharp-diagnostics

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I get quick F# diagnostics for parse and type errors after editing compiler source files?

Run F# diagnostics via the GetErrors script on modified files under src/Compiler/ to surface parse errors, type warnings, and inferred type hints quickly. This reduces iteration time by validating syntax and checking types immediately after edits.

What is the best way to find symbol references and call sites in an F# project?

Use F# symbol lookup and reference-resolution workflows to locate all call sites and type derivations. The diagnostics server applies reference resolution to impacted code, helping you trace symbol usage across modified F# sources.

Does F# type-checking work with the dotnet CLI and shell scripts for automated validation?

Yes, F# type-checking runs using dotnet, shell scripts, and git dependencies. The GetErrors script executes the parse, check, and reference-resolution workflow, allowing automated validation of F# sources through standard command-line tools.

Can I run parse-only diagnostics to validate F# syntax without triggering a full type-check?

Yes, you can run parse-only diagnostics to quickly validate F# syntax after edits. This allows fast syntax validation before committing to a full type-check with inferred type hints and symbol reference lookup.

Why does my F# type-check workflow fail to resolve references in modified compiler components?

F# reference resolution requires running the complete parse, check, and reference-resolution workflow via the FSharp.Diagnostics server on files under src/Compiler/. Ensure all modified sources are included so the tool can correctly trace impacted call sites and type derivations.