What is a workspace?
A workspace is a Python project layout that bundles your dlt pipelines, transformations, configuration, and AI toolkit setup into a single deployable unit. The same folder runs on your local machine, in CI, and — when you deploy — on the managed dltHub platform, so what you build locally is what runs in production.
A workspace is where you:
- Connect a local repo to a remote workspace on dltHub (
dlthub workspace connect) - Configure destinations, config, and secrets (often via profiles like
dev,prod,access) - Create and manage pipelines, deployments, jobs/runs, logs, and notebooks
- Control access via workspace roles (owner, developer, viewer)
When you create an account, dltHub automatically creates a personal Playground workspace so you can try things without any setup.
Every workspace contains:
.dlt/.workspace— a marker file that activates thedlthubCLI, profile support, and the managed-platform commands. Without this file you're using plain OSSdlt..dlt/config.tomland.dlt/secrets.toml— settings and credentials, with optional per-profile overrides (dev,prod,tests,access).pyproject.toml(orrequirements.txt) — workspace-level dependencies likedlt[hub],duckdb,marimo.- Pipeline files and an optional
__deployment__.pymanifest — the code you run, and the description of how it's deployed. - AI toolkit configuration — skills, rules, and MCP wiring for Claude Code, Cursor, or Codex (added when you opt in during scaffolding).
Creating a workspace
uv run dlthub login
uv run dlthub workspace connect "<name>" --create
When you deploy, all files from your local project directory are mirrored to the remote workspace on the dltHub platform. To exclude files you don't want deployed (temp directories, data/state directories, local IDE files), list them in .gitignore. Files not excluded can cause deployments to fail with:
Upload failed (HTTP 413): {"status_code":413,"detail":"Request Entity Too Large"}
Next steps
- Workspace setup: convert a Python project into a workspace and configure credentials.
- The Playground workspace: the auto-created workspace for trying dltHub.
- Profiles: target different destinations from the same code.