Splitline turns JSON documents and row datasets into a workspace you can read, profile, search, and repair. A health check shows where to look; optional AI turns a question into a validated plan that runs locally.
id string · 100% filledtask string · 100% filledquality_score number · 100% filled
tr_001summarization0.97
tr_002code0.91
tr_003explanation0.94
tr_004extraction1.00
01 Profile every field
02 Inspect the evidence
JSONstructureJSONLtraining rowsCSVtabular dataTSVtabular dataJSONstructureJSONLtraining rowsCSVtabular dataTSVtabular data
01 / The problem
Your dataset is not a wall of text.
Editors show syntax. Splitline shows structure, coverage, drift, and the exact records behind every warning. Less scrolling through braces. More knowing what you are about to train on.
“The fastest way to find a bad row should not be writing another script.”
02 / How it works
From file to understanding, without the detour.
Open one file or a whole folder. Splitline selects the right workspace and keeps every normal inspection step offline.
01
Open the real file.
Double-click in Finder, drop a folder, or choose JSON, JSONL, CSV, and TSV directly.
Nothing to import. Nothing to upload.
02
Read the shape.
Profile types, coverage, cardinality, ranges, common values, and split-to-split drift.
Every score keeps its evidence visible.
03
Fix what matters.
Edit primitive and nested values, delete a bad row, undo, and save without reformatting untouched lines.
Your source stays recognizable.
03 / The workspace
Wide data. Clear decisions.
Splitline keeps the table, the field profile, and the selected row close together. Switch views without losing the file or question you were working on.
Splitline · assistant-quality-demo
RowsSearch nested values, scan content-sized columns, edit cells, and keep the full record open beside the table.Inspect 1:1 ↗SchemaSee inferred types, field coverage, uniqueness, ranges, and common values before a training run does.Inspect 1:1 ↗
04 / Guided analysis
Know what is wrong. Then ask what it means.
Health Check finds structural risk automatically. Analyze stays idle until you open the chat and send a request, then keeps the outbound and local parts of that request visibly separate.
Health check On-device · automatic
One score. A trail of evidence.
Splitline checks parsing integrity, cross-split schema drift, mixed field types, and empty files. Every deduction stays paired with issue details and the file or field evidence behind it.
Runs as soon as files parse
Explains every deduction
Keeps source evidence visible
Example health check3 files · 12 rows
82Dataset health
2 checks need review. The rest of the dataset is ready to inspect.
Parsing integrityReview1 malformed record
Split consistencyReview1 field changed type
File readinessPass0 empty files
AI chat analysis By request only · user initiated
Your question starts the path.
Nothing analyzes your rows in the background. Open Analyze, review the composer’s send boundary, and submit a question. The model may answer in prose or propose a narrow plan—never code to execute.
01 Open Analyze
02 Review boundary
03 Ask in chat
04 Validate reply
05 Run locally
06 Inspect result
Only a validated analysis plan reaches Splitline’s local execution engine. By default, row values remain excluded; bounded samples are a separate, explicit choice.
Analyze chat By request only
Next requestNothing sent until Submit
Will sendTask · dataset and file name · split · row count · field profiles
ExcludedSource file · row values
You
Compare average quality score by task.
Validated planAllowed operations only
Group
task
Measure
average · quality_score
View
bar chart · descending
classification0.99
summarization0.97
procedure0.96
✓ Plan checked8 rows executed locally
05 / Built for the odd parts
Data rarely arrives clean. Splitline expects that.
01
Navigate deep JSON without mounting the whole universe.
Breadcrumbs, branch history, bounded array ranges, search scopes, and a foldable Raw view keep large documents explorable.
{"messages": [ … ]"metadata": { … }"score": 0.91}
02
Repair the record without rewriting everything around it.
Patch-based edits change only the rows you touched. Untouched source lines stay byte-identical, so a small fix does not turn into an unreadable whole-file diff.