> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/ai-workbench/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/ai-workbench/_mcp/server.

# How to Work with AI Workbench Projects

## Overview

**Projects are Git repositories with extra configuration files used by AI Workbench.**

Projects hold your code and environment configuration along with a main configuration file, `.project/spec.yaml`.

Data and models can also be versioned in the repository, but more often than not these are downloaded and used on a machine by machine basis.

**Projects use containers for development environments.**

Each project has an editable and versioned containerized development environment.
You customize it with package lists, scripts, and runtime configurations.

**Projects are portable and reproducible.**

AI Workbench handles the Git and container commands to build, run, and version your project.

**You can version projects within the Desktop App and with Git natively.**

The Desktop App has "easy buttons" for simple but end to end versioning workflows.
For anything more complex, use Git in the terminal or a Git client.

**You can work with any Git repository and AI Workbench will add the relevant configuration files.**

If you clone a non-project in AI Workbench, it will prompt you to pick a base image for the development environment.
It will also add in a scaffolded `.project/spec.yaml` file that is necessary for it to manage the repository.

## Key Concepts

**Project Container**

A single container that serves as your development environment.

**Project Specification**

The *.spec.yaml* file that defines your project metadata and configuration.
A versioned file that AI Workbench reads and writes to while handling the environment configuration.

**Base Environments**

Pre-configured container images from NVIDIA or custom containers.

**Mounts**

Persistent storage that survives container restarts.

**Multi-Container Environments**

Compose support for complex applications.

**Git-LFS**

Git large file support that can be used to version data files in the project.
Can be configured in the *spec.yaml* file.

## What's Covered?

| **Topic Link** | **Description** |
|---|---|
| [Create, Clone, Publish and Delete Projects](/ai-workbench/how-to/projects/create-clone-publish) | Shows you how to create a new project in AI Workbench. |
| [The Project Specification](/ai-workbench/concepts/understand-project-specification) | Shows you how to understand the project specification in AI Workbench. |