File reading and directory listing ops. Reach for these when you know the path and want content — a single file, a directory listing, or metadata without searching.
| Op | Syntax | What it does |
|---|---|---|
read |
read:PATH or read:PATH:OFFSET:LIMIT |
300 lines / 20KB cap |
read (filter) |
read:PATH:OFFSET:LIMIT:grep=PATTERN |
Only show lines matching PATTERN (original line numbers preserved). Use read:PATH:::grep=PATTERN for defaults. |
head |
head:PATH:N |
First N lines (default 20). Minified single-line files return a char-window peek instead of the whole giant line; window size via builtin-ops.head.char_window (default 1000, or env SUPERTOOL_HEAD_CHAR_WINDOW). |
tail |
tail:PATH:N |
Last N lines (default 20). Minified single-line files return a char-window peek; window size via builtin-ops.tail.char_window (default 1000, or env SUPERTOOL_TAIL_CHAR_WINDOW). |
wc |
wc:PATH |
Line/word/char count (like unix wc). Output: LINES WORDS CHARS PATH. Flags single-line/minified files where the line count is degenerate. |
stat |
stat:PATH |
File/directory metadata: size (bytes), last modified (ISO datetime), type (file/dir). |
ls |
ls:PATH |
Directory listing. Trailing / on subdirs. |
glob |
glob:PATTERN |
** supported. Auto-reads if PATTERN is a concrete file path (no wildcards). |
tree |
tree:PATH or tree:PATH:DEPTH |
Directory structure with depth limit (default 3). Hides dotfiles. Files listed before subdirectories. |
diff |
diff:PATH1:PATH2 |
Unified diff between two files. |
Read three files in one round-trip — parallel where safe:
./supertool 'read:src/Module.py' 'read:src/Config.py' 'read:src/Auth.py'Survey a directory then read the interesting file:
./supertool 'tree:src/app/' 'glob:src/app/**/*.py' 'read:src/app/Module.py'Read only matching lines from a large file (line numbers preserved):
./supertool 'read:src/app/Config.py:::grep=DEBUG'Check size before deciding to read:
./supertool 'stat:src/app/BigFile.py' 'head:src/app/BigFile.py:50'- search.md — when you don't know the path yet (
grep,between,around) - map.md — when you want the symbol skeleton of a file/directory without reading every line
- docs/validators.md — validators run automatically on mutating ops