Skip to main content

managing-parsers

Use when the user needs to manage the tree-sitter parser cache — prefetch parsers for offline or CI runs, list what is downloaded, inspect a language, find the cache directory, or clean it. Covers `ts-pack download`, `list`, `info`, `cache-dir`, `clean`, and `init`.

Source facts

Repository
xberg-io/plugins
Last source activity
July 12, 2026 at 05:08
Detected SKILL.md language
English
Stars
26
Forks
3

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
managing-parsers
description
Use when the user needs to manage the tree-sitter parser cache — prefetch parsers for offline or CI runs, list what is downloaded, inspect a language, find the cache directory, or clean it. Covers `ts-pack download`, `list`, `info`, `cache-dir`, `clean`, and `init`.
<!-- AI-RULEZ :: GENERATED FILE — DO NOT EDIT Content-Hash: blake3:6e456e7b331cbfaa263a01ad7c9c407c10cb105b605e6460b0192d9d035e2814 Source-Hash: blake3:0ea306aa0c0ca9bee85179b4f8c1d90fe853693a25a18ddd111b9160ff6fc800 Schema-Version: v1 --> # Managing parsers Parser libraries download on demand the first time a language is used and are cached on disk. Manage that cache explicitly for offline work, CI prefetch, reproducible builds, or to reclaim space. > Note: parser cache management (`download`, `clean`, `init`) is done via the > `ts-pack` CLI directly. The OpenCode tools expose only parse/process/info. ## Prefetch (offline / CI) ```bash ts-pack download python rust typescript # specific languages ts-pack download --all # every available language ts-pack download --groups web,systems # by group ts-pack download python --fresh # clean cache first, then download ``` Available groups: `web`, `systems`, `scripting`, `data`, `jvm`, `functional` (comma-separated for `--groups`). Run `download` in your CI setup step so later `parse`/`process` calls hit the cache instead of the network. ## Inspect ```bash ts-pack list # all available languages ts-pack list --downloaded # only languages currently cached ts-pack list --manifest # everything in the remote manifest ts-pack list --filter script # filter by name substring ts-pack info python # known? downloaded? cache path? ts-pack cache-dir # print the effective cache directory ``` ## Clean ```bash ts-pack clean # prompts for confirmation ts-pack clean --force # skip the prompt (use in scripts/CI) ``` `clean` removes all cached parser libraries; they re-download on next use. ## Config file (init) `ts-pack init` writes a `language-pack.toml` to the current directory pinning a cache location and/or a language set. This **writes a file** to the working directory. ```bash ts-pack init --languages python,rust --cache-dir .ts-pack-cache ``` Resulting `language-pack.toml`: ```toml cache_dir = ".ts-pack-cache" languages = ["python", "rust"] ``` With no flags, `init` writes a commented template. When `--languages` (or a group set) is given, `init` also triggers the download for those languages. Commit `language-pack.toml` to pin the parser set across a team or CI. ## Typical CI flow ```bash ts-pack init --languages python,rust,typescript --cache-dir .ts-pack-cache # ... later steps run parse/process offline against the warm cache ... ts-pack list --downloaded # assert the expected parsers are present ``` ## When to reach for the other skills Once parsers are cached, use `parsing-source` to get syntax trees and `extracting-code-structure` to pull metadata. `info`/`list` here also serve the language-support checks described in `detecting-languages`.
View on GitHub