# Auto-Analyst: four DSPy agents and no documented way to start them

> An MIT licensed data science agent system from FireBird Technologies, TypeScript at the root and Python inside the agents. The agent contracts are specific enough to copy, but the README documents no install command, and its connector list contradicts itself in the same page.

**FireBird-Technologies/Auto-Analyst** — Open-source AI-powered data science platform. 

- Repository: https://github.com/FireBird-Technologies/Auto-Analyst
- Website: https://www.autoanalyst.ai
- Stars: 707 · Forks: 117
- Language: TypeScript
- License: MIT
- Published: 2026-09-14 · Updated: 2026-09-14 · Language: en
- Canonical page: https://hysenlabs.com/projects/firebird-technologies-auto-analyst

## The README never says how to start the thing

Auto-Analyst ships no install command, no run command and no configuration file in its documentation. The root listing holds package-lock.json with no package.json beside it, alongside auto-analyst-backend/, auto-analyst-frontend/, docs/, terraform/, CONTRIBUTING.md, LICENCE and README.md. The README names none of those paths. The only route it offers is the hosted app at autoanalyst.ai/chat.

That leaves the repository's role ambiguous. The licence section invites you to use, remix and build on the code under MIT, while the documentation demonstrates only the product. Contributors are sent to CONTRIBUTING.md, which the README does not summarise. A terraform/ directory implies infrastructure as code for deployment, with no described workflow behind it. There are no GitHub releases either, so there is no tagged artifact to install, and the last push to the default branch was on 2026-08-20.

## Python agents inside a TypeScript repository

The repository declares TypeScript as its primary language, with the frontend and the backend in separate directories. The agents are written as Python DSPy signatures. An agent is a class whose fields declare its inputs and outputs:

```python
class google_ads_analyzer_agent(dspy.Signature):
    goal = dspy.InputField(desc="User goal")
    dataset = dspy.InputField(desc="DataFrame")
    plan_instructions = dspy.InputField(desc="Instructions")
    code = dspy.OutputField(desc="Python code")
    summary = dspy.OutputField(desc="Analysis summary")
```

Two things follow from that shape. The unit of extension is a Python file rather than a TypeScript module, so adding an agent means shipping Python that the backend has to run somewhere. And the output contract is explicit: each agent emits Python code plus a summary, which is why the product advertises a code editor with AI-assisted edits and auto-fix for broken code. The class in the example is google_ads_analyzer_agent, which is not among the four agents the README documents, so the snippet is a template rather than something that ships.

## Connectors described as built-in and as request-only in one page

The developer section lists dataset connectors as built-in: Google Ads, Meta and LinkedIn Ads for advertising, HubSpot and Salesforce for CRM, and Postgres, MySQL, Oracle and DuckDB for SQL. The walkthrough above it tells you to upload .csv or .xlsx and says more connectors, APIs and SQL among them, are available upon request. Both statements cannot be true at once.

Either those nine connectors live in the repository, in which case the upload step undersells them, or they are provisioned per account by the vendor, in which case built-in describes the hosted product rather than the code. Nothing in the repository settles it, because there is no configuration file listing enabled connectors and no environment variable documentation. The contact form at autoanalyst.ai/contact is the offered path to more.

## MIT licensing beside an Enterprise dashboard that allocates credits

The README calls the project fully open-sourced and MIT licensed, and the licence section invites you to use, remix and build on it. Two of the three listed UI features are outside that gift. The Analytics Dashboard is labelled Enterprise, and its stated jobs are monitoring usage, setting limits, allocating credits, and enforcing roles and permissions. Daily scheduled reports with auto-regeneration are marked enterprise-ready.

That metering sits awkwardly beside the headline promise of bringing your own API key so you pay only what you use. If the hosted app tracks usage and doles out credits, the unit of account stops being your key and becomes the vendor's balance. The MIT repository covers the agent system. Usage control, quotas, roles and the scheduler are described as product features, with no implementation detail given for any of them, so a reader cannot tell which parts of the dashboard exist in the code.

## Four named agents, and routing the planner handles for you

Four agents are documented by name and by library. @preprocessing_agent cleans with pandas and numpy, fixing types, handling nulls and computing aggregates. @statistical_analytics_agent runs regression, correlation and ANOVA with statsmodels. @sk_learn_agent trains Random Forest, KMeans and Logistic Regression with scikit-learn. @data_viz_agent produces charts with plotly and carries a retriever that picks the chart format for you.

Two invocation paths exist. You tag a question with an agent name such as @preprocessing_agent, or you tag nothing and let the planner choose agents, write plan instructions, coordinate them and collect the results. The untagged path is the default, so on the common route the routing decision belongs to the model rather than to the person asking. A chart formatter for best-guess visualisation types sits in the same layer, and a retriever picks formats inside the visualisation agent, so two separate places guess on the reader's behalf before any result appears.

## Data preparation is handed back to whoever uploads the file

The walkthrough asks you to describe your dataset in a short text answer, after which the system produces a cleaned, structured metadata summary optimised for LLM workflows. Its single concrete tip is a naming task for the user: rename generic columns such as var_1 to price or category for better analysis.

No sampling policy, row limit, type coercion rule or timeout is mentioned anywhere in the documentation. Column names and a free-text description therefore carry the load that an engineer would normally shift by inspecting dtypes, cardinality and missing rates, and the preprocessing agent's stated work, fixing types and handling nulls, happens after that description rather than feeding it. Guardrails are claimed for output quality and the dashboard can enforce roles, but no accuracy figure, evaluation set or test suite is named for any agent.

## The unchecked roadmap boxes are the real feature boundary

The roadmap lists four short-term goals and none of them is checked. Deep Analysis Mode, described as the LLM equivalent of longform research. Multi-CSV and multi-sheet Excel analysis. User-defined analytics agents through the UI. Improved code-editing and auto-debugging.

Each box marks a limit of the current build. One file per upload means multi-file work has to be merged before a session starts. Agents cannot be authored through the interface, so extending the system means writing a DSPy signature in Python and redeploying. There is no long-form report mode. The long-term section adds three directions rather than commitments: usability-first, shaped by the global analyst community, and open collaboration on agents, retrievers and datasets. With the last push dated 2026-08-20 and no releases published, treat those four boxes as the present boundary rather than a schedule.

## Conclusion

Auto-Analyst is worth reading for its agent contract rather than for its onboarding. The four named agents, the DSPy signature pattern and the planner design are concrete enough to copy into another stack, while the absent install command, the self-contradictory connector list and the Enterprise-only accounting leave the hosted app as the only documented way to see it work. Before adopting it, find out which connectors actually ship in the repository, work out what executes the Python agents inside the backend, and settle licensing and credit terms if a team plans to run it past personal use.

## FAQ

### What is Auto-Analyst and what does it do with an uploaded file?

Auto-Analyst is an MIT licensed system that takes .csv or .xlsx uploads, builds a cleaned metadata summary from a short text description of the data, then routes your question to one of four built-in agents or to a planner that selects them. The agents call pandas, numpy, statsmodels, scikit-learn and plotly.

### How do I run Auto-Analyst myself from the repository?

The README documents no install or run command. The root holds package-lock.json, auto-analyst-backend/, auto-analyst-frontend/, docs/, terraform/ and CONTRIBUTING.md, and the hosted app is offered at autoanalyst.ai/chat, so a clone alone does not tell you how to start either service.

### Can I use Auto-Analyst with my own LLM API key?

Yes, that is the stated model, with OpenAI, Anthropic and Deepseek on groq named as compatible providers and the promise that you pay only what you use. Usage monitoring, limits, credit allocation and roles sit in the Analytics Dashboard, which is marked Enterprise.

### Which dataset connectors ship with Auto-Analyst?

The developer section calls Google Ads, Meta, LinkedIn Ads, HubSpot, Salesforce, Postgres, MySQL, Oracle and DuckDB built-in connectors, while the walkthrough says more connectors such as APIs and SQL are available upon request. The two statements disagree, and no configuration file resolves it.

### Can I write my own Auto-Analyst agent in the browser?

Not yet. User-defined analytics agents through the UI is one of four unchecked short-term roadmap items, alongside Deep Analysis Mode, multi-file analysis and improved auto-debugging. An agent is currently defined as a DSPy signature class.

## Sources

- [FireBird-Technologies/Auto-Analyst on GitHub](https://github.com/FireBird-Technologies/Auto-Analyst)
- [Issues](https://github.com/FireBird-Technologies/Auto-Analyst/issues)
- [License: MIT](https://github.com/FireBird-Technologies/Auto-Analyst/blob/main/LICENSE)
- [Project website](https://www.autoanalyst.ai)
- [README](https://github.com/FireBird-Technologies/Auto-Analyst/blob/main/README.md)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/firebird-technologies-auto-analyst
