Skip to content

Create a project

A project links a directory on your machine to an objective on the control node. There are two ways to start one — create a new project, or clone an existing one.

Create from your code

From inside the repo you want to optimize:

cd my-research-repo
autolab init

init first asks whether to use this directory's code as the source, then collects the research goal:

Path It asks for
Using your code name, run command, objective, env setup, constraints, termination
Empty project name, objective, constraints, termination

The slug is the slugified name (my-research-repoalice/my-research-repo), deduped to …-v2 if taken. The project is created live-but-paused: it appears on the dashboard with the agent paused, so you can review settings before it spends anything. Every project starts on your AutoLab platform key.

Start empty

No baseline code? Let the agent write it from your objective:

autolab init --empty --objective "maximize MMLU score"

The agent fills in the run and setup commands once there's code to run.

Non-interactive

Every prompt has a flag, so an agent or CI job can create a project headlessly with -y:

autolab init -y \
  --name "nanochat" \
  --objective "minimize val loss" \
  --run "python train.py" \
  --prep "uv sync" \
  --constraints "keep params < 1B" \
  --max-cost 50 \
  --start

See every flag in the CLI reference.

Create from the dashboard

New Project on the dashboard walks the same steps in the browser: describe the goal, optionally attach a GitHub repository, pick a model, connect compute, and review with the agent.

Attach a GitHub repository

Paste any github.com URL, or browse the repos you've shared with the Autolab GitHub App. Public repos work with just the URL; private repos need the App:

  • Click Configure access and install the App on the account that owns the repository. A personal repo → your account; an organization repo → the organization (pick it on GitHub's account chooser; an org admin may need to approve).
  • GitHub's install screen is the repo picker — grant all repos or select just the ones Autolab may see. You can change this any time.
  • Need another repo later? Use "Adjust permissions" under the repo list (or GitHub → Settings → Applications) to add it.

Installing the app connects your repos, but doesn't create a project by itself — after GitHub sends you back, attach the repo and continue through the wizard. If you installed the App directly on GitHub and it still isn't connected, Configure access links the existing installation to your account.

Go live with start

init leaves the agent paused. When the settings look right (autolab settings), take the project live:

autolab start

This seeds main from your code and starts the agent. The first start takes the project live; afterwards it resumes the agent after a pause. Pass --start to init to go live immediately.

Clone & resume an existing project

To work on a project that already exists — yours or one you collaborate on:

autolab projects                 # list projects you can access
autolab clone alice/nanochat     # copy its code into ./nanochat
cd nanochat
autolab status                   # where the project (and you) are
autolab pull                     # fast-forward to the latest main

In the projects list, status is the project lifecycle (active = it has been taken live) and agent is what the research loop is doing right now (running, idle, paused, …) — the same state the dashboard card shows. An active project with a paused agent is normal: it's live, just not working.

clone downloads the project's code (every experiment commit) and links the directory to the project. It does not download experiment logs, metrics, or artifacts — those live on the control node; see them with autolab log or on the dashboard (autolab open). Cloning never changes the project's state: a paused agent stays paused until you autolab start.

From here you submit experiments, checkout a specific one, or diff your changes — see Run experiments.

Open the dashboard

autolab open          # the project dashboard
autolab open <id>     # a specific experiment's page

Delete a project

Owners can delete a project (and everything in it) from the CLI:

autolab settings delete           # confirms first
autolab settings delete --yes     # skip the prompt

This is permanent. See Project settings.