Skip to main content

Developer agent BetaEnterpriseEnterprise +

The Developer agent is the next evolution of Copilot and provides agentic capabilities to streamline the developer experience in the Studio IDE. Generate or refactor models, tests, and documentation from natural language — grounded in your project's lineage, metadata, governance, and Semantic Layer — while keeping every change auditable.

Use the Developer agent to:

  • Generate semantic models, tests, and docs: Scaffold YAML definitions from existing models and save time on manual setup.
  • Build or modify models: Create or update dbt models from natural language descriptions of the transformation or logic you need.
  • Light refactors: Rename columns, change materializations, or adjust logic. The agent keeps associated YAML files in sync.

The agent always has access to the latest dbt-recommended guidance through dbt Agent Skills, a curated collection of instructions managed by dbt Labs. These skills are available out of the box — no configuration needed! 🎉

Prerequisites

Availability and considerations

  • The Developer agent is available in the Studio IDE only. It's not available in VS Code or the dbt CLI.
  • It works across all engines (dbt Fusion engine and dbt Core).
  • It does not retain conversation context between sessions. If you close the Studio IDE, the conversation resets. If you saved any file changes the agent made, those changes will remain in your branch. Unsaved changes are lost.
  • Currently, Plan mode isn't supported. The Developer agent drafts changes directly without showing a plan first. Use Ask mode if you want to approve each file change before it is persisted.
  • You cannot edit a prompt after submitting it. To refine your request, click the Start over button located at the top right corner of the Copilot panel. This resets the session and you can submit a new prompt.

Using the Developer agent

To use the Developer agent, follow these steps:

  1. Open your dbt project in the Studio IDE, then click Copilot in the command palette.
  2. Start a prompt in several ways in the Copilot panel:
    • Quick actions: The Studio IDE surfaces quick actions at the top of the panel to help you get started with common tasks.
    • Plain text: Type directly into the text field to describe what you want to build or change.
    • Model context: Type @ to select a model as context. This scopes the agent's changes to that resource.
  3. Select the Agent mode button to specify the mode for the Developer agent. Available modes are Ask (default) and Code.
  4. Review the agent's suggestions and approve or reject the changes. You can also use the Start over button to reset the current session.
  5. Approve dbt commands when the Developer agent requests to run commands like dbt compile or dbt build.
  6. Repeat the process to build or change more models.
  7. Commit the changes to your dbt project and open a pull request.
Example of using the Developer agent to refactor a model in the Studio IDE.

For more details on the Developer agent and how it works, see the following sections.

Panel controls

The Copilot panel contains:

  1. Quick actions (center): The Studio IDE surfaces quick actions at the top of the panel to help you get started with common tasks, like generating documentation, semantic models, tests, and metrics. When selected, the text field is pre-filled with a prompt for the selected action. These quick actions may evolve over time as new capabilities are added.
  2. Agent mode button (bottom left): Switch between Ask and Code mode. Click the button to change modes.
  3. Model context (bottom left, next to mode): Shows the currently open file. Use @ in the text field to reference a different model. Click x to remove the model context.
  4. Text input field (bottom right): Type your prompt in the text field to describe what you want to build or change. Type @ to select a model as context. This scopes the agent's changes to that resource.
  5. Start over (top right): Resets the current session. When you click this button, a confirmation prompt appears. Click Start over to confirm, or Cancel to return to your current conversation. You cannot undo this action.
  6. Stop or Enter (bottom right): Press Enter to submit your prompt. Press Stop to stop the current session and agent processing. You cannot undo this action.
The Copilot panel in the Studio IDE showing quick-action buttons, text input field, and agent mode controls.The Copilot panel in the Studio IDE showing quick-action buttons, text input field, and agent mode controls.

Agent modes

The Developer agent operates in two modes:

ModeBehavior
Ask (default)The agent drafts edits to files. You must approve each file change before it is persisted. Best when you want tight control over what gets saved to your branch.
CodeThe agent drafts and automatically edits files without per-file approval. Best for faster iteration when you're confident in the prompt.

You can switch between modes at any time by clicking the Agent mode button in the Copilot panel.

The Developer agent in Ask mode, requesting approval before making file edits.The Developer agent in Ask mode, requesting approval before making file edits.

Reviewing agent suggestions

When the Developer agent proposes code changes, you can review them before they are committed to your project:

  • View the diff: The agent displays a diff of the proposed changes. Click Show all X lines to expand and view the full suggestion.
  • Line indicators: Added and removed lines are highlighted with line number indicators so you can see exactly what changed.
  • Copy or open in editor: Use the options in the top-right corner of the diff view to copy the suggestion or open it directly in the editor.
The Developer agent displaying a diff of proposed YAML changes with line indicators and copy/open options.The Developer agent displaying a diff of proposed YAML changes with line indicators and copy/open options.

Granting command permissions

To validate or run models during a session, the agent may request to run dbt commands such as dbt compile or dbt build. You'll be prompted to approve each request before it executes. For example, the agent might request to run:

dbt compile --select model_name
The Developer agent requesting permission to run a dbt command.The Developer agent requesting permission to run a dbt command.

You can select one of the following options:

OptionBehavior
Yes, run onceGrants permission to run this specific command one time.
Yes, and allow dbt_command_name for the sessionGrants permission to run dbt commands for the remainder of your session without prompting again.
NoDenies the request. The agent will not run the command.

Writing effective prompts

Good prompts include the scope (which models or area of the project), the intent (the transformation or business logic you want), and any constraints (naming conventions, materialization, tests). Here are a few examples:

TaskExample prompt
Build a new model"Create a model called fct_daily_revenue that joins stg_orders and stg_payments, aggregates revenue by day, and materializes as a table."
Refactor an existing model"Refactor fct_orders to use incremental materialization. Keep existing tests and follow our naming conventions."
Generate tests and docs"Add not_null and unique tests to the primary key of dim_customers, and generate documentation for all columns."
Loading table...

For detailed guidance, patterns, and more examples across SQL, documentation, tests, and semantic models, see the Prompt cookbook.

Was this page helpful?

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

0
Loading