Appearance
Getting Started
Tessera works on top of your existing Git repository so multiple AI coding agents and terminal sessions can work in the same checkout without overwriting files or colliding on .git/HEAD. This guide covers installing the tes CLI, initializing a repository, and running your first multi-branch workflow.
Prerequisites
- OS: macOS, Linux, Windows, FreeBSD, OpenBSD, or NetBSD
- Git: Standard Git 2.23+
Installation
Install the tes CLI on macOS, Linux, or BSD:
bash
curl -fsSL https://tessera.getlunaris.dev/install.sh | sh
tes --versionOr on Windows (PowerShell):
powershell
irm https://tessera.getlunaris.dev/install.ps1 | iex
tes --versionFor shell integration, prebuilt binaries, and editor setup details, see the Installation Guide.
Initializing Your Project
Navigate to any project directory and run tes init:
bash
tes initThis creates .git/tessera and installs workspace rules for your AI coding editors.
Note: If the directory is not yet a Git repository,
tes initrunsgit initand creates an initial commit from your existing files before setting up Tessera.
Your First Workflow
Switch your current terminal tab to a feature branch, run your tests, and merge your work:
bash
tes switch feat/pricing
npm test
tes status
tes merge feat/pricing --into main -m "feat: add pricing calculator"What Each Command Does
bash
tes init- Sets up
.git/tesserainside your existing Git repository - Installs instruction rules (
AGENTS.md,.agents/rules/tessera.md,.cursor/rules,CLAUDE.md) so your AI coding agents coordinate through Tessera
bash
tes switch feat/pricing- Binds your current terminal tab to the
feat/pricingbranch (creating it fromHEADif it does not exist yet) - Prepares a Copy-on-Write sandbox for
feat/pricingthat shares your existingnode_modules,target, or.venv
bash
tes merge feat/pricing --into main -m "feat: add pricing calculator"- Merges
feat/pricingintomainusing Tessera's 3-way AST merge engine - Updates your working directory on
main
Working in a Single Folder
In standard Git, running two AI agents on two different branches requires creating separate git worktree folders, reinstalling dependencies in each folder, and configuring different ports by hand.
With Tessera, you work inside a single repository folder:
bash
# Terminal 1 works on feat/pricing (assigned port 4100)
tes switch feat/pricing
npm run dev
# Terminal 2 works on feat/faq in the same folder (assigned port 4200)
tes switch feat/faq
npm run devWhen you prompt an AI agent in your editor, you do not need to mention tes in your prompt:
text
On branch feat/pricing, create PricingCalculator.vue and add it to src/App.vue.The workspace rules installed by tes init instruct the agent to claim the branch, isolate its edits, verify the build in its branch sandbox, and commit.
Next Steps
- Why Tessera? - See how Tessera compares to standard Git and
git worktree - Installation - Set up
(tes:<branch>)in your terminal prompt and tab completion - Your First Workflow - Walk through a multi-agent example step by step
- Guides - Learn about multi-agent workflows, dev servers, conflicts, and editor integration