Getting started
1. Create your account
Request access at https://src.land/signup. Once your spot opens, you'll receive an email and land in the welcome wizard, which collects a username (your slug) and a display name.
2. Set up a passkey
The wizard offers a Set up a passkey step. Take it. Passkeys are phishing-resistant and replace passwords for sign-in, so there's nothing to steal or phish. You can also enrol or manage passkeys later under Settings → Access. Browsers without WebAuthn support skip the step automatically.
3. Add an SSH key
Push and clone over SSH require a public key on file. From your terminal:
ssh-keygen -t ed25519 -C "you@example.com" pbcopy < ~/.ssh/id_ed25519.pub # macOS - Linux: xclip / wl-copy
Paste the public key into Settings → SSH keys. Verify with ssh -T git@src.land and you should see your slug echoed back.
4. Bring repositories from GitHub
Citadel supports two migration paths from GitHub (or any git remote):
- Import: one-time copy. The wizard's Bring your code step imports repositories in bulk: paste a personal access token with repo read scope, pick repos, and Citadel fetches code, issues, pull requests, labels, and comments in the background. Skip during setup and run the same flow later from the Import page. Each import is a snapshot; Citadel does not keep polling the upstream after the job finishes.
- Mirror: continuous sync. For an ongoing upstream-of-record, create a repository with + New → Repository, expand Advanced options, and set Mirror source URL (for example https://<remote>/org/repo). Citadel syncs on a schedule or via webhook; pushes directly to the mirror are rejected so the upstream stays authoritative. After creation, open your-slug/your-repo/settings/mirror (Settings → Mirror sync) to adjust sync mode, credentials, poll interval, or trigger a manual sync.
5. Create your first repo
Click + New → Repository in the top bar, fill the slug + visibility, optionally tick Initialize with README. The new repo is reachable immediately.
6. Push existing code
cd ~/projects/your-repo git remote add origin git@src.land:your-slug/your-repo.git git push -u origin main
7. Invite collaborators
On a personal namespace, sharing is read-only via the public URL. For multi-author work, create an organization: click + New → Organization in the top bar (or go directly to Create an organization) then invite members by email from the org's Members settings. Invitees receive a claim link.
8. Connect an agent
citadel-cli, MCP clients, and CI runners authenticate with agent tokens: long-lived credentials that carry your permission grants without requiring an interactive sign-in. Issue one under Settings → Access → New token, then hand it to your tool. Full details in the Agent tokens help topic.