Drop in a spreadsheet and ask it questions. Sai reads the whole file first — structure, gaps, and what's broken in it — then answers from the data instead of guessing.




Someone sends you a CSV export with sixty thousand rows and forty columns. You can open it. You cannot read it. The column headers are abbreviated to the point of being cryptic, three of them appear to hold the same thing, and somewhere in there is the answer to the one question you actually have.
The conventional options are all bad in different ways. Pivot tables require you to already know what you are looking for. Writing a script means a context switch into an environment you may not be fluent in, for a question you will ask once. Scrolling is not a method. And pasting the file into a chat window tends to produce an answer that sounds precise and cannot be verified — which for a number that is going into a decision is worse than no answer.
The most common failure in spreadsheet analysis is not a wrong calculation. It is a correct calculation over data that had a problem nobody checked for. A duplicated export run that silently doubled a third of the rows. A currency column where some values carry a symbol and some do not, so half of them are text. Dates in two formats, which means every date-range filter is quietly excluding rows.
None of this is exotic — it is the normal condition of a real file. So the prompt starts with a diagnostic pass rather than an answer: what each column holds, how complete it is, what looks inconsistent, and what the dataset is genuinely capable of answering. That last one saves the most time. Finding out in the first minute that the file has no date column, and therefore cannot show a trend, is much cheaper than finding out after building the analysis.
Once you know what you are working with, the interaction is conversational. Ask for a total, a breakdown by segment, the outliers, how two columns relate, which rows meet some condition. Follow-up questions carry context, so you can narrow and pivot the way you would in a conversation rather than reformulating a query each time.
Two constraints keep the answers trustworthy. Every answer comes from the file — not from what a model assumes a dataset like this usually contains. And when a question cannot be answered with the columns available, that is the response. An estimate presented as a finding is the single most damaging thing an analysis tool can produce, because it is indistinguishable from a real one.
The diagnostic pass reports problems; it does not fix them. This is deliberate. Automatic cleaning is how data quietly disappears — rows dropped as duplicates that were legitimately identical transactions, blanks filled with a default that becomes indistinguishable from real values, a column type coerced in a way that truncates. You see what was found, you decide what to do about it, and any cleaning happens as an explicit instruction with the original left intact.
Both work. The practical distinction is that an Excel workbook carries structure a CSV does not — multiple sheets, formulas, formatting, sometimes merged cells that were meant for human eyes and confuse everything else. Name the tab you want if the workbook has several. Where formulas exist, the computed values are read, so what you get matches what you see in the sheet rather than the underlying expressions.
For CSVs, the usual problems are delimiters and encoding — semicolons instead of commas from European exports, characters that arrive mangled. These are handled without you specifying anything, but they are worth knowing about, because they are the reason a file sometimes looks corrupted when opened directly.
Say what the dataset is for and the initial read will orient around it — the same file gets a different summary if you are checking data quality before an import than if you are looking for the trend to put in a board update. If you already know the columns that matter, name them and skip the survey. For files you receive on a recurring basis, ask for the same diagnostic each time and Sai will flag what changed since the last version, which catches upstream export problems before they reach your reporting.