datasqrl/sqrl/data-observation
Claude Code and agent skill by datasqrl/sqrl
- community
Checking that the SKILL.md file is still in the repository.
Use when a task provides source, sample, or test data files to inspect before modeling schemas, connectors, writing test data or implementing anything. Ensures you look at the real data (size, format, values) instead of guessing from filenames, READMEs, or prior knowledge.
Install
npx vskill@latest install datasqrl/sqrl/data-observationSKILL.md
Observe provided data before modeling it
Always inspect provided data (real, sample, or test data) before designing schemas, connectors, or test data. Do not infer the schema from filenames, READMEs, or prior knowledge alone. Always read the provided data (or subsets thereof if too large) first. Always consider provided data as authoritative and flag any inconsistencies with READMEs, requirements, or other provided instructions. Never resolve such inconsistencies without user direction.
For each provided data file:
- Check the size first. Use the following commands:
ls -la <file>ordu -h <file>. The size decides how you inspect it and whether it needs special handling (step 4). - Read a bounded prefix — never the whole file — in a format-aware way:
- Text (
.jsonl,.ndjson,.csv,.tsv): usehead -100 <file>command - Gzipped (
.gz, e.g..csv.gz): usezcat <file> | head -100command — decompress only a prefix, never the whole file - Columnar Parquet: use
duckdb -c "SELECT * FROM '<file>' LIMIT 100"command. For.orc/.avro, DuckDB needs a dedicated reader (e.g.INSTALL avro; LOAD avro;thenread_avro('<file>')) or use another tool — a bareFROM 'file.orc'will not work - Archives (
.zip): useunzip -l <file>command to list members, then inspect a single small member
- Understand the data from what you actually saw: column names and order, types, real value formats, null/optional fields, header rows, and edge cases. Base the schema and test data on the observed rows, not on assumptions.
- If a file is large (roughly tens of MB or more), do not wire a connector to it or leave it unchanged in the project. As DataSQRL copies every data file into
build/on each compile/test command, so a large file makes every run extremely slow (andcompile/testcommands used in downstream tasks will be blocked). Invoke the `/handle-large-data-files` skill to sample it down or exclude it. - For CSV specifically: confirm the delimiter, quoting, and header. For CSV sources, the header data only lives in the schema: the column names go into the
CREATE TABLEstatement, and the CSV file contains only data rows. If the file has a header row, carry its column names into theCREATE TABLEstatement in order, and remove the line from the file. Check that rows have a consistent field count — provided CSV might be ragged (trailing delimiters, extra empty columns, the odd malformed row), which passes compile and fails the Flink job at runtime. Nail the column count from the real data, then configure the source with the/manage-connectorskill (formats/csv.md, Ragged rows).
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingagent/skills/data-observation/SKILL.md
Popularity
- Repository stars
- 231
- Repository forks
- 30
- 7-day trend score
- 0
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/datasqrl/sqrl/data-observation)