[18.0.0] - 2026-03-20 The "StatsSighting" Cowork Plugin Release
"StatsSighting" is like "VibeCoding" but for iterative, blazing-fast, deep data analysis. "Stats" for Statistics. "Sight" for Insight - doing a comprehensive statistical profile of datasets first to inform the analysis pipeline.
The Claude Cowork Plugin comes with several agents - the "Data Analyst Agent" for deep data exploration and analysis, the "Data Wrangler Agent" for transformation and cleaning, and the "Policy Analyst Agent" for helping with policy evaluation and decision-making. Each agent has a specific role and skill set, with a shared emphasis on leveraging the qsv MCP Server's profiling and querying capabilities to understand the data before acting on it.
The qsv MCP server received major enhancements - including session logging, DuckDB-powered Parquet conversion, SQL translation hardening, and interactive working directory elicitation.
The core qsv suite also gets significant updates in this release, including the new scoresql command for pre-query SQL analysis, smarter pragmastat with stats-cache integration and comparison mode, pivotp optimizations with moarstats awareness, and formatted table output for to.
Major Features
New scoresql Command
Analyze SQL queries against CSV file caches (stats, moarstats, frequency) to produce a performance score with actionable optimization suggestions before running the query. Scoring factors include query plan analysis (EXPLAIN), type optimization, join key cardinality, filter selectivity, anti-pattern detection (SELECT *, missing LIMIT, cartesian joins), and infrastructure checks (index files, cache freshness). Supports Polars and DuckDB modes, SQL file input, and JSON output. Integrates with describegpt for AI-assisted query review. #3612, #3616, #3624
Smarter pragmastat — Stats-Cache Aware with Comparison Mode
pragmastat now reads the stats cache to automatically skip non-numeric/non-date columns, and writes its own results back to the cache for downstream commands. New --compare1 and --compare2 options let you compare two distributions side-by-side. Multiple performance optimizations make it significantly faster. #3591, #3593, #3596, #3595, #3611
pivotp — Smarter Pivoting with moarstats
pivotp now integrates with moarstats to auto-validate pivot column cardinality before execution, preventing overly wide output (>1000 columns) and guiding users toward better pivot strategies. #3606
to — Named Table Support
The to command gains a --table option for CSV, XLSX and ODS output, letting you write data to a named sheet/table in workbook formats. #3572, #3580
Added
scoresql: new command — score SQL queries for safety, complexity and performance #3612scoresql: SQL file support, DuckDB PATH fallback &QSV_DUCKDB_PATHrename #3616to: add--tableoption for CSV, XLSX and ODS output #3572, #3580searchset: ignore line comments in regexset files #3622pragmastat: add--compare1and--compare2options #3591pragmastat: use stats cache to only process numeric/date/datetime columns #3593pragmastat: write results to stats cache #3596pragmastat: multiple performance optimizations #3595, #3611pivotp: smarter pivoting with moarstats integration #3606describegpt: scoresql integration #3624
Changed
stats: reduce day-valued precision to 5 decimals #3607frequency: usearray_windowsfor pairwise comparisons- Use
mul_addfor numeric ops across the codebase for more accurate FMA - MSRV bumped to latest stable Rust 1.94
- Switch csvlens dependency to upstream
- Polars bumped to 0.53.0 (py-1.39.x series)
Fixed
stats: fixed big performance regression caused by memory-aware chunking logic error #3598help: fine-tune markdown generation of docopt usage text #3600
Dependencies
- Polars 0.53.0 (py-1.39.3)
- pragmastat 11.1.0 → 12.0.0 #3589
- qsv-stats 0.47.0 → 0.48.0 #3587
- jsonschema 0.44.0 → 0.45.0 #3592
- minijinja/minijinja-contrib 2.16.0 → 2.18.0
- calamine 0.33 → 0.34
- cached 0.58 #3594
- Removed patched forks of self_update and pragmastat (upstream releases available)
- Various other dependency bumps (toml, toon-format, tempfile, redis, libc, sysinfo, once_cell, spreadsheet-ods)
Full Changelog: 17.0.0...18.0.0
Note
qsv 18.0.0 is not published to crates.io. qsv depends on an unreleased git revision of Polars, and cargo publish strips [patch.crates-io] entries, causing dependency resolution to fail against the published Polars v0.53.0 on crates.io (which caps chrono <=0.4.41, incompatible with chrono 0.4.44). This will be resolved once Polars publishes a new crates.io release with updated chrono support. In the meantime, install qsv via the prebuilt binaries, various package managers, or by building from source.