# Getting started with the DinoAI background agent

DinoAI Agent runs autonomously in the background — executing dbt™ models, querying your warehouse, and opening PRs without you having to be in the IDE. Before your first run, you need to connect three things.

{% hint style="warning" icon="plug-circle-plus" %}
**New to Paradime? Start by setting up your workspace before using DinoAI.**

> ⚠️ **Note:** A CodeIDE connection is required during workspace onboarding — even if you plan to use the agent only. This requirement will be removed in a future update.

Follow our step-by-step guide to get started: [Setting up your Paradime workspace →](https://docs.paradime.io/app-help/guides/paradime-101/getting-started-with-your-paradime-workspace/creating-a-workspace)
{% endhint %}

{% hint style="info" %}
**Before you start, make sure you have the following:**

* Admin access to your Paradime workspace
* GitHub organisation owner access (or someone on your team who does)
* Data warehouse credentials for DinoAI — we recommend a dedicated service account with scoped permissions

Watch the setup tour below, or follow the step-by-step docs.
{% endhint %}

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

### 1. Connect Slack

{% hint style="warning" %}
If Slack is already connected, disconnect and reconnect to pick up the new background agent permissions.
{% endhint %}

DinoAI communicates through Slack — progress updates, results, and errors all land in your connected workspace.

*Workspace Settings > Integrations > Paradime Slack App > Connect*

You'll be redirected to Slack to authorise the app. Sign in and approve the required permissions. Learn more [here](/app-help/documentation/integrations/notifications/slack.md).

***

### 2. Install the GitHub app

DinoAI needs GitHub access to push branches and open PRs against your connected repo. Learn more [here](/app-help/documentation/integrations/ci-cd/github.md).

*Workspace Settings > Integrations > GitHub > Connect*

1. Authenticate with GitHub when redirected.
2. Select the repositories to connect — include the repo tied to your Paradime workspace.
3. Click **Install and authorize**.

{% hint style="warning" %}
You must be a **GitHub organisation owner** to install the app. If you're not, click **Authorize & Request** — this sends an automated approval request to your org owner.
{% endhint %}

***

### 3. Set up the agent environment

This is the warehouse connection DinoAI uses at runtime when executing models or running queries on your behalf.

*Account Settings > Connections > DinoAI Background Agent Environment*

Select your warehouse and follow the configuration guide for your platform:

{% hint style="info" %}
**We recommend creating a dedicated service user with its own permissions for the background agent, with read-only access to your production database.**
{% endhint %}

***

{% hint style="success" %}
**You are ready!**

Once all three are connected, DinoAI can run fully in the background. Head to Agent Mode to kick off your first task.
{% endhint %}

{% hint style="info" icon="t-rex" %}
**Customise how DinoAI operates with `.dinorules`**

Want DinoAI to follow your team's conventions, coding standards, or workflow preferences? Add a `.dinorules` file to the root of your repository and merge it into your default branch — DinoAI will pick it up automatically at the start of every session.

\
[**Learn how to configure `.dinorules` →**](https://docs.paradime.io/app-help/documentation/dino-ai/dino-rules#example-.dinorules-file-configuration)
{% endhint %}

### Start your first DinoAI session

Setup done. **Time to wake DinoAI up 🦖**. Go to Slack and add the Paradime bot to the channel where you want DinoAI to operate.

{% hint style="info" %}
To add an DinoAI to a Slack channel, either use the command `/invite @paradime` within that channel or click the channel name, go to the **Integrations** tab, select **Add an App**, and add Paradime.
{% endhint %}

{% hint style="warning" %}
Always use `@paradime` when sending messages to the DinoAI agent in Slack. Without it, the agent won't see or respond to your message.
{% endhint %}

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

Then send your first message to check it's listening:

> @paradime Hey Dino, are you there?

If everything is connected, DinoAI will respond and confirm it's ready to take on tasks.

From there, give it a real first task — something like:

> *"Dino, document all models in the marts folder that are missing descriptions."*

> *"Dino, create a new model that joins orders and customers on customer\_id."*

> *"Dino, run a quick check on our staging models and flag anything that looks off."*

DinoAI will pick it up, work in the background, and report back in the channel when it's done.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.paradime.io/app-help/guides/paradime-101/getting-started-with-the-dinoai-background-agent.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
