Skip to content

Set up the Workspace

A workspace is a folder with your services' repositories inside it (or next to it). You create the workspace once and register each repository as a member.

Commands in Codex

The commands below appear with / (Claude Code and Cursor). In Codex, swap the prefix for $ — e.g. /n45$n45.

Create the workspace

In the folder that contains (or will contain) the repositories, run:

npx n45-ai@latest init
  • If the folder already has subfolders that are git repositories, N45 detects the workspace automatically and goes straight to workspace setup.
  • Otherwise, it asks Project or Workspace? — choose Workspace.

The workspace name is the folder name (no prompt). N45 then asks which AI tools you use (Claude Code, Cursor, Codex) and installs the skills.

Add the members

At the end of init, N45 lists the git folders it found and offers to add them as members — all pre-selected. Just confirm (or unselect the ones you don't want).

You can also add members at any time:

# add an existing repository (local path)
npx n45-ai@latest workspace add ./frontend

# clone and add from a git URL
npx n45-ai@latest workspace add git@github.com:acme/api.git

# adopt every git folder not yet registered, at once
npx n45-ai@latest workspace add --all

When you add a member, N45 prepares the repository automatically: it creates the member's .n45/ and installs the skills for the AI tools the workspace uses. The member is ready with no manual init.

A member must be a git repository

workspace add <path> requires the path to be a real git repository. If it isn't one yet, run git init in it first (or point at an existing repository).

Manage the members

# list the members
npx n45-ai@latest workspace list

# deregister a member (does not delete the repository)
npx n45-ai@latest workspace remove frontend

# reconcile: clone declared members that are missing + adopt orphan git folders
npx n45-ai@latest workspace sync
  • remove is safe: it only deregisters from the workspace, it deletes nothing. It blocks if the member takes part in a feature in progress (finish or cancel the feature first).
  • sync is handy when you clone the workspace repository onto a new machine: it clones the missing members and adopts the git folders that aren't members yet.

What gets versioned

The workspace is itself a git repository, but it versions only the coordination — the workspace's .n45/ (specs, contracts, feature docs). The members are independent repositories and stay out of it automatically: you create, clone and edit the members' folders freely, and they only join the workspace when you run workspace add.

See also