---
source: CrewKit documentation
url: https://crewkit.io/docs/quickstart.md
title: "Quickstart"
description: "Go from install to your first tracked session in under a minute."
---


import { Callout } from 'fumadocs-ui/components/callout';

Get a fully tracked coding session running in one command.

```bash
cd my-project
crewkit
```

That's it. `crewkit` handles everything inline — authentication, project detection, resource sync, and launching Claude Code.

---

## What happens

1. **Authentication** — If you're not logged in, crewkit opens a browser for device auth. You approve on the web, and the CLI picks up the token automatically.

2. **Project detection** — crewkit reads your git remote and matches it to a project in your organization. If the project doesn't exist yet, it offers to create one.

3. **Resource sync** — Your team's agents, skills, rules, and commands are synced to `.claude/` in your project. Files are checksummed so local edits aren't accidentally overwritten.

4. **Launch** — The native Claude Code you already know starts and owns the terminal. crewkit loads beside it in the background, tracking the session.

---

## During the session

Claude Code runs exactly as if you'd launched it directly — same interface, same shortcuts. crewkit works alongside it:

- **Session tracking** — turns, tokens, cost, and tool usage flow to your dashboard
- **Team context** — your project's memory and conventions are injected at session start
- **Statusline** — crewkit adds a statusline to Claude Code (`--no-statusline` or `CREWKIT_STATUSLINE=off` disables it)

Prefer a wrapped view with a live sidebar? Run `crewkit tui` for crewkit's [interactive terminal interface](/docs/tui).

---

## View your session

After the session ends, open the crewkit dashboard to see:

- Conversation history with token counts per turn
- Total cost and duration
- Tool usage breakdown
- AI-generated summary and coaching tips

---

## First-time setup

If this is a brand new project, `crewkit code` can offer setup inline. The explicit commands keep local mapping and server registration separate:

```bash
crewkit init                                      # Pin the detected mapping locally
crewkit project create "My Project" --org acme   # Register the project server-side
crewkit init --workspace                          # Or create a multi-repo workspace
```

For a single repository, `crewkit init` only writes `.agent/config.yml`; it does not register a project, even with `--yes`. `crewkit project create` is prompt-free, links the detected origin remote when available, and accepts an organization slug or external ID. Workspace init still creates and registers workspace projects.

<Callout type="info">
For CI/CD and BYOC installs, accept the current policy deliberately before registering and starting the first headless session:

```bash
export CREWKIT_TOKEN=your-ci-token
crewkit aup accept
crewkit project create "My Project" --org <slug-or-id>
crewkit code --yes --prompt "Run the CI task"
```

The explicit `--org` keeps registration deterministic without an interactive organization picker.
</Callout>

---

## Next steps

- [CLI command reference](/docs/cli)
- [Configure agents for your team](/docs/agents)
- [View analytics in the dashboard](/docs/analytics)
