bit CLI
From an empty folder to a running app, in one command
Starting a real app used to cost a day: installing tools, fixing versions, chasing the first build.
With the bit CLI it's one command.
bit new creates a bit Boilerplate project, installs what your machine is missing,
builds it, starts it and opens it in your editor, ready for you and your AI assistant to work on.
dotnet tool install --global Bit.Cli --prerelease bit new MyApp
dnx Bit.Cli --prerelease -- new MyApp
Made for building with AI
An AI assistant writes good code in a project that's set up well, and stalls in one that isn't. The bit CLI takes care of the setup, so the assistant can start on your app:- Describe your app to the assistant on the Create project page, and it builds the
bit newcommand for you. - Every project comes ready for Claude Code, GitHub Copilot, Codex, Gemini CLI and Cursor, with the instructions, skills and MCP servers they work with.
bit newtrusts the project folder for VS Code, Claude Code, Copilot CLI, Codex and Gemini CLI, so the project's tasks and MCP servers work without prompts, and installs the VS Code extensions the project recommends. All that's left is signing in to Claude or Copilot.- Later,
bit diffshows what changed in bit Boilerplate between two versions, and the project'supgradeskill has your assistant bring those changes into your code.
Privacy first: your app stays yours
AI app builders in the cloud are quick to start, but your code, your prompts and your data live on their servers, and your app lives on their platform, under their pricing. The bit CLI gives you the same quick start without handing any of that over:- The project is created on your machine, in your own git repository. With
--github-repoit goes to a private repository on your own GitHub account. - You pick the AI assistant, or none, and switch whenever you like. The project doesn't depend on any of them.
- You host the app wherever you want: your own servers or any cloud.
- The bit CLI is open source under the MIT license, built by GitHub Actions, signed and attested.
bit aboutshows exactly which build you run. - Error reports never include project names, paths, file contents, prompts or keys, and
bit telemetry offstops them.
What bit new does
- Checks this machine and installs what the project needs and you tick: the .NET SDK, Node.js, Git, a container runtime that's free for commercial use, the Aspire CLI, VS Code and more. The versions come from the project, and anything already installed isn't shown.
- Warns, only when it's sure, about hardware that makes development slow: virtualization turned off, less than 15 GB of memory, or a hard disk instead of an SSD.
- Creates the project with a development certificate of its own, and initializes git with develop and main.
- Installs the build tools the chosen platforms need, restores the packages, builds, and installs the browser the UI tests run in.
- Formats the code and adds the initial database migration, each in a commit of its own.
- With
--github-repo, creates a private GitHub repository and pushes to it. - Trusts the folder for the AI coding tools and installs the VS Code extensions the project recommends.
- Starts the project, opens it in VS Code, then opens the Aspire dashboard and the app in your browser.
bit new Contoso.Shop bit new Contoso.Shop --database PostgreSQL --module Admin --redis bit new Contoso.Shop --platforms web,android bit new Contoso.Shop --dry-run
bit new --help.
More commands
bit setupgets a cloned project ready on this machine, or adds a platform later:bit setup --platforms android.bit doctorchecks the tools a project needs, andbit doctor --fixinstalls what's missing.bit diffshows what changed in bit Boilerplate between two versions, for your project, without touching it.bit cleandeletes the build outputs and downloaded packages, stopping on Windows whatever still holds their files.bit renamerenames the project everywhere its name appears: files, folders, namespaces, database names and the app id.bit removedeletes a project folder for good, even while the app or a build process still holds its files.bit translatefills in the missing translations of.resxfiles with any OpenAI-compatible LLM, and keeps the existing ones.bit decodereads a stack trace of an app shrunk by bit Minifier back into the names its source has.bit aot-profilerecords which code a Blazor WebAssembly app really runs, so ahead-of-time compilation makes that code fast and leaves the download small.bit trusttrusts a cloned repository for VS Code and the AI coding tools.bit telemetry,bit updateandbit aboutshow and change what bit sends, update it, and show which build you run.
In CI
bit new and bit setup prepare CI machines too, so a pipeline needs no steps of its own for Node.js, build tools, Playwright or the development certificate.
The pipelines bit Boilerplate ships install bit once per job and let it build:
dotnet tool install --global Bit.Cli --prerelease bit setup --platforms android --no-browsers --yes
What it changes on your machine
- The tools you tick, with
wingeton Windows, Homebrew on macOS and the distribution's package manager on Linux. Each command is shown before it runs. - Administrator rights: on Windows the steps that need them run in one elevated PowerShell, so Windows asks once. On macOS and Linux,
sudoasks for your password once. - Trust entries, only for the folder
bit newcreated or the one you pass tobit trust. - bit itself: when a newer version is out, it carries on with that one and updates the installed tool once the run ends.
--no-updatekeeps the one you have. - Its own folder,
~/.bitplatform, with its settings, the template cache and the logs of every run.
Telemetry
bit sends error reports to the bit platform team so failed runs get fixed: whether each step worked and how long it took, error codes, the stack trace of a crash, and the OS, .NET and bit versions. It never sends project names, paths, user or machine names, file contents, prompts, API keys or the output of the tools it runs.bit telemetryshows the setting, andbit telemetry offturns it off.BIT_CLI_TELEMETRY=off,DO_NOT_TRACK=1orDOTNET_CLI_TELEMETRY_OPTOUT=1turn it off in CI or a container.BIT_CLI_TELEMETRY=logprints everything that would be sent, and sends nothing.