parser-development

Build and refine Biome parsers with ungrammar and error recovery.

Updated Apr 10, 2026
One-click install
npx skills add https://github.com/qdhenry/Foundry-OSS --skill parser-development-qdhenry
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: parser-development
Source: https://github.com/qdhenry/Foundry-OSS/tree/main/.agents/skills/parser-development
Command: npx skills add https://github.com/qdhenry/Foundry-OSS --skill parser-development-qdhenry

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Create and maintain Biome parsers with robust error recovery, enabling language support through grammar authoring and lexer integration.

Core Features & Use Cases

  • Grammar authoring with ungrammar and non-terminal/terminal definitions for new languages.
  • Lexer implementation and integration with the parser, including error recovery strategies.
  • Use cases include adding support for languages such as HTML, CSS, JavaScript, JSON, or GraphQL, and improving parsing resilience.

Quick Start

Create or modify a Biome parser by adding a new .ungram grammar, implementing a lexer, and wiring error recovery as described.

Frequently Asked Questions about parser-development

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

FAQPage Schema
How do I build a Biome parser with error recovery for a new language?

Biome parsers use ungrammar to define non-terminal and terminal rules, which are then paired with a custom lexer. This combination allows the parser to recover from syntax errors and continue processing language input gracefully.

What is ungrammar and how does it work for grammar authoring?

Ungrammar is a grammar definition format used to author non-terminal and terminal rules for Biome parsers. It provides a structured way to define language syntax, enabling reliable parsing across JavaScript, HTML, CSS, and JSON formats.

Can I use Biome to add parsing support for HTML, CSS, and JSON formats?

Yes, you can add language support for HTML, CSS, JavaScript, and JSON in Biome. This involves creating an .ungram file for the target language and implementing the corresponding lexer to handle its specific syntax.

What is the best way to improve parser resilience and error recovery in Biome?

The best way to improve parser resilience is by implementing robust error recovery strategies within your Biome parser. This involves defining grammar rules with ungrammar and configuring the lexer to handle unexpected tokens without halting the entire parse.

Do I need to implement a custom lexer when adding language support to Biome?

Yes, implementing a custom lexer is required for adding new language support in Biome. The lexer integrates directly with the parser to tokenize input and apply error recovery strategies specific to the new language's grammar.

Why does my Biome parser stop when encountering syntax errors in JavaScript?

A Biome parser stops on syntax errors if error recovery strategies are not properly wired. Implementing recovery logic within your grammar and lexer allows the parser to skip or handle bad tokens and resume parsing.