Skip to content
/ nao Public

๐Ÿ‘พ nao is an open source analytics agent. (1) Create context with nao-core cli, (2) deploy nao chat interface for everyone

License

Notifications You must be signed in to change notification settings

getnao/nao

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

109 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

nao logo

nao

The #1 Open-Source Analytics Agent

๐ŸŒ Website ยท ๐Ÿ“š Documentation ยท ๐Ÿ’ฌ Slack


nao Chat Interface


What is nao?

nao is a framework to build and deploy analytics agent.
Create the context of your analytics agent with nao-core cli: data, metadata, modeling, rules, etc.
Deploy a UI for anyone to chat with your agent and run analytics on your data.

Key Features

For data teams:

  • ๐Ÿงฑ Open Context Builder โ€” Create a file-system like context for your agent. Add anything you want in the context: data, metadata, docs, tools, MCPs. No limit.
  • ๐Ÿณ๏ธ Data Stack Agnostic โ€” Works with any data warehouse, stack, type of context, LLM.
  • ๐Ÿ•ต๐Ÿปโ€โ™€๏ธ Agent Reliability Visibility โ€” Unit test your agent performance before deploying it to users. Version the context and track the performance of your agent over time. Get users feedbacks to improve the agent and track their usage.
  • ๐Ÿ”’ Self-hosted & secure โ€” Self-host your analytics agent and use your own LLM keys to guarantee maximum security for your data.

For business users:

  • ๐Ÿค– Natural Language to Insights โ€” Ask questions in plain English, get analytics straight away
  • ๐Ÿ“Š Native Data Visualization โ€” Create and customize visualizations directly in the chat interface
  • ๐ŸงŠ Transparent Reasoning โ€” See the agent reasoning and sources clearly
  • ๐Ÿ‘ Easy Feedback โ€” Send feedback to the data team when a answer is right or wrong

โšก๏ธ Quickstart your agent in 1 minute

  • Step 1: Install nao-core package

    pip install nao-core

  • Step 2: Initialize a nao project

    nao init

    It will ask you:

    • To name your project
    • If you want to connect a database (optional)
    • If you want to add a repo in agent context (optional)
    • To add an LLM key (optional)
    • If you want to setup a Slack connection (optional)

    ๐Ÿ’ก You can skip any optional question and configure them later in your nao_config.yaml file.

    This will create:

    • A new folder with your project name
    • An architecture for your context files
    • A nao_config.yaml configuration file
    • A RULES.md file

  • Step 3: Verify your setup

    cd to the project folder and run:

    nao debug

  • Step 4: Synchronize your context

    nao sync

    This will populate your context folder with your context files (data, metadata, repos, etc.)


  • Step 5: Launch the chat and ask questions

    nao chat

    This will start the nao chat UI. It will open the chat interface in your browser at http://localhost:5005. From there, you can start asking questions to your agent.

Commands

nao --help
Usage: nao COMMAND

โ•ญโ”€ Commands โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ chat         Start the nao chat UI.                                       โ”‚
โ”‚ init         Initialize a new nao project.                                โ”‚
โ”‚ sync         Sync context from your context sources (databases, repos)    โ”‚
โ”‚ debug        Debug and troubleshoot your nao setup.                       โ”‚
โ”‚ --help (-h)  Display this message and exit.                               โ”‚
โ”‚ --version    Display application version.                                 โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

๐Ÿณ Docker

Pull the image from DockerHub:

docker pull getnao/nao:latest

Run with Docker:

docker run -d \
  --name nao \
  -p 5005:5005 \
  -e NAO_DEFAULT_PROJECT_PATH=/app/example \
  -e OPENAI_API_KEY=sk-... \
  getnao/nao:latest

Access the UI at http://localhost:5005

See the DockerHub page for more details.

๐Ÿ‘ฉ๐Ÿปโ€๐Ÿ’ป Development

See CONTRIBUTING.md for development setup, commands, and guidelines.

๐Ÿ“’ Stack

Backend

Frontend

โ›น๏ธโ€โ™€๏ธ Join the Community

  • Star the repo
  • Subscribe to releases (Watch โ†’ Custom โ†’ Releases)
  • Follow us on LinkedIn
  • Join our Slack
  • Contribute to the repo!

๐Ÿซฐ๐Ÿป Partners

nao Labs is a proud Y Combinator company!

YCombinator

๐Ÿ“„ License

This project is licensed under the Apache 2.0 License - see the LICENSE file for details.