dtfilter
Skill1 starsChanged 59 days agoMITView on GitHub
Use when the user asks to filter, query, search, or extract specific rows or columns from a tabular data file (CSV, TSV, Parquet, Arrow, JSON, NDJSON, Excel). Also use when the user wants to sort data, find rows matching conditions, or select specific columns from any supported format.
In this repository16 other files it gives its agents.
- debug-remote-pipelineSkill
- dictateSkill
- dtcatSkill
- dtdiffSkill
- dtsetSkill
- esync-setupSkill
- hathifilesSkill
- hathitrust-lookupSkill
- julia-releaseSkill
- marginSkill
- mint-gh-tokenSkill
- nclqSkill
- pr-walkthroughSkill
- rendering-spec-docsSkill
- wrds-downloadSkill
- wrds-downloadSkill
The file
We split this skill into the rules it gives an agent
5 rules. About 0 are common, 0 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 86
Use dtcat file first to see schema and sample data
- Very specific: line 87
Use --filter to filter rows by conditions
- Very specific: line 88
Use --columns to narrow to relevant columns
- Very specific: line 89
Use --sort to order results
- Very specific: line 90
Use --csv when piping to other tools
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
dtfilter — Tabular Data Filter
Filter, sort, and select data from any supported tabular file format. Outputs markdown tables or CSV.
Quick Reference
# Filter rows where State equals CA
dtfilter data.csv --filter State=CA
# Multiple filters (AND logic)
dtfilter data.parquet --filter State=CA --filter Amount>1000
# Select specific columns
dtfilter data.csv --columns State,City,Amount
# Sort by column (ascending by default)
dtfilter data.csv --sort Amount
dtfilter data.csv --sort Amount:desc
# Limit output rows
dtfilter data.csv --filter Status=Active --limit 10
# First/last N rows (before filtering)
dtfilter data.csv --head 20
dtfilter data.csv --tail 10
# Target a specific sheet (Excel)
dtfilter report.xlsx --sheet Revenue --filter Region=East
# Skip metadata rows above header
dtfilter data.csv --skip 2 --filter Name~alice
# CSV output for piping
dtfilter data.parquet --filter Amount>500 --csv
# Override format detection
dtfilter data.txt --format csv --filter value>100Filter Operators
| Operator | Meaning | Example |
= | Equals | State=CA |
!= | Not equals | Status!=Draft |
> | Greater than | Amount>1000 |
< | Less than | Year<2024 |
>= | Greater or equal | Score>=90 |
<= | Less or equal | Price<=50 |
~ | Contains (case-insensitive) | Name~john |
!~ | Not contains | Name!~test |
Numeric columns compare numerically. String columns compare lexicographically.
Flags
| Flag | Purpose |
--format <fmt> | Override format detection |
--sheet <name|idx> | Select sheet (Excel only) |
--skip <n> | Skip metadata rows above header |
--filter <expr> | Filter rows (repeatable, AND logic) |
--sort <spec> | Sort by column (col or col:desc) |
--columns <cols> | Select columns by name (comma-separated) |
--head <n> | First N rows (before filtering) |
--tail <n> | Last N rows (before filtering) |
--limit <n> | Max rows in output (after filtering) |
--csv | Output as CSV instead of markdown |
Exit Codes
| Code | Meaning |
| 0 | Success |
| 1 | Runtime error |
| 2 | Invalid arguments |
Workflow
- Use
dtcat filefirst to see schema and sample data - Use
--filterto filter rows by conditions - Use
--columnsto narrow to relevant columns - Use
--sortto order results - Use
--csvwhen piping to other tools
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

