tree-sitter/cli
ObserverOfTime d5b8c19d0b fix(bindings): add tree-sitter as npm dev dependency
npm is supposed to automatically install peer dependencies since v7
but sometimes it's not doing it and we need this dependency for tests

(cherry picked from commit e67f9f8f7a)
2025-08-28 13:57:22 +02:00
..
benches fix(rust): adapt to new nightly lint 2025-03-06 18:25:24 -05:00
config chore: a few minor lints 2025-01-21 00:57:58 -05:00
eslint build(deps): bump cross-spawn from 7.0.3 to 7.0.5 in /cli/eslint 2024-11-22 23:18:29 -05:00
generate fix(cli): add reserved type declarations and schema 2025-08-02 11:51:09 +02:00
loader fix(bindings): use custom class name 2025-08-08 12:38:41 +03:00
npm fix(cli): add reserved type declarations and schema 2025-08-02 11:51:09 +02:00
src fix(bindings): add tree-sitter as npm dev dependency 2025-08-28 13:57:22 +02:00
build.rs Revert "feat: add build sha to parser.c header comment" (#4475) 2025-05-29 23:14:25 +02:00
Cargo.toml fix(generate): use topological sort for subtype map 2025-07-10 17:43:08 -04:00
README.md docs(rust): add --locked to installation instructions 2024-10-30 10:51:46 -04:00

Tree-sitter CLI

crates.io badge npmjs.com badge

The Tree-sitter CLI allows you to develop, test, and use Tree-sitter grammars from the command line. It works on MacOS, Linux, and Windows.

Installation

You can install the tree-sitter-cli with cargo:

cargo install --locked tree-sitter-cli

or with npm:

npm install tree-sitter-cli

You can also download a pre-built binary for your platform from the releases page.

Dependencies

The tree-sitter binary itself has no dependencies, but specific commands have dependencies that must be present at runtime:

  • To generate a parser from a grammar, you must have node on your PATH.
  • To run and test parsers, you must have a C and C++ compiler on your system.

Commands

  • generate - The tree-sitter generate command will generate a Tree-sitter parser based on the grammar in the current working directory. See the documentation for more information.

  • test - The tree-sitter test command will run the unit tests for the Tree-sitter parser in the current working directory. See the documentation for more information.

  • parse - The tree-sitter parse command will parse a file (or list of files) using Tree-sitter parsers.