# Dino AI

DinoAI, developed by Paradime, is an AI-powered suite of features designed to enhance analytics engineering productivity streamline SQL and dbt™ development

## Features at a Glance

🤖 [**Copilot**](#copilot): AI-powered assistant that helps write, debug, and test dbt™ models through natural language

⚡️ [**Autocomplete**](#autocomplete): Context-aware code completion that understands your project structure and patterns

💬 [**Commit Messages**](#commit-messages): Smart generation of detailed git commit messages based on your code changes

📚 [**Data Catalog**](#data-catalog-autogenerate): Automated documentation that explains your models and columns in plain English

***

## Copilot <a href="#copilot" id="copilot"></a>

Copilot is your AI assistant within the editor, offering real-time coding help and project-specific guidance.&#x20;

### Available Commands <a href="#slash-commands" id="slash-commands"></a>

In addition to entering generic inquiries into the Copilot prompt, you can leverage copilot's one-click commands:

<table><thead><tr><th width="135">Command</th><th width="263">Example</th><th width="238">Description</th><th>Tutorial</th></tr></thead><tbody><tr><td><strong>/test</strong></td><td><code>/test @stg_orders</code></td><td>Generates a test tailored to your dbt™ project's structure and content</td><td><a href="https://youtu.be/G6bKF2Fffpk?si=CmDMcHJOIDsmVnLL">🔗</a></td></tr><tr><td><strong>/explain</strong></td><td><code>/explain @stg_customers</code></td><td>Provides a detailed summary of a dbt™ model's purpose, output, and key executions.</td><td><a href="https://youtu.be/QRfL0P0A270?si=ZzOz_qtd670nxyAB">🔗</a></td></tr><tr><td><strong>/fix</strong></td><td><code>/fix @stg_orders</code></td><td>Identifies and corrects errors in your dbt™ model.</td><td><a href="https://www.youtube.com/watch?v=PEhgGzEFlw4">🔗</a></td></tr><tr><td><strong>/model</strong></td><td><code>/model create a dbt model called stg_orders that... [additional instructions]</code></td><td>Generates a new dbt™ model for your project.</td><td><a href="https://www.youtube.com/watch?v=I_UXr2Rm1Wg">🔗</a></td></tr><tr><td><strong>/mermaid</strong></td><td><code>/mermaid @stg_orders</code></td><td>Creates entity relationship diagrams (ERDs) of your dbt model's dependencies. </td><td><a href="https://youtu.be/O0GoO0sOU5Q?si=WZEIpgOQ2PLFQM7S">🔗</a></td></tr><tr><td><strong>/sql_to_dbt</strong></td><td></td><td>Converts existing SQL queries into dbt™ models</td><td><a href="https://youtu.be/_OquYqJiMxA?si=Iyby568-clV1JlLE">🔗</a></td></tr></tbody></table>

### How to Use <a href="#how-to-use" id="how-to-use"></a>

Access the Copilot commands via the following methods:

{% tabs %}
{% tab title="Method #1 - Left Panel" %}

1. Click the Dino AI icon (🪄) icon on the left side of the Editor.
2. Select a command
3. Enter your inquiry in the prompt and either press "Enter"

{% @arcade/embed flowId="7KRYAukV85BMoU90o4wD" url="<https://app.arcade.software/share/7KRYAukV85BMoU90o4wD>" %}
{% endtab %}

{% tab title="Method #2 - Right-Click" %}

1. Right Click a .sql file in your editor
2. Hover over "DinoAI co-pilot"
3. Select your desired command

{% @arcade/embed flowId="VX9y0OvDNVzIahY7GbxK" url="<https://app.arcade.software/share/VX9y0OvDNVzIahY7GbxK>" %}
{% endtab %}
{% endtabs %}

***

## Autocomplete <a href="#autocomplete" id="autocomplete"></a>

Autocomplete, powered by the “**/dino/**” command, provides smart autocompletion for SQL and dbt™ code, streamlining the creation of queries, columns, calculations, etc.

### How to Use <a href="#how-to-use-2" id="how-to-use-2"></a>

1. Begin by typing code in any .sql file in the Editor.
2. Type "/dino/" to trigger autocomplete suggestions.
3. Press "Tab" to accept, or "Esc" to cancel.
4. The selected code will automatically fill into your model.

{% @arcade/embed flowId="C95ByCEsn6bV5HUFLGA6" url="<https://app.arcade.software/share/C95ByCEsn6bV5HUFLGA6>" %}

***

## Commit Messages <a href="#commit-messages" id="commit-messages"></a>

DinoAI's Commit Messages feature automatically generates detailed commit messages tailored to your specific code changes, enhancing communication within your team.

{% hint style="info" %}
Commit Message feature is only available for [Git Lite](https://docs.paradime.io/app-help/~/changes/rDjfrwa4QH3nWWrOItTq/documentation/code-ide/left-panel/git-lite) users.
{% endhint %}

### How to Use <a href="#how-to-use-1" id="how-to-use-1"></a>

1. Make changes to your code.
2. Click on "Write Commit" in the [Git Lite](https://docs.paradime.io/app-help/code-ide/working-with-git/git-lite#commit-and-push-your-changes) panel.
3. Review the AI-generated commit message. If unsatisfied, click "Write Commit" again for a new suggestion.
4. [Commit and Push](https://docs.paradime.io/app-help/code-ide/working-with-git/git-lite#commit-and-push-your-changes) your changes

{% @arcade/embed flowId="tEKPikHHUQOmcA3hhyLF" url="<https://app.arcade.software/share/tEKPikHHUQOmcA3hhyLF>" %}

***

## Data Catalog <a href="#data-catalog-autogenerate" id="data-catalog-autogenerate"></a>

Autogenerate, powered by DinoAI, automatically generates detailed, context specific descriptions for your [data documentation](https://docs.paradime.io/app-help/code-ide/docs-preview). These descriptions are tailored specifically to your model and individual columns.

### How to Use <a href="#how-to-use-3" id="how-to-use-3"></a>

1. Click "Catalog" tab located in the Apps Panel within the Code IDE.
2. Click "Autogenerate" at the top left of the Catalog panel
3. Edit, regenerate model description as needed.
4. Save changes.

{% @arcade/embed flowId="Y6itdXt9Te0BaKrECsyr" url="<https://app.arcade.software/share/Y6itdXt9Te0BaKrECsyr>" %}
