Getting started
From a fresh instance to a wired-up repository, chat, and CI pipeline in six steps.
Create or join an organization
Every account also owns a personal organization, created lazily the first time you create a personal repository — you don't need to explicitly provision it. Team organizations are created explicitly from Organizations → New organization; the creator becomes its OWNER.
Create a project
A project is a namespace for related repositories plus the shared planning surface (issues, labels, milestones, boards) that spans all of them. Create one from an organization's Projects tab.
Create a repository
From a project, New repository lets you start empty, seed it with a README/license/.gitignore, or apply a saved repository template to populate it with a full file tree in one step. Clone URLs (HTTP and SSH) are shown on the repository page immediately — see Authentication & sessions for how to authenticate a git client.
Grant access
Invite people to the organization, then grant project- or repository-level roles directly or via a team. See Authorization & permissions for the exact role → permission matrix — it's worth reading before onboarding a team, since roles are deliberately narrower than a single "admin" bit.
Wire up CI/CD
Add a .khub/ci.yml (or build the graph visually in Pipelines → Editor) to get pipeline runs on every push. See CI/CD pipelines for the full job schema, including how to route jobs to specific runners and gate deploy jobs behind manual approval.
Connect tooling
Point your existing clients at KHUB — no plugins required.
git remote add origin git@<host>:<org>/<project>/<repo>.git(SSH) or the HTTPS URL with a personal access token.npm config set registry https://<host>/api/organizations/<org>/packages/npm/for the package registry.docker login <host>for the container registry.- Point an MCP-capable agent at
https://<host>/mcpfor programmatic, permission-scoped access to the entire API — see MCP integration.
