Skip to content

dft init

Bootstrap a Dataface project, plus its AI and editor integrations.

dft init [OPTIONS]
dft init [OPTIONS] COMMAND [ARGS]

Without a subcommand, dft init runs the interactive bootstrap wizard. With a subcommand, it targets a specific integration.

Subcommands

Command Purpose
dft init skills Install Dataface workflow skills to agent skill directories
dft init mcp Wire Dataface into an AI assistant via MCP (Cursor, Claude Code, ChatGPT, etc.)
dft init code Install the Dataface extension into VS Code
dft init vscode Alias for dft init code
dft init cursor Install the Dataface extension into Cursor

Top-level options

Flag Description
--project-dir PATH Project directory. Overrides the wizard's default root selection.
--force, -f Overwrite existing scaffold files.
--yes, -y Accept all defaults without prompting.
--skills / --no-skills Install Dataface workflow skills to agent skill directories.
--mcp / --no-mcp Set up MCP server for AI assistants.
--skills / --no-skills Install workflow skills to agent skill directories.
--chat-extra / --no-chat-extra Install the dataface[chat] extra (enables dft chat).
--with-playground / --no-with-playground Install the dataface[playground] extra (enables dft playground). Off by default — dataface-playground is not yet on public PyPI; if install fails, dft init warns instead of aborting.
--vscode / --no-vscode Install Dataface extension into VS Code.
--cursor / --no-cursor Install Dataface extension into Cursor.

Examples

# Interactive wizard
dft init

# Accept all defaults
dft init --yes

# Skip MCP setup
dft init --no-mcp

# Install workflow skills and MCP, no editor extensions
dft init --no-vscode --no-cursor

# Request playground install (not attempted by default; warns if unavailable)
dft init --with-playground

Project root resolution

dft init resolves its scaffold target in this order:

  1. --project-dir or DFT_PROJECT_DIR
  2. The detected Dataface or dbt project root, when dataface.yml, dataface.yaml, or dbt_project.yml exists at or above the current directory
  3. Git root, when no dataface.yml, dataface.yaml, or dbt_project.yml exists above the current directory but a .git/ directory does
  4. Current directory, when no project marker or git root is found

In the bare-git-repo case, the interactive wizard shows both paths and asks whether to scaffold at the git root instead of the current subdirectory. The default is the git root. dft init --yes takes that same default without prompting.

dft init skills

Install Dataface workflow skills for file-based agent auto-discovery. Writes CLI-rendered skill files to .agents/skills/ (Cursor, Codex, Copilot) and/or the Claude Code skills directory. Does not configure MCP or modify AGENTS.md / CLAUDE.md.

dft init skills [OPTIONS] [TARGET]

Arguments

Argument Description
TARGET Install target: agents (Cursor/Codex/Copilot), codex, or claude. Omit to auto-detect.

Options

Flag Description
--all Install to every detected skill directory.
--dir PATH Explicit destination directory.
--force, -f Overwrite existing skill files.
--check Dry run: show what would be installed without writing files.
--project-dir PATH Project root.

Examples

dft init skills                 # Detect targets and install
dft init skills agents          # .agents/skills/ only (Cursor, Codex, Copilot)
dft init skills claude          # Claude Code skills directory only
dft init skills --all           # Every detected target directory
dft init skills --dir PATH      # Explicit destination
dft init skills --check         # Dry run
dft init skills -f              # Overwrite existing files

After upgrading Dataface (pip install -U dataface), re-run dft init skills to pick up new or updated skills.

dft init mcp

Add Dataface to your AI client's MCP configuration. Configures the MCP server only. Run dft init skills separately to install workflow skills to agent file directories.

dft init mcp [OPTIONS] [CLIENT]

Arguments

Argument Description
CLIENT One of: cursor, vscode, claude, claude-code, codex, copilot, or print. Omit to auto-detect installed clients.

Options

Flag Description
--all Write MCP config files for every supported client.
--force, -f Overwrite existing Dataface config.
--project-dir PATH Path to the Dataface or dbt project the MCP server should target. Embedded into the generated server entry.

Project root resolution

dft init mcp walks up from the current directory looking for dataface.yml, dataface.yaml, or dbt_project.yml. Pass --project-dir to override. When the project root diverges from the AI client's workspace (e.g. a project nested under a larger repo), the generated server entry includes --project-dir <abs-path> so the server still starts in the right place.

Examples

dft init mcp                              # Auto-detect clients + project
dft init mcp cursor                       # Configure Cursor only
dft init mcp claude-code                  # Configure Claude Code
dft init mcp --all                        # Write every supported config file
dft init mcp --project-dir ./analytics    # Target a specific project dir
dft init mcp print                        # Print config JSON (for manual setup)

dft init code / dft init vscode

Install the Dataface extension into VS Code. Adds YAML schema, completion, and live-preview integration.

dft init code
dft init vscode    # alias

dft init cursor

Install the Dataface extension into Cursor.

dft init cursor