v1.16.0
stackblitz/bolt.newv1.16.0Jun 29, 2026by yamadashy
AI Summary
This release introduces granular configuration options for file packing, including per-file inclusion levels and a new output path style, alongside improvements to compression robustness.
Key Highlights
- Per-file inclusion levels via `output.patterns` for fine-grained control
- New `cwd-relative` output path style
- `--skill-project-name` option for skill generation
- Compression resilience improvements to prevent aborts on parse errors
New Features
- Per-file inclusion levels (`output.patterns`)
- Cwd-relative output path style
- `--skill-project-name` option
Full Release Notes
This release adds **per-file inclusion levels** via `output.patterns` for fine-grained control over how each file is packed, a new **cwd-relative output path style**, and a **`--skill-project-name`** option, along with compression-robustness and file-matching fixes.
## What's New π
### Per-file Inclusion Levels (`output.patterns`) (#1653, #608)
You can now control the detail level **per glob** from your configuration file. `output.patterns` is an ordered array of `{ pattern, compress?, directoryStructureOnly? }` entries; the first matching glob wins and overrides the global `output.compress` for that file. Each file resolves to one of three levels:
- **Full content** (default)
- **Compressed** (`compress: true`) β passed through the same Tree-sitter pipeline as `output.compress`
- **Directory-structure-only** (`directoryStructureOnly: true`) β listed in the directory structure, but its content is omitted
For example, compress `docs/**` while reducing `website/**` to structure only:
```json5
{
"output": {
"compress": false,
"patterns": [
{ "pattern": "docs/**/*", "compress": true },
{ "pattern": "website/**/*", "directoryStructureOnly": true }
]
}
}
```
This option is config-file only. See [Per-file Inclusion Levels](https://repomix.com/guide/configuration#per-file-inclusion-levels).
Special thanks to @PAMulligan for designing and implementing this feature! π
### cwd-relative Output Path Style (#1646)
A new output path style renders file paths relative to the current working directory instead of the target directory β handy for multi-root runs and clearer paths. Set `output.filePathStyle: "cwd-relative"` in your config, or pass `--output-file-path-style cwd-relative` (default remains `target-relative`).
Special thanks to @Samsen879 for this contribution! π
### `--skill-project-name` Option (#1649)
Skill generation now exposes a `--skill-project-name` option so you can set the project name explicitly.
Special thanks to @WilliamK112 for this contribution! π
## Improvements β‘
- `--compress` is now resilient: a single file that Tree-sitter cannot parse β including pathological files that trigger a WASM runtime abort β no longer aborts the whole pack. It falls back to uncompressed output with a warning, and the rest of the run completes normally (#1679, #1668).
- File extensions are now matched case-insensitively when selecting the comment manipulator, so files like `.PY` or `.TS` are handled correctly (#1632).
- Split-output files are now copied correctly after remote packing (#1631).
Special thanks to @serhiizghama and @Samsen879 for these fixes! π
## How to Update
```bash
npm update -g repomix
```
---
As always, if you have any issues or suggestions, please let us know on GitHub issues or our [Discord community](https://discord.gg/wNYzTwZFku).