Skip to content
Development
Skill

/snowflake-dcm

Manage Database Change Management (DCM) projects in Snowflake. DCM is infrastructure-as-code for Snowflake objects — databases, schemas, tables, and roles defined in manifest.yml with DEFINE blocks.

From plugin
snowflake-ai-kit
4310 skills

Claude Code

$ npx -y skills add Snowflake-Labs/snowflake-ai-kit --skill snowflake-dcm --agent claude-code

SKILL.md

snowflake-dcm.SKILL.md
name: snowflake-dcm
description: >-
  Manage Database Change Management (DCM) projects in Snowflake.
  DCM is infrastructure-as-code for Snowflake objects — databases,
  schemas, tables, and roles defined in manifest.yml with DEFINE blocks.

Snowflake DCM (Database Change Management)

DCM lets you manage Snowflake infrastructure as code — databases, schemas, tables, roles, and grants defined declaratively in YAML manifests and deployed through the Snowflake CLI or SQL.

When to use

  • User asks about infrastructure-as-code for Snowflake
  • User mentions DCM projects, manifest.yml, or DEFINE blocks
  • User wants to deploy, inspect, or manage database objects as code
  • User asks about the three-tier role pattern

Discovery

**List deployed DCM/dbt projects:**

SHOW DBT PROJECTS IN ACCOUNT;

**Describe a project:**

DESCRIBE DBT PROJECT my_db.my_schema.my_project;

Concepts

Manifest structure

DCM projects use `manifest.yml` with DEFINE blocks:

# manifest.yml
- DEFINE DATABASE analytics_db:
    comment: "Analytics database managed by DCM"

- DEFINE SCHEMA analytics_db.reporting:
    comment: "Reporting schema"

- DEFINE TABLE analytics_db.reporting.daily_metrics:
    columns:
      - name: METRIC_DATE
        type: DATE
        not_null: true
      - name: METRIC_NAME
        type: VARCHAR(256)
      - name: METRIC_VALUE
        type: NUMBER(18,4)
    comment: "Daily business metrics"

Three-tier role pattern

DCM automatically creates three roles per project:

  • `<project>_ADMIN` — full DDL on project objects
  • `<project>_READWRITE` — DML (INSERT, UPDATE, DELETE) on project tables
  • `<project>_READONLY` — SELECT on project tables and views

CLI commands

# Deploy a DCM project
snow dcm deploy --manifest manifest.yml

# Execute a deployed project
snow dcm execute my_db.my_schema.my_project

# List deployed projects
snow dcm list

SQL commands

-- Execute a deployed project
EXECUTE DBT PROJECT my_db.my_schema.my_project;

-- Alter a project
ALTER DBT PROJECT my_db.my_schema.my_project SET COMMENT = 'Updated';

-- Drop a project
DROP DBT PROJECT my_db.my_schema.my_project;

Drift detection

After deployment, compare the manifest against live state: 1. `DESCRIBE DBT PROJECT <name>` — see what was deployed 2. `SHOW TABLES/SCHEMAS/DATABASES` — see current state 3. Re-deploy to reconcile drift

Tips

  • DCM projects are idempotent — re-deploying applies only the delta
  • Use version control for manifest.yml — track changes over time
  • Grant the three-tier roles to users/groups as needed for access control
  • DCM works alongside dbt — DCM manages infrastructure, dbt manages transforms
Read more
@snowflake-labs
Ships withsnowflake-ai-kit

Connect your AI coding agent to Snowflake. Plugins for Claude Code and OpenAI Codex that automatically detect Snowflake prompts and route them to Cortex Code — where 55+ built-in skills handle SQL, data governance, dynamic tables, ML, and more.

Stars on GitHub

Momentum

stars in total
43
Star history of Snowflake-Labs/snowflake-ai-kit on GitHub, a chart by star-history.com

Other skills on snowflake-ai-kit.

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills2w309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc2w293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react5d252k
@facebook@facebookInstall Skill

Questions about snowflake-dcm.

Which coding agents can use snowflake-dcm?
snowflake-dcm installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.