05 · Setup

Install & connect.

Stand up the brain, connect the tools, onboard the team, and start a client project. The team gets the work skills; the confidential layer stays with the founders. Secrets live in the host or keychain, never in Git.

First · the brain

Install crue-os for the org.

crue-os marketplace

Org settings
  1. Organization settings → Plugins. Connect the GitHub repo crue-os/crue-os via the Claude GitHub App.
  2. Set the seven packs to Installed by default, so they appear for everyone.
  3. Turn on Sync automatically. A merged change re-syncs to the whole org, around 30 minutes.
  4. Claude Code is a separate surface. See the rollout config in the next section.
House + the split. The confidential layer (pricing, client data, proof) lives in a separate founders-only repo, crue-os/crue-house, mounted in the crue · House Project (GitHub connector, one way, read-only). The team repo carries no pricing. Edit in crue-house, push, then Sync.
The repos

Four repos, one clear job each.

Everything is GitHub-backed. Each repo has one role, and one sync direction, so nothing drifts.

crue-os

org, everyone

The engine: all skills, the shared standards, the Client Core template, the org marketplace. Public to the team, no pricing. Push here and the whole org gets it on sync.

crue-house

founders only

The confidential layer: pricing, client data, proof. A separate private repo, mounted read-only in the crue House Project. The team gets every skill without it.

crue-clients

per client

The Client Cores: one folder per client (clients/<slug>/) holding brand-pack, lock-ins, decisions. The Team project mounts it via Files → GitHub, selecting only that client's folder (read-only). Updated by commit (say "lock to client"), then Re-sync.

crue-projects

per build

The actual deliverables: one repo per website or app (<client>-website), deployed on Vercel. The GitHub write MCP commits Cores and project files; it never writes crue-os or crue-house.

Claude Code rollout

A separate surface. One config, no manual installs.

The org marketplace covers claude.ai chat and Cowork. Claude Code needs its own config, so teammates never run /plugin commands by hand. Set it once and the packs install and auto-update.

settings.json

user · project · managed
{
  "extraKnownMarketplaces": {
    "crue-os": { "source": { "source": "github", "repo": "crue-os/crue-os" }, "autoUpdate": true }
  },
  "enabledPlugins": {
    "crue-brand@crue-os": true,
    "crue-web@crue-os": true,
    "crue-product@crue-os": true,
    "crue-media@crue-os": true,
    "crue-content@crue-os": true,
    "crue-studio@crue-os": true,
    "crue-ops@crue-os": true
  }
}

Three ways to deploy it. User level (~/.claude/settings.json, paste once). Project level (.claude/settings.json committed into a crue-projects repo, so anyone who opens it gets the packs). Managed settings (MDM, zero-touch, org-wide).

Auth. Each user needs GitHub read access to crue-os/crue-os, the skills repo with no pricing. For background auto-update, set GITHUB_TOKEN (scope repo). autoUpdate keeps the packs current on startup.

One-click connectors

Add, then authorize. Live everywhere.

Settings → Connectors → add, then sign in. These work in claude.ai web, Desktop and Code.

Directory connectors

Web · Desktop · Code

Figma · Canva · Sanity · Supabase · Vercel · ClickUp · Microsoft 365 · Higgsfield. Settings → Connectors → find each → Connect → authorize the account. Enable per Project where relevant.

GitHub · write MCP

Web · Desktop · Code

The hands behind lock to client: it commits Client Cores to the clients repo. Add custom connector with URL https://api.githubcopilot.com/mcp/, Connect, sign in with GitHub.

When it asks which repositories, choose only crue-os/crue-clients (and crue-projects for site code), with Contents: read and write. Never grant write to crue-os or crue-house. Enable it in each client Project. Claude Code commits via native git, so the MCP is optional there.

Mobbin

Web · Desktop · Code · Pro

Add custom connector with URL https://api.mobbin.com/mcp, then Connect and sign in with your Mobbin Pro account. Per-seat login.

Ideogram

Web · Desktop · Code · Pro

Add custom connector with URL https://mcp.ideogram.ai/mcp, then Connect and sign in with your Ideogram account.

Recraft

Web · Desktop · Code · live

The real-vector engine: vector / SVG, icon sets, brand style sets, vectorize a raster to clean SVG, backgrounds and upscale. Added org-wide as a custom connector, Connect and sign in with your Recraft account (per-account login).

Bexio

Web org · House-only

Add custom connector with URL https://bexio-mcp.crue.ch/mcp, Connect, then sign in with your crue Microsoft 365 account (Entra SSO). Enabled only in the crue · House Project.

Local connectors

Run where you build.

Local stdio servers. Claude Code and Desktop only, by design. Per-user.

Magic · 21st.dev

Code · Desktop

Component generation for the build. Get an API key from the 21st.dev Magic console, then:

npx @21st-dev/cli@latest install claude --api-key YOUR_KEY

Restart Claude, then use /ui in a build session. The key lives in local config, never in Git.

Playwright · reference capture

Code · Desktop · bundled

Captures reference sites (screenshots, structure, computed styles) and checks our own builds, the engine behind clone-from-reference and the web self-check. Ships bundled in the crue-web pack, so it auto-registers, no command to run. Needs Node 18+; the first run downloads a browser. Local only, so Code and Desktop, not the web, where the skills use the Chrome connector instead.

Google Analytics · GA4

Code · Desktop

Real traffic and funnels, read-only. In Google Cloud: enable the Analytics Admin and Data APIs, create a Desktop OAuth client, then authorize and register:

gcloud auth application-default login \
  --scopes=https://www.googleapis.com/auth/analytics.readonly,\
https://www.googleapis.com/auth/cloud-platform \
  --client-id-file=YOUR_CLIENT.json

claude mcp add analytics-mcp --scope user \
  -e GOOGLE_APPLICATION_CREDENTIALS=PATH \
  -e GOOGLE_PROJECT_ID=PROJECT_ID \
  -- pipx run analytics-mcp

Each teammate sets up their own Google login. It sees the GA properties that account can access.

The rule for all of them. Read freely. Create on confirmation. Never send, publish or deploy without a human go. Connectors are optional. A skill falls back silently when a tool is not connected.
Onboarding

Two starting points.

The team gets the work skills. Founders also get the confidential layer and Bexio. Both stay current automatically.

A teammate, day one

Work skills, ready

Get added to the Claude org and the GitHub crue-os repo. Skills arrive in chat and Cowork automatically; for Claude Code, the settings.json above installs the packs. Open the right Project, describe the task, the skill runs. No pricing, no client data, no setup beyond that.

org marketplaceClaude Code configno confidential access
crue House, founders

Plus the business layer

Open the crue · House Project. Mount the confidential layer from crue-house (GitHub connector, read-only, then Sync). Enable the Bexio connector here, House-only. This is where pricing, client data, offers and invoices live. Run offer, invoice, initialize-project and work-summary from here.

crue-house mountedBexio (House-only)pricing + clients
Client Cores · the clients repo

One repo. A folder per client. Updated by commit.

Every client's brain (brand-pack, imagery lock-ins, reference packs, decisions) lives in one private repo, crue-os/crue-clients, under clients/<slug>/. Each folder mounts into that client's Project as read-only knowledge. The per-client twin of crue-house.

How a result persists

lock to client
  1. Generate something in the client Project: a colour, a voice, a style lock-in, a reference pack, a decision.
  2. Say "lock to client". The lock-to-client skill picks the right file, applies the change in place, checks for conflicts against locked values, logs the decision.
  3. It commits to crue-clients/clients/<slug>/<file>.md through the GitHub write MCP. A clean message, never a force-push, never history.
  4. Sync the Project so the next chat reads the new state. The committed Core is the memory, not the chat.
Why a write MCP. A chat cannot push to git on its own, so without it "lock to client" can only hand you a block to paste. With it, one phrase writes. No MCP connected? The skill falls back to a copy, commit, Sync block. It never blocks.

The scope rule

non-negotiable

The GitHub token writes to crue-clients and crue-projects only. Never crue-os or crue-house. Pricing and proof are never writable from a client chat, and one client's folder is never written from another's Project.

In Claude Code it is automatic: the repo is cloned, the skill edits the file and commits and pushes. In a Project chat the write MCP is what makes it automatic. Same loop, two surfaces.

Start a client project

From nothing to a warm Project in minutes.

One client equals one Project equals one brand. Here is the whole setup.

Step by step

claude.ai
  1. Generate the Core. In crue · House, run initialize-project. Pick the client from Bexio or create them as a contact. It creates clients/<slug>/ in crue-clients from the latest template, filled, and commits it.
  2. Create the Project. A new Claude Project named Client · <Name>.
  3. Mount the Core. In the Team project, Files → connect GitHubcrue-os/crue-clients → select only this client's folder clients/<slug>/ (read-only) → it syncs; Re-sync to refresh. The folder picker keeps every other client out, one project sees one client. Prereq: the Claude GitHub app has access to the private repo. Set the archetype in brand-pack. (Personal project with no GitHub in Files? Upload the five files instead.)
  4. Set the instructions. "This is the Client Core for <Name>. Always read brand-pack.md first. Stay within this brand. Never reference other clients or the crue House brand."
  5. Enable connectors. The production tools, plus the GitHub write MCP so lock to client works: ClickUp, Figma, SharePoint, Vercel, Higgsfield. Never Bexio, it is House-only.
  6. Work, then lock. Describe the task, the right skill runs and ends on the Roman Pass. Say "lock to client" to commit any result into the Core.
Billing. Summarize delivered work in the client Project with work-summary (no rates), then run invoice from House to price it and create it in Bexio.
ClickUp Core Team fields. Three custom fields on the Core Team space, pinned workspace-wide, let clickup-brief tie a task back to its client: 💼 Client / Project (text), 🤖 Claude Project (URL to the Claude Project), 🧠 Github Client Brain (URL to the client folder in crue-clients). Set on the main task, returned as links.
Money stays in House. Budgets, rates, offers and invoices are House and Management only. Tasks and client Projects carry size, not numbers: small, medium or big. A brief with a figure becomes a size label for the team; the figure stays in House.